教程集 www.jiaochengji.com
教程集 >  脚本编程  >  php  >  正文 【哈希密码】PHP比md5更安全的加密方式

【哈希密码】PHP比md5更安全的加密方式

发布时间:2020-11-11   编辑:jiaochengji.com
教程集为您提供【哈希密码】PHP比md5更安全的加密方式等资源,欢迎您收藏本站,我们将为您提供最新的【哈希密码】PHP比md5更安全的加密方式资源
传统加密方式:

md5(密码 盐值);

$passwordString='your password';//你的密码 $salt="your salt value";//盐值,增加复杂度(随机字串) $md5Password=md5($passwordString.$salt);

从理论上来说,md5不可逆,算是一种比较安全的加密方式。但是我要提醒的是,md5早在04年的时候就被中国人破解。一旦被人拖库的化,密码泄漏的可能性极大。

现在推荐一种新的处理方式:

密码散列算法函数

password_get_info — 返回指定哈希(hash)的相关信息

password_hash — 创建密码的哈希(hash)

password_needs_rehash — Checks if the given hash matches the given options

password_verify — 验证密码是否和哈希匹配

PHP5.5引入了Password Hashing函数,内核自带无需安装扩展。在PHP5.4下测试了下也可是可以的,使用前最好确认一下你当前的环境是否支持这些函数。

Password Hashing主要提供了4个函数

//查看哈希值的相关信息 array password_get_info (string $hash)   //创建hash密码 string password_hash(string $password , integer $algo [, array $options ])   //判断hash密码是否特定选项、算法所创建 boolean password_needs_rehash (string $hash , integer $algo [, array $options ]    boolean password_verify (string $password , string $hash) //验证密码

代码演示:

$password = 'password123456';//原始密码 //使用BCRYPT算法加密密码 $hash_password = password_hash($password, PASSWORD_BCRYPT);     if (password_verify($password , $hash_password)){    echo "密码匹配"; }else{    echo "密码错误"; }

重要特征:

通过password_hash加密后的密码,使用字典方式很难破解,因为每次生成的密码都是不一样的。破解这种加密只能采用暴力破解。

最后提醒:

加密方法再好,原始密码设置的过于简单都容易被破解,设置复杂的密码才是王道。

以上就是【哈希密码】PHP比md5更安全的加密方式的详细内容,更多请关注教程集其它相关文章!

  • 本文转载于:51cto,如有侵犯,请联系jquerycn@qq.com删除
  • 您可能感兴趣的文章:
    【哈希密码】PHP比md5更安全的加密方式
    PHP开发者如何做好密码保护以及Laravel底层密码存储和验证实现
    flask框架下密码的加盐加密和解密
    php加密函数md5,crypt,base64_encode的用法介绍
    php怎么给密码进行md5加密
    Python常用模块之hashlib
    php md5加密的另类应用
    Go从入门到精通系列视频之go编程语言密码学哈希算法
    php中的加密方法有哪些?
    php MD5函数的简单示例

    [关闭]
    ~ ~