- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
密码技术础
1、分组加密 分组密码将定长的明文块转换成等长的密文,这一过程是在密钥的控制之下。使用逆向变换和同一个密钥来实现解密。 对于当前的许多分组密码,分组大小是 64 位,但这种长度可能会增加。 分组密码包括 DES、IDEA、SAFER、Blowfish 和 Skipjack 最后一个是“美国国家安全局(NSA, US National Security Agency)”限制器芯片中使用的算法。 下面介绍具体的分组密码的实现。 (5)DES 加解密算法:举例 有明文M(64位) = 0123456789ABCDEF,即M(64位) = 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 L(32位) = 0000 0001 0010 0011 0100 0101 0110 0111R(32位) = 1000 1001 1010 1011 1100 1101 1110 1111 有初始密钥K(64位) = 133457799BBCDFF1,即K(64位) =00110100011110011011110011110001 其中红色标注为奇偶校验位,即实际密钥为56位。 第一步:生成16个子钥(48位) 对K使用PC-1(8×7)57 49 41 33 25 17 9 1 58 50 42 34 26 1810 2 59 51 43 35 2719 11 3 60 52 44 3663 55 47 39 31 23 15 7 62 54 46 38 30 2214 6 61 53 45 37 2921 13 5 28 20 12 4 第一步:生成16个子钥(48位) 从而,由K(64位) =00110100011110011011110011110001 得到K+(56位) = 1111000 0110011 0010101 0101111 0101010 1011001 1001111 0001111 进而,C0(28位) = 1111000 0110011 0010101 0101111 D0(28位) = 0101010 1011001 1001111 0001111 第一步:生成16个子钥(48位) 第一步:生成16个子钥(48位) 从而得到C1D1 ~ C16D16: C1 = 1110000110011001010101011111D1 = 1010101011001100111100011110 C2 = 1100001100110010101010111111D2 = 0101010110011001111000111101 C3 = 0000110011001010101011111111D3 = 0101011001100111100011110101 C4 = 0011001100101010101111111100D4 = 0101100110011110001111010101 …… C15 = 1111100001100110010101010111D15 = 1010101010110011001111000111 C16 = 1111000011001100101010101111D16 = 0101010101100110011110001111 第一步:生成16个子钥(48位) Kn(48位) = PC-2( Cn Dn(56位) ) PC-2(8×6) 14 17 11 24 1 5 3 28 15 6 21 10 23 19 12 4 26 8 16 7 27 20 13 2 41 52 31 37 47 55 30 40 51 45 33 48 44 49 39 56 34 53 46 42 50 36 29 32 第一步:生成16个子钥(48位) 最终得到所有16个子钥,每个48位:K1 = 000110 110000 001011 101111 111111 000111 000001 110010 K2 = 011110 011010 111011 011001 110110 111100 100111 100101K3 = 010101 011111 110010 001
原创力文档


文档评论(0)