1.专业术语
1.PTK(Pairwise Transit key),PTK 用来加密STA 和 AP 之前所有的单播数据。
计算方式如下:
PTK = PRF(PMK + ANONCE + SNONCE + MAC(AA) + MAC(SA))
2.PRF:伪随机函数
3.ANonce:AP生成的随机数,A表示authenticantor,包含在eapol-1;
4.SNonce:Station生成的随机数,S表示supplicant,包含在eapol-2;
5.MIC(Message Integrity Check)消息完整性校验,用来TKIP加密算法数据完整性校验,CCMP用在AES加密算法数据完整性校验。
6.GTK (Group Temporal Key) GTK用来加密AP和STA之间的多播/组播数据包,连接该AP的所有STA共享一个GTK,包含在eapol-3
7.PMK (Pairwise Master Key) PMK 是由 MSK 生成,WPA2/PSK 的情况下,当 supplicant 和 authenticator 身份验证后,PSK 变成 PMK .PMK会在STA和AP保存,并不需要共享
wpa加密网络连接过程中,用户输入的密码在认证过程中称为PSK(Pre-Shared-Key),即“预共享密钥”。利用PSK以及无线网络的SSID,使用PBKDF2算法可以计算出PMK,利用PMK,以及认证过程中传输的ANonce、SNonce、STA的MAC地址、AP的MAC地址,使用hmac sha1算法可以计算出PTK。最后使用PTK的前16个字节以及整个802.1X Authentication数据包,计算出MIC