sodium_crypto_aead_chacha20poly1305_ietf_decrypt function mentions in its documentation that it'll always return a string. But when passed a malformed input as argument, it returns a boolean
(PHP 7 >= 7.2.0, PHP 8)
sodium_crypto_aead_chacha20poly1305_ietf_decrypt — Verifica que el texto cifrado incluye una etiqueta válida
$ciphertext
,$additional_data
,$nonce
,$key
Verifica y luego descifra con ChaCha20-Poly1305 (variante IETF).
La variante IETF utiliza nonces de 96 bits y contadores internos de 32 bits, en lugar de 64 bits para ambos.
ciphertext
Debe estar en el formato proporcionado por sodium_crypto_aead_chacha20poly1305_ietf_encrypt() (texto cifrado y etiqueta, concatenados).
additional_data
Datos adicionales autenticados. Esto se utiliza en la verificación de la etiqueta de autenticación añadida al texto cifrado, pero no se cifra ni se almacena en el texto cifrado.
nonce
Un número que debe ser utilizado una sola vez, por mensaje. 12 bytes de largo.
key
La clave de cifrado (256 bits).
Devuelve el texto en claro en caso de éxito, o false
en caso de error.
sodium_crypto_aead_chacha20poly1305_ietf_decrypt function mentions in its documentation that it'll always return a string. But when passed a malformed input as argument, it returns a boolean