《分组加密算法》PPT课件.ppt
《《分组加密算法》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《分组加密算法》PPT课件.ppt(72页珍藏版)》请在三一办公上搜索。
1、第7讲 分组密码,它将明文划分成固定的 n 比特的数据组,然后以组为单位,在密钥的控制下进行一系列的线性或非线性的变化而得到密文。这就是分组密码。分组密码一次变换一组数据。分组密码算法的一个重要特点就是:当给定一个密钥后,若明文分组相同,那么所变换出密文分组也相同。分组密码的一个重要优点是不需要同步,分组密码体制,输入,输出,加密算法,密钥,明文,输入,输出,解密算法,密钥,明文,n bit,n bit,n bit,n bit,密文,密文,分组密码的一般设计原理,分组密码是将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为n的组(可看成长度为n的矢量),每组分别在密钥的控制下变换成等
2、长的输出数字(简称密文数字)序列。,加密算法,解密算法,明文,密文,原来的明文,(x0,,xn-1),(x0,,xn-1),(y0,,yn-1),分组密码的一般设计原理,设计目标在密钥控制下,从一个足够大、足够好的置换子集中简单迅速地选出一个置换,对当前输入的明文数字组进行加密变换;要求:1 分组长度足够大,防止穷举攻击;2 密钥空间足够大,但不能太长,以便于密钥的管理;3 算法要足够复杂,充分实现明文和密钥的扩散;没有简单的关系可寻,DES对称加密技术,DES(Data Encryption Standard)算法是一种用56位密钥来加密64位数据的方法。发明人:IBM公司 W.Tuchma
3、n和C.Meyer.基础:1967年美国Horst Feistel提出的理论;产生:美国国家标准局1973年开始研究除国防部外的其它部门的计算机系统的数据加密标准,于1973年5月15日和1974年8月27日先后两次向公众发出了征求加密算法的公告,最终选定DES。,DES,采用分组密码体制;用56bit密钥来加密64bit数据的方法;DES要达到的目标有:提供高质量的数据保护,防止数据未经授权的泄露和未被察觉的修改;具有复杂性,使得破译的开销超过可能获得的利益;DES的安全性不依赖于算法的保密,安全性仅以加密密钥的保密为基础;在实现上可行、经济;,DES算法的原理,DES算法的入口参数有三个:
4、Key、Data、Mode。其中:Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式有两种:加密或解密。,DES算法原理,DES算法的工作原理:如Mode为加密,则用Key去把数据Data进行加密,生成Data的密码形式(64位)作为DES的输出结果;如Mode为解密,则用Key去把密码形式的数据Data解密,还原为Data的明码形式(64位)作为DES的输出结果。,DES算法的实现步骤,第一步:变换明文。对给定的64位比特的明文x,首先通过一个置换IP表来重新排列x,从而构造出64位比特的x0,x0=IP(x)=
5、L0R0,其中L0表示x0的前32比特,R0表示x0的后32位。第二步:按照规则迭代。规则为Li=Ri-1Ri=Li-1f(Ri-1,Ki)(i=1,2,316)经过第一步变换已经得到L0和R0的值,其中符号表示的数学运算是异或,f表示一种置换,由S盒置换构成,Ki是一些由密钥编排函数产生的比特块。f和Ki将在后面介绍。第三步:对L16R16进行交换得到R16L16对R16L16利用IP-1作逆置换,就得到了密文y。,DES加密过程,输入64位比特明文,DES算法的实现步骤,可以看出,DES加密需要四个关键点:(1)IP置换表和IP-1逆置换表;(2)函数f;(3)子密钥Ki。(4)S盒的工作
6、原理。,(1)IP置换表和IP-1逆置换表,58 50 42 34 26 18 10 260 52 44 36 28 20 12 462 54 46 38 30 22 14 664 56 48 40 32 24 16 857 49 41 33 25 17 9 159 51 43 35 27 19 11 361 53 45 37 29 21 13 563 55 47 39 31 23 15 7,40 8 48 16 56 24 64 3239 7 47 15 55 23 63 3138 6 46 14 54 22 62 3037 5 45 13 53 21 61 2936 4 44 12 52
7、20 60 2835 3 43 11 51 19 59 2734 2 42 10 50 18 58 2633 1 41 9 49 17 57 25,IP与IP-1互逆,M=(m1,m2,.),1 2 3 4 5 6 7 8,9 10 11 12 13 14 15 16,17 18 19 20 21 22 23 24,25 26 27 28 29 30 31 32,33 34 35 36 37 38 39 40,41 42 43 44 45 46 47 48,49 50 51 52 53 54 55 56,1 2 3 4 5 6 7 8,9 10 11 12 13 14 15 16,17 18
8、19 20 21 22 23 24,25 26 27 28 29 30 31 32,33 34 35 36 37 38 39 40,41 42 43 44 45 46 47 48,49 50 51 52 53 54 55 56,IP(M)=(m58,m50)=(m1 1,m1 2,.),58 50 42 34 26 18 10 2,60 52 44 36 28 20 12 4,62 54 46 38 30 22 14 6,64 56 48 40 32 24 16 8,57 49 41 33 25 17 9 1,61 58 45 37 29 21 13 5,63 55 47 39 31 23 1
9、5 7,40 8 48 16 56 24 64 32,39 7 47 15 55 23 63 31,38 6 46 14 54 22 62 30,37 5 45 13 53 21 61 29,36 4 44 12 52 20 60 28,34 2 42 10 50 18 58 26,33 1 41 9 49 17 57 25,IP,IP-1,DES的一轮迭代,Li-1(32 bit),Ri-1(32 bit),选择扩展运算 E盒,48bit寄存器,48bit寄存器,选择压缩运算 S盒,32bit寄存器,置换运算 P,Ri=Li-1f(Ri-1,ki)(32 bit),(32 bit),Li=R
10、i-1,轮开始:64bit分成左右两半,子密钥Ki(48 bit),扩展置换 E盒(Expand Box),将输入的32bit块扩展到48bit的输出块;48bit的输出块再分成8个6bit块;,01 02 03 04,05 06 07 08,09 10 11 12,13 14 15 16,17 18 19 20,21 22 23 24,25 26 27 28,29 30 31 32,01 02 03 04,05 06 07 08,09 10 11 12,13 14 15 16,17 18 19 20,21 22 23 24,25 26 27 28,29 30 31 32,32,04,08,1
11、2,16,20,24,28,05,09,13,17,21,25,29,01,扩展置换函数E,扩展位,扩展位,固定位,压缩替代 S盒(Substitution Box),48bit块通过S盒压缩成32bit块,48bit寄存器,32bit寄存器,6bit,4bit,共8个S盒,S盒,作用:将6个输入位映射为4个输出位;方法:若定义a1a2a3a4a5a6,将a1a6组成2位二进制数,对应S盒表中的行号;将a2a3a4a5组成一个4位的2进制数,对应S盒表中的列号;映射到交叉点的数据就是该S盒的输出。输入为101011的输出是?,S盒,S盒,S盒,DES中其它算法都是线性的,而S盒运算则是非线性的
12、,S盒不易于分析,它提供了更好的安全性;所以S盒是算法的关键所在;提供了密码算法所必需的混乱作用;改变S盒的一个输入位至少要引起两位的输出改变;,置换函数P(Permutaion),P置换的目的是:提供雪崩效应;明文或密钥的一点小的变动都引起密文的较大变化;,DES中子密钥的生成,64bit密钥,C0(28bit),D0(28bit),循环左移,循环左移,C(28bit),C(28bit),循环左移,循环左移,置换选择2,Ci(28bit),Di(28bit),(56bit),(56bit),Ki,K1,(48bit),(48bit),(56bit),置换选择-1 置换选择-2,57 49 4
13、1 33 25 17 9,1 58 50 42 34 26 18,10 2 59 51 43 25 27,19 11 3 60 52 44 36,63 55 47 39 31 23 15,7 62 54 46 38 30 22,14 6 61 53 45 37 29,21 13 5 28 20 12 4,14 17 11 24 1 5,3 28 15 6 21 10,23 19 12 4 26 8,16 7 27 20 13 2,41 52 31 37 47 55,30 40 51 45 33 48,44 49 39 56 34 53,46 42 50 36 29 32,置换选择1,置换选择2
14、,多重DES双重DES,双重DES加密逻辑,双重DES解密逻辑,多重DES三重DES,加密,解密,K1,P,C,三重DES加密逻辑,三重DES解密逻辑,K2,解密,K1,B,A,解密,加密,K1,C,P,K2,解密,K1,B,A,DES算法的安全性,DES算法具有比较高安全性,到目前为止,除了用穷举搜索法对DES算法进行攻击外,还没有发现更有效的办法。而56位长的密钥的穷举空间为256,如果一台计算机的速度是每一秒种检测一百万个密钥,则它搜索完全部密钥就需要将近228.5年的时间。f函数(S盒)的设计原理未知;,DES算法的程序实现,根据DES算法的原理,可以方便的利用C语言实现其加密和解密算
15、法。在VC+6.0中新建基于控制台的Win32应用程序,算法如程序DES1.cpp所示。,数据加密标准 DES,数据加密标准 DES 属于常规密钥密码体制,是一种分组密码。在加密前,先对整个明文进行分组。每一个组长为 64 bit。然后对每一个 64 bit 二进制数据进行加密处理,产生一组 64 bit 密文数据。最后将各组密文串接起来,即得出整个的密文。使用的密钥为 64 bit(实际密钥长度为 56 bit,有 8 bit 用于奇偶校验)。,DES 加密标准,L0,R0,L1=R0,IP,L2=R1,L15=R14,R1=L0 f(R0,K1),R2=L1 f(R1,K2),R15=L1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 分组加密算法 分组 加密算法 PPT 课件

链接地址:https://www.31ppt.com/p-5470417.html