密码学中的密钥派生与哈希函数构造
在密码学领域,密钥派生和哈希函数构造是保障信息安全的重要环节。本文将深入探讨PBKDF2密钥派生函数、哈希函数的发展历程、以及构建类似随机预言机的哈希函数的方法。
1. PBKDF2密钥派生函数
PBKDF2(Password-Based Key Derivation Function 2)是一种基于密码的密钥派生函数,它能显著增加攻击者尝试所有密码的时间成本。例如,通过增加迭代次数,能将攻击者的速度减慢 $10^5$ 倍,在笔记本电脑上尝试所有密码的时间将从32天增加到超过8000年。
1.1 PBKDF2的计算过程
PBKDF2的输入包括密码(pw)、盐(salt)、迭代次数(c)和长度参数(L),用于指定输出比特数。以下是其具体计算步骤:
PBKDF2(pw, salt, c, L)
1 : OKM ← ε
2 : for i = 1 .. ⌈L/PRF.ol⌉ do
3 : t ← F(pw, salt, c, i)
4 : OKM ← OKM ∥ t
5 : return OKM[1..L]
其中,$F$ 函数的计算如下:
F(pw, salt, c, i)
1 : U[1] ← PRF(pw, salt ∥ ⟨i⟩32)
2 : for i = 2..c do
3 : U[i] ← F(pw, U[i − 1])
4 : return U[1] ⊕ U[2] ⊕ · · · ⊕ U[c]
超级会员免费看
订阅专栏 解锁全文
17

被折叠的 条评论
为什么被折叠?



