WPA
2016年11月18日
13:18
WIFI-Protected Access
802.11i组为了提高无线安全,开发两个新的链路层加密协议
Temporal Key Integrity Protocol(TKIP)
WPA1(与WEP相比可动态改变密钥)
Counter Mode with CBC-MAC(CCMP)
WPA2-->AES算法
WPA加密两种安全类型
WPA个人:使用预设共享密钥实现身份认证
WPA企业:使用802.1X和Radius服务器实现AAA
WPA1
802.11i第三版草案
与WEP比较
都采用逐包进行密钥加密
128位的key和48位的初始向量
RC4流加密数据
帧计数器避免重放攻击
TKIP使用Michael算法进行完整性校验
WEP CEC32
兼容早期版本
WPA2
依据802.11i完全重新设计实现
也被称为RobustSecurityNetwork(RSN)
CCMP替代TKIP
AES加密算法取代了RC4
不兼容早期版本硬件
WPA企业连接过程
1.协商安全协议
2.身份认证
3.密钥分发和验证
4.数据加密完整性
WPA-PSK
协商安全协议
密钥分发和验证
数据加密完整性
协商安全协议
协商认证方式
PSK/802.1X
单播和组播/广播流量加密套件
TKIP/CCMP
STA通过probe获取无线网络信息
速率
加密
通道
名称
身份认证(WPA企业)
身份认证基于Extensible Authentication Protocol(EAP)实现
EAP-TLS 需要客户端和服务器证书
EAP-TTLS
PEAP 混合身份验证 只需要服务器证书
客户端选择身份认证方式
AP发送身份验证信息给Radius Server
Radius Server返回Radius Accept表示认证成功
其中包含MasterKey(MK)
AP通过EAP消息通知STA认证成功
密钥交换
无线网络设计用于一组无线设备通信
关联到同一AP的设备共享无线信道
单播,广播,组播
安全特性要求不同
单播通信需要单独密钥加密通信双方流量
Pairwise key:对偶密钥(PTK)
组播通信需要信任域内所有成员共享的同一密钥
Group key:组密钥(GTK)
PMK
安全上下文的顶级密钥
MK进行TLS-PRF加密得出PMK
基于服务密钥
由上层身份验证方法服务器生成
从服务器通过radius传给AP
从AP通过EAP消息传给所有STA
基于PSK共享密钥
ESSID+PSK+迭代次数4096----HASH计算生成--->PMK--->PTK
STA和AP分别计算得出PMK,并不在网络中传递交换
256位即是32字节
密钥交换
PTK的生成过程
HMAC-SHA1散列算法
PRF-X散列算法
四步握手过程生成PTK
AP发送Anonce给STA
STA生成Snonce计算出PTK
Snonce加PTK的MIC发给AP
AP拿到Snonce计算出PTK
AP计算MIC与接收的MIC比对
MIC一致说明确定STA知道PMK
AP发GTK给STA
STA回复ACK并使用密钥加密
数据加密和完整性
三种算法
Temporal Key Integrity Protocol(TKIP)4
Counter Mode with CBC-MAC(CCMP)5
Wireless Robust Authenticated Protocol(WRAP) 6