保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

WEP安全性能研究及其攻击


[S[1]]和S[S[1]+S[S[1]]]这三个元素以很高的概率(大于5%)均不参与KSA剩余的交换操作,也即首字节输出以很高的概率满足:

Out=SI+B-1[jI+B]=SI+B-1[jI+B-1+K[B]+SI+B-1[I+B]]

这种情况下,通过重建KSA,能够成功地从首字节输出中获取加密密钥中某个特定字节K[I+B]的信息:

K[B]=S[Out]-jI+B-1-SI+B-1[I+B]]

S[Out]表示元素Out在状态表中的位置。

从前面分析可以看出,在满足SI[1]<I+B?且SI[1]+SI[SI[1]]=I+B条件的情况下,可以准确重建K[B]的概率大于5%,远远大于1/256。这样通过收集足够数量的满足上述条件的数据包,就可以成功地重建密钥K[B]。同理,在成功重建K[B]的基础上,就可以用类似的方法重建所有密钥。

具体算法如下:

RecoverWepKey(CurrentKeyGuess,KeyByte)

Counts[0...255]=0

For each packet->P

If Resolved﹖(P.IV)

Counts[SimulateResolved(P,CurrentKeyGuess)]+=1

For each SelectMaximalIndexesWithBias(Counts)->ByteGuess

CurrentKeyGuess[KeyByte]=ByteGuess

If Equal﹖(KeyByte,KeyLength)

If CheckChecksums(CurrentKeyGuess)

Return CurrentKeyGuess

Else

Key=RecoverWEPKey(CurrentKeyGuess,KeyByte+1)

If notEqual﹖(Key,Failure)

Return Key

Return Failure

2.3 算法改进

可以看出,以上的攻击方法中,所有关于K[I+B]的预测均是基于其前面所有密钥(K[0],...,K[I+B-1])已知的基础上。换言之,前面的预测错误将直接导致K[I+B]的错误预测。那么能否从K[I+B]中推测出K[0],...,K[I+B-1]的信息?

考虑KSA,如果经过I次迭代后,满足:

I<SI[1]+SI[SI[1]]=I+B≤L

SI[1]≤I

则SI[1]和SI[SI[1]]以很大的概率((254/256)L-I≈1)不参与第I步与第L步之间的迭代。同时,j以很大的概率不指向SI[I],...,SI[I+B]这几个元素。

即:

SI[1]=SI+B-1[1]   iL-1=L-1

jI+B-1=jI+SI[I]+...+SI[I+B-1]+K[I]+...+K[I+B-1]

考虑第L步:

《WEP安全性能研究及其攻击(第4页)》
本文链接地址:http://www.oyaya.net/fanwen/view/165720.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。