phpで暗号化
RIJNDAELで暗号化を試してみました。
環境に[libmcrypt]を入れる必要があるので、以下よりソースをDL。
■libmcryptをインストールします。
・アーカイブを解凍(/usr/local/src 下にソースを保管)
# tar xvzf libmcrypt-2.5.8.tar.gz |
・コンパイル-インストールします。
# cd libmcrypt-2.5.8 # ./configure --disable-nls --disable-posix-threads # make # make install |
Configureオプションは、PHPとApacheで実行するために必要みたい。お約束として認識。
これで、libmcryptのインストールは終了。
・その前に念のためphp.iniをバックアップ
# cp /usr/local/lib/php.ini /usr/local/lib/php.ini.backup |
・config.status よりConfigureオプションの履歴を参照
# ./configure --with-pear \ # ・ # ・ # ・ # --with-mcrypt |
インストールが完了したら、Apacheを再起動。
※念のため、diffでバックアップしたphp.ini.backと比較した方がいいかも。
また、ZendPlatformを使用している場合は、ZendPlatformも再インストールした方がいいかもです。
して、php_info();で「mcrypt」があることを確認。
mcrypt
mcrypt support | enabled |
---|---|
version | >= 2.4.x |
Supported ciphers | cast-128 gost rijndael-128 twofish arcfour cast-256 loki97 rijndael-192 saferplus wake blowfish-compat des rijndael-256 serpent xtea blowfish enigma rc2 tripledes |
Supported modes | cbc cfb ctr ecb ncfb nofb ofb stream |
Directive | Local Value | Master Value |
---|---|---|
mcrypt.algorithms_dir | no value | no value |
mcrypt.modes_dir | no value | no value |
■最後にソースのサンプル
$key = "shinpu_key"; // 共通鍵 |
もっと詳しく知りたい方は、ココとか参照。
「サルベージュ美智子」って誰やねん!?