級聯/組合密碼時的安全級別估計?
很久以前,DES 的理論安全級別為 56 位。2-key TDEA 提供大約 80 位的安全性,3-key TDEA 提供大約 112-bits 的安全性。顯然,這些安全級別在底層分組密碼的級聯中不是線性的。
第一個問題
合成時如何估計安全級別的提高?
第二個問題
是否有必要不關閉組合以使組合不形成組?即,如果 A(B(C(x))) = y,則不可能有 A’ 使得 A’(x) = y。(我相信是這樣)。
第三個問題
這如何適用於整數上的 Diffie-Hellman?如果我以 3072 模(即,每個 128 位安全性)執行 Diffie-Hellman 算法兩次並將兩個共享秘密連接起來,那麼存在多少有效的安全性位?(直覺上,我認為它大約是 128 位或 129 位)。
第四題
這如何適用於 RSA?如果我以 3072 模數(即每個 128 位安全性)執行 RSA 算法兩次並傳輸兩個共享機密,那麼存在多少有效的安全性位?(直覺上,我認為它大約是 128 位或 129 位)。
很抱歉問這些問題。背景故事與橢圓曲線和專利有關,我試圖弄清楚使用傳統加密原語在不同的片段中交換/同意/傳輸 AES-256 密鑰是否可行,同時保持安全級別並避免橢圓曲線。
第一個問題
這取決於方案。這還取決於您在談論哪種構圖。Triple-DES 使用多重加密。那是一種組合。您在第三個和第四個問題中談到的方法是一種不同的組合。它們將具有不同的安全屬性。
第二個問題
是的。如果操作形成一個組,則使用多重加密不會增加安全性。
第三個問題
這僅提供 128-129 位的安全性,但並非出於您預期的原因。原因是具有 3072 位模數的 Diffie-Hellman 僅提供大約 128 位的安全性;可以使用類似的東西以 3072 位模數打破 Diffie-Hellman $ 2^{128} $ 工作(非常粗略)。因此,可以使用以下方法打破兩個 Diffie-Hellman 交換 $ 2^{129} $ 工作(非常粗略)。換句話說,這不會增加安全性。
這在實踐中並不是一個實際的弱點,因為在實踐中 128 位的安全性已經綽綽有餘;沒有人能夠執行需要 $ 2^{128} $ 工作(不是在我的有生之年)。也就是說,這是協議中的一個認證弱點,沒有人會認為這是好的協議設計;這是相當糟糕的協議設計。
第四題
一樣的答案。
最後說明
這有點傻。你為什麼不告訴我們你真正遇到的真正問題?聽起來您的問題正朝著糟糕的協議設計方向發展。也許如果您告訴我們真正的問題,我們可以幫助您找到更好的解決方案。