PHP可逆加密/解密函数分享
前端之家收集整理的这篇文章主要介绍了
PHP可逆加密/解密函数分享,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
函数源码
<div class="codetitle"><a style="CURSOR: pointer" data="40057" class="copybut" id="copybut40057" onclick="doCopy('code40057')"> 代码如下:
<div class="codebody" id="code40057">
function encrypt($data,$key) {
$prep_code = serialize($data);
$block = mcrypt_get_block_size('des','ecb');
if (($pad = $block - (strlen($prep_code) % $block)) < $block) {
$prep_code .= str_repeat(chr($pad),$pad);
}
$encrypt = mcrypt_encrypt(MCRYPT_DES,$key,$prep_code,MCRYPT_MODE_ECB);
return base64_encode($encrypt);
} function decrypt($str,$key) {
$str = base64_decode($str);
$str = mcrypt_decrypt(MCRYPT_DES,$str,MCRYPT_MODE_ECB);
$block = mcrypt_get_block_size('des','ecb');
$pad = ord($str[($len = strlen($str)) - 1]);
if ($pad && $pad < $block && preg_match('/' . chr($pad) . '{' . $pad . '}$/',$str)) {
$str = substr($str,strlen($str) - $pad);
}
return unserialize($str);
}