PHP常见加密函数用法示例【crypt与md5】


Posted in PHP onJanuary 27, 2019

本文实例讲述了PHP常见加密函数用法。分享给大家供大家参考,具体如下:

1.crypt()函数

crypt()函数用于返回使用DES、Blowfish或MD5算法加密过后的字符串,crypt(str,salt)接受2个参数,第1个为需要加密的字符串,第2个为盐值(加密干扰值,如果没有提供,则默认由PHP自动生成),返回的字符串为散列的字符串或者是一个少于13个字符的字符串;

<?php
//使用crypt()函数进行加密
$password = '3water.com';
//没有提供盐值
echo "加密前:".$password;
echo "加密后(无盐值):".crypt($password);
echo "<hr>";
//提供盐值
$salt = "good";
echo "加密后(有盐值):".crypt($password,$salt);
?>

加密的字符串为“3water.com”:

第一次:

PHP常见加密函数用法示例【crypt与md5】

刷新后:

PHP常见加密函数用法示例【crypt与md5】

总结:通过刷新前与刷新后可以发现,crypt()函数如果没有盐值加密后的字符串的第2个$与第3个$之间的字符串的8个字符串是由PHP自动生成的,每刷新一次就变一次;crypt()函数如果定义了盐值后,只会截取盐值的前2位添加在加密后的字符串前且加密后的字符串是不变的。

注意:crypt()函数是一种单向算法,没有相应的解密函数。PHP添加盐值默认使用DES加密,如果salt这个字符串以$1$开头,以$结尾则是MD5加密,只会截取盐值的前八位添加在加密后的字符串前。

PHP常见加密函数用法示例【crypt与md5】

PHP常见加密函数用法示例【crypt与md5】

2.md5()函数

MD5函数格式:md5(string),返回一个32位的字符串,且MD5加密对于大小写敏感;MD5加密主要应用在校验网站用户密码上,用户注册时的密码经过MD5计算后存入数据库,当用户登录时,再把用户输入的密码经过MD5计算后与数据库中经过MD5加密的字符串进行比较。

<?php
//使用md5()函数进行加密
$password = '3water.com';
echo "加密前:".$password;
echo "<hr>";
echo "MD5加密后:".md5($password);
?>

结果如下:

PHP常见加密函数用法示例【crypt与md5】

PHP 相关文章推荐
echo(),print(),print_r()之间的区别?
Nov 19 PHP
如何使用PHP往windows中添加用户
Dec 06 PHP
Win2003服务器安全加固设置--进一步提高服务器安全性
May 23 PHP
php 时间计算问题小结
Jan 04 PHP
PHPMyadmin 配置文件详解(配置)
Dec 03 PHP
hessian 在PHP中的使用介绍
Dec 13 PHP
PHP中利用substr_replace将指定两位置之间的字符替换为*号
Jan 27 PHP
PHP下通过file_get_contents的代理使用方法
Feb 16 PHP
使用Apache的htaccess防止图片被盗链的解决方法
Apr 27 PHP
深入解析PHP垃圾回收机制对内存泄露的处理
Jun 14 PHP
php版淘宝网查询商品接口代码示例
Jun 17 PHP
PHP mysql事务问题实例分析
Jan 18 PHP
PHP基于GD2函数库实现验证码功能示例
Jan 27 #PHP
PHP的PDO事务与自动提交
Jan 24 #PHP
PHP的PDO连接讲解
Jan 24 #PHP
PHP的PDO预定义常量讲解
Jan 24 #PHP
PHP的mysqli_thread_id()函数讲解
Jan 24 #PHP
PHP的mysqli_stmt_init()函数讲解
Jan 24 #PHP
详解php伪造Referer请求反盗链资源
Jan 24 #PHP
You might like
PHP基于mssql扩展远程连接MSSQL的简单实现方法
2016/10/08 PHP
PHP页面静态化――纯静态与伪静态用法详解
2020/06/05 PHP
JS面向对象编程浅析
2011/08/28 Javascript
passwordStrength 基于jquery的密码强度检测代码使用介绍
2011/10/08 Javascript
百度地图api应用标注地理位置信息(js版)
2013/02/01 Javascript
jQuery在iframe中无法弹出对话框的解决方法
2014/01/12 Javascript
JS文本获得焦点清除文本文字的示例代码
2014/01/13 Javascript
jQuery on()方法使用技巧详解
2015/04/16 Javascript
Javascript删除指定元素节点的方法
2016/06/21 Javascript
JavaScript实现类似淘宝的购物车效果
2017/03/16 Javascript
Vue Ajax跨域请求实例详解
2017/06/20 Javascript
HTML5开发Kinect体感游戏的实例应用
2017/09/18 Javascript
Angular实现较为复杂的表格过滤,删除功能示例
2017/12/23 Javascript
在vue项目中,使用axios跨域处理
2018/03/07 Javascript
基于rollup的组件库打包体积优化小结
2018/06/18 Javascript
微信小程序实现动态显示和隐藏某个控件功能示例
2018/12/14 Javascript
koa大型web项目中使用路由装饰器的方法示例
2019/04/02 Javascript
JavaScript正则表达式验证登录实例
2020/03/18 Javascript
Python中的引用和拷贝浅析
2014/11/22 Python
python中as用法实例分析
2015/04/30 Python
Python 中 list 的各项操作技巧
2017/04/13 Python
一篇文章读懂Python赋值与拷贝
2018/04/19 Python
django session完成状态保持的方法
2018/11/27 Python
Python中实现输入一个整数的案例
2020/05/03 Python
python 爬取免费简历模板网站的示例
2020/09/27 Python
英国在线女鞋目的地:SIMMI
2018/12/27 全球购物
TCP/IP的分层模型
2013/10/27 面试题
公证书样本
2014/04/10 职场文书
体育系毕业生求职自荐信
2014/04/16 职场文书
松材线虫病防治方案
2014/06/15 职场文书
南京导游词
2015/02/03 职场文书
赤壁观后感(2)
2015/06/15 职场文书
写作之关于描写老人的好段摘抄
2019/11/14 职场文书
送给自己的励志语句:要安静的优秀,悄无声息的坚强
2019/11/26 职场文书
利用Python判断你的密码难度等级
2021/06/02 Python
解决MySQL报“too many connections“错误
2022/04/19 MySQL