乘风原创程序

  • 密码散列算法
  • 2020/7/29 15:35:29
  • 密码散列算法是password扩展,他是PHP核心的一部分,不需要单独安装

    这个库是专门对密码做hash运算与校验的。

    大家都知道,用户注册设置的密码需要存储在数据库,很多老项目都是把密码就行md5运算然后存储到数据库表中,但是由于现在计算机硬件性能提升,md5算法已经不再安全,那么应该用什么算法呢?

    对密码进行hash运算并校验

    <?php
    //对密码进行hash运算,算法采用PASSWORD_BCRYPT
    $hash         = password_hash('jhq23123', PASSWORD_BCRYPT);
    //校验密码hash值
    $verifyResult = password_verify('jhq23123', $hash);
    var_dump($hash, $verifyResult);
    

    以上例程运行结果

    string(60) "$2y$10$wqw6FoTl8sYk8r/lvCkvo.nGBRg42OQNFD2BLPt9nfkUnsr7GKgR2"
    bool(true)
    

    需要注意的是,每次运行产生的hash值是不一样的。

    看到这里,我们可以发现,我们如果把密码的hash值存储在数据库中,破解的难度是不是很难了,这也是PHP官方推荐大家使用的密码加密算法。

    学习更多内容: https://404.360tryst.com

    我的视频课程: https://edu.csdn.net/course/detail/9933

    本文地址:https://blog.csdn.net/jhq0113/article/details/107632946