我正在设计一个php网站,我使用sha1为用户存储密码,但我后来读到sha1不安全,我使用Bcrypt更好,现在我试着找到Bcrypt但是这些问题 - How do you use bcrypt for hashing..和Is Bcrypt used for Hashing过于复杂,我不明白他们的解释。
<?php $pass = sha1($_POST["password"]); ?>
但可能是:
<?php $pass = bcrypt($_POST["password"]); ?>
或哪个比两者都好。感谢
答案 0 :(得分:3)
如果您使用的是PHP版本5.5+,则可以使用方法password_hash()和password_verify();
实施例
$hash = password_hash("mypassword", PASSWORD_BCRYPT);
并验证:
if (password_verify('mypassword', $hash)) {
echo 'Password is valid!';
} else {
echo 'Invalid password.';
}
这是PHP中最好和最安全的,因为salt内置在方法中。