首页 >后端开发 >php教程 >如何给PHP代码加密?php加密算法的介绍

如何给PHP代码加密?php加密算法的介绍

不言
不言原创
2018-07-24 17:17:354495浏览

php加密算法是用来给php代码加密的,那么php加密算法究竟有哪些呢?这篇文章我将给大家分享几种php加密算法,接下来我们就来具体看看文章中所说的内容。

1.Md5()加密算法——单向加密,不能解密

语法:String md5(string $str,$raw=false),

$str:必需。规定要计算的字符串,

$raw:可选。规定十六进制或二进制输出格式:

  • TRUE - 原始 16 字符二进制格式

  • FALSE - 默认。32 字符十六进制数

返回值:如果成功则返回已计算的MD5散列,如果失败则返回FALSE

2.Crypt()加密算法——同样是单向加密

语法:string crypt(string $str,string,$salt),

$str:必需。规定要计算的字符串,

$salt可选。用于增加被编码字符数目的字符串,以使编码更加安全。如果未提供 salt 参数,则每次调用该函数时 PHP 会随机生成一个。

返回值:返回一个基于标准UNIX DES算法或系统上其他可用的代替算法的散列字符串

例子:1.crypt('zhangsan');--输出 $1$aX3.sX0.$PcFaGWCv51UNO.1eIvMpy0(最前边的$1$aX3.sX0.$为随机给的字符串)

           2.crypt('zhangsan','we');--输出 weGSA6nisE59k(“we”是不变的)

支持的多种PHP设置的算法:

3.Sha1()加密算法(单向加密)

语法:String sha1(string $str,$raw_output=false),

$str :加密的字符串

$raw_output:如果可选的raw_output 参数被设置为TRUE,那么 sha1 摘要将以 20 字符长度的原始格式返回,否则返回值是一个 40 字符长度的十六进制数字。

返回值:sha1散列值字符串

注意:同md5一样 百度上边部分解密网站是可以参照他提前录好的密文与咱们输入的密文进行比较,从而得到明文,但不是真正意义的破解,进行多次加密可以预防这个事情的发生。

4.URL编码加密算法——双向

一、urlencode(string $str):编码URL字符串,$str:要编码的字符串 返回值:返回编码后的字符串

编码规范:此字符串中出来-_.之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+)

常用的字符被编码后,括号里代表编码后的格式:?(%3F),=(%3D),空格(+),%(%25),&(%26),\(%5C),+(%2B)  

二、urldecode(string $str):解码已编码的URL字符串,$str:要解码的字符串 返回值:返回解码后的字符串

注意:rawurlencode编码 rawurldecode解码 跟上边的urlencode urldecode 道理及用法完全相同,唯一的区别:rawurlencode把空格编码成%20

5.Base64编码加密技术——双向

一、base64_encode(string $data):使用base64对data进行编码

二、base64_decode(string $data,$strict=false):对使用base64编码的数据进行解码,$strict如果输入的数据超过了base64字母表,则返回false

总结:大致的加密技术可以分为以下三种

1.单向散列加密

2.对称散列加密

3.非对称散列加密

相关推荐:

php用户密码加密算法解析

php加密与解密的方法

以上是如何给PHP代码加密?php加密算法的介绍的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn