Encryption

暴力破解下DES中的加密和解密等價

  • August 17, 2022

我正在研究 DES 算法的漏洞。

假設有一個 DES 系統,有 5 個密鑰,每個 56 位。加密工作如下:(故意按此順序)

$ C=DEC_{k1}(ENC_{k2}(ENC_{k3}(DEC_{k4}(DEC_{k5}(M))))) $

With k2=k3 and k4=k5

Where C = Cipher,
M = plain text
DEC = Decryption
ENC = Encryption
-kn = Is the number of key used, we have 5 keys so k1-k5.

所以我的問題是,據我了解,DES加密解密之間的區別僅在於使用的密鑰(或者更像是使用密鑰的順序),因此如果兩個後續 enc 中的密鑰相互抵消/dec 操作是否相等?

那麼,在應用蠻力的情況下,C(結果)可以計算為 2^(1x56) 時間複雜度漏洞還是 2^(3x56) 漏洞?這對我來說不清楚,因為如果 DEC 和 ENC 是等價的,那麼 $ DEC_{k4}(Dec_{k5}(M)) $ 實際上會相互抵消。相同的 $ ENC_{k2}(ENC_{k3}(M)) $ . 離開我們 $ DEC_{k1}(M) $ 據我了解,這是對 M 的單一 DES 加密。(等於 $ ENC_{k1} $ )。

因為如果 DEC 和 ENC 是等價的,那麼 $ DEC_{k4}(DEC_{k5}(M)) $ 實際上會相互抵消。

實際上,僅僅因為 DEC 和 ENC 相似(除了子密鑰生成之外相同)並不能使它們“等效”。 $ DEC_{k4}(DEC_{k4}(M)) $ 事實上,不會相互抵消(除非 $ k4 $ 恰好是一個“弱鍵”,即四個特定值之一)。

另一方面,要回答您正在思考的更大問題,您正在考慮的密碼本質上是 $ F_{k1}(G_{k2}(H_{k4}(M))) $ , 對於一些依賴於鍵的排列 $ F, G, H $ , 和 56 位 $ k_1, k_2, k_5 $ 價值觀。很明顯,中間相遇攻擊將如何解決這個問題。

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