# 定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。

mcryptは 4 つのブロック暗号モード(`CBC`, `OFB`, `CFB`, `ECB`)で実行可能です。 libmcrypt-2.4.x 以降にリンクした場合、ブロック暗号モード `nOFG` と `STREAM` モードでも実行可能です。MCRYPT_MODE_mode 形式を関数で使用する 際には、いくつかの制約があります。ここで、これらの各モードの通常の 使用法の概要を示します。詳細なリファレンスおよび議論に関しては、 Applied Cryptography by Schneier (ISBN 0-471-11709-9) を参照ください。

- `MCRYPT_MODE_ECB` (`electronic codebook`) は、 一般的にはほとんどの用途に合わないブロック暗号モードです。 このモードを使うことは推奨しません。
- `MCRYPT_MODE_CBC` (`cipher block chaining`)は、`ECB` よりも著しく セキュアなブロック暗号モードです。
- `MCRYPT_MODE_CFB` (`cipher feedback、8 ビット形式`) は、 ストリーム暗号モードです。 `CFB` ではなく、`NCFB` の使用を推奨します。
- `MCRYPT_MODE_OFB` (`output feedback、8 ビット形式`) は `CFB`と互換性が あるストリーム暗号モードですが、エラーの伝播が許容されないアプリケーションに使用する ことが可能です。 `OFB` ではなく、 `NOFB` の使用を推奨します。
- `MCRYPT_MODE_NOFB` (`output feedback, nビット形式`) は `OFB` と互換性がありますが、 アルゴリズムのブロックサイズを変更可能です。
- `MCRYPT_MODE_STREAM` は、 `"WAKE"` や `"RC4"` のようないくつかのストリーム アルゴリズムを読み込む追加のモードです。

Mcrypt は、あらかじめ定義された定数が存在しない他の操作モードもサポートしています。 これらは不明な定数の代わりに、文字列を渡すことで利用できます。

- `"ctr"` (`counter mode`) はストリーム暗号モードです。
- `"ncfb"` (`cipher feedback, n-bit 形式`) は `CFB` と互換性がありますが、 アルゴリズムのブロックサイズを変更可能です。

他のモードおよびランダムデバイス定数:

`MCRYPT_ENCRYPT` (int)
`MCRYPT_DECRYPT` (int)
`MCRYPT_DEV_RANDOM` (int)
`MCRYPT_DEV_URANDOM` (int)
`MCRYPT_RAND` (int)

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open