説明
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
文字で埋められます。
期待した長さより長かった場合は、
黙って切り詰められます。
警告
passphrase
は、
その名前から連想されるような安全な鍵生成機能は内包していません。
唯一行う操作は、期待する鍵長と異なる場合に 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
レベルのエラーが発生します。