From a34046321c5710c31d9731f4016560581feb1bbe Mon Sep 17 00:00:00 2001 From: Michael Baentsch <57787676+baentsch@users.noreply.github.com> Date: Tue, 23 May 2023 08:36:27 +0200 Subject: [PATCH] alg update --- README.md | 9 +- apps/s_cb.c | 72 +-- crypto/asn1/standard_methods.h | 33 +- crypto/ec/oqs_meth.c | 270 +++------ crypto/evp/pmeth_lib.c | 33 +- crypto/objects/obj_dat.h | 357 +++++------- crypto/objects/obj_mac.num | 99 ++-- crypto/objects/obj_xref.h | 62 +- crypto/objects/obj_xref.txt | 33 +- crypto/objects/objects.txt | 39 +- crypto/x509/x509type.c | 33 +- include/crypto/asn1.h | 33 +- include/crypto/evp.h | 33 +- include/openssl/evp.h | 39 +- include/openssl/obj_mac.h | 247 +++----- oqs-interop-test/common.py | 16 +- oqs-template/generate.yml | 994 ++++++++++++++++++++------------ oqs-template/generatehelpers.py | 19 +- oqs-template/oqs-kem-info.md | 23 - oqs-template/oqs-sig-info.md | 147 ++--- oqs-test/common.py | 8 +- qsc.h | 72 +-- ssl/ssl_cert_table.h | 33 +- ssl/ssl_local.h | 186 ++---- ssl/t1_lib.c | 204 ++----- ssl/t1_trce.c | 39 +- 26 files changed, 1336 insertions(+), 1797 deletions(-) diff --git a/README.md b/README.md index 797add104ea23..c99b35fbcd034 100644 --- a/README.md +++ b/README.md @@ -76,7 +76,7 @@ The following quantum-safe algorithms from liboqs are supported (assuming they h - **BIKE**: `bikel1`, `bikel3`, `bikel5` -- **CRYSTALS-Kyber**: `kyber512`, `kyber768`, `kyber1024`, `kyber90s512`, `kyber90s768`, `kyber90s1024` +- **CRYSTALS-Kyber**: `kyber512`, `kyber768`, `kyber1024` - **FrodoKEM**: `frodo640aes`, `frodo640shake`, `frodo976aes`, `frodo976shake`, `frodo1344aes`, `frodo1344shake` - **HQC**: `hqc128`, `hqc192`, `hqc256`† @@ -96,11 +96,10 @@ Note that algorithms marked with a dagger (†) have large stack usage and may c The following digital signature algorithms from liboqs are supported by the fork. **Note that not all variants of all algorithms are enabled by default; algorithms that are enabled by default are marked with an asterisk, and should you wish to enable additional variants, consult [the "Code Generation" section of the documentation in the wiki](https://github.com/open-quantum-safe/openssl/wiki/Using-liboqs-algorithms-not-in-the-fork#code-generation)**. -- **CRYSTALS-Dilithium**:`dilithium2`\*, `dilithium3`\*, `dilithium5`\*, `dilithium2_aes`\*, `dilithium3_aes`\*, `dilithium5_aes`\* +- **CRYSTALS-Dilithium**:`dilithium2`\*, `dilithium3`\*, `dilithium5`\* - **Falcon**:`falcon512`\*, `falcon1024`\* -- **SPHINCS-Haraka**:`sphincsharaka128frobust`\*, `sphincsharaka128fsimple`\*, `sphincsharaka128srobust`, `sphincsharaka128ssimple`, `sphincsharaka192frobust`, `sphincsharaka192fsimple`, `sphincsharaka192srobust`, `sphincsharaka192ssimple`, `sphincsharaka256frobust`, `sphincsharaka256fsimple`, `sphincsharaka256srobust`, `sphincsharaka256ssimple` -- **SPHINCS-SHA256**:`sphincssha256128frobust`\*, `sphincssha256128fsimple`, `sphincssha256128srobust`, `sphincssha256128ssimple`\*, `sphincssha256192frobust`, `sphincssha256192fsimple`, `sphincssha256192srobust`, `sphincssha256192ssimple`, `sphincssha256256frobust`, `sphincssha256256fsimple`, `sphincssha256256srobust`, `sphincssha256256ssimple` -- **SPHINCS-SHAKE256**:`sphincsshake256128frobust`, `sphincsshake256128fsimple`\*, `sphincsshake256128srobust`, `sphincsshake256128ssimple`, `sphincsshake256192frobust`, `sphincsshake256192fsimple`, `sphincsshake256192srobust`, `sphincsshake256192ssimple`, `sphincsshake256256frobust`, `sphincsshake256256fsimple`, `sphincsshake256256srobust`, `sphincsshake256256ssimple` +- **SPHINCS-SHA2**:`sphincssha2128fsimple`\*, `sphincssha2128ssimple`\*, `sphincssha2192fsimple`\*, `sphincssha2192ssimple`, `sphincssha2256fsimple`, `sphincssha2256ssimple` +- **SPHINCS-SHAKE**:`sphincsshake128fsimple`\*, `sphincsshake128ssimple`, `sphincsshake192fsimple`, `sphincsshake192ssimple`, `sphincsshake256fsimple`, `sphincsshake256ssimple` The following hybrid algorithms are supported; they combine a quantum-safe algorithm listed above with a traditional digital signature algorithm (`` is any one of the algorithms listed above): diff --git a/apps/s_cb.c b/apps/s_cb.c index f856840926a59..5b05c31419ad7 100644 --- a/apps/s_cb.c +++ b/apps/s_cb.c @@ -266,20 +266,6 @@ static const char *get_sigtype(int nid) return "Dilithium5"; case NID_p521_dilithium5: return "ECDSA p521 - Dilithium5"; - case NID_dilithium2_aes: - return "Dilithium2_AES"; - case NID_p256_dilithium2_aes: - return "ECDSA p256 - Dilithium2_AES"; - case NID_rsa3072_dilithium2_aes: - return "RSA3072 - Dilithium2_AES"; - case NID_dilithium3_aes: - return "Dilithium3_AES"; - case NID_p384_dilithium3_aes: - return "ECDSA p384 - Dilithium3_AES"; - case NID_dilithium5_aes: - return "Dilithium5_AES"; - case NID_p521_dilithium5_aes: - return "ECDSA p521 - Dilithium5_AES"; case NID_falcon512: return "Falcon-512"; case NID_p256_falcon512: @@ -290,36 +276,28 @@ static const char *get_sigtype(int nid) return "Falcon-1024"; case NID_p521_falcon1024: return "ECDSA p521 - Falcon-1024"; - case NID_sphincsharaka128frobust: - return "SPHINCS+-Haraka-128f-robust"; - case NID_p256_sphincsharaka128frobust: - return "ECDSA p256 - SPHINCS+-Haraka-128f-robust"; - case NID_rsa3072_sphincsharaka128frobust: - return "RSA3072 - SPHINCS+-Haraka-128f-robust"; - case NID_sphincsharaka128fsimple: - return "SPHINCS+-Haraka-128f-simple"; - case NID_p256_sphincsharaka128fsimple: - return "ECDSA p256 - SPHINCS+-Haraka-128f-simple"; - case NID_rsa3072_sphincsharaka128fsimple: - return "RSA3072 - SPHINCS+-Haraka-128f-simple"; - case NID_sphincssha256128frobust: - return "SPHINCS+-SHA256-128f-robust"; - case NID_p256_sphincssha256128frobust: - return "ECDSA p256 - SPHINCS+-SHA256-128f-robust"; - case NID_rsa3072_sphincssha256128frobust: - return "RSA3072 - SPHINCS+-SHA256-128f-robust"; - case NID_sphincssha256128ssimple: - return "SPHINCS+-SHA256-128s-simple"; - case NID_p256_sphincssha256128ssimple: - return "ECDSA p256 - SPHINCS+-SHA256-128s-simple"; - case NID_rsa3072_sphincssha256128ssimple: - return "RSA3072 - SPHINCS+-SHA256-128s-simple"; - case NID_sphincsshake256128fsimple: - return "SPHINCS+-SHAKE256-128f-simple"; - case NID_p256_sphincsshake256128fsimple: - return "ECDSA p256 - SPHINCS+-SHAKE256-128f-simple"; - case NID_rsa3072_sphincsshake256128fsimple: - return "RSA3072 - SPHINCS+-SHAKE256-128f-simple"; + case NID_sphincssha2128fsimple: + return "SPHINCS+-SHA2-128f-simple"; + case NID_p256_sphincssha2128fsimple: + return "ECDSA p256 - SPHINCS+-SHA2-128f-simple"; + case NID_rsa3072_sphincssha2128fsimple: + return "RSA3072 - SPHINCS+-SHA2-128f-simple"; + case NID_sphincssha2128ssimple: + return "SPHINCS+-SHA2-128s-simple"; + case NID_p256_sphincssha2128ssimple: + return "ECDSA p256 - SPHINCS+-SHA2-128s-simple"; + case NID_rsa3072_sphincssha2128ssimple: + return "RSA3072 - SPHINCS+-SHA2-128s-simple"; + case NID_sphincssha2192fsimple: + return "SPHINCS+-SHA2-192f-simple"; + case NID_p384_sphincssha2192fsimple: + return "ECDSA p384 - SPHINCS+-SHA2-192f-simple"; + case NID_sphincsshake128fsimple: + return "SPHINCS+-SHAKE-128f-simple"; + case NID_p256_sphincsshake128fsimple: + return "ECDSA p256 - SPHINCS+-SHAKE-128f-simple"; + case NID_rsa3072_sphincsshake128fsimple: + return "RSA3072 - SPHINCS+-SHAKE-128f-simple"; ///// OQS_TEMPLATE_FRAGMENT_SIG_NAME_STR_END default: return NULL; @@ -485,9 +463,6 @@ static const char* OQS_CURVE_ID_NAME_STR(int id) { case 0x0241: return "bikel1"; case 0x0242: return "bikel3"; case 0x0243: return "bikel5"; - case 0x023E: return "kyber90s512"; - case 0x023F: return "kyber90s768"; - case 0x0240: return "kyber90s1024"; case 0x022C: return "hqc128"; case 0x022D: return "hqc192"; case 0x022E: return "hqc256"; @@ -505,9 +480,6 @@ static const char* OQS_CURVE_ID_NAME_STR(int id) { case 0x2F41: return "p256_bikel1 hybrid"; case 0x2F42: return "p384_bikel3 hybrid"; case 0x2F43: return "p521_bikel5 hybrid"; - case 0x2F3E: return "p256_kyber90s512 hybrid"; - case 0x2F3F: return "p384_kyber90s768 hybrid"; - case 0x2F40: return "p521_kyber90s1024 hybrid"; case 0x2F2C: return "p256_hqc128 hybrid"; case 0x2F2D: return "p384_hqc192 hybrid"; case 0x2F2E: return "p521_hqc256 hybrid"; diff --git a/crypto/asn1/standard_methods.h b/crypto/asn1/standard_methods.h index f7e7fde4cf858..ee3c065cee2e2 100644 --- a/crypto/asn1/standard_methods.h +++ b/crypto/asn1/standard_methods.h @@ -67,32 +67,21 @@ static const EVP_PKEY_ASN1_METHOD *standard_methods[] = { &p384_dilithium3_asn1_meth, &dilithium5_asn1_meth, &p521_dilithium5_asn1_meth, - &dilithium2_aes_asn1_meth, - &p256_dilithium2_aes_asn1_meth, - &rsa3072_dilithium2_aes_asn1_meth, - &dilithium3_aes_asn1_meth, - &p384_dilithium3_aes_asn1_meth, - &dilithium5_aes_asn1_meth, - &p521_dilithium5_aes_asn1_meth, &falcon512_asn1_meth, &p256_falcon512_asn1_meth, &rsa3072_falcon512_asn1_meth, &falcon1024_asn1_meth, &p521_falcon1024_asn1_meth, - &sphincsharaka128frobust_asn1_meth, - &p256_sphincsharaka128frobust_asn1_meth, - &rsa3072_sphincsharaka128frobust_asn1_meth, - &sphincsharaka128fsimple_asn1_meth, - &p256_sphincsharaka128fsimple_asn1_meth, - &rsa3072_sphincsharaka128fsimple_asn1_meth, - &sphincssha256128frobust_asn1_meth, - &p256_sphincssha256128frobust_asn1_meth, - &rsa3072_sphincssha256128frobust_asn1_meth, - &sphincssha256128ssimple_asn1_meth, - &p256_sphincssha256128ssimple_asn1_meth, - &rsa3072_sphincssha256128ssimple_asn1_meth, - &sphincsshake256128fsimple_asn1_meth, - &p256_sphincsshake256128fsimple_asn1_meth, - &rsa3072_sphincsshake256128fsimple_asn1_meth, + &sphincssha2128fsimple_asn1_meth, + &p256_sphincssha2128fsimple_asn1_meth, + &rsa3072_sphincssha2128fsimple_asn1_meth, + &sphincssha2128ssimple_asn1_meth, + &p256_sphincssha2128ssimple_asn1_meth, + &rsa3072_sphincssha2128ssimple_asn1_meth, + &sphincssha2192fsimple_asn1_meth, + &p384_sphincssha2192fsimple_asn1_meth, + &sphincsshake128fsimple_asn1_meth, + &p256_sphincsshake128fsimple_asn1_meth, + &rsa3072_sphincsshake128fsimple_asn1_meth, ///// OQS_TEMPLATE_FRAGMENT_SIG_ASN1_METHS_END }; diff --git a/crypto/ec/oqs_meth.c b/crypto/ec/oqs_meth.c index a80060719af0c..ee37117a1b9a2 100644 --- a/crypto/ec/oqs_meth.c +++ b/crypto/ec/oqs_meth.c @@ -83,33 +83,22 @@ int oqssl_sig_nids_list[] = { NID_p384_dilithium3, NID_dilithium5, NID_p521_dilithium5, - NID_dilithium2_aes, - NID_p256_dilithium2_aes, - NID_rsa3072_dilithium2_aes, - NID_dilithium3_aes, - NID_p384_dilithium3_aes, - NID_dilithium5_aes, - NID_p521_dilithium5_aes, NID_falcon512, NID_p256_falcon512, NID_rsa3072_falcon512, NID_falcon1024, NID_p521_falcon1024, - NID_sphincsharaka128frobust, - NID_p256_sphincsharaka128frobust, - NID_rsa3072_sphincsharaka128frobust, - NID_sphincsharaka128fsimple, - NID_p256_sphincsharaka128fsimple, - NID_rsa3072_sphincsharaka128fsimple, - NID_sphincssha256128frobust, - NID_p256_sphincssha256128frobust, - NID_rsa3072_sphincssha256128frobust, - NID_sphincssha256128ssimple, - NID_p256_sphincssha256128ssimple, - NID_rsa3072_sphincssha256128ssimple, - NID_sphincsshake256128fsimple, - NID_p256_sphincsshake256128fsimple, - NID_rsa3072_sphincsshake256128fsimple, + NID_sphincssha2128fsimple, + NID_p256_sphincssha2128fsimple, + NID_rsa3072_sphincssha2128fsimple, + NID_sphincssha2128ssimple, + NID_p256_sphincssha2128ssimple, + NID_rsa3072_sphincssha2128ssimple, + NID_sphincssha2192fsimple, + NID_p384_sphincssha2192fsimple, + NID_sphincsshake128fsimple, + NID_p256_sphincsshake128fsimple, + NID_rsa3072_sphincsshake128fsimple, /////// OQS_TEMPLATE_FRAGMENT_LIST_KNOWN_NIDS_END }; @@ -127,9 +116,6 @@ int oqssl_kem_nids_list[] = { NID_bikel1, NID_bikel3, NID_bikel5, - NID_kyber90s512, - NID_kyber90s768, - NID_kyber90s1024, NID_hqc128, NID_hqc192, NID_hqc256, @@ -173,16 +159,6 @@ char* get_oqs_alg_name(int openssl_nid) case NID_dilithium5: case NID_p521_dilithium5: return OQS_SIG_alg_dilithium_5; - case NID_dilithium2_aes: - case NID_p256_dilithium2_aes: - case NID_rsa3072_dilithium2_aes: - return OQS_SIG_alg_dilithium_2_aes; - case NID_dilithium3_aes: - case NID_p384_dilithium3_aes: - return OQS_SIG_alg_dilithium_3_aes; - case NID_dilithium5_aes: - case NID_p521_dilithium5_aes: - return OQS_SIG_alg_dilithium_5_aes; case NID_falcon512: case NID_p256_falcon512: case NID_rsa3072_falcon512: @@ -190,26 +166,21 @@ char* get_oqs_alg_name(int openssl_nid) case NID_falcon1024: case NID_p521_falcon1024: return OQS_SIG_alg_falcon_1024; - case NID_sphincsharaka128frobust: - case NID_p256_sphincsharaka128frobust: - case NID_rsa3072_sphincsharaka128frobust: - return OQS_SIG_alg_sphincs_haraka_128f_robust; - case NID_sphincsharaka128fsimple: - case NID_p256_sphincsharaka128fsimple: - case NID_rsa3072_sphincsharaka128fsimple: - return OQS_SIG_alg_sphincs_haraka_128f_simple; - case NID_sphincssha256128frobust: - case NID_p256_sphincssha256128frobust: - case NID_rsa3072_sphincssha256128frobust: - return OQS_SIG_alg_sphincs_sha256_128f_robust; - case NID_sphincssha256128ssimple: - case NID_p256_sphincssha256128ssimple: - case NID_rsa3072_sphincssha256128ssimple: - return OQS_SIG_alg_sphincs_sha256_128s_simple; - case NID_sphincsshake256128fsimple: - case NID_p256_sphincsshake256128fsimple: - case NID_rsa3072_sphincsshake256128fsimple: - return OQS_SIG_alg_sphincs_shake256_128f_simple; + case NID_sphincssha2128fsimple: + case NID_p256_sphincssha2128fsimple: + case NID_rsa3072_sphincssha2128fsimple: + return OQS_SIG_alg_sphincs_sha2_128f_simple; + case NID_sphincssha2128ssimple: + case NID_p256_sphincssha2128ssimple: + case NID_rsa3072_sphincssha2128ssimple: + return OQS_SIG_alg_sphincs_sha2_128s_simple; + case NID_sphincssha2192fsimple: + case NID_p384_sphincssha2192fsimple: + return OQS_SIG_alg_sphincs_sha2_192f_simple; + case NID_sphincsshake128fsimple: + case NID_p256_sphincsshake128fsimple: + case NID_rsa3072_sphincsshake128fsimple: + return OQS_SIG_alg_sphincs_shake_128f_simple; case NID_frodo640aes: case NID_p256_frodo640aes: return OQS_KEM_alg_frodokem_640_aes; @@ -246,15 +217,6 @@ char* get_oqs_alg_name(int openssl_nid) case NID_bikel5: case NID_p521_bikel5: return OQS_KEM_alg_bike_l5; - case NID_kyber90s512: - case NID_p256_kyber90s512: - return OQS_KEM_alg_kyber_512_90s; - case NID_kyber90s768: - case NID_p384_kyber90s768: - return OQS_KEM_alg_kyber_768_90s; - case NID_kyber90s1024: - case NID_p521_kyber90s1024: - return OQS_KEM_alg_kyber_1024_90s; case NID_hqc128: case NID_p256_hqc128: return OQS_KEM_alg_hqc_128; @@ -279,23 +241,16 @@ static int is_oqs_hybrid_alg(int openssl_nid) case NID_rsa3072_dilithium2: case NID_p384_dilithium3: case NID_p521_dilithium5: - case NID_p256_dilithium2_aes: - case NID_rsa3072_dilithium2_aes: - case NID_p384_dilithium3_aes: - case NID_p521_dilithium5_aes: case NID_p256_falcon512: case NID_rsa3072_falcon512: case NID_p521_falcon1024: - case NID_p256_sphincsharaka128frobust: - case NID_rsa3072_sphincsharaka128frobust: - case NID_p256_sphincsharaka128fsimple: - case NID_rsa3072_sphincsharaka128fsimple: - case NID_p256_sphincssha256128frobust: - case NID_rsa3072_sphincssha256128frobust: - case NID_p256_sphincssha256128ssimple: - case NID_rsa3072_sphincssha256128ssimple: - case NID_p256_sphincsshake256128fsimple: - case NID_rsa3072_sphincsshake256128fsimple: + case NID_p256_sphincssha2128fsimple: + case NID_rsa3072_sphincssha2128fsimple: + case NID_p256_sphincssha2128ssimple: + case NID_rsa3072_sphincssha2128ssimple: + case NID_p384_sphincssha2192fsimple: + case NID_p256_sphincsshake128fsimple: + case NID_rsa3072_sphincsshake128fsimple: ///// OQS_TEMPLATE_FRAGMENT_LIST_HYBRID_NIDS_END return 1; default: @@ -310,28 +265,21 @@ static int get_classical_nid(int hybrid_id) { ///// OQS_TEMPLATE_FRAGMENT_ASSIGN_CLASSICAL_NIDS_START case NID_rsa3072_dilithium2: - case NID_rsa3072_dilithium2_aes: case NID_rsa3072_falcon512: - case NID_rsa3072_sphincsharaka128frobust: - case NID_rsa3072_sphincsharaka128fsimple: - case NID_rsa3072_sphincssha256128frobust: - case NID_rsa3072_sphincssha256128ssimple: - case NID_rsa3072_sphincsshake256128fsimple: + case NID_rsa3072_sphincssha2128fsimple: + case NID_rsa3072_sphincssha2128ssimple: + case NID_rsa3072_sphincsshake128fsimple: return NID_rsaEncryption; case NID_p256_dilithium2: - case NID_p256_dilithium2_aes: case NID_p256_falcon512: - case NID_p256_sphincsharaka128frobust: - case NID_p256_sphincsharaka128fsimple: - case NID_p256_sphincssha256128frobust: - case NID_p256_sphincssha256128ssimple: - case NID_p256_sphincsshake256128fsimple: + case NID_p256_sphincssha2128fsimple: + case NID_p256_sphincssha2128ssimple: + case NID_p256_sphincsshake128fsimple: return NID_X9_62_prime256v1; case NID_p384_dilithium3: - case NID_p384_dilithium3_aes: + case NID_p384_sphincssha2192fsimple: return NID_secp384r1; case NID_p521_dilithium5: - case NID_p521_dilithium5_aes: case NID_p521_falcon1024: return NID_secp521r1;///// OQS_TEMPLATE_FRAGMENT_ASSIGN_CLASSICAL_NIDS_END default: @@ -351,33 +299,22 @@ static int get_oqs_nid(int hybrid_id) return NID_dilithium3; case NID_p521_dilithium5: return NID_dilithium5; - case NID_p256_dilithium2_aes: - case NID_rsa3072_dilithium2_aes: - return NID_dilithium2_aes; - case NID_p384_dilithium3_aes: - return NID_dilithium3_aes; - case NID_p521_dilithium5_aes: - return NID_dilithium5_aes; case NID_p256_falcon512: case NID_rsa3072_falcon512: return NID_falcon512; case NID_p521_falcon1024: return NID_falcon1024; - case NID_p256_sphincsharaka128frobust: - case NID_rsa3072_sphincsharaka128frobust: - return NID_sphincsharaka128frobust; - case NID_p256_sphincsharaka128fsimple: - case NID_rsa3072_sphincsharaka128fsimple: - return NID_sphincsharaka128fsimple; - case NID_p256_sphincssha256128frobust: - case NID_rsa3072_sphincssha256128frobust: - return NID_sphincssha256128frobust; - case NID_p256_sphincssha256128ssimple: - case NID_rsa3072_sphincssha256128ssimple: - return NID_sphincssha256128ssimple; - case NID_p256_sphincsshake256128fsimple: - case NID_rsa3072_sphincsshake256128fsimple: - return NID_sphincsshake256128fsimple; + case NID_p256_sphincssha2128fsimple: + case NID_rsa3072_sphincssha2128fsimple: + return NID_sphincssha2128fsimple; + case NID_p256_sphincssha2128ssimple: + case NID_rsa3072_sphincssha2128ssimple: + return NID_sphincssha2128ssimple; + case NID_p384_sphincssha2192fsimple: + return NID_sphincssha2192fsimple; + case NID_p256_sphincsshake128fsimple: + case NID_rsa3072_sphincsshake128fsimple: + return NID_sphincsshake128fsimple; ///// OQS_TEMPLATE_FRAGMENT_ASSIGN_OQS_NID_END default: return 0; @@ -505,16 +442,6 @@ static int get_oqs_security_bits(int openssl_nid) case NID_dilithium5: case NID_p521_dilithium5: return 256; - case NID_dilithium2_aes: - case NID_p256_dilithium2_aes: - case NID_rsa3072_dilithium2_aes: - return 128; - case NID_dilithium3_aes: - case NID_p384_dilithium3_aes: - return 192; - case NID_dilithium5_aes: - case NID_p521_dilithium5_aes: - return 256; case NID_falcon512: case NID_p256_falcon512: case NID_rsa3072_falcon512: @@ -522,25 +449,20 @@ static int get_oqs_security_bits(int openssl_nid) case NID_falcon1024: case NID_p521_falcon1024: return 256; - case NID_sphincsharaka128frobust: - case NID_p256_sphincsharaka128frobust: - case NID_rsa3072_sphincsharaka128frobust: + case NID_sphincssha2128fsimple: + case NID_p256_sphincssha2128fsimple: + case NID_rsa3072_sphincssha2128fsimple: return 128; - case NID_sphincsharaka128fsimple: - case NID_p256_sphincsharaka128fsimple: - case NID_rsa3072_sphincsharaka128fsimple: + case NID_sphincssha2128ssimple: + case NID_p256_sphincssha2128ssimple: + case NID_rsa3072_sphincssha2128ssimple: return 128; - case NID_sphincssha256128frobust: - case NID_p256_sphincssha256128frobust: - case NID_rsa3072_sphincssha256128frobust: - return 128; - case NID_sphincssha256128ssimple: - case NID_p256_sphincssha256128ssimple: - case NID_rsa3072_sphincssha256128ssimple: - return 128; - case NID_sphincsshake256128fsimple: - case NID_p256_sphincsshake256128fsimple: - case NID_rsa3072_sphincsshake256128fsimple: + case NID_sphincssha2192fsimple: + case NID_p384_sphincssha2192fsimple: + return 192; + case NID_sphincsshake128fsimple: + case NID_p256_sphincsshake128fsimple: + case NID_rsa3072_sphincsshake128fsimple: return 128; ///// OQS_TEMPLATE_FRAGMENT_GET_SIG_SECURITY_BITS_END default: @@ -1121,33 +1043,22 @@ static int oqs_item_verify(EVP_MD_CTX *ctx, const ASN1_ITEM *it, void *asn, nid != NID_p384_dilithium3 && nid != NID_dilithium5 && nid != NID_p521_dilithium5 && - nid != NID_dilithium2_aes && - nid != NID_p256_dilithium2_aes && - nid != NID_rsa3072_dilithium2_aes && - nid != NID_dilithium3_aes && - nid != NID_p384_dilithium3_aes && - nid != NID_dilithium5_aes && - nid != NID_p521_dilithium5_aes && nid != NID_falcon512 && nid != NID_p256_falcon512 && nid != NID_rsa3072_falcon512 && nid != NID_falcon1024 && nid != NID_p521_falcon1024 && - nid != NID_sphincsharaka128frobust && - nid != NID_p256_sphincsharaka128frobust && - nid != NID_rsa3072_sphincsharaka128frobust && - nid != NID_sphincsharaka128fsimple && - nid != NID_p256_sphincsharaka128fsimple && - nid != NID_rsa3072_sphincsharaka128fsimple && - nid != NID_sphincssha256128frobust && - nid != NID_p256_sphincssha256128frobust && - nid != NID_rsa3072_sphincssha256128frobust && - nid != NID_sphincssha256128ssimple && - nid != NID_p256_sphincssha256128ssimple && - nid != NID_rsa3072_sphincssha256128ssimple && - nid != NID_sphincsshake256128fsimple && - nid != NID_p256_sphincsshake256128fsimple && - nid != NID_rsa3072_sphincsshake256128fsimple && + nid != NID_sphincssha2128fsimple && + nid != NID_p256_sphincssha2128fsimple && + nid != NID_rsa3072_sphincssha2128fsimple && + nid != NID_sphincssha2128ssimple && + nid != NID_p256_sphincssha2128ssimple && + nid != NID_rsa3072_sphincssha2128ssimple && + nid != NID_sphincssha2192fsimple && + nid != NID_p384_sphincssha2192fsimple && + nid != NID_sphincsshake128fsimple && + nid != NID_p256_sphincsshake128fsimple && + nid != NID_rsa3072_sphincsshake128fsimple && 1 /* This is just to faciliate templating. */ ///// OQS_TEMPLATE_FRAGMENT_CHECK_IF_KNOWN_NID_END ) || ptype != V_ASN1_UNDEF) { @@ -1715,31 +1626,20 @@ DEFINE_OQS_EVP_METHODS(dilithium3, NID_dilithium3, "dilithium3", "OpenSSL Dilith DEFINE_OQS_EVP_METHODS(p384_dilithium3, NID_p384_dilithium3, "p384_dilithium3", "OpenSSL ECDSA p384 Dilithium3 algorithm") DEFINE_OQS_EVP_METHODS(dilithium5, NID_dilithium5, "dilithium5", "OpenSSL Dilithium5 algorithm") DEFINE_OQS_EVP_METHODS(p521_dilithium5, NID_p521_dilithium5, "p521_dilithium5", "OpenSSL ECDSA p521 Dilithium5 algorithm") -DEFINE_OQS_EVP_METHODS(dilithium2_aes, NID_dilithium2_aes, "dilithium2_aes", "OpenSSL Dilithium2_AES algorithm") -DEFINE_OQS_EVP_METHODS(p256_dilithium2_aes, NID_p256_dilithium2_aes, "p256_dilithium2_aes", "OpenSSL ECDSA p256 Dilithium2_AES algorithm") -DEFINE_OQS_EVP_METHODS(rsa3072_dilithium2_aes, NID_rsa3072_dilithium2_aes, "rsa3072_dilithium2_aes", "OpenSSL RSA3072 Dilithium2_AES algorithm") -DEFINE_OQS_EVP_METHODS(dilithium3_aes, NID_dilithium3_aes, "dilithium3_aes", "OpenSSL Dilithium3_AES algorithm") -DEFINE_OQS_EVP_METHODS(p384_dilithium3_aes, NID_p384_dilithium3_aes, "p384_dilithium3_aes", "OpenSSL ECDSA p384 Dilithium3_AES algorithm") -DEFINE_OQS_EVP_METHODS(dilithium5_aes, NID_dilithium5_aes, "dilithium5_aes", "OpenSSL Dilithium5_AES algorithm") -DEFINE_OQS_EVP_METHODS(p521_dilithium5_aes, NID_p521_dilithium5_aes, "p521_dilithium5_aes", "OpenSSL ECDSA p521 Dilithium5_AES algorithm") DEFINE_OQS_EVP_METHODS(falcon512, NID_falcon512, "falcon512", "OpenSSL Falcon-512 algorithm") DEFINE_OQS_EVP_METHODS(p256_falcon512, NID_p256_falcon512, "p256_falcon512", "OpenSSL ECDSA p256 Falcon-512 algorithm") DEFINE_OQS_EVP_METHODS(rsa3072_falcon512, NID_rsa3072_falcon512, "rsa3072_falcon512", "OpenSSL RSA3072 Falcon-512 algorithm") DEFINE_OQS_EVP_METHODS(falcon1024, NID_falcon1024, "falcon1024", "OpenSSL Falcon-1024 algorithm") DEFINE_OQS_EVP_METHODS(p521_falcon1024, NID_p521_falcon1024, "p521_falcon1024", "OpenSSL ECDSA p521 Falcon-1024 algorithm") -DEFINE_OQS_EVP_METHODS(sphincsharaka128frobust, NID_sphincsharaka128frobust, "sphincsharaka128frobust", "OpenSSL SPHINCS+-Haraka-128f-robust algorithm") -DEFINE_OQS_EVP_METHODS(p256_sphincsharaka128frobust, NID_p256_sphincsharaka128frobust, "p256_sphincsharaka128frobust", "OpenSSL ECDSA p256 SPHINCS+-Haraka-128f-robust algorithm") -DEFINE_OQS_EVP_METHODS(rsa3072_sphincsharaka128frobust, NID_rsa3072_sphincsharaka128frobust, "rsa3072_sphincsharaka128frobust", "OpenSSL RSA3072 SPHINCS+-Haraka-128f-robust algorithm") -DEFINE_OQS_EVP_METHODS(sphincsharaka128fsimple, NID_sphincsharaka128fsimple, "sphincsharaka128fsimple", "OpenSSL SPHINCS+-Haraka-128f-simple algorithm") -DEFINE_OQS_EVP_METHODS(p256_sphincsharaka128fsimple, NID_p256_sphincsharaka128fsimple, "p256_sphincsharaka128fsimple", "OpenSSL ECDSA p256 SPHINCS+-Haraka-128f-simple algorithm") -DEFINE_OQS_EVP_METHODS(rsa3072_sphincsharaka128fsimple, NID_rsa3072_sphincsharaka128fsimple, "rsa3072_sphincsharaka128fsimple", "OpenSSL RSA3072 SPHINCS+-Haraka-128f-simple algorithm") -DEFINE_OQS_EVP_METHODS(sphincssha256128frobust, NID_sphincssha256128frobust, "sphincssha256128frobust", "OpenSSL SPHINCS+-SHA256-128f-robust algorithm") -DEFINE_OQS_EVP_METHODS(p256_sphincssha256128frobust, NID_p256_sphincssha256128frobust, "p256_sphincssha256128frobust", "OpenSSL ECDSA p256 SPHINCS+-SHA256-128f-robust algorithm") -DEFINE_OQS_EVP_METHODS(rsa3072_sphincssha256128frobust, NID_rsa3072_sphincssha256128frobust, "rsa3072_sphincssha256128frobust", "OpenSSL RSA3072 SPHINCS+-SHA256-128f-robust algorithm") -DEFINE_OQS_EVP_METHODS(sphincssha256128ssimple, NID_sphincssha256128ssimple, "sphincssha256128ssimple", "OpenSSL SPHINCS+-SHA256-128s-simple algorithm") -DEFINE_OQS_EVP_METHODS(p256_sphincssha256128ssimple, NID_p256_sphincssha256128ssimple, "p256_sphincssha256128ssimple", "OpenSSL ECDSA p256 SPHINCS+-SHA256-128s-simple algorithm") -DEFINE_OQS_EVP_METHODS(rsa3072_sphincssha256128ssimple, NID_rsa3072_sphincssha256128ssimple, "rsa3072_sphincssha256128ssimple", "OpenSSL RSA3072 SPHINCS+-SHA256-128s-simple algorithm") -DEFINE_OQS_EVP_METHODS(sphincsshake256128fsimple, NID_sphincsshake256128fsimple, "sphincsshake256128fsimple", "OpenSSL SPHINCS+-SHAKE256-128f-simple algorithm") -DEFINE_OQS_EVP_METHODS(p256_sphincsshake256128fsimple, NID_p256_sphincsshake256128fsimple, "p256_sphincsshake256128fsimple", "OpenSSL ECDSA p256 SPHINCS+-SHAKE256-128f-simple algorithm") -DEFINE_OQS_EVP_METHODS(rsa3072_sphincsshake256128fsimple, NID_rsa3072_sphincsshake256128fsimple, "rsa3072_sphincsshake256128fsimple", "OpenSSL RSA3072 SPHINCS+-SHAKE256-128f-simple algorithm") +DEFINE_OQS_EVP_METHODS(sphincssha2128fsimple, NID_sphincssha2128fsimple, "sphincssha2128fsimple", "OpenSSL SPHINCS+-SHA2-128f-simple algorithm") +DEFINE_OQS_EVP_METHODS(p256_sphincssha2128fsimple, NID_p256_sphincssha2128fsimple, "p256_sphincssha2128fsimple", "OpenSSL ECDSA p256 SPHINCS+-SHA2-128f-simple algorithm") +DEFINE_OQS_EVP_METHODS(rsa3072_sphincssha2128fsimple, NID_rsa3072_sphincssha2128fsimple, "rsa3072_sphincssha2128fsimple", "OpenSSL RSA3072 SPHINCS+-SHA2-128f-simple algorithm") +DEFINE_OQS_EVP_METHODS(sphincssha2128ssimple, NID_sphincssha2128ssimple, "sphincssha2128ssimple", "OpenSSL SPHINCS+-SHA2-128s-simple algorithm") +DEFINE_OQS_EVP_METHODS(p256_sphincssha2128ssimple, NID_p256_sphincssha2128ssimple, "p256_sphincssha2128ssimple", "OpenSSL ECDSA p256 SPHINCS+-SHA2-128s-simple algorithm") +DEFINE_OQS_EVP_METHODS(rsa3072_sphincssha2128ssimple, NID_rsa3072_sphincssha2128ssimple, "rsa3072_sphincssha2128ssimple", "OpenSSL RSA3072 SPHINCS+-SHA2-128s-simple algorithm") +DEFINE_OQS_EVP_METHODS(sphincssha2192fsimple, NID_sphincssha2192fsimple, "sphincssha2192fsimple", "OpenSSL SPHINCS+-SHA2-192f-simple algorithm") +DEFINE_OQS_EVP_METHODS(p384_sphincssha2192fsimple, NID_p384_sphincssha2192fsimple, "p384_sphincssha2192fsimple", "OpenSSL ECDSA p384 SPHINCS+-SHA2-192f-simple algorithm") +DEFINE_OQS_EVP_METHODS(sphincsshake128fsimple, NID_sphincsshake128fsimple, "sphincsshake128fsimple", "OpenSSL SPHINCS+-SHAKE-128f-simple algorithm") +DEFINE_OQS_EVP_METHODS(p256_sphincsshake128fsimple, NID_p256_sphincsshake128fsimple, "p256_sphincsshake128fsimple", "OpenSSL ECDSA p256 SPHINCS+-SHAKE-128f-simple algorithm") +DEFINE_OQS_EVP_METHODS(rsa3072_sphincsshake128fsimple, NID_rsa3072_sphincsshake128fsimple, "rsa3072_sphincsshake128fsimple", "OpenSSL RSA3072 SPHINCS+-SHAKE-128f-simple algorithm") ///// OQS_TEMPLATE_FRAGMENT_DEFINE_OQS_EVP_METHS_END diff --git a/crypto/evp/pmeth_lib.c b/crypto/evp/pmeth_lib.c index cc87f1ca40617..adc9ce2d8bcec 100644 --- a/crypto/evp/pmeth_lib.c +++ b/crypto/evp/pmeth_lib.c @@ -76,33 +76,22 @@ static const EVP_PKEY_METHOD *standard_methods[] = { &p384_dilithium3_pkey_meth, &dilithium5_pkey_meth, &p521_dilithium5_pkey_meth, - &dilithium2_aes_pkey_meth, - &p256_dilithium2_aes_pkey_meth, - &rsa3072_dilithium2_aes_pkey_meth, - &dilithium3_aes_pkey_meth, - &p384_dilithium3_aes_pkey_meth, - &dilithium5_aes_pkey_meth, - &p521_dilithium5_aes_pkey_meth, &falcon512_pkey_meth, &p256_falcon512_pkey_meth, &rsa3072_falcon512_pkey_meth, &falcon1024_pkey_meth, &p521_falcon1024_pkey_meth, - &sphincsharaka128frobust_pkey_meth, - &p256_sphincsharaka128frobust_pkey_meth, - &rsa3072_sphincsharaka128frobust_pkey_meth, - &sphincsharaka128fsimple_pkey_meth, - &p256_sphincsharaka128fsimple_pkey_meth, - &rsa3072_sphincsharaka128fsimple_pkey_meth, - &sphincssha256128frobust_pkey_meth, - &p256_sphincssha256128frobust_pkey_meth, - &rsa3072_sphincssha256128frobust_pkey_meth, - &sphincssha256128ssimple_pkey_meth, - &p256_sphincssha256128ssimple_pkey_meth, - &rsa3072_sphincssha256128ssimple_pkey_meth, - &sphincsshake256128fsimple_pkey_meth, - &p256_sphincsshake256128fsimple_pkey_meth, - &rsa3072_sphincsshake256128fsimple_pkey_meth, + &sphincssha2128fsimple_pkey_meth, + &p256_sphincssha2128fsimple_pkey_meth, + &rsa3072_sphincssha2128fsimple_pkey_meth, + &sphincssha2128ssimple_pkey_meth, + &p256_sphincssha2128ssimple_pkey_meth, + &rsa3072_sphincssha2128ssimple_pkey_meth, + &sphincssha2192fsimple_pkey_meth, + &p384_sphincssha2192fsimple_pkey_meth, + &sphincsshake128fsimple_pkey_meth, + &p256_sphincsshake128fsimple_pkey_meth, + &rsa3072_sphincsshake128fsimple_pkey_meth, ///// OQS_TEMPLATE_FRAGMENT_LIST_PKEY_METHS_END }; diff --git a/crypto/objects/obj_dat.h b/crypto/objects/obj_dat.h index c06e4f265de9d..8460908d124e6 100644 --- a/crypto/objects/obj_dat.h +++ b/crypto/objects/obj_dat.h @@ -10,7 +10,7 @@ */ /* Serialized OID's */ -static const unsigned char so[7991] = { +static const unsigned char so[7910] = { 0x2A,0x86,0x48,0x86,0xF7,0x0D, /* [ 0] OBJ_rsadsi */ 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01, /* [ 6] OBJ_pkcs */ 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x02, /* [ 13] OBJ_md2 */ @@ -1083,36 +1083,25 @@ static const unsigned char so[7991] = { 0x2B,0xCE,0x0F,0x02,0x07,0x03, /* [ 7795] OBJ_p384_dilithium3 */ 0x2B,0x06,0x01,0x04,0x01,0x02,0x82,0x0B,0x07,0x08,0x07, /* [ 7801] OBJ_dilithium5 */ 0x2B,0xCE,0x0F,0x02,0x07,0x04, /* [ 7812] OBJ_p521_dilithium5 */ - 0x2B,0x06,0x01,0x04,0x01,0x02,0x82,0x0B,0x0B,0x04,0x04, /* [ 7818] OBJ_dilithium2_aes */ - 0x2B,0xCE,0x0F,0x02,0x0B,0x01, /* [ 7829] OBJ_p256_dilithium2_aes */ - 0x2B,0xCE,0x0F,0x02,0x0B,0x02, /* [ 7835] OBJ_rsa3072_dilithium2_aes */ - 0x2B,0x06,0x01,0x04,0x01,0x02,0x82,0x0B,0x0B,0x06,0x05, /* [ 7841] OBJ_dilithium3_aes */ - 0x2B,0xCE,0x0F,0x02,0x0B,0x03, /* [ 7852] OBJ_p384_dilithium3_aes */ - 0x2B,0x06,0x01,0x04,0x01,0x02,0x82,0x0B,0x0B,0x08,0x07, /* [ 7858] OBJ_dilithium5_aes */ - 0x2B,0xCE,0x0F,0x02,0x0B,0x04, /* [ 7869] OBJ_p521_dilithium5_aes */ - 0x2B,0xCE,0x0F,0x03,0x06, /* [ 7875] OBJ_falcon512 */ - 0x2B,0xCE,0x0F,0x03,0x07, /* [ 7880] OBJ_p256_falcon512 */ - 0x2B,0xCE,0x0F,0x03,0x08, /* [ 7885] OBJ_rsa3072_falcon512 */ - 0x2B,0xCE,0x0F,0x03,0x09, /* [ 7890] OBJ_falcon1024 */ - 0x2B,0xCE,0x0F,0x03,0x0A, /* [ 7895] OBJ_p521_falcon1024 */ - 0x2B,0xCE,0x0F,0x06,0x01,0x01, /* [ 7900] OBJ_sphincsharaka128frobust */ - 0x2B,0xCE,0x0F,0x06,0x01,0x02, /* [ 7906] OBJ_p256_sphincsharaka128frobust */ - 0x2B,0xCE,0x0F,0x06,0x01,0x03, /* [ 7912] OBJ_rsa3072_sphincsharaka128frobust */ - 0x2B,0xCE,0x0F,0x06,0x01,0x04, /* [ 7918] OBJ_sphincsharaka128fsimple */ - 0x2B,0xCE,0x0F,0x06,0x01,0x05, /* [ 7924] OBJ_p256_sphincsharaka128fsimple */ - 0x2B,0xCE,0x0F,0x06,0x01,0x06, /* [ 7930] OBJ_rsa3072_sphincsharaka128fsimple */ - 0x2B,0xCE,0x0F,0x06,0x04,0x01, /* [ 7936] OBJ_sphincssha256128frobust */ - 0x2B,0xCE,0x0F,0x06,0x04,0x02, /* [ 7942] OBJ_p256_sphincssha256128frobust */ - 0x2B,0xCE,0x0F,0x06,0x04,0x03, /* [ 7948] OBJ_rsa3072_sphincssha256128frobust */ - 0x2B,0xCE,0x0F,0x06,0x04,0x0A, /* [ 7954] OBJ_sphincssha256128ssimple */ - 0x2B,0xCE,0x0F,0x06,0x04,0x0B, /* [ 7960] OBJ_p256_sphincssha256128ssimple */ - 0x2B,0xCE,0x0F,0x06,0x04,0x0C, /* [ 7966] OBJ_rsa3072_sphincssha256128ssimple */ - 0x2B,0xCE,0x0F,0x06,0x07,0x04, /* [ 7972] OBJ_sphincsshake256128fsimple */ - 0x2B,0xCE,0x0F,0x06,0x07,0x05, /* [ 7978] OBJ_p256_sphincsshake256128fsimple */ - 0x2B,0xCE,0x0F,0x06,0x07,0x06, /* [ 7984] OBJ_rsa3072_sphincsshake256128fsimple */ + 0x2B,0xCE,0x0F,0x03,0x06, /* [ 7818] OBJ_falcon512 */ + 0x2B,0xCE,0x0F,0x03,0x07, /* [ 7823] OBJ_p256_falcon512 */ + 0x2B,0xCE,0x0F,0x03,0x08, /* [ 7828] OBJ_rsa3072_falcon512 */ + 0x2B,0xCE,0x0F,0x03,0x09, /* [ 7833] OBJ_falcon1024 */ + 0x2B,0xCE,0x0F,0x03,0x0A, /* [ 7838] OBJ_p521_falcon1024 */ + 0x2B,0xCE,0x0F,0x06,0x04,0x0D, /* [ 7843] OBJ_sphincssha2128fsimple */ + 0x2B,0xCE,0x0F,0x06,0x04,0x0E, /* [ 7849] OBJ_p256_sphincssha2128fsimple */ + 0x2B,0xCE,0x0F,0x06,0x04,0x0F, /* [ 7855] OBJ_rsa3072_sphincssha2128fsimple */ + 0x2B,0xCE,0x0F,0x06,0x04,0x10, /* [ 7861] OBJ_sphincssha2128ssimple */ + 0x2B,0xCE,0x0F,0x06,0x04,0x11, /* [ 7867] OBJ_p256_sphincssha2128ssimple */ + 0x2B,0xCE,0x0F,0x06,0x04,0x12, /* [ 7873] OBJ_rsa3072_sphincssha2128ssimple */ + 0x2B,0xCE,0x0F,0x06,0x05,0x0A, /* [ 7879] OBJ_sphincssha2192fsimple */ + 0x2B,0xCE,0x0F,0x06,0x05,0x0B, /* [ 7885] OBJ_p384_sphincssha2192fsimple */ + 0x2B,0xCE,0x0F,0x06,0x07,0x0D, /* [ 7891] OBJ_sphincsshake128fsimple */ + 0x2B,0xCE,0x0F,0x06,0x07,0x0E, /* [ 7897] OBJ_p256_sphincsshake128fsimple */ + 0x2B,0xCE,0x0F,0x06,0x07,0x0F, /* [ 7903] OBJ_rsa3072_sphincsshake128fsimple */ }; -#define NUM_NID 1267 +#define NUM_NID 1250 static const ASN1_OBJECT nid_objs[NUM_NID] = { {"UNDEF", "undefined", NID_undef}, {"rsadsi", "RSA Data Security, Inc.", NID_rsadsi, 6, &so[0]}, @@ -2322,9 +2311,6 @@ static const ASN1_OBJECT nid_objs[NUM_NID] = { {"bikel1", "bikel1", NID_bikel1}, {"bikel3", "bikel3", NID_bikel3}, {"bikel5", "bikel5", NID_bikel5}, - {"kyber90s512", "kyber90s512", NID_kyber90s512}, - {"kyber90s768", "kyber90s768", NID_kyber90s768}, - {"kyber90s1024", "kyber90s1024", NID_kyber90s1024}, {"hqc128", "hqc128", NID_hqc128}, {"hqc192", "hqc192", NID_hqc192}, {"hqc256", "hqc256", NID_hqc256}, @@ -2341,9 +2327,6 @@ static const ASN1_OBJECT nid_objs[NUM_NID] = { {"p256_bikel1", "p256_bikel1", NID_p256_bikel1}, {"p384_bikel3", "p384_bikel3", NID_p384_bikel3}, {"p521_bikel5", "p521_bikel5", NID_p521_bikel5}, - {"p256_kyber90s512", "p256_kyber90s512", NID_p256_kyber90s512}, - {"p384_kyber90s768", "p384_kyber90s768", NID_p384_kyber90s768}, - {"p521_kyber90s1024", "p521_kyber90s1024", NID_p521_kyber90s1024}, {"p256_hqc128", "p256_hqc128", NID_p256_hqc128}, {"p384_hqc192", "p384_hqc192", NID_p384_hqc192}, {"p521_hqc256", "p521_hqc256", NID_p521_hqc256}, @@ -2354,36 +2337,25 @@ static const ASN1_OBJECT nid_objs[NUM_NID] = { {"p384_dilithium3", "p384_dilithium3", NID_p384_dilithium3, 6, &so[7795]}, {"dilithium5", "dilithium5", NID_dilithium5, 11, &so[7801]}, {"p521_dilithium5", "p521_dilithium5", NID_p521_dilithium5, 6, &so[7812]}, - {"dilithium2_aes", "dilithium2_aes", NID_dilithium2_aes, 11, &so[7818]}, - {"p256_dilithium2_aes", "p256_dilithium2_aes", NID_p256_dilithium2_aes, 6, &so[7829]}, - {"rsa3072_dilithium2_aes", "rsa3072_dilithium2_aes", NID_rsa3072_dilithium2_aes, 6, &so[7835]}, - {"dilithium3_aes", "dilithium3_aes", NID_dilithium3_aes, 11, &so[7841]}, - {"p384_dilithium3_aes", "p384_dilithium3_aes", NID_p384_dilithium3_aes, 6, &so[7852]}, - {"dilithium5_aes", "dilithium5_aes", NID_dilithium5_aes, 11, &so[7858]}, - {"p521_dilithium5_aes", "p521_dilithium5_aes", NID_p521_dilithium5_aes, 6, &so[7869]}, - {"falcon512", "falcon512", NID_falcon512, 5, &so[7875]}, - {"p256_falcon512", "p256_falcon512", NID_p256_falcon512, 5, &so[7880]}, - {"rsa3072_falcon512", "rsa3072_falcon512", NID_rsa3072_falcon512, 5, &so[7885]}, - {"falcon1024", "falcon1024", NID_falcon1024, 5, &so[7890]}, - {"p521_falcon1024", "p521_falcon1024", NID_p521_falcon1024, 5, &so[7895]}, - {"sphincsharaka128frobust", "sphincsharaka128frobust", NID_sphincsharaka128frobust, 6, &so[7900]}, - {"p256_sphincsharaka128frobust", "p256_sphincsharaka128frobust", NID_p256_sphincsharaka128frobust, 6, &so[7906]}, - {"rsa3072_sphincsharaka128frobust", "rsa3072_sphincsharaka128frobust", NID_rsa3072_sphincsharaka128frobust, 6, &so[7912]}, - {"sphincsharaka128fsimple", "sphincsharaka128fsimple", NID_sphincsharaka128fsimple, 6, &so[7918]}, - {"p256_sphincsharaka128fsimple", "p256_sphincsharaka128fsimple", NID_p256_sphincsharaka128fsimple, 6, &so[7924]}, - {"rsa3072_sphincsharaka128fsimple", "rsa3072_sphincsharaka128fsimple", NID_rsa3072_sphincsharaka128fsimple, 6, &so[7930]}, - {"sphincssha256128frobust", "sphincssha256128frobust", NID_sphincssha256128frobust, 6, &so[7936]}, - {"p256_sphincssha256128frobust", "p256_sphincssha256128frobust", NID_p256_sphincssha256128frobust, 6, &so[7942]}, - {"rsa3072_sphincssha256128frobust", "rsa3072_sphincssha256128frobust", NID_rsa3072_sphincssha256128frobust, 6, &so[7948]}, - {"sphincssha256128ssimple", "sphincssha256128ssimple", NID_sphincssha256128ssimple, 6, &so[7954]}, - {"p256_sphincssha256128ssimple", "p256_sphincssha256128ssimple", NID_p256_sphincssha256128ssimple, 6, &so[7960]}, - {"rsa3072_sphincssha256128ssimple", "rsa3072_sphincssha256128ssimple", NID_rsa3072_sphincssha256128ssimple, 6, &so[7966]}, - {"sphincsshake256128fsimple", "sphincsshake256128fsimple", NID_sphincsshake256128fsimple, 6, &so[7972]}, - {"p256_sphincsshake256128fsimple", "p256_sphincsshake256128fsimple", NID_p256_sphincsshake256128fsimple, 6, &so[7978]}, - {"rsa3072_sphincsshake256128fsimple", "rsa3072_sphincsshake256128fsimple", NID_rsa3072_sphincsshake256128fsimple, 6, &so[7984]}, + {"falcon512", "falcon512", NID_falcon512, 5, &so[7818]}, + {"p256_falcon512", "p256_falcon512", NID_p256_falcon512, 5, &so[7823]}, + {"rsa3072_falcon512", "rsa3072_falcon512", NID_rsa3072_falcon512, 5, &so[7828]}, + {"falcon1024", "falcon1024", NID_falcon1024, 5, &so[7833]}, + {"p521_falcon1024", "p521_falcon1024", NID_p521_falcon1024, 5, &so[7838]}, + {"sphincssha2128fsimple", "sphincssha2128fsimple", NID_sphincssha2128fsimple, 6, &so[7843]}, + {"p256_sphincssha2128fsimple", "p256_sphincssha2128fsimple", NID_p256_sphincssha2128fsimple, 6, &so[7849]}, + {"rsa3072_sphincssha2128fsimple", "rsa3072_sphincssha2128fsimple", NID_rsa3072_sphincssha2128fsimple, 6, &so[7855]}, + {"sphincssha2128ssimple", "sphincssha2128ssimple", NID_sphincssha2128ssimple, 6, &so[7861]}, + {"p256_sphincssha2128ssimple", "p256_sphincssha2128ssimple", NID_p256_sphincssha2128ssimple, 6, &so[7867]}, + {"rsa3072_sphincssha2128ssimple", "rsa3072_sphincssha2128ssimple", NID_rsa3072_sphincssha2128ssimple, 6, &so[7873]}, + {"sphincssha2192fsimple", "sphincssha2192fsimple", NID_sphincssha2192fsimple, 6, &so[7879]}, + {"p384_sphincssha2192fsimple", "p384_sphincssha2192fsimple", NID_p384_sphincssha2192fsimple, 6, &so[7885]}, + {"sphincsshake128fsimple", "sphincsshake128fsimple", NID_sphincsshake128fsimple, 6, &so[7891]}, + {"p256_sphincsshake128fsimple", "p256_sphincsshake128fsimple", NID_p256_sphincsshake128fsimple, 6, &so[7897]}, + {"rsa3072_sphincsshake128fsimple", "rsa3072_sphincsshake128fsimple", NID_rsa3072_sphincsshake128fsimple, 6, &so[7903]}, }; -#define NUM_SN 1256 +#define NUM_SN 1239 static const unsigned int sn_objs[NUM_SN] = { 364, /* "AD_DVCS" */ 419, /* "AES-128-CBC" */ @@ -2791,12 +2763,9 @@ static const unsigned int sn_objs[NUM_SN] = { 939, /* "dhSinglePass-stdDH-sha384kdf-scheme" */ 940, /* "dhSinglePass-stdDH-sha512kdf-scheme" */ 920, /* "dhpublicnumber" */ - 1233, /* "dilithium2" */ - 1240, /* "dilithium2_aes" */ - 1236, /* "dilithium3" */ - 1243, /* "dilithium3_aes" */ - 1238, /* "dilithium5" */ - 1245, /* "dilithium5_aes" */ + 1227, /* "dilithium2" */ + 1230, /* "dilithium3" */ + 1232, /* "dilithium5" */ 382, /* "directory" */ 887, /* "distinguishedName" */ 892, /* "dmdName" */ @@ -2838,8 +2807,8 @@ static const unsigned int sn_objs[NUM_SN] = { 126, /* "extendedKeyUsage" */ 372, /* "extendedStatus" */ 867, /* "facsimileTelephoneNumber" */ - 1250, /* "falcon1024" */ - 1247, /* "falcon512" */ + 1237, /* "falcon1024" */ + 1234, /* "falcon512" */ 462, /* "favouriteDrink" */ 1126, /* "ffdhe2048" */ 1127, /* "ffdhe3072" */ @@ -2894,9 +2863,9 @@ static const unsigned int sn_objs[NUM_SN] = { 473, /* "homeTelephoneNumber" */ 466, /* "host" */ 889, /* "houseIdentifier" */ - 1211, /* "hqc128" */ - 1212, /* "hqc192" */ - 1213, /* "hqc256" */ + 1208, /* "hqc128" */ + 1209, /* "hqc192" */ + 1210, /* "hqc256" */ 442, /* "iA5StringSyntax" */ 783, /* "id-DHBasedMac" */ 824, /* "id-Gost28147-89-CryptoPro-A-ParamSet" */ @@ -3224,9 +3193,6 @@ static const unsigned int sn_objs[NUM_SN] = { 1204, /* "kyber1024" */ 1202, /* "kyber512" */ 1203, /* "kyber768" */ - 1210, /* "kyber90s1024" */ - 1208, /* "kyber90s512" */ - 1209, /* "kyber90s768" */ 477, /* "lastModifiedBy" */ 476, /* "lastModifiedTime" */ 157, /* "localKeyID" */ @@ -3283,37 +3249,30 @@ static const unsigned int sn_objs[NUM_SN] = { 1141, /* "oscca" */ 475, /* "otherMailbox" */ 876, /* "owner" */ - 1224, /* "p256_bikel1" */ - 1234, /* "p256_dilithium2" */ - 1241, /* "p256_dilithium2_aes" */ - 1248, /* "p256_falcon512" */ - 1215, /* "p256_frodo640aes" */ - 1216, /* "p256_frodo640shake" */ - 1230, /* "p256_hqc128" */ - 1221, /* "p256_kyber512" */ - 1227, /* "p256_kyber90s512" */ - 1253, /* "p256_sphincsharaka128frobust" */ - 1256, /* "p256_sphincsharaka128fsimple" */ - 1259, /* "p256_sphincssha256128frobust" */ - 1262, /* "p256_sphincssha256128ssimple" */ - 1265, /* "p256_sphincsshake256128fsimple" */ - 1225, /* "p384_bikel3" */ - 1237, /* "p384_dilithium3" */ - 1244, /* "p384_dilithium3_aes" */ - 1217, /* "p384_frodo976aes" */ - 1218, /* "p384_frodo976shake" */ - 1231, /* "p384_hqc192" */ - 1222, /* "p384_kyber768" */ - 1228, /* "p384_kyber90s768" */ - 1226, /* "p521_bikel5" */ - 1239, /* "p521_dilithium5" */ - 1246, /* "p521_dilithium5_aes" */ - 1251, /* "p521_falcon1024" */ - 1219, /* "p521_frodo1344aes" */ - 1220, /* "p521_frodo1344shake" */ - 1232, /* "p521_hqc256" */ - 1223, /* "p521_kyber1024" */ - 1229, /* "p521_kyber90s1024" */ + 1221, /* "p256_bikel1" */ + 1228, /* "p256_dilithium2" */ + 1235, /* "p256_falcon512" */ + 1212, /* "p256_frodo640aes" */ + 1213, /* "p256_frodo640shake" */ + 1224, /* "p256_hqc128" */ + 1218, /* "p256_kyber512" */ + 1240, /* "p256_sphincssha2128fsimple" */ + 1243, /* "p256_sphincssha2128ssimple" */ + 1248, /* "p256_sphincsshake128fsimple" */ + 1222, /* "p384_bikel3" */ + 1231, /* "p384_dilithium3" */ + 1214, /* "p384_frodo976aes" */ + 1215, /* "p384_frodo976shake" */ + 1225, /* "p384_hqc192" */ + 1219, /* "p384_kyber768" */ + 1246, /* "p384_sphincssha2192fsimple" */ + 1223, /* "p521_bikel5" */ + 1233, /* "p521_dilithium5" */ + 1238, /* "p521_falcon1024" */ + 1216, /* "p521_frodo1344aes" */ + 1217, /* "p521_frodo1344shake" */ + 1226, /* "p521_hqc256" */ + 1220, /* "p521_kyber1024" */ 489, /* "pagerTelephoneNumber" */ 374, /* "path" */ 112, /* "pbeWithMD5AndCast5CBC" */ @@ -3377,14 +3336,11 @@ static const unsigned int sn_objs[NUM_SN] = { 877, /* "roleOccupant" */ 448, /* "room" */ 463, /* "roomNumber" */ - 1235, /* "rsa3072_dilithium2" */ - 1242, /* "rsa3072_dilithium2_aes" */ - 1249, /* "rsa3072_falcon512" */ - 1254, /* "rsa3072_sphincsharaka128frobust" */ - 1257, /* "rsa3072_sphincsharaka128fsimple" */ - 1260, /* "rsa3072_sphincssha256128frobust" */ - 1263, /* "rsa3072_sphincssha256128ssimple" */ - 1266, /* "rsa3072_sphincsshake256128fsimple" */ + 1229, /* "rsa3072_dilithium2" */ + 1236, /* "rsa3072_falcon512" */ + 1241, /* "rsa3072_sphincssha2128fsimple" */ + 1244, /* "rsa3072_sphincssha2128ssimple" */ + 1249, /* "rsa3072_sphincsshake128fsimple" */ 6, /* "rsaEncryption" */ 644, /* "rsaOAEPEncryptionSET" */ 377, /* "rsaSignature" */ @@ -3576,11 +3532,10 @@ static const unsigned int sn_objs[NUM_SN] = { 496, /* "singleLevelQuality" */ 1142, /* "sm-scheme" */ 387, /* "snmpv2" */ - 1252, /* "sphincsharaka128frobust" */ - 1255, /* "sphincsharaka128fsimple" */ - 1258, /* "sphincssha256128frobust" */ - 1261, /* "sphincssha256128ssimple" */ - 1264, /* "sphincsshake256128fsimple" */ + 1239, /* "sphincssha2128fsimple" */ + 1242, /* "sphincssha2128ssimple" */ + 1245, /* "sphincssha2192fsimple" */ + 1247, /* "sphincsshake128fsimple" */ 660, /* "street" */ 85, /* "subjectAltName" */ 769, /* "subjectDirectoryAttributes" */ @@ -3643,7 +3598,7 @@ static const unsigned int sn_objs[NUM_SN] = { 1093, /* "x509ExtAdmission" */ }; -#define NUM_LN 1256 +#define NUM_LN 1239 static const unsigned int ln_objs[NUM_LN] = { 363, /* "AD Time Stamping" */ 405, /* "ANSI X9.62" */ @@ -4080,12 +4035,9 @@ static const unsigned int ln_objs[NUM_LN] = { 938, /* "dhSinglePass-stdDH-sha256kdf-scheme" */ 939, /* "dhSinglePass-stdDH-sha384kdf-scheme" */ 940, /* "dhSinglePass-stdDH-sha512kdf-scheme" */ - 1233, /* "dilithium2" */ - 1240, /* "dilithium2_aes" */ - 1236, /* "dilithium3" */ - 1243, /* "dilithium3_aes" */ - 1238, /* "dilithium5" */ - 1245, /* "dilithium5_aes" */ + 1227, /* "dilithium2" */ + 1230, /* "dilithium3" */ + 1232, /* "dilithium5" */ 11, /* "directory services (X.500)" */ 378, /* "directory services - algorithms" */ 887, /* "distinguishedName" */ @@ -4133,8 +4085,8 @@ static const unsigned int ln_objs[NUM_LN] = { 885, /* "enhancedSearchGuide" */ 56, /* "extendedCertificateAttributes" */ 867, /* "facsimileTelephoneNumber" */ - 1250, /* "falcon1024" */ - 1247, /* "falcon512" */ + 1237, /* "falcon1024" */ + 1234, /* "falcon512" */ 462, /* "favouriteDrink" */ 1126, /* "ffdhe2048" */ 1127, /* "ffdhe3072" */ @@ -4186,9 +4138,9 @@ static const unsigned int ln_objs[NUM_LN] = { 473, /* "homeTelephoneNumber" */ 466, /* "host" */ 889, /* "houseIdentifier" */ - 1211, /* "hqc128" */ - 1212, /* "hqc192" */ - 1213, /* "hqc256" */ + 1208, /* "hqc128" */ + 1209, /* "hqc192" */ + 1210, /* "hqc256" */ 442, /* "iA5StringSyntax" */ 381, /* "iana" */ 824, /* "id-Gost28147-89-CryptoPro-A-ParamSet" */ @@ -4471,9 +4423,6 @@ static const unsigned int ln_objs[NUM_LN] = { 1204, /* "kyber1024" */ 1202, /* "kyber512" */ 1203, /* "kyber768" */ - 1210, /* "kyber90s1024" */ - 1208, /* "kyber90s512" */ - 1209, /* "kyber90s768" */ 477, /* "lastModifiedBy" */ 476, /* "lastModifiedTime" */ 157, /* "localKeyID" */ @@ -4516,37 +4465,30 @@ static const unsigned int ln_objs[NUM_LN] = { 1141, /* "oscca" */ 475, /* "otherMailbox" */ 876, /* "owner" */ - 1224, /* "p256_bikel1" */ - 1234, /* "p256_dilithium2" */ - 1241, /* "p256_dilithium2_aes" */ - 1248, /* "p256_falcon512" */ - 1215, /* "p256_frodo640aes" */ - 1216, /* "p256_frodo640shake" */ - 1230, /* "p256_hqc128" */ - 1221, /* "p256_kyber512" */ - 1227, /* "p256_kyber90s512" */ - 1253, /* "p256_sphincsharaka128frobust" */ - 1256, /* "p256_sphincsharaka128fsimple" */ - 1259, /* "p256_sphincssha256128frobust" */ - 1262, /* "p256_sphincssha256128ssimple" */ - 1265, /* "p256_sphincsshake256128fsimple" */ - 1225, /* "p384_bikel3" */ - 1237, /* "p384_dilithium3" */ - 1244, /* "p384_dilithium3_aes" */ - 1217, /* "p384_frodo976aes" */ - 1218, /* "p384_frodo976shake" */ - 1231, /* "p384_hqc192" */ - 1222, /* "p384_kyber768" */ - 1228, /* "p384_kyber90s768" */ - 1226, /* "p521_bikel5" */ - 1239, /* "p521_dilithium5" */ - 1246, /* "p521_dilithium5_aes" */ - 1251, /* "p521_falcon1024" */ - 1219, /* "p521_frodo1344aes" */ - 1220, /* "p521_frodo1344shake" */ - 1232, /* "p521_hqc256" */ - 1223, /* "p521_kyber1024" */ - 1229, /* "p521_kyber90s1024" */ + 1221, /* "p256_bikel1" */ + 1228, /* "p256_dilithium2" */ + 1235, /* "p256_falcon512" */ + 1212, /* "p256_frodo640aes" */ + 1213, /* "p256_frodo640shake" */ + 1224, /* "p256_hqc128" */ + 1218, /* "p256_kyber512" */ + 1240, /* "p256_sphincssha2128fsimple" */ + 1243, /* "p256_sphincssha2128ssimple" */ + 1248, /* "p256_sphincsshake128fsimple" */ + 1222, /* "p384_bikel3" */ + 1231, /* "p384_dilithium3" */ + 1214, /* "p384_frodo976aes" */ + 1215, /* "p384_frodo976shake" */ + 1225, /* "p384_hqc192" */ + 1219, /* "p384_kyber768" */ + 1246, /* "p384_sphincssha2192fsimple" */ + 1223, /* "p521_bikel5" */ + 1233, /* "p521_dilithium5" */ + 1238, /* "p521_falcon1024" */ + 1216, /* "p521_frodo1344aes" */ + 1217, /* "p521_frodo1344shake" */ + 1226, /* "p521_hqc256" */ + 1220, /* "p521_kyber1024" */ 935, /* "pSpecified" */ 489, /* "pagerTelephoneNumber" */ 782, /* "password based MAC" */ @@ -4634,14 +4576,11 @@ static const unsigned int ln_objs[NUM_LN] = { 448, /* "room" */ 463, /* "roomNumber" */ 19, /* "rsa" */ - 1235, /* "rsa3072_dilithium2" */ - 1242, /* "rsa3072_dilithium2_aes" */ - 1249, /* "rsa3072_falcon512" */ - 1254, /* "rsa3072_sphincsharaka128frobust" */ - 1257, /* "rsa3072_sphincsharaka128fsimple" */ - 1260, /* "rsa3072_sphincssha256128frobust" */ - 1263, /* "rsa3072_sphincssha256128ssimple" */ - 1266, /* "rsa3072_sphincsshake256128fsimple" */ + 1229, /* "rsa3072_dilithium2" */ + 1236, /* "rsa3072_falcon512" */ + 1241, /* "rsa3072_sphincssha2128fsimple" */ + 1244, /* "rsa3072_sphincssha2128ssimple" */ + 1249, /* "rsa3072_sphincsshake128fsimple" */ 6, /* "rsaEncryption" */ 644, /* "rsaOAEPEncryptionSET" */ 377, /* "rsaSignature" */ @@ -4850,11 +4789,10 @@ static const unsigned int ln_objs[NUM_LN] = { 1139, /* "sm4-ctr" */ 1133, /* "sm4-ecb" */ 1135, /* "sm4-ofb" */ - 1252, /* "sphincsharaka128frobust" */ - 1255, /* "sphincsharaka128fsimple" */ - 1258, /* "sphincssha256128frobust" */ - 1261, /* "sphincssha256128ssimple" */ - 1264, /* "sphincsshake256128fsimple" */ + 1239, /* "sphincssha2128fsimple" */ + 1242, /* "sphincssha2128ssimple" */ + 1245, /* "sphincssha2192fsimple" */ + 1247, /* "sphincsshake128fsimple" */ 16, /* "stateOrProvinceName" */ 660, /* "streetAddress" */ 498, /* "subtreeMaximumQuality" */ @@ -4903,7 +4841,7 @@ static const unsigned int ln_objs[NUM_LN] = { 125, /* "zlib compression" */ }; -#define NUM_OBJ 1105 +#define NUM_OBJ 1094 static const unsigned int obj_objs[NUM_OBJ] = { 0, /* OBJ_undef 0 */ 181, /* OBJ_iso 1 */ @@ -5211,11 +5149,11 @@ static const unsigned int obj_objs[NUM_OBJ] = { 732, /* OBJ_sect409r1 1 3 132 0 37 */ 733, /* OBJ_sect571k1 1 3 132 0 38 */ 734, /* OBJ_sect571r1 1 3 132 0 39 */ - 1247, /* OBJ_falcon512 1 3 9999 3 6 */ - 1248, /* OBJ_p256_falcon512 1 3 9999 3 7 */ - 1249, /* OBJ_rsa3072_falcon512 1 3 9999 3 8 */ - 1250, /* OBJ_falcon1024 1 3 9999 3 9 */ - 1251, /* OBJ_p521_falcon1024 1 3 9999 3 10 */ + 1234, /* OBJ_falcon512 1 3 9999 3 6 */ + 1235, /* OBJ_p256_falcon512 1 3 9999 3 7 */ + 1236, /* OBJ_rsa3072_falcon512 1 3 9999 3 8 */ + 1237, /* OBJ_falcon1024 1 3 9999 3 9 */ + 1238, /* OBJ_p521_falcon1024 1 3 9999 3 10 */ 624, /* OBJ_set_rootKeyThumb 2 23 42 3 0 0 */ 625, /* OBJ_set_addPolicy 2 23 42 3 0 1 */ 626, /* OBJ_setAttr_Token_EMV 2 23 42 3 2 1 */ @@ -5266,29 +5204,21 @@ static const unsigned int obj_objs[NUM_OBJ] = { 943, /* OBJ_dhSinglePass_cofactorDH_sha256kdf_scheme 1 3 132 1 14 1 */ 944, /* OBJ_dhSinglePass_cofactorDH_sha384kdf_scheme 1 3 132 1 14 2 */ 945, /* OBJ_dhSinglePass_cofactorDH_sha512kdf_scheme 1 3 132 1 14 3 */ - 1234, /* OBJ_p256_dilithium2 1 3 9999 2 7 1 */ - 1235, /* OBJ_rsa3072_dilithium2 1 3 9999 2 7 2 */ - 1237, /* OBJ_p384_dilithium3 1 3 9999 2 7 3 */ - 1239, /* OBJ_p521_dilithium5 1 3 9999 2 7 4 */ - 1241, /* OBJ_p256_dilithium2_aes 1 3 9999 2 11 1 */ - 1242, /* OBJ_rsa3072_dilithium2_aes 1 3 9999 2 11 2 */ - 1244, /* OBJ_p384_dilithium3_aes 1 3 9999 2 11 3 */ - 1246, /* OBJ_p521_dilithium5_aes 1 3 9999 2 11 4 */ - 1252, /* OBJ_sphincsharaka128frobust 1 3 9999 6 1 1 */ - 1253, /* OBJ_p256_sphincsharaka128frobust 1 3 9999 6 1 2 */ - 1254, /* OBJ_rsa3072_sphincsharaka128frobust 1 3 9999 6 1 3 */ - 1255, /* OBJ_sphincsharaka128fsimple 1 3 9999 6 1 4 */ - 1256, /* OBJ_p256_sphincsharaka128fsimple 1 3 9999 6 1 5 */ - 1257, /* OBJ_rsa3072_sphincsharaka128fsimple 1 3 9999 6 1 6 */ - 1258, /* OBJ_sphincssha256128frobust 1 3 9999 6 4 1 */ - 1259, /* OBJ_p256_sphincssha256128frobust 1 3 9999 6 4 2 */ - 1260, /* OBJ_rsa3072_sphincssha256128frobust 1 3 9999 6 4 3 */ - 1261, /* OBJ_sphincssha256128ssimple 1 3 9999 6 4 10 */ - 1262, /* OBJ_p256_sphincssha256128ssimple 1 3 9999 6 4 11 */ - 1263, /* OBJ_rsa3072_sphincssha256128ssimple 1 3 9999 6 4 12 */ - 1264, /* OBJ_sphincsshake256128fsimple 1 3 9999 6 7 4 */ - 1265, /* OBJ_p256_sphincsshake256128fsimple 1 3 9999 6 7 5 */ - 1266, /* OBJ_rsa3072_sphincsshake256128fsimple 1 3 9999 6 7 6 */ + 1228, /* OBJ_p256_dilithium2 1 3 9999 2 7 1 */ + 1229, /* OBJ_rsa3072_dilithium2 1 3 9999 2 7 2 */ + 1231, /* OBJ_p384_dilithium3 1 3 9999 2 7 3 */ + 1233, /* OBJ_p521_dilithium5 1 3 9999 2 7 4 */ + 1239, /* OBJ_sphincssha2128fsimple 1 3 9999 6 4 13 */ + 1240, /* OBJ_p256_sphincssha2128fsimple 1 3 9999 6 4 14 */ + 1241, /* OBJ_rsa3072_sphincssha2128fsimple 1 3 9999 6 4 15 */ + 1242, /* OBJ_sphincssha2128ssimple 1 3 9999 6 4 16 */ + 1243, /* OBJ_p256_sphincssha2128ssimple 1 3 9999 6 4 17 */ + 1244, /* OBJ_rsa3072_sphincssha2128ssimple 1 3 9999 6 4 18 */ + 1245, /* OBJ_sphincssha2192fsimple 1 3 9999 6 5 10 */ + 1246, /* OBJ_p384_sphincssha2192fsimple 1 3 9999 6 5 11 */ + 1247, /* OBJ_sphincsshake128fsimple 1 3 9999 6 7 13 */ + 1248, /* OBJ_p256_sphincsshake128fsimple 1 3 9999 6 7 14 */ + 1249, /* OBJ_rsa3072_sphincsshake128fsimple 1 3 9999 6 7 15 */ 631, /* OBJ_setAttr_GenCryptgrm 2 23 42 3 3 3 1 */ 632, /* OBJ_setAttr_T2Enc 2 23 42 3 3 4 1 */ 633, /* OBJ_setAttr_T2cleartxt 2 23 42 3 3 4 2 */ @@ -5987,12 +5917,9 @@ static const unsigned int obj_objs[NUM_OBJ] = { 153, /* OBJ_crlBag 1 2 840 113549 1 12 10 1 4 */ 154, /* OBJ_secretBag 1 2 840 113549 1 12 10 1 5 */ 155, /* OBJ_safeContentsBag 1 2 840 113549 1 12 10 1 6 */ - 1233, /* OBJ_dilithium2 1 3 6 1 4 1 2 267 7 4 4 */ - 1236, /* OBJ_dilithium3 1 3 6 1 4 1 2 267 7 6 5 */ - 1238, /* OBJ_dilithium5 1 3 6 1 4 1 2 267 7 8 7 */ - 1240, /* OBJ_dilithium2_aes 1 3 6 1 4 1 2 267 11 4 4 */ - 1243, /* OBJ_dilithium3_aes 1 3 6 1 4 1 2 267 11 6 5 */ - 1245, /* OBJ_dilithium5_aes 1 3 6 1 4 1 2 267 11 8 7 */ + 1227, /* OBJ_dilithium2 1 3 6 1 4 1 2 267 7 4 4 */ + 1230, /* OBJ_dilithium3 1 3 6 1 4 1 2 267 7 6 5 */ + 1232, /* OBJ_dilithium5 1 3 6 1 4 1 2 267 7 8 7 */ 34, /* OBJ_idea_cbc 1 3 6 1 4 1 188 7 1 1 2 */ 955, /* OBJ_jurisdictionLocalityName 1 3 6 1 4 1 311 60 2 1 1 */ 956, /* OBJ_jurisdictionStateOrProvinceName 1 3 6 1 4 1 311 60 2 1 2 */ diff --git a/crypto/objects/obj_mac.num b/crypto/objects/obj_mac.num index 04f1e97d04901..77c493b3ddc17 100644 --- a/crypto/objects/obj_mac.num +++ b/crypto/objects/obj_mac.num @@ -1204,61 +1204,44 @@ kyber1024 1204 bikel1 1205 bikel3 1206 bikel5 1207 -kyber90s512 1208 -kyber90s768 1209 -kyber90s1024 1210 -hqc128 1211 -hqc192 1212 -hqc256 1213 -p256_frodo640aes 1215 -p256_frodo640shake 1216 -p384_frodo976aes 1217 -p384_frodo976shake 1218 -p521_frodo1344aes 1219 -p521_frodo1344shake 1220 -p256_kyber512 1221 -p384_kyber768 1222 -p521_kyber1024 1223 -p256_bikel1 1224 -p384_bikel3 1225 -p521_bikel5 1226 -p256_kyber90s512 1227 -p384_kyber90s768 1228 -p521_kyber90s1024 1229 -p256_hqc128 1230 -p384_hqc192 1231 -p521_hqc256 1232 -dilithium2 1233 -p256_dilithium2 1234 -rsa3072_dilithium2 1235 -dilithium3 1236 -p384_dilithium3 1237 -dilithium5 1238 -p521_dilithium5 1239 -dilithium2_aes 1240 -p256_dilithium2_aes 1241 -rsa3072_dilithium2_aes 1242 -dilithium3_aes 1243 -p384_dilithium3_aes 1244 -dilithium5_aes 1245 -p521_dilithium5_aes 1246 -falcon512 1247 -p256_falcon512 1248 -rsa3072_falcon512 1249 -falcon1024 1250 -p521_falcon1024 1251 -sphincsharaka128frobust 1252 -p256_sphincsharaka128frobust 1253 -rsa3072_sphincsharaka128frobust 1254 -sphincsharaka128fsimple 1255 -p256_sphincsharaka128fsimple 1256 -rsa3072_sphincsharaka128fsimple 1257 -sphincssha256128frobust 1258 -p256_sphincssha256128frobust 1259 -rsa3072_sphincssha256128frobust 1260 -sphincssha256128ssimple 1261 -p256_sphincssha256128ssimple 1262 -rsa3072_sphincssha256128ssimple 1263 -sphincsshake256128fsimple 1264 -p256_sphincsshake256128fsimple 1265 -rsa3072_sphincsshake256128fsimple 1266 +hqc128 1208 +hqc192 1209 +hqc256 1210 +p256_frodo640aes 1212 +p256_frodo640shake 1213 +p384_frodo976aes 1214 +p384_frodo976shake 1215 +p521_frodo1344aes 1216 +p521_frodo1344shake 1217 +p256_kyber512 1218 +p384_kyber768 1219 +p521_kyber1024 1220 +p256_bikel1 1221 +p384_bikel3 1222 +p521_bikel5 1223 +p256_hqc128 1224 +p384_hqc192 1225 +p521_hqc256 1226 +dilithium2 1227 +p256_dilithium2 1228 +rsa3072_dilithium2 1229 +dilithium3 1230 +p384_dilithium3 1231 +dilithium5 1232 +p521_dilithium5 1233 +falcon512 1234 +p256_falcon512 1235 +rsa3072_falcon512 1236 +falcon1024 1237 +p521_falcon1024 1238 +sphincssha2128fsimple 1239 +p256_sphincssha2128fsimple 1240 +rsa3072_sphincssha2128fsimple 1241 +sphincssha2128ssimple 1242 +p256_sphincssha2128ssimple 1243 +rsa3072_sphincssha2128ssimple 1244 +sphincssha2192fsimple 1245 +p384_sphincssha2192fsimple 1246 +sphincsshake128fsimple 1247 +p256_sphincsshake128fsimple 1248 +rsa3072_sphincsshake128fsimple 1249 diff --git a/crypto/objects/obj_xref.h b/crypto/objects/obj_xref.h index 4133a6937021d..276d16e687593 100644 --- a/crypto/objects/obj_xref.h +++ b/crypto/objects/obj_xref.h @@ -86,44 +86,29 @@ static const nid_triple sigoid_srt[] = { {NID_p384_dilithium3, NID_sha512, NID_p384_dilithium3}, {NID_dilithium5, NID_sha512, NID_dilithium5}, {NID_p521_dilithium5, NID_sha512, NID_p521_dilithium5}, - {NID_dilithium2_aes, NID_sha512, NID_dilithium2_aes}, - {NID_p256_dilithium2_aes, NID_sha512, NID_p256_dilithium2_aes}, - {NID_rsa3072_dilithium2_aes, NID_sha512, NID_rsa3072_dilithium2_aes}, - {NID_dilithium3_aes, NID_sha512, NID_dilithium3_aes}, - {NID_p384_dilithium3_aes, NID_sha512, NID_p384_dilithium3_aes}, - {NID_dilithium5_aes, NID_sha512, NID_dilithium5_aes}, - {NID_p521_dilithium5_aes, NID_sha512, NID_p521_dilithium5_aes}, {NID_falcon512, NID_sha512, NID_falcon512}, {NID_p256_falcon512, NID_sha512, NID_p256_falcon512}, {NID_rsa3072_falcon512, NID_sha512, NID_rsa3072_falcon512}, {NID_falcon1024, NID_sha512, NID_falcon1024}, {NID_p521_falcon1024, NID_sha512, NID_p521_falcon1024}, - {NID_sphincsharaka128frobust, NID_sha512, NID_sphincsharaka128frobust}, - {NID_p256_sphincsharaka128frobust, NID_sha512, - NID_p256_sphincsharaka128frobust}, - {NID_rsa3072_sphincsharaka128frobust, NID_sha512, - NID_rsa3072_sphincsharaka128frobust}, - {NID_sphincsharaka128fsimple, NID_sha512, NID_sphincsharaka128fsimple}, - {NID_p256_sphincsharaka128fsimple, NID_sha512, - NID_p256_sphincsharaka128fsimple}, - {NID_rsa3072_sphincsharaka128fsimple, NID_sha512, - NID_rsa3072_sphincsharaka128fsimple}, - {NID_sphincssha256128frobust, NID_sha512, NID_sphincssha256128frobust}, - {NID_p256_sphincssha256128frobust, NID_sha512, - NID_p256_sphincssha256128frobust}, - {NID_rsa3072_sphincssha256128frobust, NID_sha512, - NID_rsa3072_sphincssha256128frobust}, - {NID_sphincssha256128ssimple, NID_sha512, NID_sphincssha256128ssimple}, - {NID_p256_sphincssha256128ssimple, NID_sha512, - NID_p256_sphincssha256128ssimple}, - {NID_rsa3072_sphincssha256128ssimple, NID_sha512, - NID_rsa3072_sphincssha256128ssimple}, - {NID_sphincsshake256128fsimple, NID_sha512, - NID_sphincsshake256128fsimple}, - {NID_p256_sphincsshake256128fsimple, NID_sha512, - NID_p256_sphincsshake256128fsimple}, - {NID_rsa3072_sphincsshake256128fsimple, NID_sha512, - NID_rsa3072_sphincsshake256128fsimple}, + {NID_sphincssha2128fsimple, NID_sha512, NID_sphincssha2128fsimple}, + {NID_p256_sphincssha2128fsimple, NID_sha512, + NID_p256_sphincssha2128fsimple}, + {NID_rsa3072_sphincssha2128fsimple, NID_sha512, + NID_rsa3072_sphincssha2128fsimple}, + {NID_sphincssha2128ssimple, NID_sha512, NID_sphincssha2128ssimple}, + {NID_p256_sphincssha2128ssimple, NID_sha512, + NID_p256_sphincssha2128ssimple}, + {NID_rsa3072_sphincssha2128ssimple, NID_sha512, + NID_rsa3072_sphincssha2128ssimple}, + {NID_sphincssha2192fsimple, NID_sha512, NID_sphincssha2192fsimple}, + {NID_p384_sphincssha2192fsimple, NID_sha512, + NID_p384_sphincssha2192fsimple}, + {NID_sphincsshake128fsimple, NID_sha512, NID_sphincsshake128fsimple}, + {NID_p256_sphincsshake128fsimple, NID_sha512, + NID_p256_sphincsshake128fsimple}, + {NID_rsa3072_sphincsshake128fsimple, NID_sha512, + NID_rsa3072_sphincsshake128fsimple}, }; static const nid_triple *const sigoid_srt_xref[] = { @@ -178,17 +163,6 @@ static const nid_triple *const sigoid_srt_xref[] = { &sigoid_srt[68], &sigoid_srt[69], &sigoid_srt[70], - &sigoid_srt[71], - &sigoid_srt[72], - &sigoid_srt[73], - &sigoid_srt[74], - &sigoid_srt[75], - &sigoid_srt[76], - &sigoid_srt[77], - &sigoid_srt[78], - &sigoid_srt[79], - &sigoid_srt[80], - &sigoid_srt[81], &sigoid_srt[16], &sigoid_srt[23], &sigoid_srt[19], diff --git a/crypto/objects/obj_xref.txt b/crypto/objects/obj_xref.txt index f0c522cfc615f..60be168df660b 100644 --- a/crypto/objects/obj_xref.txt +++ b/crypto/objects/obj_xref.txt @@ -31,33 +31,22 @@ dilithium3 sha512 dilithium3 p384_dilithium3 sha512 p384_dilithium3 dilithium5 sha512 dilithium5 p521_dilithium5 sha512 p521_dilithium5 -dilithium2_aes sha512 dilithium2_aes -p256_dilithium2_aes sha512 p256_dilithium2_aes -rsa3072_dilithium2_aes sha512 rsa3072_dilithium2_aes -dilithium3_aes sha512 dilithium3_aes -p384_dilithium3_aes sha512 p384_dilithium3_aes -dilithium5_aes sha512 dilithium5_aes -p521_dilithium5_aes sha512 p521_dilithium5_aes falcon512 sha512 falcon512 p256_falcon512 sha512 p256_falcon512 rsa3072_falcon512 sha512 rsa3072_falcon512 falcon1024 sha512 falcon1024 p521_falcon1024 sha512 p521_falcon1024 -sphincsharaka128frobust sha512 sphincsharaka128frobust -p256_sphincsharaka128frobust sha512 p256_sphincsharaka128frobust -rsa3072_sphincsharaka128frobust sha512 rsa3072_sphincsharaka128frobust -sphincsharaka128fsimple sha512 sphincsharaka128fsimple -p256_sphincsharaka128fsimple sha512 p256_sphincsharaka128fsimple -rsa3072_sphincsharaka128fsimple sha512 rsa3072_sphincsharaka128fsimple -sphincssha256128frobust sha512 sphincssha256128frobust -p256_sphincssha256128frobust sha512 p256_sphincssha256128frobust -rsa3072_sphincssha256128frobust sha512 rsa3072_sphincssha256128frobust -sphincssha256128ssimple sha512 sphincssha256128ssimple -p256_sphincssha256128ssimple sha512 p256_sphincssha256128ssimple -rsa3072_sphincssha256128ssimple sha512 rsa3072_sphincssha256128ssimple -sphincsshake256128fsimple sha512 sphincsshake256128fsimple -p256_sphincsshake256128fsimple sha512 p256_sphincsshake256128fsimple -rsa3072_sphincsshake256128fsimple sha512 rsa3072_sphincsshake256128fsimple +sphincssha2128fsimple sha512 sphincssha2128fsimple +p256_sphincssha2128fsimple sha512 p256_sphincssha2128fsimple +rsa3072_sphincssha2128fsimple sha512 rsa3072_sphincssha2128fsimple +sphincssha2128ssimple sha512 sphincssha2128ssimple +p256_sphincssha2128ssimple sha512 p256_sphincssha2128ssimple +rsa3072_sphincssha2128ssimple sha512 rsa3072_sphincssha2128ssimple +sphincssha2192fsimple sha512 sphincssha2192fsimple +p384_sphincssha2192fsimple sha512 p384_sphincssha2192fsimple +sphincsshake128fsimple sha512 sphincsshake128fsimple +p256_sphincsshake128fsimple sha512 p256_sphincsshake128fsimple +rsa3072_sphincsshake128fsimple sha512 rsa3072_sphincsshake128fsimple ##### OQS_TEMPLATE_FRAGMENT_LIST_OQS_SIGS_END diff --git a/crypto/objects/objects.txt b/crypto/objects/objects.txt index 7b50ac5291324..9e817e42fbb9b 100644 --- a/crypto/objects/objects.txt +++ b/crypto/objects/objects.txt @@ -1701,12 +1701,6 @@ dstu4145le 2 9 : uacurve9 : DSTU curve 9 : p384_bikel3 : p384_bikel3 : bikel5 : bikel5 : p521_bikel5 : p521_bikel5 - : kyber90s512 : kyber90s512 - : p256_kyber90s512 : p256_kyber90s512 - : kyber90s768 : kyber90s768 - : p384_kyber90s768 : p384_kyber90s768 - : kyber90s1024 : kyber90s1024 - : p521_kyber90s1024 : p521_kyber90s1024 : hqc128 : hqc128 : p256_hqc128 : p256_hqc128 : hqc192 : hqc192 @@ -1723,31 +1717,20 @@ dstu4145le 2 9 : uacurve9 : DSTU curve 9 1 3 9999 2 7 3 : p384_dilithium3 : p384_dilithium3 1 3 6 1 4 1 2 267 7 8 7 : dilithium5 : dilithium5 1 3 9999 2 7 4 : p521_dilithium5 : p521_dilithium5 -1 3 6 1 4 1 2 267 11 4 4 : dilithium2_aes : dilithium2_aes -1 3 9999 2 11 1 : p256_dilithium2_aes : p256_dilithium2_aes -1 3 9999 2 11 2 : rsa3072_dilithium2_aes : rsa3072_dilithium2_aes -1 3 6 1 4 1 2 267 11 6 5 : dilithium3_aes : dilithium3_aes -1 3 9999 2 11 3 : p384_dilithium3_aes : p384_dilithium3_aes -1 3 6 1 4 1 2 267 11 8 7 : dilithium5_aes : dilithium5_aes -1 3 9999 2 11 4 : p521_dilithium5_aes : p521_dilithium5_aes 1 3 9999 3 6 : falcon512 : falcon512 1 3 9999 3 7 : p256_falcon512 : p256_falcon512 1 3 9999 3 8 : rsa3072_falcon512 : rsa3072_falcon512 1 3 9999 3 9 : falcon1024 : falcon1024 1 3 9999 3 10 : p521_falcon1024 : p521_falcon1024 -1 3 9999 6 1 1 : sphincsharaka128frobust : sphincsharaka128frobust -1 3 9999 6 1 2 : p256_sphincsharaka128frobust : p256_sphincsharaka128frobust -1 3 9999 6 1 3 : rsa3072_sphincsharaka128frobust : rsa3072_sphincsharaka128frobust -1 3 9999 6 1 4 : sphincsharaka128fsimple : sphincsharaka128fsimple -1 3 9999 6 1 5 : p256_sphincsharaka128fsimple : p256_sphincsharaka128fsimple -1 3 9999 6 1 6 : rsa3072_sphincsharaka128fsimple : rsa3072_sphincsharaka128fsimple -1 3 9999 6 4 1 : sphincssha256128frobust : sphincssha256128frobust -1 3 9999 6 4 2 : p256_sphincssha256128frobust : p256_sphincssha256128frobust -1 3 9999 6 4 3 : rsa3072_sphincssha256128frobust : rsa3072_sphincssha256128frobust -1 3 9999 6 4 10 : sphincssha256128ssimple : sphincssha256128ssimple -1 3 9999 6 4 11 : p256_sphincssha256128ssimple : p256_sphincssha256128ssimple -1 3 9999 6 4 12 : rsa3072_sphincssha256128ssimple : rsa3072_sphincssha256128ssimple -1 3 9999 6 7 4 : sphincsshake256128fsimple : sphincsshake256128fsimple -1 3 9999 6 7 5 : p256_sphincsshake256128fsimple : p256_sphincsshake256128fsimple -1 3 9999 6 7 6 : rsa3072_sphincsshake256128fsimple : rsa3072_sphincsshake256128fsimple +1 3 9999 6 4 13 : sphincssha2128fsimple : sphincssha2128fsimple +1 3 9999 6 4 14 : p256_sphincssha2128fsimple : p256_sphincssha2128fsimple +1 3 9999 6 4 15 : rsa3072_sphincssha2128fsimple : rsa3072_sphincssha2128fsimple +1 3 9999 6 4 16 : sphincssha2128ssimple : sphincssha2128ssimple +1 3 9999 6 4 17 : p256_sphincssha2128ssimple : p256_sphincssha2128ssimple +1 3 9999 6 4 18 : rsa3072_sphincssha2128ssimple : rsa3072_sphincssha2128ssimple +1 3 9999 6 5 10 : sphincssha2192fsimple : sphincssha2192fsimple +1 3 9999 6 5 11 : p384_sphincssha2192fsimple : p384_sphincssha2192fsimple +1 3 9999 6 7 13 : sphincsshake128fsimple : sphincsshake128fsimple +1 3 9999 6 7 14 : p256_sphincsshake128fsimple : p256_sphincsshake128fsimple +1 3 9999 6 7 15 : rsa3072_sphincsshake128fsimple : rsa3072_sphincsshake128fsimple ##### OQS_TEMPLATE_FRAGMENT_ASSIGN_SIG_OIDS_END diff --git a/crypto/x509/x509type.c b/crypto/x509/x509type.c index d46bb60caa853..d10f70eeb2e9e 100644 --- a/crypto/x509/x509type.c +++ b/crypto/x509/x509type.c @@ -55,33 +55,22 @@ int X509_certificate_type(const X509 *x, const EVP_PKEY *pkey) case EVP_PKEY_P384_DILITHIUM3: case EVP_PKEY_DILITHIUM5: case EVP_PKEY_P521_DILITHIUM5: - case EVP_PKEY_DILITHIUM2_AES: - case EVP_PKEY_P256_DILITHIUM2_AES: - case EVP_PKEY_RSA3072_DILITHIUM2_AES: - case EVP_PKEY_DILITHIUM3_AES: - case EVP_PKEY_P384_DILITHIUM3_AES: - case EVP_PKEY_DILITHIUM5_AES: - case EVP_PKEY_P521_DILITHIUM5_AES: case EVP_PKEY_FALCON512: case EVP_PKEY_P256_FALCON512: case EVP_PKEY_RSA3072_FALCON512: case EVP_PKEY_FALCON1024: case EVP_PKEY_P521_FALCON1024: - case EVP_PKEY_SPHINCSHARAKA128FROBUST: - case EVP_PKEY_P256_SPHINCSHARAKA128FROBUST: - case EVP_PKEY_RSA3072_SPHINCSHARAKA128FROBUST: - case EVP_PKEY_SPHINCSHARAKA128FSIMPLE: - case EVP_PKEY_P256_SPHINCSHARAKA128FSIMPLE: - case EVP_PKEY_RSA3072_SPHINCSHARAKA128FSIMPLE: - case EVP_PKEY_SPHINCSSHA256128FROBUST: - case EVP_PKEY_P256_SPHINCSSHA256128FROBUST: - case EVP_PKEY_RSA3072_SPHINCSSHA256128FROBUST: - case EVP_PKEY_SPHINCSSHA256128SSIMPLE: - case EVP_PKEY_P256_SPHINCSSHA256128SSIMPLE: - case EVP_PKEY_RSA3072_SPHINCSSHA256128SSIMPLE: - case EVP_PKEY_SPHINCSSHAKE256128FSIMPLE: - case EVP_PKEY_P256_SPHINCSSHAKE256128FSIMPLE: - case EVP_PKEY_RSA3072_SPHINCSSHAKE256128FSIMPLE: + case EVP_PKEY_SPHINCSSHA2128FSIMPLE: + case EVP_PKEY_P256_SPHINCSSHA2128FSIMPLE: + case EVP_PKEY_RSA3072_SPHINCSSHA2128FSIMPLE: + case EVP_PKEY_SPHINCSSHA2128SSIMPLE: + case EVP_PKEY_P256_SPHINCSSHA2128SSIMPLE: + case EVP_PKEY_RSA3072_SPHINCSSHA2128SSIMPLE: + case EVP_PKEY_SPHINCSSHA2192FSIMPLE: + case EVP_PKEY_P384_SPHINCSSHA2192FSIMPLE: + case EVP_PKEY_SPHINCSSHAKE128FSIMPLE: + case EVP_PKEY_P256_SPHINCSSHAKE128FSIMPLE: + case EVP_PKEY_RSA3072_SPHINCSSHAKE128FSIMPLE: ///// OQS_TEMPLATE_FRAGMENT_LIST_SIG_SWITCH_CASES_END ret = EVP_PKT_SIGN; break; diff --git a/include/crypto/asn1.h b/include/crypto/asn1.h index 39940c9924052..c78e7149fe37a 100644 --- a/include/crypto/asn1.h +++ b/include/crypto/asn1.h @@ -94,33 +94,22 @@ extern const EVP_PKEY_ASN1_METHOD dilithium3_asn1_meth; extern const EVP_PKEY_ASN1_METHOD p384_dilithium3_asn1_meth; extern const EVP_PKEY_ASN1_METHOD dilithium5_asn1_meth; extern const EVP_PKEY_ASN1_METHOD p521_dilithium5_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD dilithium2_aes_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD p256_dilithium2_aes_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD rsa3072_dilithium2_aes_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD dilithium3_aes_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD p384_dilithium3_aes_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD dilithium5_aes_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD p521_dilithium5_aes_asn1_meth; extern const EVP_PKEY_ASN1_METHOD falcon512_asn1_meth; extern const EVP_PKEY_ASN1_METHOD p256_falcon512_asn1_meth; extern const EVP_PKEY_ASN1_METHOD rsa3072_falcon512_asn1_meth; extern const EVP_PKEY_ASN1_METHOD falcon1024_asn1_meth; extern const EVP_PKEY_ASN1_METHOD p521_falcon1024_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD sphincsharaka128frobust_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD p256_sphincsharaka128frobust_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD rsa3072_sphincsharaka128frobust_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD sphincsharaka128fsimple_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD p256_sphincsharaka128fsimple_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD rsa3072_sphincsharaka128fsimple_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD sphincssha256128frobust_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD p256_sphincssha256128frobust_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD rsa3072_sphincssha256128frobust_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD sphincssha256128ssimple_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD p256_sphincssha256128ssimple_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD rsa3072_sphincssha256128ssimple_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD sphincsshake256128fsimple_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD p256_sphincsshake256128fsimple_asn1_meth; -extern const EVP_PKEY_ASN1_METHOD rsa3072_sphincsshake256128fsimple_asn1_meth;///// OQS_TEMPLATE_FRAGMENT_DEFINE_ASN1_METHS_END +extern const EVP_PKEY_ASN1_METHOD sphincssha2128fsimple_asn1_meth; +extern const EVP_PKEY_ASN1_METHOD p256_sphincssha2128fsimple_asn1_meth; +extern const EVP_PKEY_ASN1_METHOD rsa3072_sphincssha2128fsimple_asn1_meth; +extern const EVP_PKEY_ASN1_METHOD sphincssha2128ssimple_asn1_meth; +extern const EVP_PKEY_ASN1_METHOD p256_sphincssha2128ssimple_asn1_meth; +extern const EVP_PKEY_ASN1_METHOD rsa3072_sphincssha2128ssimple_asn1_meth; +extern const EVP_PKEY_ASN1_METHOD sphincssha2192fsimple_asn1_meth; +extern const EVP_PKEY_ASN1_METHOD p384_sphincssha2192fsimple_asn1_meth; +extern const EVP_PKEY_ASN1_METHOD sphincsshake128fsimple_asn1_meth; +extern const EVP_PKEY_ASN1_METHOD p256_sphincsshake128fsimple_asn1_meth; +extern const EVP_PKEY_ASN1_METHOD rsa3072_sphincsshake128fsimple_asn1_meth;///// OQS_TEMPLATE_FRAGMENT_DEFINE_ASN1_METHS_END /* * These are used internally in the ASN1_OBJECT to keep track of whether the diff --git a/include/crypto/evp.h b/include/crypto/evp.h index 823bf41b76d96..352a03d475f73 100644 --- a/include/crypto/evp.h +++ b/include/crypto/evp.h @@ -120,33 +120,22 @@ extern const EVP_PKEY_METHOD dilithium3_pkey_meth; extern const EVP_PKEY_METHOD p384_dilithium3_pkey_meth; extern const EVP_PKEY_METHOD dilithium5_pkey_meth; extern const EVP_PKEY_METHOD p521_dilithium5_pkey_meth; -extern const EVP_PKEY_METHOD dilithium2_aes_pkey_meth; -extern const EVP_PKEY_METHOD p256_dilithium2_aes_pkey_meth; -extern const EVP_PKEY_METHOD rsa3072_dilithium2_aes_pkey_meth; -extern const EVP_PKEY_METHOD dilithium3_aes_pkey_meth; -extern const EVP_PKEY_METHOD p384_dilithium3_aes_pkey_meth; -extern const EVP_PKEY_METHOD dilithium5_aes_pkey_meth; -extern const EVP_PKEY_METHOD p521_dilithium5_aes_pkey_meth; extern const EVP_PKEY_METHOD falcon512_pkey_meth; extern const EVP_PKEY_METHOD p256_falcon512_pkey_meth; extern const EVP_PKEY_METHOD rsa3072_falcon512_pkey_meth; extern const EVP_PKEY_METHOD falcon1024_pkey_meth; extern const EVP_PKEY_METHOD p521_falcon1024_pkey_meth; -extern const EVP_PKEY_METHOD sphincsharaka128frobust_pkey_meth; -extern const EVP_PKEY_METHOD p256_sphincsharaka128frobust_pkey_meth; -extern const EVP_PKEY_METHOD rsa3072_sphincsharaka128frobust_pkey_meth; -extern const EVP_PKEY_METHOD sphincsharaka128fsimple_pkey_meth; -extern const EVP_PKEY_METHOD p256_sphincsharaka128fsimple_pkey_meth; -extern const EVP_PKEY_METHOD rsa3072_sphincsharaka128fsimple_pkey_meth; -extern const EVP_PKEY_METHOD sphincssha256128frobust_pkey_meth; -extern const EVP_PKEY_METHOD p256_sphincssha256128frobust_pkey_meth; -extern const EVP_PKEY_METHOD rsa3072_sphincssha256128frobust_pkey_meth; -extern const EVP_PKEY_METHOD sphincssha256128ssimple_pkey_meth; -extern const EVP_PKEY_METHOD p256_sphincssha256128ssimple_pkey_meth; -extern const EVP_PKEY_METHOD rsa3072_sphincssha256128ssimple_pkey_meth; -extern const EVP_PKEY_METHOD sphincsshake256128fsimple_pkey_meth; -extern const EVP_PKEY_METHOD p256_sphincsshake256128fsimple_pkey_meth; -extern const EVP_PKEY_METHOD rsa3072_sphincsshake256128fsimple_pkey_meth;///// OQS_TEMPLATE_FRAGMENT_DEFINE_EVP_METHS_END +extern const EVP_PKEY_METHOD sphincssha2128fsimple_pkey_meth; +extern const EVP_PKEY_METHOD p256_sphincssha2128fsimple_pkey_meth; +extern const EVP_PKEY_METHOD rsa3072_sphincssha2128fsimple_pkey_meth; +extern const EVP_PKEY_METHOD sphincssha2128ssimple_pkey_meth; +extern const EVP_PKEY_METHOD p256_sphincssha2128ssimple_pkey_meth; +extern const EVP_PKEY_METHOD rsa3072_sphincssha2128ssimple_pkey_meth; +extern const EVP_PKEY_METHOD sphincssha2192fsimple_pkey_meth; +extern const EVP_PKEY_METHOD p384_sphincssha2192fsimple_pkey_meth; +extern const EVP_PKEY_METHOD sphincsshake128fsimple_pkey_meth; +extern const EVP_PKEY_METHOD p256_sphincsshake128fsimple_pkey_meth; +extern const EVP_PKEY_METHOD rsa3072_sphincsshake128fsimple_pkey_meth;///// OQS_TEMPLATE_FRAGMENT_DEFINE_EVP_METHS_END struct evp_md_st { int type; diff --git a/include/openssl/evp.h b/include/openssl/evp.h index 9099154aa9c83..26f39d86b6def 100644 --- a/include/openssl/evp.h +++ b/include/openssl/evp.h @@ -71,37 +71,26 @@ # define EVP_PKEY_P384_DILITHIUM3 NID_p384_dilithium3 # define EVP_PKEY_DILITHIUM5 NID_dilithium5 # define EVP_PKEY_P521_DILITHIUM5 NID_p521_dilithium5 -# define EVP_PKEY_DILITHIUM2_AES NID_dilithium2_aes -# define EVP_PKEY_P256_DILITHIUM2_AES NID_p256_dilithium2_aes -# define EVP_PKEY_RSA3072_DILITHIUM2_AES NID_rsa3072_dilithium2_aes -# define EVP_PKEY_DILITHIUM3_AES NID_dilithium3_aes -# define EVP_PKEY_P384_DILITHIUM3_AES NID_p384_dilithium3_aes -# define EVP_PKEY_DILITHIUM5_AES NID_dilithium5_aes -# define EVP_PKEY_P521_DILITHIUM5_AES NID_p521_dilithium5_aes # define EVP_PKEY_FALCON512 NID_falcon512 # define EVP_PKEY_P256_FALCON512 NID_p256_falcon512 # define EVP_PKEY_RSA3072_FALCON512 NID_rsa3072_falcon512 # define EVP_PKEY_FALCON1024 NID_falcon1024 # define EVP_PKEY_P521_FALCON1024 NID_p521_falcon1024 -# define EVP_PKEY_SPHINCSHARAKA128FROBUST NID_sphincsharaka128frobust -# define EVP_PKEY_P256_SPHINCSHARAKA128FROBUST NID_p256_sphincsharaka128frobust -# define EVP_PKEY_RSA3072_SPHINCSHARAKA128FROBUST NID_rsa3072_sphincsharaka128frobust -# define EVP_PKEY_SPHINCSHARAKA128FSIMPLE NID_sphincsharaka128fsimple -# define EVP_PKEY_P256_SPHINCSHARAKA128FSIMPLE NID_p256_sphincsharaka128fsimple -# define EVP_PKEY_RSA3072_SPHINCSHARAKA128FSIMPLE NID_rsa3072_sphincsharaka128fsimple -# define EVP_PKEY_SPHINCSSHA256128FROBUST NID_sphincssha256128frobust -# define EVP_PKEY_P256_SPHINCSSHA256128FROBUST NID_p256_sphincssha256128frobust -# define EVP_PKEY_RSA3072_SPHINCSSHA256128FROBUST NID_rsa3072_sphincssha256128frobust -# define EVP_PKEY_SPHINCSSHA256128SSIMPLE NID_sphincssha256128ssimple -# define EVP_PKEY_P256_SPHINCSSHA256128SSIMPLE NID_p256_sphincssha256128ssimple -# define EVP_PKEY_RSA3072_SPHINCSSHA256128SSIMPLE NID_rsa3072_sphincssha256128ssimple -# define EVP_PKEY_SPHINCSSHAKE256128FSIMPLE NID_sphincsshake256128fsimple -# define EVP_PKEY_P256_SPHINCSSHAKE256128FSIMPLE NID_p256_sphincsshake256128fsimple -# define EVP_PKEY_RSA3072_SPHINCSSHAKE256128FSIMPLE NID_rsa3072_sphincsshake256128fsimple -#define OQS_OPENSSL_SIG_algs_length 34 -#define OQS_OPENSSL_KEM_algs_length 18 +# define EVP_PKEY_SPHINCSSHA2128FSIMPLE NID_sphincssha2128fsimple +# define EVP_PKEY_P256_SPHINCSSHA2128FSIMPLE NID_p256_sphincssha2128fsimple +# define EVP_PKEY_RSA3072_SPHINCSSHA2128FSIMPLE NID_rsa3072_sphincssha2128fsimple +# define EVP_PKEY_SPHINCSSHA2128SSIMPLE NID_sphincssha2128ssimple +# define EVP_PKEY_P256_SPHINCSSHA2128SSIMPLE NID_p256_sphincssha2128ssimple +# define EVP_PKEY_RSA3072_SPHINCSSHA2128SSIMPLE NID_rsa3072_sphincssha2128ssimple +# define EVP_PKEY_SPHINCSSHA2192FSIMPLE NID_sphincssha2192fsimple +# define EVP_PKEY_P384_SPHINCSSHA2192FSIMPLE NID_p384_sphincssha2192fsimple +# define EVP_PKEY_SPHINCSSHAKE128FSIMPLE NID_sphincsshake128fsimple +# define EVP_PKEY_P256_SPHINCSSHAKE128FSIMPLE NID_p256_sphincsshake128fsimple +# define EVP_PKEY_RSA3072_SPHINCSSHAKE128FSIMPLE NID_rsa3072_sphincsshake128fsimple +#define OQS_OPENSSL_SIG_algs_length 23 +#define OQS_OPENSSL_KEM_algs_length 15 #define IS_OQS_OPENSSL_KEM_NID(a) ((a >= 0x01FF) && (a <= NID_p521_hqc256)) -#define IS_OQS_OPENSSL_SIG_NID(a) ((a >= NID_dilithium2) && (a <= NID_rsa3072_sphincsshake256128fsimple)) +#define IS_OQS_OPENSSL_SIG_NID(a) ((a >= NID_dilithium2) && (a <= NID_rsa3072_sphincsshake128fsimple)) /////// OQS_TEMPLATE_FRAGMENT_DEFINE_EVP_PKEYS_END const char *OQSKEM_options(void); const char *OQSSIG_options(void); diff --git a/include/openssl/obj_mac.h b/include/openssl/obj_mac.h index a18901c60ae04..716b3e15a534c 100644 --- a/include/openssl/obj_mac.h +++ b/include/openssl/obj_mac.h @@ -5203,7 +5203,7 @@ #define SN_p256_frodo640aes "p256_frodo640aes" #define LN_p256_frodo640aes "p256_frodo640aes" -#define NID_p256_frodo640aes 1215 +#define NID_p256_frodo640aes 1212 #define SN_frodo640shake "frodo640shake" #define LN_frodo640shake "frodo640shake" @@ -5211,7 +5211,7 @@ #define SN_p256_frodo640shake "p256_frodo640shake" #define LN_p256_frodo640shake "p256_frodo640shake" -#define NID_p256_frodo640shake 1216 +#define NID_p256_frodo640shake 1213 #define SN_frodo976aes "frodo976aes" #define LN_frodo976aes "frodo976aes" @@ -5219,7 +5219,7 @@ #define SN_p384_frodo976aes "p384_frodo976aes" #define LN_p384_frodo976aes "p384_frodo976aes" -#define NID_p384_frodo976aes 1217 +#define NID_p384_frodo976aes 1214 #define SN_frodo976shake "frodo976shake" #define LN_frodo976shake "frodo976shake" @@ -5227,7 +5227,7 @@ #define SN_p384_frodo976shake "p384_frodo976shake" #define LN_p384_frodo976shake "p384_frodo976shake" -#define NID_p384_frodo976shake 1218 +#define NID_p384_frodo976shake 1215 #define SN_frodo1344aes "frodo1344aes" #define LN_frodo1344aes "frodo1344aes" @@ -5235,7 +5235,7 @@ #define SN_p521_frodo1344aes "p521_frodo1344aes" #define LN_p521_frodo1344aes "p521_frodo1344aes" -#define NID_p521_frodo1344aes 1219 +#define NID_p521_frodo1344aes 1216 #define SN_frodo1344shake "frodo1344shake" #define LN_frodo1344shake "frodo1344shake" @@ -5243,7 +5243,7 @@ #define SN_p521_frodo1344shake "p521_frodo1344shake" #define LN_p521_frodo1344shake "p521_frodo1344shake" -#define NID_p521_frodo1344shake 1220 +#define NID_p521_frodo1344shake 1217 #define SN_kyber512 "kyber512" #define LN_kyber512 "kyber512" @@ -5251,7 +5251,7 @@ #define SN_p256_kyber512 "p256_kyber512" #define LN_p256_kyber512 "p256_kyber512" -#define NID_p256_kyber512 1221 +#define NID_p256_kyber512 1218 #define SN_kyber768 "kyber768" #define LN_kyber768 "kyber768" @@ -5259,7 +5259,7 @@ #define SN_p384_kyber768 "p384_kyber768" #define LN_p384_kyber768 "p384_kyber768" -#define NID_p384_kyber768 1222 +#define NID_p384_kyber768 1219 #define SN_kyber1024 "kyber1024" #define LN_kyber1024 "kyber1024" @@ -5267,7 +5267,7 @@ #define SN_p521_kyber1024 "p521_kyber1024" #define LN_p521_kyber1024 "p521_kyber1024" -#define NID_p521_kyber1024 1223 +#define NID_p521_kyber1024 1220 #define SN_bikel1 "bikel1" #define LN_bikel1 "bikel1" @@ -5275,7 +5275,7 @@ #define SN_p256_bikel1 "p256_bikel1" #define LN_p256_bikel1 "p256_bikel1" -#define NID_p256_bikel1 1224 +#define NID_p256_bikel1 1221 #define SN_bikel3 "bikel3" #define LN_bikel3 "bikel3" @@ -5283,7 +5283,7 @@ #define SN_p384_bikel3 "p384_bikel3" #define LN_p384_bikel3 "p384_bikel3" -#define NID_p384_bikel3 1225 +#define NID_p384_bikel3 1222 #define SN_bikel5 "bikel5" #define LN_bikel5 "bikel5" @@ -5291,222 +5291,143 @@ #define SN_p521_bikel5 "p521_bikel5" #define LN_p521_bikel5 "p521_bikel5" -#define NID_p521_bikel5 1226 - -#define SN_kyber90s512 "kyber90s512" -#define LN_kyber90s512 "kyber90s512" -#define NID_kyber90s512 1208 - -#define SN_p256_kyber90s512 "p256_kyber90s512" -#define LN_p256_kyber90s512 "p256_kyber90s512" -#define NID_p256_kyber90s512 1227 - -#define SN_kyber90s768 "kyber90s768" -#define LN_kyber90s768 "kyber90s768" -#define NID_kyber90s768 1209 - -#define SN_p384_kyber90s768 "p384_kyber90s768" -#define LN_p384_kyber90s768 "p384_kyber90s768" -#define NID_p384_kyber90s768 1228 - -#define SN_kyber90s1024 "kyber90s1024" -#define LN_kyber90s1024 "kyber90s1024" -#define NID_kyber90s1024 1210 - -#define SN_p521_kyber90s1024 "p521_kyber90s1024" -#define LN_p521_kyber90s1024 "p521_kyber90s1024" -#define NID_p521_kyber90s1024 1229 +#define NID_p521_bikel5 1223 #define SN_hqc128 "hqc128" #define LN_hqc128 "hqc128" -#define NID_hqc128 1211 +#define NID_hqc128 1208 #define SN_p256_hqc128 "p256_hqc128" #define LN_p256_hqc128 "p256_hqc128" -#define NID_p256_hqc128 1230 +#define NID_p256_hqc128 1224 #define SN_hqc192 "hqc192" #define LN_hqc192 "hqc192" -#define NID_hqc192 1212 +#define NID_hqc192 1209 #define SN_p384_hqc192 "p384_hqc192" #define LN_p384_hqc192 "p384_hqc192" -#define NID_p384_hqc192 1231 +#define NID_p384_hqc192 1225 #define SN_hqc256 "hqc256" #define LN_hqc256 "hqc256" -#define NID_hqc256 1213 +#define NID_hqc256 1210 #define SN_p521_hqc256 "p521_hqc256" #define LN_p521_hqc256 "p521_hqc256" -#define NID_p521_hqc256 1232 +#define NID_p521_hqc256 1226 #define SN_dilithium2 "dilithium2" #define LN_dilithium2 "dilithium2" -#define NID_dilithium2 1233 +#define NID_dilithium2 1227 #define OBJ_dilithium2 1L,3L,6L,1L,4L,1L,2L,267L,7L,4L,4L #define SN_p256_dilithium2 "p256_dilithium2" #define LN_p256_dilithium2 "p256_dilithium2" -#define NID_p256_dilithium2 1234 +#define NID_p256_dilithium2 1228 #define OBJ_p256_dilithium2 1L,3L,9999L,2L,7L,1L #define SN_rsa3072_dilithium2 "rsa3072_dilithium2" #define LN_rsa3072_dilithium2 "rsa3072_dilithium2" -#define NID_rsa3072_dilithium2 1235 +#define NID_rsa3072_dilithium2 1229 #define OBJ_rsa3072_dilithium2 1L,3L,9999L,2L,7L,2L #define SN_dilithium3 "dilithium3" #define LN_dilithium3 "dilithium3" -#define NID_dilithium3 1236 +#define NID_dilithium3 1230 #define OBJ_dilithium3 1L,3L,6L,1L,4L,1L,2L,267L,7L,6L,5L #define SN_p384_dilithium3 "p384_dilithium3" #define LN_p384_dilithium3 "p384_dilithium3" -#define NID_p384_dilithium3 1237 +#define NID_p384_dilithium3 1231 #define OBJ_p384_dilithium3 1L,3L,9999L,2L,7L,3L #define SN_dilithium5 "dilithium5" #define LN_dilithium5 "dilithium5" -#define NID_dilithium5 1238 +#define NID_dilithium5 1232 #define OBJ_dilithium5 1L,3L,6L,1L,4L,1L,2L,267L,7L,8L,7L #define SN_p521_dilithium5 "p521_dilithium5" #define LN_p521_dilithium5 "p521_dilithium5" -#define NID_p521_dilithium5 1239 +#define NID_p521_dilithium5 1233 #define OBJ_p521_dilithium5 1L,3L,9999L,2L,7L,4L -#define SN_dilithium2_aes "dilithium2_aes" -#define LN_dilithium2_aes "dilithium2_aes" -#define NID_dilithium2_aes 1240 -#define OBJ_dilithium2_aes 1L,3L,6L,1L,4L,1L,2L,267L,11L,4L,4L - -#define SN_p256_dilithium2_aes "p256_dilithium2_aes" -#define LN_p256_dilithium2_aes "p256_dilithium2_aes" -#define NID_p256_dilithium2_aes 1241 -#define OBJ_p256_dilithium2_aes 1L,3L,9999L,2L,11L,1L - -#define SN_rsa3072_dilithium2_aes "rsa3072_dilithium2_aes" -#define LN_rsa3072_dilithium2_aes "rsa3072_dilithium2_aes" -#define NID_rsa3072_dilithium2_aes 1242 -#define OBJ_rsa3072_dilithium2_aes 1L,3L,9999L,2L,11L,2L - -#define SN_dilithium3_aes "dilithium3_aes" -#define LN_dilithium3_aes "dilithium3_aes" -#define NID_dilithium3_aes 1243 -#define OBJ_dilithium3_aes 1L,3L,6L,1L,4L,1L,2L,267L,11L,6L,5L - -#define SN_p384_dilithium3_aes "p384_dilithium3_aes" -#define LN_p384_dilithium3_aes "p384_dilithium3_aes" -#define NID_p384_dilithium3_aes 1244 -#define OBJ_p384_dilithium3_aes 1L,3L,9999L,2L,11L,3L - -#define SN_dilithium5_aes "dilithium5_aes" -#define LN_dilithium5_aes "dilithium5_aes" -#define NID_dilithium5_aes 1245 -#define OBJ_dilithium5_aes 1L,3L,6L,1L,4L,1L,2L,267L,11L,8L,7L - -#define SN_p521_dilithium5_aes "p521_dilithium5_aes" -#define LN_p521_dilithium5_aes "p521_dilithium5_aes" -#define NID_p521_dilithium5_aes 1246 -#define OBJ_p521_dilithium5_aes 1L,3L,9999L,2L,11L,4L - #define SN_falcon512 "falcon512" #define LN_falcon512 "falcon512" -#define NID_falcon512 1247 +#define NID_falcon512 1234 #define OBJ_falcon512 1L,3L,9999L,3L,6L #define SN_p256_falcon512 "p256_falcon512" #define LN_p256_falcon512 "p256_falcon512" -#define NID_p256_falcon512 1248 +#define NID_p256_falcon512 1235 #define OBJ_p256_falcon512 1L,3L,9999L,3L,7L #define SN_rsa3072_falcon512 "rsa3072_falcon512" #define LN_rsa3072_falcon512 "rsa3072_falcon512" -#define NID_rsa3072_falcon512 1249 +#define NID_rsa3072_falcon512 1236 #define OBJ_rsa3072_falcon512 1L,3L,9999L,3L,8L #define SN_falcon1024 "falcon1024" #define LN_falcon1024 "falcon1024" -#define NID_falcon1024 1250 +#define NID_falcon1024 1237 #define OBJ_falcon1024 1L,3L,9999L,3L,9L #define SN_p521_falcon1024 "p521_falcon1024" #define LN_p521_falcon1024 "p521_falcon1024" -#define NID_p521_falcon1024 1251 +#define NID_p521_falcon1024 1238 #define OBJ_p521_falcon1024 1L,3L,9999L,3L,10L -#define SN_sphincsharaka128frobust "sphincsharaka128frobust" -#define LN_sphincsharaka128frobust "sphincsharaka128frobust" -#define NID_sphincsharaka128frobust 1252 -#define OBJ_sphincsharaka128frobust 1L,3L,9999L,6L,1L,1L - -#define SN_p256_sphincsharaka128frobust "p256_sphincsharaka128frobust" -#define LN_p256_sphincsharaka128frobust "p256_sphincsharaka128frobust" -#define NID_p256_sphincsharaka128frobust 1253 -#define OBJ_p256_sphincsharaka128frobust 1L,3L,9999L,6L,1L,2L - -#define SN_rsa3072_sphincsharaka128frobust "rsa3072_sphincsharaka128frobust" -#define LN_rsa3072_sphincsharaka128frobust "rsa3072_sphincsharaka128frobust" -#define NID_rsa3072_sphincsharaka128frobust 1254 -#define OBJ_rsa3072_sphincsharaka128frobust 1L,3L,9999L,6L,1L,3L - -#define SN_sphincsharaka128fsimple "sphincsharaka128fsimple" -#define LN_sphincsharaka128fsimple "sphincsharaka128fsimple" -#define NID_sphincsharaka128fsimple 1255 -#define OBJ_sphincsharaka128fsimple 1L,3L,9999L,6L,1L,4L - -#define SN_p256_sphincsharaka128fsimple "p256_sphincsharaka128fsimple" -#define LN_p256_sphincsharaka128fsimple "p256_sphincsharaka128fsimple" -#define NID_p256_sphincsharaka128fsimple 1256 -#define OBJ_p256_sphincsharaka128fsimple 1L,3L,9999L,6L,1L,5L - -#define SN_rsa3072_sphincsharaka128fsimple "rsa3072_sphincsharaka128fsimple" -#define LN_rsa3072_sphincsharaka128fsimple "rsa3072_sphincsharaka128fsimple" -#define NID_rsa3072_sphincsharaka128fsimple 1257 -#define OBJ_rsa3072_sphincsharaka128fsimple 1L,3L,9999L,6L,1L,6L - -#define SN_sphincssha256128frobust "sphincssha256128frobust" -#define LN_sphincssha256128frobust "sphincssha256128frobust" -#define NID_sphincssha256128frobust 1258 -#define OBJ_sphincssha256128frobust 1L,3L,9999L,6L,4L,1L - -#define SN_p256_sphincssha256128frobust "p256_sphincssha256128frobust" -#define LN_p256_sphincssha256128frobust "p256_sphincssha256128frobust" -#define NID_p256_sphincssha256128frobust 1259 -#define OBJ_p256_sphincssha256128frobust 1L,3L,9999L,6L,4L,2L - -#define SN_rsa3072_sphincssha256128frobust "rsa3072_sphincssha256128frobust" -#define LN_rsa3072_sphincssha256128frobust "rsa3072_sphincssha256128frobust" -#define NID_rsa3072_sphincssha256128frobust 1260 -#define OBJ_rsa3072_sphincssha256128frobust 1L,3L,9999L,6L,4L,3L - -#define SN_sphincssha256128ssimple "sphincssha256128ssimple" -#define LN_sphincssha256128ssimple "sphincssha256128ssimple" -#define NID_sphincssha256128ssimple 1261 -#define OBJ_sphincssha256128ssimple 1L,3L,9999L,6L,4L,10L - -#define SN_p256_sphincssha256128ssimple "p256_sphincssha256128ssimple" -#define LN_p256_sphincssha256128ssimple "p256_sphincssha256128ssimple" -#define NID_p256_sphincssha256128ssimple 1262 -#define OBJ_p256_sphincssha256128ssimple 1L,3L,9999L,6L,4L,11L - -#define SN_rsa3072_sphincssha256128ssimple "rsa3072_sphincssha256128ssimple" -#define LN_rsa3072_sphincssha256128ssimple "rsa3072_sphincssha256128ssimple" -#define NID_rsa3072_sphincssha256128ssimple 1263 -#define OBJ_rsa3072_sphincssha256128ssimple 1L,3L,9999L,6L,4L,12L - -#define SN_sphincsshake256128fsimple "sphincsshake256128fsimple" -#define LN_sphincsshake256128fsimple "sphincsshake256128fsimple" -#define NID_sphincsshake256128fsimple 1264 -#define OBJ_sphincsshake256128fsimple 1L,3L,9999L,6L,7L,4L - -#define SN_p256_sphincsshake256128fsimple "p256_sphincsshake256128fsimple" -#define LN_p256_sphincsshake256128fsimple "p256_sphincsshake256128fsimple" -#define NID_p256_sphincsshake256128fsimple 1265 -#define OBJ_p256_sphincsshake256128fsimple 1L,3L,9999L,6L,7L,5L - -#define SN_rsa3072_sphincsshake256128fsimple "rsa3072_sphincsshake256128fsimple" -#define LN_rsa3072_sphincsshake256128fsimple "rsa3072_sphincsshake256128fsimple" -#define NID_rsa3072_sphincsshake256128fsimple 1266 -#define OBJ_rsa3072_sphincsshake256128fsimple 1L,3L,9999L,6L,7L,6L +#define SN_sphincssha2128fsimple "sphincssha2128fsimple" +#define LN_sphincssha2128fsimple "sphincssha2128fsimple" +#define NID_sphincssha2128fsimple 1239 +#define OBJ_sphincssha2128fsimple 1L,3L,9999L,6L,4L,13L + +#define SN_p256_sphincssha2128fsimple "p256_sphincssha2128fsimple" +#define LN_p256_sphincssha2128fsimple "p256_sphincssha2128fsimple" +#define NID_p256_sphincssha2128fsimple 1240 +#define OBJ_p256_sphincssha2128fsimple 1L,3L,9999L,6L,4L,14L + +#define SN_rsa3072_sphincssha2128fsimple "rsa3072_sphincssha2128fsimple" +#define LN_rsa3072_sphincssha2128fsimple "rsa3072_sphincssha2128fsimple" +#define NID_rsa3072_sphincssha2128fsimple 1241 +#define OBJ_rsa3072_sphincssha2128fsimple 1L,3L,9999L,6L,4L,15L + +#define SN_sphincssha2128ssimple "sphincssha2128ssimple" +#define LN_sphincssha2128ssimple "sphincssha2128ssimple" +#define NID_sphincssha2128ssimple 1242 +#define OBJ_sphincssha2128ssimple 1L,3L,9999L,6L,4L,16L + +#define SN_p256_sphincssha2128ssimple "p256_sphincssha2128ssimple" +#define LN_p256_sphincssha2128ssimple "p256_sphincssha2128ssimple" +#define NID_p256_sphincssha2128ssimple 1243 +#define OBJ_p256_sphincssha2128ssimple 1L,3L,9999L,6L,4L,17L + +#define SN_rsa3072_sphincssha2128ssimple "rsa3072_sphincssha2128ssimple" +#define LN_rsa3072_sphincssha2128ssimple "rsa3072_sphincssha2128ssimple" +#define NID_rsa3072_sphincssha2128ssimple 1244 +#define OBJ_rsa3072_sphincssha2128ssimple 1L,3L,9999L,6L,4L,18L + +#define SN_sphincssha2192fsimple "sphincssha2192fsimple" +#define LN_sphincssha2192fsimple "sphincssha2192fsimple" +#define NID_sphincssha2192fsimple 1245 +#define OBJ_sphincssha2192fsimple 1L,3L,9999L,6L,5L,10L + +#define SN_p384_sphincssha2192fsimple "p384_sphincssha2192fsimple" +#define LN_p384_sphincssha2192fsimple "p384_sphincssha2192fsimple" +#define NID_p384_sphincssha2192fsimple 1246 +#define OBJ_p384_sphincssha2192fsimple 1L,3L,9999L,6L,5L,11L + +#define SN_sphincsshake128fsimple "sphincsshake128fsimple" +#define LN_sphincsshake128fsimple "sphincsshake128fsimple" +#define NID_sphincsshake128fsimple 1247 +#define OBJ_sphincsshake128fsimple 1L,3L,9999L,6L,7L,13L + +#define SN_p256_sphincsshake128fsimple "p256_sphincsshake128fsimple" +#define LN_p256_sphincsshake128fsimple "p256_sphincsshake128fsimple" +#define NID_p256_sphincsshake128fsimple 1248 +#define OBJ_p256_sphincsshake128fsimple 1L,3L,9999L,6L,7L,14L + +#define SN_rsa3072_sphincsshake128fsimple "rsa3072_sphincsshake128fsimple" +#define LN_rsa3072_sphincsshake128fsimple "rsa3072_sphincsshake128fsimple" +#define NID_rsa3072_sphincsshake128fsimple 1249 +#define OBJ_rsa3072_sphincsshake128fsimple 1L,3L,9999L,6L,7L,15L diff --git a/oqs-interop-test/common.py b/oqs-interop-test/common.py index 5ebe8b43cc7a1..7a0abfd2f8c4a 100644 --- a/oqs-interop-test/common.py +++ b/oqs-interop-test/common.py @@ -16,9 +16,9 @@ key_exchanges = [ ##### OQS_TEMPLATE_FRAGMENT_KEX_ALGS_START # post-quantum key exchanges - 'frodo640aes','frodo640shake','frodo976aes','frodo976shake','frodo1344aes','frodo1344shake','kyber512','kyber768','kyber1024','bikel1','bikel3','bikel5','kyber90s512','kyber90s768','kyber90s1024','hqc128','hqc192','hqc256', + 'frodo640aes','frodo640shake','frodo976aes','frodo976shake','frodo1344aes','frodo1344shake','kyber512','kyber768','kyber1024','bikel1','bikel3','bikel5','hqc128','hqc192','hqc256', # post-quantum + classical key exchanges - 'p256_frodo640aes','p256_frodo640shake','p384_frodo976aes','p384_frodo976shake','p521_frodo1344aes','p521_frodo1344shake','p256_kyber512','p384_kyber768','p521_kyber1024','p256_bikel1','p384_bikel3','p521_bikel5','p256_kyber90s512','p384_kyber90s768','p521_kyber90s1024','p256_hqc128','p384_hqc192','p521_hqc256', + 'p256_frodo640aes','p256_frodo640shake','p384_frodo976aes','p384_frodo976shake','p521_frodo1344aes','p521_frodo1344shake','p256_kyber512','p384_kyber768','p521_kyber1024','p256_bikel1','p384_bikel3','p521_bikel5','p256_hqc128','p384_hqc192','p521_hqc256', ##### OQS_TEMPLATE_FRAGMENT_KEX_ALGS_END ] @@ -27,16 +27,12 @@ 'dilithium2', 'dilithium3', 'dilithium5', - 'dilithium2_aes', - 'dilithium3_aes', - 'dilithium5_aes', 'falcon512', 'falcon1024', - 'sphincsharaka128frobust', - 'sphincsharaka128fsimple', - 'sphincssha256128frobust', - 'sphincssha256128ssimple', - 'sphincsshake256128fsimple', + 'sphincssha2128fsimple', + 'sphincssha2128ssimple', + 'sphincssha2192fsimple', + 'sphincsshake128fsimple', ##### OQS_TEMPLATE_FRAGMENT_PQ_SIG_ALGS_END ] diff --git a/oqs-template/generate.yml b/oqs-template/generate.yml index 3d1353fae9138..19bd80af40b89 100644 --- a/oqs-template/generate.yml +++ b/oqs-template/generate.yml @@ -220,12 +220,7 @@ kems: - family: 'CRYSTALS-Kyber' name_group: 'kyber90s512' - nid: '0x023E' - nid_hybrid: '0x2F3E' extra_nids: - current: - - hybrid_group: "x25519" - nid: '0x2FA9' old: - implementation_version: NIST Round 2 submission nist-round: 2 @@ -234,16 +229,22 @@ kems: nist-round: 2 hybrid_group: secp256_r1 nid: '0x2F29' + - implementation_version: NIST Round 3 submission + nist-round: 3 + nid: '0x023E' + - implementation_version: NIST Round 3 submission + nist-round: 3 + hybrid_group: secp256_r1 + nid: '0x2F3E' + - implementation_version: NIST Round 3 submission + nist-round: 3 + hybrid_group: x25519 + nid: '0x2FA9' oqs_alg: 'OQS_KEM_alg_kyber_512_90s' - family: 'CRYSTALS-Kyber' name_group: 'kyber90s768' - nid: '0x023F' - nid_hybrid: '0x2F3F' extra_nids: - current: - - hybrid_group: "x448" - nid: '0x2FAA' old: - implementation_version: NIST Round 2 submission nist-round: 2 @@ -252,12 +253,21 @@ kems: nist-round: 2 hybrid_group: secp384_r1 nid: '0x2F2A' + - implementation_version: NIST Round 3 submission + nist-round: 3 + nid: '0x023F' + - implementation_version: NIST Round 3 submission + nist-round: 3 + hybrid_group: secp384_r1 + nid: '0x2F3F' + - implementation_version: NIST Round 3 submission + nist-round: 3 + hybrid_group: x448 + nid: '0x2FAA' oqs_alg: 'OQS_KEM_alg_kyber_768_90s' - family: 'CRYSTALS-Kyber' name_group: 'kyber90s1024' - nid: '0x0240' - nid_hybrid: '0x2F40' extra_nids: old: - implementation_version: NIST Round 2 submission @@ -267,6 +277,13 @@ kems: nist-round: 2 hybrid_group: secp521_r1 nid: '0x2F2B' + - implementation_version: NIST Round 3 submission + nist-round: 3 + nid: '0x0240' + - implementation_version: NIST Round 3 submission + nist-round: 3 + hybrid_group: secp521_r1 + nid: '0x2F40' oqs_alg: 'OQS_KEM_alg_kyber_1024_90s' - family: 'HQC' @@ -299,7 +316,7 @@ kem_nid_end: '0x0250' kem_nid_hybrid_end: '0x2FFF' # need to edit ssl_local.h macros IS_OQS_KEM_CURVEID and IS_OQS_KEM_HYBRID_CURVEID with the above _end values -# Next free signature ID: 0xfeb3 +# Next free signature ID: 0xfed0 sigs: # - # iso (1) @@ -385,42 +402,51 @@ sigs: name: 'dilithium2_aes' pretty_name: 'Dilithium2_AES' oqs_meth: 'OQS_SIG_alg_dilithium_2_aes' - oid: '1.3.6.1.4.1.2.267.11.4.4' - code_point: '0xfea7' - supported_encodings: ['draft-uni-qsckeys-dilithium-00/sk-pk'] - enable: true - mix_with: [{'name': 'p256', - 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.2.11.1', - 'code_point': '0xfea8'}, - {'name': 'rsa3072', - 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.2.11.2', - 'code_point': '0xfea9'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.6.1.4.1.2.267.11.4.4' + code_point: '0xfea7' + supported_encodings: ['draft-uni-qsckeys-dilithium-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.2.11.1', + 'code_point': '0xfea8'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.2.11.2', + 'code_point': '0xfea9'}] - name: 'dilithium3_aes' pretty_name: 'Dilithium3_AES' oqs_meth: 'OQS_SIG_alg_dilithium_3_aes' - oid: '1.3.6.1.4.1.2.267.11.6.5' - code_point: '0xfeaa' - supported_encodings: ['draft-uni-qsckeys-dilithium-00/sk-pk'] - enable: true - mix_with: [{'name': 'p384', - 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.2.11.3', - 'code_point': '0xfeab'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.6.1.4.1.2.267.11.6.5' + code_point: '0xfeaa' + supported_encodings: ['draft-uni-qsckeys-dilithium-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.2.11.3', + 'code_point': '0xfeab'}] - name: 'dilithium5_aes' pretty_name: 'Dilithium5_AES' oqs_meth: 'OQS_SIG_alg_dilithium_5_aes' - oid: '1.3.6.1.4.1.2.267.11.8.7' - code_point: '0xfeac' - supported_encodings: ['draft-uni-qsckeys-dilithium-00/sk-pk'] - enable: true - mix_with: [{'name': 'p521', - 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.2.11.4', - 'code_point': '0xfead'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.6.1.4.1.2.267.11.8.7' + code_point: '0xfeac' + supported_encodings: ['draft-uni-qsckeys-dilithium-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.2.11.4', + 'code_point': '0xfead'}] - # iso (1) # identified-organization (3) @@ -487,485 +513,707 @@ sigs: name: 'sphincsharaka128frobust' pretty_name: 'SPHINCS+-Haraka-128f-robust' oqs_meth: 'OQS_SIG_alg_sphincs_haraka_128f_robust' - oid: '1.3.9999.6.1.1' - code_point: '0xfe42' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: true - mix_with: [{'name': 'p256', - 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.6.1.2', - 'code_point': '0xfe43'}, - {'name': 'rsa3072', - 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.6.1.3', - 'code_point': '0xfe44'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.1.1' + code_point: '0xfe42' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.6.1.2', + 'code_point': '0xfe43'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.6.1.3', + 'code_point': '0xfe44'}] - name: 'sphincsharaka128fsimple' pretty_name: 'SPHINCS+-Haraka-128f-simple' oqs_meth: 'OQS_SIG_alg_sphincs_haraka_128f_simple' - oid: '1.3.9999.6.1.4' - code_point: '0xfe45' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: true - mix_with: [{'name': 'p256', - 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.6.1.5', - 'code_point': '0xfe46'}, - {'name': 'rsa3072', - 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.6.1.6', - 'code_point': '0xfe47'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.1.4' + code_point: '0xfe45' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.6.1.5', + 'code_point': '0xfe46'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.6.1.6', + 'code_point': '0xfe47'}] - name: 'sphincsharaka128srobust' pretty_name: 'SPHINCS+-Haraka-128s-robust' oqs_meth: 'OQS_SIG_alg_sphincs_haraka_128s_robust' - oid: '1.3.9999.6.1.7' - code_point: '0xfe48' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p256', - 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.6.1.8', - 'code_point': '0xfe49'}, - {'name': 'rsa3072', - 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.6.1.9', - 'code_point': '0xfe4a'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.1.7' + code_point: '0xfe48' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.6.1.8', + 'code_point': '0xfe49'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.6.1.9', + 'code_point': '0xfe4a'}] - name: 'sphincsharaka128ssimple' pretty_name: 'SPHINCS+-Haraka-128s-simple' oqs_meth: 'OQS_SIG_alg_sphincs_haraka_128s_simple' - oid: '1.3.9999.6.1.10' - code_point: '0xfe4b' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p256', - 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.6.1.11', - 'code_point': '0xfe4c'}, - {'name': 'rsa3072', - 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.6.1.12', - 'code_point': '0xfe4d'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.1.10' + code_point: '0xfe4b' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.6.1.11', + 'code_point': '0xfe4c'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.6.1.12', + 'code_point': '0xfe4d'}] - name: 'sphincsharaka192frobust' pretty_name: 'SPHINCS+-Haraka-192f-robust' oqs_meth: 'OQS_SIG_alg_sphincs_haraka_192f_robust' - oid: '1.3.9999.6.2.1' - code_point: '0xfe4e' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p384', - 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.6.2.2', - 'code_point': '0xfe4f'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.2.1' + code_point: '0xfe4e' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.6.2.2', + 'code_point': '0xfe4f'}] - name: 'sphincsharaka192fsimple' pretty_name: 'SPHINCS+-Haraka-192f-simple' oqs_meth: 'OQS_SIG_alg_sphincs_haraka_192f_simple' - oid: '1.3.9999.6.2.3' - code_point: '0xfe50' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p384', - 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.6.2.4', - 'code_point': '0xfe51'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.2.3' + code_point: '0xfe50' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.6.2.4', + 'code_point': '0xfe51'}] - name: 'sphincsharaka192srobust' pretty_name: 'SPHINCS+-Haraka-192s-robust' oqs_meth: 'OQS_SIG_alg_sphincs_haraka_192s_robust' - oid: '1.3.9999.6.2.5' - code_point: '0xfe52' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p384', - 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.6.2.6', - 'code_point': '0xfe53'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.2.5' + code_point: '0xfe52' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.6.2.6', + 'code_point': '0xfe53'}] - name: 'sphincsharaka192ssimple' pretty_name: 'SPHINCS+-Haraka-192s-simple' oqs_meth: 'OQS_SIG_alg_sphincs_haraka_192s_simple' - oid: '1.3.9999.6.2.7' - code_point: '0xfe54' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p384', - 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.6.2.8', - 'code_point': '0xfe55'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.2.7' + code_point: '0xfe54' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.6.2.8', + 'code_point': '0xfe55'}] - name: 'sphincsharaka256frobust' pretty_name: 'SPHINCS+-Haraka-256f-robust' oqs_meth: 'OQS_SIG_alg_sphincs_haraka_256f_robust' - oid: '1.3.9999.6.3.1' - code_point: '0xfe56' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p521', - 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.6.3.2', - 'code_point': '0xfe57'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.3.1' + code_point: '0xfe56' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.6.3.2', + 'code_point': '0xfe57'}] - name: 'sphincsharaka256fsimple' pretty_name: 'SPHINCS+-Haraka-256f-simple' oqs_meth: 'OQS_SIG_alg_sphincs_haraka_256f_simple' - oid: '1.3.9999.6.3.3' - code_point: '0xfe58' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p521', - 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.6.3.4', - 'code_point': '0xfe59'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.3.3' + code_point: '0xfe58' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.6.3.4', + 'code_point': '0xfe59'}] - name: 'sphincsharaka256srobust' pretty_name: 'SPHINCS+-Haraka-256s-robust' oqs_meth: 'OQS_SIG_alg_sphincs_haraka_256s_robust' - oid: '1.3.9999.6.3.5' - code_point: '0xfe5a' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p521', - 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.6.3.6', - 'code_point': '0xfe5b'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.3.5' + code_point: '0xfe5a' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.6.3.6', + 'code_point': '0xfe5b'}] - name: 'sphincsharaka256ssimple' pretty_name: 'SPHINCS+-Haraka-256s-simple' oqs_meth: 'OQS_SIG_alg_sphincs_haraka_256s_simple' - oid: '1.3.9999.6.3.7' - code_point: '0xfe5c' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p521', - 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.6.3.8', - 'code_point': '0xfe5d'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.3.7' + code_point: '0xfe5c' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.6.3.8', + 'code_point': '0xfe5d'}] - - family: 'SPHINCS-SHA256' + family: 'SPHINCS-SHA2' variants: - - name: 'sphincssha256128frobust' + name: 'sphincssha26128frobust' pretty_name: 'SPHINCS+-SHA256-128f-robust' oqs_meth: 'OQS_SIG_alg_sphincs_sha256_128f_robust' - oid: '1.3.9999.6.4.1' - code_point: '0xfe5e' + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.4.1' + code_point: '0xfe5e' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.6.4.2', + 'code_point': '0xfe5f'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.6.4.3', + 'code_point': '0xfe60'}] + - + name: 'sphincssha2128fsimple' + pretty_name: 'SPHINCS+-SHA2-128f-simple' + oqs_meth: 'OQS_SIG_alg_sphincs_sha2_128f_simple' + oid: '1.3.9999.6.4.13' + code_point: '0xfeb3' supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] enable: true mix_with: [{'name': 'p256', 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.6.4.2', - 'code_point': '0xfe5f'}, - {'name': 'rsa3072', - 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.6.4.3', - 'code_point': '0xfe60'}] - - - name: 'sphincssha256128fsimple' - pretty_name: 'SPHINCS+-SHA256-128f-simple' - oqs_meth: 'OQS_SIG_alg_sphincs_sha256_128f_simple' - oid: '1.3.9999.6.4.4' - code_point: '0xfe61' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p256', - 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.6.4.5', - 'code_point': '0xfe62'}, + 'oid': '1.3.9999.6.4.14', + 'code_point': '0xfeb4'}, {'name': 'rsa3072', 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.6.4.6', - 'code_point': '0xfe63'}] + 'oid': '1.3.9999.6.4.15', + 'code_point': '0xfeb5'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.4.4' + code_point: '0xfe61' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.6.4.5', + 'code_point': '0xfe62'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.6.4.6', + 'code_point': '0xfe63'}] - name: 'sphincssha256128srobust' pretty_name: 'SPHINCS+-SHA256-128s-robust' oqs_meth: 'OQS_SIG_alg_sphincs_sha256_128s_robust' - oid: '1.3.9999.6.4.7' - code_point: '0xfe64' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p256', - 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.6.4.8', - 'code_point': '0xfe65'}, - {'name': 'rsa3072', - 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.6.4.9', - 'code_point': '0xfe66'}] - - - name: 'sphincssha256128ssimple' - pretty_name: 'SPHINCS+-SHA256-128s-simple' - oqs_meth: 'OQS_SIG_alg_sphincs_sha256_128s_simple' - oid: '1.3.9999.6.4.10' - code_point: '0xfe67' + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.4.7' + code_point: '0xfe64' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.6.4.8', + 'code_point': '0xfe65'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.6.4.9', + 'code_point': '0xfe66'}] + - + name: 'sphincssha2128ssimple' + pretty_name: 'SPHINCS+-SHA2-128s-simple' + oqs_meth: 'OQS_SIG_alg_sphincs_sha2_128s_simple' + oid: '1.3.9999.6.4.16' + code_point: '0xfeb6' supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] enable: true mix_with: [{'name': 'p256', 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.6.4.11', - 'code_point': '0xfe68'}, + 'oid': '1.3.9999.6.4.17', + 'code_point': '0xfeb7'}, {'name': 'rsa3072', 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.6.4.12', - 'code_point': '0xfe69'}] + 'oid': '1.3.9999.6.4.18', + 'code_point': '0xfeb8'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.4.10' + code_point: '0xfe67' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.6.4.11', + 'code_point': '0xfe68'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.6.4.12', + 'code_point': '0xfe69'}] - name: 'sphincssha256192frobust' pretty_name: 'SPHINCS+-SHA256-192f-robust' oqs_meth: 'OQS_SIG_alg_sphincs_sha256_192f_robust' - oid: '1.3.9999.6.5.1' - code_point: '0xfe6a' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p384', - 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.6.5.2', - 'code_point': '0xfe6b'}] - - - name: 'sphincssha256192fsimple' - pretty_name: 'SPHINCS+-SHA256-192f-simple' - oqs_meth: 'OQS_SIG_alg_sphincs_sha256_192f_simple' - oid: '1.3.9999.6.5.3' - code_point: '0xfe6c' + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.5.1' + code_point: '0xfe6a' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.6.5.2', + 'code_point': '0xfe6b'}] + - + name: 'sphincssha2192fsimple' + pretty_name: 'SPHINCS+-SHA2-192f-simple' + oqs_meth: 'OQS_SIG_alg_sphincs_sha2_192f_simple' + oid: '1.3.9999.6.5.10' + code_point: '0xfeb9' supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false + enable: true mix_with: [{'name': 'p384', 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.6.5.4', - 'code_point': '0xfe6d'}] + 'oid': '1.3.9999.6.5.11', + 'code_point': '0xfeba'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.5.3' + code_point: '0xfe6c' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.6.5.4', + 'code_point': '0xfe6d'}] - name: 'sphincssha256192srobust' pretty_name: 'SPHINCS+-SHA256-192s-robust' oqs_meth: 'OQS_SIG_alg_sphincs_sha256_192s_robust' - oid: '1.3.9999.6.5.5' - code_point: '0xfe6e' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p384', - 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.6.5.6', - 'code_point': '0xfe6f'}] - - - name: 'sphincssha256192ssimple' - pretty_name: 'SPHINCS+-SHA256-192s-simple' - oqs_meth: 'OQS_SIG_alg_sphincs_sha256_192s_simple' - oid: '1.3.9999.6.5.7' - code_point: '0xfe70' + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.5.5' + code_point: '0xfe6e' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.6.5.6', + 'code_point': '0xfe6f'}] + - + name: 'sphincssha2192ssimple' + pretty_name: 'SPHINCS+-SHA2-192s-simple' + oqs_meth: 'OQS_SIG_alg_sphincs_sha2_192s_simple' + oid: '1.3.9999.6.5.12' + code_point: '0xfebb' supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] enable: false mix_with: [{'name': 'p384', 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.6.5.8', - 'code_point': '0xfe71'}] + 'oid': '1.3.9999.6.5.13', + 'code_point': '0xfebc'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.5.7' + code_point: '0xfe70' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.6.5.8', + 'code_point': '0xfe71'}] - name: 'sphincssha256256frobust' pretty_name: 'SPHINCS+-SHA256-256f-robust' oqs_meth: 'OQS_SIG_alg_sphincs_sha256_256f_robust' - oid: '1.3.9999.6.6.1' - code_point: '0xfe72' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p521', - 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.6.6.2', - 'code_point': '0xfe73'}] - - - name: 'sphincssha256256fsimple' - pretty_name: 'SPHINCS+-SHA256-256f-simple' - oqs_meth: 'OQS_SIG_alg_sphincs_sha256_256f_simple' - oid: '1.3.9999.6.6.3' - code_point: '0xfe74' + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.6.1' + code_point: '0xfe72' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.6.6.2', + 'code_point': '0xfe73'}] + - + name: 'sphincssha2256fsimple' + pretty_name: 'SPHINCS+-SHA2-256f-simple' + oqs_meth: 'OQS_SIG_alg_sphincs_sha2_256f_simple' + oid: '1.3.9999.6.6.10' + code_point: '0xfebd' supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] enable: false mix_with: [{'name': 'p521', 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.6.6.4', - 'code_point': '0xfe75'}] + 'oid': '1.3.9999.6.6.11', + 'code_point': '0xfebe'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.6.3' + code_point: '0xfe74' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.6.6.4', + 'code_point': '0xfe75'}] - name: 'sphincssha256256srobust' pretty_name: 'SPHINCS+-SHA256-256s-robust' oqs_meth: 'OQS_SIG_alg_sphincs_sha256_256s_robust' - oid: '1.3.9999.6.6.5' - code_point: '0xfe76' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p521', - 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.6.6.6', - 'code_point': '0xfe77'}] - - - name: 'sphincssha256256ssimple' - pretty_name: 'SPHINCS+-SHA256-256s-simple' - oqs_meth: 'OQS_SIG_alg_sphincs_sha256_256s_simple' - oid: '1.3.9999.6.6.7' - code_point: '0xfe78' + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.6.5' + code_point: '0xfe76' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.6.6.6', + 'code_point': '0xfe77'}] + - + name: 'sphincssha2256ssimple' + pretty_name: 'SPHINCS+-SHA2-256s-simple' + oqs_meth: 'OQS_SIG_alg_sphincs_sha2_256s_simple' + oid: '1.3.9999.6.6.12' + code_point: '0xfec0' supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] enable: false mix_with: [{'name': 'p521', 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.6.6.8', - 'code_point': '0xfe79'}] + 'oid': '1.3.9999.6.6.13', + 'code_point': '0xfec1'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.6.7' + code_point: '0xfe78' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.6.6.8', + 'code_point': '0xfe79'}] - - family: 'SPHINCS-SHAKE256' + family: 'SPHINCS-SHAKE' variants: - name: 'sphincsshake256128frobust' pretty_name: 'SPHINCS+-SHAKE256-128f-robust' oqs_meth: 'OQS_SIG_alg_sphincs_shake256_128f_robust' - oid: '1.3.9999.6.7.1' - code_point: '0xfe7a' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p256', - 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.6.7.2', - 'code_point': '0xfe7b'}, - {'name': 'rsa3072', - 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.6.7.3', - 'code_point': '0xfe7c'}] - - - name: 'sphincsshake256128fsimple' - pretty_name: 'SPHINCS+-SHAKE256-128f-simple' - oqs_meth: 'OQS_SIG_alg_sphincs_shake256_128f_simple' - oid: '1.3.9999.6.7.4' - code_point: '0xfe7d' + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.7.1' + code_point: '0xfe7a' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.6.7.2', + 'code_point': '0xfe7b'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.6.7.3', + 'code_point': '0xfe7c'}] + - + name: 'sphincsshake128fsimple' + pretty_name: 'SPHINCS+-SHAKE-128f-simple' + oqs_meth: 'OQS_SIG_alg_sphincs_shake_128f_simple' + oid: '1.3.9999.6.7.13' + code_point: '0xfec2' supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] enable: true mix_with: [{'name': 'p256', 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.6.7.5', - 'code_point': '0xfe7e'}, + 'oid': '1.3.9999.6.7.14', + 'code_point': '0xfec3'}, {'name': 'rsa3072', 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.6.7.6', - 'code_point': '0xfe7f'}] + 'oid': '1.3.9999.6.7.15', + 'code_point': '0xfec4'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.7.4' + code_point: '0xfe7d' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.6.7.5', + 'code_point': '0xfe7e'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.6.7.6', + 'code_point': '0xfe7f'}] - name: 'sphincsshake256128srobust' pretty_name: 'SPHINCS+-SHAKE256-128s-robust' oqs_meth: 'OQS_SIG_alg_sphincs_shake256_128s_robust' - oid: '1.3.9999.6.7.7' - code_point: '0xfe80' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p256', - 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.6.7.8', - 'code_point': '0xfe81'}, - {'name': 'rsa3072', - 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.6.7.9', - 'code_point': '0xfe82'}] - - - name: 'sphincsshake256128ssimple' - pretty_name: 'SPHINCS+-SHAKE256-128s-simple' - oqs_meth: 'OQS_SIG_alg_sphincs_shake256_128s_simple' - oid: '1.3.9999.6.7.10' - code_point: '0xfe83' + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.7.7' + code_point: '0xfe80' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.6.7.8', + 'code_point': '0xfe81'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.6.7.9', + 'code_point': '0xfe82'}] + - + name: 'sphincsshake128ssimple' + pretty_name: 'SPHINCS+-SHAKE-128s-simple' + oqs_meth: 'OQS_SIG_alg_sphincs_shake_128s_simple' + oid: '1.3.9999.6.7.16' + code_point: '0xfec5' supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] enable: false mix_with: [{'name': 'p256', 'pretty_name': 'ECDSA p256', - 'oid': '1.3.9999.6.7.11', - 'code_point': '0xfe84'}, + 'oid': '1.3.9999.6.7.17', + 'code_point': '0xfec6'}, {'name': 'rsa3072', 'pretty_name': 'RSA3072', - 'oid': '1.3.9999.6.7.12', - 'code_point': '0xfe85'}] + 'oid': '1.3.9999.6.7.18', + 'code_point': '0xfec7'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.7.10' + code_point: '0xfe83' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'oid': '1.3.9999.6.7.11', + 'code_point': '0xfe84'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA3072', + 'oid': '1.3.9999.6.7.12', + 'code_point': '0xfe85'}] - name: 'sphincsshake256192frobust' pretty_name: 'SPHINCS+-SHAKE256-192f-robust' oqs_meth: 'OQS_SIG_alg_sphincs_shake256_192f_robust' - oid: '1.3.9999.6.8.1' - code_point: '0xfe86' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p384', - 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.6.8.2', - 'code_point': '0xfe87'}] - - - name: 'sphincsshake256192fsimple' - pretty_name: 'SPHINCS+-SHAKE256-192f-simple' - oqs_meth: 'OQS_SIG_alg_sphincs_shake256_192f_simple' - oid: '1.3.9999.6.8.3' - code_point: '0xfe88' + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.8.1' + code_point: '0xfe86' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.6.8.2', + 'code_point': '0xfe87'}] + - + name: 'sphincsshake192fsimple' + pretty_name: 'SPHINCS+-SHAKE-192f-simple' + oqs_meth: 'OQS_SIG_alg_sphincs_shake_192f_simple' + oid: '1.3.9999.6.8.10' + code_point: '0xfec8' supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] enable: false mix_with: [{'name': 'p384', 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.6.8.4', - 'code_point': '0xfe89'}] + 'oid': '1.3.9999.6.8.11', + 'code_point': '0xfec9'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.8.3' + code_point: '0xfe88' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.6.8.4', + 'code_point': '0xfe89'}] - name: 'sphincsshake256192srobust' pretty_name: 'SPHINCS+-SHAKE256-192s-robust' oqs_meth: 'OQS_SIG_alg_sphincs_shake256_192s_robust' - oid: '1.3.9999.6.8.5' - code_point: '0xfe8a' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p384', - 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.6.8.6', - 'code_point': '0xfe8b'}] - - - name: 'sphincsshake256192ssimple' - pretty_name: 'SPHINCS+-SHAKE256-192s-simple' - oqs_meth: 'OQS_SIG_alg_sphincs_shake256_192s_simple' - oid: '1.3.9999.6.8.7' - code_point: '0xfe8c' + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.8.5' + code_point: '0xfe8a' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.6.8.6', + 'code_point': '0xfe8b'}] + - + name: 'sphincsshake192ssimple' + pretty_name: 'SPHINCS+-SHAKE-192s-simple' + oqs_meth: 'OQS_SIG_alg_sphincs_shake_192s_simple' + oid: '1.3.9999.6.8.12' + code_point: '0xfeca' supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] enable: false mix_with: [{'name': 'p384', 'pretty_name': 'ECDSA p384', - 'oid': '1.3.9999.6.8.8', - 'code_point': '0xfe8d'}] + 'oid': '1.3.9999.6.8.13', + 'code_point': '0xfecb'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.8.7' + code_point: '0xfe8c' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'oid': '1.3.9999.6.8.8', + 'code_point': '0xfe8d'}] - name: 'sphincsshake256256frobust' pretty_name: 'SPHINCS+-SHAKE256-256f-robust' oqs_meth: 'OQS_SIG_alg_sphincs_shake256_256f_robust' - oid: '1.3.9999.6.9.1' - code_point: '0xfe8e' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p521', - 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.6.9.2', - 'code_point': '0xfe8f'}] - - - name: 'sphincsshake256256fsimple' - pretty_name: 'SPHINCS+-SHAKE256-256f-simple' - oqs_meth: 'OQS_SIG_alg_sphincs_shake256_256f_simple' - oid: '1.3.9999.6.9.3' - code_point: '0xfe90' + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.9.1' + code_point: '0xfe8e' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.6.9.2', + 'code_point': '0xfe8f'}] + - + name: 'sphincsshake256fsimple' + pretty_name: 'SPHINCS+-SHAKE-256f-simple' + oqs_meth: 'OQS_SIG_alg_sphincs_shake_256f_simple' + oid: '1.3.9999.6.9.10' + code_point: '0xfecc' supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] enable: false mix_with: [{'name': 'p521', 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.6.9.4', - 'code_point': '0xfe91'}] + 'oid': '1.3.9999.6.9.11', + 'code_point': '0xfecd'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.9.3' + code_point: '0xfe90' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.6.9.4', + 'code_point': '0xfe91'}] - name: 'sphincsshake256256srobust' pretty_name: 'SPHINCS+-SHAKE256-256s-robust' oqs_meth: 'OQS_SIG_alg_sphincs_shake256_256s_robust' - oid: '1.3.9999.6.9.5' - code_point: '0xfe92' - supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] - enable: false - mix_with: [{'name': 'p521', - 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.6.9.6', - 'code_point': '0xfe93'}] - - - name: 'sphincsshake256256ssimple' - pretty_name: 'SPHINCS+-SHAKE256-256s-simple' - oqs_meth: 'OQS_SIG_alg_sphincs_shake256_256s_simple' - oid: '1.3.9999.6.9.7' - code_point: '0xfe94' + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.9.5' + code_point: '0xfe92' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.6.9.6', + 'code_point': '0xfe93'}] + - + name: 'sphincsshake256ssimple' + pretty_name: 'SPHINCS+-SHAKE-256s-simple' + oqs_meth: 'OQS_SIG_alg_sphincs_shake_256s_simple' + oid: '1.3.9999.6.9.12' + code_point: '0xfece' supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] enable: false mix_with: [{'name': 'p521', 'pretty_name': 'ECDSA p521', - 'oid': '1.3.9999.6.9.8', - 'code_point': '0xfe95'}] + 'oid': '1.3.9999.6.9.13', + 'code_point': '0xfecf'}] + extra_nids: + old: + - implementation_version: NIST Round 3 submission + nist-round: 3 + oid: '1.3.9999.6.9.7' + code_point: '0xfe94' + supported_encodings: ['draft-uni-qsckeys-sphincsplus-00/sk-pk'] + mix_with: [{'name': 'p521', + 'pretty_name': 'ECDSA p521', + 'oid': '1.3.9999.6.9.8', + 'code_point': '0xfe95'}] + + diff --git a/oqs-template/generatehelpers.py b/oqs-template/generatehelpers.py index eca78e2aebe44..4e9a6b648a4bb 100644 --- a/oqs-template/generatehelpers.py +++ b/oqs-template/generatehelpers.py @@ -52,8 +52,8 @@ def get_sig_nistlevel(family, alg, docsdir): # translate family names in generate.yml to directory names for liboqs algorithm datasheets if family['family'] == 'CRYSTALS-Dilithium': datasheetname = 'dilithium' elif family['family'] == 'SPHINCS-Haraka': datasheetname = 'sphincs' - elif family['family'] == 'SPHINCS-SHA256': datasheetname = 'sphincs' - elif family['family'] == 'SPHINCS-SHAKE256': datasheetname = 'sphincs' + elif family['family'] == 'SPHINCS-SHA2': datasheetname = 'sphincs' + elif family['family'] == 'SPHINCS-SHAKE': datasheetname = 'sphincs' else: datasheetname = family['family'].lower() # load datasheet algymlfilename = os.path.join(docsdir, 'algorithms', 'sig', '{:s}.yml'.format(datasheetname)) @@ -86,14 +86,18 @@ def complete_config(config, oqsdocsdir = None): print("Must include LIBOQS_DOCS_DIR in environment") exit(1) oqsdocsdir = os.environ["LIBOQS_DOCS_DIR"] + nkc = [] for kem in config['kems']: if not "bit_security" in kem.keys(): bits_level = nist_to_bits(get_kem_nistlevel(kem, oqsdocsdir)) if bits_level == None: print("Cannot find security level for {:s} {:s}".format(kem['family'], kem['name_group'])) - exit(1) - kem['bit_security'] = bits_level + else: + kem['bit_security'] = bits_level + nkc.append(kem) + config['kems']=nkc for famsig in config['sigs']: + nsv = [] for sig in famsig['variants']: if not "security" in sig.keys(): bits_level = nist_to_bits(get_sig_nistlevel(famsig, sig, oqsdocsdir)) @@ -102,7 +106,10 @@ def complete_config(config, oqsdocsdir = None): bits_level=128 else: print("Cannot find security level for {:s} {:s}".format(famsig['family'], sig['name'])) - exit(1) - sig['security'] = bits_level + bits_level = -1 + else: + sig['security'] = bits_level + nsv.append(sig) + famsig['variants']=nsv return config diff --git a/oqs-template/oqs-kem-info.md b/oqs-template/oqs-kem-info.md index 67671fc7e8dfd..844d9b6916b11 100644 --- a/oqs-template/oqs-kem-info.md +++ b/oqs-template/oqs-kem-info.md @@ -8,15 +8,6 @@ | BIKE | 5.1 | bikel3 | 4 | 3 | 0x2FAF | x448 | | BIKE | 5.1 | bikel5 | 4 | 5 | 0x0243 | | | BIKE | 5.1 | bikel5 | 4 | 5 | 0x2F43 | secp521_r1 | -| BIKE | NIST Round 2 submission | bike1l1cpa | 2 | 1 | 0x0206 | | -| BIKE | NIST Round 2 submission | bike1l1cpa | 2 | 1 | 0x2F06 | secp256_r1 | -| BIKE | NIST Round 2 submission | bike1l1fo | 2 | 1 | 0x0223 | | -| BIKE | NIST Round 2 submission | bike1l1fo | 2 | 1 | 0x2F23 | secp256_r1 | -| BIKE | NIST Round 2 submission | bike1l1fo | 2 | 1 | 0x2F28 | x25519 | -| BIKE | NIST Round 2 submission | bike1l3cpa | 2 | 3 | 0x0207 | | -| BIKE | NIST Round 2 submission | bike1l3cpa | 2 | 3 | 0x2F07 | secp384_r1 | -| BIKE | NIST Round 2 submission | bike1l3fo | 2 | 3 | 0x0224 | | -| BIKE | NIST Round 2 submission | bike1l3fo | 2 | 3 | 0x2F24 | secp384_r1 | | BIKE | NIST Round 3 submission | bikel1 | 3 | 1 | 0x0238 | | | BIKE | NIST Round 3 submission | bikel1 | 3 | 1 | 0x2F37 | x25519 | | BIKE | NIST Round 3 submission | bikel1 | 3 | 1 | 0x2F38 | secp256_r1 | @@ -29,12 +20,6 @@ | CRYSTALS-Kyber | NIST Round 2 submission | kyber512 | 2 | 1 | 0x2F26 | x25519 | | CRYSTALS-Kyber | NIST Round 2 submission | kyber768 | 2 | 3 | 0x0210 | | | CRYSTALS-Kyber | NIST Round 2 submission | kyber768 | 2 | 3 | 0x2F10 | secp384_r1 | -| CRYSTALS-Kyber | NIST Round 2 submission | kyber90s1024 | 2 | 5 | 0x022B | | -| CRYSTALS-Kyber | NIST Round 2 submission | kyber90s1024 | 2 | 5 | 0x2F2B | secp521_r1 | -| CRYSTALS-Kyber | NIST Round 2 submission | kyber90s512 | 2 | 1 | 0x0229 | | -| CRYSTALS-Kyber | NIST Round 2 submission | kyber90s512 | 2 | 1 | 0x2F29 | secp256_r1 | -| CRYSTALS-Kyber | NIST Round 2 submission | kyber90s768 | 2 | 3 | 0x022A | | -| CRYSTALS-Kyber | NIST Round 2 submission | kyber90s768 | 2 | 3 | 0x2F2A | secp384_r1 | | CRYSTALS-Kyber | NIST Round 3 submission | kyber1024 | 3 | 5 | 0x023D | | | CRYSTALS-Kyber | NIST Round 3 submission | kyber1024 | 3 | 5 | 0x2F3D | secp521_r1 | | CRYSTALS-Kyber | NIST Round 3 submission | kyber512 | 3 | 1 | 0x023A | | @@ -43,14 +28,6 @@ | CRYSTALS-Kyber | NIST Round 3 submission | kyber768 | 3 | 3 | 0x023C | | | CRYSTALS-Kyber | NIST Round 3 submission | kyber768 | 3 | 3 | 0x2F3C | secp384_r1 | | CRYSTALS-Kyber | NIST Round 3 submission | kyber768 | 3 | 3 | 0x2F90 | x448 | -| CRYSTALS-Kyber | NIST Round 3 submission | kyber90s1024 | 3 | 5 | 0x0240 | | -| CRYSTALS-Kyber | NIST Round 3 submission | kyber90s1024 | 3 | 5 | 0x2F40 | secp521_r1 | -| CRYSTALS-Kyber | NIST Round 3 submission | kyber90s512 | 3 | 1 | 0x023E | | -| CRYSTALS-Kyber | NIST Round 3 submission | kyber90s512 | 3 | 1 | 0x2F3E | secp256_r1 | -| CRYSTALS-Kyber | NIST Round 3 submission | kyber90s512 | 3 | 1 | 0x2FA9 | x25519 | -| CRYSTALS-Kyber | NIST Round 3 submission | kyber90s768 | 3 | 3 | 0x023F | | -| CRYSTALS-Kyber | NIST Round 3 submission | kyber90s768 | 3 | 3 | 0x2F3F | secp384_r1 | -| CRYSTALS-Kyber | NIST Round 3 submission | kyber90s768 | 3 | 3 | 0x2FAA | x448 | | FrodoKEM | NIST Round 3 submission | frodo1344aes | 3 | 5 | 0x0204 | | | FrodoKEM | NIST Round 3 submission | frodo1344aes | 3 | 5 | 0x2F04 | secp521_r1 | | FrodoKEM | NIST Round 3 submission | frodo1344shake | 3 | 5 | 0x0205 | | diff --git a/oqs-template/oqs-sig-info.md b/oqs-template/oqs-sig-info.md index d9e74c61a8508..afcfc3557b87f 100644 --- a/oqs-template/oqs-sig-info.md +++ b/oqs-template/oqs-sig-info.md @@ -1,105 +1,42 @@ -| Algorithm | Implementation Version | NIST round | Claimed NIST Level | Code Point | OID | -|:--------------------------------------------------|:-------------------------|-------------:|---------------------:|:-------------|:-------------------------| -| dilithium2 | 3.1 | 3 | 2 | 0xfea0 | 1.3.6.1.4.1.2.267.7.4.4 | -| dilithium2 **hybrid with** p256 | 3.1 | 3 | 2 | 0xfea1 | 1.3.9999.2.7.1 | -| dilithium2 **hybrid with** rsa3072 | 3.1 | 3 | 2 | 0xfea2 | 1.3.9999.2.7.2 | -| dilithium3 | 3.1 | 3 | 3 | 0xfea3 | 1.3.6.1.4.1.2.267.7.6.5 | -| dilithium3 **hybrid with** p384 | 3.1 | 3 | 3 | 0xfea4 | 1.3.9999.2.7.3 | -| dilithium5 | 3.1 | 3 | 5 | 0xfea5 | 1.3.6.1.4.1.2.267.7.8.7 | -| dilithium5 **hybrid with** p521 | 3.1 | 3 | 5 | 0xfea6 | 1.3.9999.2.7.4 | -| dilithium2_aes | 3.1 | 3 | 2 | 0xfea7 | 1.3.6.1.4.1.2.267.11.4.4 | -| dilithium2_aes **hybrid with** p256 | 3.1 | 3 | 2 | 0xfea8 | 1.3.9999.2.11.1 | -| dilithium2_aes **hybrid with** rsa3072 | 3.1 | 3 | 2 | 0xfea9 | 1.3.9999.2.11.2 | -| dilithium3_aes | 3.1 | 3 | 3 | 0xfeaa | 1.3.6.1.4.1.2.267.11.6.5 | -| dilithium3_aes **hybrid with** p384 | 3.1 | 3 | 3 | 0xfeab | 1.3.9999.2.11.3 | -| dilithium5_aes | 3.1 | 3 | 5 | 0xfeac | 1.3.6.1.4.1.2.267.11.8.7 | -| dilithium5_aes **hybrid with** p521 | 3.1 | 3 | 5 | 0xfead | 1.3.9999.2.11.4 | -| falcon512 | 20211101 | 3 | 1 | 0xfeae | 1.3.9999.3.6 | -| falcon512 **hybrid with** p256 | 20211101 | 3 | 1 | 0xfeaf | 1.3.9999.3.7 | -| falcon512 **hybrid with** rsa3072 | 20211101 | 3 | 1 | 0xfeb0 | 1.3.9999.3.8 | -| falcon1024 | 20211101 | 3 | 5 | 0xfeb1 | 1.3.9999.3.9 | -| falcon1024 **hybrid with** p521 | 20211101 | 3 | 5 | 0xfeb2 | 1.3.9999.3.10 | -| sphincsharaka128frobust | NIST Round 3 submission | 3 | 1 | 0xfe42 | 1.3.9999.6.1.1 | -| sphincsharaka128frobust **hybrid with** p256 | NIST Round 3 submission | 3 | 1 | 0xfe43 | 1.3.9999.6.1.2 | -| sphincsharaka128frobust **hybrid with** rsa3072 | NIST Round 3 submission | 3 | 1 | 0xfe44 | 1.3.9999.6.1.3 | -| sphincsharaka128fsimple | NIST Round 3 submission | 3 | 1 | 0xfe45 | 1.3.9999.6.1.4 | -| sphincsharaka128fsimple **hybrid with** p256 | NIST Round 3 submission | 3 | 1 | 0xfe46 | 1.3.9999.6.1.5 | -| sphincsharaka128fsimple **hybrid with** rsa3072 | NIST Round 3 submission | 3 | 1 | 0xfe47 | 1.3.9999.6.1.6 | -| sphincsharaka128srobust | NIST Round 3 submission | 3 | 1 | 0xfe48 | 1.3.9999.6.1.7 | -| sphincsharaka128srobust **hybrid with** p256 | NIST Round 3 submission | 3 | 1 | 0xfe49 | 1.3.9999.6.1.8 | -| sphincsharaka128srobust **hybrid with** rsa3072 | NIST Round 3 submission | 3 | 1 | 0xfe4a | 1.3.9999.6.1.9 | -| sphincsharaka128ssimple | NIST Round 3 submission | 3 | 1 | 0xfe4b | 1.3.9999.6.1.10 | -| sphincsharaka128ssimple **hybrid with** p256 | NIST Round 3 submission | 3 | 1 | 0xfe4c | 1.3.9999.6.1.11 | -| sphincsharaka128ssimple **hybrid with** rsa3072 | NIST Round 3 submission | 3 | 1 | 0xfe4d | 1.3.9999.6.1.12 | -| sphincsharaka192frobust | NIST Round 3 submission | 3 | 3 | 0xfe4e | 1.3.9999.6.2.1 | -| sphincsharaka192frobust **hybrid with** p384 | NIST Round 3 submission | 3 | 3 | 0xfe4f | 1.3.9999.6.2.2 | -| sphincsharaka192fsimple | NIST Round 3 submission | 3 | 3 | 0xfe50 | 1.3.9999.6.2.3 | -| sphincsharaka192fsimple **hybrid with** p384 | NIST Round 3 submission | 3 | 3 | 0xfe51 | 1.3.9999.6.2.4 | -| sphincsharaka192srobust | NIST Round 3 submission | 3 | 3 | 0xfe52 | 1.3.9999.6.2.5 | -| sphincsharaka192srobust **hybrid with** p384 | NIST Round 3 submission | 3 | 3 | 0xfe53 | 1.3.9999.6.2.6 | -| sphincsharaka192ssimple | NIST Round 3 submission | 3 | 3 | 0xfe54 | 1.3.9999.6.2.7 | -| sphincsharaka192ssimple **hybrid with** p384 | NIST Round 3 submission | 3 | 3 | 0xfe55 | 1.3.9999.6.2.8 | -| sphincsharaka256frobust | NIST Round 3 submission | 3 | 5 | 0xfe56 | 1.3.9999.6.3.1 | -| sphincsharaka256frobust **hybrid with** p521 | NIST Round 3 submission | 3 | 5 | 0xfe57 | 1.3.9999.6.3.2 | -| sphincsharaka256fsimple | NIST Round 3 submission | 3 | 5 | 0xfe58 | 1.3.9999.6.3.3 | -| sphincsharaka256fsimple **hybrid with** p521 | NIST Round 3 submission | 3 | 5 | 0xfe59 | 1.3.9999.6.3.4 | -| sphincsharaka256srobust | NIST Round 3 submission | 3 | 5 | 0xfe5a | 1.3.9999.6.3.5 | -| sphincsharaka256srobust **hybrid with** p521 | NIST Round 3 submission | 3 | 5 | 0xfe5b | 1.3.9999.6.3.6 | -| sphincsharaka256ssimple | NIST Round 3 submission | 3 | 5 | 0xfe5c | 1.3.9999.6.3.7 | -| sphincsharaka256ssimple **hybrid with** p521 | NIST Round 3 submission | 3 | 5 | 0xfe5d | 1.3.9999.6.3.8 | -| sphincssha256128frobust | NIST Round 3 submission | 3 | 1 | 0xfe5e | 1.3.9999.6.4.1 | -| sphincssha256128frobust **hybrid with** p256 | NIST Round 3 submission | 3 | 1 | 0xfe5f | 1.3.9999.6.4.2 | -| sphincssha256128frobust **hybrid with** rsa3072 | NIST Round 3 submission | 3 | 1 | 0xfe60 | 1.3.9999.6.4.3 | -| sphincssha256128fsimple | NIST Round 3 submission | 3 | 1 | 0xfe61 | 1.3.9999.6.4.4 | -| sphincssha256128fsimple **hybrid with** p256 | NIST Round 3 submission | 3 | 1 | 0xfe62 | 1.3.9999.6.4.5 | -| sphincssha256128fsimple **hybrid with** rsa3072 | NIST Round 3 submission | 3 | 1 | 0xfe63 | 1.3.9999.6.4.6 | -| sphincssha256128srobust | NIST Round 3 submission | 3 | 1 | 0xfe64 | 1.3.9999.6.4.7 | -| sphincssha256128srobust **hybrid with** p256 | NIST Round 3 submission | 3 | 1 | 0xfe65 | 1.3.9999.6.4.8 | -| sphincssha256128srobust **hybrid with** rsa3072 | NIST Round 3 submission | 3 | 1 | 0xfe66 | 1.3.9999.6.4.9 | -| sphincssha256128ssimple | NIST Round 3 submission | 3 | 1 | 0xfe67 | 1.3.9999.6.4.10 | -| sphincssha256128ssimple **hybrid with** p256 | NIST Round 3 submission | 3 | 1 | 0xfe68 | 1.3.9999.6.4.11 | -| sphincssha256128ssimple **hybrid with** rsa3072 | NIST Round 3 submission | 3 | 1 | 0xfe69 | 1.3.9999.6.4.12 | -| sphincssha256192frobust | NIST Round 3 submission | 3 | 3 | 0xfe6a | 1.3.9999.6.5.1 | -| sphincssha256192frobust **hybrid with** p384 | NIST Round 3 submission | 3 | 3 | 0xfe6b | 1.3.9999.6.5.2 | -| sphincssha256192fsimple | NIST Round 3 submission | 3 | 3 | 0xfe6c | 1.3.9999.6.5.3 | -| sphincssha256192fsimple **hybrid with** p384 | NIST Round 3 submission | 3 | 3 | 0xfe6d | 1.3.9999.6.5.4 | -| sphincssha256192srobust | NIST Round 3 submission | 3 | 3 | 0xfe6e | 1.3.9999.6.5.5 | -| sphincssha256192srobust **hybrid with** p384 | NIST Round 3 submission | 3 | 3 | 0xfe6f | 1.3.9999.6.5.6 | -| sphincssha256192ssimple | NIST Round 3 submission | 3 | 3 | 0xfe70 | 1.3.9999.6.5.7 | -| sphincssha256192ssimple **hybrid with** p384 | NIST Round 3 submission | 3 | 3 | 0xfe71 | 1.3.9999.6.5.8 | -| sphincssha256256frobust | NIST Round 3 submission | 3 | 5 | 0xfe72 | 1.3.9999.6.6.1 | -| sphincssha256256frobust **hybrid with** p521 | NIST Round 3 submission | 3 | 5 | 0xfe73 | 1.3.9999.6.6.2 | -| sphincssha256256fsimple | NIST Round 3 submission | 3 | 5 | 0xfe74 | 1.3.9999.6.6.3 | -| sphincssha256256fsimple **hybrid with** p521 | NIST Round 3 submission | 3 | 5 | 0xfe75 | 1.3.9999.6.6.4 | -| sphincssha256256srobust | NIST Round 3 submission | 3 | 5 | 0xfe76 | 1.3.9999.6.6.5 | -| sphincssha256256srobust **hybrid with** p521 | NIST Round 3 submission | 3 | 5 | 0xfe77 | 1.3.9999.6.6.6 | -| sphincssha256256ssimple | NIST Round 3 submission | 3 | 5 | 0xfe78 | 1.3.9999.6.6.7 | -| sphincssha256256ssimple **hybrid with** p521 | NIST Round 3 submission | 3 | 5 | 0xfe79 | 1.3.9999.6.6.8 | -| sphincsshake256128frobust | NIST Round 3 submission | 3 | 1 | 0xfe7a | 1.3.9999.6.7.1 | -| sphincsshake256128frobust **hybrid with** p256 | NIST Round 3 submission | 3 | 1 | 0xfe7b | 1.3.9999.6.7.2 | -| sphincsshake256128frobust **hybrid with** rsa3072 | NIST Round 3 submission | 3 | 1 | 0xfe7c | 1.3.9999.6.7.3 | -| sphincsshake256128fsimple | NIST Round 3 submission | 3 | 1 | 0xfe7d | 1.3.9999.6.7.4 | -| sphincsshake256128fsimple **hybrid with** p256 | NIST Round 3 submission | 3 | 1 | 0xfe7e | 1.3.9999.6.7.5 | -| sphincsshake256128fsimple **hybrid with** rsa3072 | NIST Round 3 submission | 3 | 1 | 0xfe7f | 1.3.9999.6.7.6 | -| sphincsshake256128srobust | NIST Round 3 submission | 3 | 1 | 0xfe80 | 1.3.9999.6.7.7 | -| sphincsshake256128srobust **hybrid with** p256 | NIST Round 3 submission | 3 | 1 | 0xfe81 | 1.3.9999.6.7.8 | -| sphincsshake256128srobust **hybrid with** rsa3072 | NIST Round 3 submission | 3 | 1 | 0xfe82 | 1.3.9999.6.7.9 | -| sphincsshake256128ssimple | NIST Round 3 submission | 3 | 1 | 0xfe83 | 1.3.9999.6.7.10 | -| sphincsshake256128ssimple **hybrid with** p256 | NIST Round 3 submission | 3 | 1 | 0xfe84 | 1.3.9999.6.7.11 | -| sphincsshake256128ssimple **hybrid with** rsa3072 | NIST Round 3 submission | 3 | 1 | 0xfe85 | 1.3.9999.6.7.12 | -| sphincsshake256192frobust | NIST Round 3 submission | 3 | 3 | 0xfe86 | 1.3.9999.6.8.1 | -| sphincsshake256192frobust **hybrid with** p384 | NIST Round 3 submission | 3 | 3 | 0xfe87 | 1.3.9999.6.8.2 | -| sphincsshake256192fsimple | NIST Round 3 submission | 3 | 3 | 0xfe88 | 1.3.9999.6.8.3 | -| sphincsshake256192fsimple **hybrid with** p384 | NIST Round 3 submission | 3 | 3 | 0xfe89 | 1.3.9999.6.8.4 | -| sphincsshake256192srobust | NIST Round 3 submission | 3 | 3 | 0xfe8a | 1.3.9999.6.8.5 | -| sphincsshake256192srobust **hybrid with** p384 | NIST Round 3 submission | 3 | 3 | 0xfe8b | 1.3.9999.6.8.6 | -| sphincsshake256192ssimple | NIST Round 3 submission | 3 | 3 | 0xfe8c | 1.3.9999.6.8.7 | -| sphincsshake256192ssimple **hybrid with** p384 | NIST Round 3 submission | 3 | 3 | 0xfe8d | 1.3.9999.6.8.8 | -| sphincsshake256256frobust | NIST Round 3 submission | 3 | 5 | 0xfe8e | 1.3.9999.6.9.1 | -| sphincsshake256256frobust **hybrid with** p521 | NIST Round 3 submission | 3 | 5 | 0xfe8f | 1.3.9999.6.9.2 | -| sphincsshake256256fsimple | NIST Round 3 submission | 3 | 5 | 0xfe90 | 1.3.9999.6.9.3 | -| sphincsshake256256fsimple **hybrid with** p521 | NIST Round 3 submission | 3 | 5 | 0xfe91 | 1.3.9999.6.9.4 | -| sphincsshake256256srobust | NIST Round 3 submission | 3 | 5 | 0xfe92 | 1.3.9999.6.9.5 | -| sphincsshake256256srobust **hybrid with** p521 | NIST Round 3 submission | 3 | 5 | 0xfe93 | 1.3.9999.6.9.6 | -| sphincsshake256256ssimple | NIST Round 3 submission | 3 | 5 | 0xfe94 | 1.3.9999.6.9.7 | -| sphincsshake256256ssimple **hybrid with** p521 | NIST Round 3 submission | 3 | 5 | 0xfe95 | 1.3.9999.6.9.8 | \ No newline at end of file +| Algorithm | Implementation Version | NIST round | Claimed NIST Level | Code Point | OID | +|:-----------------------------------------------|:----------------------------------------------|-------------:|---------------------:|:-------------|:------------------------| +| dilithium2 | 3.1 | 3 | 2 | 0xfea0 | 1.3.6.1.4.1.2.267.7.4.4 | +| dilithium2 **hybrid with** p256 | 3.1 | 3 | 2 | 0xfea1 | 1.3.9999.2.7.1 | +| dilithium2 **hybrid with** rsa3072 | 3.1 | 3 | 2 | 0xfea2 | 1.3.9999.2.7.2 | +| dilithium3 | 3.1 | 3 | 3 | 0xfea3 | 1.3.6.1.4.1.2.267.7.6.5 | +| dilithium3 **hybrid with** p384 | 3.1 | 3 | 3 | 0xfea4 | 1.3.9999.2.7.3 | +| dilithium5 | 3.1 | 3 | 5 | 0xfea5 | 1.3.6.1.4.1.2.267.7.8.7 | +| dilithium5 **hybrid with** p521 | 3.1 | 3 | 5 | 0xfea6 | 1.3.9999.2.7.4 | +| falcon512 | 20211101 | 3 | 1 | 0xfeae | 1.3.9999.3.6 | +| falcon512 **hybrid with** p256 | 20211101 | 3 | 1 | 0xfeaf | 1.3.9999.3.7 | +| falcon512 **hybrid with** rsa3072 | 20211101 | 3 | 1 | 0xfeb0 | 1.3.9999.3.8 | +| falcon1024 | 20211101 | 3 | 5 | 0xfeb1 | 1.3.9999.3.9 | +| falcon1024 **hybrid with** p521 | 20211101 | 3 | 5 | 0xfeb2 | 1.3.9999.3.10 | +| sphincssha2128fsimple | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 1 | 0xfeb3 | 1.3.9999.6.4.13 | +| sphincssha2128fsimple **hybrid with** p256 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 1 | 0xfeb4 | 1.3.9999.6.4.14 | +| sphincssha2128fsimple **hybrid with** rsa3072 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 1 | 0xfeb5 | 1.3.9999.6.4.15 | +| sphincssha2128ssimple | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 1 | 0xfeb6 | 1.3.9999.6.4.16 | +| sphincssha2128ssimple **hybrid with** p256 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 1 | 0xfeb7 | 1.3.9999.6.4.17 | +| sphincssha2128ssimple **hybrid with** rsa3072 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 1 | 0xfeb8 | 1.3.9999.6.4.18 | +| sphincssha2192fsimple | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 3 | 0xfeb9 | 1.3.9999.6.5.10 | +| sphincssha2192fsimple **hybrid with** p384 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 3 | 0xfeba | 1.3.9999.6.5.11 | +| sphincssha2192ssimple | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 3 | 0xfebb | 1.3.9999.6.5.12 | +| sphincssha2192ssimple **hybrid with** p384 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 3 | 0xfebc | 1.3.9999.6.5.13 | +| sphincssha2256fsimple | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 5 | 0xfebd | 1.3.9999.6.6.10 | +| sphincssha2256fsimple **hybrid with** p521 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 5 | 0xfebe | 1.3.9999.6.6.11 | +| sphincssha2256ssimple | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 5 | 0xfec0 | 1.3.9999.6.6.12 | +| sphincssha2256ssimple **hybrid with** p521 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 5 | 0xfec1 | 1.3.9999.6.6.13 | +| sphincsshake128fsimple | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 1 | 0xfec2 | 1.3.9999.6.7.13 | +| sphincsshake128fsimple **hybrid with** p256 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 1 | 0xfec3 | 1.3.9999.6.7.14 | +| sphincsshake128fsimple **hybrid with** rsa3072 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 1 | 0xfec4 | 1.3.9999.6.7.15 | +| sphincsshake128ssimple | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 1 | 0xfec5 | 1.3.9999.6.7.16 | +| sphincsshake128ssimple **hybrid with** p256 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 1 | 0xfec6 | 1.3.9999.6.7.17 | +| sphincsshake128ssimple **hybrid with** rsa3072 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 1 | 0xfec7 | 1.3.9999.6.7.18 | +| sphincsshake192fsimple | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 3 | 0xfec8 | 1.3.9999.6.8.10 | +| sphincsshake192fsimple **hybrid with** p384 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 3 | 0xfec9 | 1.3.9999.6.8.11 | +| sphincsshake192ssimple | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 3 | 0xfeca | 1.3.9999.6.8.12 | +| sphincsshake192ssimple **hybrid with** p384 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 3 | 0xfecb | 1.3.9999.6.8.13 | +| sphincsshake256fsimple | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 5 | 0xfecc | 1.3.9999.6.9.10 | +| sphincsshake256fsimple **hybrid with** p521 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 5 | 0xfecd | 1.3.9999.6.9.11 | +| sphincsshake256ssimple | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 5 | 0xfece | 1.3.9999.6.9.12 | +| sphincsshake256ssimple **hybrid with** p521 | NIST Round 3 submission, v3.1 (June 10, 2022) | 3 | 5 | 0xfecf | 1.3.9999.6.9.13 | \ No newline at end of file diff --git a/oqs-test/common.py b/oqs-test/common.py index f89c6d48cfb58..1834d98436bbd 100644 --- a/oqs-test/common.py +++ b/oqs-test/common.py @@ -7,18 +7,18 @@ key_exchanges = [ ##### OQS_TEMPLATE_FRAGMENT_KEX_ALGS_START # post-quantum key exchanges - 'frodo640aes','frodo640shake','frodo976aes','frodo976shake','frodo1344aes','frodo1344shake','kyber512','kyber768','kyber1024','bikel1','bikel3','bikel5','kyber90s512','kyber90s768','kyber90s1024','hqc128','hqc192','hqc256', + 'frodo640aes','frodo640shake','frodo976aes','frodo976shake','frodo1344aes','frodo1344shake','kyber512','kyber768','kyber1024','bikel1','bikel3','bikel5','hqc128','hqc192','hqc256', # post-quantum + classical key exchanges - 'p256_frodo640aes','p256_frodo640shake','p384_frodo976aes','p384_frodo976shake','p521_frodo1344aes','p521_frodo1344shake','p256_kyber512','p384_kyber768','p521_kyber1024','p256_bikel1','p384_bikel3','p521_bikel5','p256_kyber90s512','p384_kyber90s768','p521_kyber90s1024','p256_hqc128','p384_hqc192','p521_hqc256', + 'p256_frodo640aes','p256_frodo640shake','p384_frodo976aes','p384_frodo976shake','p521_frodo1344aes','p521_frodo1344shake','p256_kyber512','p384_kyber768','p521_kyber1024','p256_bikel1','p384_bikel3','p521_bikel5','p256_hqc128','p384_hqc192','p521_hqc256', ##### OQS_TEMPLATE_FRAGMENT_KEX_ALGS_END ] signatures = [ 'ecdsap256', 'rsa3072', ##### OQS_TEMPLATE_FRAGMENT_SIG_ALGS_START # post-quantum signatures - 'dilithium2','dilithium3','dilithium5','dilithium2_aes','dilithium3_aes','dilithium5_aes','falcon512','falcon1024','sphincsharaka128frobust','sphincsharaka128fsimple','sphincssha256128frobust','sphincssha256128ssimple','sphincsshake256128fsimple', + 'dilithium2','dilithium3','dilithium5','falcon512','falcon1024','sphincssha2128fsimple','sphincssha2128ssimple','sphincssha2192fsimple','sphincsshake128fsimple', # post-quantum + classical signatures - 'p256_dilithium2','rsa3072_dilithium2','p384_dilithium3','p521_dilithium5','p256_dilithium2_aes','rsa3072_dilithium2_aes','p384_dilithium3_aes','p521_dilithium5_aes','p256_falcon512','rsa3072_falcon512','p521_falcon1024','p256_sphincsharaka128frobust','rsa3072_sphincsharaka128frobust','p256_sphincsharaka128fsimple','rsa3072_sphincsharaka128fsimple','p256_sphincssha256128frobust','rsa3072_sphincssha256128frobust','p256_sphincssha256128ssimple','rsa3072_sphincssha256128ssimple','p256_sphincsshake256128fsimple','rsa3072_sphincsshake256128fsimple', + 'p256_dilithium2','rsa3072_dilithium2','p384_dilithium3','p521_dilithium5','p256_falcon512','rsa3072_falcon512','p521_falcon1024','p256_sphincssha2128fsimple','rsa3072_sphincssha2128fsimple','p256_sphincssha2128ssimple','rsa3072_sphincssha2128ssimple','p384_sphincssha2192fsimple','p256_sphincsshake128fsimple','rsa3072_sphincsshake128fsimple', ##### OQS_TEMPLATE_FRAGMENT_SIG_ALGS_END ] diff --git a/qsc.h b/qsc.h index 5363875d2786e..05032c8fbed48 100644 --- a/qsc.h +++ b/qsc.h @@ -24,12 +24,6 @@ { 0x2F42, "p384_bikel3" }, \ { 0x0243, "bikel5" }, \ { 0x2F43, "p521_bikel5" }, \ - { 0x023E, "kyber90s512" }, \ - { 0x2F3E, "p256_kyber90s512" }, \ - { 0x023F, "kyber90s768" }, \ - { 0x2F3F, "p384_kyber90s768" }, \ - { 0x0240, "kyber90s1024" }, \ - { 0x2F40, "p521_kyber90s1024" }, \ { 0x022C, "hqc128" }, \ { 0x2F2C, "p256_hqc128" }, \ { 0x022D, "hqc192" }, \ @@ -47,33 +41,22 @@ { 0xfea4, "p384_dilithium3" }, \ { 0xfea5, "dilithium5" }, \ { 0xfea6, "p521_dilithium5" }, \ - { 0xfea7, "dilithium2_aes" }, \ - { 0xfea8, "p256_dilithium2_aes" }, \ - { 0xfea9, "rsa3072_dilithium2_aes" }, \ - { 0xfeaa, "dilithium3_aes" }, \ - { 0xfeab, "p384_dilithium3_aes" }, \ - { 0xfeac, "dilithium5_aes" }, \ - { 0xfead, "p521_dilithium5_aes" }, \ { 0xfeae, "falcon512" }, \ { 0xfeaf, "p256_falcon512" }, \ { 0xfeb0, "rsa3072_falcon512" }, \ { 0xfeb1, "falcon1024" }, \ { 0xfeb2, "p521_falcon1024" }, \ - { 0xfe42, "sphincsharaka128frobust" }, \ - { 0xfe43, "p256_sphincsharaka128frobust" }, \ - { 0xfe44, "rsa3072_sphincsharaka128frobust" }, \ - { 0xfe45, "sphincsharaka128fsimple" }, \ - { 0xfe46, "p256_sphincsharaka128fsimple" }, \ - { 0xfe47, "rsa3072_sphincsharaka128fsimple" }, \ - { 0xfe5e, "sphincssha256128frobust" }, \ - { 0xfe5f, "p256_sphincssha256128frobust" }, \ - { 0xfe60, "rsa3072_sphincssha256128frobust" }, \ - { 0xfe67, "sphincssha256128ssimple" }, \ - { 0xfe68, "p256_sphincssha256128ssimple" }, \ - { 0xfe69, "rsa3072_sphincssha256128ssimple" }, \ - { 0xfe7d, "sphincsshake256128fsimple" }, \ - { 0xfe7e, "p256_sphincsshake256128fsimple" }, \ - { 0xfe7f, "rsa3072_sphincsshake256128fsimple" }, \ + { 0xfeb3, "sphincssha2128fsimple" }, \ + { 0xfeb4, "p256_sphincssha2128fsimple" }, \ + { 0xfeb5, "rsa3072_sphincssha2128fsimple" }, \ + { 0xfeb6, "sphincssha2128ssimple" }, \ + { 0xfeb7, "p256_sphincssha2128ssimple" }, \ + { 0xfeb8, "rsa3072_sphincssha2128ssimple" }, \ + { 0xfeb9, "sphincssha2192fsimple" }, \ + { 0xfeba, "p384_sphincssha2192fsimple" }, \ + { 0xfec2, "sphincsshake128fsimple" }, \ + { 0xfec3, "p256_sphincsshake128fsimple" }, \ + { 0xfec4, "rsa3072_sphincsshake128fsimple" }, \ ///// OQS_TEMPLATE_FRAGMENT_ASSIGN_SIG_CPS_END ///// OQS_TEMPLATE_FRAGMENT_ASSIGN_SIG_OIDS_START @@ -85,33 +68,22 @@ oid_add_from_string("p384_dilithium3", "1.3.9999.2.7.3"); \ oid_add_from_string("dilithium5", "1.3.6.1.4.1.2.267.7.8.7"); \ oid_add_from_string("p521_dilithium5", "1.3.9999.2.7.4"); \ - oid_add_from_string("dilithium2_aes", "1.3.6.1.4.1.2.267.11.4.4"); \ - oid_add_from_string("p256_dilithium2_aes", "1.3.9999.2.11.1"); \ - oid_add_from_string("rsa3072_dilithium2_aes", "1.3.9999.2.11.2"); \ - oid_add_from_string("dilithium3_aes", "1.3.6.1.4.1.2.267.11.6.5"); \ - oid_add_from_string("p384_dilithium3_aes", "1.3.9999.2.11.3"); \ - oid_add_from_string("dilithium5_aes", "1.3.6.1.4.1.2.267.11.8.7"); \ - oid_add_from_string("p521_dilithium5_aes", "1.3.9999.2.11.4"); \ oid_add_from_string("falcon512", "1.3.9999.3.6"); \ oid_add_from_string("p256_falcon512", "1.3.9999.3.7"); \ oid_add_from_string("rsa3072_falcon512", "1.3.9999.3.8"); \ oid_add_from_string("falcon1024", "1.3.9999.3.9"); \ oid_add_from_string("p521_falcon1024", "1.3.9999.3.10"); \ - oid_add_from_string("sphincsharaka128frobust", "1.3.9999.6.1.1"); \ - oid_add_from_string("p256_sphincsharaka128frobust", "1.3.9999.6.1.2"); \ - oid_add_from_string("rsa3072_sphincsharaka128frobust", "1.3.9999.6.1.3"); \ - oid_add_from_string("sphincsharaka128fsimple", "1.3.9999.6.1.4"); \ - oid_add_from_string("p256_sphincsharaka128fsimple", "1.3.9999.6.1.5"); \ - oid_add_from_string("rsa3072_sphincsharaka128fsimple", "1.3.9999.6.1.6"); \ - oid_add_from_string("sphincssha256128frobust", "1.3.9999.6.4.1"); \ - oid_add_from_string("p256_sphincssha256128frobust", "1.3.9999.6.4.2"); \ - oid_add_from_string("rsa3072_sphincssha256128frobust", "1.3.9999.6.4.3"); \ - oid_add_from_string("sphincssha256128ssimple", "1.3.9999.6.4.10"); \ - oid_add_from_string("p256_sphincssha256128ssimple", "1.3.9999.6.4.11"); \ - oid_add_from_string("rsa3072_sphincssha256128ssimple", "1.3.9999.6.4.12"); \ - oid_add_from_string("sphincsshake256128fsimple", "1.3.9999.6.7.4"); \ - oid_add_from_string("p256_sphincsshake256128fsimple", "1.3.9999.6.7.5"); \ - oid_add_from_string("rsa3072_sphincsshake256128fsimple", "1.3.9999.6.7.6"); \ + oid_add_from_string("sphincssha2128fsimple", "1.3.9999.6.4.13"); \ + oid_add_from_string("p256_sphincssha2128fsimple", "1.3.9999.6.4.14"); \ + oid_add_from_string("rsa3072_sphincssha2128fsimple", "1.3.9999.6.4.15"); \ + oid_add_from_string("sphincssha2128ssimple", "1.3.9999.6.4.16"); \ + oid_add_from_string("p256_sphincssha2128ssimple", "1.3.9999.6.4.17"); \ + oid_add_from_string("rsa3072_sphincssha2128ssimple", "1.3.9999.6.4.18"); \ + oid_add_from_string("sphincssha2192fsimple", "1.3.9999.6.5.10"); \ + oid_add_from_string("p384_sphincssha2192fsimple", "1.3.9999.6.5.11"); \ + oid_add_from_string("sphincsshake128fsimple", "1.3.9999.6.7.13"); \ + oid_add_from_string("p256_sphincsshake128fsimple", "1.3.9999.6.7.14"); \ + oid_add_from_string("rsa3072_sphincsshake128fsimple", "1.3.9999.6.7.15"); \ ///// OQS_TEMPLATE_FRAGMENT_ASSIGN_SIG_OIDS_END diff --git a/ssl/ssl_cert_table.h b/ssl/ssl_cert_table.h index 29bfed038e6b3..016f0e92448ab 100644 --- a/ssl/ssl_cert_table.h +++ b/ssl/ssl_cert_table.h @@ -30,32 +30,21 @@ static const SSL_CERT_LOOKUP ssl_cert_info [] = { {EVP_PKEY_P384_DILITHIUM3, SSL_aP384_DILITHIUM3}, /* SSL_PKEY_P384_DILITHIUM3 */ {EVP_PKEY_DILITHIUM5, SSL_aDILITHIUM5}, /* SSL_PKEY_DILITHIUM5 */ {EVP_PKEY_P521_DILITHIUM5, SSL_aP521_DILITHIUM5}, /* SSL_PKEY_P521_DILITHIUM5 */ - {EVP_PKEY_DILITHIUM2_AES, SSL_aDILITHIUM2_AES}, /* SSL_PKEY_DILITHIUM2_AES */ - {EVP_PKEY_P256_DILITHIUM2_AES, SSL_aP256_DILITHIUM2_AES}, /* SSL_PKEY_P256_DILITHIUM2_AES */ - {EVP_PKEY_RSA3072_DILITHIUM2_AES, SSL_aRSA3072_DILITHIUM2_AES}, /* SSL_PKEY_RSA3072_DILITHIUM2_AES */ - {EVP_PKEY_DILITHIUM3_AES, SSL_aDILITHIUM3_AES}, /* SSL_PKEY_DILITHIUM3_AES */ - {EVP_PKEY_P384_DILITHIUM3_AES, SSL_aP384_DILITHIUM3_AES}, /* SSL_PKEY_P384_DILITHIUM3_AES */ - {EVP_PKEY_DILITHIUM5_AES, SSL_aDILITHIUM5_AES}, /* SSL_PKEY_DILITHIUM5_AES */ - {EVP_PKEY_P521_DILITHIUM5_AES, SSL_aP521_DILITHIUM5_AES}, /* SSL_PKEY_P521_DILITHIUM5_AES */ {EVP_PKEY_FALCON512, SSL_aFALCON512}, /* SSL_PKEY_FALCON512 */ {EVP_PKEY_P256_FALCON512, SSL_aP256_FALCON512}, /* SSL_PKEY_P256_FALCON512 */ {EVP_PKEY_RSA3072_FALCON512, SSL_aRSA3072_FALCON512}, /* SSL_PKEY_RSA3072_FALCON512 */ {EVP_PKEY_FALCON1024, SSL_aFALCON1024}, /* SSL_PKEY_FALCON1024 */ {EVP_PKEY_P521_FALCON1024, SSL_aP521_FALCON1024}, /* SSL_PKEY_P521_FALCON1024 */ - {EVP_PKEY_SPHINCSHARAKA128FROBUST, SSL_aSPHINCSHARAKA128FROBUST}, /* SSL_PKEY_SPHINCSHARAKA128FROBUST */ - {EVP_PKEY_P256_SPHINCSHARAKA128FROBUST, SSL_aP256_SPHINCSHARAKA128FROBUST}, /* SSL_PKEY_P256_SPHINCSHARAKA128FROBUST */ - {EVP_PKEY_RSA3072_SPHINCSHARAKA128FROBUST, SSL_aRSA3072_SPHINCSHARAKA128FROBUST}, /* SSL_PKEY_RSA3072_SPHINCSHARAKA128FROBUST */ - {EVP_PKEY_SPHINCSHARAKA128FSIMPLE, SSL_aSPHINCSHARAKA128FSIMPLE}, /* SSL_PKEY_SPHINCSHARAKA128FSIMPLE */ - {EVP_PKEY_P256_SPHINCSHARAKA128FSIMPLE, SSL_aP256_SPHINCSHARAKA128FSIMPLE}, /* SSL_PKEY_P256_SPHINCSHARAKA128FSIMPLE */ - {EVP_PKEY_RSA3072_SPHINCSHARAKA128FSIMPLE, SSL_aRSA3072_SPHINCSHARAKA128FSIMPLE}, /* SSL_PKEY_RSA3072_SPHINCSHARAKA128FSIMPLE */ - {EVP_PKEY_SPHINCSSHA256128FROBUST, SSL_aSPHINCSSHA256128FROBUST}, /* SSL_PKEY_SPHINCSSHA256128FROBUST */ - {EVP_PKEY_P256_SPHINCSSHA256128FROBUST, SSL_aP256_SPHINCSSHA256128FROBUST}, /* SSL_PKEY_P256_SPHINCSSHA256128FROBUST */ - {EVP_PKEY_RSA3072_SPHINCSSHA256128FROBUST, SSL_aRSA3072_SPHINCSSHA256128FROBUST}, /* SSL_PKEY_RSA3072_SPHINCSSHA256128FROBUST */ - {EVP_PKEY_SPHINCSSHA256128SSIMPLE, SSL_aSPHINCSSHA256128SSIMPLE}, /* SSL_PKEY_SPHINCSSHA256128SSIMPLE */ - {EVP_PKEY_P256_SPHINCSSHA256128SSIMPLE, SSL_aP256_SPHINCSSHA256128SSIMPLE}, /* SSL_PKEY_P256_SPHINCSSHA256128SSIMPLE */ - {EVP_PKEY_RSA3072_SPHINCSSHA256128SSIMPLE, SSL_aRSA3072_SPHINCSSHA256128SSIMPLE}, /* SSL_PKEY_RSA3072_SPHINCSSHA256128SSIMPLE */ - {EVP_PKEY_SPHINCSSHAKE256128FSIMPLE, SSL_aSPHINCSSHAKE256128FSIMPLE}, /* SSL_PKEY_SPHINCSSHAKE256128FSIMPLE */ - {EVP_PKEY_P256_SPHINCSSHAKE256128FSIMPLE, SSL_aP256_SPHINCSSHAKE256128FSIMPLE}, /* SSL_PKEY_P256_SPHINCSSHAKE256128FSIMPLE */ - {EVP_PKEY_RSA3072_SPHINCSSHAKE256128FSIMPLE, SSL_aRSA3072_SPHINCSSHAKE256128FSIMPLE}, /* SSL_PKEY_RSA3072_SPHINCSSHAKE256128FSIMPLE */ + {EVP_PKEY_SPHINCSSHA2128FSIMPLE, SSL_aSPHINCSSHA2128FSIMPLE}, /* SSL_PKEY_SPHINCSSHA2128FSIMPLE */ + {EVP_PKEY_P256_SPHINCSSHA2128FSIMPLE, SSL_aP256_SPHINCSSHA2128FSIMPLE}, /* SSL_PKEY_P256_SPHINCSSHA2128FSIMPLE */ + {EVP_PKEY_RSA3072_SPHINCSSHA2128FSIMPLE, SSL_aRSA3072_SPHINCSSHA2128FSIMPLE}, /* SSL_PKEY_RSA3072_SPHINCSSHA2128FSIMPLE */ + {EVP_PKEY_SPHINCSSHA2128SSIMPLE, SSL_aSPHINCSSHA2128SSIMPLE}, /* SSL_PKEY_SPHINCSSHA2128SSIMPLE */ + {EVP_PKEY_P256_SPHINCSSHA2128SSIMPLE, SSL_aP256_SPHINCSSHA2128SSIMPLE}, /* SSL_PKEY_P256_SPHINCSSHA2128SSIMPLE */ + {EVP_PKEY_RSA3072_SPHINCSSHA2128SSIMPLE, SSL_aRSA3072_SPHINCSSHA2128SSIMPLE}, /* SSL_PKEY_RSA3072_SPHINCSSHA2128SSIMPLE */ + {EVP_PKEY_SPHINCSSHA2192FSIMPLE, SSL_aSPHINCSSHA2192FSIMPLE}, /* SSL_PKEY_SPHINCSSHA2192FSIMPLE */ + {EVP_PKEY_P384_SPHINCSSHA2192FSIMPLE, SSL_aP384_SPHINCSSHA2192FSIMPLE}, /* SSL_PKEY_P384_SPHINCSSHA2192FSIMPLE */ + {EVP_PKEY_SPHINCSSHAKE128FSIMPLE, SSL_aSPHINCSSHAKE128FSIMPLE}, /* SSL_PKEY_SPHINCSSHAKE128FSIMPLE */ + {EVP_PKEY_P256_SPHINCSSHAKE128FSIMPLE, SSL_aP256_SPHINCSSHAKE128FSIMPLE}, /* SSL_PKEY_P256_SPHINCSSHAKE128FSIMPLE */ + {EVP_PKEY_RSA3072_SPHINCSSHAKE128FSIMPLE, SSL_aRSA3072_SPHINCSSHAKE128FSIMPLE}, /* SSL_PKEY_RSA3072_SPHINCSSHAKE128FSIMPLE */ ///// OQS_TEMPLATE_FRAGMENT_GIVE_SSL_CERT_INFO_END }; diff --git a/ssl/ssl_local.h b/ssl/ssl_local.h index 4cbcee55e933f..7c991e875160f 100644 --- a/ssl/ssl_local.h +++ b/ssl/ssl_local.h @@ -217,60 +217,38 @@ #define SSL_aDILITHIUM5 0x00002000U /* ECDSA p521 - Dilithium5 auth */ #define SSL_aP521_DILITHIUM5 0x00004000U -/* Dilithium2_AES auth */ -#define SSL_aDILITHIUM2_AES 0x00008000U -/* ECDSA p256 - Dilithium2_AES auth */ -#define SSL_aP256_DILITHIUM2_AES 0x00010000U -/* RSA3072 - Dilithium2_AES auth */ -#define SSL_aRSA3072_DILITHIUM2_AES 0x00020000U -/* Dilithium3_AES auth */ -#define SSL_aDILITHIUM3_AES 0x00040000U -/* ECDSA p384 - Dilithium3_AES auth */ -#define SSL_aP384_DILITHIUM3_AES 0x00080000U -/* Dilithium5_AES auth */ -#define SSL_aDILITHIUM5_AES 0x00100000U -/* ECDSA p521 - Dilithium5_AES auth */ -#define SSL_aP521_DILITHIUM5_AES 0x00200000U /* Falcon-512 auth */ -#define SSL_aFALCON512 0x00400000U +#define SSL_aFALCON512 0x00008000U /* ECDSA p256 - Falcon-512 auth */ -#define SSL_aP256_FALCON512 0x00800000U +#define SSL_aP256_FALCON512 0x00010000U /* RSA3072 - Falcon-512 auth */ -#define SSL_aRSA3072_FALCON512 0x01000000U +#define SSL_aRSA3072_FALCON512 0x00020000U /* Falcon-1024 auth */ -#define SSL_aFALCON1024 0x02000000U +#define SSL_aFALCON1024 0x00040000U /* ECDSA p521 - Falcon-1024 auth */ -#define SSL_aP521_FALCON1024 0x04000000U -/* SPHINCS+-Haraka-128f-robust auth */ -#define SSL_aSPHINCSHARAKA128FROBUST 0x08000000U -/* ECDSA p256 - SPHINCS+-Haraka-128f-robust auth */ -#define SSL_aP256_SPHINCSHARAKA128FROBUST 0x10000000U -/* RSA3072 - SPHINCS+-Haraka-128f-robust auth */ -#define SSL_aRSA3072_SPHINCSHARAKA128FROBUST 0x20000000U -/* SPHINCS+-Haraka-128f-simple auth */ -#define SSL_aSPHINCSHARAKA128FSIMPLE 0x40000000U -/* ECDSA p256 - SPHINCS+-Haraka-128f-simple auth */ -#define SSL_aP256_SPHINCSHARAKA128FSIMPLE 0x80000000U -/* RSA3072 - SPHINCS+-Haraka-128f-simple auth */ -#define SSL_aRSA3072_SPHINCSHARAKA128FSIMPLE 0x100000000U -/* SPHINCS+-SHA256-128f-robust auth */ -#define SSL_aSPHINCSSHA256128FROBUST 0x200000000U -/* ECDSA p256 - SPHINCS+-SHA256-128f-robust auth */ -#define SSL_aP256_SPHINCSSHA256128FROBUST 0x400000000U -/* RSA3072 - SPHINCS+-SHA256-128f-robust auth */ -#define SSL_aRSA3072_SPHINCSSHA256128FROBUST 0x800000000U -/* SPHINCS+-SHA256-128s-simple auth */ -#define SSL_aSPHINCSSHA256128SSIMPLE 0x1000000000U -/* ECDSA p256 - SPHINCS+-SHA256-128s-simple auth */ -#define SSL_aP256_SPHINCSSHA256128SSIMPLE 0x2000000000U -/* RSA3072 - SPHINCS+-SHA256-128s-simple auth */ -#define SSL_aRSA3072_SPHINCSSHA256128SSIMPLE 0x4000000000U -/* SPHINCS+-SHAKE256-128f-simple auth */ -#define SSL_aSPHINCSSHAKE256128FSIMPLE 0x8000000000U -/* ECDSA p256 - SPHINCS+-SHAKE256-128f-simple auth */ -#define SSL_aP256_SPHINCSSHAKE256128FSIMPLE 0x10000000000U -/* RSA3072 - SPHINCS+-SHAKE256-128f-simple auth */ -#define SSL_aRSA3072_SPHINCSSHAKE256128FSIMPLE 0x20000000000U +#define SSL_aP521_FALCON1024 0x00080000U +/* SPHINCS+-SHA2-128f-simple auth */ +#define SSL_aSPHINCSSHA2128FSIMPLE 0x00100000U +/* ECDSA p256 - SPHINCS+-SHA2-128f-simple auth */ +#define SSL_aP256_SPHINCSSHA2128FSIMPLE 0x00200000U +/* RSA3072 - SPHINCS+-SHA2-128f-simple auth */ +#define SSL_aRSA3072_SPHINCSSHA2128FSIMPLE 0x00400000U +/* SPHINCS+-SHA2-128s-simple auth */ +#define SSL_aSPHINCSSHA2128SSIMPLE 0x00800000U +/* ECDSA p256 - SPHINCS+-SHA2-128s-simple auth */ +#define SSL_aP256_SPHINCSSHA2128SSIMPLE 0x01000000U +/* RSA3072 - SPHINCS+-SHA2-128s-simple auth */ +#define SSL_aRSA3072_SPHINCSSHA2128SSIMPLE 0x02000000U +/* SPHINCS+-SHA2-192f-simple auth */ +#define SSL_aSPHINCSSHA2192FSIMPLE 0x04000000U +/* ECDSA p384 - SPHINCS+-SHA2-192f-simple auth */ +#define SSL_aP384_SPHINCSSHA2192FSIMPLE 0x08000000U +/* SPHINCS+-SHAKE-128f-simple auth */ +#define SSL_aSPHINCSSHAKE128FSIMPLE 0x10000000U +/* ECDSA p256 - SPHINCS+-SHAKE-128f-simple auth */ +#define SSL_aP256_SPHINCSSHAKE128FSIMPLE 0x20000000U +/* RSA3072 - SPHINCS+-SHAKE-128f-simple auth */ +#define SSL_aRSA3072_SPHINCSSHAKE128FSIMPLE 0x40000000U ///// OQS_TEMPLATE_FRAGMENT_DEFINE_SIG_MASKS_END /* Any appropriate signature auth (for TLS 1.3 ciphersuites) */ # define SSL_aANY 0x00000000U @@ -462,35 +440,24 @@ #define SSL_PKEY_P384_DILITHIUM3 13 #define SSL_PKEY_DILITHIUM5 14 #define SSL_PKEY_P521_DILITHIUM5 15 -#define SSL_PKEY_DILITHIUM2_AES 16 -#define SSL_PKEY_P256_DILITHIUM2_AES 17 -#define SSL_PKEY_RSA3072_DILITHIUM2_AES 18 -#define SSL_PKEY_DILITHIUM3_AES 19 -#define SSL_PKEY_P384_DILITHIUM3_AES 20 -#define SSL_PKEY_DILITHIUM5_AES 21 -#define SSL_PKEY_P521_DILITHIUM5_AES 22 -#define SSL_PKEY_FALCON512 23 -#define SSL_PKEY_P256_FALCON512 24 -#define SSL_PKEY_RSA3072_FALCON512 25 -#define SSL_PKEY_FALCON1024 26 -#define SSL_PKEY_P521_FALCON1024 27 -#define SSL_PKEY_SPHINCSHARAKA128FROBUST 28 -#define SSL_PKEY_P256_SPHINCSHARAKA128FROBUST 29 -#define SSL_PKEY_RSA3072_SPHINCSHARAKA128FROBUST 30 -#define SSL_PKEY_SPHINCSHARAKA128FSIMPLE 31 -#define SSL_PKEY_P256_SPHINCSHARAKA128FSIMPLE 32 -#define SSL_PKEY_RSA3072_SPHINCSHARAKA128FSIMPLE 33 -#define SSL_PKEY_SPHINCSSHA256128FROBUST 34 -#define SSL_PKEY_P256_SPHINCSSHA256128FROBUST 35 -#define SSL_PKEY_RSA3072_SPHINCSSHA256128FROBUST 36 -#define SSL_PKEY_SPHINCSSHA256128SSIMPLE 37 -#define SSL_PKEY_P256_SPHINCSSHA256128SSIMPLE 38 -#define SSL_PKEY_RSA3072_SPHINCSSHA256128SSIMPLE 39 -#define SSL_PKEY_SPHINCSSHAKE256128FSIMPLE 40 -#define SSL_PKEY_P256_SPHINCSSHAKE256128FSIMPLE 41 -#define SSL_PKEY_RSA3072_SPHINCSSHAKE256128FSIMPLE 42 - -#define SSL_PKEY_NUM 43 +#define SSL_PKEY_FALCON512 16 +#define SSL_PKEY_P256_FALCON512 17 +#define SSL_PKEY_RSA3072_FALCON512 18 +#define SSL_PKEY_FALCON1024 19 +#define SSL_PKEY_P521_FALCON1024 20 +#define SSL_PKEY_SPHINCSSHA2128FSIMPLE 21 +#define SSL_PKEY_P256_SPHINCSSHA2128FSIMPLE 22 +#define SSL_PKEY_RSA3072_SPHINCSSHA2128FSIMPLE 23 +#define SSL_PKEY_SPHINCSSHA2128SSIMPLE 24 +#define SSL_PKEY_P256_SPHINCSSHA2128SSIMPLE 25 +#define SSL_PKEY_RSA3072_SPHINCSSHA2128SSIMPLE 26 +#define SSL_PKEY_SPHINCSSHA2192FSIMPLE 27 +#define SSL_PKEY_P384_SPHINCSSHA2192FSIMPLE 28 +#define SSL_PKEY_SPHINCSSHAKE128FSIMPLE 29 +#define SSL_PKEY_P256_SPHINCSSHAKE128FSIMPLE 30 +#define SSL_PKEY_RSA3072_SPHINCSSHAKE128FSIMPLE 31 + +#define SSL_PKEY_NUM 32 ///// OQS_TEMPLATE_FRAGMENT_DEFINE_SSL_PKEYS_END /*- @@ -522,14 +489,11 @@ (nid == NID_bikel1 ? 0x0241 : \ (nid == NID_bikel3 ? 0x0242 : \ (nid == NID_bikel5 ? 0x0243 : \ - (nid == NID_kyber90s512 ? 0x023E : \ - (nid == NID_kyber90s768 ? 0x023F : \ - (nid == NID_kyber90s1024 ? 0x0240 : \ (nid == NID_hqc128 ? 0x022C : \ (nid == NID_hqc192 ? 0x022D : \ (nid == NID_hqc256 ? 0x022E : \ 0 \ - )))))))))))))))))) + ))))))))))))))) ///// OQS_TEMPLATE_FRAGMENT_OQS_KEM_CURVEID_END ///// OQS_TEMPLATE_FRAGMENT_OQS_KEM_HYBRID_CURVEID_START @@ -546,14 +510,11 @@ (nid == NID_p256_bikel1 ? 0x2F41 : \ (nid == NID_p384_bikel3 ? 0x2F42 : \ (nid == NID_p521_bikel5 ? 0x2F43 : \ - (nid == NID_p256_kyber90s512 ? 0x2F3E : \ - (nid == NID_p384_kyber90s768 ? 0x2F3F : \ - (nid == NID_p521_kyber90s1024 ? 0x2F40 : \ (nid == NID_p256_hqc128 ? 0x2F2C : \ (nid == NID_p384_hqc192 ? 0x2F2D : \ (nid == NID_p521_hqc256 ? 0x2F2E : \ 0 \ - )))))))))))))))))) + ))))))))))))))) ///// OQS_TEMPLATE_FRAGMENT_OQS_KEM_HYBRID_CURVEID_END /* Returns the non-hybrid OQS KEM NID for a PQ or hybrid curve ID */ @@ -571,14 +532,11 @@ (curveID == 0x0241 || curveID == 0x2F41 ? NID_bikel1 : \ (curveID == 0x0242 || curveID == 0x2F42 ? NID_bikel3 : \ (curveID == 0x0243 || curveID == 0x2F43 ? NID_bikel5 : \ - (curveID == 0x023E || curveID == 0x2F3E ? NID_kyber90s512 : \ - (curveID == 0x023F || curveID == 0x2F3F ? NID_kyber90s768 : \ - (curveID == 0x0240 || curveID == 0x2F40 ? NID_kyber90s1024 : \ (curveID == 0x022C || curveID == 0x2F2C ? NID_hqc128 : \ (curveID == 0x022D || curveID == 0x2F2D ? NID_hqc192 : \ (curveID == 0x022E || curveID == 0x2F2E ? NID_hqc256 : \ 0 \ - )))))))))))))))))) + ))))))))))))))) ///// OQS_TEMPLATE_FRAGMENT_OQS_KEM_NID_END /* Returns the hybrid OQS KEM NID for a hybrid curve ID */ @@ -596,14 +554,11 @@ (curveID == 0x2F41 ? NID_p256_bikel1 : \ (curveID == 0x2F42 ? NID_p384_bikel3 : \ (curveID == 0x2F43 ? NID_p521_bikel5 : \ - (curveID == 0x2F3E ? NID_p256_kyber90s512 : \ - (curveID == 0x2F3F ? NID_p384_kyber90s768 : \ - (curveID == 0x2F40 ? NID_p521_kyber90s1024 : \ (curveID == 0x2F2C ? NID_p256_hqc128 : \ (curveID == 0x2F2D ? NID_p384_hqc192 : \ (curveID == 0x2F2E ? NID_p521_hqc256 : \ 0 \ - )))))))))))))))))) + ))))))))))))))) ///// OQS_TEMPLATE_FRAGMENT_OQS_HYBRID_KEM_NID_END /* Returns true if the curve ID is for an OQS KEM */ @@ -629,14 +584,11 @@ (nid == NID_bikel1 ? OQS_KEM_alg_bike_l1 : \ (nid == NID_bikel3 ? OQS_KEM_alg_bike_l3 : \ (nid == NID_bikel5 ? OQS_KEM_alg_bike_l5 : \ - (nid == NID_kyber90s512 ? OQS_KEM_alg_kyber_512_90s : \ - (nid == NID_kyber90s768 ? OQS_KEM_alg_kyber_768_90s : \ - (nid == NID_kyber90s1024 ? OQS_KEM_alg_kyber_1024_90s : \ (nid == NID_hqc128 ? OQS_KEM_alg_hqc_128 : \ (nid == NID_hqc192 ? OQS_KEM_alg_hqc_192 : \ (nid == NID_hqc256 ? OQS_KEM_alg_hqc_256 : \ 0 \ - )))))))))))))))))) + ))))))))))))))) ///// OQS_TEMPLATE_FRAGMENT_OQS_ALG_NAME_END /* Returns the classic curve ID for a given hybrid curve */ @@ -655,14 +607,11 @@ (cid == 0x2F41 ?23: \ (cid == 0x2F42 ?24: \ (cid == 0x2F43 ?25: \ - (cid == 0x2F3E ?23: \ - (cid == 0x2F3F ?24: \ - (cid == 0x2F40 ?25: \ (cid == 0x2F2C ?23: \ (cid == 0x2F2D ?24: \ (cid == 0x2F2E ?25: \ 23 \ - ))))))))))))))))))) + )))))))))))))))) ///// OQS_TEMPLATE_FRAGMENT_OQS_MAP_HYBRID_END /* Returns the classical nid for an hybrid alg */ @@ -2334,33 +2283,22 @@ typedef enum downgrade_en { #define TLSEXT_SIGALG_p384_dilithium3 0xfea4 #define TLSEXT_SIGALG_dilithium5 0xfea5 #define TLSEXT_SIGALG_p521_dilithium5 0xfea6 -#define TLSEXT_SIGALG_dilithium2_aes 0xfea7 -#define TLSEXT_SIGALG_p256_dilithium2_aes 0xfea8 -#define TLSEXT_SIGALG_rsa3072_dilithium2_aes 0xfea9 -#define TLSEXT_SIGALG_dilithium3_aes 0xfeaa -#define TLSEXT_SIGALG_p384_dilithium3_aes 0xfeab -#define TLSEXT_SIGALG_dilithium5_aes 0xfeac -#define TLSEXT_SIGALG_p521_dilithium5_aes 0xfead #define TLSEXT_SIGALG_falcon512 0xfeae #define TLSEXT_SIGALG_p256_falcon512 0xfeaf #define TLSEXT_SIGALG_rsa3072_falcon512 0xfeb0 #define TLSEXT_SIGALG_falcon1024 0xfeb1 #define TLSEXT_SIGALG_p521_falcon1024 0xfeb2 -#define TLSEXT_SIGALG_sphincsharaka128frobust 0xfe42 -#define TLSEXT_SIGALG_p256_sphincsharaka128frobust 0xfe43 -#define TLSEXT_SIGALG_rsa3072_sphincsharaka128frobust 0xfe44 -#define TLSEXT_SIGALG_sphincsharaka128fsimple 0xfe45 -#define TLSEXT_SIGALG_p256_sphincsharaka128fsimple 0xfe46 -#define TLSEXT_SIGALG_rsa3072_sphincsharaka128fsimple 0xfe47 -#define TLSEXT_SIGALG_sphincssha256128frobust 0xfe5e -#define TLSEXT_SIGALG_p256_sphincssha256128frobust 0xfe5f -#define TLSEXT_SIGALG_rsa3072_sphincssha256128frobust 0xfe60 -#define TLSEXT_SIGALG_sphincssha256128ssimple 0xfe67 -#define TLSEXT_SIGALG_p256_sphincssha256128ssimple 0xfe68 -#define TLSEXT_SIGALG_rsa3072_sphincssha256128ssimple 0xfe69 -#define TLSEXT_SIGALG_sphincsshake256128fsimple 0xfe7d -#define TLSEXT_SIGALG_p256_sphincsshake256128fsimple 0xfe7e -#define TLSEXT_SIGALG_rsa3072_sphincsshake256128fsimple 0xfe7f +#define TLSEXT_SIGALG_sphincssha2128fsimple 0xfeb3 +#define TLSEXT_SIGALG_p256_sphincssha2128fsimple 0xfeb4 +#define TLSEXT_SIGALG_rsa3072_sphincssha2128fsimple 0xfeb5 +#define TLSEXT_SIGALG_sphincssha2128ssimple 0xfeb6 +#define TLSEXT_SIGALG_p256_sphincssha2128ssimple 0xfeb7 +#define TLSEXT_SIGALG_rsa3072_sphincssha2128ssimple 0xfeb8 +#define TLSEXT_SIGALG_sphincssha2192fsimple 0xfeb9 +#define TLSEXT_SIGALG_p384_sphincssha2192fsimple 0xfeba +#define TLSEXT_SIGALG_sphincsshake128fsimple 0xfec2 +#define TLSEXT_SIGALG_p256_sphincsshake128fsimple 0xfec3 +#define TLSEXT_SIGALG_rsa3072_sphincsshake128fsimple 0xfec4 ///// OQS_TEMPLATE_FRAGMENT_DEFINE_SIG_CODE_POINTS_END /* Known PSK key exchange modes */ diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c index e9abb929ce4c0..1aa151b9a9ce8 100644 --- a/ssl/t1_lib.c +++ b/ssl/t1_lib.c @@ -199,9 +199,6 @@ static const TLS_GROUP_INFO oqs_nid_list[] = { {NID_bikel1, 128, TLS_CURVE_CUSTOM}, /* bikel1 (0x0241) */ {NID_bikel3, 192, TLS_CURVE_CUSTOM}, /* bikel3 (0x0242) */ {NID_bikel5, 256, TLS_CURVE_CUSTOM}, /* bikel5 (0x0243) */ - {NID_kyber90s512, 128, TLS_CURVE_CUSTOM}, /* kyber90s512 (0x023E) */ - {NID_kyber90s768, 192, TLS_CURVE_CUSTOM}, /* kyber90s768 (0x023F) */ - {NID_kyber90s1024, 256, TLS_CURVE_CUSTOM}, /* kyber90s1024 (0x0240) */ {NID_hqc128, 128, TLS_CURVE_CUSTOM}, /* hqc128 (0x022C) */ {NID_hqc192, 192, TLS_CURVE_CUSTOM}, /* hqc192 (0x022D) */ {NID_hqc256, 256, TLS_CURVE_CUSTOM}, /* hqc256 (0x022E) */ @@ -222,9 +219,6 @@ static const TLS_GROUP_INFO oqs_hybrid_nid_list[] = { {NID_p256_bikel1, 128, TLS_CURVE_CUSTOM}, /* p256/384/521 + bikel1 hybrid (0x0241) */ {NID_p384_bikel3, 192, TLS_CURVE_CUSTOM}, /* p256/384/521 + bikel3 hybrid (0x0242) */ {NID_p521_bikel5, 256, TLS_CURVE_CUSTOM}, /* p256/384/521 + bikel5 hybrid (0x0243) */ - {NID_p256_kyber90s512, 128, TLS_CURVE_CUSTOM}, /* p256/384/521 + kyber90s512 hybrid (0x023E) */ - {NID_p384_kyber90s768, 192, TLS_CURVE_CUSTOM}, /* p256/384/521 + kyber90s768 hybrid (0x023F) */ - {NID_p521_kyber90s1024, 256, TLS_CURVE_CUSTOM}, /* p256/384/521 + kyber90s1024 hybrid (0x0240) */ {NID_p256_hqc128, 128, TLS_CURVE_CUSTOM}, /* p256/384/521 + hqc128 hybrid (0x022C) */ {NID_p384_hqc192, 192, TLS_CURVE_CUSTOM}, /* p256/384/521 + hqc192 hybrid (0x022D) */ {NID_p521_hqc256, 256, TLS_CURVE_CUSTOM}, /* p256/384/521 + hqc256 hybrid (0x022E) */ @@ -249,7 +243,6 @@ static const uint16_t eccurves_default[] = { 0x2F01, /* OQS frodo640shake hybrid */ 0x2F3A, /* OQS kyber512 hybrid */ 0x2F41, /* OQS bikel1 hybrid */ - 0x2F3E, /* OQS kyber90s512 hybrid */ 0x2F2C, /* OQS hqc128 hybrid */ ///// OQS_TEMPLATE_FRAGMENT_ECCURVES_DEFAULT_HYBRID_END }; @@ -293,12 +286,6 @@ static const uint16_t oqs_all_tls13_server_groups[] = { 0x2F42, /* OQS bikel3 hybrid */ 0x0243, /* bikel5 */ 0x2F43, /* OQS bikel5 hybrid */ - 0x023E, /* kyber90s512 */ - 0x2F3E, /* OQS kyber90s512 hybrid */ - 0x023F, /* kyber90s768 */ - 0x2F3F, /* OQS kyber90s768 hybrid */ - 0x0240, /* kyber90s1024 */ - 0x2F40, /* OQS kyber90s1024 hybrid */ 0x022C, /* hqc128 */ 0x2F2C, /* OQS hqc128 hybrid */ 0x022D, /* hqc192 */ @@ -859,33 +846,22 @@ static const uint16_t tls12_sigalgs[] = { TLSEXT_SIGALG_p384_dilithium3, TLSEXT_SIGALG_dilithium5, TLSEXT_SIGALG_p521_dilithium5, - TLSEXT_SIGALG_dilithium2_aes, - TLSEXT_SIGALG_p256_dilithium2_aes, - TLSEXT_SIGALG_rsa3072_dilithium2_aes, - TLSEXT_SIGALG_dilithium3_aes, - TLSEXT_SIGALG_p384_dilithium3_aes, - TLSEXT_SIGALG_dilithium5_aes, - TLSEXT_SIGALG_p521_dilithium5_aes, TLSEXT_SIGALG_falcon512, TLSEXT_SIGALG_p256_falcon512, TLSEXT_SIGALG_rsa3072_falcon512, TLSEXT_SIGALG_falcon1024, TLSEXT_SIGALG_p521_falcon1024, - TLSEXT_SIGALG_sphincsharaka128frobust, - TLSEXT_SIGALG_p256_sphincsharaka128frobust, - TLSEXT_SIGALG_rsa3072_sphincsharaka128frobust, - TLSEXT_SIGALG_sphincsharaka128fsimple, - TLSEXT_SIGALG_p256_sphincsharaka128fsimple, - TLSEXT_SIGALG_rsa3072_sphincsharaka128fsimple, - TLSEXT_SIGALG_sphincssha256128frobust, - TLSEXT_SIGALG_p256_sphincssha256128frobust, - TLSEXT_SIGALG_rsa3072_sphincssha256128frobust, - TLSEXT_SIGALG_sphincssha256128ssimple, - TLSEXT_SIGALG_p256_sphincssha256128ssimple, - TLSEXT_SIGALG_rsa3072_sphincssha256128ssimple, - TLSEXT_SIGALG_sphincsshake256128fsimple, - TLSEXT_SIGALG_p256_sphincsshake256128fsimple, - TLSEXT_SIGALG_rsa3072_sphincsshake256128fsimple, + TLSEXT_SIGALG_sphincssha2128fsimple, + TLSEXT_SIGALG_p256_sphincssha2128fsimple, + TLSEXT_SIGALG_rsa3072_sphincssha2128fsimple, + TLSEXT_SIGALG_sphincssha2128ssimple, + TLSEXT_SIGALG_p256_sphincssha2128ssimple, + TLSEXT_SIGALG_rsa3072_sphincssha2128ssimple, + TLSEXT_SIGALG_sphincssha2192fsimple, + TLSEXT_SIGALG_p384_sphincssha2192fsimple, + TLSEXT_SIGALG_sphincsshake128fsimple, + TLSEXT_SIGALG_p256_sphincsshake128fsimple, + TLSEXT_SIGALG_rsa3072_sphincsshake128fsimple, ///// OQS_TEMPLATE_FRAGMENT_DEFINE_TLS12_SIGALGS_END TLSEXT_SIGALG_rsa_pss_pss_sha256, @@ -1037,27 +1013,6 @@ static const SIGALG_LOOKUP sigalg_lookup_tbl[] = { {"p521_dilithium5", TLSEXT_SIGALG_p521_dilithium5, NID_undef, -1, EVP_PKEY_P521_DILITHIUM5, SSL_PKEY_P521_DILITHIUM5, NID_undef, NID_undef}, - {"dilithium2_aes", TLSEXT_SIGALG_dilithium2_aes, - NID_undef, -1, EVP_PKEY_DILITHIUM2_AES, SSL_PKEY_DILITHIUM2_AES, - NID_undef, NID_undef}, - {"p256_dilithium2_aes", TLSEXT_SIGALG_p256_dilithium2_aes, - NID_undef, -1, EVP_PKEY_P256_DILITHIUM2_AES, SSL_PKEY_P256_DILITHIUM2_AES, - NID_undef, NID_undef}, - {"rsa3072_dilithium2_aes", TLSEXT_SIGALG_rsa3072_dilithium2_aes, - NID_undef, -1, EVP_PKEY_RSA3072_DILITHIUM2_AES, SSL_PKEY_RSA3072_DILITHIUM2_AES, - NID_undef, NID_undef}, - {"dilithium3_aes", TLSEXT_SIGALG_dilithium3_aes, - NID_undef, -1, EVP_PKEY_DILITHIUM3_AES, SSL_PKEY_DILITHIUM3_AES, - NID_undef, NID_undef}, - {"p384_dilithium3_aes", TLSEXT_SIGALG_p384_dilithium3_aes, - NID_undef, -1, EVP_PKEY_P384_DILITHIUM3_AES, SSL_PKEY_P384_DILITHIUM3_AES, - NID_undef, NID_undef}, - {"dilithium5_aes", TLSEXT_SIGALG_dilithium5_aes, - NID_undef, -1, EVP_PKEY_DILITHIUM5_AES, SSL_PKEY_DILITHIUM5_AES, - NID_undef, NID_undef}, - {"p521_dilithium5_aes", TLSEXT_SIGALG_p521_dilithium5_aes, - NID_undef, -1, EVP_PKEY_P521_DILITHIUM5_AES, SSL_PKEY_P521_DILITHIUM5_AES, - NID_undef, NID_undef}, {"falcon512", TLSEXT_SIGALG_falcon512, NID_undef, -1, EVP_PKEY_FALCON512, SSL_PKEY_FALCON512, NID_undef, NID_undef}, @@ -1073,50 +1028,38 @@ static const SIGALG_LOOKUP sigalg_lookup_tbl[] = { {"p521_falcon1024", TLSEXT_SIGALG_p521_falcon1024, NID_undef, -1, EVP_PKEY_P521_FALCON1024, SSL_PKEY_P521_FALCON1024, NID_undef, NID_undef}, - {"sphincsharaka128frobust", TLSEXT_SIGALG_sphincsharaka128frobust, - NID_undef, -1, EVP_PKEY_SPHINCSHARAKA128FROBUST, SSL_PKEY_SPHINCSHARAKA128FROBUST, + {"sphincssha2128fsimple", TLSEXT_SIGALG_sphincssha2128fsimple, + NID_undef, -1, EVP_PKEY_SPHINCSSHA2128FSIMPLE, SSL_PKEY_SPHINCSSHA2128FSIMPLE, NID_undef, NID_undef}, - {"p256_sphincsharaka128frobust", TLSEXT_SIGALG_p256_sphincsharaka128frobust, - NID_undef, -1, EVP_PKEY_P256_SPHINCSHARAKA128FROBUST, SSL_PKEY_P256_SPHINCSHARAKA128FROBUST, + {"p256_sphincssha2128fsimple", TLSEXT_SIGALG_p256_sphincssha2128fsimple, + NID_undef, -1, EVP_PKEY_P256_SPHINCSSHA2128FSIMPLE, SSL_PKEY_P256_SPHINCSSHA2128FSIMPLE, NID_undef, NID_undef}, - {"rsa3072_sphincsharaka128frobust", TLSEXT_SIGALG_rsa3072_sphincsharaka128frobust, - NID_undef, -1, EVP_PKEY_RSA3072_SPHINCSHARAKA128FROBUST, SSL_PKEY_RSA3072_SPHINCSHARAKA128FROBUST, + {"rsa3072_sphincssha2128fsimple", TLSEXT_SIGALG_rsa3072_sphincssha2128fsimple, + NID_undef, -1, EVP_PKEY_RSA3072_SPHINCSSHA2128FSIMPLE, SSL_PKEY_RSA3072_SPHINCSSHA2128FSIMPLE, NID_undef, NID_undef}, - {"sphincsharaka128fsimple", TLSEXT_SIGALG_sphincsharaka128fsimple, - NID_undef, -1, EVP_PKEY_SPHINCSHARAKA128FSIMPLE, SSL_PKEY_SPHINCSHARAKA128FSIMPLE, + {"sphincssha2128ssimple", TLSEXT_SIGALG_sphincssha2128ssimple, + NID_undef, -1, EVP_PKEY_SPHINCSSHA2128SSIMPLE, SSL_PKEY_SPHINCSSHA2128SSIMPLE, NID_undef, NID_undef}, - {"p256_sphincsharaka128fsimple", TLSEXT_SIGALG_p256_sphincsharaka128fsimple, - NID_undef, -1, EVP_PKEY_P256_SPHINCSHARAKA128FSIMPLE, SSL_PKEY_P256_SPHINCSHARAKA128FSIMPLE, + {"p256_sphincssha2128ssimple", TLSEXT_SIGALG_p256_sphincssha2128ssimple, + NID_undef, -1, EVP_PKEY_P256_SPHINCSSHA2128SSIMPLE, SSL_PKEY_P256_SPHINCSSHA2128SSIMPLE, NID_undef, NID_undef}, - {"rsa3072_sphincsharaka128fsimple", TLSEXT_SIGALG_rsa3072_sphincsharaka128fsimple, - NID_undef, -1, EVP_PKEY_RSA3072_SPHINCSHARAKA128FSIMPLE, SSL_PKEY_RSA3072_SPHINCSHARAKA128FSIMPLE, + {"rsa3072_sphincssha2128ssimple", TLSEXT_SIGALG_rsa3072_sphincssha2128ssimple, + NID_undef, -1, EVP_PKEY_RSA3072_SPHINCSSHA2128SSIMPLE, SSL_PKEY_RSA3072_SPHINCSSHA2128SSIMPLE, NID_undef, NID_undef}, - {"sphincssha256128frobust", TLSEXT_SIGALG_sphincssha256128frobust, - NID_undef, -1, EVP_PKEY_SPHINCSSHA256128FROBUST, SSL_PKEY_SPHINCSSHA256128FROBUST, + {"sphincssha2192fsimple", TLSEXT_SIGALG_sphincssha2192fsimple, + NID_undef, -1, EVP_PKEY_SPHINCSSHA2192FSIMPLE, SSL_PKEY_SPHINCSSHA2192FSIMPLE, NID_undef, NID_undef}, - {"p256_sphincssha256128frobust", TLSEXT_SIGALG_p256_sphincssha256128frobust, - NID_undef, -1, EVP_PKEY_P256_SPHINCSSHA256128FROBUST, SSL_PKEY_P256_SPHINCSSHA256128FROBUST, + {"p384_sphincssha2192fsimple", TLSEXT_SIGALG_p384_sphincssha2192fsimple, + NID_undef, -1, EVP_PKEY_P384_SPHINCSSHA2192FSIMPLE, SSL_PKEY_P384_SPHINCSSHA2192FSIMPLE, NID_undef, NID_undef}, - {"rsa3072_sphincssha256128frobust", TLSEXT_SIGALG_rsa3072_sphincssha256128frobust, - NID_undef, -1, EVP_PKEY_RSA3072_SPHINCSSHA256128FROBUST, SSL_PKEY_RSA3072_SPHINCSSHA256128FROBUST, + {"sphincsshake128fsimple", TLSEXT_SIGALG_sphincsshake128fsimple, + NID_undef, -1, EVP_PKEY_SPHINCSSHAKE128FSIMPLE, SSL_PKEY_SPHINCSSHAKE128FSIMPLE, NID_undef, NID_undef}, - {"sphincssha256128ssimple", TLSEXT_SIGALG_sphincssha256128ssimple, - NID_undef, -1, EVP_PKEY_SPHINCSSHA256128SSIMPLE, SSL_PKEY_SPHINCSSHA256128SSIMPLE, + {"p256_sphincsshake128fsimple", TLSEXT_SIGALG_p256_sphincsshake128fsimple, + NID_undef, -1, EVP_PKEY_P256_SPHINCSSHAKE128FSIMPLE, SSL_PKEY_P256_SPHINCSSHAKE128FSIMPLE, NID_undef, NID_undef}, - {"p256_sphincssha256128ssimple", TLSEXT_SIGALG_p256_sphincssha256128ssimple, - NID_undef, -1, EVP_PKEY_P256_SPHINCSSHA256128SSIMPLE, SSL_PKEY_P256_SPHINCSSHA256128SSIMPLE, - NID_undef, NID_undef}, - {"rsa3072_sphincssha256128ssimple", TLSEXT_SIGALG_rsa3072_sphincssha256128ssimple, - NID_undef, -1, EVP_PKEY_RSA3072_SPHINCSSHA256128SSIMPLE, SSL_PKEY_RSA3072_SPHINCSSHA256128SSIMPLE, - NID_undef, NID_undef}, - {"sphincsshake256128fsimple", TLSEXT_SIGALG_sphincsshake256128fsimple, - NID_undef, -1, EVP_PKEY_SPHINCSSHAKE256128FSIMPLE, SSL_PKEY_SPHINCSSHAKE256128FSIMPLE, - NID_undef, NID_undef}, - {"p256_sphincsshake256128fsimple", TLSEXT_SIGALG_p256_sphincsshake256128fsimple, - NID_undef, -1, EVP_PKEY_P256_SPHINCSSHAKE256128FSIMPLE, SSL_PKEY_P256_SPHINCSSHAKE256128FSIMPLE, - NID_undef, NID_undef}, - {"rsa3072_sphincsshake256128fsimple", TLSEXT_SIGALG_rsa3072_sphincsshake256128fsimple, - NID_undef, -1, EVP_PKEY_RSA3072_SPHINCSSHAKE256128FSIMPLE, SSL_PKEY_RSA3072_SPHINCSSHAKE256128FSIMPLE, + {"rsa3072_sphincsshake128fsimple", TLSEXT_SIGALG_rsa3072_sphincsshake128fsimple, + NID_undef, -1, EVP_PKEY_RSA3072_SPHINCSSHAKE128FSIMPLE, SSL_PKEY_RSA3072_SPHINCSSHAKE128FSIMPLE, NID_undef, NID_undef}, ///// OQS_TEMPLATE_FRAGMENT_POPULATE_SIGALG_TBL_END }; @@ -1375,20 +1318,6 @@ static int sigalg_security_bits(const SIGALG_LOOKUP *lu) secbits = 256; else if(lu->sigalg == TLSEXT_SIGALG_p521_dilithium5) secbits = 256; - else if(lu->sigalg == TLSEXT_SIGALG_dilithium2_aes) - secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_p256_dilithium2_aes) - secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_rsa3072_dilithium2_aes) - secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_dilithium3_aes) - secbits = 192; - else if(lu->sigalg == TLSEXT_SIGALG_p384_dilithium3_aes) - secbits = 192; - else if(lu->sigalg == TLSEXT_SIGALG_dilithium5_aes) - secbits = 256; - else if(lu->sigalg == TLSEXT_SIGALG_p521_dilithium5_aes) - secbits = 256; else if(lu->sigalg == TLSEXT_SIGALG_falcon512) secbits = 128; else if(lu->sigalg == TLSEXT_SIGALG_p256_falcon512) @@ -1399,35 +1328,27 @@ static int sigalg_security_bits(const SIGALG_LOOKUP *lu) secbits = 256; else if(lu->sigalg == TLSEXT_SIGALG_p521_falcon1024) secbits = 256; - else if(lu->sigalg == TLSEXT_SIGALG_sphincsharaka128frobust) - secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_p256_sphincsharaka128frobust) - secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_rsa3072_sphincsharaka128frobust) + else if(lu->sigalg == TLSEXT_SIGALG_sphincssha2128fsimple) secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_sphincsharaka128fsimple) + else if(lu->sigalg == TLSEXT_SIGALG_p256_sphincssha2128fsimple) secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_p256_sphincsharaka128fsimple) + else if(lu->sigalg == TLSEXT_SIGALG_rsa3072_sphincssha2128fsimple) secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_rsa3072_sphincsharaka128fsimple) + else if(lu->sigalg == TLSEXT_SIGALG_sphincssha2128ssimple) secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_sphincssha256128frobust) + else if(lu->sigalg == TLSEXT_SIGALG_p256_sphincssha2128ssimple) secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_p256_sphincssha256128frobust) + else if(lu->sigalg == TLSEXT_SIGALG_rsa3072_sphincssha2128ssimple) secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_rsa3072_sphincssha256128frobust) - secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_sphincssha256128ssimple) - secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_p256_sphincssha256128ssimple) - secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_rsa3072_sphincssha256128ssimple) - secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_sphincsshake256128fsimple) + else if(lu->sigalg == TLSEXT_SIGALG_sphincssha2192fsimple) + secbits = 192; + else if(lu->sigalg == TLSEXT_SIGALG_p384_sphincssha2192fsimple) + secbits = 192; + else if(lu->sigalg == TLSEXT_SIGALG_sphincsshake128fsimple) secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_p256_sphincsshake256128fsimple) + else if(lu->sigalg == TLSEXT_SIGALG_p256_sphincsshake128fsimple) secbits = 128; - else if(lu->sigalg == TLSEXT_SIGALG_rsa3072_sphincsshake256128fsimple) + else if(lu->sigalg == TLSEXT_SIGALG_rsa3072_sphincsshake128fsimple) secbits = 128; ///// OQS_TEMPLATE_FRAGMENT_MAP_SIGALG_TO_BIT_SECURITY_END } @@ -2852,33 +2773,22 @@ void tls1_set_cert_validity(SSL *s) tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P384_DILITHIUM3); tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_DILITHIUM5); tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P521_DILITHIUM5); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_DILITHIUM2_AES); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P256_DILITHIUM2_AES); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_RSA3072_DILITHIUM2_AES); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_DILITHIUM3_AES); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P384_DILITHIUM3_AES); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_DILITHIUM5_AES); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P521_DILITHIUM5_AES); tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_FALCON512); tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P256_FALCON512); tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_RSA3072_FALCON512); tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_FALCON1024); tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P521_FALCON1024); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_SPHINCSHARAKA128FROBUST); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P256_SPHINCSHARAKA128FROBUST); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_RSA3072_SPHINCSHARAKA128FROBUST); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_SPHINCSHARAKA128FSIMPLE); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P256_SPHINCSHARAKA128FSIMPLE); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_RSA3072_SPHINCSHARAKA128FSIMPLE); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_SPHINCSSHA256128FROBUST); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P256_SPHINCSSHA256128FROBUST); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_RSA3072_SPHINCSSHA256128FROBUST); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_SPHINCSSHA256128SSIMPLE); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P256_SPHINCSSHA256128SSIMPLE); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_RSA3072_SPHINCSSHA256128SSIMPLE); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_SPHINCSSHAKE256128FSIMPLE); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P256_SPHINCSSHAKE256128FSIMPLE); - tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_RSA3072_SPHINCSSHAKE256128FSIMPLE); + tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_SPHINCSSHA2128FSIMPLE); + tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P256_SPHINCSSHA2128FSIMPLE); + tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_RSA3072_SPHINCSSHA2128FSIMPLE); + tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_SPHINCSSHA2128SSIMPLE); + tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P256_SPHINCSSHA2128SSIMPLE); + tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_RSA3072_SPHINCSSHA2128SSIMPLE); + tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_SPHINCSSHA2192FSIMPLE); + tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P384_SPHINCSSHA2192FSIMPLE); + tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_SPHINCSSHAKE128FSIMPLE); + tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_P256_SPHINCSSHAKE128FSIMPLE); + tls1_check_chain(s, NULL, NULL, NULL, SSL_PKEY_RSA3072_SPHINCSSHAKE128FSIMPLE); ///// OQS_TEMPLATE_FRAGMENT_ADD_CERT_CHAIN_CHECKS_END } diff --git a/ssl/t1_trce.c b/ssl/t1_trce.c index daa5b16c11cd5..75051a85efd8c 100644 --- a/ssl/t1_trce.c +++ b/ssl/t1_trce.c @@ -543,9 +543,6 @@ static const ssl_trace_tbl ssl_groups_tbl[] = { {OQS_KEM_CURVEID(NID_bikel1), "bikel1"}, {OQS_KEM_CURVEID(NID_bikel3), "bikel3"}, {OQS_KEM_CURVEID(NID_bikel5), "bikel5"}, - {OQS_KEM_CURVEID(NID_kyber90s512), "kyber90s512"}, - {OQS_KEM_CURVEID(NID_kyber90s768), "kyber90s768"}, - {OQS_KEM_CURVEID(NID_kyber90s1024), "kyber90s1024"}, {OQS_KEM_CURVEID(NID_hqc128), "hqc128"}, {OQS_KEM_CURVEID(NID_hqc192), "hqc192"}, {OQS_KEM_CURVEID(NID_hqc256), "hqc256"}, @@ -563,9 +560,6 @@ static const ssl_trace_tbl ssl_groups_tbl[] = { {OQS_KEM_CURVEID(NID_p256_bikel1), "p256 - bikel1 hybrid"}, {OQS_KEM_CURVEID(NID_p384_bikel3), "p384 - bikel3 hybrid"}, {OQS_KEM_CURVEID(NID_p521_bikel5), "p521 - bikel5 hybrid"}, - {OQS_KEM_CURVEID(NID_p256_kyber90s512), "p256 - kyber90s512 hybrid"}, - {OQS_KEM_CURVEID(NID_p384_kyber90s768), "p384 - kyber90s768 hybrid"}, - {OQS_KEM_CURVEID(NID_p521_kyber90s1024), "p521 - kyber90s1024 hybrid"}, {OQS_KEM_CURVEID(NID_p256_hqc128), "p256 - hqc128 hybrid"}, {OQS_KEM_CURVEID(NID_p384_hqc192), "p384 - hqc192 hybrid"}, {OQS_KEM_CURVEID(NID_p521_hqc256), "p521 - hqc256 hybrid"}, @@ -623,33 +617,22 @@ static const ssl_trace_tbl ssl_sigalg_tbl[] = { {TLSEXT_SIGALG_p384_dilithium3, "p384_dilithium3"}, {TLSEXT_SIGALG_dilithium5, "dilithium5"}, {TLSEXT_SIGALG_p521_dilithium5, "p521_dilithium5"}, - {TLSEXT_SIGALG_dilithium2_aes, "dilithium2_aes"}, - {TLSEXT_SIGALG_p256_dilithium2_aes, "p256_dilithium2_aes"}, - {TLSEXT_SIGALG_rsa3072_dilithium2_aes, "rsa3072_dilithium2_aes"}, - {TLSEXT_SIGALG_dilithium3_aes, "dilithium3_aes"}, - {TLSEXT_SIGALG_p384_dilithium3_aes, "p384_dilithium3_aes"}, - {TLSEXT_SIGALG_dilithium5_aes, "dilithium5_aes"}, - {TLSEXT_SIGALG_p521_dilithium5_aes, "p521_dilithium5_aes"}, {TLSEXT_SIGALG_falcon512, "falcon512"}, {TLSEXT_SIGALG_p256_falcon512, "p256_falcon512"}, {TLSEXT_SIGALG_rsa3072_falcon512, "rsa3072_falcon512"}, {TLSEXT_SIGALG_falcon1024, "falcon1024"}, {TLSEXT_SIGALG_p521_falcon1024, "p521_falcon1024"}, - {TLSEXT_SIGALG_sphincsharaka128frobust, "sphincsharaka128frobust"}, - {TLSEXT_SIGALG_p256_sphincsharaka128frobust, "p256_sphincsharaka128frobust"}, - {TLSEXT_SIGALG_rsa3072_sphincsharaka128frobust, "rsa3072_sphincsharaka128frobust"}, - {TLSEXT_SIGALG_sphincsharaka128fsimple, "sphincsharaka128fsimple"}, - {TLSEXT_SIGALG_p256_sphincsharaka128fsimple, "p256_sphincsharaka128fsimple"}, - {TLSEXT_SIGALG_rsa3072_sphincsharaka128fsimple, "rsa3072_sphincsharaka128fsimple"}, - {TLSEXT_SIGALG_sphincssha256128frobust, "sphincssha256128frobust"}, - {TLSEXT_SIGALG_p256_sphincssha256128frobust, "p256_sphincssha256128frobust"}, - {TLSEXT_SIGALG_rsa3072_sphincssha256128frobust, "rsa3072_sphincssha256128frobust"}, - {TLSEXT_SIGALG_sphincssha256128ssimple, "sphincssha256128ssimple"}, - {TLSEXT_SIGALG_p256_sphincssha256128ssimple, "p256_sphincssha256128ssimple"}, - {TLSEXT_SIGALG_rsa3072_sphincssha256128ssimple, "rsa3072_sphincssha256128ssimple"}, - {TLSEXT_SIGALG_sphincsshake256128fsimple, "sphincsshake256128fsimple"}, - {TLSEXT_SIGALG_p256_sphincsshake256128fsimple, "p256_sphincsshake256128fsimple"}, - {TLSEXT_SIGALG_rsa3072_sphincsshake256128fsimple, "rsa3072_sphincsshake256128fsimple"}, + {TLSEXT_SIGALG_sphincssha2128fsimple, "sphincssha2128fsimple"}, + {TLSEXT_SIGALG_p256_sphincssha2128fsimple, "p256_sphincssha2128fsimple"}, + {TLSEXT_SIGALG_rsa3072_sphincssha2128fsimple, "rsa3072_sphincssha2128fsimple"}, + {TLSEXT_SIGALG_sphincssha2128ssimple, "sphincssha2128ssimple"}, + {TLSEXT_SIGALG_p256_sphincssha2128ssimple, "p256_sphincssha2128ssimple"}, + {TLSEXT_SIGALG_rsa3072_sphincssha2128ssimple, "rsa3072_sphincssha2128ssimple"}, + {TLSEXT_SIGALG_sphincssha2192fsimple, "sphincssha2192fsimple"}, + {TLSEXT_SIGALG_p384_sphincssha2192fsimple, "p384_sphincssha2192fsimple"}, + {TLSEXT_SIGALG_sphincsshake128fsimple, "sphincsshake128fsimple"}, + {TLSEXT_SIGALG_p256_sphincsshake128fsimple, "p256_sphincsshake128fsimple"}, + {TLSEXT_SIGALG_rsa3072_sphincsshake128fsimple, "rsa3072_sphincsshake128fsimple"}, ///// OQS_TEMPLATE_FRAGMENT_POPULATE_SIGALG_TBL_END };