php用户名的密码加密更安全的方法


Posted in PHP onJune 21, 2019

php中对用户密码的加密主要有两种方法,一种是利用md5加密,另一种是利用password_hash加密,两种方法中后一种的方法比前一种方法安全很多,几乎不能被黑客破解,但php版本必须在5.5以上。下面介绍两种加密方法如何加密才更安全。

新建一个PHP文件,命名为test.php。

php用户名的密码加密更安全的方法

利用md5加密。为了更加安全,可以给用户密码加上随机字符串再使用md5加密,产生随机字符串的函数如下:

php用户名的密码加密更安全的方法

假如用户的密码$password为123456,则可以把123456加上随机字符串传入md5函数中进行加密。随机字符串和用户密码都存储在数据库中,当解密的时候可以使用进行判断密码是否正确。

php用户名的密码加密更安全的方法

1、/4PHP版本在5.5以上的更安全的加密方式

新建一个php文件,命名为test2.php

php用户名的密码加密更安全的方法

使用password_hash()方法对密码进行加密,这是目前PHP最为安全的加密方式。假如用户密码为123456,加密方式如下:

php用户名的密码加密更安全的方法

由上面代码可见,加密的过程是很简单的,由于使用 bcrypt 算法,密码会随着PHP版本的不同,长度也会不同。因此,数据库里储存密码的字段最好是255个字符,可以避免出错。

php用户名的密码加密更安全的方法

password_hash解密的方式是通过password_verify()方法来解密的,假如数据库存储的密码为$db_password,则解密方法如下:

php用户名的密码加密更安全的方法

PHP 相关文章推荐
在PHP中使用模板的方法
May 24 PHP
用Php编写注册后Email激活验证的实例代码
Mar 11 PHP
关于PHP session 存储方式的详细介绍
Jun 25 PHP
php中sql注入漏洞示例 sql注入漏洞修复
Jan 24 PHP
PHP网站开发中常用的8个小技巧
Feb 13 PHP
php中array_multisort对多维数组排序的方法
Jun 21 PHP
php版微信返回用户text输入的方法
Nov 14 PHP
Thinkphp 中 distinct 的用法解析
Dec 14 PHP
PHP实现求解最长公共子串问题的方法
Nov 17 PHP
关于 Laravel Redis 多个进程同时取队列问题详解
Dec 25 PHP
PHP如何开启Opcache功能提升程序处理效率
Apr 27 PHP
PHP code 验证码生成类定义和简单使用示例
May 27 PHP
php常用字符串查找函数strstr()与strpos()实例分析
Jun 21 #PHP
php精度计算的问题解析
Jun 21 #PHP
laravel异步监控定时调度器实例详解
Jun 21 #PHP
apache集成php7.3.5的详细步骤
Jun 20 #PHP
PHP基础之输出缓冲区基本概念、原理分析
Jun 19 #PHP
PHP进阶学习之Geo的地图定位算法详解
Jun 19 #PHP
PHP进阶学习之依赖注入与Ioc容器详解
Jun 19 #PHP
You might like
PHP中使用memcache存储session的三种配置方法
2014/04/05 PHP
PHP数组中头部和尾部添加元素的方法(array_unshift,array_push)
2017/04/10 PHP
PHP+swoole+linux实现系统监控和性能优化操作示例
2019/04/15 PHP
用javascript编写的第一人称射击游戏
2007/02/25 Javascript
javascript之dhDataGrid Ver2.0.0代码
2007/07/01 Javascript
javaScript 读取和设置文档元素的样式属性
2009/04/14 Javascript
js判断undefined类型,undefined,null, 的区别详细解析
2013/12/16 Javascript
js中switch case循环实例代码
2013/12/30 Javascript
javascript与Python快速排序实例对比
2015/08/10 Javascript
Node.js 应用跑得更快 10 个技巧
2016/04/03 Javascript
jQuery.form插件的使用及跨域异步上传文件
2016/04/27 Javascript
bootstrap监听滚动实现头部跟随滚动
2016/11/08 Javascript
Angularjs 动态改变title标题(兼容ios)
2016/12/29 Javascript
es6 字符串String的扩展(实例讲解)
2017/08/03 Javascript
微信小程序实现左滑动删除效果
2020/03/30 Javascript
Vue两种组件类型:递归组件和动态组件的用法
2020/08/06 Javascript
js实现车辆管理系统
2020/08/26 Javascript
[03:30]DOTA2完美“圣”典精彩集锦
2016/12/27 DOTA
使用python将mdb数据库文件导入postgresql数据库示例
2014/02/17 Python
Python使用urllib2模块抓取HTML页面资源的实例分享
2016/05/03 Python
Python爬取成语接龙类网站
2018/10/19 Python
python利用多种方式来统计词频(单词个数)
2019/05/27 Python
django-初始配置(纯手写)详解
2019/07/30 Python
python多线程实现同时执行两个while循环的操作
2020/05/02 Python
Python函数参数定义及传递方式解析
2020/06/10 Python
python数据抓取3种方法总结
2021/02/07 Python
adidas旗下高尔夫装备供应商:TaylorMade Golf(泰勒梅高尔夫)
2016/08/28 全球购物
Coltorti Boutique官网:来自意大利的设计师品牌买手店
2018/11/09 全球购物
美国购买肉、鸭、家禽、鹅肝和熟食网站:D’Artagnan
2018/11/13 全球购物
Europcar比利时:租车
2019/08/26 全球购物
开学季活动策划方案
2014/02/28 职场文书
大学生社团活动总结
2014/04/26 职场文书
2014最新房贷收入证明范本
2014/09/12 职场文书
大学毕业生自我评价
2015/03/02 职场文书
售后服务质量承诺书
2015/04/29 职场文书
励志语录:只有自己足够强大,才能不被别人践踏
2020/01/09 职场文书