查看: 1620|回复: 0

[PHP学习] php 开发中加密的几种方法总结

发表于 2018-2-7 08:00:03

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

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

  1. string crypt(string str[,tring salt])
复制代码

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

示例代码如下:

  1. <?php
  2. $str ="I'm jack!!!";
  3. echo "加密前的str为:".$str."<br>";
  4. $cryptStr =crypt($str);
  5. echo "加密后的str为:".$cryptStr."<br>";
  6. ?>
复制代码

运行结果如下:

第一次运行:


这里写图片描述

第二次运行:


这里写图片描述

第三次运行的结果:


这里写图片描述

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

  1. <?php
  2. $str ="I'm jack!!!";
  3. echo "加密前的str为:".$str."<br>";
  4. $cryptStr =crypt($str,"doc");
  5. echo "加密后的str为:".$cryptStr."<br>";
  6. ?>
复制代码

运行结果如下:


这里写图片描述

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

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

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

  1. string md5(string str[,bool raw_ouput])
复制代码

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

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

语法格式如下:

  1. string sha1(string str[,bool,raw_output])
复制代码

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

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

您可能感兴趣的文章:

  • PHP 加密解密内部算法
  • PHP可逆加密/解密函数分享
  • 怎样给PHP源代码加密?PHP二进制加密与解密的解决办法
  • php中AES加密解密的例子小结
  • 当前比较流行的两款PHP加密、解密工具Zend Guard和iconCube介绍
  • PHP中加密解密函数与DES加密解密实例
  • php中base64_decode与base64_encode加密解密函数实例
  • PHP实现加密的几种方式介绍


回复

使用道具 举报