PHP加密解密

来源:互联网 发布:星际皆知你爱我txt 编辑:程序博客网 时间:2024/06/02 03:26

PHP加密和解密函数可以用来加密一些有用的字符串存放在数据库里,并且通过可逆解密字符串,该函数使用了base64和MD5加密和解密。

代码如下:

function encryptDecrypt($key, $string, $decrypt){     if($decrypt){         $decrypted = rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, md5($key), base64_decode($string), MCRYPT_MODE_CBC, md5(md5($key))), "12");         return $decrypted;     }else{         $encrypted = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($key), $string, MCRYPT_MODE_CBC, md5(md5($key))));         return $encrypted;     } }

使用方法如下:

//以下是将字符串“Helloweba欢迎您”分别加密和解密 //加密: echo encryptDecrypt('password', 'Helloweba欢迎您',0); //解密: echo encryptDecrypt('password', 'z0JAx4qMwcF+db5TNbp/xwdUM84snRsXvvpXuaCa4Bk=',1);

文中出现的所有函数:

下面的示例利用 LTrim, RTrim, 和 Trim 函数分别用来除去字符串开始的空格、尾部空格、 开始和尾部空格:Dim MyVar

MyVar = LTrim(" vbscript "),MyVar 包含 "vbscript "MyVar = RTrim(" vbscript "),MyVar 包含 " vbscript"MyVar = Trim(" vbscript "),MyVar 包含 "vbscript"

ltrim(string);用做去字符串开始的空格
rtrim(string);用做去字符串尾部的空格
trim(string);用做去字符串开始和尾部的空格

mcrypt_decrypt 和 MD5(不可逆)是PHP加密的函数

base64_decode
将 BASE64 编码字符串解码。

语法: string base64_decode(string encoded_data);

返回值: 字符串
函数种类: 编码处理
内容说明:本函数将以 MIME BASE64 编码字符串解码。解码后的字符串可能为中文字符串或其它的二进位资料。

mcrypt_encrypt:
将字符串以 BASE64 编码。

语法: string base64_encode(string data);

返回值: 字符串
函数种类: 编码处理
内容说明:本函数将字符串以 MIME BASE64 编码。此编码方式可以让中文字或者图片也能在网络上顺利传输。在 BASE64 编码后的字符串只包含英文字母大小写、阿拉伯数字、加号与反斜线,共 64 个基本字符,不包含其它特殊的字符,因而才取名 BASE64。编码后的字符串比原来的字符串长度再加 1/3 左右。更多的 BASE64 编码信息可以参考 RFC2045 文件之 6.8 节。

1 0
原创粉丝点击