WPA 安全系统
一、WPA安全系统
全称:Wi-Fi Protected Access
802.11组为提高无线安全,开发两个新的链路层加密协议
Temporal Key Integrity Protocol (TKIP)
WPA1 (较之WEP可动态改变密钥,亦可兼容早期网卡)
Counter Mode with CBC-MAC (CCMP)
WP2(不兼容早期网卡)
WPA加密两种安全类型
- WPA个人:使用预设共享密钥实现身份验证
- WPA企业:使用802.1X和Radius服务器实现AAA(认证,授权,记账)
二、WPA1
802.11i第三版草案
与WEP比较
- 都采用逐包进行密钥加密
- 128的key和48位的初向量 (IV)
- RC4流加密数据
- 帧技术避免重放攻击
- TKIP使用Michael算法进行完整性校验 (MIC)
- WEP CRC32
- 兼容早期版本硬件
三、WPA2
依据802.11i完全重新设计实现
- 也被称为Robust Secruity Network (RSN)
- CCMP代替TKIP
- AES加密算法取代了RC4
- 不兼容早期版本硬件
四、WPA企业连接过程
- 协商安全协议
- 身份验证
- 密钥分发和验证
- 数据加密完整性
五、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"表示认证成功,其中包含Master Key (MK)
AP通过EAP消息通知STA认证成功
EAP理解
八、密钥交换
无线网络设计用于一组无线设备通信
关联到同一AP的设备共享无线信道
单播、广播、组播
- 安全特性要求不同
- 单播通信需要单独密钥加密通信双方流量
- pairwise key:对偶密钥(PTK),T代表的是临时性
- 组播通信需要信任域内所有成员共享的同一密钥
- group key:组密钥(GTK)
1、PMK的生成过程
安全上下的顶级密钥
- MK进行TLS-PRF加密得出PMK
基于服务密钥
- 由上层身份验证方法服务器生成
- 从服务器通过radius传给AP
- 从AP通过EAP消息传给所有STA
基于PSK共享密钥
- Essid + PSK + 迭代次数4096----->Hash计算生成----->PMK
STA和AP分别计算得出PMK,并不在网络中传递交换
PMK:256位即32字节
2、PTK的生成过程
- HMAC-SHA1散列算法
- PRF-X散列算法
PTK = [Data Encr + Data MIC + EAPOL Encr + EAPOL MIC],Data Encr(128位):数据加密 Key,Data MIC:完整性校验 Key,EAPOL Encr:EAPOL协议加密 Key,EAPOL MIC:EAPOL协议完整性校验 Key。
四步握手过程生成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并使用密钥加密
3、数据加密和完整性
- Temporal Key Integrity Protocol (TKIP) 4
- Counter Mode with CBC-MAC (CCMP) 5
- Wireless Robust Authenticated Protocol (WRAP) 6(已停用)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?