中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

一個(gè)公司做100個(gè)網(wǎng)站百度一鍵安裝

一個(gè)公司做100個(gè)網(wǎng)站,百度一鍵安裝,熱門(mén)圖片素材,政府網(wǎng)站解決方案關(guān)于Wi-Fi的加密認(rèn)證過(guò)程,可以參考如下鏈接,今天我們來(lái)理解如何生成GTK。 WLAN數(shù)據(jù)加密機(jī)制_tls加密wifi-CSDN博客 1 GTK GTK(Group Temporal Key)是由AP通過(guò)GMK生成,長(zhǎng)度為128位,并在四次握手的第三步中…

關(guān)于Wi-Fi的加密認(rèn)證過(guò)程,可以參考如下鏈接,今天我們來(lái)理解如何生成GTK。

WLAN數(shù)據(jù)加密機(jī)制_tls加密wifi-CSDN博客

1 GTK

GTK(Group Temporal Key)是由AP通過(guò)GMK生成,長(zhǎng)度為128位,并在四次握手的第三步中通過(guò)加密的方式發(fā)送給STA。具體步驟如下:

  • GTK生成:AP生成一個(gè)新的GTK。這個(gè)GTK是AP自己生成的隨機(jī)密鑰,用于加密多播和廣播通信。
    • Note:所以連接到同一個(gè)AP的STA都擁有相同GTK。
  • GTK分發(fā):在四次握手的第三步,AP將GTK加密后發(fā)送給STA。加密使用的是PTK中的KEK(Key Encryption Key)部分。
    • Note:關(guān)于KEK請(qǐng)參考鏈接:WLAN 4-Way Handshake如何生成PTK?-CSDN博客

1.1 GTK生成的具體步驟

Wi-Fi使用偽隨機(jī)函數(shù)(PRF)生成GTK。常用的PRF實(shí)現(xiàn)基于HMAC-SHA1或HMAC-SHA256,如下圖所示:

  • 在WPA和WPA2中,通常使用HMAC-SHA1。
  • 在WPA3中,使用更強(qiáng)的HMAC-SHA256。

Note:

  • 當(dāng)前GMK由隨機(jī)數(shù)代替;
  • 為了防止GTK泄露,AP應(yīng)定期生成新的GTK并分發(fā)給所有STA。

如上圖所示,GTK密鑰生成的層級(jí),我們這里重點(diǎn)講解下生成算法,我們可以看到生成的算法是PRF-Length,其中Length的計(jì)算方法如下所示:

  • Length =TK_bits.
    • 其中TK_bits的值參考下圖:

1.2 GTK的傳遞過(guò)程

四次握手的具體步驟包括以下內(nèi)容:

  • 消息1:AP生成ANonce,并發(fā)送給STA。
  • 消息2:STA生成SNonce,并發(fā)送給AP。STA和AP都計(jì)算出PTK。
  • 消息3:
    • AP生成GTK。
    • AP使用PTK中的KEK加密GTK。
    • AP將加密的GTK和一個(gè)MIC(Message Integrity Code)發(fā)送給STA,以保證消息的完整性和保密性。
  • 消息4:STA接收到加密的GTK后,使用PTK中的KEK解密,得到GTK,并發(fā)送確認(rèn)消息給AP。

1.3 GTK更新和重新分發(fā)

AP定期生成新的GTK,并通過(guò)以下過(guò)程重新分發(fā):

  • 生成新的GTK:使用上述算法和步驟生成新的GTK。
  • 通知STA:通過(guò)新的EAPOL-Key消息通知所有連接的STA。
  • 加密傳輸:使用PTK中的KEK加密新的GTK,并發(fā)送給STA。
  • 確認(rèn):STA接收到新的GTK后,解密并確認(rèn)接收。

1.4 hostapd code

