当前位置:   article > 正文

WPA加密的四次握手过程_wpa4

wpa4

WPA加密的四次握手过程

一、为什么要四次握手

为了解决无线传输不安全,需要对无线连接的接入进行控制,并实现帧传播的加解密。WPA四次握手有点相当于一个“安全”地协商“交换”秘钥的过程。这个秘钥就是PTK(PairwiseTransient Key),成对传输秘钥。

二、PTK的组成

PTK包含4个部分:KCK(Key Confirmation Key),KEK(Key Encryption Key),TK(Temporal Key),MIC。

KCK用来在EAPOL4-way shake时校验完整性
KEK用于在EAPOL4-way shake的3/4的时候来加密GTK等数据
TK用于加密单播数据
MIC用于数据传输的时候TKIP方式的Michael完整性校验,CCMP不用

PTK的总长度根据加密方式不同而不同。

当加密方式是TKIP时,PTK长512位,按顺序分别为KCK占128位,KEK占128位,TK占128位, MIC占128位。

当加密方式是CCMP时,PTK长384位,按顺序分别为KCK占128位,KEK占128位,TK占128位。

三、PTK的生成

生成PTK,需要5个必要元素*:PMK、ANonce(Nonce 1,AP生成的随机数)、SNonce(Nonce2,STA生成的随机数)、AuthenticateMAC(MAC1,AP的MAC)、SupplicantMAC(MAC2,STA的MAC)

上图的四个输出里面,DataEncr和DataMIC合起来就是TK,EAPOLEncr/MIC分别对应KEK和KCK。_

四、WPA四次握手过程

1. AP把自己的随机数(ANonce)传给STA,STA在收到ANonce后,可以生成PTK。

2. STA把自己的随机数(SNonce)和生成的PTK中的MIC传给AP。AP收到SNonce后,可以生成PTK,将收到的MIC和自己生成的MIC比较进行完整性校验,如果校验失败,握手失败。

3. 校验成功,AP使用PTK加密GTK,然后把加密后的GTK传给STA。

4. STA使用自己生成的PTK解密GTK,同时验证MIC,如果无误则发送ACK进行确认。

注:GTK只包含数据传输部分的Key,也就是GroupEncryption Key(加解密)和Michael Authenticator MIC Key(完整性校验),没有包含EAP-Key部分,所以只有256位。

借鉴博文:WPA 4次握手关于WPA/WPA2 4次握手

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/724787
推荐阅读
相关标签
  

闽ICP备14008679号