説明
stringfalse openssl_decrypt(
string $data
,
string $cipher_algo
,
#[\SensitiveParameter]string $passphrase
,
int $options
= 0,
string $iv
= "",
stringnull $tag
= null
,
string $aad
= ""
)
パラメータ
-
data
-
復号化する、暗号化されたメッセージ。
-
cipher_algo
-
暗号化方式。利用可能な暗号化方式のリストについては、
openssl_get_cipher_methods を使用してください。
-
passphrase
-
パスフレーズ。パスフレーズが期待するよりも短い場合は、暗黙的に NUL
文字でパディングされます。パスフレーズが予想より長い場合、暗黙的に切り詰められます。
警告
パスフレーズは、その名前から連想されるような安全な鍵生成機能は内包していません。
内部で処理される唯一の操作は、期待する鍵長と異なる場合に NUL
で
パディングしたり、切り詰めたりするだけです。
-
options
-
OPENSSL_RAW_DATA
,
OPENSSL_ZERO_PADDING
,
OPENSSL_DONT_ZERO_PAD_KEY
のいずれか。
-
iv
-
null
ではない初期化ベクトル。 IV が期待よりも短い場合は、NUL
文字でパディングされ、警告が発行されます。
パスフレーズが期待よりも長い場合は、切り捨てられ、警告が発行されます。
-
tag
-
AEAD 暗号モードの認証タグ。
正しくない場合、認証は失敗し、関数は false
を返します。
警告
tag
の長さをこの関数はチェックしません。
この値の長さは openssl_encrypt
を呼び出した時に取得できるものと一致させなければならず、それは呼び出し側の責任です。
一致しない場合でも、与えられた値が適切な
tag の先頭部分と一致した場合に復号が成功するかもしれません。
-
aad
-
追加の認証済みデータ。
戻り値
成功した場合復号化された文字列、失敗した場合に false
を返します。
エラー / 例外
cipher_algo
パラメータに未知の暗号アルゴリズムが渡された場合、
E_WARNING
レベルのエラーが発生します。
iv
パラメータに空の値が渡された場合、
E_WARNING
レベルのエラーが発生します。