信息安全概论 ppt 对称密码体制.ppt
《信息安全概论 ppt 对称密码体制.ppt》由会员分享,可在线阅读,更多相关《信息安全概论 ppt 对称密码体制.ppt(110页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、对称密码体制1对称密码体制对称密码体制v对称密码算法(symmetric cipher):n单密钥系统的加密密钥和解密密钥相同,或实质上等同,即从一个易于得出另一个,如下图所示。对称密码体制2对称密码体制对称密码体制v对称密码算法(symmetric cipher):nDES(Data Encryption Standard)nTriple DESnIDEAnBlowfishnRC5nCAST-128n对称密码体制3对称密码体制对称密码体制v对称密码体制n分组密码算法(Block Cipher)l明文被分为固定长度的块,即分组,分组一般为64比特,或者128比特l对每个分组用相同的算法和密钥加
2、/解密l密文分组和明文分组同样长n序列密码算法(stream cipher)l每次可加密一个比特或一个字节l适合比如远程终端输入加密类的应用对称密码体制43.1 3.1 分组密码原理分组密码原理v分组密码n分组密码是将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为n的组(可看成长度为n的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列。加密算法解密算法密钥=(k0,km1)密钥=(k0,km1)密文(y0,yn1)分组密码模型明文(x0,xn1)明文(x0,xn1)对称密码体制53.1.1 3.1.1 分组密码的一般设计原理分组密码的一般设计原理n加密函数:V
3、nKVn,n是n维矢量空间,K为密钥空间。n在相同的密钥k的控制下,加密函数可看成是函数E(,K):VnVn,这实质上是对字长为n的数字序列的置换。n分组加密器本质上就是一个巨大的替换器,在密钥的控制下,能从一个足够大和足够好的置换子集中简单而迅速地选出一个置换,用来对当前输入的明文数字组进行加密变换。n采用了乘积加密器的思想,即轮流使用替代和置换对称密码体制6nShannon提出的设计密码系统的两种基本方法:混淆和扩散。Shannon认为,在理想密码系统中,密文的所有统计特性都应与使用的密钥独立。l混淆:对攻击者隐藏一些语言的局部特征,试图使得密文的统计特性与密钥之间的取值关系尽量复杂l扩散
4、:要求明文 的统计结构被扩散消失到密文的长程统计特性中。要做到这一点,必须让明文的每个比特影响到密文的许多比特的取值。n扩散和混淆的目的都是为了挫败推测出密钥的尝试,从而抗击统计分析。3.1.1 3.1.1 分组密码的一般设计原理分组密码的一般设计原理对称密码体制7n迭代密码是实现混淆和扩散原则的一种有效的方法。合理选择的轮函数经过若干次迭代后能够提供必要的混淆和扩散。n分组密码由加密算法、解密算法和密钥扩展算法三部分组成。解密算法是加密算法的逆,由加密算法惟一确定,因而我们主要讨论加密算法和密钥扩展算法。3.1.1 3.1.1 分组密码的一般设计原理分组密码的一般设计原理对称密码体制8v分组
5、密码的结构一般分为:nFeistel网络结构和SP网络结构lFeistel网络结构?Feistel网络是由Horst Feistel在设计Lucifer分组密码时基于扩散和扰乱的思想所发明的,并因被DES采用而流行。?现在正在使用的几乎所有重要的对称分组密码都使用这种结构,如FEAL、Blowfish、RC5等。3.1.2 3.1.2 分组密码的一般结构分组密码的一般结构对称密码体制9vFeistel密码结构的设计动机n分组密码对n比特的明文分组进行操作,产生出一个n比特的密文分组,共有2n个不同的明文分组,每一种都必须产生一个唯一的密文分组,这种变换称为可逆的或非奇异的。可逆映射 不可逆映射
6、 00 11 00 11 01 10 01 10 10 00 10 01 11 01 11 01 3.1.2 3.1.2 分组密码的一般结构分组密码的一般结构对称密码体制10vFeistel密码结构nn=4时的一个普通代换密码的结构3.1.2 3.1.2 分组密码的一般结构分组密码的一般结构对称密码体制11vFeistel网络结构n一个分组长度为n(偶数)比特的L轮Feistel网络的加密过程如下:l给定明文P,将P分成左边和右边长度相等的两半并分别记为L0 和R0,从而P=L0R0,进行L轮完全类似的迭代运算后,再将左边和右边长度相等的两半合并产生密文分组。l第轮i从以前一轮得到的Li-1和
7、Ri-1为输入,另外的总输入还有从总的密钥K生成的子密钥Ki。3.1.2 3.1.2 分组密码的一般结构分组密码的一般结构对称密码体制12vFeistel网络结构其中Li和Ri的计算规则如下:Li =Ri-1;Ri=Li-1 F(Ri-1,Ki)在第L轮迭代运算后,将LL和RL再进行交换,输出C=RLLL其中F是轮函数,Ki是由种子密钥K生成的子密钥3.1.2 3.1.2 分组密码的一般结构分组密码的一般结构对称密码体制13vFeistel网络结构3.1.2 3.1.2 分组密码的一般结构分组密码的一般结构对称密码体制14nFeistel网络的安全性和软、硬件实现速度取决于下列参数:l分组长度
8、:分组长度越大则安全性越高(其他条件相同时),但加、解密速度也越慢。64比特的分组目前也可用,但最好采用128比特。l密钥长度:密钥长度越大则安全性越高(其他条件相同时),但加、解密速度也越慢。64比特密钥现在已不安全,128比特是一个折中的选择。l循环次数:Feistel网络结构的一个特点是循环次数越多则安全性越高,通常选择16次。3.1.2 3.1.2 分组密码的一般结构分组密码的一般结构对称密码体制15nFeistel网络的安全性和软、硬件实现速度取决于下列参数:l子密钥算法:子密钥算法越复杂则安全性越高。l轮函数:轮函数越复杂则安全性越高。l快速的软件实现:有时候客观条件不允许用硬件实
9、现,算法被镶嵌在应用程序中。此时算法的执行速度是关键。l算法简洁:通常希望算法越复杂越好,但采用容易分析的却很有好处。若算法能被简洁地解释清楚,就能容易通过分析算法而知道算法抗各种攻击的能力,也有助于设计高强度的算法。3.1.2 3.1.2 分组密码的一般结构分组密码的一般结构对称密码体制163.1.2 3.1.2 分组密码的一般结构分组密码的一般结构nFeistel网络解密过程lFeistel网络解密过程与其加密过程实质是相同的。l以密文分组作为算法的输入,但以相反的次序使用子密钥,即第一轮使用KL,第二轮使用KL-1,直至第L轮使用K1,这意味着可以用同样的算法来进行加、解密。l先将密文分
10、组C=RLLL,分成左边和右边长度相等的两半,分别记为L0和R0,根据下列规则计算 Li Ri?Li =Ri-1,Ri=Li-1 F(Ri-1,Ki)1iLl最后输出的分组是RL LL对称密码体制173.2 3.2 数据加密标准数据加密标准(DES)(DES)v DESn数据加密标准(Data Encryption Standard,DES)是至 今为止使用最为广泛的加密算法。l1974年8月27日,NBS开始第二次征集,IBM提交了算法LUCIFER,该算法由IBM的工程师在19711972年研制。l1975年3月17日,NBS公开了全部细节1976年,NBS指派了两个小组进行评价。l197
11、6年11月23日,采纳为联邦标准,批准用于非军事场合的各种政府机构。l1977年1月15日,“数据加密标准”FIPS PUB 46发布对称密码体制18n规定每隔5年由美国国家保密局(National Security Agency)重新评估它是否继续作为联邦加密标准。n最近的一次评估是在1994年1月,当时决定1998年12月以后,DES不再作为联邦加密标准。新的美国联邦加密标准被称为高级加密标准AES(Advanced Encryption Standard)。nDES对推动密码理论的发展和应用起到了重大的作用,学习 和研究它,对于掌握分组密码的基本理论、设计思想和实际应用仍然有着重要的参考
12、价值。3.2 3.2 数据加密标准数据加密标准(DES)(DES)对称密码体制193.2.1 3.2.1 简化的简化的DESDESv 简化的DESn简化的DES(Simplified-DES)是一个供教学而非安全的加密算法,它与DES的特性和结构类似,但是参数较少。nS-DES的加密算法以8bit的明文分组和10位的密钥作为输入,产生8bit的明文分组做为输出。n加密算法涉及五个函数:l1)初始置换IP(initial permutation)l2)复合函数fk1,它是由密钥K确定的,具有置换和替代的运算。l3)转换函数SWl4)复合函数fk2l5)初始置换IP的逆置换IP-1对称密码体制20
13、3.2.1 3.2.1 简化的简化的DESDESn算法的数学表示:l加密算法的数学表示:?密文IP-1*fk2*SW*fk1*IP?也可写为:密文IP-1(fk2(SW(fk1(IP(明文)?其中 K1P8(移位(P10(密钥K)K2P8(移位(移位(P10(密钥K)l解密算法的数学表示:明文IP-1(fk1(SW(fk2(IP(密文)1)初始置换IP(initial permutation)2)复合函数fk1,它是由密钥K确定的,具有置换和替代的运算。3)转换函数SW 4)复合函数fk2 5)初始置换IP的逆置换IP-1对称密码体制213.2.1 3.2.1 简化的简化的DESDESvS-D
14、ES的密钥生成:n设10bit的密钥为(k1,k2,k3,k4,k5,k6,k7,k8,k9,k10),置换P10是这样定义的:lP10(k1,k2,k10)=(k3,k4,k2,k7,k4,k10,k1,k9,k8,k6),相当于lP101 2 3 4 5 6 7 8 9 103 5 2 7 4 10 1 9 8 6 例如:1010000010置换为 1000001100l接下来分别对前5个比特和后五个比特进行一次循环左移(LS-1),对上面的例子而言,得到的结果是(00001 11000)对称密码体制223.2.1 3.2.1 简化的简化的DESDESn然后使用P8操作,这个操作从10个b
15、it中按照下面的方法选出8个bit进行置换得到密钥1(K1)。l其中P8=l对于上例中的00001 11000,得到的结果是:K1101001001 2 3 4 5 6 7 8 6 3 7 4 8 5 10 9 l对前5个比特和后五个比特再进行一次2位循环左移(LS1)得到:00100 00011l最后再进行P8操作,得到K201000011对称密码体制233.2.1 3.2.1 简化的简化的DESDES 10-bit密钥P10LS-1LS-1LS-2LS-2P8P8K18K255585对称密码体制243.2.1 3.2.1 简化的简化的DESDES密文IP-1(fk2(SW(fk1(IP(明
16、文)明文IP-1(fk1(SW(fk2(IP(密文)K1P8(移位(P10(密钥K)K2P8(移位(移位(P10(密钥K)对称密码体制253.2.1 3.2.1 简化的简化的DESDESvS-DES的加密运算:n初始和最终置换:l算法的输入是一个8bit的明文分组,先用IP函数对它做置换:l初始置换用IP函数和算法末端的IP逆置换如下?其中IP-1(IP(X)=X 1 2 3 4 5 6 7 8 2 6 3 1 4 8 5 7IP=1 2 3 4 5 6 7 8 4 1 3 5 7 2 8 6IP-1=对称密码体制263.2.1 3.2.1 简化的简化的DESDESvS-DES加密:对称密码体
17、制273.2.1 3.2.1 简化的简化的DESDESvS-DES加密:n函数fxlSDES中最复杂的组成部分是函数fx,这个函数是多个置换函数和替代函数的组合函数。l该函数表示为:令L和R分别是fx的输入的最左边4个比特和最右边4个比特,令F为一个从4bit串到4bit串的映射。令:fx(L,R)=(L F(R,SK),R)l其中SK是一个子密钥。例如假设经过初始置换后得到的结果是(10111101),对于某个密钥SK,有:F(1101,SK)(1110)。l由(1011)(1110)(0101)得,fx=(0101 1101)。对称密码体制283.2.1 3.2.1 简化的简化的DESDE
18、Sv与DES的关系:nDES对64bit的输入分组进行操作。加密的过程可以定义为:lIP1*fk16*SW*fk15*SW*SW*fk1*IPn它使用一个56bit的密钥,从这个密钥计算出16个48bit的子密钥。这项计算涉及一个56个比特的初始置换和一系列的48比特的移位和置换操作。n在加密过程中,F不是作用于4比特的(n1,n2,n3,n4),而是作用于32比特的(n1,n32)。nS盒子有8个,每个S盒子有4行16列。对称密码体制293.2.2 3.2.2 数字加密标准数字加密标准DESDESv数字加密标准DES:对称密码体制303.2.2 3.2.2 数字加密标准数字加密标准DESDE
19、SvDES 的描述:nDES利用56比特串长度的密钥K来加密长度为64位的明文,得到长度为64位的密文DES算法框图输入64比特明文数据初始置换IP在密钥控制下16轮迭代初始逆置换IP-1输出64比特密文数据交换左右32比特对称密码体制313.2.2 3.2.2 数字加密标准数字加密标准DESDESvDES 的描述:n令i表示迭代次数,表示逐位模2求和,f为加密函数。DES的加密和解密过程表示如下。l加密过程:L0R0 IP()?L i Ri1 i1,2,16?Ri Li1 f(Ri1,Ki)i1,2,16?IP-1(R16L16)l解密过程:R16L16 IP()?Ri1 L i i16,1
20、5,1?Li Ri1 f(Ri1,Ki)i16,1?IP1(R0L0)对称密码体制323.2.2 3.2.2 数字加密标准数字加密标准DESDESvDES 的描述:n初始置换IP和初始逆置换IP1对称密码体制333.2.2 数字加密标准数字加密标准DESvDES 的描述:n每个循环的详细过程对称密码体制343.2.2 3.2.2 数字加密标准数字加密标准DESDESvDES 的描述:nF函数l扩展:32 48,lS-box:6输入 4输出,置换:对称密码体制353.2.2 3.2.2 数字加密标准数字加密标准DESDESvDES 的描述:n选择扩散运算Ri的32bit 48bit两边的是重复选
21、中的32 1 2 3 4 5 4 5 6 7 8 9 8 9 10 11 12 1312 13 14 15 16 1716 17 18 19 20 2120 21 22 23 24 2524 25 26 27 28 2928 29 30 31 32 1对称密码体制363.2.2 3.2.2 数字加密标准数字加密标准DESDESvDES 的描述:n选择压缩运算对称密码体制373.2.2 3.2.2 数字加密标准数字加密标准DESDESvDES 的描述:n选择压缩运算l对每个盒,6比特输入中的第1和第6比特组成的二进制数确定的行,中间4位二进制数用来确定的列对称密码体制383.2.2 3.2.2
22、数字加密标准数字加密标准DESDESvDES 的描述:n例如的输入为101001,则行数和列数的二进制表示分别是11和0100,即第3行和第4列对称密码体制393.2.2 3.2.2 数字加密标准数字加密标准DESDESvDES 的描述:n置换:从S盒出来后重排16 7 20 21 29 12 28 17 1 15 23 26 5 18 31 10 2 8 24 14 32 27 3 919 13 30 6 22 11 4 25对称密码体制403.2.2 3.2.2 数字加密标准数字加密标准DESDESvDES 的描述:n子密钥的产生对称密码体制413.2.2 3.2.2 数字加密标准数字加密
23、标准DESDESvDES 的描述:n子密钥的产生l置换选择1(PC-1)和置换选择2(PC-2)对称密码体制423.2.2 3.2.2 数字加密标准数字加密标准DESDESvDES 的描述:n解密:lDES算法是在 Feistel 网络结构的输入和输出阶段分别添加初始置换IP和初始逆置换IP-1构成lDES的解密使用与加密同样的算法,只是子密钥的使用次序相反。v雪崩效应 Avalanche Effectn明文或密钥的一比特的变化,引起密文许多比特的改变。n如果变化太小,就可能找到一种方法减小有待搜索的明文和密文空间的大小。对称密码体制433.2.2 3.2.2 数字加密标准数字加密标准DESD
24、ESvDES举例:n已知明文m=computer,密钥k=program,用ASCII码表示为:lm=01100011 01101111 01101101 01110000 01110101 01110100 01100101 01110010lk=01110000 01110010 01101111 01100111 01110010 01100001 01101101l因为k只有56位,必须插入第8,16,24,32,40,48,56,64位奇偶校验位,合成64位。而这8位对加密过程没有影响。对称密码体制443.2.2 3.2.2 数字加密标准数字加密标准DESDESvDES举例:nm经过
25、IP置换后得到lL0=11111111 10111000 01110110 01010111lR0=00000000 11111111 00000110 10000011n密钥k通过PC-1得到lC0=11101100 10011001 00011011 1011lD0=10110100 01011000 10001110 0111l再各自左移一位,通过PC-2得到48位?k1=00111101 10001111 11001101 00110111 00111111 01001000lR0(32位)经E作用膨胀为48位,10000000 00010111 11111110 10000000 1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息安全概论 ppt 对称密码体制 信息 安全 概论 对称 密码 体制
限制150内