PHP加密与解密
2016-01-12 10:25
621 查看
一、不可逆的加密函数为: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)));
相关文章推荐
- [转]TFTP协议详解
- win8.1右键新建菜单添加新建php文件
- tp upload
- 同样遇到PHP 连接SQL2008 查询出现中文乱码问题
- WindowManager.LayoutParams全解
- PHP原生--$_FILES[]['type']的类型
- PHP 类自动加载
- php设计模式详解
- php的一些误解
- php打包成exe
- PHP语言的优点及缺点
- zend中function的声明
- laravel 修改migration属性
- Yii2实现表单客户端验证提示信息出现在指定位置
- 2015最好用的PHP开源建站系统
- atitit.Atitit.检测文本文件的编码 java 与php版 。Net
- atitit.Atitit.检测文本文件的编码 java 与php版 。Net
- atitit.Atitit.检测文本文件的编码 java 与php版 。Net
- zend_execute中op的执行
- Atitit. 数据库-----catalog与schema的设计区别以及在实际中使用 获取数据库所有库表 java jdbc php c#.Net