电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

第4章 分组密码VIP免费

第4章 分组密码_第1页
1/71
第4章 分组密码_第2页
2/71
第4章 分组密码_第3页
3/71
1/第四章分组密码2分组密码概述•分组密码具有速度快、易于标准化和便于软硬件实现等待点。通常是信息与网络安全中实现数据加密和认证的核心体制,它在计算机通信和信息系统安全领域有着最广泛的应用。•分组密码的思想:将明文消息编码表示后的数字序列划分成长为n的组,各组分别在密钥k控制下变换成等长的输出数字序列•在相同密钥下,分组密码对长为n的输入明文组所实施的变换是等同的,所以只需研究对任一组明文数字的变换规则。这种密码实质上是字长为n的数字序列的代换密码。3分组密码的设计原则针对安全性的一般设计原则–明文分组长度和密钥长度望尽可能大–扩散和混淆是由Shannon提出的设计密码系统的两个基本方法,目的是抗击敌手对密码系统的统计分析。–混乱原则(confusion):又称混淆原则,是指密钥和明文以及密文之间的依赖关系尽可能的复杂算法设计时,采用复杂的代数运算–扩散原则(diffusion):密钥或明文的每一位影响密文的许多位以便隐蔽明文的统计特性比如古典密码中的hill密码的设计思想4分组密码的常见结构•通常由一个简单的函数F迭代若干次而形成,而F都是基于代换(S盒)—置换(P盒)的网络,S盒的设计是分组密码的核心•1、Feistel结构(代换和置换)Feistel结构是典型的迭代密码.Feistel结构的解密与加密是完全一样的,除了所使用的子密钥的顺序正好相反Li-1Ri-1FKiLi=Ri-1Ri=Li-1F(Ri-1,Ki)5分组密码的常见结构•2、SPN结构S变换起到混淆的作用;P变换起到扩散的作用SPN结构也是一种特殊的迭代密码。SPN结构和Feistel结构相比,可以得到更快速的扩散,但是SPN密码的加解密通常不相似。PSSSSPSSSSSSSS……………6Feistel网络参数Feistel网络的实现与以下参数和特性有关:①分组大小分组越大则安全性越高,但加密速度就越慢。分组密码设计中最为普遍使用的分组大小是64比特。②密钥大小密钥越长则安全性越高,但加密速度就越慢。现在通常使用128比特的密钥长度。③轮数单轮结构远不足以保证安全性,但多轮结构可提供足够的安全性。典型地,轮数取为16。④子密钥产生算法该算法的复杂性越大,则密码分析的困难性就越大。⑤轮函数轮函数的复杂性越大,密码分析的困难性也越大。7Feistel单轮的加解密Li-1Ri-1LiRiF+Ki加密Li-1Ri-1LiRiF+Ki解密Feistel结构中间的轮运算和最后一轮的有区别,最后一轮运算不需要置换。目的使得加密和解密的编程完全一致。8数据加密标准-DES•DES的历史1971年,IBM,由HorstFeistel领导的密码研究项目组研究出LUCIFER算法。并应用于商业领域。1973年,美国标准局征求标准,IBM提交结果1977年,被选为数据加密标准。1994年,美国决定98年12月以后不再使用DES算法•DES是一种明文分组为64比特,有效密钥56比特,输出密文64比特的,具有16轮迭代的分组对称密码算法,DES由初始置换,16轮迭代,初始逆置换组成。•DES的解密算法与加密算法相同,只是解密子密钥与加密子密钥的使用顺序刚好相反。9DES的加密算法10初始置换IP和逆置换IP-15850423426181026052443628201246254463830221466456484032241685749413325179159514335271911361534537292113563554739312315740848165624643239747155523633138646145422623037545135321612936444125220602835343115119592734242105018582633141949175725初始置换IP初始逆置换IP-1初始明文按照IP重排;16轮后的密文按照IP-1重排即为最后密文11DES轮结构12101010101010101010101010101010101010101010101010Ri的32bit→48bit两边的是重复选中的32123454567898910111213121314151617161718192021202122232425242526272829282930313218×601010101,01010101,01010101,0101010110101010,10101010,10101010,10101010,10101010,10101010E-扩展运算13E盒的作用•E盒的作用就是最终的密文与所有的明文相关(扩散)14f(R,k)•1S-盒运算由8个S-盒函数构成,其中,每一个S-盒函数都是6比特的输入,4比特的输出。si(h1h2h3h4h5h6)的值就是对应表si中(h1h6)2行和(h2h3h4h5)2列上的值。15S盒例:如果S1的输入为(011001)2,则首末位为0、1,即行为(01)2=1,中间四位为(1100)2=12,则输出为9=(1001)216置换P•P-...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

第4章 分组密码

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部