0
腌制密码时,哪种方法是正确的(或最有效的方法)?腌制 - 步骤顺序
A.首先散列密码,然后散列密码的哈希值,像这样的盐:
$password = "passwd";
$salt = "s0merndslt";
$password = sha1($password);
$salty = sha1($password.$salt);
B.以密码和salt和hash在一起就像这样:
$password = "passwd";
$salt = "s0merndslt";
$salty = sha1($password.$salt);
我很抱歉,如果以前有人问过这个问题,但是我找不到SO上这个特定部分盐析的答案。
谢谢。 PHP中有某个库是否推荐使用这些算法?就像http://www.openwall.com/phpass/我做了一个快速搜索bcrypt和PBKDF2,并没有出现官方的PHP文档。我假设这些不是本地支持的PHP ... – Aaron
@Aaron:有几个版本的PBKDF#2在这里,这里是一个链接到维基百科:http://www.itnewb.com/v/Encrypting -Passwords-with-PHP-for-Storage-Using-the-RSA-PBKDF2-Standard请注意,您仍然需要将迭代(至少> 5000)和salt作为密码的一部分存储在数据库中(或分开存储专栏,由你决定) –