<?php
// Création nombre arbitraire
$nonce = random_bytes(SODIUM_CRYPTO_SECRETBOX_NONCEBYTES);
// Création d'une clé secrète
$key = sodium_crypto_secretbox_keygen();
// Notre message à chiffrer
$message = 'Notre message super secret!';
/**
* Chiffrer le message, et stocker le texte chiffré résultant avec le nonce.
* Contrairement à la clé, le nonce n'a pas besoin d'être secret.
*/
$cipher = sodium_crypto_secretbox($message, $nonce, $key);
// Décrypter le texte chiffré en utilisant la même clé et nonce
$decipher = sodium_crypto_secretbox_open($cipher, $nonce, $key);
echo $decipher;
Notice: Use of undefined constant SODIUM_CRYPTO_SECRETBOX_NONCEBYTES - assumed 'SODIUM_CRYPTO_SECRETBOX_NONCEBYTES' in /in/CLWVB on line 4
Fatal error: Uncaught TypeError: random_bytes() expects parameter 1 to be integer, string given in /in/CLWVB:4
Stack trace:
#0 /in/CLWVB(4): random_bytes('SODIUM_CRYPTO_S...')
#1 {main}
thrown in /in/CLWVB on line 4
Process exited with code 255.