структура DOT11_CIPHER_DEFAULT_KEY_VALUE (windot11.h)
Важный
WiFiCx — это новая модель драйвера Wi-Fi, выпущенная в Windows 11. Мы рекомендуем использовать WiFiCx для использования новейших функций. Модель драйвера WDI теперь находится в режиме обслуживания и получит только исправления с высоким приоритетом.
Структура DOT11_CIPHER_DEFAULT_KEY_VALUE определяет ключ шифра по умолчанию или ключ шифра по умолчанию на станции, который будет добавлен или удален из таблиц ключей на станции 802.11. Дополнительные сведения об этих типах ключей шифра см. в разделе 802.11 Типы ключей шифров.
Синтаксис
typedef struct DOT11_CIPHER_DEFAULT_KEY_VALUE {
NDIS_OBJECT_HEADER Header;
ULONG uKeyIndex;
DOT11_CIPHER_ALGORITHM AlgorithmId;
DOT11_MAC_ADDRESS MacAddr;
BOOLEAN bDelete;
BOOLEAN bStatic;
USHORT usKeyLength;
UCHAR ucKey[1];
} DOT11_CIPHER_DEFAULT_KEY_VALUE, *PDOT11_CIPHER_DEFAULT_KEY_VALUE;
Члены
Header
Тип, редакция и размер структуры DOT11_CIPHER_DEFAULT_KEY_VALUE. Этот элемент отформатирован как структура NDIS_OBJECT_HEADER.
Минипорт-драйвер должен задать члены заголовка следующими значениями:
Тип
Этот элемент должен иметь значение NDIS_OBJECT_TYPE_DEFAULT.
Пересмотр
Этот элемент должен иметь значение DOT11_CIPHER_DEFAULT_KEY_VALUE_REVISION_1.
Размер
Этот элемент должен иметь значение sizeof(DOT11_CIPHER_DEFAULT_KEY_VALUE)
.
Дополнительные сведения об этих членах см. в NDIS_OBJECT_HEADER.
uKeyIndex
Индекс ключа в массиве ключей по умолчанию станции 802.11.
Для стандартных алгоритмов шифров 802.11 uKeyIndex должно быть от 0 до 3. Для алгоритма шифра, разработанного IHV, uKeyIndex может быть любым значением в диапазоне, определенном IHV.
Для BIP uKeyIndex должно быть 4 или 5.
Стандарт IEEE 802.11-2012 определяет значения индекса ключа по умолчанию от 1 до 4. Значение x, указанное этим элементом, сопоставляется с индексом ключа по умолчанию 802.11 (x + 1).
AlgorithmId
Значение алгоритма шифра, использующего этот ключ. Дополнительные сведения о значениях алгоритмов шифров см. в DOT11_CIPHER_ALGORITHM.
Для BIP необходимо задать значение DOT11_CIPHER_ALGO_BIP, чтобы предварительно задать начальный номер пакета IGTK.
Драйвер минипорта должен игнорировать этот элемент, если bDeleteTRUE.
MacAddr
Адрес управления доступом к мультимедиа (MAC), определяющий таблицу ключей по умолчанию для добавления или удаления ключа.
Если объект dot11DesiredBSSType базы данных управления (MIB) имеет значение dot11_BSS_type_infrastructure, то станция 802.11 добавляет или удаляет ключ из таблицы ключей по умолчанию независимо от значения элемента MacAddr. Если ключ динамически получен из точки доступа (AP), с которым связана станция, элемент MacAddr будет содержать MAC-адрес AP. В противном случае MacAddr будет иметь значение 0x000000000000.
Если объект dot11DesiredBSSType информационной базы управления (MIB) имеет значение dot11_BSS_type_independent, станция 802.11 должна добавить или удалить ключ следующим образом:
Если значение этого элемента 0x000000000000, станция 802.11 добавляет или удаляет ключ из таблицы ключей по умолчанию. Если сетевой адаптер находится в режиме расширенной точки доступа (ExtAP), это значение равно нулю.
Если значение этого члена является допустимым одноадресным MAC-адресом, станция 802.11 добавляет или удаляет ключ из таблицы ключей по умолчанию для одноранговой станции в независимой сети BSS (IBSS) с MAC-адресом, равным значению MacAddr.
Если таблица ключей по умолчанию для каждой станции не существует для значения MacAddr, станция 802.11 должна использовать любую неиспользуемую таблицу ключей по умолчанию для станции.
Дополнительные сведения о объекте dot11DesiredBSSType MIB см. в OID_DOT11_DESIRED_BSS_TYPE.
bDelete
Логическое значение, указывающее, должен ли минипорт-драйвер удалить ключ по умолчанию.
Если задано значение TRUE, драйвер минипорта должен удалить ключ по умолчанию, на который ссылается uKeyIndex. Если задано значение false FALSE, драйвер минипорта должен добавить или обновить ключ по умолчанию, на который ссылается uKeyIndex.
bStatic
Логическое значение, указывающее, должен ли минипорт-драйвер удалить ключ по умолчанию после операции подключения или перемещения.
Если задано значение false false, драйвер мини-порта должен удалить ключ по умолчанию, на который ссылается uKeyIndex всякий раз, когда станция 802.11:
- Отключается от базовой сети набора служб (BSS).
- Перемещается в новую сеть BSS.
- Повторно подключается к той же сети BSS.
Если задано значение TRUE, ключ по умолчанию, на который ссылается uKeyIndex, не должен быть удален, если только это не так:
- Явным образом удален с помощью запроса набора OID_DOT11_CIPHER_DEFAULT_KEY.
- Неявно удалено с помощью запроса метода OID_DOT11_RESET_REQUEST.
usKeyLength
Длина в байтах ключевого материала в массиве ucKey.
ucKey[*]
Ключевой материал.
Если AlgorithmId задано значение DOT11_CIPHER_ALGO_TKIP, массив ucKey определяет ключевой материал через структуру DOT11_KEY_ALGO_TKIP_MIC.
Если AlgorithmId задано значение DOT11_CIPHER_ALGO_CCMP, массив ucKey определяет материал ключа через структуру DOT11_KEY_ALGO_CCMP.
Если AlgorithmId задано значение DOT11_CIPHER_ALGO_BIP, массив ucKey определяет ключевой материал через структуру DOT11_KEY_ALGO_BIP.
ucKey[1]
Ключевой материал.
Если AlgorithmId задано значение DOT11_CIPHER_ALGO_TKIP, массив ucKey определяет ключевой материал через структуру DOT11_KEY_ALGO_TKIP_MIC.
Если AlgorithmId задано значение DOT11_CIPHER_ALGO_CCMP, массив ucKey определяет материал ключа через структуру DOT11_KEY_ALGO_CCMP.
Если AlgorithmId задано значение DOT11_CIPHER_ALGO_BIP, массив ucKey определяет ключевой материал через структуру DOT11_KEY_ALGO_BIP.
Замечания
Если элемент bDelete TRUE, то следующие члены недопустимы и должны игнорироваться:
- bStatic
- usKeyLength
- ucKey
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в windows 8 и более поздних версиях операционных систем Windows. |
заголовка | windot11.h (include Ndis.h) |