DOT11_CIPHER_DEFAULT_KEY_VALUE結構(windot11.h)
重要
WiFiCx 是 Windows 11 中發行的新 Wi-Fi 驅動程式模型。 我們建議您使用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 結構。
迷你埠驅動程序必須將 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 bDelete,則迷你埠驅動程序必須忽略此成員。
MacAddr
媒體存取控制 (MAC) 位址,可識別要新增或移除金鑰的預設索引鍵數據表。
如果 dot11DesiredBSSType 管理資訊基底 (MIB) 物件設定為 dot11_BSS_type_infrastructure,則不論 macAddr 成員 的值為何,802.11 月臺都會從預設索引鍵數據表新增或移除索引鍵。 如果從存取點 (AP) 動態取得金鑰,則與月台相關聯的 MacAddr 成員將包含 AP 的 MAC 位址。 否則,MacAddr 的值將會是 0x000000000000。
如果 dot11DesiredBSSType 管理資訊基底 (MIB) 物件設定為 dot11_BSS_type_independent,802.11 月台必須以下列方式新增或移除密鑰:
如果這個成員的值是0x000000000000,802.11 月臺會從預設索引鍵數據表新增或移除索引鍵。 當 NIC 處於可延伸存取點 (ExtAP) OP 模式時,此值為零。
如果這個成員的值是有效的單播 MAC 位址,則 802.11 月台會針對獨立 BSS (IBSS) 網路中對等站的對等站,新增或移除密鑰,其 MAC 位址等於 macAddr 的值。
如果每個月臺的預設索引鍵數據表的值 MacAddr不存在,則 802.11 月台必須使用任何未使用的個別月臺預設索引鍵數據表。
如需 dot11DesiredBSSType MIB 物件的詳細資訊,請參閱 OID_DOT11_DESIRED_BSS_TYPE。
bDelete
布爾值,指定迷你埠驅動程式是否應該刪除預設索引鍵。
如果設定為 TRUE,迷你連接埠驅動程式必須刪除 uKeyIndex 所參考的預設索引鍵,。 如果設定為 FALSE,則迷你埠驅動程式必須新增或更新 uKeyIndex 所參考的預設索引鍵。
bStatic
布爾值,指定迷你埠驅動程式應該在聯機或漫遊作業之後刪除預設密鑰。
如果設定為 FALSE,則每當 802.11 月臺時,迷你埠驅動程式必須刪除 uKeyIndex 所參考的預設密鑰:
- 中斷與基本服務集 (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) |