openssl_decrypt

データを復号する

説明

stringfalse openssl_decrypt(
    string $data,
    string $cipher_algo,
    string $passphrase,
    int $options = 0,
    string $iv = "",
    stringnull $tag = null,
    string $aad = ""
)

未加工の、または base64 エンコードされた文字列を受け取り、 与えられた暗号化方式とキーを使って文字列を復号します。

パラメータ

data

復号化する、暗号化されたメッセージ。

cipher_algo

暗号化方式。利用可能な暗号化方式のリストについては、 openssl_get_cipher_methods を使用してください。

passphrase

キー

options

OPENSSL_RAW_DATA あるいは OPENSSL_ZERO_PADDING のいずれか。

iv

NULL ではない初期化ベクトル

tag

AEAD 暗号モードの認証タグ。 正しくない場合、認証は失敗し、関数は false を返します。

警告

tag の長さをこの関数はチェックしません。 この値の長さは openssl_encrypt を呼び出した時に取得できるものと一致させなければならず、それは呼び出し側の責任です。 一致しない場合でも、与えられた値が適切な tag の先頭部分と一致した場合に復号が成功するかもしれません。

aad

追加の認証済みデータ。

戻り値

成功した場合復号化された文字列、失敗した場合に false を返します。

エラー / 例外

cipher_algo パラメータに未知の暗号アルゴリズムが渡された場合、 E_WARNING レベルのエラーが発生します。

iv パラメータに空の値が渡された場合、 E_WARNING レベルのエラーが発生します。

変更履歴

バージョン 説明
8.1.0 tag は、nullable になりました。
7.1.0 tag および aad パラメータが追加されました。

参考

  • openssl_encrypt