Maison  >  Article  >  développement back-end  >  详细介绍php开发中加密的几种方法总结(图文)

详细介绍php开发中加密的几种方法总结(图文)

黄舟
黄舟original
2017-03-22 09:46:131601parcourir

这篇文章主要介绍了php 开发中加密的几种方法总结的相关资料,需要的朋友可以参考下

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

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

string crypt(string str[,tring salt])

其中 str是要加密的字符串,salt为加密时使用的干扰串,如果省掉第二个参数,就会随机生成一个干扰串。crypt()函数支持四种算法和长度。具体如下表:
详细介绍php开发中加密的几种方法总结(图文)

示例代码如下:

<?php 

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

?>

运行结果如下:

第一次运行:


详细介绍php开发中加密的几种方法总结(图文) 

第二次运行:


详细介绍php开发中加密的几种方法总结(图文) 

第三次运行的结果:


详细介绍php开发中加密的几种方法总结(图文) 

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

<?php 

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

?>

运行结果如下:


详细介绍php开发中加密的几种方法总结(图文) 

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

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。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn