

DES加密过程共迭代16轮,每轮用一个不同的48位子密钥
子密钥由算法的56位密钥产生
DES算法的输入密钥长度是64位,但只用了其中的56位
如图3.11所示, 图中无阴影部分,也就是每行的第8位被忽略,主要用于奇偶校验,也可以是随意设置
子密钥的产生过程如图3.12所示



接下来经过16轮,产生16个子密钥
每一轮迭代中, Ci-1和Di-1循环左移1位或者2位,如图3.14所示
Ci-1和Di-1循环左移后变为Ci和Di,将Ci和Di合在一起的56位,经过置换选择2(如图3.15所示),从中挑出48位作为这一轮的子密钥
再将Ci和Di循环左移后,使用置换选择2产生下一轮的子密钥,如此继续,产生所有16个子密钥。

| 各省软考办 | ||||||||||