位置: 编程技术 - 正文

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)

  • 所得税税前扣除项目及扣除标准
  • 印花税包括几个税种
  • 发票可不可以部分冲红
  • 建筑物进项税额可以抵扣吗
  • 单位结算卡在pos渠道可办理的功能
  • 扣员工工会会费
  • 标准的现金流量表格式
  • 实收资本借方增加还是减少
  • 个体行业哪些不需要交税
  • 公司购买汽车抵税规则
  • 居民委员会有没有纳税人识别号吗
  • 开票现代服务怎么选
  • 赊购商品一批
  • 外国常驻代表机构经费支出
  • 资产处置收益属于其他收益吗
  • 补贴收入营业外收入比例过高
  • 利息资本化的时点
  • 返利销售会计处理办法
  • 工伤补偿需要缴税吗
  • 长期资本负债率怎么计算公式
  • 财务差旅费报销制度
  • linux和windows关系
  • php自动跳转页面
  • php的字符串函数
  • 小微企业减免额怎么计算
  • 智能路由器五个灯一直闪
  • 增值税三流合一涉及子公司
  • 总分类账的登记依据和方法取决于企业所采用的
  • 企业税负率过高的坏处
  • idea如何导入sql文件
  • 嵌入html
  • point network
  • phpcms默认密码
  • 金税盘中的发票修复是什么意思
  • 函数模拟图
  • phpcms程序
  • 代扣代缴完税凭证抵扣期限
  • 分公司从总公司进货不开票违法吗
  • 小规模销项税分录
  • 外资企业是否属于国企
  • 固定资产清理净残值怎么处理
  • 什么是指企业的所有部门彼此协调为顾客服务
  • mysql查询在什么之间
  • 技术人员工资计入什么科目
  • 退回企业所得税的账务处理
  • 一般纳税人已交税金账务处理
  • 佣金支出和手续费一样吗
  • 付了电费当月没有收到发票
  • 财政补贴的政策
  • 农产品免税收入需要缴纳所得税吗
  • 建筑公司脚手架租赁费会计分录
  • 领用生产用原材料一批
  • 更正申报所得税汇算清缴
  • sql如何学
  • sqlserver2012序列号
  • mybatis报错invalid bound statement
  • mac打不开以下磁盘映像
  • linux中mail命令
  • avgorange是什么文件
  • 怎么恢复Windows xp蓝天白云壁纸
  • win10安装 升级
  • register.exe - register进程有什么用.是什么意思
  • win7怎么禁用触摸屏
  • 局域网下访问vue点击无反应
  • windows7 游戏
  • win7 64位纯净版系统c盘空间显示与实际占用空间不对的解决方法图文教程
  • android aidl in out
  • vue怎么实现多页面
  • jquery选择器包含哪几大类
  • Node.js Mongodb 密码特殊字符 @的解决方法
  • shell脚本中判断字符串是否相等
  • 《JavaScript高级程序设计》pdf链接
  • unity3d基础教程
  • javascript运行速度
  • 前端开发需要哪些技能
  • 广西壮族自治区图书馆
  • 东莞医保缴费凭证怎么下载
  • 广东省广州市国资委
  • 黄金消费税如何算
  • 开票没有0还是o
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设