Aes

為什麼AES比一次性墊好?

  • September 27, 2022

從我對這個主題的有限研究來看,AES 似乎可以被暴力破解。另一方面,一次性墊不能。那麼為什麼使用 AES 比使用一次性填充更好呢?我得到的唯一答案是性能,但這似乎不太正確。

對於一次性密碼 (OTP),您需要分發密鑰。假設您要發送 1GB 的加密數據。在這種情況下,您需要事先生成 1GB 的統一隨機密鑰,並以安全的方式分發給對方。你現在看到問題了嗎?現在,開始使用它,甚至在你開始使用它之前,很確定你會把它放在一邊!

OTP 的另一個主要問題是一次性密鑰的耗盡。你會怎麼做?等待還是重用?兩者都有問題。第一個讓您失去聯繫/訂單/同步,另一個將產生災難性的結果;歷史上( Venona 項目)或現在自動化的兩次打擊墊攻擊失去了完美的保密性。

另請參閱我們網站上的這些不錯的 Q/A;

  1. 利用一次性鍵盤鍵重用?
  2. 一個人如何攻擊一個兩次鍵盤(即一次性鍵盤與密鑰重用)?
  3. Vernam Cipher 的小問題

現在,考慮一下這個,而不是一些提到的 OTP 問題;

  • 雙方都有公鑰和私鑰1;

  • 與 ECDH 交換密鑰(或選擇一種候選的後量子方案)以具有前向保密性(ECDH,ECDH 僅對經典對手具有安全性,Shor 的算法也擊敗了 Dlog)。

  • 在交換的密鑰上使用 KDF

  • 使用 AES-GCM-SIV(或 XChaCha20-Poly1305)加密,這樣就可以

    • 保密,
    • 誠信,和
    • 驗證

在這裡,GCM 使用 CTR 模式,該模式使用計算安全性而不是完全保密。是的,錯誤使用 AES-GCM仍然存在缺陷

另一方面,OTP 只有保密性。是的,可以使用 OPT-HMAC 提供完整性和身份驗證,但是,您留下了完美的秘密域。要繼續前進,您需要資訊論 MAC(例如來自強通用函式 (SUF) 的 MAC -請參閱第 6 章)。

AES 可以被暴力破解。

甚至AES-128 也能承受 20 多年的所有攻擊。直接蠻力將採取 $ 2^{35} $ 即使你將比特幣礦工的所有能力結合在暴力破解 AES 上,也需要幾年的時間。對抗經典攻擊者是安全的,然而,為了對抗量子對手使用 AES-256 是安全的,這樣人們甚至可以抵禦最優的 Grover 算法。


1嗯,當然沒那麼容易!為確保您與另一方正確通信,請使用信號之類的 TOFU(首次使用時信任)或降級的 WhatsApp 或完善的證書。這是兔子洞的頂部!

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