好文档 - 专业文书写作范文服务资料分享网站

密码破解原理

天下 分享 时间: 加入收藏 我要投稿 点赞

密码破解原理与应用

密码学分类及密码分类:

密码学根据其研究的范畴可分为密码编辑学和密码分析学。密码编辑学和密码分析学是互相对立,相互促进并发展的。密码编辑学研究密码体质的设计,对信息进行编辑表示实现隐蔽信息的一门学问。密码分析学是研究如何破解被加密信息的学问。 密码破解原理:

密码分析之所以能够成功破译密码,最根本的原因是明文中有冗余度。攻击或破译怒那的方法主要有三种:穷举法、统计分析攻击、数学分析攻击。

所谓穷举攻击是指,密码分析者采用依次试遍所有可能的的秘钥对所获密文进行破解,直至得到正确的明文;或者用一个确定的秘钥对所有可能的明文进行加密,直至得到所得的密文。只要有足够的时间和存储空间,穷举攻击原则上是可行的,但是集中面积算时间和存储空间都受到限制,只要秘钥足够长。这种方法往往不行。

统计分析攻击是指密码分析者涌过分析密文和明文的统计规律来破译密码。密码分析者对截获的密文进行统计分析,总结出其间的统计规律,并与明文的统计规律进行比较,从中提取明文和密文之间的对应或变换信息。

数学分析攻击是密码分析者针对加解密算法的数学基础和某些密码学特性,通过数学求解的方法来破译密码。

RC4的算法介绍:

RC4加密算法Ron Rivest(非常有名的非对称加密算法RSA三巨头之一)在1987年设计的,密钥长度可变的流加密算法簇。之所以称其为簇,是由于其核心部分的S-box长度可为任意,但一般为256字节。该算法的速度可以达到DES加密的10倍左右,且具有很高级别的非线性。RC4起初是用于保护商业机密的。但是在1994年9月,它的算法被发布在互联网上,也就不再有什么商业机密了。RC4也被叫做ARC4(Alleged RC4——所谓的RC4),因为RSA从来就没有正式发布过这个算法。

备注:RC4是对称密钥加密算法,而RSA是非对称的加密算法。由于RC4算法加密是采用的xor,所以,一旦子密钥序列出现了重复,密文就有可能被破解。那么,RC4算法生成的子密钥序列是否会出现重复呢?由于存在部分弱密钥,使得子密钥序列在不到100万字节内就发生了完全的重复,如果是部分重复,则可能在不到10万字节内就能发生重复,因此,推荐在使用RC4算法时,必须对加密密钥进行测试,判断其是否为弱密钥。根据目前的分析结果,没有任何的分析对于密钥长度达到128位的RC4有效,所以,RC4是目前最安全的加密算法之一。

RC4算法非常简单,易于描述:用从1到256个字节(8到2048位)的可变长度密钥初始化一个256个字节的状态矢量S,S的元素记为S[0],S[1],? ,S[255],从始至终置换后的S包含从0到255的所有8比特数.对于加密和解密,字节K由S中256个元素按一定方式选出一个元素而生成.每生成一个K的值,S中的元素就

被重新置换一次.

1 初始化S

开始时,S中元素的值被置为按升序从0到255,即s[0]=0,S[1]=1,? ,S[255]=255.同时建立一个临时矢量T.如果密钥K的长度为256字节,则将K赋给T.否则,若密钥长度为keylen字节,则将K的值赋给T的前keylen个元素,并循环重复用K的值赋给T剩下的元素,直到T的所有元素都被赋值.这些预操作可概括如下:

/*初始化*/

for i=0 to 255 do S[i]=i;

T[i]=K[i mod keylen]

然后用T产生S的初始置换.从S[0]到S[255],对每个S[i],根据由T[i]确定的方案,将S[i]置换为S中的另一字节:

/*S的初始序列*/ j=0

for i=O to 255 do

j=(j+s[i]+T[i])mod 256 swap(s[i],s[j]);

因为对S的操作仅是交换,所以惟一的改变就是置换.S仍然包含所有值为0到255的元素.

2 密钥流的生成

矢量S一旦完成初始化,输人密钥就不再被使用.密钥流的生成是从s[0]到S[255],对每个S[i],根据当前S的值,将S[i]与S中的另一字节置换.当S[255]完成置换后,操作继续重复,从S[0]开始:

/*密钥流的产生*/ i,j=0

while(true) i=(i+1)mod 256 j=(j+S[i])mod 256 swap(sEi],s[j])

t=(sEi]+s[j])mod 256; k=S[t]

加密中,将k的值与下一明文字节异或;解密中,将k的值与下一密文字节异或.

3 加密方案:

本文以RC4算法为核心加密算法提出三种加密方案,其中方案一与方案二类似。方案一与方案二要求发送方与接收方持有相同的原始密钥。方案三不要求发送方与接收方使用相同的原始密钥,但发送方必须将本次加密密钥传送给接收方。

方案一

发 送 方原始密码文件内容摘要使用接受方的公钥对其加密用SHA-1得到本次使用的密码RC4算法产生密钥流原始明文+文件密文文件密文+摘要密文将密文发送给接收方接 收 方接收方私钥摘要密文摘要原密码用SHA-1得到本次使用的密码接收到的密文文件密文+摘要密文RC4算法产生密钥流文件密文+明文

方案二

密码破解原理

密码破解原理与应用密码学分类及密码分类:密码学根据其研究的范畴可分为密码编辑学和密码分析学。密码编辑学和密码分析学是互相对立,相互促进并发展的。密码编辑学研究密码体质的设计,对信息进行编辑表示实现隐蔽信息的一门学问。密码分析学是研究如何破解被加密信息的学问。密码破解原理:密码分析之所以能够成功破译密码,最根本的原因是明
推荐度:
点击下载文档文档为doc格式
5ctt08yzgd7u3cm9b9nu86wqu5roxb0038i
领取福利

微信扫码领取福利

微信扫码分享