From 63fc458915b3f462bcd5185fc7b7606a31f83b55 Mon Sep 17 00:00:00 2001 From: Felipe Ventura Date: Tue, 27 Feb 2024 13:10:20 -0600 Subject: [PATCH] changed composite dilithium to ML-* --- ALGORITHMS.md | 26 +- README.md | 4 +- oqs-template/generate.yml | 104 ++++---- oqsprov/oqs_decode_der2key.c | 62 ++--- oqsprov/oqs_encode_key2any.c | 260 ++++++++++---------- oqsprov/oqs_kmgmt.c | 310 ++++++++++++------------ oqsprov/oqs_prov.h | 458 +++++++++++++++++------------------ oqsprov/oqsdecoders.inc | 97 ++++---- oqsprov/oqsencoders.inc | 324 ++++++++++++------------- oqsprov/oqsprov.c | 275 +++++++++++---------- oqsprov/oqsprov_keys.c | 26 +- scripts/common.py | 2 +- 12 files changed, 957 insertions(+), 991 deletions(-) diff --git a/ALGORITHMS.md b/ALGORITHMS.md index 6c12bfc6..cbf8d5c6 100644 --- a/ALGORITHMS.md +++ b/ALGORITHMS.md @@ -139,30 +139,30 @@ adapting the OIDs of all supported signature algorithms as per the table below. | dilithium2 | 1.3.6.1.4.1.2.267.7.4.4 |Yes| OQS_OID_DILITHIUM2 | p256_dilithium2 | 1.3.9999.2.7.1 |Yes| OQS_OID_P256_DILITHIUM2 | rsa3072_dilithium2 | 1.3.9999.2.7.2 |Yes| OQS_OID_RSA3072_DILITHIUM2 -| dilithium2_pss2048 | 2.16.840.1.114027.80.8.1.1 |Yes| OQS_OID_DILITHIUM2_pss2048 -| dilithium2_rsa2048 | 2.16.840.1.114027.80.8.1.2 |Yes| OQS_OID_DILITHIUM2_rsa2048 -| dilithium2_ed25519 | 2.16.840.1.114027.80.8.1.3 |Yes| OQS_OID_DILITHIUM2_ed25519 -| dilithium2_p256 | 2.16.840.1.114027.80.8.1.4 |Yes| OQS_OID_DILITHIUM2_p256 -| dilithium2_bp256 | 2.16.840.1.114027.80.8.1.5 |Yes| OQS_OID_DILITHIUM2_bp256 | dilithium3 | 1.3.6.1.4.1.2.267.7.6.5 |Yes| OQS_OID_DILITHIUM3 | p384_dilithium3 | 1.3.9999.2.7.3 |Yes| OQS_OID_P384_DILITHIUM3 -| dilithium3_pss3072 | 2.16.840.1.114027.80.8.1.6 |Yes| OQS_OID_DILITHIUM3_pss3072 -| dilithium3_rsa3072 | 2.16.840.1.114027.80.8.1.7 |Yes| OQS_OID_DILITHIUM3_rsa3072 -| dilithium3_p256 | 2.16.840.1.114027.80.8.1.8 |Yes| OQS_OID_DILITHIUM3_p256 -| dilithium3_bp256 | 2.16.840.1.114027.80.8.1.9 |Yes| OQS_OID_DILITHIUM3_bp256 -| dilithium3_ed25519 | 2.16.840.1.114027.80.8.1.10 |Yes| OQS_OID_DILITHIUM3_ed25519 | dilithium5 | 1.3.6.1.4.1.2.267.7.8.7 |Yes| OQS_OID_DILITHIUM5 | p521_dilithium5 | 1.3.9999.2.7.4 |Yes| OQS_OID_P521_DILITHIUM5 -| dilithium5_p384 | 2.16.840.1.114027.80.8.1.11 |Yes| OQS_OID_DILITHIUM5_p384 -| dilithium5_bp384 | 2.16.840.1.114027.80.8.1.12 |Yes| OQS_OID_DILITHIUM5_bp384 -| dilithium5_ed448 | 2.16.840.1.114027.80.8.1.13 |Yes| OQS_OID_DILITHIUM5_ed448 | mldsa44 | 1.3.6.1.4.1.2.267.12.4.4 |Yes| OQS_OID_MLDSA44 | p256_mldsa44 | 1.3.9999.7.1 |Yes| OQS_OID_P256_MLDSA44 | rsa3072_mldsa44 | 1.3.9999.7.2 |Yes| OQS_OID_RSA3072_MLDSA44 +| mldsa44_pss2048 | 2.16.840.1.114027.80.8.1.1 |Yes| OQS_OID_MLDSA44_pss2048 +| mldsa44_rsa2048 | 2.16.840.1.114027.80.8.1.2 |Yes| OQS_OID_MLDSA44_rsa2048 +| mldsa44_ed25519 | 2.16.840.1.114027.80.8.1.3 |Yes| OQS_OID_MLDSA44_ed25519 +| mldsa44_p256 | 2.16.840.1.114027.80.8.1.4 |Yes| OQS_OID_MLDSA44_p256 +| mldsa44_bp256 | 2.16.840.1.114027.80.8.1.5 |Yes| OQS_OID_MLDSA44_bp256 | mldsa65 | 1.3.6.1.4.1.2.267.12.6.5 |Yes| OQS_OID_MLDSA65 | p384_mldsa65 | 1.3.9999.7.3 |Yes| OQS_OID_P384_MLDSA65 +| mldsa65_pss3072 | 2.16.840.1.114027.80.8.1.6 |Yes| OQS_OID_MLDSA65_pss3072 +| mldsa65_rsa3072 | 2.16.840.1.114027.80.8.1.7 |Yes| OQS_OID_MLDSA65_rsa3072 +| mldsa65_p256 | 2.16.840.1.114027.80.8.1.8 |Yes| OQS_OID_MLDSA65_p256 +| mldsa65_bp256 | 2.16.840.1.114027.80.8.1.9 |Yes| OQS_OID_MLDSA65_bp256 +| mldsa65_ed25519 | 2.16.840.1.114027.80.8.1.10 |Yes| OQS_OID_MLDSA65_ed25519 | mldsa87 | 1.3.6.1.4.1.2.267.12.8.7 |Yes| OQS_OID_MLDSA87 | p521_mldsa87 | 1.3.9999.7.4 |Yes| OQS_OID_P521_MLDSA87 +| mldsa87_p384 | 2.16.840.1.114027.80.8.1.11 |Yes| OQS_OID_MLDSA87_p384 +| mldsa87_bp384 | 2.16.840.1.114027.80.8.1.12 |Yes| OQS_OID_MLDSA87_bp384 +| mldsa87_ed448 | 2.16.840.1.114027.80.8.1.13 |Yes| OQS_OID_MLDSA87_ed448 | falcon512 | 1.3.9999.3.6 |Yes| OQS_OID_FALCON512 | p256_falcon512 | 1.3.9999.3.7 |Yes| OQS_OID_P256_FALCON512 | rsa3072_falcon512 | 1.3.9999.3.8 |Yes| OQS_OID_RSA3072_FALCON512 diff --git a/README.md b/README.md index cf504636..89d89495 100644 --- a/README.md +++ b/README.md @@ -44,8 +44,8 @@ This implementation makes available the following quantum safe algorithms: ### Signature algorithms -- **CRYSTALS-Dilithium**:`dilithium2`\*, `p256_dilithium2`\*, `rsa3072_dilithium2`\*, `dilithium2_pss2048`\*, `dilithium2_rsa2048`\*, `dilithium2_ed25519`\*, `dilithium2_p256`\*, `dilithium2_bp256`\*, `dilithium3`\*, `p384_dilithium3`\*, `dilithium3_pss3072`\*, `dilithium3_rsa3072`\*, `dilithium3_p256`\*, `dilithium3_bp256`\*, `dilithium3_ed25519`\*, `dilithium5`\*, `p521_dilithium5`\*, `dilithium5_p384`\*, `dilithium5_bp384`\*, `dilithium5_ed448`\* -- **ML-DSA**:`mldsa44`\*, `p256_mldsa44`\*, `rsa3072_mldsa44`\*, `mldsa65`\*, `p384_mldsa65`\*, `mldsa87`\*, `p521_mldsa87`\* +- **CRYSTALS-Dilithium**:`dilithium2`\*, `p256_dilithium2`\*, `rsa3072_dilithium2`\*, `dilithium3`\*, `p384_dilithium3`\*, `dilithium5`\*, `p521_dilithium5`\* +- **ML-DSA**:`mldsa44`\*, `p256_mldsa44`\*, `rsa3072_mldsa44`\*, `mldsa44_pss2048`\*, `mldsa44_rsa2048`\*, `mldsa44_ed25519`\*, `mldsa44_p256`\*, `mldsa44_bp256`\*, `mldsa65`\*, `p384_mldsa65`\*, `mldsa65_pss3072`\*, `mldsa65_rsa3072`\*, `mldsa65_p256`\*, `mldsa65_bp256`\*, `mldsa65_ed25519`\*, `mldsa87`\*, `p521_mldsa87`\*, `mldsa87_p384`\*, `mldsa87_bp384`\*, `mldsa87_ed448`\* - **Falcon**:`falcon512`\*, `p256_falcon512`\*, `rsa3072_falcon512`\*, `falcon512_p256`\*, `falcon512_bp256`\*, `falcon512_ed25519`\*, `falcon1024`\*, `p521_falcon1024`\* - **SPHINCS-SHA2**:`sphincssha2128fsimple`\*, `p256_sphincssha2128fsimple`\*, `rsa3072_sphincssha2128fsimple`\*, `sphincssha2128ssimple`\*, `p256_sphincssha2128ssimple`\*, `rsa3072_sphincssha2128ssimple`\*, `sphincssha2192fsimple`\*, `p384_sphincssha2192fsimple`\*, `sphincssha2192ssimple`, `p384_sphincssha2192ssimple`, `sphincssha2256fsimple`, `p521_sphincssha2256fsimple`, `sphincssha2256ssimple`, `p521_sphincssha2256ssimple` diff --git a/oqs-template/generate.yml b/oqs-template/generate.yml index 74112ded..f44a388e 100644 --- a/oqs-template/generate.yml +++ b/oqs-template/generate.yml @@ -467,26 +467,6 @@ sigs: 'pretty_name': 'RSA3072', 'oid': '1.3.9999.2.7.2', 'code_point': '0xfea2'}] - composite: [{'name': 'pss2048', - 'pretty_name': 'RSA PSS 2048', - 'security': '112', - 'oid': '2.16.840.1.114027.80.8.1.1'}, - {'name': 'rsa2048', - 'pretty_name': 'RSA2028', - 'security': '112', - 'oid': '2.16.840.1.114027.80.8.1.2'}, - {'name': 'ed25519', - 'pretty_name': 'ED25519', - 'security': '128', - 'oid': '2.16.840.1.114027.80.8.1.3'}, - {'name': 'p256', - 'pretty_name': 'ECDSA p256', - 'security': '128', - 'oid': '2.16.840.1.114027.80.8.1.4'}, - {'name': 'bp256', - 'pretty_name': 'ECDSA brainpoolP256r1', - 'security': '256', - 'oid': '2.16.840.1.114027.80.8.1.5'}] - name: 'dilithium3' pretty_name: 'Dilithium3' @@ -499,26 +479,6 @@ sigs: 'pretty_name': 'ECDSA p384', 'oid': '1.3.9999.2.7.3', 'code_point': '0xfea4'}] - composite: [{'name': 'pss3072', - 'pretty_name': 'RSA PSS 3072', - 'security': '128', - 'oid': '2.16.840.1.114027.80.8.1.6'}, - {'name': 'rsa3072', - 'pretty_name': 'RSA 3072', - 'security': '128', - 'oid': '2.16.840.1.114027.80.8.1.7'}, - {'name': 'p256', - 'pretty_name': 'ECDSA p256', - 'security': '128', - 'oid': '2.16.840.1.114027.80.8.1.8'}, - {'name': 'bp256', - 'pretty_name': 'ECDSA brainpoolP256r1', - 'security': '256', - 'oid': '2.16.840.1.114027.80.8.1.9'}, - {'name': 'ed25519', - 'pretty_name': 'ED25519', - 'security': '128', - 'oid': '2.16.840.1.114027.80.8.1.10'}] - name: 'dilithium5' pretty_name: 'Dilithium5' @@ -531,18 +491,6 @@ sigs: 'pretty_name': 'ECDSA p521', 'oid': '1.3.9999.2.7.4', 'code_point': '0xfea6'}] - composite: [{'name': 'p384', - 'pretty_name': 'ECDSA p384', - 'security': '192', - 'oid': '2.16.840.1.114027.80.8.1.11'}, - {'name': 'bp384', - 'pretty_name': 'ECDSA brainpoolP384r1', - 'security': '384', - 'oid': '2.16.840.1.114027.80.8.1.12'}, - {'name': 'ed448', - 'pretty_name': 'ED448', - 'security': '192', - 'oid': '2.16.840.1.114027.80.8.1.13'}] - name: 'dilithium2_aes' pretty_name: 'Dilithium2_AES' @@ -610,6 +558,26 @@ sigs: 'pretty_name': 'RSA3072', 'oid': '1.3.9999.7.2', 'code_point': '0xfed4'}] + composite: [{'name': 'pss2048', + 'pretty_name': 'RSA PSS 2048', + 'security': '112', + 'oid': '2.16.840.1.114027.80.8.1.1'}, + {'name': 'rsa2048', + 'pretty_name': 'RSA2028', + 'security': '112', + 'oid': '2.16.840.1.114027.80.8.1.2'}, + {'name': 'ed25519', + 'pretty_name': 'ED25519', + 'security': '128', + 'oid': '2.16.840.1.114027.80.8.1.3'}, + {'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'security': '128', + 'oid': '2.16.840.1.114027.80.8.1.4'}, + {'name': 'bp256', + 'pretty_name': 'ECDSA brainpoolP256r1', + 'security': '256', + 'oid': '2.16.840.1.114027.80.8.1.5'}] - name: 'mldsa65' pretty_name: 'ML-DSA-65' @@ -621,6 +589,26 @@ sigs: 'pretty_name': 'ECDSA p384', 'oid': '1.3.9999.7.3', 'code_point': '0xfed5'}] + composite: [{'name': 'pss3072', + 'pretty_name': 'RSA PSS 3072', + 'security': '128', + 'oid': '2.16.840.1.114027.80.8.1.6'}, + {'name': 'rsa3072', + 'pretty_name': 'RSA 3072', + 'security': '128', + 'oid': '2.16.840.1.114027.80.8.1.7'}, + {'name': 'p256', + 'pretty_name': 'ECDSA p256', + 'security': '128', + 'oid': '2.16.840.1.114027.80.8.1.8'}, + {'name': 'bp256', + 'pretty_name': 'ECDSA brainpoolP256r1', + 'security': '256', + 'oid': '2.16.840.1.114027.80.8.1.9'}, + {'name': 'ed25519', + 'pretty_name': 'ED25519', + 'security': '128', + 'oid': '2.16.840.1.114027.80.8.1.10'}] - name: 'mldsa87' pretty_name: 'ML-DSA-87' @@ -632,6 +620,18 @@ sigs: 'pretty_name': 'ECDSA p521', 'oid': '1.3.9999.7.4', 'code_point': '0xfed6'}] + composite: [{'name': 'p384', + 'pretty_name': 'ECDSA p384', + 'security': '192', + 'oid': '2.16.840.1.114027.80.8.1.11'}, + {'name': 'bp384', + 'pretty_name': 'ECDSA brainpoolP384r1', + 'security': '384', + 'oid': '2.16.840.1.114027.80.8.1.12'}, + {'name': 'ed448', + 'pretty_name': 'ED448', + 'security': '192', + 'oid': '2.16.840.1.114027.80.8.1.13'}] - # iso (1) # identified-organization (3) diff --git a/oqsprov/oqs_decode_der2key.c b/oqsprov/oqs_decode_der2key.c index babfe183..c65d073e 100644 --- a/oqsprov/oqs_decode_der2key.c +++ b/oqsprov/oqs_decode_der2key.c @@ -693,64 +693,54 @@ MAKE_DECODER(, "p256_dilithium2", p256_dilithium2, oqsx, SubjectPublicKeyInfo); MAKE_DECODER(, "rsa3072_dilithium2", rsa3072_dilithium2, oqsx, PrivateKeyInfo); MAKE_DECODER(, "rsa3072_dilithium2", rsa3072_dilithium2, oqsx, SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium2_pss2048", dilithium2_pss2048, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium2_pss2048", dilithium2_pss2048, oqsx, - SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium2_rsa2048", dilithium2_rsa2048, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium2_rsa2048", dilithium2_rsa2048, oqsx, - SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium2_ed25519", dilithium2_ed25519, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium2_ed25519", dilithium2_ed25519, oqsx, - SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium2_p256", dilithium2_p256, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium2_p256", dilithium2_p256, oqsx, SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium2_bp256", dilithium2_bp256, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium2_bp256", dilithium2_bp256, oqsx, - SubjectPublicKeyInfo); MAKE_DECODER(, "dilithium3", dilithium3, oqsx, PrivateKeyInfo); MAKE_DECODER(, "dilithium3", dilithium3, oqsx, SubjectPublicKeyInfo); MAKE_DECODER(, "p384_dilithium3", p384_dilithium3, oqsx, PrivateKeyInfo); MAKE_DECODER(, "p384_dilithium3", p384_dilithium3, oqsx, SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium3_pss3072", dilithium3_pss3072, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium3_pss3072", dilithium3_pss3072, oqsx, - SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium3_rsa3072", dilithium3_rsa3072, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium3_rsa3072", dilithium3_rsa3072, oqsx, - SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium3_p256", dilithium3_p256, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium3_p256", dilithium3_p256, oqsx, SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium3_bp256", dilithium3_bp256, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium3_bp256", dilithium3_bp256, oqsx, - SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium3_ed25519", dilithium3_ed25519, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium3_ed25519", dilithium3_ed25519, oqsx, - SubjectPublicKeyInfo); MAKE_DECODER(, "dilithium5", dilithium5, oqsx, PrivateKeyInfo); MAKE_DECODER(, "dilithium5", dilithium5, oqsx, SubjectPublicKeyInfo); MAKE_DECODER(, "p521_dilithium5", p521_dilithium5, oqsx, PrivateKeyInfo); MAKE_DECODER(, "p521_dilithium5", p521_dilithium5, oqsx, SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium5_p384", dilithium5_p384, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium5_p384", dilithium5_p384, oqsx, SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium5_bp384", dilithium5_bp384, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium5_bp384", dilithium5_bp384, oqsx, - SubjectPublicKeyInfo); -MAKE_DECODER(, "dilithium5_ed448", dilithium5_ed448, oqsx, PrivateKeyInfo); -MAKE_DECODER(, "dilithium5_ed448", dilithium5_ed448, oqsx, - SubjectPublicKeyInfo); MAKE_DECODER(, "mldsa44", mldsa44, oqsx, PrivateKeyInfo); MAKE_DECODER(, "mldsa44", mldsa44, oqsx, SubjectPublicKeyInfo); MAKE_DECODER(, "p256_mldsa44", p256_mldsa44, oqsx, PrivateKeyInfo); MAKE_DECODER(, "p256_mldsa44", p256_mldsa44, oqsx, SubjectPublicKeyInfo); MAKE_DECODER(, "rsa3072_mldsa44", rsa3072_mldsa44, oqsx, PrivateKeyInfo); MAKE_DECODER(, "rsa3072_mldsa44", rsa3072_mldsa44, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa44_pss2048", mldsa44_pss2048, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa44_pss2048", mldsa44_pss2048, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa44_rsa2048", mldsa44_rsa2048, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa44_rsa2048", mldsa44_rsa2048, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa44_ed25519", mldsa44_ed25519, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa44_ed25519", mldsa44_ed25519, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa44_p256", mldsa44_p256, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa44_p256", mldsa44_p256, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa44_bp256", mldsa44_bp256, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa44_bp256", mldsa44_bp256, oqsx, SubjectPublicKeyInfo); MAKE_DECODER(, "mldsa65", mldsa65, oqsx, PrivateKeyInfo); MAKE_DECODER(, "mldsa65", mldsa65, oqsx, SubjectPublicKeyInfo); MAKE_DECODER(, "p384_mldsa65", p384_mldsa65, oqsx, PrivateKeyInfo); MAKE_DECODER(, "p384_mldsa65", p384_mldsa65, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa65_pss3072", mldsa65_pss3072, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa65_pss3072", mldsa65_pss3072, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa65_rsa3072", mldsa65_rsa3072, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa65_rsa3072", mldsa65_rsa3072, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa65_p256", mldsa65_p256, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa65_p256", mldsa65_p256, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa65_bp256", mldsa65_bp256, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa65_bp256", mldsa65_bp256, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa65_ed25519", mldsa65_ed25519, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa65_ed25519", mldsa65_ed25519, oqsx, SubjectPublicKeyInfo); MAKE_DECODER(, "mldsa87", mldsa87, oqsx, PrivateKeyInfo); MAKE_DECODER(, "mldsa87", mldsa87, oqsx, SubjectPublicKeyInfo); MAKE_DECODER(, "p521_mldsa87", p521_mldsa87, oqsx, PrivateKeyInfo); MAKE_DECODER(, "p521_mldsa87", p521_mldsa87, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa87_p384", mldsa87_p384, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa87_p384", mldsa87_p384, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa87_bp384", mldsa87_bp384, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa87_bp384", mldsa87_bp384, oqsx, SubjectPublicKeyInfo); +MAKE_DECODER(, "mldsa87_ed448", mldsa87_ed448, oqsx, PrivateKeyInfo); +MAKE_DECODER(, "mldsa87_ed448", mldsa87_ed448, oqsx, SubjectPublicKeyInfo); MAKE_DECODER(, "falcon512", falcon512, oqsx, PrivateKeyInfo); MAKE_DECODER(, "falcon512", falcon512, oqsx, SubjectPublicKeyInfo); MAKE_DECODER(, "p256_falcon512", p256_falcon512, oqsx, PrivateKeyInfo); diff --git a/oqsprov/oqs_encode_key2any.c b/oqsprov/oqs_encode_key2any.c index 45b81417..99e50ee2 100644 --- a/oqsprov/oqs_encode_key2any.c +++ b/oqsprov/oqs_encode_key2any.c @@ -1096,57 +1096,18 @@ static int oqsx_pki_priv_to_der(const void *vxkey, unsigned char **pder) #define rsa3072_dilithium2_evp_type 0 #define rsa3072_dilithium2_input_type "rsa3072_dilithium2" #define rsa3072_dilithium2_pem_type "rsa3072_dilithium2" -#define dilithium2_pss2048_evp_type 0 -#define dilithium2_pss2048_input_type "dilithium2_pss2048" -#define dilithium2_pss2048_pem_type "dilithium2_pss2048" -#define dilithium2_rsa2048_evp_type 0 -#define dilithium2_rsa2048_input_type "dilithium2_rsa2048" -#define dilithium2_rsa2048_pem_type "dilithium2_rsa2048" -#define dilithium2_ed25519_evp_type 0 -#define dilithium2_ed25519_input_type "dilithium2_ed25519" -#define dilithium2_ed25519_pem_type "dilithium2_ed25519" -#define dilithium2_p256_evp_type 0 -#define dilithium2_p256_input_type "dilithium2_p256" -#define dilithium2_p256_pem_type "dilithium2_p256" -#define dilithium2_bp256_evp_type 0 -#define dilithium2_bp256_input_type "dilithium2_bp256" -#define dilithium2_bp256_pem_type "dilithium2_bp256" #define dilithium3_evp_type 0 #define dilithium3_input_type "dilithium3" #define dilithium3_pem_type "dilithium3" #define p384_dilithium3_evp_type 0 #define p384_dilithium3_input_type "p384_dilithium3" #define p384_dilithium3_pem_type "p384_dilithium3" -#define dilithium3_pss3072_evp_type 0 -#define dilithium3_pss3072_input_type "dilithium3_pss3072" -#define dilithium3_pss3072_pem_type "dilithium3_pss3072" -#define dilithium3_rsa3072_evp_type 0 -#define dilithium3_rsa3072_input_type "dilithium3_rsa3072" -#define dilithium3_rsa3072_pem_type "dilithium3_rsa3072" -#define dilithium3_p256_evp_type 0 -#define dilithium3_p256_input_type "dilithium3_p256" -#define dilithium3_p256_pem_type "dilithium3_p256" -#define dilithium3_bp256_evp_type 0 -#define dilithium3_bp256_input_type "dilithium3_bp256" -#define dilithium3_bp256_pem_type "dilithium3_bp256" -#define dilithium3_ed25519_evp_type 0 -#define dilithium3_ed25519_input_type "dilithium3_ed25519" -#define dilithium3_ed25519_pem_type "dilithium3_ed25519" #define dilithium5_evp_type 0 #define dilithium5_input_type "dilithium5" #define dilithium5_pem_type "dilithium5" #define p521_dilithium5_evp_type 0 #define p521_dilithium5_input_type "p521_dilithium5" #define p521_dilithium5_pem_type "p521_dilithium5" -#define dilithium5_p384_evp_type 0 -#define dilithium5_p384_input_type "dilithium5_p384" -#define dilithium5_p384_pem_type "dilithium5_p384" -#define dilithium5_bp384_evp_type 0 -#define dilithium5_bp384_input_type "dilithium5_bp384" -#define dilithium5_bp384_pem_type "dilithium5_bp384" -#define dilithium5_ed448_evp_type 0 -#define dilithium5_ed448_input_type "dilithium5_ed448" -#define dilithium5_ed448_pem_type "dilithium5_ed448" #define mldsa44_evp_type 0 #define mldsa44_input_type "mldsa44" #define mldsa44_pem_type "mldsa44" @@ -1156,18 +1117,57 @@ static int oqsx_pki_priv_to_der(const void *vxkey, unsigned char **pder) #define rsa3072_mldsa44_evp_type 0 #define rsa3072_mldsa44_input_type "rsa3072_mldsa44" #define rsa3072_mldsa44_pem_type "rsa3072_mldsa44" +#define mldsa44_pss2048_evp_type 0 +#define mldsa44_pss2048_input_type "mldsa44_pss2048" +#define mldsa44_pss2048_pem_type "mldsa44_pss2048" +#define mldsa44_rsa2048_evp_type 0 +#define mldsa44_rsa2048_input_type "mldsa44_rsa2048" +#define mldsa44_rsa2048_pem_type "mldsa44_rsa2048" +#define mldsa44_ed25519_evp_type 0 +#define mldsa44_ed25519_input_type "mldsa44_ed25519" +#define mldsa44_ed25519_pem_type "mldsa44_ed25519" +#define mldsa44_p256_evp_type 0 +#define mldsa44_p256_input_type "mldsa44_p256" +#define mldsa44_p256_pem_type "mldsa44_p256" +#define mldsa44_bp256_evp_type 0 +#define mldsa44_bp256_input_type "mldsa44_bp256" +#define mldsa44_bp256_pem_type "mldsa44_bp256" #define mldsa65_evp_type 0 #define mldsa65_input_type "mldsa65" #define mldsa65_pem_type "mldsa65" #define p384_mldsa65_evp_type 0 #define p384_mldsa65_input_type "p384_mldsa65" #define p384_mldsa65_pem_type "p384_mldsa65" +#define mldsa65_pss3072_evp_type 0 +#define mldsa65_pss3072_input_type "mldsa65_pss3072" +#define mldsa65_pss3072_pem_type "mldsa65_pss3072" +#define mldsa65_rsa3072_evp_type 0 +#define mldsa65_rsa3072_input_type "mldsa65_rsa3072" +#define mldsa65_rsa3072_pem_type "mldsa65_rsa3072" +#define mldsa65_p256_evp_type 0 +#define mldsa65_p256_input_type "mldsa65_p256" +#define mldsa65_p256_pem_type "mldsa65_p256" +#define mldsa65_bp256_evp_type 0 +#define mldsa65_bp256_input_type "mldsa65_bp256" +#define mldsa65_bp256_pem_type "mldsa65_bp256" +#define mldsa65_ed25519_evp_type 0 +#define mldsa65_ed25519_input_type "mldsa65_ed25519" +#define mldsa65_ed25519_pem_type "mldsa65_ed25519" #define mldsa87_evp_type 0 #define mldsa87_input_type "mldsa87" #define mldsa87_pem_type "mldsa87" #define p521_mldsa87_evp_type 0 #define p521_mldsa87_input_type "p521_mldsa87" #define p521_mldsa87_pem_type "p521_mldsa87" +#define mldsa87_p384_evp_type 0 +#define mldsa87_p384_input_type "mldsa87_p384" +#define mldsa87_p384_pem_type "mldsa87_p384" +#define mldsa87_bp384_evp_type 0 +#define mldsa87_bp384_input_type "mldsa87_bp384" +#define mldsa87_bp384_pem_type "mldsa87_bp384" +#define mldsa87_ed448_evp_type 0 +#define mldsa87_ed448_input_type "mldsa87_ed448" +#define mldsa87_ed448_pem_type "mldsa87_ed448" #define falcon512_evp_type 0 #define falcon512_input_type "falcon512" #define falcon512_pem_type "falcon512" @@ -2279,41 +2279,6 @@ MAKE_ENCODER(, rsa3072_dilithium2, oqsx, PrivateKeyInfo, pem); MAKE_ENCODER(, rsa3072_dilithium2, oqsx, SubjectPublicKeyInfo, der); MAKE_ENCODER(, rsa3072_dilithium2, oqsx, SubjectPublicKeyInfo, pem); MAKE_TEXT_ENCODER(, rsa3072_dilithium2); -MAKE_ENCODER(, dilithium2_pss2048, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium2_pss2048, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium2_pss2048, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium2_pss2048, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium2_pss2048, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium2_pss2048, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium2_pss2048); -MAKE_ENCODER(, dilithium2_rsa2048, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium2_rsa2048, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium2_rsa2048, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium2_rsa2048, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium2_rsa2048, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium2_rsa2048, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium2_rsa2048); -MAKE_ENCODER(, dilithium2_ed25519, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium2_ed25519, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium2_ed25519, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium2_ed25519, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium2_ed25519, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium2_ed25519, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium2_ed25519); -MAKE_ENCODER(, dilithium2_p256, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium2_p256, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium2_p256, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium2_p256, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium2_p256, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium2_p256, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium2_p256); -MAKE_ENCODER(, dilithium2_bp256, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium2_bp256, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium2_bp256, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium2_bp256, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium2_bp256, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium2_bp256, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium2_bp256); MAKE_ENCODER(, dilithium3, oqsx, EncryptedPrivateKeyInfo, der); MAKE_ENCODER(, dilithium3, oqsx, EncryptedPrivateKeyInfo, pem); MAKE_ENCODER(, dilithium3, oqsx, PrivateKeyInfo, der); @@ -2328,41 +2293,6 @@ MAKE_ENCODER(, p384_dilithium3, oqsx, PrivateKeyInfo, pem); MAKE_ENCODER(, p384_dilithium3, oqsx, SubjectPublicKeyInfo, der); MAKE_ENCODER(, p384_dilithium3, oqsx, SubjectPublicKeyInfo, pem); MAKE_TEXT_ENCODER(, p384_dilithium3); -MAKE_ENCODER(, dilithium3_pss3072, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium3_pss3072, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium3_pss3072, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium3_pss3072, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium3_pss3072, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium3_pss3072, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium3_pss3072); -MAKE_ENCODER(, dilithium3_rsa3072, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium3_rsa3072, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium3_rsa3072, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium3_rsa3072, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium3_rsa3072, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium3_rsa3072, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium3_rsa3072); -MAKE_ENCODER(, dilithium3_p256, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium3_p256, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium3_p256, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium3_p256, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium3_p256, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium3_p256, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium3_p256); -MAKE_ENCODER(, dilithium3_bp256, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium3_bp256, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium3_bp256, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium3_bp256, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium3_bp256, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium3_bp256, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium3_bp256); -MAKE_ENCODER(, dilithium3_ed25519, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium3_ed25519, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium3_ed25519, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium3_ed25519, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium3_ed25519, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium3_ed25519, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium3_ed25519); MAKE_ENCODER(, dilithium5, oqsx, EncryptedPrivateKeyInfo, der); MAKE_ENCODER(, dilithium5, oqsx, EncryptedPrivateKeyInfo, pem); MAKE_ENCODER(, dilithium5, oqsx, PrivateKeyInfo, der); @@ -2377,27 +2307,6 @@ MAKE_ENCODER(, p521_dilithium5, oqsx, PrivateKeyInfo, pem); MAKE_ENCODER(, p521_dilithium5, oqsx, SubjectPublicKeyInfo, der); MAKE_ENCODER(, p521_dilithium5, oqsx, SubjectPublicKeyInfo, pem); MAKE_TEXT_ENCODER(, p521_dilithium5); -MAKE_ENCODER(, dilithium5_p384, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium5_p384, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium5_p384, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium5_p384, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium5_p384, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium5_p384, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium5_p384); -MAKE_ENCODER(, dilithium5_bp384, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium5_bp384, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium5_bp384, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium5_bp384, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium5_bp384, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium5_bp384, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium5_bp384); -MAKE_ENCODER(, dilithium5_ed448, oqsx, EncryptedPrivateKeyInfo, der); -MAKE_ENCODER(, dilithium5_ed448, oqsx, EncryptedPrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium5_ed448, oqsx, PrivateKeyInfo, der); -MAKE_ENCODER(, dilithium5_ed448, oqsx, PrivateKeyInfo, pem); -MAKE_ENCODER(, dilithium5_ed448, oqsx, SubjectPublicKeyInfo, der); -MAKE_ENCODER(, dilithium5_ed448, oqsx, SubjectPublicKeyInfo, pem); -MAKE_TEXT_ENCODER(, dilithium5_ed448); MAKE_ENCODER(, mldsa44, oqsx, EncryptedPrivateKeyInfo, der); MAKE_ENCODER(, mldsa44, oqsx, EncryptedPrivateKeyInfo, pem); MAKE_ENCODER(, mldsa44, oqsx, PrivateKeyInfo, der); @@ -2419,6 +2328,41 @@ MAKE_ENCODER(, rsa3072_mldsa44, oqsx, PrivateKeyInfo, pem); MAKE_ENCODER(, rsa3072_mldsa44, oqsx, SubjectPublicKeyInfo, der); MAKE_ENCODER(, rsa3072_mldsa44, oqsx, SubjectPublicKeyInfo, pem); MAKE_TEXT_ENCODER(, rsa3072_mldsa44); +MAKE_ENCODER(, mldsa44_pss2048, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa44_pss2048, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa44_pss2048, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa44_pss2048, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa44_pss2048, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa44_pss2048, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa44_pss2048); +MAKE_ENCODER(, mldsa44_rsa2048, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa44_rsa2048, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa44_rsa2048, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa44_rsa2048, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa44_rsa2048, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa44_rsa2048, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa44_rsa2048); +MAKE_ENCODER(, mldsa44_ed25519, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa44_ed25519, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa44_ed25519, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa44_ed25519, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa44_ed25519, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa44_ed25519, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa44_ed25519); +MAKE_ENCODER(, mldsa44_p256, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa44_p256, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa44_p256, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa44_p256, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa44_p256, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa44_p256, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa44_p256); +MAKE_ENCODER(, mldsa44_bp256, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa44_bp256, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa44_bp256, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa44_bp256, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa44_bp256, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa44_bp256, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa44_bp256); MAKE_ENCODER(, mldsa65, oqsx, EncryptedPrivateKeyInfo, der); MAKE_ENCODER(, mldsa65, oqsx, EncryptedPrivateKeyInfo, pem); MAKE_ENCODER(, mldsa65, oqsx, PrivateKeyInfo, der); @@ -2433,6 +2377,41 @@ MAKE_ENCODER(, p384_mldsa65, oqsx, PrivateKeyInfo, pem); MAKE_ENCODER(, p384_mldsa65, oqsx, SubjectPublicKeyInfo, der); MAKE_ENCODER(, p384_mldsa65, oqsx, SubjectPublicKeyInfo, pem); MAKE_TEXT_ENCODER(, p384_mldsa65); +MAKE_ENCODER(, mldsa65_pss3072, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa65_pss3072, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa65_pss3072, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa65_pss3072, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa65_pss3072, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa65_pss3072, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa65_pss3072); +MAKE_ENCODER(, mldsa65_rsa3072, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa65_rsa3072, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa65_rsa3072, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa65_rsa3072, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa65_rsa3072, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa65_rsa3072, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa65_rsa3072); +MAKE_ENCODER(, mldsa65_p256, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa65_p256, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa65_p256, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa65_p256, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa65_p256, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa65_p256, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa65_p256); +MAKE_ENCODER(, mldsa65_bp256, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa65_bp256, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa65_bp256, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa65_bp256, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa65_bp256, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa65_bp256, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa65_bp256); +MAKE_ENCODER(, mldsa65_ed25519, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa65_ed25519, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa65_ed25519, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa65_ed25519, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa65_ed25519, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa65_ed25519, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa65_ed25519); MAKE_ENCODER(, mldsa87, oqsx, EncryptedPrivateKeyInfo, der); MAKE_ENCODER(, mldsa87, oqsx, EncryptedPrivateKeyInfo, pem); MAKE_ENCODER(, mldsa87, oqsx, PrivateKeyInfo, der); @@ -2447,6 +2426,27 @@ MAKE_ENCODER(, p521_mldsa87, oqsx, PrivateKeyInfo, pem); MAKE_ENCODER(, p521_mldsa87, oqsx, SubjectPublicKeyInfo, der); MAKE_ENCODER(, p521_mldsa87, oqsx, SubjectPublicKeyInfo, pem); MAKE_TEXT_ENCODER(, p521_mldsa87); +MAKE_ENCODER(, mldsa87_p384, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa87_p384, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa87_p384, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa87_p384, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa87_p384, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa87_p384, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa87_p384); +MAKE_ENCODER(, mldsa87_bp384, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa87_bp384, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa87_bp384, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa87_bp384, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa87_bp384, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa87_bp384, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa87_bp384); +MAKE_ENCODER(, mldsa87_ed448, oqsx, EncryptedPrivateKeyInfo, der); +MAKE_ENCODER(, mldsa87_ed448, oqsx, EncryptedPrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa87_ed448, oqsx, PrivateKeyInfo, der); +MAKE_ENCODER(, mldsa87_ed448, oqsx, PrivateKeyInfo, pem); +MAKE_ENCODER(, mldsa87_ed448, oqsx, SubjectPublicKeyInfo, der); +MAKE_ENCODER(, mldsa87_ed448, oqsx, SubjectPublicKeyInfo, pem); +MAKE_TEXT_ENCODER(, mldsa87_ed448); MAKE_ENCODER(, falcon512, oqsx, EncryptedPrivateKeyInfo, der); MAKE_ENCODER(, falcon512, oqsx, EncryptedPrivateKeyInfo, pem); MAKE_ENCODER(, falcon512, oqsx, PrivateKeyInfo, der); diff --git a/oqsprov/oqs_kmgmt.c b/oqsprov/oqs_kmgmt.c index 7470a579..7f818b40 100644 --- a/oqsprov/oqs_kmgmt.c +++ b/oqsprov/oqs_kmgmt.c @@ -628,270 +628,270 @@ static void *rsa3072_dilithium2_gen_init(void *provctx, int selection) return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_2, "rsa3072_dilithium2", KEY_TYPE_HYB_SIG, 128, 2); } -static void *dilithium2_pss2048_new_key(void *provctx) +static void *dilithium3_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_2, - "dilithium2_pss2048", KEY_TYPE_CMP_SIG, NULL, 112, 3); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_3, + "dilithium3", KEY_TYPE_SIG, NULL, 192, 3); } -static void *dilithium2_pss2048_gen_init(void *provctx, int selection) +static void *dilithium3_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_2, - "dilithium2_pss2048", KEY_TYPE_CMP_SIG, 112, 3); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_3, + "dilithium3", 0, 192, 3); } -static void *dilithium2_rsa2048_new_key(void *provctx) +static void *p384_dilithium3_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_2, - "dilithium2_rsa2048", KEY_TYPE_CMP_SIG, NULL, 112, 4); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_3, + "p384_dilithium3", KEY_TYPE_HYB_SIG, NULL, 192, 4); } -static void *dilithium2_rsa2048_gen_init(void *provctx, int selection) +static void *p384_dilithium3_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_2, - "dilithium2_rsa2048", KEY_TYPE_CMP_SIG, 112, 4); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_3, + "p384_dilithium3", KEY_TYPE_HYB_SIG, 192, 4); } -static void *dilithium2_ed25519_new_key(void *provctx) +static void *dilithium5_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_2, - "dilithium2_ed25519", KEY_TYPE_CMP_SIG, NULL, 128, 5); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_5, + "dilithium5", KEY_TYPE_SIG, NULL, 256, 5); } -static void *dilithium2_ed25519_gen_init(void *provctx, int selection) +static void *dilithium5_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_2, - "dilithium2_ed25519", KEY_TYPE_CMP_SIG, 128, 5); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_5, + "dilithium5", 0, 256, 5); } -static void *dilithium2_p256_new_key(void *provctx) +static void *p521_dilithium5_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_2, - "dilithium2_p256", KEY_TYPE_CMP_SIG, NULL, 128, 6); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_5, + "p521_dilithium5", KEY_TYPE_HYB_SIG, NULL, 256, 6); } -static void *dilithium2_p256_gen_init(void *provctx, int selection) +static void *p521_dilithium5_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_2, - "dilithium2_p256", KEY_TYPE_CMP_SIG, 128, 6); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_5, + "p521_dilithium5", KEY_TYPE_HYB_SIG, 256, 6); } -static void *dilithium2_bp256_new_key(void *provctx) + +static void *mldsa44_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_2, - "dilithium2_bp256", KEY_TYPE_CMP_SIG, NULL, 256, 7); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_44, + "mldsa44", KEY_TYPE_SIG, NULL, 128, 7); } -static void *dilithium2_bp256_gen_init(void *provctx, int selection) +static void *mldsa44_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_2, - "dilithium2_bp256", KEY_TYPE_CMP_SIG, 256, 7); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_44, "mldsa44", + 0, 128, 7); } -static void *dilithium3_new_key(void *provctx) +static void *p256_mldsa44_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_3, - "dilithium3", KEY_TYPE_SIG, NULL, 192, 8); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_44, + "p256_mldsa44", KEY_TYPE_HYB_SIG, NULL, 128, 8); } -static void *dilithium3_gen_init(void *provctx, int selection) +static void *p256_mldsa44_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_3, - "dilithium3", 0, 192, 8); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_44, + "p256_mldsa44", KEY_TYPE_HYB_SIG, 128, 8); } -static void *p384_dilithium3_new_key(void *provctx) +static void *rsa3072_mldsa44_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_3, - "p384_dilithium3", KEY_TYPE_HYB_SIG, NULL, 192, 9); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_44, + "rsa3072_mldsa44", KEY_TYPE_HYB_SIG, NULL, 128, 9); } -static void *p384_dilithium3_gen_init(void *provctx, int selection) +static void *rsa3072_mldsa44_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_3, - "p384_dilithium3", KEY_TYPE_HYB_SIG, 192, 9); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_44, + "rsa3072_mldsa44", KEY_TYPE_HYB_SIG, 128, 9); } -static void *dilithium3_pss3072_new_key(void *provctx) +static void *mldsa44_pss2048_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_3, - "dilithium3_pss3072", KEY_TYPE_CMP_SIG, NULL, 128, 10); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_44, + "mldsa44_pss2048", KEY_TYPE_CMP_SIG, NULL, 112, 10); } -static void *dilithium3_pss3072_gen_init(void *provctx, int selection) +static void *mldsa44_pss2048_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_3, - "dilithium3_pss3072", KEY_TYPE_CMP_SIG, 128, 10); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_44, + "mldsa44_pss2048", KEY_TYPE_CMP_SIG, 112, 10); } -static void *dilithium3_rsa3072_new_key(void *provctx) +static void *mldsa44_rsa2048_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_3, - "dilithium3_rsa3072", KEY_TYPE_CMP_SIG, NULL, 128, 11); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_44, + "mldsa44_rsa2048", KEY_TYPE_CMP_SIG, NULL, 112, 11); } -static void *dilithium3_rsa3072_gen_init(void *provctx, int selection) +static void *mldsa44_rsa2048_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_3, - "dilithium3_rsa3072", KEY_TYPE_CMP_SIG, 128, 11); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_44, + "mldsa44_rsa2048", KEY_TYPE_CMP_SIG, 112, 11); } -static void *dilithium3_p256_new_key(void *provctx) +static void *mldsa44_ed25519_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_3, - "dilithium3_p256", KEY_TYPE_CMP_SIG, NULL, 128, 12); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_44, + "mldsa44_ed25519", KEY_TYPE_CMP_SIG, NULL, 128, 12); } -static void *dilithium3_p256_gen_init(void *provctx, int selection) +static void *mldsa44_ed25519_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_3, - "dilithium3_p256", KEY_TYPE_CMP_SIG, 128, 12); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_44, + "mldsa44_ed25519", KEY_TYPE_CMP_SIG, 128, 12); } -static void *dilithium3_bp256_new_key(void *provctx) +static void *mldsa44_p256_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_3, - "dilithium3_bp256", KEY_TYPE_CMP_SIG, NULL, 256, 13); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_44, + "mldsa44_p256", KEY_TYPE_CMP_SIG, NULL, 128, 13); } -static void *dilithium3_bp256_gen_init(void *provctx, int selection) +static void *mldsa44_p256_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_3, - "dilithium3_bp256", KEY_TYPE_CMP_SIG, 256, 13); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_44, + "mldsa44_p256", KEY_TYPE_CMP_SIG, 128, 13); } -static void *dilithium3_ed25519_new_key(void *provctx) +static void *mldsa44_bp256_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_3, - "dilithium3_ed25519", KEY_TYPE_CMP_SIG, NULL, 128, 14); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_44, + "mldsa44_bp256", KEY_TYPE_CMP_SIG, NULL, 256, 14); } -static void *dilithium3_ed25519_gen_init(void *provctx, int selection) +static void *mldsa44_bp256_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_3, - "dilithium3_ed25519", KEY_TYPE_CMP_SIG, 128, 14); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_44, + "mldsa44_bp256", KEY_TYPE_CMP_SIG, 256, 14); } -static void *dilithium5_new_key(void *provctx) +static void *mldsa65_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_5, - "dilithium5", KEY_TYPE_SIG, NULL, 256, 15); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_65, + "mldsa65", KEY_TYPE_SIG, NULL, 192, 15); } -static void *dilithium5_gen_init(void *provctx, int selection) +static void *mldsa65_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_5, - "dilithium5", 0, 256, 15); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_65, "mldsa65", + 0, 192, 15); } -static void *p521_dilithium5_new_key(void *provctx) +static void *p384_mldsa65_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_5, - "p521_dilithium5", KEY_TYPE_HYB_SIG, NULL, 256, 16); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_65, + "p384_mldsa65", KEY_TYPE_HYB_SIG, NULL, 192, 16); } -static void *p521_dilithium5_gen_init(void *provctx, int selection) +static void *p384_mldsa65_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_5, - "p521_dilithium5", KEY_TYPE_HYB_SIG, 256, 16); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_65, + "p384_mldsa65", KEY_TYPE_HYB_SIG, 192, 16); } -static void *dilithium5_p384_new_key(void *provctx) +static void *mldsa65_pss3072_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_5, - "dilithium5_p384", KEY_TYPE_CMP_SIG, NULL, 192, 17); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_65, + "mldsa65_pss3072", KEY_TYPE_CMP_SIG, NULL, 128, 17); } -static void *dilithium5_p384_gen_init(void *provctx, int selection) +static void *mldsa65_pss3072_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_5, - "dilithium5_p384", KEY_TYPE_CMP_SIG, 192, 17); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_65, + "mldsa65_pss3072", KEY_TYPE_CMP_SIG, 128, 17); } -static void *dilithium5_bp384_new_key(void *provctx) +static void *mldsa65_rsa3072_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_5, - "dilithium5_bp384", KEY_TYPE_CMP_SIG, NULL, 384, 18); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_65, + "mldsa65_rsa3072", KEY_TYPE_CMP_SIG, NULL, 128, 18); } -static void *dilithium5_bp384_gen_init(void *provctx, int selection) +static void *mldsa65_rsa3072_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_5, - "dilithium5_bp384", KEY_TYPE_CMP_SIG, 384, 18); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_65, + "mldsa65_rsa3072", KEY_TYPE_CMP_SIG, 128, 18); } -static void *dilithium5_ed448_new_key(void *provctx) +static void *mldsa65_p256_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_dilithium_5, - "dilithium5_ed448", KEY_TYPE_CMP_SIG, NULL, 192, 19); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_65, + "mldsa65_p256", KEY_TYPE_CMP_SIG, NULL, 128, 19); } -static void *dilithium5_ed448_gen_init(void *provctx, int selection) +static void *mldsa65_p256_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_dilithium_5, - "dilithium5_ed448", KEY_TYPE_CMP_SIG, 192, 19); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_65, + "mldsa65_p256", KEY_TYPE_CMP_SIG, 128, 19); } - -static void *mldsa44_new_key(void *provctx) +static void *mldsa65_bp256_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_44, - "mldsa44", KEY_TYPE_SIG, NULL, 128, 20); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_65, + "mldsa65_bp256", KEY_TYPE_CMP_SIG, NULL, 256, 20); } -static void *mldsa44_gen_init(void *provctx, int selection) +static void *mldsa65_bp256_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_44, "mldsa44", - 0, 128, 20); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_65, + "mldsa65_bp256", KEY_TYPE_CMP_SIG, 256, 20); } -static void *p256_mldsa44_new_key(void *provctx) +static void *mldsa65_ed25519_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_44, - "p256_mldsa44", KEY_TYPE_HYB_SIG, NULL, 128, 21); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_65, + "mldsa65_ed25519", KEY_TYPE_CMP_SIG, NULL, 128, 21); } -static void *p256_mldsa44_gen_init(void *provctx, int selection) +static void *mldsa65_ed25519_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_44, - "p256_mldsa44", KEY_TYPE_HYB_SIG, 128, 21); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_65, + "mldsa65_ed25519", KEY_TYPE_CMP_SIG, 128, 21); } -static void *rsa3072_mldsa44_new_key(void *provctx) +static void *mldsa87_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_44, - "rsa3072_mldsa44", KEY_TYPE_HYB_SIG, NULL, 128, 22); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_87, + "mldsa87", KEY_TYPE_SIG, NULL, 256, 22); } -static void *rsa3072_mldsa44_gen_init(void *provctx, int selection) +static void *mldsa87_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_44, - "rsa3072_mldsa44", KEY_TYPE_HYB_SIG, 128, 22); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_87, "mldsa87", + 0, 256, 22); } -static void *mldsa65_new_key(void *provctx) +static void *p521_mldsa87_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_65, - "mldsa65", KEY_TYPE_SIG, NULL, 192, 23); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_87, + "p521_mldsa87", KEY_TYPE_HYB_SIG, NULL, 256, 23); } -static void *mldsa65_gen_init(void *provctx, int selection) +static void *p521_mldsa87_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_65, "mldsa65", - 0, 192, 23); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_87, + "p521_mldsa87", KEY_TYPE_HYB_SIG, 256, 23); } -static void *p384_mldsa65_new_key(void *provctx) +static void *mldsa87_p384_new_key(void *provctx) { - return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_65, - "p384_mldsa65", KEY_TYPE_HYB_SIG, NULL, 192, 24); + return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_87, + "mldsa87_p384", KEY_TYPE_CMP_SIG, NULL, 192, 24); } -static void *p384_mldsa65_gen_init(void *provctx, int selection) +static void *mldsa87_p384_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_65, - "p384_mldsa65", KEY_TYPE_HYB_SIG, 192, 24); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_87, + "mldsa87_p384", KEY_TYPE_CMP_SIG, 192, 24); } -static void *mldsa87_new_key(void *provctx) +static void *mldsa87_bp384_new_key(void *provctx) { return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_87, - "mldsa87", KEY_TYPE_SIG, NULL, 256, 25); + "mldsa87_bp384", KEY_TYPE_CMP_SIG, NULL, 384, 25); } -static void *mldsa87_gen_init(void *provctx, int selection) +static void *mldsa87_bp384_gen_init(void *provctx, int selection) { - return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_87, "mldsa87", - 0, 256, 25); + return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_87, + "mldsa87_bp384", KEY_TYPE_CMP_SIG, 384, 25); } -static void *p521_mldsa87_new_key(void *provctx) +static void *mldsa87_ed448_new_key(void *provctx) { return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx), OQS_SIG_alg_ml_dsa_87, - "p521_mldsa87", KEY_TYPE_HYB_SIG, NULL, 256, 26); + "mldsa87_ed448", KEY_TYPE_CMP_SIG, NULL, 192, 26); } -static void *p521_mldsa87_gen_init(void *provctx, int selection) +static void *mldsa87_ed448_gen_init(void *provctx, int selection) { return oqsx_gen_init(provctx, selection, OQS_SIG_alg_ml_dsa_87, - "p521_mldsa87", KEY_TYPE_HYB_SIG, 256, 26); + "mldsa87_ed448", KEY_TYPE_CMP_SIG, 192, 26); } static void *falcon512_new_key(void *provctx) @@ -1283,30 +1283,30 @@ static void *rsa3072_sphincsshake128fsimple_gen_init(void *provctx, MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium2) MAKE_SIG_KEYMGMT_FUNCTIONS(p256_dilithium2) MAKE_SIG_KEYMGMT_FUNCTIONS(rsa3072_dilithium2) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium2_pss2048) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium2_rsa2048) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium2_ed25519) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium2_p256) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium2_bp256) MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium3) MAKE_SIG_KEYMGMT_FUNCTIONS(p384_dilithium3) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium3_pss3072) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium3_rsa3072) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium3_p256) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium3_bp256) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium3_ed25519) MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium5) MAKE_SIG_KEYMGMT_FUNCTIONS(p521_dilithium5) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium5_p384) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium5_bp384) -MAKE_SIG_KEYMGMT_FUNCTIONS(dilithium5_ed448) MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa44) MAKE_SIG_KEYMGMT_FUNCTIONS(p256_mldsa44) MAKE_SIG_KEYMGMT_FUNCTIONS(rsa3072_mldsa44) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa44_pss2048) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa44_rsa2048) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa44_ed25519) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa44_p256) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa44_bp256) MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa65) MAKE_SIG_KEYMGMT_FUNCTIONS(p384_mldsa65) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa65_pss3072) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa65_rsa3072) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa65_p256) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa65_bp256) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa65_ed25519) MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa87) MAKE_SIG_KEYMGMT_FUNCTIONS(p521_mldsa87) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa87_p384) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa87_bp384) +MAKE_SIG_KEYMGMT_FUNCTIONS(mldsa87_ed448) MAKE_SIG_KEYMGMT_FUNCTIONS(falcon512) MAKE_SIG_KEYMGMT_FUNCTIONS(p256_falcon512) MAKE_SIG_KEYMGMT_FUNCTIONS(rsa3072_falcon512) diff --git a/oqsprov/oqs_prov.h b/oqsprov/oqs_prov.h index 5b40fb5f..26daec72 100644 --- a/oqsprov/oqs_prov.h +++ b/oqsprov/oqs_prov.h @@ -1184,413 +1184,413 @@ extern const OSSL_DISPATCH extern const OSSL_DISPATCH oqs_SubjectPublicKeyInfo_der_to_rsa3072_dilithium2_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_pss2048_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_dilithium3_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_pss2048_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_dilithium3_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_pss2048_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_dilithium3_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_pss2048_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_dilithium3_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_pss2048_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_dilithium3_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_pss2048_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium2_pss2048_to_text_encoder_functions[]; + oqs_dilithium3_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_dilithium3_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium2_pss2048_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_dilithium3_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium2_pss2048_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_dilithium3_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_rsa2048_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_p384_dilithium3_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_rsa2048_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_p384_dilithium3_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_rsa2048_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_p384_dilithium3_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_rsa2048_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_p384_dilithium3_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_rsa2048_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_p384_dilithium3_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_rsa2048_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium2_rsa2048_to_text_encoder_functions[]; + oqs_p384_dilithium3_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_p384_dilithium3_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium2_rsa2048_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_p384_dilithium3_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium2_rsa2048_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_p384_dilithium3_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_ed25519_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_dilithium5_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_ed25519_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_dilithium5_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_ed25519_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_dilithium5_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_ed25519_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_dilithium5_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_ed25519_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_dilithium5_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_ed25519_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium2_ed25519_to_text_encoder_functions[]; + oqs_dilithium5_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_dilithium5_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium2_ed25519_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_dilithium5_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium2_ed25519_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_dilithium5_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_p256_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_p521_dilithium5_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_p256_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_p521_dilithium5_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_p256_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_p521_dilithium5_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_p256_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_p521_dilithium5_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_p256_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_p521_dilithium5_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_p256_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium2_p256_to_text_encoder_functions[]; + oqs_p521_dilithium5_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_p521_dilithium5_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium2_p256_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_p521_dilithium5_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium2_p256_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_p521_dilithium5_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_bp256_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa44_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_bp256_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa44_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_bp256_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa44_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_bp256_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa44_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_bp256_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa44_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium2_bp256_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium2_bp256_to_text_encoder_functions[]; + oqs_mldsa44_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa44_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium2_bp256_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa44_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium2_bp256_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa44_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_p256_mldsa44_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_p256_mldsa44_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_p256_mldsa44_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_p256_mldsa44_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_p256_mldsa44_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium3_to_text_encoder_functions[]; + oqs_p256_mldsa44_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_p256_mldsa44_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium3_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_p256_mldsa44_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium3_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_p256_mldsa44_decoder_functions[]; extern const OSSL_DISPATCH - oqs_p384_dilithium3_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_rsa3072_mldsa44_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p384_dilithium3_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_rsa3072_mldsa44_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p384_dilithium3_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_rsa3072_mldsa44_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p384_dilithium3_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_rsa3072_mldsa44_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p384_dilithium3_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_rsa3072_mldsa44_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p384_dilithium3_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_p384_dilithium3_to_text_encoder_functions[]; + oqs_rsa3072_mldsa44_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_rsa3072_mldsa44_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_p384_dilithium3_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_rsa3072_mldsa44_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_p384_dilithium3_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_rsa3072_mldsa44_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_pss3072_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa44_pss2048_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_pss3072_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa44_pss2048_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_pss3072_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa44_pss2048_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_pss3072_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa44_pss2048_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_pss3072_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa44_pss2048_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_pss3072_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium3_pss3072_to_text_encoder_functions[]; + oqs_mldsa44_pss2048_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa44_pss2048_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium3_pss3072_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa44_pss2048_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium3_pss3072_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa44_pss2048_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_rsa3072_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa44_rsa2048_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_rsa3072_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa44_rsa2048_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_rsa3072_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa44_rsa2048_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_rsa3072_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa44_rsa2048_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_rsa3072_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa44_rsa2048_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_rsa3072_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium3_rsa3072_to_text_encoder_functions[]; + oqs_mldsa44_rsa2048_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa44_rsa2048_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium3_rsa3072_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa44_rsa2048_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium3_rsa3072_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa44_rsa2048_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_p256_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa44_ed25519_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_p256_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa44_ed25519_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_p256_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa44_ed25519_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_p256_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa44_ed25519_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_p256_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa44_ed25519_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_p256_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium3_p256_to_text_encoder_functions[]; + oqs_mldsa44_ed25519_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa44_ed25519_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium3_p256_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa44_ed25519_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium3_p256_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa44_ed25519_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_bp256_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa44_p256_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_bp256_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa44_p256_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_bp256_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa44_p256_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_bp256_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa44_p256_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_bp256_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa44_p256_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_bp256_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium3_bp256_to_text_encoder_functions[]; + oqs_mldsa44_p256_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa44_p256_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium3_bp256_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa44_p256_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium3_bp256_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa44_p256_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_ed25519_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa44_bp256_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_ed25519_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa44_bp256_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_ed25519_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa44_bp256_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_ed25519_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa44_bp256_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_ed25519_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa44_bp256_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium3_ed25519_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium3_ed25519_to_text_encoder_functions[]; + oqs_mldsa44_bp256_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa44_bp256_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium3_ed25519_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa44_bp256_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium3_ed25519_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa44_bp256_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa65_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa65_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa65_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa65_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa65_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium5_to_text_encoder_functions[]; + oqs_mldsa65_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa65_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium5_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa65_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium5_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa65_decoder_functions[]; extern const OSSL_DISPATCH - oqs_p521_dilithium5_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_p384_mldsa65_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p521_dilithium5_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_p384_mldsa65_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p521_dilithium5_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_p384_mldsa65_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p521_dilithium5_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_p384_mldsa65_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p521_dilithium5_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_p384_mldsa65_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p521_dilithium5_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_p521_dilithium5_to_text_encoder_functions[]; + oqs_p384_mldsa65_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_p384_mldsa65_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_p521_dilithium5_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_p384_mldsa65_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_p521_dilithium5_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_p384_mldsa65_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_p384_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa65_pss3072_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_p384_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa65_pss3072_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_p384_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa65_pss3072_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_p384_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa65_pss3072_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_p384_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa65_pss3072_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_p384_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium5_p384_to_text_encoder_functions[]; + oqs_mldsa65_pss3072_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa65_pss3072_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium5_p384_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa65_pss3072_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium5_p384_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa65_pss3072_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_bp384_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa65_rsa3072_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_bp384_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa65_rsa3072_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_bp384_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa65_rsa3072_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_bp384_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa65_rsa3072_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_bp384_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa65_rsa3072_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_bp384_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium5_bp384_to_text_encoder_functions[]; + oqs_mldsa65_rsa3072_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa65_rsa3072_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium5_bp384_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa65_rsa3072_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium5_bp384_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa65_rsa3072_decoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_ed448_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa65_p256_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_ed448_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa65_p256_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_ed448_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa65_p256_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_ed448_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa65_p256_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_ed448_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa65_p256_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_dilithium5_ed448_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_dilithium5_ed448_to_text_encoder_functions[]; + oqs_mldsa65_p256_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa65_p256_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_dilithium5_ed448_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa65_p256_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_dilithium5_ed448_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa65_p256_decoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa44_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa65_bp256_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa44_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa65_bp256_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa44_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa65_bp256_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa44_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa65_bp256_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa44_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa65_bp256_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa44_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_mldsa44_to_text_encoder_functions[]; + oqs_mldsa65_bp256_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa65_bp256_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_mldsa44_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa65_bp256_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_mldsa44_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa65_bp256_decoder_functions[]; extern const OSSL_DISPATCH - oqs_p256_mldsa44_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa65_ed25519_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p256_mldsa44_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa65_ed25519_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p256_mldsa44_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa65_ed25519_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p256_mldsa44_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa65_ed25519_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p256_mldsa44_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa65_ed25519_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p256_mldsa44_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_p256_mldsa44_to_text_encoder_functions[]; + oqs_mldsa65_ed25519_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa65_ed25519_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_p256_mldsa44_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa65_ed25519_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_p256_mldsa44_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa65_ed25519_decoder_functions[]; extern const OSSL_DISPATCH - oqs_rsa3072_mldsa44_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa87_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_rsa3072_mldsa44_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa87_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_rsa3072_mldsa44_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa87_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_rsa3072_mldsa44_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa87_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_rsa3072_mldsa44_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa87_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_rsa3072_mldsa44_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_rsa3072_mldsa44_to_text_encoder_functions[]; + oqs_mldsa87_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa87_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_rsa3072_mldsa44_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa87_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_rsa3072_mldsa44_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa87_decoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa65_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_p521_mldsa87_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa65_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_p521_mldsa87_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa65_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_p521_mldsa87_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa65_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_p521_mldsa87_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa65_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_p521_mldsa87_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa65_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_mldsa65_to_text_encoder_functions[]; + oqs_p521_mldsa87_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_p521_mldsa87_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_mldsa65_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_p521_mldsa87_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_mldsa65_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_p521_mldsa87_decoder_functions[]; extern const OSSL_DISPATCH - oqs_p384_mldsa65_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa87_p384_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p384_mldsa65_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa87_p384_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p384_mldsa65_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa87_p384_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p384_mldsa65_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa87_p384_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p384_mldsa65_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa87_p384_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p384_mldsa65_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_p384_mldsa65_to_text_encoder_functions[]; + oqs_mldsa87_p384_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa87_p384_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_p384_mldsa65_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa87_p384_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_p384_mldsa65_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa87_p384_decoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa87_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa87_bp384_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa87_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa87_bp384_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa87_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa87_bp384_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa87_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa87_bp384_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa87_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa87_bp384_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_mldsa87_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_mldsa87_to_text_encoder_functions[]; + oqs_mldsa87_bp384_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa87_bp384_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_mldsa87_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa87_bp384_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_mldsa87_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa87_bp384_decoder_functions[]; extern const OSSL_DISPATCH - oqs_p521_mldsa87_to_PrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa87_ed448_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p521_mldsa87_to_PrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa87_ed448_to_PrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p521_mldsa87_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; + oqs_mldsa87_ed448_to_EncryptedPrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p521_mldsa87_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; + oqs_mldsa87_ed448_to_EncryptedPrivateKeyInfo_pem_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p521_mldsa87_to_SubjectPublicKeyInfo_der_encoder_functions[]; + oqs_mldsa87_ed448_to_SubjectPublicKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH - oqs_p521_mldsa87_to_SubjectPublicKeyInfo_pem_encoder_functions[]; -extern const OSSL_DISPATCH oqs_p521_mldsa87_to_text_encoder_functions[]; + oqs_mldsa87_ed448_to_SubjectPublicKeyInfo_pem_encoder_functions[]; +extern const OSSL_DISPATCH oqs_mldsa87_ed448_to_text_encoder_functions[]; extern const OSSL_DISPATCH - oqs_PrivateKeyInfo_der_to_p521_mldsa87_decoder_functions[]; + oqs_PrivateKeyInfo_der_to_mldsa87_ed448_decoder_functions[]; extern const OSSL_DISPATCH - oqs_SubjectPublicKeyInfo_der_to_p521_mldsa87_decoder_functions[]; + oqs_SubjectPublicKeyInfo_der_to_mldsa87_ed448_decoder_functions[]; extern const OSSL_DISPATCH oqs_falcon512_to_PrivateKeyInfo_der_encoder_functions[]; extern const OSSL_DISPATCH @@ -1977,30 +1977,30 @@ extern const OSSL_DISPATCH extern const OSSL_DISPATCH oqs_dilithium2_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_p256_dilithium2_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_rsa3072_dilithium2_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium2_pss2048_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium2_rsa2048_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium2_ed25519_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium2_p256_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium2_bp256_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_dilithium3_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_p384_dilithium3_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium3_pss3072_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium3_rsa3072_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium3_p256_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium3_bp256_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium3_ed25519_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_dilithium5_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_p521_dilithium5_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium5_p384_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium5_bp384_keymgmt_functions[]; -extern const OSSL_DISPATCH oqs_dilithium5_ed448_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_mldsa44_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_p256_mldsa44_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_rsa3072_mldsa44_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa44_pss2048_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa44_rsa2048_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa44_ed25519_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa44_p256_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa44_bp256_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_mldsa65_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_p384_mldsa65_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa65_pss3072_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa65_rsa3072_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa65_p256_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa65_bp256_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa65_ed25519_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_mldsa87_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_p521_mldsa87_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa87_p384_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa87_bp384_keymgmt_functions[]; +extern const OSSL_DISPATCH oqs_mldsa87_ed448_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_falcon512_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_p256_falcon512_keymgmt_functions[]; extern const OSSL_DISPATCH oqs_rsa3072_falcon512_keymgmt_functions[]; diff --git a/oqsprov/oqsdecoders.inc b/oqsprov/oqsdecoders.inc index eda81119..367ea14f 100644 --- a/oqsprov/oqsdecoders.inc +++ b/oqsprov/oqsdecoders.inc @@ -234,26 +234,6 @@ DECODER_w_structure("frodo640aes", der, PrivateKeyInfo, frodo640aes), rsa3072_dilithium2), DECODER_w_structure("rsa3072_dilithium2", der, SubjectPublicKeyInfo, rsa3072_dilithium2), - DECODER_w_structure("dilithium2_pss2048", der, PrivateKeyInfo, - dilithium2_pss2048), - DECODER_w_structure("dilithium2_pss2048", der, SubjectPublicKeyInfo, - dilithium2_pss2048), - DECODER_w_structure("dilithium2_rsa2048", der, PrivateKeyInfo, - dilithium2_rsa2048), - DECODER_w_structure("dilithium2_rsa2048", der, SubjectPublicKeyInfo, - dilithium2_rsa2048), - DECODER_w_structure("dilithium2_ed25519", der, PrivateKeyInfo, - dilithium2_ed25519), - DECODER_w_structure("dilithium2_ed25519", der, SubjectPublicKeyInfo, - dilithium2_ed25519), - DECODER_w_structure("dilithium2_p256", der, PrivateKeyInfo, - dilithium2_p256), - DECODER_w_structure("dilithium2_p256", der, SubjectPublicKeyInfo, - dilithium2_p256), - DECODER_w_structure("dilithium2_bp256", der, PrivateKeyInfo, - dilithium2_bp256), - DECODER_w_structure("dilithium2_bp256", der, SubjectPublicKeyInfo, - dilithium2_bp256), #endif #ifdef OQS_ENABLE_SIG_dilithium_3 DECODER_w_structure("dilithium3", der, PrivateKeyInfo, dilithium3), @@ -262,26 +242,6 @@ DECODER_w_structure("frodo640aes", der, PrivateKeyInfo, frodo640aes), p384_dilithium3), DECODER_w_structure("p384_dilithium3", der, SubjectPublicKeyInfo, p384_dilithium3), - DECODER_w_structure("dilithium3_pss3072", der, PrivateKeyInfo, - dilithium3_pss3072), - DECODER_w_structure("dilithium3_pss3072", der, SubjectPublicKeyInfo, - dilithium3_pss3072), - DECODER_w_structure("dilithium3_rsa3072", der, PrivateKeyInfo, - dilithium3_rsa3072), - DECODER_w_structure("dilithium3_rsa3072", der, SubjectPublicKeyInfo, - dilithium3_rsa3072), - DECODER_w_structure("dilithium3_p256", der, PrivateKeyInfo, - dilithium3_p256), - DECODER_w_structure("dilithium3_p256", der, SubjectPublicKeyInfo, - dilithium3_p256), - DECODER_w_structure("dilithium3_bp256", der, PrivateKeyInfo, - dilithium3_bp256), - DECODER_w_structure("dilithium3_bp256", der, SubjectPublicKeyInfo, - dilithium3_bp256), - DECODER_w_structure("dilithium3_ed25519", der, PrivateKeyInfo, - dilithium3_ed25519), - DECODER_w_structure("dilithium3_ed25519", der, SubjectPublicKeyInfo, - dilithium3_ed25519), #endif #ifdef OQS_ENABLE_SIG_dilithium_5 DECODER_w_structure("dilithium5", der, PrivateKeyInfo, dilithium5), @@ -290,18 +250,6 @@ DECODER_w_structure("frodo640aes", der, PrivateKeyInfo, frodo640aes), p521_dilithium5), DECODER_w_structure("p521_dilithium5", der, SubjectPublicKeyInfo, p521_dilithium5), - DECODER_w_structure("dilithium5_p384", der, PrivateKeyInfo, - dilithium5_p384), - DECODER_w_structure("dilithium5_p384", der, SubjectPublicKeyInfo, - dilithium5_p384), - DECODER_w_structure("dilithium5_bp384", der, PrivateKeyInfo, - dilithium5_bp384), - DECODER_w_structure("dilithium5_bp384", der, SubjectPublicKeyInfo, - dilithium5_bp384), - DECODER_w_structure("dilithium5_ed448", der, PrivateKeyInfo, - dilithium5_ed448), - DECODER_w_structure("dilithium5_ed448", der, SubjectPublicKeyInfo, - dilithium5_ed448), #endif #ifdef OQS_ENABLE_SIG_ml_dsa_44 DECODER_w_structure("mldsa44", der, PrivateKeyInfo, mldsa44), @@ -313,6 +261,24 @@ DECODER_w_structure("frodo640aes", der, PrivateKeyInfo, frodo640aes), rsa3072_mldsa44), DECODER_w_structure("rsa3072_mldsa44", der, SubjectPublicKeyInfo, rsa3072_mldsa44), + DECODER_w_structure("mldsa44_pss2048", der, PrivateKeyInfo, + mldsa44_pss2048), + DECODER_w_structure("mldsa44_pss2048", der, SubjectPublicKeyInfo, + mldsa44_pss2048), + DECODER_w_structure("mldsa44_rsa2048", der, PrivateKeyInfo, + mldsa44_rsa2048), + DECODER_w_structure("mldsa44_rsa2048", der, SubjectPublicKeyInfo, + mldsa44_rsa2048), + DECODER_w_structure("mldsa44_ed25519", der, PrivateKeyInfo, + mldsa44_ed25519), + DECODER_w_structure("mldsa44_ed25519", der, SubjectPublicKeyInfo, + mldsa44_ed25519), + DECODER_w_structure("mldsa44_p256", der, PrivateKeyInfo, mldsa44_p256), + DECODER_w_structure("mldsa44_p256", der, SubjectPublicKeyInfo, + mldsa44_p256), + DECODER_w_structure("mldsa44_bp256", der, PrivateKeyInfo, mldsa44_bp256), + DECODER_w_structure("mldsa44_bp256", der, SubjectPublicKeyInfo, + mldsa44_bp256), #endif #ifdef OQS_ENABLE_SIG_ml_dsa_65 DECODER_w_structure("mldsa65", der, PrivateKeyInfo, mldsa65), @@ -320,6 +286,24 @@ DECODER_w_structure("frodo640aes", der, PrivateKeyInfo, frodo640aes), DECODER_w_structure("p384_mldsa65", der, PrivateKeyInfo, p384_mldsa65), DECODER_w_structure("p384_mldsa65", der, SubjectPublicKeyInfo, p384_mldsa65), + DECODER_w_structure("mldsa65_pss3072", der, PrivateKeyInfo, + mldsa65_pss3072), + DECODER_w_structure("mldsa65_pss3072", der, SubjectPublicKeyInfo, + mldsa65_pss3072), + DECODER_w_structure("mldsa65_rsa3072", der, PrivateKeyInfo, + mldsa65_rsa3072), + DECODER_w_structure("mldsa65_rsa3072", der, SubjectPublicKeyInfo, + mldsa65_rsa3072), + DECODER_w_structure("mldsa65_p256", der, PrivateKeyInfo, mldsa65_p256), + DECODER_w_structure("mldsa65_p256", der, SubjectPublicKeyInfo, + mldsa65_p256), + DECODER_w_structure("mldsa65_bp256", der, PrivateKeyInfo, mldsa65_bp256), + DECODER_w_structure("mldsa65_bp256", der, SubjectPublicKeyInfo, + mldsa65_bp256), + DECODER_w_structure("mldsa65_ed25519", der, PrivateKeyInfo, + mldsa65_ed25519), + DECODER_w_structure("mldsa65_ed25519", der, SubjectPublicKeyInfo, + mldsa65_ed25519), #endif #ifdef OQS_ENABLE_SIG_ml_dsa_87 DECODER_w_structure("mldsa87", der, PrivateKeyInfo, mldsa87), @@ -327,6 +311,15 @@ DECODER_w_structure("frodo640aes", der, PrivateKeyInfo, frodo640aes), DECODER_w_structure("p521_mldsa87", der, PrivateKeyInfo, p521_mldsa87), DECODER_w_structure("p521_mldsa87", der, SubjectPublicKeyInfo, p521_mldsa87), + DECODER_w_structure("mldsa87_p384", der, PrivateKeyInfo, mldsa87_p384), + DECODER_w_structure("mldsa87_p384", der, SubjectPublicKeyInfo, + mldsa87_p384), + DECODER_w_structure("mldsa87_bp384", der, PrivateKeyInfo, mldsa87_bp384), + DECODER_w_structure("mldsa87_bp384", der, SubjectPublicKeyInfo, + mldsa87_bp384), + DECODER_w_structure("mldsa87_ed448", der, PrivateKeyInfo, mldsa87_ed448), + DECODER_w_structure("mldsa87_ed448", der, SubjectPublicKeyInfo, + mldsa87_ed448), #endif #ifdef OQS_ENABLE_SIG_falcon_512 DECODER_w_structure("falcon512", der, PrivateKeyInfo, falcon512), diff --git a/oqsprov/oqsencoders.inc b/oqsprov/oqsencoders.inc index 08442ac5..1a6d3e8b 100644 --- a/oqsprov/oqsencoders.inc +++ b/oqsprov/oqsencoders.inc @@ -686,71 +686,6 @@ ENCODER_w_structure("frodo640aes", frodo640aes, der, PrivateKeyInfo), ENCODER_w_structure("rsa3072_dilithium2", rsa3072_dilithium2, pem, SubjectPublicKeyInfo), ENCODER_TEXT("rsa3072_dilithium2", rsa3072_dilithium2), - ENCODER_w_structure("dilithium2_pss2048", dilithium2_pss2048, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium2_pss2048", dilithium2_pss2048, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium2_pss2048", dilithium2_pss2048, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium2_pss2048", dilithium2_pss2048, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium2_pss2048", dilithium2_pss2048, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium2_pss2048", dilithium2_pss2048, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium2_pss2048", dilithium2_pss2048), - ENCODER_w_structure("dilithium2_rsa2048", dilithium2_rsa2048, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium2_rsa2048", dilithium2_rsa2048, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium2_rsa2048", dilithium2_rsa2048, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium2_rsa2048", dilithium2_rsa2048, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium2_rsa2048", dilithium2_rsa2048, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium2_rsa2048", dilithium2_rsa2048, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium2_rsa2048", dilithium2_rsa2048), - ENCODER_w_structure("dilithium2_ed25519", dilithium2_ed25519, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium2_ed25519", dilithium2_ed25519, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium2_ed25519", dilithium2_ed25519, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium2_ed25519", dilithium2_ed25519, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium2_ed25519", dilithium2_ed25519, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium2_ed25519", dilithium2_ed25519, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium2_ed25519", dilithium2_ed25519), - ENCODER_w_structure("dilithium2_p256", dilithium2_p256, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium2_p256", dilithium2_p256, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium2_p256", dilithium2_p256, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium2_p256", dilithium2_p256, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium2_p256", dilithium2_p256, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium2_p256", dilithium2_p256, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium2_p256", dilithium2_p256), - ENCODER_w_structure("dilithium2_bp256", dilithium2_bp256, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium2_bp256", dilithium2_bp256, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium2_bp256", dilithium2_bp256, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium2_bp256", dilithium2_bp256, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium2_bp256", dilithium2_bp256, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium2_bp256", dilithium2_bp256, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium2_bp256", dilithium2_bp256), #endif #ifdef OQS_ENABLE_SIG_dilithium_3 ENCODER_w_structure("dilithium3", dilithium3, der, PrivateKeyInfo), @@ -773,71 +708,6 @@ ENCODER_w_structure("frodo640aes", frodo640aes, der, PrivateKeyInfo), ENCODER_w_structure("p384_dilithium3", p384_dilithium3, pem, SubjectPublicKeyInfo), ENCODER_TEXT("p384_dilithium3", p384_dilithium3), - ENCODER_w_structure("dilithium3_pss3072", dilithium3_pss3072, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium3_pss3072", dilithium3_pss3072, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium3_pss3072", dilithium3_pss3072, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium3_pss3072", dilithium3_pss3072, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium3_pss3072", dilithium3_pss3072, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium3_pss3072", dilithium3_pss3072, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium3_pss3072", dilithium3_pss3072), - ENCODER_w_structure("dilithium3_rsa3072", dilithium3_rsa3072, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium3_rsa3072", dilithium3_rsa3072, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium3_rsa3072", dilithium3_rsa3072, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium3_rsa3072", dilithium3_rsa3072, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium3_rsa3072", dilithium3_rsa3072, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium3_rsa3072", dilithium3_rsa3072, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium3_rsa3072", dilithium3_rsa3072), - ENCODER_w_structure("dilithium3_p256", dilithium3_p256, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium3_p256", dilithium3_p256, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium3_p256", dilithium3_p256, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium3_p256", dilithium3_p256, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium3_p256", dilithium3_p256, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium3_p256", dilithium3_p256, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium3_p256", dilithium3_p256), - ENCODER_w_structure("dilithium3_bp256", dilithium3_bp256, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium3_bp256", dilithium3_bp256, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium3_bp256", dilithium3_bp256, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium3_bp256", dilithium3_bp256, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium3_bp256", dilithium3_bp256, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium3_bp256", dilithium3_bp256, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium3_bp256", dilithium3_bp256), - ENCODER_w_structure("dilithium3_ed25519", dilithium3_ed25519, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium3_ed25519", dilithium3_ed25519, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium3_ed25519", dilithium3_ed25519, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium3_ed25519", dilithium3_ed25519, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium3_ed25519", dilithium3_ed25519, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium3_ed25519", dilithium3_ed25519, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium3_ed25519", dilithium3_ed25519), #endif #ifdef OQS_ENABLE_SIG_dilithium_5 ENCODER_w_structure("dilithium5", dilithium5, der, PrivateKeyInfo), @@ -860,45 +730,6 @@ ENCODER_w_structure("frodo640aes", frodo640aes, der, PrivateKeyInfo), ENCODER_w_structure("p521_dilithium5", p521_dilithium5, pem, SubjectPublicKeyInfo), ENCODER_TEXT("p521_dilithium5", p521_dilithium5), - ENCODER_w_structure("dilithium5_p384", dilithium5_p384, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium5_p384", dilithium5_p384, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium5_p384", dilithium5_p384, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium5_p384", dilithium5_p384, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium5_p384", dilithium5_p384, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium5_p384", dilithium5_p384, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium5_p384", dilithium5_p384), - ENCODER_w_structure("dilithium5_bp384", dilithium5_bp384, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium5_bp384", dilithium5_bp384, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium5_bp384", dilithium5_bp384, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium5_bp384", dilithium5_bp384, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium5_bp384", dilithium5_bp384, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium5_bp384", dilithium5_bp384, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium5_bp384", dilithium5_bp384), - ENCODER_w_structure("dilithium5_ed448", dilithium5_ed448, der, - PrivateKeyInfo), - ENCODER_w_structure("dilithium5_ed448", dilithium5_ed448, pem, - PrivateKeyInfo), - ENCODER_w_structure("dilithium5_ed448", dilithium5_ed448, der, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium5_ed448", dilithium5_ed448, pem, - EncryptedPrivateKeyInfo), - ENCODER_w_structure("dilithium5_ed448", dilithium5_ed448, der, - SubjectPublicKeyInfo), - ENCODER_w_structure("dilithium5_ed448", dilithium5_ed448, pem, - SubjectPublicKeyInfo), - ENCODER_TEXT("dilithium5_ed448", dilithium5_ed448), #endif #ifdef OQS_ENABLE_SIG_ml_dsa_44 ENCODER_w_structure("mldsa44", mldsa44, der, PrivateKeyInfo), @@ -932,6 +763,67 @@ ENCODER_w_structure("frodo640aes", frodo640aes, der, PrivateKeyInfo), ENCODER_w_structure("rsa3072_mldsa44", rsa3072_mldsa44, pem, SubjectPublicKeyInfo), ENCODER_TEXT("rsa3072_mldsa44", rsa3072_mldsa44), + ENCODER_w_structure("mldsa44_pss2048", mldsa44_pss2048, der, + PrivateKeyInfo), + ENCODER_w_structure("mldsa44_pss2048", mldsa44_pss2048, pem, + PrivateKeyInfo), + ENCODER_w_structure("mldsa44_pss2048", mldsa44_pss2048, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa44_pss2048", mldsa44_pss2048, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa44_pss2048", mldsa44_pss2048, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa44_pss2048", mldsa44_pss2048, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa44_pss2048", mldsa44_pss2048), + ENCODER_w_structure("mldsa44_rsa2048", mldsa44_rsa2048, der, + PrivateKeyInfo), + ENCODER_w_structure("mldsa44_rsa2048", mldsa44_rsa2048, pem, + PrivateKeyInfo), + ENCODER_w_structure("mldsa44_rsa2048", mldsa44_rsa2048, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa44_rsa2048", mldsa44_rsa2048, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa44_rsa2048", mldsa44_rsa2048, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa44_rsa2048", mldsa44_rsa2048, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa44_rsa2048", mldsa44_rsa2048), + ENCODER_w_structure("mldsa44_ed25519", mldsa44_ed25519, der, + PrivateKeyInfo), + ENCODER_w_structure("mldsa44_ed25519", mldsa44_ed25519, pem, + PrivateKeyInfo), + ENCODER_w_structure("mldsa44_ed25519", mldsa44_ed25519, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa44_ed25519", mldsa44_ed25519, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa44_ed25519", mldsa44_ed25519, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa44_ed25519", mldsa44_ed25519, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa44_ed25519", mldsa44_ed25519), + ENCODER_w_structure("mldsa44_p256", mldsa44_p256, der, PrivateKeyInfo), + ENCODER_w_structure("mldsa44_p256", mldsa44_p256, pem, PrivateKeyInfo), + ENCODER_w_structure("mldsa44_p256", mldsa44_p256, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa44_p256", mldsa44_p256, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa44_p256", mldsa44_p256, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa44_p256", mldsa44_p256, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa44_p256", mldsa44_p256), + ENCODER_w_structure("mldsa44_bp256", mldsa44_bp256, der, PrivateKeyInfo), + ENCODER_w_structure("mldsa44_bp256", mldsa44_bp256, pem, PrivateKeyInfo), + ENCODER_w_structure("mldsa44_bp256", mldsa44_bp256, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa44_bp256", mldsa44_bp256, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa44_bp256", mldsa44_bp256, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa44_bp256", mldsa44_bp256, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa44_bp256", mldsa44_bp256), #endif #ifdef OQS_ENABLE_SIG_ml_dsa_65 ENCODER_w_structure("mldsa65", mldsa65, der, PrivateKeyInfo), @@ -952,6 +844,67 @@ ENCODER_w_structure("frodo640aes", frodo640aes, der, PrivateKeyInfo), ENCODER_w_structure("p384_mldsa65", p384_mldsa65, pem, SubjectPublicKeyInfo), ENCODER_TEXT("p384_mldsa65", p384_mldsa65), + ENCODER_w_structure("mldsa65_pss3072", mldsa65_pss3072, der, + PrivateKeyInfo), + ENCODER_w_structure("mldsa65_pss3072", mldsa65_pss3072, pem, + PrivateKeyInfo), + ENCODER_w_structure("mldsa65_pss3072", mldsa65_pss3072, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa65_pss3072", mldsa65_pss3072, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa65_pss3072", mldsa65_pss3072, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa65_pss3072", mldsa65_pss3072, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa65_pss3072", mldsa65_pss3072), + ENCODER_w_structure("mldsa65_rsa3072", mldsa65_rsa3072, der, + PrivateKeyInfo), + ENCODER_w_structure("mldsa65_rsa3072", mldsa65_rsa3072, pem, + PrivateKeyInfo), + ENCODER_w_structure("mldsa65_rsa3072", mldsa65_rsa3072, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa65_rsa3072", mldsa65_rsa3072, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa65_rsa3072", mldsa65_rsa3072, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa65_rsa3072", mldsa65_rsa3072, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa65_rsa3072", mldsa65_rsa3072), + ENCODER_w_structure("mldsa65_p256", mldsa65_p256, der, PrivateKeyInfo), + ENCODER_w_structure("mldsa65_p256", mldsa65_p256, pem, PrivateKeyInfo), + ENCODER_w_structure("mldsa65_p256", mldsa65_p256, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa65_p256", mldsa65_p256, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa65_p256", mldsa65_p256, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa65_p256", mldsa65_p256, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa65_p256", mldsa65_p256), + ENCODER_w_structure("mldsa65_bp256", mldsa65_bp256, der, PrivateKeyInfo), + ENCODER_w_structure("mldsa65_bp256", mldsa65_bp256, pem, PrivateKeyInfo), + ENCODER_w_structure("mldsa65_bp256", mldsa65_bp256, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa65_bp256", mldsa65_bp256, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa65_bp256", mldsa65_bp256, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa65_bp256", mldsa65_bp256, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa65_bp256", mldsa65_bp256), + ENCODER_w_structure("mldsa65_ed25519", mldsa65_ed25519, der, + PrivateKeyInfo), + ENCODER_w_structure("mldsa65_ed25519", mldsa65_ed25519, pem, + PrivateKeyInfo), + ENCODER_w_structure("mldsa65_ed25519", mldsa65_ed25519, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa65_ed25519", mldsa65_ed25519, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa65_ed25519", mldsa65_ed25519, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa65_ed25519", mldsa65_ed25519, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa65_ed25519", mldsa65_ed25519), #endif #ifdef OQS_ENABLE_SIG_ml_dsa_87 ENCODER_w_structure("mldsa87", mldsa87, der, PrivateKeyInfo), @@ -972,6 +925,39 @@ ENCODER_w_structure("frodo640aes", frodo640aes, der, PrivateKeyInfo), ENCODER_w_structure("p521_mldsa87", p521_mldsa87, pem, SubjectPublicKeyInfo), ENCODER_TEXT("p521_mldsa87", p521_mldsa87), + ENCODER_w_structure("mldsa87_p384", mldsa87_p384, der, PrivateKeyInfo), + ENCODER_w_structure("mldsa87_p384", mldsa87_p384, pem, PrivateKeyInfo), + ENCODER_w_structure("mldsa87_p384", mldsa87_p384, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa87_p384", mldsa87_p384, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa87_p384", mldsa87_p384, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa87_p384", mldsa87_p384, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa87_p384", mldsa87_p384), + ENCODER_w_structure("mldsa87_bp384", mldsa87_bp384, der, PrivateKeyInfo), + ENCODER_w_structure("mldsa87_bp384", mldsa87_bp384, pem, PrivateKeyInfo), + ENCODER_w_structure("mldsa87_bp384", mldsa87_bp384, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa87_bp384", mldsa87_bp384, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa87_bp384", mldsa87_bp384, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa87_bp384", mldsa87_bp384, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa87_bp384", mldsa87_bp384), + ENCODER_w_structure("mldsa87_ed448", mldsa87_ed448, der, PrivateKeyInfo), + ENCODER_w_structure("mldsa87_ed448", mldsa87_ed448, pem, PrivateKeyInfo), + ENCODER_w_structure("mldsa87_ed448", mldsa87_ed448, der, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa87_ed448", mldsa87_ed448, pem, + EncryptedPrivateKeyInfo), + ENCODER_w_structure("mldsa87_ed448", mldsa87_ed448, der, + SubjectPublicKeyInfo), + ENCODER_w_structure("mldsa87_ed448", mldsa87_ed448, pem, + SubjectPublicKeyInfo), + ENCODER_TEXT("mldsa87_ed448", mldsa87_ed448), #endif #ifdef OQS_ENABLE_SIG_falcon_512 ENCODER_w_structure("falcon512", falcon512, der, PrivateKeyInfo), diff --git a/oqsprov/oqsprov.c b/oqsprov/oqsprov.c index f86c98c6..6e20b01b 100644 --- a/oqsprov/oqsprov.c +++ b/oqsprov/oqsprov.c @@ -170,54 +170,54 @@ const char *oqs_oid_alg_list[OQS_OID_CNT] = { "p256_dilithium2", "1.3.9999.2.7.2", "rsa3072_dilithium2", - "2.16.840.1.114027.80.8.1.1", - "dilithium2_pss2048", - "2.16.840.1.114027.80.8.1.2", - "dilithium2_rsa2048", - "2.16.840.1.114027.80.8.1.3", - "dilithium2_ed25519", - "2.16.840.1.114027.80.8.1.4", - "dilithium2_p256", - "2.16.840.1.114027.80.8.1.5", - "dilithium2_bp256", "1.3.6.1.4.1.2.267.7.6.5", "dilithium3", "1.3.9999.2.7.3", "p384_dilithium3", - "2.16.840.1.114027.80.8.1.6", - "dilithium3_pss3072", - "2.16.840.1.114027.80.8.1.7", - "dilithium3_rsa3072", - "2.16.840.1.114027.80.8.1.8", - "dilithium3_p256", - "2.16.840.1.114027.80.8.1.9", - "dilithium3_bp256", - "2.16.840.1.114027.80.8.1.10", - "dilithium3_ed25519", "1.3.6.1.4.1.2.267.7.8.7", "dilithium5", "1.3.9999.2.7.4", "p521_dilithium5", - "2.16.840.1.114027.80.8.1.11", - "dilithium5_p384", - "2.16.840.1.114027.80.8.1.12", - "dilithium5_bp384", - "2.16.840.1.114027.80.8.1.13", - "dilithium5_ed448", "1.3.6.1.4.1.2.267.12.4.4", "mldsa44", "1.3.9999.7.1", "p256_mldsa44", "1.3.9999.7.2", "rsa3072_mldsa44", + "2.16.840.1.114027.80.8.1.1", + "mldsa44_pss2048", + "2.16.840.1.114027.80.8.1.2", + "mldsa44_rsa2048", + "2.16.840.1.114027.80.8.1.3", + "mldsa44_ed25519", + "2.16.840.1.114027.80.8.1.4", + "mldsa44_p256", + "2.16.840.1.114027.80.8.1.5", + "mldsa44_bp256", "1.3.6.1.4.1.2.267.12.6.5", "mldsa65", "1.3.9999.7.3", "p384_mldsa65", + "2.16.840.1.114027.80.8.1.6", + "mldsa65_pss3072", + "2.16.840.1.114027.80.8.1.7", + "mldsa65_rsa3072", + "2.16.840.1.114027.80.8.1.8", + "mldsa65_p256", + "2.16.840.1.114027.80.8.1.9", + "mldsa65_bp256", + "2.16.840.1.114027.80.8.1.10", + "mldsa65_ed25519", "1.3.6.1.4.1.2.267.12.8.7", "mldsa87", "1.3.9999.7.4", "p521_mldsa87", + "2.16.840.1.114027.80.8.1.11", + "mldsa87_p384", + "2.16.840.1.114027.80.8.1.12", + "mldsa87_bp384", + "2.16.840.1.114027.80.8.1.13", + "mldsa87_ed448", "1.3.9999.3.6", "falcon512", "1.3.9999.3.7", @@ -495,118 +495,115 @@ int oqs_patch_encodings(void) if (getenv("OQS_ENCODING_RSA3072_DILITHIUM2_ALGNAME")) oqs_alg_encoding_list[5] = getenv("OQS_ENCODING_RSA3072_DILITHIUM2_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM2_PSS2048")) - oqs_alg_encoding_list[6] = getenv("OQS_ENCODING_DILITHIUM2_PSS2048"); - if (getenv("OQS_ENCODING_DILITHIUM2_PSS2048_ALGNAME")) - oqs_alg_encoding_list[7] - = getenv("OQS_ENCODING_DILITHIUM2_PSS2048_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM2_RSA2048")) - oqs_alg_encoding_list[8] = getenv("OQS_ENCODING_DILITHIUM2_RSA2048"); - if (getenv("OQS_ENCODING_DILITHIUM2_RSA2048_ALGNAME")) - oqs_alg_encoding_list[9] - = getenv("OQS_ENCODING_DILITHIUM2_RSA2048_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM2_ED25519")) - oqs_alg_encoding_list[10] = getenv("OQS_ENCODING_DILITHIUM2_ED25519"); - if (getenv("OQS_ENCODING_DILITHIUM2_ED25519_ALGNAME")) - oqs_alg_encoding_list[11] - = getenv("OQS_ENCODING_DILITHIUM2_ED25519_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM2_P256")) - oqs_alg_encoding_list[12] = getenv("OQS_ENCODING_DILITHIUM2_P256"); - if (getenv("OQS_ENCODING_DILITHIUM2_P256_ALGNAME")) - oqs_alg_encoding_list[13] - = getenv("OQS_ENCODING_DILITHIUM2_P256_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM2_BP256")) - oqs_alg_encoding_list[14] = getenv("OQS_ENCODING_DILITHIUM2_BP256"); - if (getenv("OQS_ENCODING_DILITHIUM2_BP256_ALGNAME")) - oqs_alg_encoding_list[15] - = getenv("OQS_ENCODING_DILITHIUM2_BP256_ALGNAME"); if (getenv("OQS_ENCODING_DILITHIUM3")) - oqs_alg_encoding_list[16] = getenv("OQS_ENCODING_DILITHIUM3"); + oqs_alg_encoding_list[6] = getenv("OQS_ENCODING_DILITHIUM3"); if (getenv("OQS_ENCODING_DILITHIUM3_ALGNAME")) - oqs_alg_encoding_list[17] = getenv("OQS_ENCODING_DILITHIUM3_ALGNAME"); + oqs_alg_encoding_list[7] = getenv("OQS_ENCODING_DILITHIUM3_ALGNAME"); if (getenv("OQS_ENCODING_P384_DILITHIUM3")) - oqs_alg_encoding_list[18] = getenv("OQS_ENCODING_P384_DILITHIUM3"); + oqs_alg_encoding_list[8] = getenv("OQS_ENCODING_P384_DILITHIUM3"); if (getenv("OQS_ENCODING_P384_DILITHIUM3_ALGNAME")) - oqs_alg_encoding_list[19] + oqs_alg_encoding_list[9] = getenv("OQS_ENCODING_P384_DILITHIUM3_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM3_PSS3072")) - oqs_alg_encoding_list[20] = getenv("OQS_ENCODING_DILITHIUM3_PSS3072"); - if (getenv("OQS_ENCODING_DILITHIUM3_PSS3072_ALGNAME")) - oqs_alg_encoding_list[21] - = getenv("OQS_ENCODING_DILITHIUM3_PSS3072_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM3_RSA3072")) - oqs_alg_encoding_list[22] = getenv("OQS_ENCODING_DILITHIUM3_RSA3072"); - if (getenv("OQS_ENCODING_DILITHIUM3_RSA3072_ALGNAME")) - oqs_alg_encoding_list[23] - = getenv("OQS_ENCODING_DILITHIUM3_RSA3072_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM3_P256")) - oqs_alg_encoding_list[24] = getenv("OQS_ENCODING_DILITHIUM3_P256"); - if (getenv("OQS_ENCODING_DILITHIUM3_P256_ALGNAME")) - oqs_alg_encoding_list[25] - = getenv("OQS_ENCODING_DILITHIUM3_P256_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM3_BP256")) - oqs_alg_encoding_list[26] = getenv("OQS_ENCODING_DILITHIUM3_BP256"); - if (getenv("OQS_ENCODING_DILITHIUM3_BP256_ALGNAME")) - oqs_alg_encoding_list[27] - = getenv("OQS_ENCODING_DILITHIUM3_BP256_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM3_ED25519")) - oqs_alg_encoding_list[28] = getenv("OQS_ENCODING_DILITHIUM3_ED25519"); - if (getenv("OQS_ENCODING_DILITHIUM3_ED25519_ALGNAME")) - oqs_alg_encoding_list[29] - = getenv("OQS_ENCODING_DILITHIUM3_ED25519_ALGNAME"); if (getenv("OQS_ENCODING_DILITHIUM5")) - oqs_alg_encoding_list[30] = getenv("OQS_ENCODING_DILITHIUM5"); + oqs_alg_encoding_list[10] = getenv("OQS_ENCODING_DILITHIUM5"); if (getenv("OQS_ENCODING_DILITHIUM5_ALGNAME")) - oqs_alg_encoding_list[31] = getenv("OQS_ENCODING_DILITHIUM5_ALGNAME"); + oqs_alg_encoding_list[11] = getenv("OQS_ENCODING_DILITHIUM5_ALGNAME"); if (getenv("OQS_ENCODING_P521_DILITHIUM5")) - oqs_alg_encoding_list[32] = getenv("OQS_ENCODING_P521_DILITHIUM5"); + oqs_alg_encoding_list[12] = getenv("OQS_ENCODING_P521_DILITHIUM5"); if (getenv("OQS_ENCODING_P521_DILITHIUM5_ALGNAME")) - oqs_alg_encoding_list[33] + oqs_alg_encoding_list[13] = getenv("OQS_ENCODING_P521_DILITHIUM5_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM5_P384")) - oqs_alg_encoding_list[34] = getenv("OQS_ENCODING_DILITHIUM5_P384"); - if (getenv("OQS_ENCODING_DILITHIUM5_P384_ALGNAME")) - oqs_alg_encoding_list[35] - = getenv("OQS_ENCODING_DILITHIUM5_P384_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM5_BP384")) - oqs_alg_encoding_list[36] = getenv("OQS_ENCODING_DILITHIUM5_BP384"); - if (getenv("OQS_ENCODING_DILITHIUM5_BP384_ALGNAME")) - oqs_alg_encoding_list[37] - = getenv("OQS_ENCODING_DILITHIUM5_BP384_ALGNAME"); - if (getenv("OQS_ENCODING_DILITHIUM5_ED448")) - oqs_alg_encoding_list[38] = getenv("OQS_ENCODING_DILITHIUM5_ED448"); - if (getenv("OQS_ENCODING_DILITHIUM5_ED448_ALGNAME")) - oqs_alg_encoding_list[39] - = getenv("OQS_ENCODING_DILITHIUM5_ED448_ALGNAME"); if (getenv("OQS_ENCODING_MLDSA44")) - oqs_alg_encoding_list[40] = getenv("OQS_ENCODING_MLDSA44"); + oqs_alg_encoding_list[14] = getenv("OQS_ENCODING_MLDSA44"); if (getenv("OQS_ENCODING_MLDSA44_ALGNAME")) - oqs_alg_encoding_list[41] = getenv("OQS_ENCODING_MLDSA44_ALGNAME"); + oqs_alg_encoding_list[15] = getenv("OQS_ENCODING_MLDSA44_ALGNAME"); if (getenv("OQS_ENCODING_P256_MLDSA44")) - oqs_alg_encoding_list[42] = getenv("OQS_ENCODING_P256_MLDSA44"); + oqs_alg_encoding_list[16] = getenv("OQS_ENCODING_P256_MLDSA44"); if (getenv("OQS_ENCODING_P256_MLDSA44_ALGNAME")) - oqs_alg_encoding_list[43] = getenv("OQS_ENCODING_P256_MLDSA44_ALGNAME"); + oqs_alg_encoding_list[17] = getenv("OQS_ENCODING_P256_MLDSA44_ALGNAME"); if (getenv("OQS_ENCODING_RSA3072_MLDSA44")) - oqs_alg_encoding_list[44] = getenv("OQS_ENCODING_RSA3072_MLDSA44"); + oqs_alg_encoding_list[18] = getenv("OQS_ENCODING_RSA3072_MLDSA44"); if (getenv("OQS_ENCODING_RSA3072_MLDSA44_ALGNAME")) - oqs_alg_encoding_list[45] + oqs_alg_encoding_list[19] = getenv("OQS_ENCODING_RSA3072_MLDSA44_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA44_PSS2048")) + oqs_alg_encoding_list[20] = getenv("OQS_ENCODING_MLDSA44_PSS2048"); + if (getenv("OQS_ENCODING_MLDSA44_PSS2048_ALGNAME")) + oqs_alg_encoding_list[21] + = getenv("OQS_ENCODING_MLDSA44_PSS2048_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA44_RSA2048")) + oqs_alg_encoding_list[22] = getenv("OQS_ENCODING_MLDSA44_RSA2048"); + if (getenv("OQS_ENCODING_MLDSA44_RSA2048_ALGNAME")) + oqs_alg_encoding_list[23] + = getenv("OQS_ENCODING_MLDSA44_RSA2048_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA44_ED25519")) + oqs_alg_encoding_list[24] = getenv("OQS_ENCODING_MLDSA44_ED25519"); + if (getenv("OQS_ENCODING_MLDSA44_ED25519_ALGNAME")) + oqs_alg_encoding_list[25] + = getenv("OQS_ENCODING_MLDSA44_ED25519_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA44_P256")) + oqs_alg_encoding_list[26] = getenv("OQS_ENCODING_MLDSA44_P256"); + if (getenv("OQS_ENCODING_MLDSA44_P256_ALGNAME")) + oqs_alg_encoding_list[27] = getenv("OQS_ENCODING_MLDSA44_P256_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA44_BP256")) + oqs_alg_encoding_list[28] = getenv("OQS_ENCODING_MLDSA44_BP256"); + if (getenv("OQS_ENCODING_MLDSA44_BP256_ALGNAME")) + oqs_alg_encoding_list[29] + = getenv("OQS_ENCODING_MLDSA44_BP256_ALGNAME"); if (getenv("OQS_ENCODING_MLDSA65")) - oqs_alg_encoding_list[46] = getenv("OQS_ENCODING_MLDSA65"); + oqs_alg_encoding_list[30] = getenv("OQS_ENCODING_MLDSA65"); if (getenv("OQS_ENCODING_MLDSA65_ALGNAME")) - oqs_alg_encoding_list[47] = getenv("OQS_ENCODING_MLDSA65_ALGNAME"); + oqs_alg_encoding_list[31] = getenv("OQS_ENCODING_MLDSA65_ALGNAME"); if (getenv("OQS_ENCODING_P384_MLDSA65")) - oqs_alg_encoding_list[48] = getenv("OQS_ENCODING_P384_MLDSA65"); + oqs_alg_encoding_list[32] = getenv("OQS_ENCODING_P384_MLDSA65"); if (getenv("OQS_ENCODING_P384_MLDSA65_ALGNAME")) - oqs_alg_encoding_list[49] = getenv("OQS_ENCODING_P384_MLDSA65_ALGNAME"); + oqs_alg_encoding_list[33] = getenv("OQS_ENCODING_P384_MLDSA65_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA65_PSS3072")) + oqs_alg_encoding_list[34] = getenv("OQS_ENCODING_MLDSA65_PSS3072"); + if (getenv("OQS_ENCODING_MLDSA65_PSS3072_ALGNAME")) + oqs_alg_encoding_list[35] + = getenv("OQS_ENCODING_MLDSA65_PSS3072_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA65_RSA3072")) + oqs_alg_encoding_list[36] = getenv("OQS_ENCODING_MLDSA65_RSA3072"); + if (getenv("OQS_ENCODING_MLDSA65_RSA3072_ALGNAME")) + oqs_alg_encoding_list[37] + = getenv("OQS_ENCODING_MLDSA65_RSA3072_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA65_P256")) + oqs_alg_encoding_list[38] = getenv("OQS_ENCODING_MLDSA65_P256"); + if (getenv("OQS_ENCODING_MLDSA65_P256_ALGNAME")) + oqs_alg_encoding_list[39] = getenv("OQS_ENCODING_MLDSA65_P256_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA65_BP256")) + oqs_alg_encoding_list[40] = getenv("OQS_ENCODING_MLDSA65_BP256"); + if (getenv("OQS_ENCODING_MLDSA65_BP256_ALGNAME")) + oqs_alg_encoding_list[41] + = getenv("OQS_ENCODING_MLDSA65_BP256_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA65_ED25519")) + oqs_alg_encoding_list[42] = getenv("OQS_ENCODING_MLDSA65_ED25519"); + if (getenv("OQS_ENCODING_MLDSA65_ED25519_ALGNAME")) + oqs_alg_encoding_list[43] + = getenv("OQS_ENCODING_MLDSA65_ED25519_ALGNAME"); if (getenv("OQS_ENCODING_MLDSA87")) - oqs_alg_encoding_list[50] = getenv("OQS_ENCODING_MLDSA87"); + oqs_alg_encoding_list[44] = getenv("OQS_ENCODING_MLDSA87"); if (getenv("OQS_ENCODING_MLDSA87_ALGNAME")) - oqs_alg_encoding_list[51] = getenv("OQS_ENCODING_MLDSA87_ALGNAME"); + oqs_alg_encoding_list[45] = getenv("OQS_ENCODING_MLDSA87_ALGNAME"); if (getenv("OQS_ENCODING_P521_MLDSA87")) - oqs_alg_encoding_list[52] = getenv("OQS_ENCODING_P521_MLDSA87"); + oqs_alg_encoding_list[46] = getenv("OQS_ENCODING_P521_MLDSA87"); if (getenv("OQS_ENCODING_P521_MLDSA87_ALGNAME")) - oqs_alg_encoding_list[53] = getenv("OQS_ENCODING_P521_MLDSA87_ALGNAME"); + oqs_alg_encoding_list[47] = getenv("OQS_ENCODING_P521_MLDSA87_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA87_P384")) + oqs_alg_encoding_list[48] = getenv("OQS_ENCODING_MLDSA87_P384"); + if (getenv("OQS_ENCODING_MLDSA87_P384_ALGNAME")) + oqs_alg_encoding_list[49] = getenv("OQS_ENCODING_MLDSA87_P384_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA87_BP384")) + oqs_alg_encoding_list[50] = getenv("OQS_ENCODING_MLDSA87_BP384"); + if (getenv("OQS_ENCODING_MLDSA87_BP384_ALGNAME")) + oqs_alg_encoding_list[51] + = getenv("OQS_ENCODING_MLDSA87_BP384_ALGNAME"); + if (getenv("OQS_ENCODING_MLDSA87_ED448")) + oqs_alg_encoding_list[52] = getenv("OQS_ENCODING_MLDSA87_ED448"); + if (getenv("OQS_ENCODING_MLDSA87_ED448_ALGNAME")) + oqs_alg_encoding_list[53] + = getenv("OQS_ENCODING_MLDSA87_ED448_ALGNAME"); if (getenv("OQS_ENCODING_FALCON512")) oqs_alg_encoding_list[54] = getenv("OQS_ENCODING_FALCON512"); if (getenv("OQS_ENCODING_FALCON512_ALGNAME")) @@ -759,40 +756,40 @@ static const OSSL_ALGORITHM oqsprovider_signatures[] = { SIGALG("dilithium2", 128, oqs_signature_functions), SIGALG("p256_dilithium2", 128, oqs_signature_functions), SIGALG("rsa3072_dilithium2", 128, oqs_signature_functions), - SIGALG("dilithium2_pss2048", 112, oqs_signature_functions), - SIGALG("dilithium2_rsa2048", 112, oqs_signature_functions), - SIGALG("dilithium2_ed25519", 128, oqs_signature_functions), - SIGALG("dilithium2_p256", 128, oqs_signature_functions), - SIGALG("dilithium2_bp256", 256, oqs_signature_functions), #endif #ifdef OQS_ENABLE_SIG_dilithium_3 SIGALG("dilithium3", 192, oqs_signature_functions), SIGALG("p384_dilithium3", 192, oqs_signature_functions), - SIGALG("dilithium3_pss3072", 128, oqs_signature_functions), - SIGALG("dilithium3_rsa3072", 128, oqs_signature_functions), - SIGALG("dilithium3_p256", 128, oqs_signature_functions), - SIGALG("dilithium3_bp256", 256, oqs_signature_functions), - SIGALG("dilithium3_ed25519", 128, oqs_signature_functions), #endif #ifdef OQS_ENABLE_SIG_dilithium_5 SIGALG("dilithium5", 256, oqs_signature_functions), SIGALG("p521_dilithium5", 256, oqs_signature_functions), - SIGALG("dilithium5_p384", 192, oqs_signature_functions), - SIGALG("dilithium5_bp384", 384, oqs_signature_functions), - SIGALG("dilithium5_ed448", 192, oqs_signature_functions), #endif #ifdef OQS_ENABLE_SIG_ml_dsa_44 SIGALG("mldsa44", 128, oqs_signature_functions), SIGALG("p256_mldsa44", 128, oqs_signature_functions), SIGALG("rsa3072_mldsa44", 128, oqs_signature_functions), + SIGALG("mldsa44_pss2048", 112, oqs_signature_functions), + SIGALG("mldsa44_rsa2048", 112, oqs_signature_functions), + SIGALG("mldsa44_ed25519", 128, oqs_signature_functions), + SIGALG("mldsa44_p256", 128, oqs_signature_functions), + SIGALG("mldsa44_bp256", 256, oqs_signature_functions), #endif #ifdef OQS_ENABLE_SIG_ml_dsa_65 SIGALG("mldsa65", 192, oqs_signature_functions), SIGALG("p384_mldsa65", 192, oqs_signature_functions), + SIGALG("mldsa65_pss3072", 128, oqs_signature_functions), + SIGALG("mldsa65_rsa3072", 128, oqs_signature_functions), + SIGALG("mldsa65_p256", 128, oqs_signature_functions), + SIGALG("mldsa65_bp256", 256, oqs_signature_functions), + SIGALG("mldsa65_ed25519", 128, oqs_signature_functions), #endif #ifdef OQS_ENABLE_SIG_ml_dsa_87 SIGALG("mldsa87", 256, oqs_signature_functions), SIGALG("p521_mldsa87", 256, oqs_signature_functions), + SIGALG("mldsa87_p384", 192, oqs_signature_functions), + SIGALG("mldsa87_bp384", 384, oqs_signature_functions), + SIGALG("mldsa87_ed448", 192, oqs_signature_functions), #endif #ifdef OQS_ENABLE_SIG_falcon_512 SIGALG("falcon512", 128, oqs_signature_functions), @@ -932,40 +929,40 @@ static const OSSL_ALGORITHM oqsprovider_keymgmt[] SIGALG("dilithium2", 128, oqs_dilithium2_keymgmt_functions), SIGALG("p256_dilithium2", 128, oqs_p256_dilithium2_keymgmt_functions), SIGALG("rsa3072_dilithium2", 128, oqs_rsa3072_dilithium2_keymgmt_functions), - SIGALG("dilithium2_pss2048", 112, oqs_dilithium2_pss2048_keymgmt_functions), - SIGALG("dilithium2_rsa2048", 112, oqs_dilithium2_rsa2048_keymgmt_functions), - SIGALG("dilithium2_ed25519", 128, oqs_dilithium2_ed25519_keymgmt_functions), - SIGALG("dilithium2_p256", 128, oqs_dilithium2_p256_keymgmt_functions), - SIGALG("dilithium2_bp256", 256, oqs_dilithium2_bp256_keymgmt_functions), #endif #ifdef OQS_ENABLE_SIG_dilithium_3 SIGALG("dilithium3", 192, oqs_dilithium3_keymgmt_functions), SIGALG("p384_dilithium3", 192, oqs_p384_dilithium3_keymgmt_functions), - SIGALG("dilithium3_pss3072", 128, oqs_dilithium3_pss3072_keymgmt_functions), - SIGALG("dilithium3_rsa3072", 128, oqs_dilithium3_rsa3072_keymgmt_functions), - SIGALG("dilithium3_p256", 128, oqs_dilithium3_p256_keymgmt_functions), - SIGALG("dilithium3_bp256", 256, oqs_dilithium3_bp256_keymgmt_functions), - SIGALG("dilithium3_ed25519", 128, oqs_dilithium3_ed25519_keymgmt_functions), #endif #ifdef OQS_ENABLE_SIG_dilithium_5 SIGALG("dilithium5", 256, oqs_dilithium5_keymgmt_functions), SIGALG("p521_dilithium5", 256, oqs_p521_dilithium5_keymgmt_functions), - SIGALG("dilithium5_p384", 192, oqs_dilithium5_p384_keymgmt_functions), - SIGALG("dilithium5_bp384", 384, oqs_dilithium5_bp384_keymgmt_functions), - SIGALG("dilithium5_ed448", 192, oqs_dilithium5_ed448_keymgmt_functions), #endif #ifdef OQS_ENABLE_SIG_ml_dsa_44 SIGALG("mldsa44", 128, oqs_mldsa44_keymgmt_functions), SIGALG("p256_mldsa44", 128, oqs_p256_mldsa44_keymgmt_functions), SIGALG("rsa3072_mldsa44", 128, oqs_rsa3072_mldsa44_keymgmt_functions), + SIGALG("mldsa44_pss2048", 112, oqs_mldsa44_pss2048_keymgmt_functions), + SIGALG("mldsa44_rsa2048", 112, oqs_mldsa44_rsa2048_keymgmt_functions), + SIGALG("mldsa44_ed25519", 128, oqs_mldsa44_ed25519_keymgmt_functions), + SIGALG("mldsa44_p256", 128, oqs_mldsa44_p256_keymgmt_functions), + SIGALG("mldsa44_bp256", 256, oqs_mldsa44_bp256_keymgmt_functions), #endif #ifdef OQS_ENABLE_SIG_ml_dsa_65 SIGALG("mldsa65", 192, oqs_mldsa65_keymgmt_functions), SIGALG("p384_mldsa65", 192, oqs_p384_mldsa65_keymgmt_functions), + SIGALG("mldsa65_pss3072", 128, oqs_mldsa65_pss3072_keymgmt_functions), + SIGALG("mldsa65_rsa3072", 128, oqs_mldsa65_rsa3072_keymgmt_functions), + SIGALG("mldsa65_p256", 128, oqs_mldsa65_p256_keymgmt_functions), + SIGALG("mldsa65_bp256", 256, oqs_mldsa65_bp256_keymgmt_functions), + SIGALG("mldsa65_ed25519", 128, oqs_mldsa65_ed25519_keymgmt_functions), #endif #ifdef OQS_ENABLE_SIG_ml_dsa_87 SIGALG("mldsa87", 256, oqs_mldsa87_keymgmt_functions), SIGALG("p521_mldsa87", 256, oqs_p521_mldsa87_keymgmt_functions), + SIGALG("mldsa87_p384", 192, oqs_mldsa87_p384_keymgmt_functions), + SIGALG("mldsa87_bp384", 384, oqs_mldsa87_bp384_keymgmt_functions), + SIGALG("mldsa87_ed448", 192, oqs_mldsa87_ed448_keymgmt_functions), #endif #ifdef OQS_ENABLE_SIG_falcon_512 SIGALG("falcon512", 128, oqs_falcon512_keymgmt_functions), diff --git a/oqsprov/oqsprov_keys.c b/oqsprov/oqsprov_keys.c index 4277fee1..8b584e4d 100644 --- a/oqsprov/oqsprov_keys.c +++ b/oqsprov/oqsprov_keys.c @@ -129,30 +129,30 @@ static oqs_nid_name_t nid_names[NID_TABLE_LEN] = { {0, "dilithium2", OQS_SIG_alg_dilithium_2, KEY_TYPE_SIG, 128}, {0, "p256_dilithium2", OQS_SIG_alg_dilithium_2, KEY_TYPE_HYB_SIG, 128}, {0, "rsa3072_dilithium2", OQS_SIG_alg_dilithium_2, KEY_TYPE_HYB_SIG, 128}, - {0, "dilithium2_pss2048", OQS_SIG_alg_dilithium_2, KEY_TYPE_CMP_SIG, 112}, - {0, "dilithium2_rsa2048", OQS_SIG_alg_dilithium_2, KEY_TYPE_CMP_SIG, 112}, - {0, "dilithium2_ed25519", OQS_SIG_alg_dilithium_2, KEY_TYPE_CMP_SIG, 128}, - {0, "dilithium2_p256", OQS_SIG_alg_dilithium_2, KEY_TYPE_CMP_SIG, 128}, - {0, "dilithium2_bp256", OQS_SIG_alg_dilithium_2, KEY_TYPE_CMP_SIG, 256}, {0, "dilithium3", OQS_SIG_alg_dilithium_3, KEY_TYPE_SIG, 192}, {0, "p384_dilithium3", OQS_SIG_alg_dilithium_3, KEY_TYPE_HYB_SIG, 192}, - {0, "dilithium3_pss3072", OQS_SIG_alg_dilithium_3, KEY_TYPE_CMP_SIG, 128}, - {0, "dilithium3_rsa3072", OQS_SIG_alg_dilithium_3, KEY_TYPE_CMP_SIG, 128}, - {0, "dilithium3_p256", OQS_SIG_alg_dilithium_3, KEY_TYPE_CMP_SIG, 128}, - {0, "dilithium3_bp256", OQS_SIG_alg_dilithium_3, KEY_TYPE_CMP_SIG, 256}, - {0, "dilithium3_ed25519", OQS_SIG_alg_dilithium_3, KEY_TYPE_CMP_SIG, 128}, {0, "dilithium5", OQS_SIG_alg_dilithium_5, KEY_TYPE_SIG, 256}, {0, "p521_dilithium5", OQS_SIG_alg_dilithium_5, KEY_TYPE_HYB_SIG, 256}, - {0, "dilithium5_p384", OQS_SIG_alg_dilithium_5, KEY_TYPE_CMP_SIG, 192}, - {0, "dilithium5_bp384", OQS_SIG_alg_dilithium_5, KEY_TYPE_CMP_SIG, 384}, - {0, "dilithium5_ed448", OQS_SIG_alg_dilithium_5, KEY_TYPE_CMP_SIG, 192}, {0, "mldsa44", OQS_SIG_alg_ml_dsa_44, KEY_TYPE_SIG, 128}, {0, "p256_mldsa44", OQS_SIG_alg_ml_dsa_44, KEY_TYPE_HYB_SIG, 128}, {0, "rsa3072_mldsa44", OQS_SIG_alg_ml_dsa_44, KEY_TYPE_HYB_SIG, 128}, + {0, "mldsa44_pss2048", OQS_SIG_alg_ml_dsa_44, KEY_TYPE_CMP_SIG, 112}, + {0, "mldsa44_rsa2048", OQS_SIG_alg_ml_dsa_44, KEY_TYPE_CMP_SIG, 112}, + {0, "mldsa44_ed25519", OQS_SIG_alg_ml_dsa_44, KEY_TYPE_CMP_SIG, 128}, + {0, "mldsa44_p256", OQS_SIG_alg_ml_dsa_44, KEY_TYPE_CMP_SIG, 128}, + {0, "mldsa44_bp256", OQS_SIG_alg_ml_dsa_44, KEY_TYPE_CMP_SIG, 256}, {0, "mldsa65", OQS_SIG_alg_ml_dsa_65, KEY_TYPE_SIG, 192}, {0, "p384_mldsa65", OQS_SIG_alg_ml_dsa_65, KEY_TYPE_HYB_SIG, 192}, + {0, "mldsa65_pss3072", OQS_SIG_alg_ml_dsa_65, KEY_TYPE_CMP_SIG, 128}, + {0, "mldsa65_rsa3072", OQS_SIG_alg_ml_dsa_65, KEY_TYPE_CMP_SIG, 128}, + {0, "mldsa65_p256", OQS_SIG_alg_ml_dsa_65, KEY_TYPE_CMP_SIG, 128}, + {0, "mldsa65_bp256", OQS_SIG_alg_ml_dsa_65, KEY_TYPE_CMP_SIG, 256}, + {0, "mldsa65_ed25519", OQS_SIG_alg_ml_dsa_65, KEY_TYPE_CMP_SIG, 128}, {0, "mldsa87", OQS_SIG_alg_ml_dsa_87, KEY_TYPE_SIG, 256}, {0, "p521_mldsa87", OQS_SIG_alg_ml_dsa_87, KEY_TYPE_HYB_SIG, 256}, + {0, "mldsa87_p384", OQS_SIG_alg_ml_dsa_87, KEY_TYPE_CMP_SIG, 192}, + {0, "mldsa87_bp384", OQS_SIG_alg_ml_dsa_87, KEY_TYPE_CMP_SIG, 384}, + {0, "mldsa87_ed448", OQS_SIG_alg_ml_dsa_87, KEY_TYPE_CMP_SIG, 192}, {0, "falcon512", OQS_SIG_alg_falcon_512, KEY_TYPE_SIG, 128}, {0, "p256_falcon512", OQS_SIG_alg_falcon_512, KEY_TYPE_HYB_SIG, 128}, {0, "rsa3072_falcon512", OQS_SIG_alg_falcon_512, KEY_TYPE_HYB_SIG, 128}, diff --git a/scripts/common.py b/scripts/common.py index d146c8d3..7518854a 100644 --- a/scripts/common.py +++ b/scripts/common.py @@ -20,7 +20,7 @@ # post-quantum + classical signatures 'p256_dilithium2','rsa3072_dilithium2','p384_dilithium3','p521_dilithium5','p256_mldsa44','rsa3072_mldsa44','p384_mldsa65','p521_mldsa87','p256_falcon512','rsa3072_falcon512','p521_falcon1024','p256_sphincssha2128fsimple','rsa3072_sphincssha2128fsimple','p256_sphincssha2128ssimple','rsa3072_sphincssha2128ssimple','p384_sphincssha2192fsimple','p256_sphincsshake128fsimple','rsa3072_sphincsshake128fsimple', # post-quantum + classical signatures (COMPOSITE) - 'dilithium2_pss2048','dilithium2_rsa2048','dilithium2_ed25519','dilithium2_p256','dilithium2_bp256','dilithium3_pss3072','dilithium3_rsa3072','dilithium3_p256','dilithium3_bp256','dilithium3_ed25519','dilithium5_p384','dilithium5_bp384','dilithium5_ed448','falcon512_p256','falcon512_bp256','falcon512_ed25519',##### OQS_TEMPLATE_FRAGMENT_SIG_ALGS_END + 'mldsa44_pss2048','mldsa44_rsa2048','mldsa44_ed25519','mldsa44_p256','mldsa44_bp256','mldsa65_pss3072','mldsa65_rsa3072','mldsa65_p256','mldsa65_bp256','mldsa65_ed25519','mldsa87_p384','mldsa87_bp384','mldsa87_ed448','falcon512_p256','falcon512_bp256','falcon512_ed25519',##### OQS_TEMPLATE_FRAGMENT_SIG_ALGS_END ] SERVER_START_ATTEMPTS = 10