Ctr

用 AES CTR 模擬 AES GCM

  • December 3, 2018

建立AES GCM 和 AES CTR 之間的關係……如果你的 GCM 隨機數是“aaaa aaaa aaaa”(沒有空格),那麼 CTR IV 就是附加了 (0,0,0,2) 的那個。

我的問題是……當計數器到達(255、255、255、255)時會發生什麼?最後五個字節是 (98, 0, 0, 0, 0)(其中 98 = b)還是 (97, 0, 0, 0, 0)(其中 97 = a)?

我猜是後者,但 idk。

謝謝!

在 NIST 特別出版物800-38D第 8 頁中,最大輸入長度在標準中定義為:

認證加密函式的輸入字元串的位長應滿足以下要求:

  • $ len(P) \leq 2^{39}-256 $

在第 8.3 節中,所有實現的呼叫次數要求:

認證加密函式的總呼叫次數不得超過 $ 2^{32} $ ,包括所有 IV 長度和具有給定密鑰的經過身份驗證的加密函式的所有實例。

  • 因此,該建議不建議計數器溢出。

我們可以找到最大值:

$ 2^{32} $ 呼叫,每次呼叫可以加密 128 位( $ 2^7 $ -bit) 與 AES,因此

$ 2^{32} \cdot 2^{7} = 2^{39}\text{-bit} \approx 68.7\text{GB} $ 是在 NIST 推薦下可以使用 AES-GCM 加密的最大數據。

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