Terminology

擴散矩陣的定義

  • September 17, 2019

我一直在研究這篇文章,因為我不是用英語學習密碼學,而且它不是我的母語,所以我不懂一些術語。更準確地說:第 2 章開頭第 3 頁提到的擴散矩陣是什麼?它們與香農理論中定義的擴散有關嗎?

是的,它是相關的。Claude Shannon 在他的著名文章A Mathematical Theory of Cryptography 中定義了混淆和擴散。維基百科的混淆和擴散頁面 將擴散定義為;

擴散意味著如果我們改變明文的一個比特,那麼(統計上)密文中一半的比特應該改變,同樣,如果我們改變密文的一個比特,那麼大約一半的明文比特應該改變。由於一個位只能有兩種狀態,當它們都被重新評估並從一個看似隨機的位置改變到另一個時,一半的位將改變狀態。

擴散矩陣變換列,它類似於MixColumns AES 的操作。可選地後跟一個ShiftRows(如在 AES 中)以提供進一步的混合,其中ShiftRows置換行*。

如果沒有將擴散矩陣應用於 AES(或類似的基於 SPN 的分組密碼,也沒有 ShiftRows),那麼輸入中只有一個位的變化只會影響相應的字節。因此,擴散是必要的,但還不夠。

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