CakeFest 2024: The Official CakePHP Conference

mcrypt_get_iv_size

(PHP 4 >= 4.0.2, PHP 5, PHP 7 < 7.2.0, PECL mcrypt >= 1.0.0)

mcrypt_get_iv_size指定した暗号/モードの組み合わせに属する IV の大きさを返す

警告

この関数は PHP 7.1.0 で 非推奨となり、PHP 7.2.0 で削除 されました。この関数に頼らないことを強く推奨します。

説明

mcrypt_get_iv_size(string $cipher, string $mode): int

指定した cipher/mode の組み合わせにおける IV の大きさを取得します。

mcrypt_enc_get_iv_size() 関数を使用するほうが より有用です。これは mcrypt_module_open() が返すリソースを使用します。

パラメータ

cipher

MCRYPT_暗号名 定数のいずれか、 あるいはアルゴリズム名をあらわす文字列。

mode

定数 MCRYPT_MODE_モード名、あるいは文字列 "ecb", "cbc", "cfb", "ofb", "nofb" ,"stream" のいずれか。

ECB モードでは IV は要求されないため、IV は無視されます。 暗号化と復号の際には、同じ IV(開始位置)が必要です。さもないと 暗号化処理は失敗します。

戻り値

初期化ベクトル(IV)の大きさをバイト数で返します。 エラーの際には false を返します。IV が指定した暗号/モードで無視される場合には、ゼロを返します。

例1 mcrypt_get_iv_size() の例

<?php
echo mcrypt_get_iv_size(MCRYPT_CAST_256, MCRYPT_MODE_CFB) . "\n";

echo
mcrypt_get_iv_size('des', 'ecb') . "\n";
?>

参考

add a note

User Contributed Notes 1 note

up
-5
Hernanibus
7 years ago
The size of the initialization vector (iv) will be returned in bytes NOT bits, something to keep in mind specially if the iv is passed together appended or prepended with the encrypted data for decryption
To Top