Encryption
如果 E’ 建立在安全密碼之上,為什麼它不安全?
讓 $ E $ 成為語義安全的密碼。
讓 $ E’(k,m) = E(k,E(k,m)) $ .
怎麼證明 $ E’ $ 不一定安全,即使 $ E $ 是?
這對我來說沒有意義。如果你考慮攻擊者的優勢 $ \mathcal{A} $ 通過語義安全的密碼 $ E $ , 你有 $ SSadv[\mathcal{A},E] = \epsilon $ , 在哪裡 $ \epsilon $ 可以忽略不計。
如果你要求 $ E(k,E(k,m)) $ , 你應該有 $ E(k,E(k,m)) = E(k,c) $ , 在哪裡 $ c $ 是 $ \epsilon $ - 隨機的距離,所以你有一個優勢 $ \epsilon $ 給攻擊者。
當你計算 $ E(k,c) $ ,類似地,您提供了另一個優勢 $ \epsilon $ 給攻擊者,所以你給了一個整體優勢 $ (\epsilon + \epsilon) $ ,這樣的總和也可以忽略不計。
總結評論中的答案:
如果 E 是流密碼會發生什麼?〜里奇幀
如果您使用異或來組合密鑰流而不是加法怎麼辦?~ 艾拉·羅斯
所以 $ c_i=m_i\oplus k_i\oplus k_i=m_i $ ,它會被輕易打破。謝謝!我不會想出使用流密碼的想法,也不會像這樣修改一次性密碼。〜丹尼爾
在這種情況下,唯一定義安全性的組件是“k”。即,越隨機的“k”,攻擊者就越難猜測。其餘功能是確定性的。即E和E’和m的定義是外界已知的。
因此,無論您進行二級還是三級加密,如果您使用單個密鑰作為基礎,那麼這將成為單點攻擊或鏈中最薄弱的環節。打破它會破壞你的 n 級加密密文。