sodium_crypto_aead_chacha20poly1305_ietf_decrypt

FunctionParams and return types changed in PHP 8.0

Verify that the ciphertext includes a valid tag.

PHP 5
PHP 7.0-7.1
PHP 7.2
Added
PHP 7.3-7.4
PHP 8.0
Improved
PHP 8.1
PHP 8.2
PHP 8.3
PHP 8.4
PHP 8.5

sodium_crypto_aead_chacha20poly1305_ietf_decrypt Function synopsis

sodium_crypto_aead_chacha20poly1305_ietf_decrypt(
    string $ciphertext,
    string $additional_data,
    string $nonce,
    string $key
  ): string|false

Parameters

$ciphertext

Typestring

Must be in the format provided by sodium_crypto_aead_chacha20poly1305_ietf_encrypt (ciphertext and tag, concatenated).

$additional_data

Typestring

Additional, authenticated data. This is used in the verification of the authentication tag appended to the ciphertext, but it is not encrypted or stored in the ciphertext.

$nonce

Typestring

A number that must be only used once, per message. 12 bytes long.

$key

Typestring

Encryption key (256-bit).

Return value

Typestring|false

Returns the plaintext on success, or false on failure.

Changes to the sodium_crypto_aead_chacha20poly1305_ietf_decrypt Function

PHP 8.0

  • Return type added: string|false
  • Parameter name of parameter #1 changed: $string to $ciphertext
  • Parameter type added for parameter #1 ($ciphertext): string
  • Parameter name of parameter #2 changed: $ad to $additional_data
  • Parameter type added for parameter #2 ($additional_data): string
  • Parameter type added for parameter #3 ($nonce): string
  • Parameter type added for parameter #4 ($key): string
  sodium_crypto_aead_chacha20poly1305_ietf_decrypt(
-     $string,
+     string $ciphertext,
-     $ad,
+     string $additional_data,
-     $nonce,
+     string $nonce,
-     $key
+     string $key
-   )
+   ): string|false

PHP 7.2

  • Function added

sodium_crypto_aead_chacha20poly1305_ietf_decrypt Function Availability

PHP VersionAvailability
PHP 8.5Future Release Yes
PHP 8.4Upcoming Release Yes
PHP 8.3Supported (Latest) Yes
PHP 8.2Supported Yes
PHP 8.1Security-Fixes Only Yes
PHP 8.0Unsupported Yes
PHP 7.4Unsupported Yes
PHP 7.3Unsupported Yes
PHP 7.2Unsupported Yes
PHP 7.1Unsupported No
PHP 7.0Unsupported No
PHP 5.6Unsupported No
PHP 5.5Unsupported No
PHP 5.4Unsupported No
PHP 5.3Unsupported No