0%

DES加密算法

DES算法加密工作流程

DES算法是对称加密的一种,

输入:64位明文数据,64位密钥

加密工作流程如下:

1、输入64位明文数据,并进行初始置换IP;
2、在初始置换IP后,明文数据再被分为左右两部分,每部分32位,以L0,R0表示;
3、在秘钥的控制下,经过16轮运算;
4、16轮后,左、右两部分交换,并连接再一起,再进行逆置换;
5、输出64位密文

DES加密详细过程

1、在64位密钥的控制下,将64位明文初始置换(打乱位置)

2、令初始置换之后的明文,前32位为L0,后32位为R0。

3、在秘钥的控制下,经过16轮运算。这一步,非常关键,步骤很繁琐。

​ Ln = R(n - 1);

​ Rn = L(n - 1)⊕f(Rn-1,kn-1)

​ ⊕:异或运算

​ Kn是向第n层输入的48位的秘钥,将Rn-1和Kn输入f,然后f输出32位数据

​ 3.1函数f

​ 函数f由四步运算构成:秘钥置换(Kn的生成,n=0~16);扩展置换;S-盒代替;P-盒置换。

​ 通过秘钥置换生成子密钥

摸鱼12

参考资料:

DES算法完整版