PHP中散列密码的安全性分析


Posted in PHP onJuly 26, 2019

本文实例讲述了PHP中散列密码的安全性。分享给大家供大家参考,具体如下:

php的基本哈希函数已经不再安全?

php手册中有专门的一个部分来介绍这个问题
http://php.net/manual/zh/faq.passwords.php

很多应用,都是将用户的密码都是直接通过md5加密直接存储到数据库中的,包括我最近在用的开源项目zabbix的web管理界面。

$password = "1234";
$hash = md5($password);
echo $res;

php常用的哈希函数有md5和sha1,这种哈希之后,一般是不可逆的,但是可以重现,也就是说同样的明文,哈希之后的结果是一样的,对于一些简单的明文,是可以通过遍历,然后对照加密之后的密文得到明文的。

网上有流传的“彩虹表”,就是遍历的到的一个非常大的数据库,存储了明文和密文的对照关系,通过查询就能得到密文对应的明文。

在线散列/哈希算法加密工具:
http://tools.3water.com/password/hash_encrypt

在线MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools.3water.com/password/hash_md5_sha

在线sha1/sha224/sha256/sha384/sha512加密工具:
http://tools.3water.com/password/sha_encode

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
利用js调用后台php进行数据处理原码
Oct 09 PHP
无数据库的详细域名查询程序PHP版(3)
Oct 09 PHP
PHP+javascript液晶时钟
Oct 09 PHP
java EJB 加密与解密原理的一个例子
Jan 11 PHP
深入密码加salt原理的分析
Jun 06 PHP
PHP页面间参数传递的四种方法详解
Jun 09 PHP
360通用php防护代码(使用操作详解)
Jun 18 PHP
php文件缓存类用法实例分析
Apr 22 PHP
PHP实现的一致性哈希算法完整实例
Nov 14 PHP
PHP数据分析引擎计算余弦相似度算法示例
Aug 08 PHP
PHP迭代器和迭代的实现与使用方法分析
Apr 19 PHP
PHP实现新型冠状病毒疫情实时图的实例
Feb 04 PHP
PHP基于timestamp和nonce实现的防止重放攻击方案分析
Jul 26 #PHP
YII2.0框架行为(Behavior)深入详解
Jul 26 #PHP
php使用socket调用http和smtp协议实例小结
Jul 26 #PHP
php使用curl模拟多线程实现批处理功能示例
Jul 25 #PHP
yii框架使用分页的方法分析
Jul 25 #PHP
php实现的生成排列算法示例
Jul 25 #PHP
Yii框架中使用PHPExcel的方法分析
Jul 25 #PHP
You might like
apache mysql php 源码编译使用方法
2012/05/03 PHP
Php output buffering缓存及程序缓存深入解析
2013/07/15 PHP
php中current、next与reset函数用法实例
2014/11/17 PHP
谈谈PHP中substr和substring的正确用法及相关参数的介绍
2015/12/16 PHP
php UNIX时间戳用法详解
2017/02/16 PHP
thinkPHP5框架闭包函数与子查询传参用法示例
2018/08/02 PHP
一个无限级XML绑定跨框架菜单(For IE)
2007/01/27 Javascript
JQuery 绑定事件时传递参数的实现方法
2009/10/13 Javascript
用js实现判断当前网址的来路如果不是指定的来路就跳转到指定页面
2011/05/02 Javascript
判断某个字符在一个字符串中是否存在的js代码
2014/02/28 Javascript
JS实时弹出新消息提示框并有提示音响起的实现代码
2016/04/20 Javascript
鼠标点击input,显示瞬间的边框颜色,对之修改与隐藏实例
2016/12/26 Javascript
jquery插件ContextMenu设置右键菜单
2017/03/13 Javascript
微信小程序 setData的使用方法详解
2017/04/20 Javascript
js Date()日期函数浏览器兼容问题解决方法
2017/09/12 Javascript
在vue项目中使用Nprogress.js进度条的方法
2018/01/31 Javascript
使用javascript函数编写简单银行取钱存钱流程
2018/05/26 Javascript
vue自定义tap指令及tap事件的实现
2018/09/18 Javascript
vue element table 表格请求后台排序的方法
2018/09/28 Javascript
深入理解js A*寻路算法原理与具体实现过程
2018/12/13 Javascript
微信小程序实现传递多个参数与事件处理
2019/08/12 Javascript
解读Python编程中的命名空间与作用域
2015/10/16 Python
pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法
2019/06/20 Python
pytorch 在网络中添加可训练参数,修改预训练权重文件的方法
2019/08/17 Python
pycharm配置QtDesigner的超详细方法
2021/01/25 Python
美国转售二手商品的电子商务平台:BLINQ
2018/12/13 全球购物
大学学年自我鉴定
2013/10/28 职场文书
在求职信中如何凸显个人优势
2013/10/30 职场文书
公司总经理岗位职责
2014/03/15 职场文书
给校长的一封检讨书
2014/09/20 职场文书
2015年财政所工作总结
2015/04/25 职场文书
2015年党总支工作总结
2015/05/25 职场文书
2015初中团支部工作总结
2015/07/21 职场文书
《老人与海鸥》教学反思
2016/02/16 职场文书
Python opencv缺陷检测的实现及问题解决
2021/04/24 Python
简单介绍Python的第三方库yaml
2021/06/18 Python