Gcm

GCM 模式 GHASH 對定時攻擊的敏感性

  • May 29, 2018

在認證加密的 GCM 模式下,如果 GHASH 實現時間可以變化,是否存在安全問題?

如果時間根據 AAD/密文數據而變化,看起來這似乎無關緊要,因為該數據無論如何都是公開的。但是,如果時間根據 GHASH 密鑰而變化,那會降低安全性嗎?

如果時間隨公開資訊而變化,那麼這不是問題。如果時間隨著 GCM 中的密鑰等秘密資訊而變化,那就是一個問題。(雖然 GCM 僅將 AAD 和密文提供給 GHASH,但其他 AEAD 方案(如 GCM-SIV)將明文提供給 GHASH/POLYVAL;取決於任何秘密資訊的時間都是一個問題。)

很難做出隨密鑰變化的 GCM 的快速軟體實現,因為您正在評估 $ \operatorname{GF}(2^{128}) $ 在 GHASH 鍵處。(我們很想通過使用可變時間表查找來製作一個更快的軟體實現,該實現會隨著密鑰的變化而變化。)更糟糕的是,消息的每個塊(AAD 或密文)只在 GHASH 公式中出現一次,但是密鑰,和它的正方形,它的立方體等等,多次出現。

CPU 指令集和程式語言在歷史上被設計為支持整數算術,而不是 Galois 域算術,因此即使在原生支持 Galois 域算術的 CPU 上,可靠地利用它也需要不平凡的工程工作。

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