位置: 编程技术 - 正文

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)

  • 所得税费用影响企业利润总额吗
  • 什么是明细分类账簿
  • 医院固定资产折旧率是多少
  • 培训费发票开具的要求
  • 哪些福利费不税前扣除
  • 汇算清缴调表不调账调的是哪张表
  • 零申报失败什么原因
  • 财务单子包括哪些
  • 资产减值损失为正
  • 红字发票做进项转出还是红字负数
  • 电商刷单返现如何做账务处理合适?
  • 公关费用明细表
  • 企业支付宝里面的钱可以随时提到个人银行卡吗
  • 公司承租厂房装修协议
  • 出口发票上的汇率填什么
  • 开业赠送礼品会计属于什么费用
  • 出租包装物没收押金
  • 个人借款无法收回确认坏账账务处理
  • 装修公司开发票需要客户承担税点吗?
  • 未分配利润转增股本 个人所得税
  • 小规模纳税人按季收入不达30万
  • 企业白条报销和采取措施
  • 政策性搬迁的会计实用报告
  • 上月计提费用本月怎么做账
  • mac如何搜索
  • 因质量问题退货和收回的药品应当
  • 累计摊销在资产里怎么算
  • php ajax json
  • PHP:session_register()的用法_Session函数
  • php获取api内容
  • 车间耗材管理办法
  • 实缴资本多久可以取出随便用吗
  • vue 长列表优化
  • 新准则土地使用权计入固定资产还是无形资产
  • php第三方支付
  • 设计公司发生的费用
  • 赠送礼品账务处理会计分录
  • js中typeof用法
  • 哪些情况可以开立基本账户
  • java连接mysql数据库
  • 实际开票金额和转账金额不一致怎么做
  • 公司收到加盟费会计分录
  • 公司支付工伤赔偿,是先签字还是先打钱
  • 政府补助都有哪些类型
  • 跨期费用账务处理
  • 哪种情形的货物或者服务可以采用竞争性谈判方式采购
  • 小企业会计制度废止
  • 企业领用产品的会计分录
  • 营改增后众筹融资业务的会计处理分析?
  • 预付卡充值入什么科目
  • 给员工买的手机能抵扣税吗
  • 目前哪些费用不能抵扣
  • 未完工的工程施工怎么处理
  • 没有发票财务报表怎么做
  • 支付宝如何打印付款凭证
  • 新公司内账怎么做
  • 工会经费不够
  • 备份数据还原不了怎么办
  • xp系统任务栏太小怎么办
  • centos7服务器配置
  • 双硬盘无法进入bios
  • centos6.5 minimal
  • win8怎么打开系统设置
  • win7系统桌面图标有遮挡
  • win10升级 其他用户
  • 怎么把喜欢的图片设置成电脑壁纸
  • Css属性中表示字体的是
  • shell编程总结
  • python爬虫403解决方案
  • javascript 语言精粹(修订版)
  • border-radius在Android下的几个BUG
  • gps坐标计算距离公式工具
  • 四川税局官网发票
  • 缴款单号怎么交学费
  • 重庆沙坪坝区沙磁巷幼儿园
  • 地税的发票是什么样
  • 小额贷款公司在职人员和离职人员情节哪种轻
  • 青岛市税务管理局
  • 忘记了密码怎么打开手机
  • 上海市办居住证流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设