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+SqlServer实现分页显示
Oct 09 PHP
留言板翻页的实现详解
Oct 09 PHP
php桌面中心(三) 修改数据库
Mar 11 PHP
phplock(php进程锁) v1.0 beta1
Nov 24 PHP
php缓存技术详细总结
Aug 07 PHP
php中生成随机密码的自定义函数代码
Oct 21 PHP
PHP计算指定日期所在周的开始和结束日期的方法
Mar 24 PHP
正确的PHP匹配UTF-8中文的正则表达式
May 13 PHP
php构造方法中析构方法在继承中的表现
Apr 12 PHP
php运行报错Call to undefined function curl_init()的最新解决方法
Nov 20 PHP
laravel 配置路由 api和web定义的路由的区别详解
Sep 03 PHP
在laravel中实现将查询的对象转换为多维数组的函数
Oct 21 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微信分享开发详解
2017/01/14 PHP
阿里云Win2016安装Apache和PHP环境图文教程
2018/03/11 PHP
JavaScript 定义function的三种方式小结
2009/10/16 Javascript
JS画线(实例代码)
2013/11/20 Javascript
javascript得到当前页的来路即前一页地址的方法
2014/02/18 Javascript
jq实现酷炫的鼠标经过图片翻滚效果
2014/03/12 Javascript
js Dialog 去掉右上角的X关闭功能
2014/04/23 Javascript
使用GruntJS构建Web程序之合并压缩篇
2014/06/06 Javascript
js中的caller和callee属性介绍和例子
2014/06/07 Javascript
jquery操作checkbox示例分享
2014/07/21 Javascript
前端必备神器 Snap.svg 弹动效果
2014/11/10 Javascript
JS中处理时间之setUTCMinutes()方法的使用
2015/06/12 Javascript
js实现仿京东2级菜单效果(带延时功能)
2015/08/27 Javascript
深入浅析Vue组件开发
2016/11/25 Javascript
浅析JavaScript中break、continue和return的区别
2016/11/30 Javascript
Vue底层实现原理总结
2018/02/17 Javascript
vue中使用sessionStorage记住密码功能
2018/07/24 Javascript
JavaScript引用类型Object常见用法实例分析
2018/08/08 Javascript
angular 实现下拉列表组件的示例代码
2019/03/09 Javascript
JavaScript动态添加数据到表单并提交的几种方式
2019/06/26 Javascript
Vue是怎么渲染template内的标签内容的
2020/06/05 Javascript
Python使用稀疏矩阵节省内存实例
2014/06/27 Python
python计算方程式根的方法
2015/05/07 Python
Python3实战之爬虫抓取网易云音乐的热门评论
2017/10/09 Python
flask框架jinja2模板与模板继承实例分析
2019/08/01 Python
如何在python中写hive脚本
2019/11/08 Python
Python字符串格式化f-string多种功能实现
2020/05/07 Python
ColourPop美国官网:卡拉泡泡,洛杉矶彩妆品牌
2019/04/28 全球购物
新加坡鲜花速递/新加坡网上花店:Ferns N Petals
2020/08/29 全球购物
迟到检讨书300字
2014/02/14 职场文书
十八届三中全会学习方案
2014/02/16 职场文书
个人先进事迹材料范文
2014/12/29 职场文书
趵突泉导游词
2015/02/03 职场文书
十月围城观后感
2015/06/08 职场文书
男方家长婚礼致辞
2015/07/27 职场文书
springboot中rabbitmq实现消息可靠性机制详解
2021/09/25 Java/Android