位置: 编程技术 - 正文

PHP更安全的密码加密机制Bcrypt详解(php密码修改)

编辑:rootadmin

推荐整理分享PHP更安全的密码加密机制Bcrypt详解(php密码修改),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php登录安全,php确认密码,php确认密码,php更安全的密码是多少,php安全设置,php 密码,php最安全的登录功能,php更安全的密码是多少,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

我们常常为了避免在服务器受到攻击,数据库被拖库时,用户的明文密码不被泄露,一般会对密码进行单向不可逆加密——哈希。

常见的方式是:

哈希方式 加密密码 md5(‘') eadcbaabbeeffe md5(‘' . ($salt = ‘salt')) acda3c1bdd7e9af8a sha1(‘') 位密文 hash(‘sha', ‘') 位密文 hash(‘sha', ‘') 位密文

密文越长,在相同机器上,进行撞库消耗的时间越长,相对越安全。

比较常见的哈希方式是 md5 + 盐,避免用户设置简单密码,被轻松破解。

password_hash

但是,现在要推荐的是 password_hash() 函数,可以轻松对密码实现加盐加密,而且几乎不能破解。

password_hash 生成的哈希长度是 PASSWORD_BCRYPT —— 位,PASSWORD_DEFAULT —— 位 ~ 位。PASSWORD_DEFAULT 取值跟 php 版本有关系,会等于其他值,但不影响使用。

PHP更安全的密码加密机制Bcrypt详解(php密码修改)

每一次 password_hash 运行结果都不一样,因此需要使用 password_verify 函数进行验证。

password_hash 会把计算 hash 的所有参数都存储在 hash 结果中,可以使用 password_get_info 获取相关信息。

输出

注意:不包含 salt

可以看出我当前版本的 PHP 使用 PASSWORD_DEFAULT 实际是使用 PASSWORD_BCRYPT。

password_hash($password, $algo, $options) 的第三个参数 $options 支持设置至少 位的 salt。但仍然强烈推荐使用 PHP 默认生成的 salt,不要主动设置 salt。

当要更新加密算法和加密选项时,可以通过 password_needs_rehash 判断是否需要重新加密,下面的代码是一段官方示例

password_needs_rehash 可以理解为比较 $algo + $option 和 password_get_info($hash) 返回值。

password_hash 运算慢

password_hash 是出了名的运行慢,也就意味着在相同时间内,密码重试次数少,泄露风险降低。

输出

password_hash 运行一次耗时 毫秒, md5 运行 次耗时 5 毫秒。这是一个非常粗略的比较,跟运行机器有关,但也可以看出 password_hash 运行确实非常慢。

总结

标签: php密码修改

本文链接地址:https://www.jiuchutong.com/biancheng/289822.html 转载请保留说明!

上一篇:Laravel中log无法写入问题的解决(laravel 日志配置)

下一篇:PHP利用Socket获取网站的SSL证书与公钥(php socket_create)

  • 资金性质生产性是什么意思
  • 公司替员工承担个税怎么入账
  • 税局退回附加税账务处理办法
  • 中级会计报名必须用ie浏览器吗
  • 建筑公司可以开机械租赁发票吗
  • 关税的税收主体是外国的进出口商
  • 预付的房租计入什么费用
  • 转登记小规模纳税人留抵税额
  • 增值税专用发票怎么开
  • 房地产企业土地增值税清算
  • 一般纳税人普通发票免税吗
  • 车间人员领用文件有哪些
  • 进项与销项不符怎么办
  • 购买的车位是否有产权证
  • 预付房租的会计科目
  • 投资支付的现金增加说明什么
  • 行政事业单位会计的工作内容
  • 个人去税务局开居间费发票
  • 工程结算科目属于哪一类
  • 哪些开普通发票
  • 融资租赁购入固定资产开票吗
  • 土地买卖所得税由谁承担
  • 自然人转让股权税收筹划
  • 未缴纳出资的股东未到期能否追加为被执行人
  • 历年亏损企业开什么发票
  • 公司加农户经营模式
  • 存货监盘计划要求,在对存货盘点结果进行测试时
  • 收到厂家返利怎么做账务处理
  • 如何实现php图片打印
  • 检验费用会计分录
  • 笔记本电池的正负极区分
  • 租赁的车间改造的会计分录
  • 苹果mac双系统按住哪个键
  • opera software
  • 固定资产前期购买的后期入账怎么入?
  • sethook.exe - sethook进程是什么文件 有何作用
  • 国税0申报如何网上申报
  • yolov5网络优化
  • laravel distinct
  • 供热企业享受增值税吗
  • php动态读取数据的代码
  • 营改增抵减的销项税发票要抵扣吗
  • thinkphp框架作用
  • php背景图片代码
  • openlayers6教程
  • js倒数
  • 前端作业做一个网站
  • 企业预付账款属于什么科目
  • 企业所得税报表模板
  • 网上免费学电脑
  • 预付账款怎么记账
  • 当月进项税额大但是也要交增值税吗
  • 应收账款的明细科目一般按照什么设置
  • 出差补助没有发票
  • 检验费用会计分录
  • 企业验资的好处
  • 待抵扣进项税额和待认证进项税额的区别
  • 退休人员在企业工作工资怎么算
  • 建筑施工企业在12个月内第三次发生生产安全事故的
  • 自产的产品用于生产缴纳增值税
  • 应交土地增值税的三种情况
  • 有借必有贷借贷必相等的记账规则适用于
  • 会计凭证装订时间法律规定
  • 销售收入包含哪些费用
  • 金税盘维护费抵减分录
  • 个体户利润总额是4万应缴纳多少个人经营所得
  • win8.1开机进入桌面
  • linux gunzip
  • win7系统桌面设置
  • 联想笔记本win7装win10
  • win8开机直接进入传统桌面
  • unity 链表
  • c# opengl绘图
  • linux 查找后缀名文件
  • python流数据
  • 最多跑一次改革是谁提出来的
  • 宿豫区国税分局电话
  • 下载国税网上办税服务厅
  • 上海各区财政收入
  • 村级服务公开的具体内容
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设