Block-Cipher

三重 DES 的模式 - 何時使用每種模式?

  • September 2, 2019

我正在學習 CISSP 認證,並且正在使用 Shon Harris 考試指南。它指出可以在 4 種模式下使用 Triple-DES:

  1. DES EEE3
  2. DES-EDE3
  3. DES-EEE2
  4. DES-EDE2

我理解這些模式。我也知道 EEE2 和 EDE2 會比 EEE3 和 EDE3 更快。我的問題:

  1. EEE 與 EDE 的案例是什麼?這與使用的硬體有關嗎?
  2. 使用哪種 DES 模式有關係嗎?

提前致謝!

三重 DES 已被 NIST 標準化為 DES-EDE。因此,EEE 版本通常不存在於加密庫中。僅出於這個原因,不建議使用它們。硬體將不支持 EEE 和 DDD 操作。fgrieu 已經從Poncho指出了NIST 選擇 DES-EDE的理論原因的答案,但那是古老的歷史;每個人都只使用仍在使用 DES 的 DES-EDE。

兩鍵三重 DES 並不比三鍵三重 DES 快。每個塊有 3 次 DES 迭代。操作的數量是相同的。

雙密鑰 3DES 僅提供大約 80 位的安全性(對於 112 無奇偶校驗或 128 位包括奇偶校驗的密鑰大小),而三密鑰三重 DES 仍為 112 位(對於 168/192 位密鑰大小)。對於通用遺留應用程序,NIST 目前建議使用三鍵 3DES(即 DES-EDE,見上文)。雙鍵 3DES 已被棄用,它不能為大多數用途提供足夠的安全性。

然而,這些模式都不應該被使用。三密鑰三重 DES 沒有被破壞,但它的密鑰很弱,所用密鑰大小的安全性太低,塊大小小(計數器模式和提供身份驗證的模式有問題)並且性能不佳。


您應該改用 AES 或現代流密碼。AES 是一種速度更快的 128 位分組密碼,其密鑰大小為 128、192 和 256 位,可提供大約由完整密鑰大小提供的安全性。AES 具有諸如 GCM 和 EAX 之類的身份驗證模式,這些模式還提供完整性和真實性,以及如果使用正確的模式/實現可以實現的機密性。


TL;DR:僅將三鍵三重 DES (DES-EDE) 用於舊版應用程序。您最好重寫應用程序以使用 AES,特別是如果應用程序仍然使用兩密鑰三重 DES。

問題的第一部分在那裡得到了充分的解決,這解釋了為什麼我們在實踐中使用 EDE3 或 EDE2。

對於第二部分,EDE2 的密鑰大小只有 $ 2\over3 $ 的EDE3。更短的密鑰對於密鑰管理來說是一個好處,但使得 EDE2 的蠻力和受過教育的力量攻擊比 EDE3 的困難/不可行。Paul C. van Oorschot 和 Michael J. Wiener 在A Known-Plaintext Attack on Two-Key Triple Encryption中討論了針對 EDE2 的受過訓練的攻擊(在Eurocrypt 1990 的程序中)。

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