如何使用 Bcrypt 存储用户密码

How do I store user password with Bcrypt

我正在设计一个php网站,我用sha1为用户存储密码,但后来我看到sha1 is unsafe, Its better i use Bcrypt, now I try to find about Bcrypt but these questions - How do you use bcrypt for hashing.. and Is Bcrypt used for Hashing太复杂了,我不明白他们解释了什么。

<?php $pass = sha1($_POST["password"]); ?>

但会不会是:

<?php $pass = bcrypt($_POST["password"]); ?>

或者哪个比两者都好。谢谢

如果您使用的是 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 中最好和最安全的,因为盐是内置在方法中的。