Des

三重 DES 蠻力

  • February 6, 2021

香農的論文指出:

如果所有鍵的可能性相等並且對於任何三個轉換,則係統是純係統, $ T_i $ , $ T_j $ , $ T_k $ 在集合中,產品 $ T_iT_j^{-1}T_k $ 也是集合中的變換。

但這正是 Triple-DES 的構造!因此,使用這個術語,它不是一個純粹的系統,因為這意味著可以成功地針對 168 位 Triple-DES 密鑰安裝 56 位 DES 暴力攻擊。是對的嗎?

是的。

對於 DES,它看起來像組合 $ T_i\circ T_j^{-1}\circ T_k $ 通常不是 $ T_l $ 用另一把鑰匙 $ l $ .

我沒有這個事實的證據。

所以 DES 不是一個純係統,否則三重 DES 不會比 DES 本身更安全。

在評論中,fgrieu 連結了一個較弱事實的證明,即DES 不是一個群(由 Campbell 和 Wiener 撰寫)。

他們實際上做了一些實驗來搜尋密鑰 $ i, j, k, l $ 以便 $ (T_l \circ T_k \circ T_j \circ T_i)(\mathtt 0) = c $ , 有 50 個不同的隨機值 $ c $ 從完整的消息中隨機選擇 $ 2^{64} $ 塊集。他們為所有 50 個值找到了這樣一組鍵 $ c $ .

自從集 $ K $ DES 密鑰只有大小 $ 2^{56} $ , 也是集合 $ T_(\mathtt 0) = {T_m(\mathtt 0) \mid m\in K} $ 最多有大小 $ 2^{56} $ . 所有 50 條消息都在這個集合中的機率 $ T_(\mathtt 0) $ 估計為 $ \leq (2^{-7})^{50} = 2^{-350} $ . 所以很可能 $ (T_l \circ T_k \circ T_j \circ T_i) $ 通常不是一個 $ T_m $ ,即 DES 加密的集合在合成下不是封閉的。

該論文還通過計算 $ T_{\mathtt{1…1}} \circ T_{\mathtt{0…0}} $ 應用於各種消息,這些消息都必須是由 $ T_{\mathtt{1…1}} \circ T_{\mathtt{0…0}} $ ,它本身是由所有 DES 加密(和解密)跨越的組的子組。他們得到的最小公倍數超過 $ 10^{2499} $ ,遠大於所有 DES 密鑰(甚至所有三重 DES 密鑰)的數量。

這對我們的問題意味著什麼?

DES(或任何一組排列 $ {T_i \mid i \in K} $ ) 作為一個組(排列集的子組)將包括每個鍵的組 $ i $ 和 $ j $ 組成 $ T_i \circ T_j $ 是DES加密 $ T_l $ ,以及每次解密 $ T_j^{-1} $ 是一種加密 $ T_m $ . 由此我們可以得出結論 $ T_i \circ T_j^{-1} \circ T_k $ 也是該組的成員,即該集合將是一個純集合。

反過來並不容易,證明也不能直接適用於我們的情況(兩者都從 group 屬性中查看不同的推論)。

我想人們可以像他們一樣做類似的實驗,搜尋鍵 $ i,j,k $ 以便 $ (T_i \circ T_j^{-1} \circ T_k)(\mathtt 0) = c $ 對於隨機消息 $ c $ 和類似的論點,這應該不會像在 $ T_m $ .

另一種觀點是實際的觀點:如果 DES 是純的,那麼三重 DES 將與 DES 基本相同,並且已經通過對三重 DES 加密消息應用 DES 暴力破解器來破解。我不敢相信還沒有人嘗試過。

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