一、DSE算法背景介绍
1. DES的采用
1979年,美国银行协会批准使用
1980年,美国国家标准局(ANSI)赞同DES作为私人使用的标准,称之为DEA(ANSI X.392)
1983年,国际化标准组织ISO赞同DES作为国际标准,称之为DEA-1
该标准规定每五年审查一次,计划十年后采用新标准
最近的一次评估是在1994年1月,已决定1998年12月以后,DES将不再作为联邦加密标准。
2.DES算法特点
1) 分组加密算法:
以64位为分组。64位一组的明文从算法一端输入,64位密文从另一端输出。
2) 对称算法:
加密和解密用同一密钥。
3) 有效密钥长度为56位。
密钥通常表示为64位数,但每个第8位用作奇偶校验,可以忽略。输入的64bit秘钥只有56bit作为有效位
二、DES算法描述
1、DES算法加密流程的文字描述
DES对64位的明文分组进行操作。通过一个初始置换,将明文分组分成左半部分和右半部分,各32位长。然后进行16轮完全相同的运算,这些运算被称为函数f,在运算过程中数据与密钥结合。经过16轮后,左、右半部分合在一起,经过一个末置换(初始置换的逆置换),这样该算法就完成了。
二、DES算法加密流程的图形描述
图一
图二
三、具体参数解释
1、IP置换和IP逆置换
IP置换作用于进行16轮f函数作用之前,IP逆置换作用于16轮f函数作用之后。IP置换和IP逆置换表如下图所示:
图三
该表的含义解释:例如IP置换表中的第一行第一列的数值为58,就代表将明文的第58位替换到第一位,例如明文初始的第58位是1,第1位是0,第39位是0,根据上表替换后的64位待加密文本为:第一位是1,第58位是0。之后提到的置换表也是这个意思。
2、f函数
经过初始置换后,进行16轮完全相同的运算。这些运算被称为f,在运算过程中数据与密钥结合。f函数作用于每轮的key值和每轮的待加密文本的右半部分,即Ki,Ri
f函数作用于每轮的key值和每轮的待加密文本的右半部分,即Ki,Ri
图四
函数¦的输出经过一个异或运算,和左半部分结合,其结果成为新的右半部分,原来的右半部分成为新的左半部分。
新闻热点
疑难解答