PHP加密与解密
作者:互联网
一、不可逆的加密函数为:md5()、crypt()
md5() 用来计算 MD5 哈稀。语法为:string md5(string str);
crypt() 将字符串用 UNIX 的标准加密 DES 模块加密。这是单向的加密函数,无法解密。欲比对字符串,将已加密的字符串的头二个字符放在 salt 的参数中,再比对加密后的字符串。语法为:string crypt(string str, string [salt]);
二、可逆转的加密为:base64_encode()、urlencode() 相对应的解密函数:base64_decode() 、urldecode()
base64_encode() 将字符串以 MIME BASE64 编码。此编码方式可以让中文字或者图片也能在网络上顺利传输。语法为string base64_encode(string data); 它的解密函数为:string base64_decode(string encoded_data); 将复回原样
urlencode() 将字符串以 URL 编码。例如空格就会变成加号。语法为:string urlencode(string str);
它的解密函数为:string urldecode(string str); 将复回原样
看段代码:
复制代码 代码如下:
输出的结果为:
md5 加密后的结果为:ea796af15c74e90faeba49576fa7984b
crypt加密后的结果为:墨ylCzgTtYXPs
base64_encode加密后的结果为:xKu9ow==
base64_decode解密后的结果为:墨剑
urlencode加密后的结果为:%C4%AB%BD%A3
urldecode解密后的结果为:墨剑
注:加号处理:str_replace('+', '%2b', base64_encode(serialize($string)));
md5() 用来计算 MD5 哈稀。语法为:string md5(string str);
crypt() 将字符串用 UNIX 的标准加密 DES 模块加密。这是单向的加密函数,无法解密。欲比对字符串,将已加密的字符串的头二个字符放在 salt 的参数中,再比对加密后的字符串。语法为:string crypt(string str, string [salt]);
二、可逆转的加密为:base64_encode()、urlencode() 相对应的解密函数:base64_decode() 、urldecode()
base64_encode() 将字符串以 MIME BASE64 编码。此编码方式可以让中文字或者图片也能在网络上顺利传输。语法为string base64_encode(string data); 它的解密函数为:string base64_decode(string encoded_data); 将复回原样
urlencode() 将字符串以 URL 编码。例如空格就会变成加号。语法为:string urlencode(string str);
它的解密函数为:string urldecode(string str); 将复回原样
看段代码:
复制代码 代码如下:
<?php
define("str","墨剑");
echo 'md5 加密后的结果为:'.md5(str).'<br>';//md5 加密
echo 'crypt加密后的结果为:'.crypt(str,str).'<br>';// crypt加密
$base64encode=base64_encode(str);// base64_encode() 加密
echo 'base64_encode加密后的结果为:'.$base64encode.'<br>';
echo 'base64_decode解密后的结果为:'.base64_decode($base64encode).'<br>'; //base64_decode()解密
$urlencode=urlencode(str); //urlencode() 加密
echo 'urlencode加密后的结果为:'.$urlencode.'<br>';
echo 'urldecode解密后的结果为:'.urldecode($urlencode).'<br>';//urldecode() 解密
?>
输出的结果为:
md5 加密后的结果为:ea796af15c74e90faeba49576fa7984b
crypt加密后的结果为:墨ylCzgTtYXPs
base64_encode加密后的结果为:xKu9ow==
base64_decode解密后的结果为:墨剑
urlencode加密后的结果为:%C4%AB%BD%A3
urldecode解密后的结果为:墨剑
注:加号处理:str_replace('+', '%2b', base64_encode(serialize($string)));
标签:urlencode,加密,string,base64,解密,str,PHP 来源: https://blog.51cto.com/libinblog/2977162