位置: 编程技术 - 正文

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)

  • 公允价值变动损益属于什么科目
  • 组成计税价应该是含税价还是不含税价?
  • 网上申报纳税操作视频
  • 教育附加税税率多少?
  • 材料入库的会计分录材料采购损失
  • 严格财务报销程序
  • 一般纳税人印花税是季报还是月报
  • 长期借款会计科目编码
  • 外购货物自用会计处理
  • 商业承兑汇票有风险吗
  • 转让股权取得的收益是调增还是调减
  • 广告公司制作警示牌可以开具什么样的发票?
  • 企业取得政府财政资金,收入时间如何确认?
  • 自建厂房可以不办理房产证吗
  • 报废资产取得的增值税
  • 一般纳税人汽车修理费可以抵扣吗
  • 异地预缴增值税后本地还要交吗
  • 增值税税控系统专用设备注销发行
  • 国家要收回房屋土地怎么补偿
  • 企业注销前需要固定资产清理吗
  • 三类不良行为
  • 销售库存商品会引起收入增加吗
  • 存货计价方法的选择对利润表中的项目没有影响
  • 按适用税率征税货物及劳务销售额
  • 金税盘开红字发票
  • 隔月的发票能作废吗
  • 当月作废的发票是否需要报税
  • 递延资产摊销计算公式
  • 多发的奖金收回怎么做账
  • 工会经费该怎么交
  • linux模块的概念
  • 国产操作系统两项全球第一
  • 如何看待税收的本质
  • PHP:mcrypt_decrypt()的用法_Mcrypt函数
  • 土地增值税属于财产税吗
  • 调整固定资产折旧年限,折旧额的变化
  • 公司向法人借款的借条怎么写
  • 落日时光
  • asreg命令什么意思
  • 工程项目会计怎么样
  • php推送微信公众号客户消息
  • 收到工程款怎么做凭证
  • python中time模块的用法
  • dedecms使用教程
  • 微信转账要如何退回去
  • 工业企业成本核算的一般程序
  • 金税服务费必须交吗
  • 施工单位代建收费合法吗
  • 关联方计提坏账吗
  • 织梦相关文章调用
  • 增值税哪些行业不能抵扣
  • sql动态执行
  • 票种核定啥意思
  • 新成立企业多长时间可以销售小微企业
  • 全年一次性奖金税率表2023最新
  • 高速公路过路费怎么算的
  • 出口抵减内销产品应纳税额分录
  • 垃圾清运费的收费标准乱要钱怎么办
  • 股东借款转为实收资本的说明
  • 收到社保局的稳岗通知
  • 个体工商户注销代办
  • 票据到期无力支付怎么办
  • 实收资本小于注册资本账务处理
  • js操作剪切板
  • Win10技巧:如何开启隐藏的锁屏时间设置项
  • ubuntu切换登录用户
  • win10家庭版关闭
  • win7系统电脑无声音
  • Debian如何安装网卡驱动
  • unity3d需要购买吗
  • 使用JQuery FancyBox插件实现图片展示特效
  • js去除hover样式
  • python中print函数的end参数
  • unity点击播放声音
  • js获取tbody
  • jquery实现购物车功能(删除商品,增加和减少商品)
  • jquery选择器总结
  • js中倒计时器怎么实现
  • 在本地买车怎么上外地牌照
  • 宪法宣誓仪式流程图
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设