欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP可逆加密/解密函數(shù)分享

 更新時(shí)間:2012年09月25日 22:58:40   作者:  
很多項(xiàng)目的會(huì)員系統(tǒng),都要求要有記住登錄功能,在通過cookies實(shí)現(xiàn)功能是,由于要將客戶信息直接保存到cookies,如果直接寫入cookies勢(shì)必會(huì)帶來安全隱患,因此通過可逆加密后再保存到cookies相對(duì)就安全了
函數(shù)源碼
復(fù)制代碼 代碼如下:

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);
}

調(diào)用函數(shù)
復(fù)制代碼 代碼如下:

$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

加密結(jié)果:$en

解密結(jié)果:";
print_r($de);

相關(guān)文章

最新評(píng)論