欢迎来到天天文库
浏览记录
ID:44958965
大小:1.16 MB
页数:68页
时间:2019-11-06
《第5章 对称密钥密码体制》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第5章对称密钥密码体制—分组密码1分组密码的原理密文中的每位数字不仅仅与某时刻输入的明文数字有关,而是与该明文中一定组长的明文数字有关。分组密码的基本模型密钥K密钥K加密解密明文x密文y明文x2分组密码的长度明文为分组长度为m的序列,密文为分组长度为n的序列:n>m,称其为有数据扩展的分组密码;n2、。4算法的安全性要求分组长度足够大密钥量足够大密码变换足够复杂解决方法:合并分组采用乘法密码5分组密码的数学表示记明文空间和密文空间为(明文与密文分组的长度均为m),密钥空间为(是的子集,r为密钥长度):密钥k下的加密函数为,m表示待加密的信息,k为密钥,则可将该映射记为,这个映射应满足:,是的一个置换;密钥k下的解密函数记为,它是的逆。6分组密码的设计原则安全性角度:“混乱原则”:为了避免密码分析者利用明文与密文之间的依赖关系进行破译,密码的设计应该保证这种依赖关系足够复杂。“扩散原则”:为避免密码分析者对密钥逐段破译,密码的设计应该保证密钥的每位数字3、能够影响密文中的多位数字;同时,为了避免避免密码分析者利用明文的统计特性,密码的设计应该保证明文的每位数字能够影响密文中的多位数字,从而隐藏明文的统计特性。7分组密码的设计原则可实现性角度:应该具有标准的组件结构(子模块),以适应超大规模集成电路的实现。分组密码的运算能在子模块上通过简单的运算进行。81.SP网络92.雪崩效应输入即使只有很小的变化,也会导致输出发生巨大的变化现象103.Lucifer算法用S盒和P盒交替在密钥控制下组成复杂的,分组足够大的密码设计方法。11Feistel密码结构记f为任意轮函数,为第i轮使用的子密钥,第i轮的输出取决于第4、i-1轮的输出,即和满足12Feistel密码结构的实现依赖于分组长度(64或128位)密钥长度(128位)迭代轮数(16轮)子密钥生成算法轮函数13Feistel密码结构14分组密码设计准则S盒的设计准则主要起混乱作用,设计不宜过大,一般8*8的结构。P盒的设计准则主要起扩散作用,实现雪崩效应轮函数的设计准则依赖于S盒,是实现非线性的轮函数和轮数决定加密,解密的速度15数据加密标准DES(DataEncryptionStandard)明文和密文的长度均为64位,密钥长度为56位。16DES的产生背景美国国家标准局(NBS)1973年公开征求计算机加密算5、法标准,要求如下:该算法必须提供较高的安全性;该算法必须完全确定并且易于理解;该算法的安全性不应依赖于算法本身,而是应该依赖于密钥;该算法必须对所有的用户有效;该算法必须适用于各种应用;该算法必须能够通过价格合理的电子器件得以实现;该算法必须能够有效使用;该算法必须能够得以验证;该算法必须能够得以出口。17DES的生命期NBS最终采纳了IBM的LUCIFER方案,于1975年公开发表。1977年正式颁布为数据加密标准(DES-DataEncryptionStandard)。1979年,美国银行协会批准使用DES。1980年,DES成为美国标准化协会(AN6、SI)标准。1984年,ISO开始在DES基础上制定数据加密的国际标准。美国国家安全局NSA每隔年对该算法进行评估,1994年,决定1998年12月之后不再使用DES。现已经确定了选用Rijndael算法作为高级加密算法AES。18DES算法描述算法设计中采用的基本变换和操作:置换(P)重新排列输入的比特位置。交换(SW)将输入的左右两部分的比特进行互换。循环移位将输入中的比特进行循环移位,作为输出。一个复杂变换(fK)通常是一个多阶段的乘积变换;与密钥Key相关;必须是非线性变换;实现对密码分析的扰乱;是密码设计安全性的关键。19DES的加密原理20D7、ES的加密过程第一步:初始置换IP。对于给定的明文m,通过初始置换IP获得,并将分为两部分,前面32位记为,后面32位记为,即。2122DES的加密过程第二步:乘积变换(16轮)。在每一轮中依据下列方法计算()(16轮中的计算方法相同):,其中,为第i轮使用的子密钥,各均为的一个置换选择,所有构成密钥方案。函数中的变量为32位字符串,为48位字符串,函数输出的结果为32位字符串。23DES的加密过程第二步各轮中的加密过程2425在每一轮中使用的密钥Ki的长度是48位,输入的Ri-1是32位,先被扩展到48位。扩展后所得到的结果再与Ki进行异或,这样得到的8、48位结果再经过一个代替函数S(S变换)产生的32位的输出,最后进行置换(P变换
2、。4算法的安全性要求分组长度足够大密钥量足够大密码变换足够复杂解决方法:合并分组采用乘法密码5分组密码的数学表示记明文空间和密文空间为(明文与密文分组的长度均为m),密钥空间为(是的子集,r为密钥长度):密钥k下的加密函数为,m表示待加密的信息,k为密钥,则可将该映射记为,这个映射应满足:,是的一个置换;密钥k下的解密函数记为,它是的逆。6分组密码的设计原则安全性角度:“混乱原则”:为了避免密码分析者利用明文与密文之间的依赖关系进行破译,密码的设计应该保证这种依赖关系足够复杂。“扩散原则”:为避免密码分析者对密钥逐段破译,密码的设计应该保证密钥的每位数字
3、能够影响密文中的多位数字;同时,为了避免避免密码分析者利用明文的统计特性,密码的设计应该保证明文的每位数字能够影响密文中的多位数字,从而隐藏明文的统计特性。7分组密码的设计原则可实现性角度:应该具有标准的组件结构(子模块),以适应超大规模集成电路的实现。分组密码的运算能在子模块上通过简单的运算进行。81.SP网络92.雪崩效应输入即使只有很小的变化,也会导致输出发生巨大的变化现象103.Lucifer算法用S盒和P盒交替在密钥控制下组成复杂的,分组足够大的密码设计方法。11Feistel密码结构记f为任意轮函数,为第i轮使用的子密钥,第i轮的输出取决于第
4、i-1轮的输出,即和满足12Feistel密码结构的实现依赖于分组长度(64或128位)密钥长度(128位)迭代轮数(16轮)子密钥生成算法轮函数13Feistel密码结构14分组密码设计准则S盒的设计准则主要起混乱作用,设计不宜过大,一般8*8的结构。P盒的设计准则主要起扩散作用,实现雪崩效应轮函数的设计准则依赖于S盒,是实现非线性的轮函数和轮数决定加密,解密的速度15数据加密标准DES(DataEncryptionStandard)明文和密文的长度均为64位,密钥长度为56位。16DES的产生背景美国国家标准局(NBS)1973年公开征求计算机加密算
5、法标准,要求如下:该算法必须提供较高的安全性;该算法必须完全确定并且易于理解;该算法的安全性不应依赖于算法本身,而是应该依赖于密钥;该算法必须对所有的用户有效;该算法必须适用于各种应用;该算法必须能够通过价格合理的电子器件得以实现;该算法必须能够有效使用;该算法必须能够得以验证;该算法必须能够得以出口。17DES的生命期NBS最终采纳了IBM的LUCIFER方案,于1975年公开发表。1977年正式颁布为数据加密标准(DES-DataEncryptionStandard)。1979年,美国银行协会批准使用DES。1980年,DES成为美国标准化协会(AN
6、SI)标准。1984年,ISO开始在DES基础上制定数据加密的国际标准。美国国家安全局NSA每隔年对该算法进行评估,1994年,决定1998年12月之后不再使用DES。现已经确定了选用Rijndael算法作为高级加密算法AES。18DES算法描述算法设计中采用的基本变换和操作:置换(P)重新排列输入的比特位置。交换(SW)将输入的左右两部分的比特进行互换。循环移位将输入中的比特进行循环移位,作为输出。一个复杂变换(fK)通常是一个多阶段的乘积变换;与密钥Key相关;必须是非线性变换;实现对密码分析的扰乱;是密码设计安全性的关键。19DES的加密原理20D
7、ES的加密过程第一步:初始置换IP。对于给定的明文m,通过初始置换IP获得,并将分为两部分,前面32位记为,后面32位记为,即。2122DES的加密过程第二步:乘积变换(16轮)。在每一轮中依据下列方法计算()(16轮中的计算方法相同):,其中,为第i轮使用的子密钥,各均为的一个置换选择,所有构成密钥方案。函数中的变量为32位字符串,为48位字符串,函数输出的结果为32位字符串。23DES的加密过程第二步各轮中的加密过程2425在每一轮中使用的密钥Ki的长度是48位,输入的Ri-1是32位,先被扩展到48位。扩展后所得到的结果再与Ki进行异或,这样得到的
8、48位结果再经过一个代替函数S(S变换)产生的32位的输出,最后进行置换(P变换
此文档下载收益归作者所有