password_hash加密实例

流浪2024 / 2024-08-06 / 原文

        $pwd = password_hash('123456',PASSWORD_DEFAULT);
        echo $pwd;
        $res = password_verify('1234567',$pwd);
        var_dump($res);

1.password_hash() 函数用于创建密码的散列(hash)

PHP 版本要求: PHP 5 >= 5.5.0, PHP 7

语法

string password_hash ( string $password , int $algo [, array $options ] )

password_hash() 使用足够强度的单向散列算法创建密码的散列(hash)。 password_hash() 兼容 crypt()。 所以, crypt() 创建的密码散列也可用于 password_hash()。

当前支持的算法:

  • PASSWORD_DEFAULT - 使用 bcrypt 算法 (PHP 5.5.0 默认)。 注意,该常量会随着 PHP 加入更新更高强度的算法而改变。 所以,使用此常量生成结果的长度将在未来有变化。 因此,数据库里储存结果的列可超过60个字符(最好是255个字符)。
  • PASSWORD_BCRYPT - 使用 CRYPT_BLOWFISH 算法创建散列。 这会产生兼容使用 "$2y$" 的 crypt()。 结果将会是 60 个字符的字符串, 或者在失败时返回 FALSE
  • PASSWORD_ARGON2I - 使用 Argon2 散列算法创建散列。

更多参考:https://www.runoob.com/php/php-password_hash.html