手机
当前位置:查字典教程网 >编程开发 >php教程 >PHP可逆加密/解密函数分享
PHP可逆加密/解密函数分享
摘要:函数源码复制代码代码如下:functionencrypt($data,$key){$prep_code=serialize($data);$...

函数源码

复制代码 代码如下:

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, $key, $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, 0, strlen($str) - $pad);

}

return unserialize($str);

}

调用函数

复制代码 代码如下:

$key = 'okyo.cn';

$data = array('id' => 100, 'username' => 'customer', 'password' => 'e10adc3949ba59abbe56e057f20f883e');

$snarr = serialize($data);

$en = encrypt($data, $key);

$de = decrypt($en, $key);

echo "加密原型:";

print_r($data);

echo "

密钥:$key

加密结果:$en

解密结果:";

print_r($de);

【PHP可逆加密/解密函数分享】相关文章:

PHP加密解密字符串汇总

PHP验证信用卡卡号是否正确函数

PHP SPL标准库中的常用函数介绍

PHP session文件独占锁引起阻塞问题解决方法

PHP和JAVA的XML-RPC中文问题解决办法

一段php加密解密的代码

PHP图像处理类库及演示分享

PHP递归调用数组值并用其执行指定函数的方法

用PHP来写记数器(详细介绍)

php生成随机密码的自定义函数

精品推荐
分类导航