在Wi-Fi中,WEP(Wired Equivalent Privacy)是一种早期的加密协议,用于保护无线网络通信的安全性。WEP的含义是提供与有线网络相当的安全性,1997年随第一代802.11协议推出。
WEP使用RC4加密,可以提供无线流量的加密,认证,完整性保护。
WEBP的密码是直接当密钥用的,不会做PRF处理。
目前常用的wep加密长度有:
1. 64-bit WEP: 其中密码长度为40位,也就是(40/8=)5个ASCII码。
2. 128-bit WEP:其中密码长度为104位,也就是(104/8=)13个ASCII码。
剩下的24bit就是IV(初始化向量),IV+Shared Key就是RC4的密钥。
802.11并没有规定IV的生成方式,只是规定IV不能重复,所以最好的方法无非是序列号。
WEP加密下的帧格式包括以下几个部分:
WEP帧格式
- MAC Header:包含帧控制、地址和序列控制信息。
- IV(Initialization Vector):初始化向量,用于加密过程中的随机化。
- 加密数据:实际的加密数据负载。
- ICV(Integrity Check Value):完整性校验值,用于验证数据的完整性。
详细结构
+------------------+------------------+------------------+------------------+
| MAC Header | IV | Encrypted Data | ICV |
+------------------+------------------+------------------+------------------+
1. MAC Header
- Frame Control:2字节,包含帧类型和控制信息。
- Duration/ID:2字节,包含持续时间或ID信息。
- Address 1:6字节,目的地址。
- Address 2:6字节,源地址。
- Address 3:6字节,BSSID(基本服务集标识符)。
- Sequence Control:2字节,包含序列号和片段号。
- Address 4(可选):6字节,用于WDS(无线分布系统)。
2. IV(Initialization Vector)
- IV:3字节,用于加密过程中的随机化。
- Key ID:1字节,指示使用的WEP密钥。
3. Encrypted Data
- 加密数据:实际的加密数据负载,使用RC4算法加密。
4. ICV(Integrity Check Value)
- ICV:4字节,用于验证数据的完整性。
示例
以下是一个WEP加密帧的示例:
+------------------+------------------+------------------+------------------+
| MAC Header | IV | Encrypted Data | ICV |
+------------------+------------------+------------------+------------------+
| Frame Control | IV (3 bytes) | Encrypted Data | ICV (4 bytes) |
| Duration/ID | Key ID (1 byte) | (variable length)| |
| Address 1 | | | |
| Address 2 | | | |
| Address 3 | | | |
| Sequence Control | | | |
| Address 4 (opt.) | | | |
+------------------+------------------+------------------+------------------+
总结
WEP加密下的Wi-Fi帧格式包括MAC Header、IV、加密数据和ICV。IV用于加密过程中的随机化,ICV用于验证数据的完整性。WEP使用RC4算法进行加密,但由于其安全性较弱,已经被更安全的协议(如WPA和WPA2)所取代。
WEP的主要问题是密钥不变而且无法防重放攻击,这样通过重放攻击制造大量报文,然后收集到足够的报文后再利用RC4的弱点就可以破解了。