DES算法详细介绍

上传人:大米 文档编号:560148974 上传时间:2022-12-05 格式:DOCX 页数:11 大小:299.83KB
返回 下载 相关 举报
DES算法详细介绍_第1页
第1页 / 共11页
DES算法详细介绍_第2页
第2页 / 共11页
DES算法详细介绍_第3页
第3页 / 共11页
DES算法详细介绍_第4页
第4页 / 共11页
DES算法详细介绍_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《DES算法详细介绍》由会员分享,可在线阅读,更多相关《DES算法详细介绍(11页珍藏版)》请在金锄头文库上搜索。

1、WORD格式1973 年 5 月 15 日,美国国家标准局现在美国国家标准技术研究所 NIST 在联邦注册报上发表一那么启事, 公开征集用来保护传输和静止存储中的计算机数专业资料整理WORD格式据的密码算法,这一举措最终导致了数据加密标准DES 的出现。DES 采用分组专业资料整理WORD格式乘积密码体制,它是由IBM开发,是对早期被称为Lucifer密码体制的改进。专业资料整理WORD格式DES 在 1975 年 3 月 17 日首次在联邦记录中公布,而且声明比照算法征求意见。到 1977 年 2 月 15 日拟议中的 DES 被采纳为“非密级应用的一个联邦标准。最初预期 DES 作为一个标

2、准只能使用 1015 年,然而,出于种种原因,可能是 DES 还没有受到严重的威胁, 事实证明了 DES 要长寿得多。在其被采用后,大约每隔 5 年被评审一次。 DES 的最后一次评审是在 1999 年 1 月。但是,随着计算机计算能力的提高,由于 DES 的密钥过短,仅有 56 位,对 DES 的成功攻击也屡见报端。例如: 1999 年 1 月, RSA 数据平安公司宣布:该公司所发起的对 56 位 DES 的攻击已经由一个称为电子边境基金 EFF的组织,通过互联网上的 100000 台计算机合作在 22 小时 15 分钟内完成。在这种情况下,对于替代DES 的要求日益增多。最终,NIST

3、于 1997 年发布公告,征集新的数据加密标准作为联邦信息处理标准以代替DES。新的数据加密标准称为 AES,关于 AES 的讨论将放在后面的4.5 节。尽管如此, DES 的出现是现代密码学历史上非常重要的事件。它对于我们分析掌握分组密码的根本理论与设计原理仍然具有重要的意义。4.1.1 DES 算法描述DES 是一个 16 轮的 Feistel 型构造密码,它的分组长度为 64 比特,用一个 56 比特的密钥来加密一个 64 比特的明文串,输出一个 64 比特的密文串。其中,使用密钥为 64 比特,实用 56 比特,另 8 位用作奇偶校验。加密的过程是先对64 位明文分组进展初始置换,然后

4、分左、右两局局部别经过16 轮迭代,然后再进展循环移位与变换,最后进展逆变换得出密文。加密与解密使用一样的密钥,因而它属于对称密码体制。专业资料整理WORD格式图 4-3 给出了 DES 过程框图。假设输入的明文数据是 64 比特。首先经过初始置换 IP 后把其左半局部 32 比特记为 L 0,右半局部 32 比特记为 R0,即成了置专业资料整理WORD格式换后的输入;然后把R0与密钥产生器产生的子密钥k1进展运算,其结果计为f专业资料整理WORD格式(R0,k1);再与L0进展摸2加得到L0+ f (R0 , k1),把 R0记为 L1放在左边,而把 L0+专业资料整理WORD格式f (R0

5、 , k1)记为 R1放在右边,从而完成了第一轮迭代运算。在此根底上,重复上述的迭代过程,一直迭代至第 16 轮。所得的第 16 轮迭代结果左右不交换,即L15+ f (R 15 , k16)记为 R16,放在左边,而 R15记为 L 16放在右边,成为预输出,最后经过初始置换的逆置换 IP-1运算后得到密文。下面详细介绍 DES 加密过程中的根本运算:( 1 DES 中的初始置换 IP 与初始逆置换 IP-1表 4-1 给出了初始置换 IP 与初始逆置换 IP-1。对于要加密的明文串 64 比特,初始置换 IP 把原来输入的第 58 位置换为第 1 位,原输入的第 50 位置换为第 2位,

6、,把原输入的第 7 位置换为第 64 位,即最后一位。同样的初始置换是以预输出作为它的输入,该置换的输出以预输出块的第 40 位作为它的第 1 位, , 而以 25 位作为它的最后一位。专业资料整理WORD格式图 4-3 DES 框图专业资料整理WORD格式表 4-1 初始置换IP与初始逆置换专业资料整理WORD格式 2密码函数函数f专业资料整理WORD格式f:0 , 1 320,1480,132专业资料整理WORD格式的输入是一个32 比特串(当前状态的右半部 )和子密钥。密钥编排方案( k1, k2 ,., k32 ) 由16个48比特的子密钥组成, 这些子密钥由56比特的种子密钥k导出。

7、每个 ki都是由 k 置换选择而来子密钥的产生过程将在后面详细说明。图 4-4 给出了函数 f 的示意图。它主要包含一个应用S盒的替代以及其后跟随的一个固定置换 P。密码函数 f 是整个加密的关键局部,它包含了如下四种功能:i) 扩展函数 E扩展函数 E 的功能就是将一个 32 位的输入块扩展为 48 位的输出块,而这 48 位的输出块再分成 8 个 6 位的块。它是按照表 4-2 依次选择它所输入中的位而取得的。从表 4-2 可知, E(R)的前面 3 位是 R 的 32,1,2 位置上的值,而 E(R)的最后 2 位是 R 的 32,1 位的值。专业资料整理WORD格式RkEE(R )+B

