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
参考资料: