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 相关文章推荐
php下把数组保存为文件格式的实例应用
Feb 08 PHP
php学习笔记 PHP面向对象的程序设计
Jun 13 PHP
解析zend Framework如何自动加载类
Jun 28 PHP
PHP分页详细讲解(有实例)
Oct 30 PHP
php中的观察者模式简单实例
Jan 20 PHP
php使用指定字符列表生成随机字符串的方法
Apr 18 PHP
php计算title标题相似比的方法
Jul 29 PHP
PHP附件下载中文名称乱码的解决方法
Dec 17 PHP
php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案
May 31 PHP
PHP中call_user_func_array回调函数的用法示例
Nov 26 PHP
Yii框架创建cronjob定时任务的方法分析
May 23 PHP
PHP实现基于栈的后缀表达式求值功能
Nov 10 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
使用PHP获取网络文件的实现代码
2010/01/01 PHP
在IIS7.0下面配置PHP 5.3.2运行环境的方法
2010/04/13 PHP
PHP校验ISBN码的函数代码
2011/01/17 PHP
PHP保留两位小数并且四舍五入及不四舍五入的方法
2013/09/22 PHP
php数组查找函数总结
2014/11/18 PHP
php生成高清缩略图实例详解
2015/12/07 PHP
PPK 谈 JavaScript 的 this 关键字 [翻译]
2009/09/29 Javascript
禁止js文件缓存的代码
2010/04/09 Javascript
自制轻量级仿jQuery.boxy对话框插件代码
2010/10/26 Javascript
一些主流JS框架中DOMReady事件的实现小结
2011/02/12 Javascript
jquery分析文本里url或邮件地址为真实链接的方法
2015/06/20 Javascript
JavaScript实现广告的关闭与显示效果实例
2015/07/02 Javascript
使用JS实现图片展示瀑布流效果(简单实例)
2016/09/06 Javascript
Vue-router结合transition实现app前进后退动画切换效果的实例
2017/10/11 Javascript
JavaScript登录验证基础教程
2017/11/01 Javascript
vue 利用路由守卫判断是否登录的方法
2018/09/29 Javascript
vue通过video.js解决m3u8视频播放格式的方法
2019/07/30 Javascript
vue-cli在 history模式下的配置详解
2019/11/26 Javascript
Javascript基于OOP实实现探测器功能代码实例
2020/08/26 Javascript
antd-DatePicker组件获取时间值,及相关设置方式
2020/10/27 Javascript
Ant-design-vue Table组件customRow属性的使用说明
2020/10/28 Javascript
[03:22]DSPL第一期精彩集锦:酷炫到底!
2014/11/07 DOTA
在Python中使用poplib模块收取邮件的教程
2015/04/29 Python
详谈Pandas中iloc和loc以及ix的区别
2018/06/08 Python
如何用Python合并lmdb文件
2018/07/02 Python
OpenCV 轮廓检测的实现方法
2019/07/03 Python
python使用yield压平嵌套字典的超简单方法
2019/11/02 Python
如何使用python传入不确定个数参数
2020/02/18 Python
Django之choices选项和富文本编辑器的使用详解
2020/04/01 Python
如何在python中执行另一个py文件
2020/04/30 Python
CSS3中的元素过渡属性transition示例详解
2016/11/30 HTML / CSS
世界读书日的活动方案
2014/08/20 职场文书
中学生关于梦想的演讲稿
2014/08/22 职场文书
发展党员工作情况汇报
2014/10/28 职场文书
2015年化验员工作总结
2015/04/10 职场文书
利用 JavaScript 构建命令行应用
2021/11/17 Javascript