1 / 12
文档名称:

DES加密算法原理.ppt

格式:ppt   页数:12页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

DES加密算法原理.ppt

上传人:yixingmaob 2016/6/30 文件大小:0 KB

下载得到文件列表

DES加密算法原理.ppt

文档介绍

文档介绍:LOGO DES 加密算法原理 DES 是在 1970 年代中期由美国 IBM 公司发展出来的,且被美国国家标准局( NBS )公布为数据加密标准的一种分组加密法。 1972 年, NBS 制定了一个保护计算机和通信开发计划,准备开发一个标准的密码算法,来规范密码技术应用的混乱局面。 1973 年5月 15 日, NBS 公开征集保密传输系统中计算机数据密码算法,由于此前公众对密码知识的缺乏,提交的方案均不理想。 1974 年8月 27 日, NBS 再次发表征集公告, IBM 公司提交了个良好的候选算法。该算法是 LUCIFFER 密码算法的改进,是由 Host Feistel 1971 年设计的。 1975 年3月 17 日, NBS 在《联邦记事》上公布了这一算法的细节。 1981 年,美国国家标准研究所批准 DES 作为私营部门的数据加密标准。简介论文的结构和主要内容? DES 算法的总结构? DES 算法的基本运算? DES 子秘钥生成器 DES 算法的总结构 DES 是一个分组加密算法,它以 64位为分组对数据加密,所用的加解密密钥也是 64位大小,其中 8个位用来做奇偶校验,所以实际用来加解密的密钥为 56位。 DES 算法加密与解密所用的算法除了子密钥的顺序不同之外,其他的部分则是完全相同的。其加密/解密结构如图 所示。在结构图最上方的 64位输入可以是明文也可以是密文,视加密或解密而定,加密与解密的不同之处在于最右面密钥的顺序不同,加密的子密钥顺序为 K1, K2,……,K16 ,而解密的子密钥顺序为 K16 ,K15 ,……,K1。在进行加密或解密时,首先对输入的内容进行初始置换,然后分为 L0和R0两部分, R0和子密钥 K1进行 f函数运算与 L0异或后作为下一轮的 R1,而 R0作为下一轮的 L1,如此运作 16轮,再进行初始置换的逆置换,得到 64位输出。 DES 算法的总结构 DES 算法的基本运算(1)初始置换 IP和初始逆置换 IP -1 初始置换和初始逆置换为互逆运算,初始置换发生在加/解密运算前,初始逆置换发生在加/解密运算后。初始置换和初始逆置换的变换分别如表 和表 所示。这里表格的数字是指数据所在的位置。(1)初始置换 IP和初始逆置换 IP-1 初始置换和初始逆置换为互逆运算,初始置换发生在加/解密运算前,初始逆置换发生在加/解密运算后。初始置换和初始逆置换的变换分别如表 和表 所示。这里表格的数字是指数据所在的位置。数字是指数据所在的位置。 DES 算法的基本运算(2) E- 扩展运算经过初始置换后, L0 和 R0 分别为 32 位,而子密钥为 48 位,因此右部分输入数据要经过扩展运算后才能和子密钥进行异或操作。扩展运算首先将 32 位数据分成 8块,每块 4位,然后将每个 4 位块扩展为 6位块。扩展时,重复 4位块的第一位和第四位,操作是块间交叉进行的,第一位和最后一位循环交叉,第二位和第三位原样定出。表 给出了扩展后输出位对应的输入位。 DES 算法的基本运算(3) S 盒运算 S盒运算有 8个S盒构成,每个 S盒有 6位输入, 4位输出。每个 S盒输入的第一位和最后一位组成一个2位的二进数用来选择 S盒的行,剩下的中间四位用来选择 S盒的列,选择的行和列的交叉位置对应的数即为输出的十进制,转换后为 4位二进制输出。 DES 算法的基本运算(4) P- 置换所有 S盒的输出组成 32 位数据, P- 置换是对这 32 位数进行变换, P- 置换只进行简单置换不进行扩展和压缩。在 DES 算法基本运算中,其中 E扩展运算、 S 盒和 P置换又叫 f函数, f函数是 DES 算法最重要的部分,数据加/解密基本上都属于 f函数。 DES 子秘钥生成器在整个 DES 算法中,输入的密钥为 64 位,而实际每一轮加/解密中所用到的密钥为 48 位子密钥,因此,在 DES 算法中,除了基本运算外还要有子密钥生成器,对密钥进行运算得到所用的子密钥。子密钥的生成过程如下: 首先通过密钥置换表 PC-1 对 64 位密钥进行置换,去掉 8位校验位留下真正需要的 56 位初始密钥。然后将初始密钥分为两个 28 位分组 C0 和 D0 ,每个分组根据循环移位表循环 1位或 2位, 得到 C1 和 D1 , C1 和 D1 作为下一轮输入循环, 同时 C1 和 D1 组成 56 位数据作为置换 PC-2 的输入,产生 48 位密钥 K1 , K2 到 K16 采用相同的方法产生