$storePassword = md5Hash($salt, $userActuallyPassword);
当用户分配密码时,我将生成一个salt,这是一个十位数的随机字符串,我使用md5和userActuallyPassword,并且我存储salt和storePassword,在商店内用户实际密码,这是一个这样做的好方法?对此有何评论?
答案 0 :(得分:5)
答案 1 :(得分:1)
尝试使用更严格研究的方法,例如PBKDF2。你仍然会存储一个哈希和一个盐,你可以选择自己的哈希算法,但你会处理字典攻击,彩虹攻击和其他各种问题。您可以在hash_hmac()函数的评论中找到一个很好的实现。
答案 2 :(得分:1)
几乎正确:
$storePassword = $salt . md5Hash($salt, $userActuallyPassword);
而不是md5,你最好使用SHA256或BCrypt Hash 此外,十位随机字符串不具有非常大的熵,您可以通过使用128个随机位而不是数字来改进。