PHP8 openssl_decrypt

2024-03-11 16:52 更新

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

openssl_decrypt — 解密数据

说明

openssl_decrypt(
    string $data,
    string $cipher_algo,
    string $passphrase,
    int $options = 0,
    string $iv = "",
    ?string $tag = null,
    string $aad = ""
): string|false

采用原始或base64编码的字符串,并使用给定的方法和密钥对其进行解密。

参数 

data

将被解密的密文。

cipher_algo

加密算法,使用openssl_get_cipher_methods()函数获取可用的加密算法列表。

passphrase

密钥。

options

options can be one of OPENSSL_RAW_DATAOPENSSL_ZERO_PADDING.

iv

非空的初始化向量。

tag

AEAD密码模式中的身份验证标签。 如果是错误的,验证失败,函数返回false.

警告

函数不检查 tag 的长度。调用者有责任确保 tag 的长度与调用 openssl_encrypt() 时检索到的 tag 的长度相匹配。否则,如果给定的 tag 仅匹配正确 tag 的开头,解密可能会成功。

aad

额外的认证数据。

返回值 

成功时已解密的字符串 或者在失败时返回 false。

错误/异常 

如果通过 cipher_algo 参数传递的是未知的加密算法,将会抛出 E_WARNING 等级的错误。

如果通过iv参数传递的是一个空值,将会抛出一个 E_WARNING 等级的错误。

更新日志 

版本说明
8.1.0tag 现在可为 null。
7.1.0添加了 tag 和 aad 参数。

参见 ¶

  • openssl_encrypt() - 加密数据


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号