《分组密码理论》PPT课件.ppt
《《分组密码理论》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《分组密码理论》PPT课件.ppt(45页珍藏版)》请在三一办公上搜索。
1、第3章 分组密码理论,3.1 分组密码概述3.2 DES3.3 分组密码的设计原理3.4 分组密码的工作模式,3.1 分组密码概述,分组密码,就是一个明文分组被当作一个整体来产生一个等长(通常)的密文分组的密码,通常使用的是128位分组大小。分组密码的实质是,设计一种算法,能在密钥控制下,把n比特明文简单而又迅速地置换成唯一n比特密文,并且这种变换是可逆的(解密)。,3.1 分组密码概述(Cont.),分组密码的设计思想(C.E.Shannon):扩散(diffusion)将明文及密钥的影响尽可能迅速地散布到较多个输出的密文中(将明文冗余度分散到密文中)。产生扩散的最简单方法是通过“置换(Pe
2、rmutation)”(比如:重新排列字符)。,分组密码的设计思想(Cont.),混淆(confusion)其目的在于使作用于明文的密钥和密文之间的关系复杂化,是明文和密文之间、密文和密钥之间的统计相关特性极小化,从而使统计分析攻击不能奏效。通常的方法是“代换(Substitution)”(回忆恺撒密码)。,3.1 分组密码概述(Cont.),分组密码设计的要求:分组长度足够大(64128比特)密钥量要足够大(64128)算法足够复杂(包括子密钥产生算法)加密、解密算法简单,易软、硬件实现便于分析(破译是困难的,但算法却简洁清晰),3.2数据加密标准(DES),DES的历史1971 IBM,由
3、Horst Feistel 领导的密码研究项目组研究出LUCIFER算法。并应用于商业领域。1973美国标准局征求标准,IBM提交结果,在1977年,被选为数据加密标准。,3.2数据加密标准(Cont.),4.2.1 简化的DES Simplified DES方案,简称S-DES方案。它是一个供教学而非安全的加密算法,它与DES的特性和结构类似,但参数小。注:1.*加密算法涉及五个函数:(1)初始置换IP(initial permutation)(2)复合函数fk1,它是由密钥K确定的,具有置换和代换的运算。(3)置换函数SW(4)复合函数fk2(5)初始置换IP的逆置换IP-1,加密,10b
4、it密钥,解密,8bit明文,P10,8bit明文,IP,移位,IP-1,P8,fk,fk,SW,SW,移位,P8,fk,fk,IP,IP-1,8bit密文,8bit密文,K2,K2,K1,K1,S-DES方案示意图,2*.加密算法的数学表示:IP-1*fk2*SW*fk1*IP也可写为密文=IP-1(fk2(SW(fk1(IP(明文)其中 K1=P8(移位(P10(密钥K)K2=P8(移位(移位(P10(密钥K)解密算法的数学表示:明文=IP-1(fk1(SW(fk2(IP(密文),对S-DES的深入描述,(1)S-DES的密钥生成:设10bit的密钥为(k1,k2,k10)置换P10是这样
5、定义的P10(k1,k2,k10)=(k3,k5,k2,k7,k4,k10,k1,k9,k8,k6)P8=(k1,k2,k10)=(k6,k3,k7,k4,k8,k5,k10,k9)LS-1为循环左移1位,LS-2为循环左移2位按照上述条件,若K选为(1010000010),产生的两个子密钥分别为K1=(1 0 1 0 0 1 0 0),K2=(0 1 0 0 0 0 1 1),S-DES的密钥生成,10-bit密钥,P10,LS-1,LS-1,LS-2,LS-2,P8,P8,K1,8,K2,5,5,5,5,8,(2)S-DES的加密运算:初始置换用IP函数:IP=1 2 3 4 5 6 7
6、8 2 6 3 1 4 8 5 7 末端算法的置换为IP的逆置换:IP-1=1 2 3 4 5 6 7 8 4 1 3 5 7 2 8 6 易见IP-1(IP(X)=X,S-DES加密图,8-bit 明文,IP,E/P,+,S0,S1,P4,+,L,R,4,K1,8,4,4,fk,F,4,S-DES加密图(续),E/P,+,S0,S1,8,K2,P4,+,IP-1,8-bit 密文,4,8,4,4,fk,F,4,4,2,2,8,SW,函数fk,是加密方案中的最重要部分,它可表示为:fk(L,R)=(LF(R,SK),R)其中L,R为8位输入,左右各为4位,F为从4位集到4位集的一个映射,并不要
7、求是1-1的。SK为子密钥。对映射F来说:首先输入是一个4-位数(n1,n2,n3,n4),第一步运算是扩张/置换(E/P)运算:E/P 4 1 2 3 2 3 4 1 事实上,它的直观表现形式为:n4 n1 n2 n3n2 n3 n4 n1,8-bit子密钥:K1=(k11,k12,k13,k14,k15,k16,k17,k18),然后与E/P的结果作异或运算得:n4+k11 n1+k12 n2+k13n3+k14n2+k15 n3+k16n4+k17n1+k18把它们重记为8位:P0,0 P0,1 P0,2 P0,3 P1,0 P1,1 P1,2 P1,3上述第一行输入进S-盒S0,产生2
8、-位的输出;第二行的4位输入进S盒S1,产生2-位的输出。,两个S盒按如下定义:,S盒按下述规则运算:将第1和第4的输入比特做为2-bit数,指示为S盒的一个行;将第2和第3的输入比特做为S盒的一个列。如此确定为S盒矩阵的(i,j)数。例如:(P0,0,P0,3)=(00),并且(P0,1,P0,2)=(1 0)确定了S0中的第0行2列(0,2)的系数为3,记为(1 1)输出。由S0,S1输出4-bit经置换 P4 2 4 3 1它的输出就是F函数的输出。,作业,试证明S-DES的加密、解密是互逆的,即:D(E(M,K),K)M。,Feistel 密码结构,Feistel 密码设计原则,分组大
9、小 increasing size improves security,but slows cipher 密钥长度 increasing size improves security,makes exhaustive key searching harder,but may slow cipher 轮次数 increasing number improves security,but slows cipher 子密钥生成 greater complexity can make analysis harder,but slows cipher 轮函数 greater complexity can
10、 make analysis harder,but slows cipher 快速软件加密/解密are more recent concerns for practical use and testing,Feistel 密码解密,3.2 DES的描述,DES利用56比特串长度的密钥K来加密长度为64位的明文,得到长度为64位的密文该算法分三个阶段实现:1.给定明文X,通过一个固定的初始置换IP来排列X中的位,得到X0。X0=IP(X)=L0R0其中L0由X0前32位组成,R0由X0的后32位组成。2.计算函数F的16次迭代,根据下述规则来计算LiRi(1=i=16)Li=Ri-1,Ri=Li
11、-1 F(Ri-1,Ki)其中Ki是长为48位的子密钥。子密钥K1,K2,K16是作为密钥K(56位)的函数而计算出的。3.对比特串R16L16使用逆置换IP-1得到密文Y。Y=IP-1(R16L16),DES 算法的一般描述,一轮加密的简图,Li-1 Ri-1,F,+,Li Ri,Ki,对F函数的说明:(类比于S-DES)F(Ri-1,Ki)函数F以长度为32的比特串A=R(32bits)作第一个输入,以长度为48的比特串变元J=K(48bits)作为第二个输入。产生的输出为长度为32的位串。(1)对第一个变元A,由给定的扩展函数E,将其扩展成48位串,E(A)(2)计算E(A)+J,并把结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 分组密码理论 分组 密码 理论 PPT 课件
链接地址:https://www.31ppt.com/p-5470424.html