算法的实现及安全分析

算法的实现及安全分析

ID:28361162

大小:215.04 KB

页数:21页

时间:2018-12-09

算法的实现及安全分析_第1页
算法的实现及安全分析_第2页
算法的实现及安全分析_第3页
算法的实现及安全分析_第4页
算法的实现及安全分析_第5页
资源描述:

《算法的实现及安全分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、DES算法的实现及安全性分析专业班级:计算机科学与技术1班姓名:廖孜孜学号:120103011126完成日期:2015年5月17日引言如果一个密码体制的加密密钥等于脱密密钥,或者其中一个很容易推出另一个,则称此密码体制为单密钥密码体制,也称为对称密码体制或传统密码体制。最具有代表性的近代传统密码体制是DES(数据加密标准)。为了适应社会对计算机数据安全保密越来越高的要求,美国国家标准局(NBS)于1973年向社会公开征集一种用于政府部门及民间进行计算机数据加密算法,许多公司提出了自己的加密算法,最后选中了

2、IBM公司提出的一种加密算法。经过一段时间的试用与征求意见,美国国家标准局于1977年公布了由IBM公司研制的一种加密算法,批准把它作为非机要部门使用的数据加密标准,简称DES,DES是DataEncryptionStandard的缩写。自从公布以来,它一直超越国界成为国际上商用保密通信和计算机通信的最常用的加密算法。原先规定使用期10年,可能是DES尚未受到严重的威胁,更主要的是新的数据加密标准还没有完成,或意见未一致,所以当时的美国政府宣布延长它的使用期。因而DES超期服役了很长时间,20年来它一直活

3、跃在国际上保密通信的舞台上,扮演了十分突出的角色。进入20世纪九十年代后以色列的密码学家Shamir等人提出了一种“差分分析法”,以后日本人又提出类似的方法,这才正式有一种称得上对它的攻击的方法。严格地说,Shamir的“差分分析法”也只有理论上的价值,至少目前为止是这样的。又如,后来的“线性逼近法”,它是一种已知明文攻击法,需要2的43次方也就是4.398×10的12次方对明文-密文对,在这样强的要求条件下,有十多台工作站协同作战,还需要十天的时间。在这以前已有人建议造专用装置来对付它,其基本想法无非是

4、借用硬件来实现对所有密钥的遍历搜索。当时估计一天可以搜索到一个密钥。技术的进步使得搜索的时间进一步缩短,使DES受到了威胁,但DES毕竟辉煌过。它的思想还是值得借鉴。DES算法概述DES是一个对称算法:加密和解密用的是同一算法(除密钥编排不同以外),既可用于加密又可用于解密。它的核心技术是:在相信复杂函数可以通过简单函数迭代若干圈得到的原则下,利用F函数及对合等运算,充分利用非线性运算。DES以64位为分组对数据加密。每组64位,最后一组若不足64位,以“0”补齐。密钥通常表示为64位的数,但每个第8位都

5、用作奇偶校验,可以忽略,所以密钥的长度为56位,密钥可以是任意的56位的数,且可在任意的时候改变。其中极少量的数被认为是弱密钥,但能容易地避开它们,所有的保密性依赖于密钥。DES算法的基本思想DES对64位的明文分组进行操作。通过一个初始置换,将明文分组分成左半部分(L0)和右半部分(R0),各32位长。R0与子密钥K1进行F函数的运算,输出32位的数,然后与L0执行异或操作得到R1,L1则是上一轮的R0,如此经过16轮后,左、右半部分合在一起,经过一个末置换(初始置换的逆置换),这样该算法就完成了。DE

6、S算法剖析DES算法的加密由四部分完成,分别为:初始置换函数IP、子密钥的生成、密码函数F、末置换函数。初始置换函数IP接受长度为64位的明文输入,末置换函数IP一1输出64位的密文。在子密钥的获取过程中,通过密钥置换Pc—l获取从Kl到K16共16个子密钥,这16个子密钥分别顺序应用于密码函数的16次完全相同的迭代运算中。DES的解密算法与加密算法完全相同,只需要将密钥的应用次序与加密时相反应用即可。即解密过程是初始置换函数IP接受长度为64比特的密文输入,将16个子密钥按照K16到K1的顺序应用与函数

7、F的16轮迭代运算中,然后将迭代的结果经由末置换函数IP.1得到64位的明文输出。DES算法运算过程DES主要采用置换和移位运算来实现加解密,接下来深入剖析DES每个部分运算的实现过程。(1)初始置换函数IP64位的明文分组x首先经过一个初始置换函数IP进行置换运算,产生一个64位的输出x0,该输出被分成两个分别为32位的左半部分L0和右半部分RO,用于F函数的16轮迭代运算的首次迭代的初始输入。初始置换函数IP实际上就是一张8x8(8行8列)的迭代表,如表I所示。明文分组中的64位按照表中的规定重新进行

8、排序,其排列顺序为从左到右,从上到下。按表I所示,明文中的第58位被放置在xO的第1位,第50位防止在第2位,依次类推。58504234261810260524436282012462544638302214664564840322416857494133251791595143352719113615345372921135635547393123157IP:初始置换表(2)获取子密钥Ki子密钥的获取主要通过置换和移位运算来

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。