PHP.nl

sodium_crypto_box

sodium_crypto_box

Authenticated public-key encryption

string **sodium_crypto_box** string $message string $nonce string $key_pair

Encrypt a message using asymmetric (public key) cryptography.

The algorithm used by functions prefixed with are Elliptic Curve Diffie-Hellman over the Montgomery curve, Curve25519; usually abbreviated as X25519. sodium_crypto_box

messageThe message to be encrypted.

nonce A number that must be only used once, per message. 24 bytes long. This is a large enough bound to generate randomly (i.e. ). random_bytes

key_pair See . This should include the sender's X25519 secret key and the recipient's X25519 public key. sodium_crypto_box_keypair_from_secretkey_and_publickey

Returns the encrypted message (ciphertext plus authentication tag). The ciphertext will be 16 bytes longer than the plaintext, and a raw binary string. See for safe encoding for storage. sodium_bin2base64