特にインターネット上で大量のトランザクションが発生し、大量のデータが送信されることを考えると、データ暗号化は私たちの生活においてますます重要になっています。元データに戻す必要のない情報については、MD5やSHA1などの非可逆暗号化アルゴリズムを利用してデータを暗号化できますが、取引情報など元データに戻す必要がある重要な情報については暗号化する必要があります。復元可能な暗号化アルゴリズムを使用します。もちろん、可逆暗号化アルゴリズムを自分で作成して、暗号化と復号化の計算を実行することもできます。この記事では、暗号化および復号化操作のための mcrypt モジュールの使用方法を紹介します。
Mcrypt の利点は、Windows で PHP パッケージとともにリリースされ、多くの暗号化アルゴリズムを提供するだけでなく、使用される DES 関数を含む 35 種類のアルゴリズムも提供することです。データを処理するため。
コードをコピーします コードは次のとおりです:
/**
+------------------------------------------------ -----
* Mcrypt 暗号化/復号化
* @param String $date 暗号化および復号化するデータ
* @param String $mode encode デフォルトは暗号化/デコードは復号化
* @return String
* @author zxing@ 97md.net 2009 年 9 月 14 日月曜日 22:59:28 CST
+---------------------------------- - -----------------
* @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
他のネチズンからのコード
コードをコピーします
コードは次のとおりです: $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); //初期処理
//暗号化 = mcrypt_generic($td, 'これは非常に重要なデータです'); ($td);
//初期復号化処理
mcrypt_generic_init($td, $key, $iv);
//復号化
$decrypted = mdecrypt_generic($td, $encrypted);
mcrypt_generic_deinit($td); );
mcrypt_module_close($ td);
//復号化後、フォローアップがある場合があります。
http://www.bkjia.com/PHPjc/323941.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/323941.html
技術記事
特にインターネット上で大量のトランザクションが発生し、大量のデータが送信されることを考えると、データ暗号化は私たちの生活においてますます重要になっています。元データに戻す必要がない方へ…
声明:この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。