PHP8 openssl_decrypt

2024-03-11 16:52 更新

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

openssl_decrypt — 解密數(shù)據(jù)

說明

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

采用原始或base64編碼的字符串,并使用給定的方法和密鑰對其進(jìn)行解密。

參數(shù) 

data

將被解密的密文。

cipher_algo

加密算法,使用openssl_get_cipher_methods()函數(shù)獲取可用的加密算法列表。

passphrase

密鑰。

options

options can be one of OPENSSL_RAW_DATAOPENSSL_ZERO_PADDING.

iv

非空的初始化向量。

tag

AEAD密碼模式中的身份驗(yàn)證標(biāo)簽。 如果是錯誤的,驗(yàn)證失敗,函數(shù)返回false.

警告

函數(shù)不檢查 tag 的長度。調(diào)用者有責(zé)任確保 tag 的長度與調(diào)用 openssl_encrypt() 時檢索到的 tag 的長度相匹配。否則,如果給定的 tag 僅匹配正確 tag 的開頭,解密可能會成功。

aad

額外的認(rèn)證數(shù)據(jù)。

返回值 

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

錯誤/異常 

如果通過 cipher_algo 參數(shù)傳遞的是未知的加密算法,將會拋出 E_WARNING 等級的錯誤。

如果通過iv參數(shù)傳遞的是一個空值,將會拋出一個 E_WARNING 等級的錯誤。

更新日志 

版本說明
8.1.0tag 現(xiàn)在可為 null。
7.1.0添加了 tag 和 aad 參數(shù)。

參見 ?

  • openssl_encrypt() - 加密數(shù)據(jù)


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號