php 开发中加密的几种方法总结

yipeiwu_com6年前PHP代码库

1,使用crypt()函数进行加密

crypt()函数可以进行单项加密,具体语法如下:

string crypt(string str[,tring salt]) 

其中 str是要加密的字符串,salt为加密时使用的干扰串,如果省掉第二个参数,就会随机生成一个干扰串。crypt()函数支持四种算法和长度。具体如下表:
这里写图片描述

示例代码如下:

<?php 

$str ="I'm jack!!!";
echo "加密前的str为:".$str."<br>";
$cryptStr =crypt($str);
echo "加密后的str为:".$cryptStr."<br>";

?>

运行结果如下:

第一次运行:


这里写图片描述 

第二次运行:


这里写图片描述 

第三次运行的结果:


这里写图片描述 

可以看到每次加密后的结果都不一样。那么该如何判断加密后的字符串呢,这个时候你会发现salt就该派上用场了。哈哈。下面我们通过一段代码来演示下:

<?php 

$str ="I'm jack!!!";
echo "加密前的str为:".$str."<br>";
$cryptStr =crypt($str,"doc");
echo "加密后的str为:".$cryptStr."<br>";

?>

运行结果如下:


这里写图片描述 

你会发现无论运行多少次加密串是不变的,这样我们就可以判断加密后的字符串了。

2,使用md5()函数进行加密

md5()函数使用MD5算法。语法格式如下:

string md5(string str[,bool raw_ouput]) 

其中str为要加密的明文,raw_output参数如果设置为true,则返回一个二进制的密文,默认为false。

3,使用sha1()函数进行加密

语法格式如下:

string sha1(string str[,bool,raw_output]) 

str为要加密的明文,raw_output如果为true,那么返回一个20位的二进制数。默认raw_output为false。

感谢阅读, 希望能帮助到大家,谢谢大家对本站的支持!

相关文章

PHP中用正则表达式清除字符串的空白

如果您想要去掉字符串开始和结束的空白可以使用PHP内部函数trim() 。但是, 我们经常想完全清除空白。需要把开始和结束的空白清除掉,将多个空白变为一个空白,使用一个规则来处理同样的类...

基于PHP导出Excel的小经验 完美解决乱码问题

我在PHP项目里要求把数据导出为Excel,并且数据中包含中文.网上大概了解一下可是使用PHPExcel,可是相对我的需求,这个框架太复杂了.于是还是想找找简单做法.网上发现其实最简单可...

PHP表单验证的3个函数ISSET()、empty()、is_numeric()的使用方法

ISSET();——适合于检测是否存在这个参数。 定义和作用范围:用于测试一个变量是否具有值(包括0,FALSE,或者一个空字串,但不能是NULL),即:“http://localhos...

php实现插入排序

<?php /** * 插入排序 * @param Array $a 无序集合 * @return Array 有序集合 */ function insertS...

如何使用PHP往windows中添加用户

方法有一:   因为添加用户,所以你运行PHP程序的用户必须是管理员权限(Administrator),并且同时需要你的php.ini中的安全模式没有打开,并且关闭函...