免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1195 | 回复: 0
打印 上一主题 下一主题

WEP原理与实践 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-09-09 22:02 |只看该作者 |倒序浏览
WEP是802.11种使用的最简单的数据加密方法。学习WLAN这么长时间了,是时间分析一下它了。

WEP的基本思想是把明文数据一个一个字节的和随机字节流进行异或,就生成了密文。解密的过程就是把密文与相同的随机字节流再异或一下就可以了。这个随机字节流就是采用RC4算法产生的。

RC4这个东西其实是一种利用计算机生成随机字节流的方法,它的算法目前都是知道的。RC4分为两个阶段,密匙安装和伪随机数生成。基本上就是通过对s-box和k-box的数学运算产生的。sbox和kbox都是256字节的数组,kbox用密匙填满。WEP的密匙分为40bit(5字节)和104bit(13字节)两种。

大家在AP的设定中可以看到WEP密码分为长度一般都写64bit和128bit两种。为什么不是40和104呢?在WEP中还有一个IV(24bit)的东西,IV和用户密匙组合在一起就成为64bit和128bit了。为什么要设计这个IV呢?原因是为了避免相同的明文产生相同的密文。IV是变化的,在WEP数据包中明文传输的。

RC4算法在WLAN设备中是硬件实现的,因为很简单,没有乘法运算而且可靠性高。所以最初被选用在运算能力不强的WLAN MAC处理器上运行。

WEP作用于每一个MPDU,也就是说对每一个MPDU,RC4就要初始化一次sbox,IV是由软件生成的。MAC层驱动把IV和用户密匙组合后安装到RC4硬件,数据加解密就自动开始了。IV位于用户密匙的前面,举个例子,IV是0x6e6635,用户选择64bit密匙16进制数10位(1234567890)那么安装给RC4的密匙就应该表述成
unsigned char key[8] = {0x6e, 0x66, 0x35,0x12, 0x34, 0x56, 0x78, 0x90}

附件是一个软件RC4算法解密抓包抓到的WEP数据,RC4取自Jouni的hostapd。

文件:
rc4-jouni.rar
大小:
5KB
下载:
下载





本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/83623/showart_2049359.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP