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

yipeiwu_com7年前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的伪随机数与真随机数详解

首先需要声明的是,计算机不会产生绝对随机的随机数,计算机只能产生“伪随机数”。其实绝对随机的随机数只是一种理想的随机数,即使计算机怎样发展,它也不会产生一串绝对随机的随机数。计算机只能生...

使用php+Ajax实现唯一校验实现代码[简单应用]

使用php+Ajax实现唯一校验实现代码[简单应用]

首先创建一个Ajax类(Ajax类) 然后新建一个文件form.html --------------------------form.html---------------------...

PHP的数组中提高元素查找与元素去重的效率的技巧解析

提高查找数组元素的效率 1.php in_array方法说明 php查找数组元素是否存在,一般会使用in_array方法。 bool in_array ( mixed $needle...

PHP将两个关联数组合并函数提高函数效率

在foreach中循环查询数据代码量比较少,但是性能比较低,好点的解决办法是将id收集起来,用in一次性查询,但是这引发了数据结构不是我们用PHP自带的函数可以合并的,今天测试了一下:...

解析PHP处理换行符的问题 \r\n

一首先说说 \r 与\n的区别回车”(Carriage Return)和“换行”(Line Feed)这两个概念的来历和区别。在计算机还没有出现之前,有一种叫做电传打字机(Teletyp...