有時候我們不想讓,一個網頁地址給人看到,簡單的方法就是將它加密成一串字符,函數如下:
function encrypt($key, $plain_text) {
$plain_text = trim($plain_text);
$iv = substr(md5($key), 0,mcrypt_get_iv_size(MCRYPT_CAST_256,MCRYPT_MODE_CFB));
$c_t = mcrypt_cfb (MCRYPT_CAST_256, $key, $plain_text, MCRYPT_ENCRYPT, $iv);
return trim(chop(base64_encode($c_t)));
}
$key可以隨使設個字符串,$plain_text為想要加密的字符串。與之對應的解密函數:
function decrypt($key, $c_t) {
$c_t = trim(chop(base64_decode($c_t)));
$iv = substr(md5($key), 0,mcrypt_get_iv_size (MCRYPT_CAST_256,MCRYPT_MODE_CFB));
$p_t = mcrypt_cfb (MCRYPT_CAST_256, $key, $c_t, MCRYPT_DECRYPT, $iv);
return trim(chop($p_t));
}
$plain_text為想要解密的字符串;
注意事項:如果用url將加密的字符串作為參數傳遞,要使用URLEncode()函數將其加密,否則用decrypt($key, $c_t)函數解密獲得的參數將得不到原來的字符串。