PHP:password_hash 的 'salt' 选项已弃用

PHP: 'salt' option to password_hash is deprecated

我正在使用密码哈希进行注册。我需要手动创建一个 Salt,以下是我使用的代码:

$options = [
    'cost' => 11,
    'salt' => mcrypt_create_iv(22, MCRYPT_DEV_URANDOM)
];
$password = password_hash(
    $this->input->post("confirm_password"),
    PASSWORD_BCRYPT,
    $options
);

当我 运行 这段代码时,它给我一个错误提示:

password_hash(): Use of the 'salt' option to password_hash is deprecated"

有什么解决办法吗?

是的,有一个解决方案 - 不要使用 'salt' 选项。

不需要手动加盐,PHP会自动为您加盐。

添加盐不是一种选择,而是替换将要生成的盐,在任何情况下您都无法提供更好的盐 - 这就是它被弃用的原因。