Des

在 DES 的差分密碼分析中從其輸出中獲取 s-box 輸入

  • March 19, 2019

如果我們嘗試在 4 變體 DES 上使用差分密碼分析來獲得 K4,如果我們知道某個 S-box 的輸出,我們如何獲得它的輸入?

這似乎很難做到,因為替換操作對於 DES 是不可逆的。

在 DES 密碼分析中,這通常是通過對給定的 S-box 輸出嘗試所有 4 個可能的原像來實現的。

特別是對於 S-box $ S_i $ 一個 6 位輸入(比如 $ b_1b_2 … b_6 $ ) 產生 4 位輸出 $ a_1a_2a_3a_4 $ . 然後可以將 s-box 寫為大小為 4x16 的二維數組。輸入位 $ b_1b_6 $ 確定 s-box 表的和輸入位 $ b_2b_3b_4b_5 $ 確定列。6位輸入對應的輸出值就是cell處的值 $ S_i[b_1b_6][b_2b_3b_4b_5] $ .

因此,給定一個輸出 $ a_1a_2a_3a_4 $ 正好有 4 個可能的輸入對應於這個輸出,數組的每一行都有一個對應於 S-box $ S_i. $

如果有額外的資訊可用——例如某些邊通道攻擊中的漢明權重——這可以更有效地完成。

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