PHP加密函数有几种,简单的用法是怎样的
Admin 2022-07-11 群英技术资讯 286 次浏览
本文实例讲述了PHP常见加密函数用法。分享给大家供大家参考,具体如下:
1.crypt()函数
crypt()
函数用于返回使用DES、Blowfish或MD5算法加密过后的字符串,crypt(str,salt)接受2个参数,第1个为需要加密的字符串,第2个为盐值(加密干扰值,如果没有提供,则默认由PHP自动生成),返回的字符串为散列的字符串或者是一个少于13个字符的字符串;
<?php //使用crypt()函数进行加密 $password = 'jb51.net'; //没有提供盐值 echo "加密前:".$password; echo "加密后(无盐值):".crypt($password); echo "<hr>"; //提供盐值 $salt = "good"; echo "加密后(有盐值):".crypt($password,$salt); ?>
加密的字符串为“jb51.net”:
第一次:
刷新后:
总结:通过刷新前与刷新后可以发现,crypt()
函数如果没有盐值加密后的字符串的第2个$与第3个$之间的字符串的8个字符串是由PHP自动生成的,每刷新一次就变一次;crypt()
函数如果定义了盐值后,只会截取盐值的前2位添加在加密后的字符串前且加密后的字符串是不变的。
注意:crypt()
函数是一种单向算法,没有相应的解密函数。PHP添加盐值默认使用DES加密,如果salt这个字符串以$1$开头,以$结尾则是MD5加密,只会截取盐值的前八位添加在加密后的字符串前。
2.md5()函数
MD5函数格式:md5(string)
,返回一个32位的字符串,且MD5加密对于大小写敏感;MD5加密主要应用在校验网站用户密码上,用户注册时的密码经过MD5计算后存入数据库,当用户登录时,再把用户输入的密码经过MD5计算后与数据库中经过MD5加密的字符串进行比较。
<?php //使用md5()函数进行加密 $password = 'jb51.net'; echo "加密前:".$password; echo "<hr>"; echo "MD5加密后:".md5($password); ?>
结果如下:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
今天小编就为大家分享一篇laravel 之 Eloquent 模型修改器和序列化示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
当一个生成器函数被第一次调用,会返回一个内部Generator类的对象.这个对象以和前台迭代器对象几乎同样的方式实现了Iterator 接口。Generator 类中的大部分方法和Itera...
这篇文章主要介绍了详解no input file specified 三种解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
本篇文章给大家带来了关于laravel的相关知识,其中主要介绍了怎样通过造一个laravel漏洞来讲解sql盲注原理,所谓的盲注就是在服务器没有错误回显的时候完成的注入攻击,下面一起来看一下,希望对大家有帮助。
本文实例讲述了CI框架简单分页类用法。分享给大家供大家参考,具体如下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008