8、1B2B3B4B5B6B7B8S1S2S3S4S5S6S7S8C1C2C3C4C5C6C7C8Pf (R , k)图 4-4 DES 的 f 函数ii) 模2加法模 2 加功能就是将 E(R) 的各个位与密钥 k 的各位逐位作模 2 加,以得到输出 bi , 具体运算如下:E( R)E (a1 , a2 ,.,a32 )a32 , a1 a2 a3 ,., a31a1a1 a2 a3 ,., a48专业资料整理WORD格式biaiki , i1,2,.48表4-2E比特选择表321234545678989101112131213141516171617181920212021222324252

9、4252627282928293031321iii) S 盒运算在密码函数f (R , k)中有 8 个S盒,称为8 个不同的选择函数,分别用( S1 , S2 ,., S8 ) 表示,参见表4-3。每个S盒都是将 6 位作为输入,得到一个4 位块作为输出。以 S1为例,假设 B 是 6 位的一个块,那么 S1(B)计算如下: B 的第一和最后一位表示从 0 到 3 之间的二进制数,令该数为 i ;而 B 的中间 4 位表示从 0 到 15 之间的二进制数,令该数为 j;在该表 S1中查第 i 行 j 列的数,它是从 0 到 15 之间的一个数,且唯一地由 4 位块代表,那么该块就是输入 B

10、的 S1的输出 S1(B)例如对于输入为 101000 而言,行是 10,即第 2 行。而列是由 0100 确定,即第 5 列,S1盒的第 2 行与第 5 列的穿插处即为B,因而输出为 1101,因此 1101 就是S盒S1在输入为 101000 时的输出。在 f ( R , k )的计算中,它将由模2 加运算得到的b1, b2,., b48按每 6 个一组共分为8 组,顺序记为B, B ,., B8 它们分别经过8 个选择函数i 运算变成12SC1 ,C2 ,.,C32即S1(B1)S2(B2)S8(B8) = C1,C2,., C32专业资料整理WORD格式iv) 置换函数 P专业资料整理

11、WORD格式置换函数 P 是通过输入块的位,从 32 位输入中得到 32 位的输出。置换函数 P 由表 4-4 给出。由该表确定的函数 P 的输出 P(C),是通过 C 的第 16 位为 P(C) 的第 1 位,取第 7 位为 P(C)的第 2 位, ,取第 25 为 P(C)的第 32 位。表 4-3 S-盒专业资料整理WORD格式表 4-4 置换函数 P现在我们就令 S1, S2 ,., S8为8个不同的选择函数,P为置换函数,E为扩展函数。为了计算f ( R , k ),先规定B1, B2,., B8每个为 6 位块,且B1 , B2 ,., B8= k+ E (R),于是有f ( R , k ) = P S1(B1)S2(B2),., S8( B8)因此,在 f ( R , k )的计算中将 k+ E(R)分成 8 个块,即每块 6 位即 Bi,然后每个 Bi取作 Si的一个输入就得到每个都为 4 位的 8 个块 Si(Bi) ( i = 1 , 2 , , 8)的输出,再将此 8 块连接成 32 位的整块。这个整块就构成了 P 的输出,经 P 置换,即为 f ( R , k )的输出。( 3子轮密钥的生成过程在 DES 中,每一轮迭代都使用了一个轮密钥。轮密钥是从用户输入的密钥

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号