Pbkdf-2
PBKDF2 使用 HMAC-SHA1 生成密鑰,但 HMAC 的密鑰是什麼?
我正在閱讀 PBKDF2 並註意到以下內容:
DK = PBKDF2(PRF, Password, Salt, c, dkLen)
PRF 是鍵控 HMAC,但我似乎無法找出它們用作 HMAC 鍵的內容?
PBKDF2 使用密碼作為 PRF 密鑰。
來自RFC:
偽隨機函式 PRF 的第一個參數用作 HMAC 的“密鑰”,第二個參數用作 HMAC 的“文本”。對於 PBKDF2,“key”就是密碼,“text”就是 salt。
密碼用作密鑰,salt +(目前塊迭代為 32 位整數)用作消息,然後生成的 HMAC 用作下一次迭代的消息。
所有迭代都相互異或以生成雜湊塊。如果所需的輸出長度小於散列的大小,則將其截斷,如果更大,則以新的塊迭代重複該過程,直到達到所需的長度。