php自带的加密函数不可逆加密函数为:md5(),crypt()md5()用于计算MD5哈希。语法是:stringmd5(stringstr);crypt()使用UNIX的标准加密DES模块对字符串进行加密。这是一种单向加密函数,无法解密。比较字符串,将加密字符串的前两个字符放在salt参数中,然后比较加密字符串。语法是:stringcrypt(stringstr,string[salt]);可逆加密为:base64_encode(),urlencode()对应的解密函数:base64_decode(),urldecode()base64_encode()将字符串转为MIMEBASE64编码。这种编码方式可以使汉字或图片在网络上顺利传输。语法为stringbase64_encode(stringdata);其解密函数为:stringbase64_decode(stringencoded_data);它会回到原来的样子。urlencode()对字符串进行URL编码。例如,空格变成加号。语法是:stringurlencode(stringstr);其解密函数为:stringurldecode(stringstr);恢复原状看下面的实现案例①第一个加解密算法②第二种加密解密算法:$nh=兰德(0,64);$ch=$字符[$nh];$mdKey=md5($key.$ch);$mdKey=substr($mdKey,$nh%8,$nh%8+7);$txt=base64_encode($txt);$tmp='';$i=0;$j=0;$k=0;对于($i=0;$i
";?>⑤第五种加解密算法:discuz中使用的加解密算法有时候在项目中,我们需要使用PHP对特定的信息进行加密,即通过加密算法生成一个加密的字符串,加密后的字符串可以通过解密算法,方便程序对解密后的信息进行处理。最常见的应用是在用户登录和一些API数据交换场景。最常见的应用是用户登录和一些API数据交换场景。加解密的原理一般是通过一定的加解密算法,在算法中加入密钥,最终得到加解密结果。0)&&substr($result,10,16)==substr(md5(substr($result,26).$keyb),0,16)){返回substr($result,26);}else{返回'';}}else{//将动态密钥保存在密文中,这就是为什么相同的明文产生不同的密文后才能解密的原因//因为加密后的密文可能包含一些特殊字符,复制过程中可能会丢失,所以使用base64编码return$keyc.str_replace('=','',base64_encode($result));}}$str='abcdef';$key='www.helloba.com';echoauthcode($str,'ENCODE',$key,0);//加密$str='56f4yER1DI2WTzWMqsfPpS9hwyoJnFP2MpC8SOhRrxO7BOk';echoauthcode($str,'DECODE',$key,0);//解密?>⑥第六种加解密算法:
