牛牛在线工具

openssl_decrypt()

收录 8868 个 PHP 函数,含用途说明与用法示例。

openssl_decrypt()

对使用 OpenSSL 加密的数据进行解密

函数名称:openssl_decrypt() 函数描述:openssl_decrypt() 函数用于对使用 OpenSSL 加密的数据进行解密。 适用版本:该函数适用于 PHP 5 >= 5.3.0, PHP 7, PHP 8 用法: openssl_decrypt(string $data, string $method, string $password, int $options = 0, string $iv = "", string $tag = "", string $aad = "") 参数: $data:要解密的数据,通常是使用 openssl_encrypt() 函数加密后的数据。 $method:指定加密算法,可以是以下之一: "AES-128-CBC":128 位 AES 加密算法,使用 CBC 模式。 "AES-192-CBC":192 位 AES 加密算法,使用 CBC 模式。 "AES-256-CBC":256 位 AES 加密算法,使用 CBC 模式。 "BF-CBC":Blowfish 加密算法,使用 CBC 模式。 "CAST5-CBC":CAST5 加密算法,使用 CBC 模式。 "DES-CBC":DES 加密算法,使用 CBC 模式。 "DES-EDE3-CBC":3DES 加密算法,使用 CBC 模式。 "RC2-CBC":RC2 加密算法,使用 CBC 模式。 "RC4":RC4 加密算法。 $password:用于解密的密码。 $options:可选参数,指定解密选项。默认为 0,表示不使用任何选项。可以使用以下选项的按位或(|)组合: OPENSSL_RAW_DATA:指定解密结果以原始二进制数据返回,而不是默认的 base64 编码字符串。 OPENSSL_ZERO_PADDING:指定禁用自动填充功能,解密时不会自动删除填充的数据。 $iv:可选参数,指定初始化向量(IV)。在使用 CBC 或 ECB 模式时需要提供。 $tag:可选参数,指定验证标签。在使用 AEAD 加密算法时需要提供。 $aad:可选参数,指定附加的认证数据。在使用 AEAD 加密算法时需要提供。 返回值:解密成功时返回解密后的数据,失败时返回 false。 示例: $key = "my_secret_key"; $encryptedData = "U2FsdGVkX1/9r9lq7rX7V1Uv+Gc9Z3w8"; $decryptedData = openssl_decrypt($encryptedData, "AES-256-CBC", $key, 0); echo $decryptedData; // 输出:Hello World! 注意事项: 请确保 OpenSSL 扩展已启用,可以通过在 php.ini 文件中取消注释 extension=openssl 来启用。 使用正确的密码和加密算法进行解密,否则会导致解密失败。 在使用 CBC 或 ECB 模式时,需要提供正确的初始化向量(IV)。 在使用 AEAD 加密算法时,需要提供正确的验证标签和附加的认证数据。