static void wpa_group_ensure_init(struct wpa_authenticator *wpa_auth,struct wpa_group *group)
{if (group->first_sta_seen)return;/** System has run bit further than at the time hostapd was started* potentially very early during boot up. This provides better chances* of collecting more randomness on embedded systems. Re-initialize the* GMK and Counter here to improve their strength if there was not* enough entropy available immediately after system startup.*/wpa_printf(MSG_DEBUG,"WPA: Re-initialize GMK/Counter on first station");if (random_pool_ready() != 1) {wpa_printf(MSG_INFO,"WPA: Not enough entropy in random pool to proceed - reject first 4-way handshake");group->reject_4way_hs_for_entropy = true;} else {group->first_sta_seen = true;group->reject_4way_hs_for_entropy = false;}if (wpa_group_init_gmk_and_counter(wpa_auth, group) < 0 ||wpa_gtk_update(wpa_auth, group) < 0 ||wpa_group_config_group_keys(wpa_auth, group) < 0) {wpa_printf(MSG_INFO, "WPA: GMK/GTK setup failed");group->first_sta_seen = false;group->reject_4way_hs_for_entropy = true;}
}static int wpa_gtk_update(struct wpa_authenticator *wpa_auth,struct wpa_group *group)
{struct wpa_auth_config *conf = &wpa_auth->conf;int ret = 0;size_t len;os_memcpy(group->GNonce, group->Counter, WPA_NONCE_LEN);inc_byte_array(group->Counter, WPA_NONCE_LEN);if (wpa_gmk_to_gtk(group->GMK, "Group key expansion",wpa_auth->addr, group->GNonce,group->GTK[group->GN - 1], group->GTK_len) < 0)ret = -1;wpa_hexdump_key(MSG_DEBUG, "GTK",group->GTK[group->GN - 1], group->GTK_len);if (conf->ieee80211w != NO_MGMT_FRAME_PROTECTION) {len = wpa_cipher_key_len(conf->group_mgmt_cipher);os_memcpy(group->GNonce, group->Counter, WPA_NONCE_LEN);inc_byte_array(group->Counter, WPA_NONCE_LEN);if (wpa_gmk_to_gtk(group->GMK, "IGTK key expansion",wpa_auth->addr, group->GNonce,group->IGTK[group->GN_igtk - 4], len) < 0)ret = -1;wpa_hexdump_key(MSG_DEBUG, "IGTK",group->IGTK[group->GN_igtk - 4], len);}if (!wpa_auth->non_tx_beacon_prot &&conf->ieee80211w == NO_MGMT_FRAME_PROTECTION)return ret;if (!conf->beacon_prot)return ret;if (wpa_auth->conf.tx_bss_auth) {group = wpa_auth->conf.tx_bss_auth->group;if (group->bigtk_set)return ret;wpa_printf(MSG_DEBUG, "Set up BIGTK for TX BSS");}len = wpa_cipher_key_len(conf->group_mgmt_cipher);os_memcpy(group->GNonce, group->Counter, WPA_NONCE_LEN);inc_byte_array(group->Counter, WPA_NONCE_LEN);if (wpa_gmk_to_gtk(group->GMK, "BIGTK key expansion",wpa_auth->addr, group->GNonce,group->BIGTK[group->GN_bigtk - 6], len) < 0)return -1;group->bigtk_set = true;wpa_hexdump_key(MSG_DEBUG, "BIGTK",group->BIGTK[group->GN_bigtk - 6], len);return ret;
}
http://www.risenshineclean.com/news/40214.html

相關(guān)文章:

  • 網(wǎng)站加視頻播放設(shè)計(jì)怎么做的網(wǎng)站建設(shè)維護(hù)
  • 嵌入式應(yīng)用軟件開(kāi)發(fā)做網(wǎng)站排名優(yōu)化的公司
  • 藝陽(yáng)科技網(wǎng)站建設(shè)seo系統(tǒng)
  • php團(tuán)購(gòu)網(wǎng)站的難點(diǎn)開(kāi)發(fā)制作app軟件
  • 哪個(gè)網(wǎng)站能學(xué)做微商網(wǎng)站生成器
  • 如何查看網(wǎng)站 是哪家做的蘇州網(wǎng)站制作開(kāi)發(fā)公司
  • 網(wǎng)站優(yōu)化方案 site ww企業(yè)seo優(yōu)化服務(wù)
  • 個(gè)人soho要怎么做企業(yè)網(wǎng)站網(wǎng)站優(yōu)化招聘
  • 阿里云網(wǎng)站建設(shè)的實(shí)訓(xùn)報(bào)告北京外包seo公司
  • 自己做代練網(wǎng)站steam交易鏈接怎么改
  • 臺(tái)州網(wǎng)站排名公司推廣營(yíng)銷(xiāo)app
  • 美團(tuán)網(wǎng)站界面設(shè)計(jì)超級(jí)外鏈吧外鏈代發(fā)
  • 網(wǎng)站開(kāi)發(fā)排期表模板重慶seo小z博客
  • wordpress獲取登錄用戶(hù)的名字seo搜索引擎優(yōu)化視頻
  • 江華網(wǎng)站建設(shè)域名大全
  • 天津網(wǎng)站在哪里建設(shè)seo診斷
  • wordpress 回收站在哪電銷(xiāo)系統(tǒng)軟件排名
  • 做cpa用什么類(lèi)型的網(wǎng)站好百度 營(yíng)銷(xiāo)推廣是做什么的
  • 人與狗做的電影網(wǎng)站百度網(wǎng)盤(pán)怎么用
  • 許昌專(zhuān)業(yè)做網(wǎng)站公司百度站長(zhǎng)工具怎么查排名
  • 深圳哪里做網(wǎng)站好廣州番禺發(fā)布網(wǎng)
  • 圖書(shū)館網(wǎng)站建設(shè)教程電商營(yíng)銷(xiāo)
  • 查網(wǎng)站排名搜索引擎入口google
  • 網(wǎng)站備案必須是企業(yè)嗎外鏈網(wǎng)盤(pán)源碼
  • 德州網(wǎng)站優(yōu)化淘寶攝影培訓(xùn)推薦
  • 珠海做網(wǎng)站方案一元手游平臺(tái)app
  • php網(wǎng)站怎么注入網(wǎng)站排名怎么搜索靠前
  • 汽車(chē)網(wǎng)站建設(shè)方案英語(yǔ)培訓(xùn)機(jī)構(gòu)
  • 成都做一個(gè)小企業(yè)網(wǎng)站需要多少錢(qián)2023網(wǎng)站分享
  • 綿陽(yáng)網(wǎng)站排名網(wǎng)站優(yōu)化推廣費(fèi)用