-
Notifications
You must be signed in to change notification settings - Fork 78
Closed
Labels
enhancementNew feature or requestNew feature or request
Description
Currently the signing and verification API within liboqs are as follows:
OQS_API OQS_STATUS OQS_SIG_sign(const OQS_SIG *sig, uint8_t *signature,
size_t *signature_len, const uint8_t *message, size_t message_len,
const uint8_t *secret_key);
OQS_API OQS_STATUS OQS_SIG_verify(const OQS_SIG *sig, const uint8_t *message,
size_t message_len, const uint8_t *signature, size_t signature_len,
const uint8_t *public_key);The API that NIST has introduced in FIPS 204 for ML-DSA includes a context string of length ≥ 0.
open-quantum-safe/liboqs#1919 adds a new API for signing with a context string:
OQS_API OQS_STATUS OQS_SIG_sign_with_ctx_str(const OQS_SIG *sig, uint8_t *signature,
size_t *signature_len, const uint8_t *message, size_t message_len, const uint8_t *ctx_str,
size_t ctx_str_len, const uint8_t *secret_key);
OQS_API OQS_STATUS OQS_SIG_verify_with_ctx_str(const OQS_SIG *sig, const uint8_t *message,
size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *ctx_str,
size_t ctx_str_len, const uint8_t *public_key);This language wrapper will need to be updated to support the new API for signing/verifying with context string.
Note there is also a discussion in open-quantum-safe/liboqs#2001 about whether to deprecate the old API.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request