WPA認證過程

2021-07-29 10:15:24 字數 2108 閱讀 7994

無線安全

2年前 (2015-01-11)

9,6170

預共享金鑰模式

概念預共享金鑰可以是8~63之間任意長度的可列印的ascii碼.

使用wap加密演算法依賴pairwise master key(pmk), pmk使用預共享金鑰和ssid進行計算

當客戶端擁有pmk, 它就與ap開始協商乙個新的, 臨時的金鑰, 即pairwise transient key(ptk)

每次在客戶端連線和定期更換的時候動態的建立這些臨時金鑰

ptk組成

pmk乙個隨機數

由ap提供, 即a-nonce

另乙個隨機數

由客戶端提供, 即s-nonce

客戶端的mac位址

ap的mac位址

通過在認證交換時檢查message integrity code(mic)項, ap驗證客戶端是否真的有pmk

mic是乙個資料報的加密雜湊函式, 這個函式用於防止篡改和合適客戶端具有這個金鑰

如果mic是不正確的, 那麼ptk和pmk就是不正確的

如果攻擊者擁有pmk, 則可以閱讀其它客戶端的的傳輸資料報, 以及接入ap

過程(四次握手)

wpa-psk 初始化工作

產生psk

psk=pmk=pdkdf2_sha1(passphrase, ssid, ssid length, 4096)

第一次握手

ap廣播ssid

ap_mac(aa)→station

station

使用接受到的ssid, ap_mac(aa)和passphares使用同樣演算法產生psk

psk=pmk=pdkdf2_sha1(passphrase, ssid, ssid length, 4096)

第二次握手

station

傳送乙個隨機數snonce

station_mac(sa)→ap

ap接受到snonce, station_mac(sa)後產生乙個隨機數anonce

然後用pmk, ap_mac(aa), station_mac(sa), snonce, anonce 用以下演算法產生ptk

ptk=sha1_prf(pmk, len(pmk), "pairwise key expansion", min(aa, sa) || max(aa, sa) || min(anonce, snonce) || max(anonce, snonce))

mic key=ptk前16個位元組

提取這個ptk 前16 個位元組組成乙個mic key

第三次握手

ap傳送上面產生的anonce→station

station

用接收到anonce 和以前產生psk, snonce, ap_mac(aa), station_mac(sa)用同樣的演算法產生ptk

提取這個ptk 前16 個位元組組成乙個mic key

產生mic值

用這個mic key 和乙個802.1x data 資料幀使用以下演算法得到mic值

mic = hmac_md5(mic key, 16, 802.1x data)

第四次握手

station

傳送802.1x data→ap

傳送mic→ap

用上面那個準備好的802.1x 資料幀在最後填充上mic值和兩個位元組的0(十六進製制)讓後傳送這個資料幀到ap。

ap收到這個資料幀後提取這個mic。並把這個資料幀的mic部分都填上0(十六進製制)這時用這個802.1xdata 資料幀, 和用上面ap產生的mic key 使用同樣的演算法得出mic』。如果mic』等於station傳送過來的mic。那麼第四次握手成功。若不等說明則ap 和station 的金鑰不相同, 或station 發過來的資料幀受到過中間人攻擊, 原資料被篡改過。握手失敗了。

企業模式

客戶端通過ap作為中繼與認證伺服器發生關係, 客戶端與認證伺服器間的認證協議封裝在eap(extensible authentication protocol)裡面, 這樣可以使ap忽略認證細節

多個不同的認證技術在eap上實現, 例如eap-tls和peap

當客戶端認證成功, 認證伺服器通知客戶端認證成功, 並傳送給ap乙個pmk

接下去就是四次握手過程

OAuth認證過程

一 什麼是oauth協議 oauth 開放授權 是乙個開放標準。允許第三方 在使用者授權的前提下訪問在使用者在服務商那裡儲存的各種資訊。而這種授權無需將使用者提供使用者名稱和密碼提供給該第三方 oauth允許使用者提供乙個令牌給第三方 乙個令牌對應乙個特定的第三方 同時該令牌只能在特定的時間內訪問特...

ca認證過程

ca是證書的簽發機構,它是pki的核心。ca是負責簽發證書 認證證書 管理已頒發證書的機關。它要制定政策和具體步驟來驗證 識別使用者身份,並對使用者證書進行簽名,以確保證書持有者的身份和公鑰的擁有權。ca 也擁有乙個證書 內含公鑰 和私鑰。網上的公眾使用者通過驗證 ca 的簽字從而信任 ca 任何人...

HTTPS認證過程

https和http的區別主要如下 1 https協議需要到ca申請證書,一般免費證書較少,因而需要一定費用。2 http是超文字傳輸協議,資訊是明文傳輸,https則是具有安全性的ssl加密傳輸協議。3 http和https使用的是完全不同的連線方式,用的埠也不一樣,前者是80,後者是443。4 ...