Aes

AES-256 是不是後量子安全密碼?

  • January 24, 2022

我們知道Grover 的算法在分組密碼中將暴力攻擊加速了兩倍(例如暴力破解 128 位密鑰需要 $ 2^{64} $ 操作,而不是 $ 2^{128} $ ).

這就解釋了為什麼我們使用 256 位密鑰來加密最高機密。但對 AES 的最新實際攻擊顯示暴力破解 AES-256 $ 2^{100} $ 操作。

這種攻擊是否適用於 Grover 的搜尋,以使 AES 密碼量子不受抵抗?

Biclique 密碼分析是目前最著名的 AES 攻擊。它降低了 AES-256 的安全性 $ 2^{256} $ 到 $ 2^{254.4} $ . 相關的關鍵攻擊不是實際攻擊,因為它們不應該在野外發生。它們是執行不力的症狀,並且與 AES 的推薦使用相反。

最著名的理論攻擊是 Grover 的量子搜尋算法。正如您所指出的,這使我們能夠搜尋未排序的數據庫 $ n $ 中的條目 $ \sqrt{n} $ 操作。因此,AES-256 對於中期來說是安全的,可以抵禦量子攻擊,但是,AES-128 可以被破解,並且 AES-192 看起來並不那麼好。

隨著計算能力的進步(每 18 個月翻一番)和量子電腦的發展,沒有任何設置的密鑰大小是無限期安全的。Grover 的使用只是巨大的飛躍之一。

我仍然會將 AES 歸類為抗量子攻擊,只要最著名的攻擊仍然是對密鑰空間的某種形式的窮舉搜尋。

至於您關於使用不同攻擊的問題:組合攻擊很少起作用,因為您需要所有攻擊來揭示密鑰的專有位。鑑於對 AES 的最佳攻擊甚至不顯示 2,您將很難做出這樣的合理攻擊。

我們知道 Grover 的算法在分組密碼中將暴力攻擊速度提高了兩倍(例如,暴力破解 128 位密鑰需要 264 次操作,而不是 $ 2^{128} $ ).

這是Lov K. Grover 算法的廣告。是的,它減少了關鍵搜尋 $ \mathcal{O}(\sqrt{2^n}) $ 而不是 $ \mathcal{O}(2^n) $ . 一般不提及的是連續評價的次數;它是 $ \mathcal{O}(\sqrt{2^n}) $ , 也。我們對連續呼叫了解多少?幾乎什麼都沒有,因為還沒有建造任何東西。即使有一些好的數字,我們也只能估計它,比如假設一個人可以在一納秒內準備和執行機器。然後對於 AES-128,它將需要 $ \approx 585 $ 年。

Grover 的算法也可以並行化,但是,增益並不像預期的那樣是二次的。用於跑步 $ k $ 一機得到 $ \sqrt{k} $ 加速。因此,如果一個人跑 $ 10^6 $ Grover 的機器可以在不到一年的時間內破解 AES-128。

因此,就目前而言,很難說 AES-128 不是量子安全的。必須解決科學家和工程師正在研究的實際問題,才能在有意義的時間內破解 AES-128。最後,我們預計它會被破解,實際上,任何具有 128 位密鑰的分組密碼都會被破解,AES 沒有什麼特別之處。

另一方面,AES-128除了 Grover 算法之外還有其他主要問題,例如多目標,或為 GCM 提供適當的隨機 IV 保證的小塊大小。

AES-256 是不是後量子安全密碼?

它是並且它將永遠是安全的。因此,AES-256 是業界的黃金標準,與 AES-128 相比,性能損失僅為 40%。始終使用具有良好操作模式的 AES-256 來確保目標安全。

這就解釋了為什麼我們使用 256 位密鑰來加密最高機密。但對 AES 的最新實際攻擊顯示暴力破解 AES-256 $ 2^{100} $ 操作。

這種攻擊是一種相關密鑰攻擊,在對 RC4 進行相關密鑰攻擊的意義上是不實用的。

這也是一種誤導,因為攻擊需要 $ 2^{99.5} $ -時間和 $ 2^{99.5} $ - 數據複雜性。儘管集體比特幣礦工可以達到 $ \approx 2^{93} $ SHA-256d 一年,他們不儲存數據。這是攻擊的主要問題。由於我們無法將這個數量儲存在記憶體中,因此我們也必須考慮數據訪問的瓶頸。

作為一個實踐問題,一個人選擇 AES 密鑰要麼

  • 隨機均勻
  • 結果是像 DHKE 這樣的密鑰交換,然後應用加密雜湊函式,或者
  • 使用基於密碼的密鑰派生函式(如 PBKDF2、Scrypt 和 Argon2)形成密碼。

攻擊者無法控制所選密鑰。而且,任何這些都可以幫助相關密鑰攻擊者,這將是非常令人驚訝的。可以說這不是密鑰恢復攻擊

附帶說明: AES 的設計者在他們的書的第二版(2020 年)中提到了相關密鑰攻擊,他們說由於相關密鑰攻擊,AES 不是密封密碼,但是,這不是問題,因為 AES不會在雜湊設計中使用。

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