WPA简介
摘选自 https://www.sohu.com/a/199641521_683126
WPA 全名 WI-FI Protected Access, 有WPA 和WPA2两个标准,是一种保护无线网络的安全协议。WPA实现了IEEE802.11i标准的大部分,是在802.11i完备之前替代WEP的过度方案,后被WPA2取代。由于WPA和WPA2都是基于802.11i,因此在技术层面几乎是相同的。主要区别在于WPA2要求支持更安全的CCMP。WPA和WPA2均使用802.11i中定义的四次握手,客户端(station)和接入点(AP)通过四次握手相互验证和协商名为成对临时密钥(Pairwise Transient Key, PTK)的会话密钥。PTK通过成对主密钥(Pairwise Master key, PMK)、AP随机数ANonce、STA随机数SNonce和双方MAC地址等计算生成。其中PMK由登陆密码等双方均已知的信息计算生成,而后续正常数据加密所使用的临时密钥(Temporal KEY, TK)即派生自PTK。各密钥、参数的关系如下:
四次握手的过程可概括如下:
(1)AP发送自己的随机数ANonce给STA
(2)STA生成随机数SNonce,计算出PTK,并将SNonce和信息完整性校验码MIC发送给AP
(3)AP收到SNonce,计算出PTK(此时双方都有PTK),将组密钥GTK加密后连同MIC发给STA
(4)STA收到GTK,安装PTK和GTK,发送ACK确认。AP收到确认后安装PTK。