WEP/WPA工作原理

WEP/WPA工作原理

WEP加密

  • 使用Rivest Cipher4(RC4)算法加密流量内容,实现机密性
  • CRC32算法检查数据完整性
  • 标准采用使用24位initialization vector(IV)

RC4算法

  • RSA实验室研发的对称加密流算法
    • 实现简单
    • 速度快
  • 加密:对明文流和密钥流进行XOR计算
  • 解密:对密文流和密钥流进行XOR计算
  • RC4算法key由两个过程生成
    • 合并IV和PSK,利用Key Scheduling Algorithm(KSA)算法生成起始状态表。
    • Pseudo-Random Generation Algorithm(PRGA)算法生成最终密钥流。

WPA安全系统

  • Wi-Fi Protected Access
  • 802.11i为提高无限安全,开发两个新的链路层加密协议
    • Temporal Key Integrity Protocol(TKIP)
      • WPA1(较之WEP可动态改变密钥)
    • Counter Mode with CBC-MAC(CCMP)
      • WPA2
  • WPA加密两种安全类型
    • WPA个人:使用预设共享密钥实现身份认证
    • WPA企业:使用802.1x和Radius服务器实现AAA
      • 从客户端到AP用EAP协议
  • WPA1
    • 802.11i第三版草案
    • 与WEP比较
      • 都采用逐包进行密钥加密
      • 128位的key和48位的初向量(IV)
      • RC4流加密数据
      • 帧计数器避免重放攻击
      • TKIP使用Michael算法进行完整性校验MIC
        • WEP CRC32
      • 兼容早期版本硬件
  • WPA2
    • 依据802.11i完全重新设计实现
      • 也被称为Robust Security Network(RSN)
      • CCMP替代TKIP
      • AES加密算法取代了RC4
      • 不兼容早期版本硬件

身份认证(WPA企业)

  • 身份认证基于Extensible Authentication Protocol(EAP实现)
    • EAP-TLS,需要客户端和服务器证书
    • EAP-TTLS
    • PEAP混合身份验证,只需要服务器证书
  • 客户端选择身份认证方式
  • AP发送身份验证信息给RadiusServer
  • Radius Server返回”Radius Accept“表示认证成功
    • 其中包含MasterKey(MK)
  • AP通过EAP消息通知STA认证成功

密钥交换

  • 无线网络设计用于一组无线通信设备

    • 关联到同一AP的设备共享无线信道
    • 单播、广播、组播
      • 安全特性要求不同
      • 单播通信需要单独密钥加密通信双方流量
        • pairwise key:对偶密钥(PTK)(T是temporary,PTK由PMK得出)
      • 组播通信需要信任域内所有成员共享的同一密钥
        • 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

  • AP发送Anonce给STA
  • STA生成Snonce计算出PTK
  • STA发送Snonce加PTK的MIC给AP
  • AP拿到Snonce计算出PTk
  • AP计算MIC与接收的MIC比对
  • MIC一致说明确定STA知道PMK
  • AP发GTK给STA
  • STA回复ACk并使用密钥加密

其它

  • 集中身份验证:
    • Radius
    • LADP
    • kerberos