mcrypt の簡単な紹介
PHP プログラマーがコード プログラムを作成するとき、コードの高いパフォーマンスを確保することに加えて、プログラムのセキュリティというもう 1 つの非常に重要な点があります。 PHP には、いくつかの独自の暗号化関数に加えて、より包括的な PHP 暗号化拡張ライブラリ Mcrypt および Mhash もあります。
その中で、Mcrypt 拡張ライブラリは暗号化および復号化機能を実現できます。つまり、平文を暗号化し、暗号文を復元できます。
mcrypt は、PHP の重要な暗号化サポート拡張ライブラリです。Linux 環境では、このライブラリはデフォルトでは有効になっていません。ウィンドウ環境: PHP>=5.3 では、mcrypt 拡張機能がデフォルトで有効になっています。
1. Mcrypt() ライブラリのインストール
mcypt は非常に強力な暗号化アルゴリズム拡張ライブラリです。 Mcrypt は標準の PHP インストール プロセスではインストールされませんが、libmcrypt.dll ファイルは PHP ホーム ディレクトリに含まれているため、PHP 構成ファイルのこの行にある extension=php_mcrypt.dll の前にあるセミコロンを削除するだけで済みます。をクリックし、この拡張ライブラリを使用するためにサーバーを再起動します。
サポートされているアルゴリズムと暗号化モード
Mcrypt ライブラリは、20 を超える暗号化アルゴリズムと 8 つの暗号化モードをサポートしています。特定の暗号化アルゴリズムは、関数 mcrypt_list_algorithms() および mcrypt_list_modes() を通じて表示できます。 [1] Mcrypt でサポートされている暗号化アルゴリズムは次のとおりです。
cast- 128
gost
rijndael-128
twofish
arcfour
cast-256
loki97
rijndael-192
saferplus
wake
blowfish-compat
des
rijndael-256
serpent
xtea
ふぐ
エニグマ
rc2
トリプル
暗号化モード
Mcrypt でサポートされている暗号化モードは次のとおりです:
cbc
cfb
ctr
ecb
ncfb
nofb
ofb
stream
これらのアルゴリズムとモードは、アプリケーション内で定数で表す必要があります。 MCRYPT_ 次の Mcrypt アプリケーションとして表されます
DES アルゴリズムは MCRYPT_DES として表されます;
ECB モードは MCRYPT_MODE_ECB として表されます
";
$str_encrypt = mcrypt_encrypt($cipher,$key,$str,$ modes,$iv); //暗号化関数
echo "暗号化された暗号文: ".$str_encrypt."
";
$str_decrypt = mcrypt_decrypt($cipher,$key,$str_encrypt,$modes,$iv); //復号化関数
echo "Restore:".$str_decrypt;
?>
実行結果:
暗号化されたプレーンテキスト: 私の名前は何ですか?ほとんどの人には言いません!