Public-key signatures
Example (combined mode)
#define MESSAGE (const unsigned char *) "test"
#define MESSAGE_LEN 4
unsigned char pk[crypto_sign_PUBLICKEYBYTES];
unsigned char sk[crypto_sign_SECRETKEYBYTES];
crypto_sign_keypair(pk, sk);
unsigned char signed_message[crypto_sign_BYTES + MESSAGE_LEN];
unsigned long long signed_message_len;
crypto_sign(signed_message, &signed_message_len,
MESSAGE, MESSAGE_LEN, sk);
unsigned char unsigned_message[MESSAGE_LEN];
unsigned long long unsigned_message_len;
if (crypto_sign_open(unsigned_message, &unsigned_message_len,
signed_message, signed_message_len, pk) != 0) {
/* incorrect signature! */
}Example (detached mode)
Example (multi-part message)
Purpose
Key pair generation
Combined mode
Detached mode
Multi-part messages
Extracting the seed and the public key from the secret key
Data structures
Constants
Algorithm details
References
Notes
Last updated