色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

PHP mcrypt可逆加密算法分析

數據加密在我們生活中的地位已經越來越重要了,尤其是考慮到在網絡上發生的大量交易和傳輸的大量數據。對于不需要還原為原始數據的信息我們可以使用MD5、sha1等不可逆加密算法對數據進行加密處理,但對于交易信息等需要還原為原始數據的重要信息則必須使用可還原的加密算法進行加密了。當然你可以自己寫一個可逆加密的算法進行加密和解密計算。本文中我們介紹的是使用 mcrypt模塊進行加密解密操作。
Mcrypt的優點不僅僅在于其提供的加密算法較多,在windows下隨php包一起發布,還在于它可以對數據進行加/解密處理,此外,它還提供了包括DES算法在內的35種處理數據用的函數。
復制代碼 代碼如下:
/**
+-----------------------------------------------------
* Mcrypt 加密/解密
* @param String $date 要加密和解密的數據
* @param String $mode encode 默認為加密/decode 為解密
* @return String
* @author zxing@97md.NET Mon Sep 14 22:59:28 CST 2009
+-----------------------------------------------------
* @example
*/
function ZxingCrypt($date,$mode = 'encode'){
$key = md5('zxing');//用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;
}

別的網友的代碼
復制代碼 代碼如下:
<?php
$td = mcrypt_module_open(MCRYPT_DES,'','ecb',''); //使用MCRYPT_DES算法,ecb模式
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
$ks = mcrypt_enc_get_key_size($td);
$key = "ery secret key";//密鑰
$key = substr(md5($key), 0, $ks);
mcrypt_generic_init($td, $key, $iv); //初始處理
//加密
$encrypted = mcrypt_generic($td, 'This is very important data');
//結束處理
mcrypt_generic_deinit($td);
//初始解密處理
mcrypt_generic_init($td, $key, $iv);
//解密
$decrypted = mdecrypt_generic($td, $encrypted);
//結束
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
//解密后,可能會有后續的/0,需去掉
echo trim($decrypted) . "/n";
?>

php技術PHP mcrypt可逆加密算法分析,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 隆安县| 安吉县| 荥经县| 芷江| 利辛县| 东山县| 丹巴县| 南溪县| 托里县| 宜昌市| 青岛市| 昭通市| 泽普县| 且末县| 伊通| 个旧市| 常德市| 梁山县| 大庆市| 丹巴县| 罗甸县| 莱西市| 西城区| 平原县| 日照市| 临泽县| 泗阳县| 中卫市| 察雅县| 阿坝县| 深水埗区| 文化| 濮阳市| 珠海市| 洪泽县| 内乡县| 政和县| 黔西县| 曲水县| 乌鲁木齐市| 天津市|