PHP中使用mcrypt拓展的加密算法进行加密解密
2009-11-03 文章来源:互联网 浏览次数:271
- /*
- * 函数功能:加密/解密
- * 函数名称:kakacrypt
- * 参数表 :string date 要加密和解密的数据【, string mode = 'encode' 默认为加密 - 'decode'为解密】
- * 返回值 :string
- * 更新时间:Thu Mar 06 08:30:46 CST 2008
- */
- function kakacrypt($date,$mode = 'encode'){
- $key = md5('kaka');//用MD5哈希生成一个密钥,注意加密和解密的密钥必须统一
- if ($mode == 'decode'){
- $date = base64_decode($date);
- }
- if (function_exists('mcrypt_create_iv')){
- $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
- $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
- }
- if (isset($iv) && $mode == 'encode'){
- $passcrypt = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $date, MCRYPT_MODE_ECB, $iv);
- }elseif (isset($iv) && $mode == 'decode'){
- $passcrypt = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $date, MCRYPT_MODE_ECB, $iv);
- }
- if ($mode == 'encode'){
- $passcrypt = base64_encode($passcrypt);
- }
- return $passcrypt;
- }

文章评论(查看全部)