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(已停用)

 

posted @   z9m8r8  阅读(286)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示