array (
0 => 'index.php',
1 => 'PHP Manual',
),
'head' =>
array (
0 => 'UTF-8',
1 => 'ja',
),
'this' =>
array (
0 => 'mcrypt.ciphers.php',
1 => 'Mcrypt 暗号',
),
'up' =>
array (
0 => 'book.mcrypt.php',
1 => 'Mcrypt',
),
'prev' =>
array (
0 => 'mcrypt.constants.php',
1 => '定義済み定数',
),
'next' =>
array (
0 => 'ref.mcrypt.php',
1 => 'Mcrypt 関数',
),
'alternatives' =>
array (
),
'source' =>
array (
'lang' => 'ja',
'path' => 'reference/mcrypt/ciphers.xml',
),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);
?>
Mcrypt 暗号
以下に、mcrypt 拡張モジュールにより現在サポートされている暗号のリストを
示します。サポートされる暗号の完全なリストについては、
mcrypt.h の最後にある define を参照ください。
mcrypt-2.2.x API に関する一般的な規則は、
MCRYPT_暗号名で PHP から暗号をアクセス可能であるということです。
mcrypt-2.4.x および mcrypt-2.5.x の API についてもこれらの定数は
使用できますが、mcrypt_module_open() を
コールする際に文字列で暗号名を指定することも可能です。
- MCRYPT_3DES
- MCRYPT_ARCFOUR_IV (libmcrypt > 2.4.x のみ)
- MCRYPT_ARCFOUR (libmcrypt > 2.4.x のみ)
- MCRYPT_BLOWFISH
- MCRYPT_CAST_128
- MCRYPT_CAST_256
- MCRYPT_CRYPT
- MCRYPT_DES
- MCRYPT_DES_COMPAT (libmcrypt 2.2.x のみ)
- MCRYPT_ENIGMA (libmcrypt > 2.4.x のみ、MCRYPT_CRYPT へのエイリアス)
- MCRYPT_GOST
- MCRYPT_IDEA (非フリー)
- MCRYPT_LOKI97 (libmcrypt > 2.4.x のみ)
- MCRYPT_MARS (libmcrypt > 2.4.x のみ、非フリー)
- MCRYPT_PANAMA (libmcrypt > 2.4.x のみ)
- MCRYPT_RIJNDAEL_128 (libmcrypt > 2.4.x のみ)
- MCRYPT_RIJNDAEL_192 (libmcrypt > 2.4.x のみ)
- MCRYPT_RIJNDAEL_256 (libmcrypt > 2.4.x のみ)
- MCRYPT_RC2
- MCRYPT_RC4 (libmcrypt 2.2.x のみ)
- MCRYPT_RC6 (libmcrypt > 2.4.x のみ)
- MCRYPT_RC6_128 (libmcrypt 2.2.x のみ)
- MCRYPT_RC6_192 (libmcrypt 2.2.x のみ)
- MCRYPT_RC6_256 (libmcrypt 2.2.x のみ)
- MCRYPT_SAFER64
- MCRYPT_SAFER128
- MCRYPT_SAFERPLUS (libmcrypt > 2.4.x のみ)
- MCRYPT_SERPENT(libmcrypt > 2.4.x のみ)
- MCRYPT_SERPENT_128 (libmcrypt 2.2.x のみ)
- MCRYPT_SERPENT_192 (libmcrypt 2.2.x のみ)
- MCRYPT_SERPENT_256 (libmcrypt 2.2.x のみ)
- MCRYPT_SKIPJACK (libmcrypt > 2.4.x のみ)
- MCRYPT_TEAN (libmcrypt 2.2.x のみ)
- MCRYPT_THREEWAY
- MCRYPT_TRIPLEDES (libmcrypt > 2.4.x のみ)
- MCRYPT_TWOFISH (古い mcrypt 2.x 系か、あるいは mcrypt > 2.4.x )
- MCRYPT_TWOFISH128 (TWOFISHxxx は 2.x の新しいバージョンで使用可能ですが、2.4.x では使用できません)
- MCRYPT_TWOFISH192
- MCRYPT_TWOFISH256
- MCRYPT_WAKE (libmcrypt > 2.4.x のみ)
- MCRYPT_XTEA (libmcrypt > 2.4.x のみ)
(CFB
および OFB
モードでは)それぞれの暗号関数に初期化ベクトル(IV)
を指定する必要があり、(CBC
モードでは)IV を指定することが可能です。
IV はユニークである必要があり、暗号化/復号化の際に同じである
必要があります。暗号化されて保存されたデータの場合、関数の出力を
(ファイル名の MD5 キーのように) 保存されたデータの位置を表す
インデックスとして使用することができます。もしくは、暗号化された
データと共に IV を渡すことができます(このトピックに関する議論については、
Applied Cryptography by Schneier (ISBN 0-471-11709-9) の 9.3 章を参照ください)。