查看: 38994|回复: 4

WEP深入研究

[复制链接]
发表于 2009-11-24 16:33:17 | 显示全部楼层 |阅读模式
本帖最后由 心翼 于 2009-12-4 13:59 编辑

偷听是802.11及其它无线协议所面临的一个熟悉的问题。1999年9月IEEE 802.11Clause 8.2)为此定义了WEP--Wired Equivalent Privacy加密技术。有线等效保密(WEP)协议是对在两台设备间无线传输的数据进行加密的方式,用以防止非法用户窃听或侵入无线网络。有线的物理结构对其有所保护,比如绑定端口,部分或全部网络埋在建筑物里面也可以防止未授权的访问。WEP的初衷是想为802.11提供和有线天生物理上相同的可靠保证。所以WEP的名字才叫Wired Equivalent Privacy,不过后来证明理想和现实总是有距离的。

经由无线电波的WLAN没有同样的物理结构,因此容易受到攻击、干扰。WEP的目标就是通过对无线电波里的数据加密提供安全性,如同端-端发送一样。 WEP特性里使用了rsa数据安全性公司开发的rc4 ping算法。

Plaintext: 明文
Ciphertext:密文



两个station分别负责加密解密,这样Eacesdropper(偷听者)就看不到明文了
KeyWEP是一种对称加密(加密和解密的过程都用同一个Key).
Key40位或者104位长度,如果无线微端口驱动支持支持Extensible Station (ExtSTA) modeWEP Key可以支持比104更长的。
802.11 station可以选择用下面两种Key

l
Default Keys
Station在接收到广播和多播的报文时总是用default keys来进行加密解密操作。在没有key mapping的情况下也会用default keysStation必须提供一个default key table并至少支持4个key。如果无线微端口驱动支持Extensible Station (ExtSTA) mode,那可以支持4个或者更多的default keys
l
Key-Mapping Keys
Station也有一个key-mapping key table,以MAC地址为序号存了至少32 key。如果是接收到的包,就用transmitter’s MAC address (TA)来找key,如果是要发送的包就用receiver’s MAC address (RA)来找key. 如果无线微端口驱动支持Extensible Station (ExtSTA) mode,那可以支持32个或者更多的key-mapping key

结构

l
Initialization Vector (IV)
一个24位的值,用来和选择好的key一起生成rc4算法所需要的key
l
Key Identifier (ID)
用来在default key table中检索key的序号,如果有key-mapping key就忽略这个值
l
Payload Data
MSDU中所承载的数据
l
Integrity Check Value (ICV)
未加密的payload data的效验和

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?CSNA会员注册

×
回复

使用道具 举报

 楼主| 发表于 2009-11-24 16:34:13 | 显示全部楼层
本帖最后由 心翼 于 2009-12-4 14:01 编辑

加密
加密的过程如下图




首先把选好的key跟在24位的IV后面,然后作为WEP PRNG(伪随机序号产生器)的输出Key Sequence. Key Sequence的长度是payload data的长度加“4”;同时payload data(上图中的Plaintext)加上了4个字节ICV。然后这个两个结果进行异或运算就得到了将要进行传输的密文(Ciphertext)

WEP PRNG是最关键的一步,它将比较短的Secret Key,比如“SuperMan”转化为一个与SuperMan无关的一个很长的Key Sequence。简单化了key在Station之间发布的难度。同时IV是在周期变化的,这样可以保证key的不变。每个新的IV值都会产生新的seed和Key Sequence,也意味着新的密文。因为IV并没有泄露key,并且接收端也需要这个值进行解密,所以IV是明文传输的。

解密
解密的过程如下


接收端收到报文后,用IV和Secret Key产生Key Sequence,应该和发送端产生的一样,然后拿密文(Ciphertext)和Key Sequence进行异或运算。

Plaintext XOR Key Sequence = Ciphertext

Ciphertext XOR Key Sequence = Plaintext

这样又得到了明文Plaintext,然后计算效验和跟发送端计算的进行比较,如果两个效验和相同的话,那可以确定这次成功的WEP加密传输。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?CSNA会员注册

×
回复

使用道具 举报

发表于 2010-4-5 21:38:28 | 显示全部楼层
认真学习了,感谢楼主分享啊!!!!!!!!!!!
回复

使用道具 举报

发表于 2011-1-18 21:37:22 | 显示全部楼层
受教了,谢谢LZ
回复

使用道具 举报

您需要登录后才可以回帖 登录 | CSNA会员注册

本版积分规则

快速回复 返回顶部 返回列表