Des
一種使用比窮舉搜尋更少的操作來破解 2DES 的算法
來自密碼學和工程的練習 3.6考慮一個新的分組密碼 DES2,它僅包含兩輪 DES 分組密碼。DES2 具有與 DES 相同的塊和密鑰大小。對於這個問題,您應該將 DES F 函式視為一個黑盒,它接受兩個輸入,一個 32 位數據段和一個 48 位輪密鑰,並產生一個 32 位輸出。假設您在單個未知密鑰下有大量用於 DES2 的明文-密文對。給出一個算法,用於恢復第 1 輪的 48 位輪密鑰和第 2 輪的 48 位輪密鑰。與窮舉搜尋整個 56 位 DES 密鑰相比,您的算法需要更少的操作。你的算法可以轉化為針對 DES2 的區別性攻擊嗎?
我的想法是,如果我們有明文-密文對,我們將執行以下操作。我們將密文 C 分成兩個 32 位。我們必須用 2^48 次操作猜測 K2,然後用 F(K2,C) 的輸出 XOR L 並與明文的 R 進行比較。如果它相等,我們知道 K2 是正確的。為了確保 K2 真的正確,我們可以使用其他對來確認它。現在我們必須再次使用 2^48 次操作找到 K1。我們總共需要 2*2^48 次操作,而不是 2^48 * 2^48 或更好的 2^56 次操作。我們可以通過使用 DES 的弱密鑰輕鬆地使用區分攻擊嗎?並試圖僅通過 2^48 次操作找到此 L 和 R 相等性。我可能完全錯了。我是否正確繪製了“2DES”密碼?
你的問題在這裡得到了很大的回答
既然您不知道密鑰,您將如何進行區分攻擊?考慮一下。