структура DOT11_CIPHER_DEFAULT_KEY_VALUE (windot11.h)
Важно!
Собственный интерфейс беспроводной локальной сети 802.11 не рекомендуется использовать в Windows 10 и более поздних версиях. Вместо этого используйте WLAN Device Driver Interface (WDI). Дополнительные сведения о WDI см. в статье Модель универсального драйвера WLAN для Windows.
Структура 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 .
Драйвер мини-порта должен задать для членов 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.
Драйвер мини-порта должен игнорировать этот элемент, если bDelete имеет значение TRUE.
MacAddr
Mac-адрес, определяющий таблицу ключей по умолчанию для добавления или удаления ключа.
Если объекту базы данных управления dot11DesiredBSSType задано значение dot11_BSS_type_infrastructure, то станция 802.11 добавляет или удаляет ключ из таблицы ключей по умолчанию независимо от значения элемента MacAddr . Если ключ динамически получается из точки доступа ( AP), с которым связана станция, член MacAddr будет содержать MAC-адрес AP. В противном случае MacAddr будет иметь значение 0x000000000000.
Если объекту базы данных управления (MIB) dot11DesiredBSSType задано значение dot11_BSS_type_independent, на станции 802.11 необходимо добавить или удалить ключ следующим образом:
Если значение этого элемента равно 0x000000000000, то станция 802.11 добавляет или удаляет ключ из таблицы ключей по умолчанию. Если сетевой адаптер находится в режиме op extap, это значение равно нулю.
Если значение этого элемента является допустимым одноадресным MAC-адресом, то станция 802.11 добавляет или удаляет ключ из таблицы ключей по умолчанию для одноранговой станции в независимой сети BSS (IBSS) с MAC-адресом, равным значению MacAddr .
Если таблица ключей по умолчанию для каждой станции не существует для значения MacAddr, на станции 802.11 должна использоваться любая неиспользуемая таблица ключей по умолчанию для каждой станции.
Дополнительные сведения об объекте MIB dot11DesiredBSSType см. в разделе OID_DOT11_DESIRED_BSS_TYPE.
bDelete
Логическое значение, указывающее, должен ли драйвер мини-порта удалять ключ по умолчанию.
Если задано значение TRUE, драйвер мини-порта должен удалить ключ по умолчанию, на который ссылается uKeyIndex. Если задано значение FALSE, драйвер мини-порта должен добавить или обновить ключ по умолчанию, на который ссылается uKeyIndex .
bStatic
Логическое значение, указывающее, должен ли драйвер мини-порта удалить ключ по умолчанию после операции подключения или перемещения.
Если задано значение 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 (включая Ndis.h) |