structure DOT11_CIPHER_DEFAULT_KEY_VALUE (windot11.h)
Important
L’interface LAN sans fil Native 802.11 est déconseillée dans Windows 10 et versions ultérieures. Utilisez l’interface WDI (Wlan Device Driver Interface) à la place. Pour plus d’informations sur WDI, consultez Modèle de pilote Windows universel WLAN.
La structure DOT11_CIPHER_DEFAULT_KEY_VALUE définit une clé de chiffrement par défaut ou une clé de chiffrement par défaut par station qui sera ajoutée ou supprimée des tables de clés sur la station 802.11. Pour plus d’informations sur ces types de clés de chiffrement, consultez Types de clés de chiffrement 802.11.
Syntaxe
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;
Membres
Header
Type, révision et taille de la structure DOT11_CIPHER_DEFAULT_KEY_VALUE. Ce membre est mis en forme en tant que structure NDIS_OBJECT_HEADER .
Le pilote miniport doit définir les membres de Header sur les valeurs suivantes :
Type
Ce membre doit être défini sur NDIS_OBJECT_TYPE_DEFAULT.
Révision
Ce membre doit être défini sur DOT11_CIPHER_DEFAULT_KEY_VALUE_REVISION_1.
Taille
Ce membre doit être défini sur sizeof(DOT11_CIPHER_DEFAULT_KEY_VALUE)
.
Pour plus d’informations sur ces membres, consultez NDIS_OBJECT_HEADER.
uKeyIndex
Index de la clé dans le tableau de clés par défaut de la station 802.11.
Pour les algorithmes de chiffrement standard 802.11, uKeyIndex doit être comprise entre 0 et 3. Pour un algorithme de chiffrement développé par un IHV, uKeyIndex peut être n’importe quelle valeur dans la plage définie par l’IHV.
Pour BIP uKeyIndex doit être 4 ou 5.
La norme IEEE 802.11-2012 définit les valeurs d’index de clé par défaut comprises entre 1 et 4. La valeur x spécifiée par ce membre est mappée à l’index de clé par défaut 802.11 (x + 1).
AlgorithmId
Valeur de l’algorithme de chiffrement qui utilise cette clé. Pour plus d’informations sur les valeurs des algorithmes de chiffrement, consultez DOT11_CIPHER_ALGORITHM.
Pour BIP, ce paramètre doit être défini sur DOT11_CIPHER_ALGO_BIP pour prédéfini le numéro de paquet IGTK initial.
Le pilote miniport doit ignorer ce membre si bDelete a la valeurTRUE.
MacAddr
Adresse MAC (Media Access Control), qui identifie la table de clés par défaut pour ajouter ou supprimer la clé.
Si l’objet MIB (Management Information Base) dot11DesiredBSSType est défini sur dot11_BSS_type_infrastructure, la station 802.11 ajoute ou supprime la clé de la table de clés par défaut, quelle que soit la valeur du membre MacAddr . Si la clé est obtenue dynamiquement à partir du point d’accès (AP) auquel la station est associée, le membre MacAddr contient l’adresse MAC de l’AP. Sinon, MacAddr aura la valeur 0x000000000000.
Si l’objet MIB (Management Information Base) dot11DesiredBSSType est défini sur dot11_BSS_type_independent, la station 802.11 doit ajouter ou supprimer la clé de la manière suivante :
Si la valeur de ce membre est 0x000000000000, la station 802.11 ajoute ou supprime la clé de la table de clés par défaut. Lorsque la carte réseau est en mode OP Point d’accès extensible (ExtAP), cette valeur est égale à zéro.
Si la valeur de ce membre est une adresse MAC en monodiffusion valide, la station 802.11 ajoute ou supprime la clé de la table de clés par défaut par station pour la station homologue dans un réseau BSS (IBSS) indépendant avec une adresse MAC égale à la valeur de MacAddr .
Si une table de clés par défaut par station n’existe pas pour la valeur de MacAddr, la station 802.11 doit utiliser toute table de clés par défaut inutilisée par station.
Pour plus d’informations sur l’objet MIB dot11DesiredBSSType , consultez OID_DOT11_DESIRED_BSS_TYPE.
bDelete
Valeur booléenne qui spécifie si le pilote miniport doit supprimer la clé par défaut.
Si la valeur est TRUE, le pilote miniport doit supprimer la clé par défaut référencée par uKeyIndex. Si la valeur est FALSE, le pilote miniport doit ajouter ou mettre à jour la clé par défaut référencée par uKeyIndex .
bStatic
Valeur booléenne qui spécifie si le pilote miniport doit supprimer la clé par défaut à la suite d’une connexion ou d’une opération d’itinérance.
Si la valeur est FALSE, le pilote miniport doit supprimer la clé par défaut référencée par uKeyIndex chaque fois que la station 802.11 :
- Se déconnecte du réseau BSS (Basic Service Set).
- Itinérant vers un nouveau réseau BSS.
- Se reconnecte au même réseau BSS.
Si la valeur est TRUE, la clé par défaut référencée par uKeyIndex ne doit pas être supprimée, sauf si elle est :
- Supprimé explicitement par le biais d’une demande d’ensemble de OID_DOT11_CIPHER_DEFAULT_KEY.
- Supprimé implicitement par le biais d’une demande de méthode de OID_DOT11_RESET_REQUEST.
usKeyLength
Longueur, en octets, de la clé dans le tableau ucKey .
ucKey[*]
Matériau clé.
Si AlgorithmId a la valeur DOT11_CIPHER_ALGO_TKIP, le tableau ucKey définit le matériau de clé via la structure DOT11_KEY_ALGO_TKIP_MIC .
Si AlgorithmId a la valeur DOT11_CIPHER_ALGO_CCMP, le tableau ucKey définit le matériau de clé via la structure DOT11_KEY_ALGO_CCMP .
Si AlgorithmId a la valeur DOT11_CIPHER_ALGO_BIP, le tableau ucKey définit le matériau de clé via la structure DOT11_KEY_ALGO_BIP .
ucKey[1]
Matériau clé.
Si AlgorithmId a la valeur DOT11_CIPHER_ALGO_TKIP, le tableau ucKey définit le matériau de clé via la structure DOT11_KEY_ALGO_TKIP_MIC .
Si AlgorithmId a la valeur DOT11_CIPHER_ALGO_CCMP, le tableau ucKey définit le matériau de clé via la structure DOT11_KEY_ALGO_CCMP .
Si AlgorithmId a la valeur DOT11_CIPHER_ALGO_BIP, le tableau ucKey définit le matériau de clé via la structure DOT11_KEY_ALGO_BIP .
Remarques
Si le membre bDelete a la valeur TRUE, les membres suivants ne sont pas valides et doivent être ignorés :
- bStatic
- usKeyLength
- ucKey
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows 8 et versions ultérieures des systèmes d’exploitation Windows. |
En-tête | windot11.h (inclure Ndis.h) |