Pseudo-Random-Generator

關於 CTR_DRBG 實例化規範的問題

  • September 6, 2017

NIST SP 800-90a在第 10.2 節中定義了 CTR_DRBG。

文件中有一條我不明白的評論。

假設我們想要實現 256 位的安全強度,使用 AES-256 作為底層算法,並且我們確實使用了派生函式。

因此,在表 3 中,熵字元串應該在 $ [256,2^{35}] $ 位和個性化字元串最多 $ 2^{35} $ 位。種子等於_ $ 384 $ 位。

但在第 10.2.1.3.2 節“使用派生函式時的實例化”第 1 步中, seed_material定義為

seed_material = entropy_input || nonce || personalization_string

帶有註釋“確保seed_material 的長度正好是seedlen 位”。

這個評論有什麼意義?

如果允許personalization_string 和entropy_input 增長到 $ 2^{35} $ 位,如何將它們的連接(不包括隨機數)強制精確 $ 384 $ 位?

我相信評論正在解釋下一行:

seed_material = df(seed_material, seedlen)

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