Mcrypt拓展的带密钥PHP加密和解密算法

mcrypt的优点不仅仅在于其提供的加密算法较多,在windows下随PHP包一起发布,还在于它可以对数据进行加/解密处理,此外,它还提供了包括DES算法在内的35种处理数据用的函数。

01 /**
02  * Mcrypt 加密/解密
03  * @param type $date 要加密和解密的数据
04  * @param type $key 密钥
05  * @param type $mode  encode 默认为加密/decode 为解密
06  * @return type
07  */
08 function authCrypt($date$key $mode 'encode') {
09     if ($mode == 'decode') {
10         $date base64_decode($date);
11     }
12     if (function_exists('mcrypt_create_iv')) {
13         $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
14         $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
15     }
16     if (isset($iv) && $mode == 'encode') {
17         $passcrypt = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key$date, MCRYPT_MODE_ECB, $iv);
18     elseif (isset($iv) && $mode == 'decode') {
19         $passcrypt = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key$date, MCRYPT_MODE_ECB, $iv);
20     }
21     if ($mode == 'encode') {
22         $passcrypt base64_encode($passcrypt);
23     }
24     return $passcrypt;
25 }
发布了430 篇原创文章 · 获赞 415 · 访问量 925万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览