sodium_crypto_sign

(PHP 7 >= 7.2.0, PHP 8)

sodium_crypto_signSigne un message

Description

sodium_crypto_sign(string $message, #[\SensitiveParameter] string $secret_key): string

Signe un message avec une clé secrète, qui peut être vérifiée par la clé publique correspondante. Cette fonction attache la signature au message. Voir sodium_crypto_sign_detached() pour les signatures détachées.

Liste de paramètres

message

Le message à signer.

secret_key

La clé secrète. Voir sodium_crypto_sign_secretkey()

Valeurs de retour

Le message signé (non chiffré).

add a note

User Contributed Notes 1 note

up
3
craig at craigfrancis dot co dot uk
6 years ago
Here's a quick example on how to use sodium_crypto_sign(); where you have a message that you want to sign, so anyone with the public key can confirm that the message hasn't been tampered with.

This is similar to sodium_crypto_sign_detached(), but the returned string contains the original message as well (in plain text, at the end, so anyone can read it).

<?php

// $sign_seed = random_bytes(SODIUM_CRYPTO_SIGN_SEEDBYTES);
// $sign_pair = sodium_crypto_sign_seed_keypair($sign_seed);

$sign_pair = sodium_crypto_sign_keypair();
$sign_secret = sodium_crypto_sign_secretkey($sign_pair);
$sign_public = sodium_crypto_sign_publickey($sign_pair);

//--------------------------------------------------
// Person 1, signing

$message = 'Hello';

$message_signed = sodium_crypto_sign($message, $sign_secret);

//--------------------------------------------------
// Person 2, verifying

$message = sodium_crypto_sign_open($message_signed, $sign_public);

echo
$message . "\n";

?>
To Top