diff options
author | Robert Relyea <rrelyea@redhat.com> | 2023-02-27 14:46:39 -0800 |
---|---|---|
committer | Robert Relyea <rrelyea@redhat.com> | 2023-02-27 14:46:39 -0800 |
commit | 9a7e1bc157adb261651fefb791901614460843a1 (patch) | |
tree | d35359ce38e48a2ffbb7247a8a5ad32e9e7e5ed2 /lib/liboqs/include/oqs/sig_dilithium.h | |
parent | a0b5910d52112e6e32c5f54ad37533cde603feae (diff) | |
download | nss-hg-9a7e1bc157adb261651fefb791901614460843a1.tar.gz |
Add liboqs
Diffstat (limited to 'lib/liboqs/include/oqs/sig_dilithium.h')
-rw-r--r-- | lib/liboqs/include/oqs/sig_dilithium.h | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/lib/liboqs/include/oqs/sig_dilithium.h b/lib/liboqs/include/oqs/sig_dilithium.h new file mode 100644 index 000000000..04b6b8841 --- /dev/null +++ b/lib/liboqs/include/oqs/sig_dilithium.h @@ -0,0 +1,74 @@ +// SPDX-License-Identifier: MIT + +#ifndef OQS_SIG_DILITHIUM_H +#define OQS_SIG_DILITHIUM_H + +#include <oqs/oqs.h> + +#ifdef OQS_ENABLE_SIG_dilithium_2 +#define OQS_SIG_dilithium_2_length_public_key 1312 +#define OQS_SIG_dilithium_2_length_secret_key 2528 +#define OQS_SIG_dilithium_2_length_signature 2420 + +OQS_SIG *OQS_SIG_dilithium_2_new(void); +OQS_API OQS_STATUS OQS_SIG_dilithium_2_keypair(uint8_t *public_key, uint8_t *secret_key); +OQS_API OQS_STATUS OQS_SIG_dilithium_2_sign(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_dilithium_2_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); +#endif + +#ifdef OQS_ENABLE_SIG_dilithium_3 +#define OQS_SIG_dilithium_3_length_public_key 1952 +#define OQS_SIG_dilithium_3_length_secret_key 4000 +#define OQS_SIG_dilithium_3_length_signature 3293 + +OQS_SIG *OQS_SIG_dilithium_3_new(void); +OQS_API OQS_STATUS OQS_SIG_dilithium_3_keypair(uint8_t *public_key, uint8_t *secret_key); +OQS_API OQS_STATUS OQS_SIG_dilithium_3_sign(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_dilithium_3_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); +#endif + +#ifdef OQS_ENABLE_SIG_dilithium_5 +#define OQS_SIG_dilithium_5_length_public_key 2592 +#define OQS_SIG_dilithium_5_length_secret_key 4864 +#define OQS_SIG_dilithium_5_length_signature 4595 + +OQS_SIG *OQS_SIG_dilithium_5_new(void); +OQS_API OQS_STATUS OQS_SIG_dilithium_5_keypair(uint8_t *public_key, uint8_t *secret_key); +OQS_API OQS_STATUS OQS_SIG_dilithium_5_sign(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_dilithium_5_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); +#endif + +#ifdef OQS_ENABLE_SIG_dilithium_2_aes +#define OQS_SIG_dilithium_2_aes_length_public_key 1312 +#define OQS_SIG_dilithium_2_aes_length_secret_key 2528 +#define OQS_SIG_dilithium_2_aes_length_signature 2420 + +OQS_SIG *OQS_SIG_dilithium_2_aes_new(void); +OQS_API OQS_STATUS OQS_SIG_dilithium_2_aes_keypair(uint8_t *public_key, uint8_t *secret_key); +OQS_API OQS_STATUS OQS_SIG_dilithium_2_aes_sign(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_dilithium_2_aes_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); +#endif + +#ifdef OQS_ENABLE_SIG_dilithium_3_aes +#define OQS_SIG_dilithium_3_aes_length_public_key 1952 +#define OQS_SIG_dilithium_3_aes_length_secret_key 4000 +#define OQS_SIG_dilithium_3_aes_length_signature 3293 + +OQS_SIG *OQS_SIG_dilithium_3_aes_new(void); +OQS_API OQS_STATUS OQS_SIG_dilithium_3_aes_keypair(uint8_t *public_key, uint8_t *secret_key); +OQS_API OQS_STATUS OQS_SIG_dilithium_3_aes_sign(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_dilithium_3_aes_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); +#endif + +#ifdef OQS_ENABLE_SIG_dilithium_5_aes +#define OQS_SIG_dilithium_5_aes_length_public_key 2592 +#define OQS_SIG_dilithium_5_aes_length_secret_key 4864 +#define OQS_SIG_dilithium_5_aes_length_signature 4595 + +OQS_SIG *OQS_SIG_dilithium_5_aes_new(void); +OQS_API OQS_STATUS OQS_SIG_dilithium_5_aes_keypair(uint8_t *public_key, uint8_t *secret_key); +OQS_API OQS_STATUS OQS_SIG_dilithium_5_aes_sign(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_dilithium_5_aes_verify(const uint8_t *message, size_t message_len, const uint8_t *signature, size_t signature_len, const uint8_t *public_key); +#endif + +#endif |