数据加密标准论述35871.pptx
《数据加密标准论述35871.pptx》由会员分享,可在线阅读,更多相关《数据加密标准论述35871.pptx(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据加密标准数据加密标准(Data Encryption Standard,DES)序列密码和分组密码序列密码和分组密码n一一次次只只对对明明文文中中的的单单个个位位(有有时时对对字字节节)运运算算 的的 算算 法法 称称 为为 序序 列列 算算 法法(stream algorithm)或或 序序 列列 密密 码码(stream cypher)n另另一一类类算算法法是是对对明明文文的的一一组组位位进进行行运运算算,这这些些位位称称为为分分组组(block),相相应应的的算算法法称称为为分分组组算算法法(block algorithm)或或分分组组密密码码(block cypher)。)。背景背
2、景发明人:美国发明人:美国IBM公司公司 W.Tuchman 和和 C.Meyer 1971-1972年研制成功年研制成功基础:基础:1967年美国年美国Horst Feistel提出的理论提出的理论产生:美国国家标准局(产生:美国国家标准局(NBS)1973年年5月到月到1974年年8月两次发布通告,月两次发布通告,公公开开征征求求用用于于电电子子计计算算机机的的加加密密算算法法。经经评评选选从从一一大大批批算算法法中中采采纳纳 了了IBM的的LUCIFER方案方案标准化:标准化:DES算法算法1975年年3月公开发表,月公开发表,1977年年1月月15日由美国国家日由美国国家标准局颁布为数
3、据加密标准(标准局颁布为数据加密标准(Data Encryption Standard),于),于1977年年7月月15日生效日生效背景背景美国国家安全局(美国国家安全局(NSA,National Security Agency)参与了参与了美国国家标准局制定数据加密标准的过程。美国国家标准局制定数据加密标准的过程。NBS接受了接受了NSA的某些建议,对算法做了修改,并将密钥长度从的某些建议,对算法做了修改,并将密钥长度从LUCIFER方方案中的案中的128位压缩到位压缩到56位位1979年,美国银行协会批准使用年,美国银行协会批准使用DES1980年,年,DES成为美国标准化协会成为美国标准
4、化协会(ANSI)标准标准1984年年2月,月,ISO成立的数据加密技术委员会成立的数据加密技术委员会(SC20)在在DES基基础上制定数据加密的国际标准工作础上制定数据加密的国际标准工作DES概述概述分组加密算法:明文和密文为分组加密算法:明文和密文为64位分组长度位分组长度对称算法:加密和解密除密钥编排不同外,使用同一算法对称算法:加密和解密除密钥编排不同外,使用同一算法采用混乱和扩散的组合,每个组合先替代后置换,共采用混乱和扩散的组合,每个组合先替代后置换,共16轮轮只使用了标准的算术和逻辑运算,易于实现只使用了标准的算术和逻辑运算,易于实现密钥长度:密钥长度:56位(位(密钥通常表示位
5、密钥通常表示位64位,但第位,但第8 8位、位、1616位位第第6464位都用作奇偶校验位都用作奇偶校验)产生)产生16个个48位的子密钥位的子密钥Shannonn乘积密码乘积密码 设有两个子密码系统设有两个子密码系统T1和和T2,则先以,则先以T1对明文进行加密,然对明文进行加密,然后再以后再以T2对所得结果进行加密。其中,对所得结果进行加密。其中,T1的密文空间需作为的密文空间需作为T2的的“明文明文”空间。乘积密码可表示成空间。乘积密码可表示成 T=T1T2 利用这两种方法可将简单易于实现的密码组合成复杂的更为利用这两种方法可将简单易于实现的密码组合成复杂的更为安全的密码。安全的密码。扩
6、散(扩散(diffusion)和混乱()和混乱(confusion)n扩扩散散:就是将明文的统计特性迅速散布到密文中去,实现方式是使得明文的每一位影响密文中多位的值,即密文中每一位受明文中多位影响;将密钥的每位数字尽可能扩散到更多个密文数字中去,以防止对密钥进行逐段破译。根据扩散原则,分组密码应设计成明文的每个比特与密钥的每个比特对密文的每个比特都产生影响。n混混乱乱:的目的在于使明文和密文之间的统计关系变得尽可能复杂。使用复杂的非非线线形形代代换换算法可得预期的混淆效果。Feistel网络网络 很很多多分分组组密密码码的的结结构构从从本本质质上上说说都都是是基基于于一一个个称称为为Feist
7、el网网络络的的结结构构。Feistel提提出出利利用用乘乘积积密密码码可可获获得得简简单单的的代代换换密密码码,乘乘积积密密码码指指顺顺序序地地执执行行多多个个基基本本密密码码系系统统,使使得得最最后后结结果果的的密密码码强强度度高高于于每每个个基本密码系统产生的结果。基本密码系统产生的结果。Feistel网络网络 一层结构一层结构 取取一一个个长长度度为为n的的分分组组(n为为偶偶数数),然然后后把把它它分分为为长长度度为为n/2的的两两部部分分:L和和R。定定义义一一个个迭迭代代的的分分组组密密码码算算法法,其其第第i轮轮的输出取决于前一轮的输出:的输出取决于前一轮的输出:nL(i)=R
8、(i-1)nR(i)=L(i-1)f(R(i-1),K(i)K(i)是是i轮的子密钥,轮的子密钥,f是任意轮函数。是任意轮函数。容易看出其逆为:容易看出其逆为:nR(i-1)=L(i)nL(i-1)=R(i)f(R(i-1),K(i)=R(i)f(L(i),K(i)L(i-1)R(i-1)nFeistel网络网络DES工作原理工作原理 基于基于Feistel网络网络n假假定定信信息息空空间间都都是是由由0,1组组成成的的字字符符串串,信信息息被被分分成成64比比特特的的块块,密密钥钥是是56比比特特。经经过过DES加加密密的的密密文文也是也是64比特的块。设用比特的块。设用m表示信息块,表示信
9、息块,k表示密钥,则:表示密钥,则:nm=m1m2m64 mi=0或或1 nk=k1k2k64 ki=0或或1 其其中中k8,k16,k24,k32,k40,k48,k56,k64是是奇奇偶偶校验位,真正起作用的仅为校验位,真正起作用的仅为56位。位。n加密算法:加密算法:Ek(m)=IP-1T16T15T1IP(m)其其中中IP为为初初始始置置换换,IP-1是是IP的的逆逆,Ti是是一一系系列列的的变换。变换。n解密算法:解密算法:nm=Ek-1 Ek(m)=IP-1T1T2T16IPEk(m)输入输入64比特明文数据比特明文数据初始置换初始置换IP在密钥控制下在密钥控制下16轮迭代轮迭代初
10、始逆置换初始逆置换IP-1输出输出64比特密文数据比特密文数据DES加密过程加密过程DES加密过程加密过程令令i表示迭代次数,表示迭代次数,表示逐位模表示逐位模2求和,求和,f为为加密函数加密函数DES解密过程解密过程DES算法实现过程算法实现过程 (1)初始变换初始变换IP移位操作:仅对64比特明文(8*8)进行操作n列经过偶采样和奇采样置换后再对各行进行逆序得到列经过偶采样和奇采样置换后再对各行进行逆序得到IP57 58 59 60 61 62 63 64IP57 58 59 60 61 62 63 64一轮一轮DESLi-1(32比特)比特)Ri-1(32比特)比特)Li(32比特)比特
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 加密 标准 论述 35871
限制150内