Des

DES 密鑰擴展:為什麼這兩種描述不同?

  • January 2, 2013

我希望有人向我解釋如何生成 DES 子密鑰,因為在我看到的文件中,有時他們會說:

“我們根據這個序列給出的迭代次數旋轉初始密鑰:1、2、4、6、8、10、12、14、15、17、19、21、23、25、27、28。

有時他們說:

“根據迭代階段,兩半分別向左旋轉一定量,按以下順序:1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2、2、1。”

你知道為什麼這些描述不同嗎?

我不打算查找DES 密鑰時間表,而是查找您的兩個序列之間的連接

$$ ( a_i ) = ( 1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28 ) $$ 和

$$ ( b_i ) = ( 1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1 ) $$ 很明顯: $ b_i = a_i - a_{i - 1} $ (和 $ a_0 $ 取為 0)。

也就是說,第二個序列給出了第一個序列的連續元素之間的差異。


**編輯:**好的,我確實查過了,見上面的連結。基本上,第一個序列給出了原始密鑰的一半需要旋轉的位數以獲得 $ i $ -th 子密鑰,而第二個序列給出了前一個子密鑰的一半需要旋轉以獲得下一個子密鑰的位數。這裡的所有都是它的。

引用自:https://crypto.stackexchange.com/questions/5881