use*_*449 2 php mysql security sha pbkdf2
我的功能如下:
pbkdf2($raw_pw,$salt,1000,128)
1000是通过次数,而128是密钥大小。该函数返回一个二进制密钥,我使用base64将其存储在数据库中。
我的问题是:使用sha512的pbkdf2建议使用的密钥大小和盐大小是多少?
32的密钥大小是否与128的密钥大小一样安全?
小智 6
1000是迭代次数,而不是通过次数。128是末尾的长度。
根据维基百科(以及我自己对密码学的一点了解),您应该使用128位以上(或32位)。生成的密钥的大小等于发生哈希冲突的机会。使用256(就像WPA2一样)或512应该不是问题,对于您的CPU /内存/其他也不是问题。
与pbkdf2的其他集成相比,也有1000个非常小的迭代。您可以轻松地使用5000或10000(如iOS4),这可能会导致处理时间增加10毫秒左右,但使密钥更有效(请参阅:可能的攻击者还必须运行10k迭代。这可能会改变他所需的时间) 1天至10天,或1个月至近1年)。
归档时间:
13 年,5 月 前
查看次数:
4098 次
最近记录:
6 年,3 月 前