欢迎来到天天文库
浏览记录
ID:46054667
大小:597.50 KB
页数:43页
时间:2019-11-20
《对称密码学及其应用 第4章 典型分组密码算法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第四章典型分组密码算法DES算法IDEA算法RC5算法AES算法DES算法DES的历史1971IBM,由HorstFeistel领导的密码研究项目组研究出LUCIFER算法。并应用于商业领域。1973美国标准局征求标准,IBM提交结果,在1977年,被选为数据加密标准。DES利用56比特串长度的密钥K来加密长度为64位的明文,得到长度为64位的密文DES的描述该算法主要步骤:将64位明文分组送入初始置换(IP,InitialPermutation)函数。对明文进行初始置换。初始置换产生转换块的两半,假设为左明文(LPT)和右明文(RPT)。每个左明文与右明文用各自的密钥经过16轮加密过程。
2、将左明文与右明文重接起来,对组成的块进行最终置换(FP,FinalPermutation)。这个过程的结果得到64位密文。DES主要步骤IP-初始置换最终转换(FP)DES的一轮异或与交换DES轮函数F()DES加密的一个例子取16进制明文X:0123456789ABCDEF密钥K为:133457799BBCDFF1去掉奇偶校验位以二进制形式表示的密钥是00010010011010010101101111001001101101111011011111111000应用IP,我们得到:L0=11001100000000001100110011111111L1=R0=111100001010
3、10101111000010101010然后进行16轮加密。最后对L16,R16使用IP-1得到密文:85E813540F0AB405DES的设计思想和特点DES的核心是S盒,除此之外的计算是属线性的。S盒作为该密码体制的非线性组件对安全性至关重要。S盒的设计准则:1.S盒不是它输入变量的线性函数2.改变S盒的一个输入位至少要引起两位的输出改变3.对任何一个S盒,如果固定一个输入比特,其它输入变化时,输出数字中0和1的总数近于相等。DES的安全性对DES的批评主要集中在以下几点:DES的密钥长度(56位)可能太小。DES的迭代次数可能太少。S盒中可能有不安全因素。DES的一些关键部分不
4、应当保密。3DESIDEA简介瑞士的XuejiaLai和JamesMassey于1990年公布了IDEA密码算法第一版,称为PES(ProposedEncryptionStandard)。为抗击差分密码攻击,他们增强了算法的强度,称IPES(ImprovedPES),并于1992年改名为IDEA(InternationalDataEncryptionAlgorithm,国际数据加密算法。)IDEA(Cont.)IDEA是一个分组长度为64位的分组密码算法,密钥长度为128位(抗强力攻击能力比DES强),同一算法既可加密也可解密。IDEA的“混淆”和“扩散”设计原则来自三种运算,它们易于软、
5、硬件实现(加密速度快):IDEA简介(Cont.)IDEA是PGP的一部分;IDEA能抗差分分析和相关分析;IDEA似乎没有DES意义下的弱密钥;BruceSchneier认为IDEA是DES的最好替代,但问题是IDEA太新,许多问题没解决。IDEA简介(Cont.)异或运算()整数模216加(+)整数模216+1乘()(IDEA的S盒)扩散由称为MA结构的算法基本构件提供。Z6F2F1Z5G1G2IDEA简介(Cont.)实现上的考虑使用子分组:16bit的子分组;使用简单操作(易于加法、移位等操作实现)加密解密过程类似;规则的结构(便于VLSI实现)。IDEA加密的总体方案图循环2循环
6、8循环1输出变换64位密文64位明文Z1Z6Z7Z12Z43Z48Z49Z52子密钥生成器128位密钥Z1Z5216IDEA的密钥生产56个16bit的子密钥从128bit的密钥中生成前8个子密钥直接从密钥中取出;对密钥进行25bit的循环左移,接下来的密钥就从中取出;重复进行直到52个子密钥都产生出来。IDEA的解密加密解密实质相同,但使用不同的密钥;解密密钥以如下方法从加密子密钥中导出:解密循环I的头4个子密钥从加密循环10-I的头4个子密钥中导出;解密密钥第1、4个子密钥对应于1、4加密子密钥的乘法逆元;2、3对应2、3的加法逆元;对前8个循环来说,循环I的最后两个子密钥等于加密循环
7、9-I的最后两个子密钥;RC5加密算法作者为RonRivest算法特点三个参数参数w:表示字长,RC5加密两字长分组,可用值为16、32、64参数r:表示轮数,可用值0,1,…,255参数b:表示密钥K的字节数,可用值0,1,…,255RC5版本:RC5-w/r/b算法作者建议标定版本为RC5-32/12/16RC5加密算法三个基本运算字的加法,模2w+按位异或⊕左循环移位<<<算法:A=A+S[0];B=B+S[1];
此文档下载收益归作者所有