WEP(Wired Equivalent Privacy)有线等效加密

  • WEP采用RC4对称加密算法,在链路层加密数据。
  • WEP加密采用静态的保***,WLAN终端使用相同的**访问无线网络。
  • WEP提供认证功能,当加密机制功能启用后,STA尝试连接上AP时,AP会发出一个 Challenge Packet给STA,STA利用共享**将此值加密后送回AP以进行认证比对,如果正确无误,才能获准访问网络。

WEP 的密码学

  • WEP 采用的密码锁属于对称性**串流密码锁(stream cipher),它使用 64 位或 128 位**。RC 密码锁会利用异或(XOR)运算结合**串流生成密文。

Wi-Fi 安全协议 - WEP

  • 串流密码锁的运作方式:
    (1)选用一把较短的**,然后将之展开为与数据等长的伪随机数**串。
    (2)伪随机数产生器(Pseudo Random Number Generator,PRNG ) 是一组用来将**展开为**串的规则。
    (3)为了还原数据,双方必须拥有相同的**,并且使用相同的算法,将**展开为伪随机数序列。
  • 发送端:采用**串流(keystream)与数据结合,产生密文(cipher text)。
  • 接收端:以相同的**串流处理密文。

Wi-Fi 安全协议 - WEP

WEP 的帧格式

Wi-Fi 安全协议 - WEP

  • IV header(4字节): 作为帧主体的 IV 标头
    前三个字节:表示 24 个bit 的IV
    第4个字节:包含Padding bits(为0)以及**识别码。如果使用预设**,Key ID 位可用来辨识加密帧的预设**。如果使用**映射关系,则Key ID 次栏位的值为0。
  • ICV(4字节): Integrity Check Value,完整性校验值,作为标尾。
  • FCS:帧检验序列,32bit 校验码(CRC)提供了完整性的检查,附加于帧主体之后,同时为RC4 所保护。

WEP 的数据处理

Wi-Fi 安全协议 - WEP

  • WEP 加密输入
  1. Integrity Check Value:数据帧加密前,Header和Payload 会通过CRC算法,产生完整性检验值(ICV)。
  2. Payload:来自网络层的原始数据。
  3. IV:初始向量,搭配**在加密帧时使用。
  4. Secret Key:**,用于加密数据帧,可以用比特串(key bits)或者数字(key number)来指定**。
  • WEP 加密输出
  1. Header: 802.11 帧标头,WEP 只保护承载的数据,802.11 帧标头不作改动。
  2. ICV:根据802.11 MAC 帧所承载的数据计算出完整性检验值。
  3. 帧加***(WEP 种子):由初始向量(IV),40 位或104 位的预共享**(PSK)组成。
    帧加***被当成RC4 **,用以加密802.11 MAC 的数据和ICV。
  4. 加密后的数据帧:802.11 标头 + IV + **编号(WEP 最多定义四把**,需要传输目前使用的**) + 加密后的数据和ICV。
  5. 帧检验码(FCS):加密后的 MAC 帧,从标头到ICV 计算获得帧检验码。
  • WEP 解密流程
  1. 验证帧检验码(FCS),确保所接收到的帧未在传送过程中损毁。
  2. 接收端对数据帧进行解密时,先根据**编号编号获取**,加上IV,然后产生**串,再对数据进行解密。
  3. 接收端得到解密过的数据后,再验证ICV。
  4. 如果ICV 验证无误,再将数据包交给网络层协议处理。

Wi-Fi 安全协议 - WEP

WEP **的长度

WEP种子 **长度 传输IV
64bit 40bit 24bit(标准)
128bit 104bit 24bit
152bit 128bit 24bit

WEP **的类型

  • 配套**(mapped key):用来保护流动于特定来源与接收端之间的数据。配套**也称为单播**(unicast key)或工作站**(station key ),因为它适合保护单播数据。
  • 如果STA之间并不存在配套关系,就必须改用预设**(default key),也称为广播**(broadcast key)。

静态WEP / 动态WEP

  • 静态WEP:不具**传递机制的WEP,需要手动传播**。

  • 动态WEP:每个STA会使用两把**,而不是所有STA共享一把**。
    一把是配套的**,为STA与AP 所共用,用来保护单播帧。
    一把是预设**,同一BSS中所有STA共用,用来保护广播与组播帧。
    工作站所使用的加***,是通过「**加***」(key encryption keys)来传递。

  • 在动态WEP 里,每个STA均会自AP处接收到两把**:配套**储存为0 号**,预设**储存为1 号**。
    当数据帧被置于待传序列,驱动程序将会以0 号**加密单播帧,以1 号**加密广播帧。
    动态WEP每隔一段时间就会产生并传递新的**。

相关文章: