Skip to content

Commit

Permalink
Merge CROSS branch (PR #461)
Browse files Browse the repository at this point in the history
commit 7754b08
Author: rtjk <[email protected]>
Date:   Tue Aug 27 04:36:34 2024 +0200

    updated codeowners and contributors
    Signed-off-by: rtjk <[email protected]>

commit d1b29f4
Author: rtjk <[email protected]>
Date:   Tue Aug 27 04:14:22 2024 +0200

    disabled CROSSrsdp256balanced because it (also) is too large for TLS
    Signed-off-by: rtjk <[email protected]>

commit 008df36
Author: rtjk <[email protected]>
Date:   Thu Aug 22 12:17:22 2024 +0200

    format code
    Signed-off-by: rtjk <[email protected]>

commit e988f78
Author: rtjk <[email protected]>
Date:   Thu Aug 22 11:49:15 2024 +0200

    disabled CROSSrsdp256fast because it's too large for TLS
    Signed-off-by: rtjk <[email protected]>

commit 77c6818
Author: rtjk <[email protected]>
Date:   Mon Aug 19 13:39:39 2024 +0200

    format code
    Signed-off-by: rtjk <[email protected]>

commit 65d1eb2
Author: rtjk <[email protected]>
Date:   Mon Aug 19 13:29:46 2024 +0200

    re-run generate.py
    Signed-off-by: rtjk <[email protected]>

commit 45e961e
Author: rtjk <[email protected]>
Date:   Mon Aug 19 11:58:28 2024 +0200

    fromat code
    Signed-off-by: rtjk <[email protected]>

commit 3b08dde
Author: rtjk <[email protected]>
Date:   Tue Aug 13 02:11:50 2024 +0200

    switched to official OIDs, added @rtjk as code owner for generate.yml
    Signed-off-by: rtjk <[email protected]>

commit c8f447f
Author: rtjk <[email protected]>
Date:   Tue Aug 6 13:34:01 2024 +0200

    switched to free OIDs, temporarely enabled only one CROSS variant
    Signed-off-by: rtjk <[email protected]>

commit c032f53
Author: rtjk <[email protected]>
Date:   Mon Aug 5 11:15:40 2024 +0200

    run generate.py

    Signed-off-by: rtjk <[email protected]>

commit 532d2ae
Author: rtjk <[email protected]>
Date:   Mon Aug 5 11:14:07 2024 +0200

    added CROSS to generate.yml

    Signed-off-by: rtjk <[email protected]>
  • Loading branch information
SWilson4 committed Sep 26, 2024
1 parent ea7d18d commit c951f62
Show file tree
Hide file tree
Showing 15 changed files with 259 additions and 7 deletions.
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

* @baentsch
/oqsprov/oqs_hyb_kem.c @bhess
/oqs-template/generate.yml @baentsch @bhess @feventura
/oqs-template/generate.yml @baentsch @bhess @feventura @alexrow
/CMakeLists.txt @baentsch @thb-sb
/.circleci/config.yml @baentsch @thb-sb
/.github/workflows @baentsch @thb-sb @jplomas
Expand Down
32 changes: 32 additions & 0 deletions ALGORITHMS.md
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,22 @@ As standardization for these algorithms within TLS is not done, all TLS code poi
| p384_mayo3 | 0xfef4 |Yes| OQS_CODEPOINT_P384_MAYO3
| mayo5 | 0xfef1 |Yes| OQS_CODEPOINT_MAYO5
| p521_mayo5 | 0xfef5 |Yes| OQS_CODEPOINT_P521_MAYO5
| CROSSrsdp128balanced | 0xfef6 |Yes| OQS_CODEPOINT_CROSSRSDP128BALANCED
| CROSSrsdp128fast | 0xfef7 |No| OQS_CODEPOINT_CROSSRSDP128FAST
| CROSSrsdp128small | 0xfef8 |No| OQS_CODEPOINT_CROSSRSDP128SMALL
| CROSSrsdp192balanced | 0xfef9 |No| OQS_CODEPOINT_CROSSRSDP192BALANCED
| CROSSrsdp192fast | 0xfefa |No| OQS_CODEPOINT_CROSSRSDP192FAST
| CROSSrsdp192small | 0xfefb |No| OQS_CODEPOINT_CROSSRSDP192SMALL
| CROSSrsdp256small | 0xfefc |No| OQS_CODEPOINT_CROSSRSDP256SMALL
| CROSSrsdpg128balanced | 0xfefd |No| OQS_CODEPOINT_CROSSRSDPG128BALANCED
| CROSSrsdpg128fast | 0xfefe |No| OQS_CODEPOINT_CROSSRSDPG128FAST
| CROSSrsdpg128small | 0xfeff |No| OQS_CODEPOINT_CROSSRSDPG128SMALL
| CROSSrsdpg192balanced | 0xff00 |No| OQS_CODEPOINT_CROSSRSDPG192BALANCED
| CROSSrsdpg192fast | 0xff01 |No| OQS_CODEPOINT_CROSSRSDPG192FAST
| CROSSrsdpg192small | 0xff02 |No| OQS_CODEPOINT_CROSSRSDPG192SMALL
| CROSSrsdpg256balanced | 0xff03 |No| OQS_CODEPOINT_CROSSRSDPG256BALANCED
| CROSSrsdpg256fast | 0xff04 |No| OQS_CODEPOINT_CROSSRSDPG256FAST
| CROSSrsdpg256small | 0xff05 |No| OQS_CODEPOINT_CROSSRSDPG256SMALL
<!--- OQS_TEMPLATE_FRAGMENT_IDS_END -->

Changing code points
Expand Down Expand Up @@ -223,6 +239,22 @@ adapting the OIDs of all supported signature algorithms as per the table below.
| p384_mayo3 | 1.3.9999.8.3.2 |Yes| OQS_OID_P384_MAYO3
| mayo5 | 1.3.9999.8.5.1 |Yes| OQS_OID_MAYO5
| p521_mayo5 | 1.3.9999.8.5.2 |Yes| OQS_OID_P521_MAYO5
| CROSSrsdp128balanced | 1.3.6.1.4.1.62245.2.1.1 |Yes| OQS_OID_CROSSRSDP128BALANCED
| CROSSrsdp128fast | 1.3.6.1.4.1.62245.2.1.2 |No| OQS_OID_CROSSRSDP128FAST
| CROSSrsdp128small | 1.3.6.1.4.1.62245.2.1.3 |No| OQS_OID_CROSSRSDP128SMALL
| CROSSrsdp192balanced | 1.3.6.1.4.1.62245.2.1.4 |No| OQS_OID_CROSSRSDP192BALANCED
| CROSSrsdp192fast | 1.3.6.1.4.1.62245.2.1.5 |No| OQS_OID_CROSSRSDP192FAST
| CROSSrsdp192small | 1.3.6.1.4.1.62245.2.1.6 |No| OQS_OID_CROSSRSDP192SMALL
| CROSSrsdp256small | 1.3.6.1.4.1.62245.2.1.9 |No| OQS_OID_CROSSRSDP256SMALL
| CROSSrsdpg128balanced | 1.3.6.1.4.1.62245.2.1.10 |No| OQS_OID_CROSSRSDPG128BALANCED
| CROSSrsdpg128fast | 1.3.6.1.4.1.62245.2.1.11 |No| OQS_OID_CROSSRSDPG128FAST
| CROSSrsdpg128small | 1.3.6.1.4.1.62245.2.1.12 |No| OQS_OID_CROSSRSDPG128SMALL
| CROSSrsdpg192balanced | 1.3.6.1.4.1.62245.2.1.13 |No| OQS_OID_CROSSRSDPG192BALANCED
| CROSSrsdpg192fast | 1.3.6.1.4.1.62245.2.1.14 |No| OQS_OID_CROSSRSDPG192FAST
| CROSSrsdpg192small | 1.3.6.1.4.1.62245.2.1.15 |No| OQS_OID_CROSSRSDPG192SMALL
| CROSSrsdpg256balanced | 1.3.6.1.4.1.62245.2.1.16 |No| OQS_OID_CROSSRSDPG256BALANCED
| CROSSrsdpg256fast | 1.3.6.1.4.1.62245.2.1.17 |No| OQS_OID_CROSSRSDPG256FAST
| CROSSrsdpg256small | 1.3.6.1.4.1.62245.2.1.18 |No| OQS_OID_CROSSRSDPG256SMALL

If [OQS_KEM_ENCODERS](CONFIGURE.md#OQS_KEM_ENCODERS) is enabled the following list is also available:

Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ This implementation makes available the following quantum safe algorithms:
- **SPHINCS-SHA2**:`sphincssha2128fsimple`\*, `p256_sphincssha2128fsimple`\*, `rsa3072_sphincssha2128fsimple`\*, `sphincssha2128ssimple`\*, `p256_sphincssha2128ssimple`\*, `rsa3072_sphincssha2128ssimple`\*, `sphincssha2192fsimple`\*, `p384_sphincssha2192fsimple`\*, `sphincssha2192ssimple`, `p384_sphincssha2192ssimple`, `sphincssha2256fsimple`, `p521_sphincssha2256fsimple`, `sphincssha2256ssimple`, `p521_sphincssha2256ssimple`
- **SPHINCS-SHAKE**:`sphincsshake128fsimple`\*, `p256_sphincsshake128fsimple`\*, `rsa3072_sphincsshake128fsimple`\*, `sphincsshake128ssimple`, `p256_sphincsshake128ssimple`, `rsa3072_sphincsshake128ssimple`, `sphincsshake192fsimple`, `p384_sphincsshake192fsimple`, `sphincsshake192ssimple`, `p384_sphincsshake192ssimple`, `sphincsshake256fsimple`, `p521_sphincsshake256fsimple`, `sphincsshake256ssimple`, `p521_sphincsshake256ssimple`
- **MAYO**:`mayo1`\*, `p256_mayo1`\*, `mayo2`\*, `p256_mayo2`\*, `mayo3`\*, `p384_mayo3`\*, `mayo5`\*, `p521_mayo5`\*
- **CROSS**:`CROSSrsdp128balanced`\*, `CROSSrsdp128fast`, `CROSSrsdp128small`, `CROSSrsdp192balanced`, `CROSSrsdp192fast`, `CROSSrsdp192small`, `CROSSrsdp256small`, `CROSSrsdpg128balanced`, `CROSSrsdpg128fast`, `CROSSrsdpg128small`, `CROSSrsdpg192balanced`, `CROSSrsdpg192fast`, `CROSSrsdpg192small`, `CROSSrsdpg256balanced`, `CROSSrsdpg256fast`, `CROSSrsdpg256small`

<!--- OQS_TEMPLATE_FRAGMENT_ALGS_END -->

Expand Down Expand Up @@ -204,6 +205,7 @@ Contributors to the `oqsprovider` include:
- Thomas Bailleux (many build, CI and usage improvements for different platforms)
- Felipe Ventura (composite sig integration and OID management)
- Iyán Méndez Veiga (PKCS#12 testing)
- Alessandro Barenghi (CROSS OIDs)

History
-------
Expand Down
126 changes: 125 additions & 1 deletion oqs-template/generate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -419,7 +419,7 @@ kem_nid_end: '0x0250'
kem_nid_hybrid_end: '0x2FFF'
# need to edit ssl_local.h macros IS_OQS_KEM_CURVEID and IS_OQS_KEM_HYBRID_CURVEID with the above _end values

# Next free signature ID: 0xfef6
# Next free signature ID: 0xff06
sigs:
# -
# iso (1)
Expand Down Expand Up @@ -1536,3 +1536,127 @@ sigs:
'pretty_name': 'ECDSA p521',
'oid': '1.3.9999.8.5.2',
'code_point': '0xfef5'}]
-
family: 'CROSS'
variants:
# RSDP 128
-
name: 'CROSSrsdp128balanced'
pretty_name: 'CROSS-rsdp-128-balanced'
oqs_meth: 'OQS_SIG_alg_cross_rsdp_128_balanced'
oid: '1.3.6.1.4.1.62245.2.1.1'
code_point: '0xfef6'
enable: true
-
name: 'CROSSrsdp128fast'
pretty_name: 'CROSS-rsdp-128-fast'
oqs_meth: 'OQS_SIG_alg_cross_rsdp_128_fast'
oid: '1.3.6.1.4.1.62245.2.1.2'
code_point: '0xfef7'
enable: false
-
name: 'CROSSrsdp128small'
pretty_name: 'CROSS-rsdp-128-small'
oqs_meth: 'OQS_SIG_alg_cross_rsdp_128_small'
oid: '1.3.6.1.4.1.62245.2.1.3'
code_point: '0xfef8'
enable: false
# RSDP 192
-
name: 'CROSSrsdp192balanced'
pretty_name: 'CROSS-rsdp-192-balanced'
oqs_meth: 'OQS_SIG_alg_cross_rsdp_192_balanced'
oid: '1.3.6.1.4.1.62245.2.1.4'
code_point: '0xfef9'
enable: false
-
name: 'CROSSrsdp192fast'
pretty_name: 'CROSS-rsdp-192-fast'
oqs_meth: 'OQS_SIG_alg_cross_rsdp_192_fast'
oid: '1.3.6.1.4.1.62245.2.1.5'
code_point: '0xfefa'
enable: false
-
name: 'CROSSrsdp192small'
pretty_name: 'CROSS-rsdp-192-small'
oqs_meth: 'OQS_SIG_alg_cross_rsdp_192_small'
oid: '1.3.6.1.4.1.62245.2.1.6'
code_point: '0xfefb'
enable: false
# RSDP 256
# CROSS variants rsdp-256-balanced and rsdp-256-fast are missing because
# they produce certificates that are larger than the maximum size allowed
# by TLS 1.3 (RFC 8446 section B.3.3)
-
name: 'CROSSrsdp256small'
pretty_name: 'CROSS-rsdp-256-small'
oqs_meth: 'OQS_SIG_alg_cross_rsdp_256_small'
oid: '1.3.6.1.4.1.62245.2.1.9'
code_point: '0xfefc'
enable: false
# RSDPG 128
-
name: 'CROSSrsdpg128balanced'
pretty_name: 'CROSS-rsdpg-128-balanced'
oqs_meth: 'OQS_SIG_alg_cross_rsdpg_128_balanced'
oid: '1.3.6.1.4.1.62245.2.1.10'
code_point: '0xfefd'
enable: false
-
name: 'CROSSrsdpg128fast'
pretty_name: 'CROSS-rsdpg-128-fast'
oqs_meth: 'OQS_SIG_alg_cross_rsdpg_128_fast'
oid: '1.3.6.1.4.1.62245.2.1.11'
code_point: '0xfefe'
enable: false
-
name: 'CROSSrsdpg128small'
pretty_name: 'CROSS-rsdpg-128-small'
oqs_meth: 'OQS_SIG_alg_cross_rsdpg_128_small'
oid: '1.3.6.1.4.1.62245.2.1.12'
code_point: '0xfeff'
enable: false
# RSDPG 192
-
name: 'CROSSrsdpg192balanced'
pretty_name: 'CROSS-rsdpg-192-balanced'
oqs_meth: 'OQS_SIG_alg_cross_rsdpg_192_balanced'
oid: '1.3.6.1.4.1.62245.2.1.13'
code_point: '0xff00'
enable: false
-
name: 'CROSSrsdpg192fast'
pretty_name: 'CROSS-rsdpg-192-fast'
oqs_meth: 'OQS_SIG_alg_cross_rsdpg_192_fast'
oid: '1.3.6.1.4.1.62245.2.1.14'
code_point: '0xff01'
enable: false
-
name: 'CROSSrsdpg192small'
pretty_name: 'CROSS-rsdpg-192-small'
oqs_meth: 'OQS_SIG_alg_cross_rsdpg_192_small'
oid: '1.3.6.1.4.1.62245.2.1.15'
code_point: '0xff02'
enable: false
# RSDPG 256
-
name: 'CROSSrsdpg256balanced'
pretty_name: 'CROSS-rsdpg-256-balanced'
oqs_meth: 'OQS_SIG_alg_cross_rsdpg_256_balanced'
oid: '1.3.6.1.4.1.62245.2.1.16'
code_point: '0xff03'
enable: false
-
name: 'CROSSrsdpg256fast'
pretty_name: 'CROSS-rsdpg-256-fast'
oqs_meth: 'OQS_SIG_alg_cross_rsdpg_256_fast'
oid: '1.3.6.1.4.1.62245.2.1.17'
code_point: '0xff04'
enable: false
-
name: 'CROSSrsdpg256small'
pretty_name: 'CROSS-rsdpg-256-small'
oqs_meth: 'OQS_SIG_alg_cross_rsdpg_256_small'
oid: '1.3.6.1.4.1.62245.2.1.18'
code_point: '0xff05'
enable: false
16 changes: 16 additions & 0 deletions oqs-template/oqs-sig-info.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,21 @@
| Algorithm | Implementation Version | NIST round | Claimed NIST Level | Code Point | OID |
|:--------------------------------------------------|:------------------------------------------------|:-------------|---------------------:|:-------------|:-------------------------|
| CROSSrsdp128balanced | 1.2 + Keccak_x4 + PQClean fixes | 1 | 1 | 0xfef6 | 1.3.6.1.4.1.62245.2.1.1 |
| CROSSrsdp128fast | 1.2 + Keccak_x4 + PQClean fixes | 1 | 1 | 0xfef7 | 1.3.6.1.4.1.62245.2.1.2 |
| CROSSrsdp128small | 1.2 + Keccak_x4 + PQClean fixes | 1 | 1 | 0xfef8 | 1.3.6.1.4.1.62245.2.1.3 |
| CROSSrsdp192balanced | 1.2 + Keccak_x4 + PQClean fixes | 1 | 3 | 0xfef9 | 1.3.6.1.4.1.62245.2.1.4 |
| CROSSrsdp192fast | 1.2 + Keccak_x4 + PQClean fixes | 1 | 3 | 0xfefa | 1.3.6.1.4.1.62245.2.1.5 |
| CROSSrsdp192small | 1.2 + Keccak_x4 + PQClean fixes | 1 | 3 | 0xfefb | 1.3.6.1.4.1.62245.2.1.6 |
| CROSSrsdp256small | 1.2 + Keccak_x4 + PQClean fixes | 1 | 5 | 0xfefc | 1.3.6.1.4.1.62245.2.1.9 |
| CROSSrsdpg128balanced | 1.2 + Keccak_x4 + PQClean fixes | 1 | 1 | 0xfefd | 1.3.6.1.4.1.62245.2.1.10 |
| CROSSrsdpg128fast | 1.2 + Keccak_x4 + PQClean fixes | 1 | 1 | 0xfefe | 1.3.6.1.4.1.62245.2.1.11 |
| CROSSrsdpg128small | 1.2 + Keccak_x4 + PQClean fixes | 1 | 1 | 0xfeff | 1.3.6.1.4.1.62245.2.1.12 |
| CROSSrsdpg192balanced | 1.2 + Keccak_x4 + PQClean fixes | 1 | 3 | 0xff00 | 1.3.6.1.4.1.62245.2.1.13 |
| CROSSrsdpg192fast | 1.2 + Keccak_x4 + PQClean fixes | 1 | 3 | 0xff01 | 1.3.6.1.4.1.62245.2.1.14 |
| CROSSrsdpg192small | 1.2 + Keccak_x4 + PQClean fixes | 1 | 3 | 0xff02 | 1.3.6.1.4.1.62245.2.1.15 |
| CROSSrsdpg256balanced | 1.2 + Keccak_x4 + PQClean fixes | 1 | 5 | 0xff03 | 1.3.6.1.4.1.62245.2.1.16 |
| CROSSrsdpg256fast | 1.2 + Keccak_x4 + PQClean fixes | 1 | 5 | 0xff04 | 1.3.6.1.4.1.62245.2.1.17 |
| CROSSrsdpg256small | 1.2 + Keccak_x4 + PQClean fixes | 1 | 5 | 0xff05 | 1.3.6.1.4.1.62245.2.1.18 |
| dilithium2 | 3.1 | 3 | 2 | 0xfea0 | 1.3.6.1.4.1.2.267.7.4.4 |
| dilithium2 **hybrid with** p256 | 3.1 | 3 | 2 | 0xfea1 | 1.3.9999.2.7.1 |
| dilithium2 **hybrid with** rsa3072 | 3.1 | 3 | 2 | 0xfea2 | 1.3.9999.2.7.2 |
Expand Down
4 changes: 4 additions & 0 deletions oqsprov/oqs_decode_der2key.c
Original file line number Diff line number Diff line change
Expand Up @@ -819,4 +819,8 @@ MAKE_DECODER(, "mayo5", mayo5, oqsx, PrivateKeyInfo);
MAKE_DECODER(, "mayo5", mayo5, oqsx, SubjectPublicKeyInfo);
MAKE_DECODER(, "p521_mayo5", p521_mayo5, oqsx, PrivateKeyInfo);
MAKE_DECODER(, "p521_mayo5", p521_mayo5, oqsx, SubjectPublicKeyInfo);
MAKE_DECODER(, "CROSSrsdp128balanced", CROSSrsdp128balanced, oqsx,
PrivateKeyInfo);
MAKE_DECODER(, "CROSSrsdp128balanced", CROSSrsdp128balanced, oqsx,
SubjectPublicKeyInfo);
///// OQS_TEMPLATE_FRAGMENT_DECODER_MAKE_END
10 changes: 10 additions & 0 deletions oqsprov/oqs_encode_key2any.c
Original file line number Diff line number Diff line change
Expand Up @@ -1235,6 +1235,9 @@ static int oqsx_pki_priv_to_der(const void *vxkey, unsigned char **pder) {
#define p521_mayo5_evp_type 0
#define p521_mayo5_input_type "p521_mayo5"
#define p521_mayo5_pem_type "p521_mayo5"
#define CROSSrsdp128balanced_evp_type 0
#define CROSSrsdp128balanced_input_type "CROSSrsdp128balanced"
#define CROSSrsdp128balanced_pem_type "CROSSrsdp128balanced"
///// OQS_TEMPLATE_FRAGMENT_ENCODER_DEFINES_END

/* ---------------------------------------------------------------------- */
Expand Down Expand Up @@ -2670,4 +2673,11 @@ MAKE_ENCODER(, p521_mayo5, oqsx, PrivateKeyInfo, pem);
MAKE_ENCODER(, p521_mayo5, oqsx, SubjectPublicKeyInfo, der);
MAKE_ENCODER(, p521_mayo5, oqsx, SubjectPublicKeyInfo, pem);
MAKE_TEXT_ENCODER(, p521_mayo5);
MAKE_ENCODER(, CROSSrsdp128balanced, oqsx, EncryptedPrivateKeyInfo, der);
MAKE_ENCODER(, CROSSrsdp128balanced, oqsx, EncryptedPrivateKeyInfo, pem);
MAKE_ENCODER(, CROSSrsdp128balanced, oqsx, PrivateKeyInfo, der);
MAKE_ENCODER(, CROSSrsdp128balanced, oqsx, PrivateKeyInfo, pem);
MAKE_ENCODER(, CROSSrsdp128balanced, oqsx, SubjectPublicKeyInfo, der);
MAKE_ENCODER(, CROSSrsdp128balanced, oqsx, SubjectPublicKeyInfo, pem);
MAKE_TEXT_ENCODER(, CROSSrsdp128balanced);
///// OQS_TEMPLATE_FRAGMENT_ENCODER_MAKE_END
13 changes: 13 additions & 0 deletions oqsprov/oqs_kmgmt.c
Original file line number Diff line number Diff line change
Expand Up @@ -1208,6 +1208,18 @@ static void *p521_mayo5_gen_init(void *provctx, int selection) {
KEY_TYPE_HYB_SIG, 256, 55);
}

static void *CROSSrsdp128balanced_new_key(void *provctx) {
return oqsx_key_new(PROV_OQS_LIBCTX_OF(provctx),
OQS_SIG_alg_cross_rsdp_128_balanced,
"CROSSrsdp128balanced", KEY_TYPE_SIG, NULL, 128, 56);
}

static void *CROSSrsdp128balanced_gen_init(void *provctx, int selection) {
return oqsx_gen_init(provctx, selection,
OQS_SIG_alg_cross_rsdp_128_balanced,
"CROSSrsdp128balanced", 0, 128, 56);
}

///// OQS_TEMPLATE_FRAGMENT_KEYMGMT_CONSTRUCTORS_END

#define MAKE_SIG_KEYMGMT_FUNCTIONS(alg) \
Expand Down Expand Up @@ -1407,6 +1419,7 @@ MAKE_SIG_KEYMGMT_FUNCTIONS(mayo3)
MAKE_SIG_KEYMGMT_FUNCTIONS(p384_mayo3)
MAKE_SIG_KEYMGMT_FUNCTIONS(mayo5)
MAKE_SIG_KEYMGMT_FUNCTIONS(p521_mayo5)
MAKE_SIG_KEYMGMT_FUNCTIONS(CROSSrsdp128balanced)

MAKE_KEM_KEYMGMT_FUNCTIONS(frodo640aes, OQS_KEM_alg_frodokem_640_aes, 128)

Expand Down
18 changes: 18 additions & 0 deletions oqsprov/oqs_prov.h
Original file line number Diff line number Diff line change
Expand Up @@ -2148,6 +2148,23 @@ extern const OSSL_DISPATCH
oqs_PrivateKeyInfo_der_to_p521_mayo5_decoder_functions[];
extern const OSSL_DISPATCH
oqs_SubjectPublicKeyInfo_der_to_p521_mayo5_decoder_functions[];
extern const OSSL_DISPATCH
oqs_CROSSrsdp128balanced_to_PrivateKeyInfo_der_encoder_functions[];
extern const OSSL_DISPATCH
oqs_CROSSrsdp128balanced_to_PrivateKeyInfo_pem_encoder_functions[];
extern const OSSL_DISPATCH
oqs_CROSSrsdp128balanced_to_EncryptedPrivateKeyInfo_der_encoder_functions[];
extern const OSSL_DISPATCH
oqs_CROSSrsdp128balanced_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];
extern const OSSL_DISPATCH
oqs_CROSSrsdp128balanced_to_SubjectPublicKeyInfo_der_encoder_functions[];
extern const OSSL_DISPATCH
oqs_CROSSrsdp128balanced_to_SubjectPublicKeyInfo_pem_encoder_functions[];
extern const OSSL_DISPATCH oqs_CROSSrsdp128balanced_to_text_encoder_functions[];
extern const OSSL_DISPATCH
oqs_PrivateKeyInfo_der_to_CROSSrsdp128balanced_decoder_functions[];
extern const OSSL_DISPATCH
oqs_SubjectPublicKeyInfo_der_to_CROSSrsdp128balanced_decoder_functions[];
///// OQS_TEMPLATE_FRAGMENT_ENDECODER_FUNCTIONS_END

///// OQS_TEMPLATE_FRAGMENT_ALG_FUNCTIONS_START
Expand Down Expand Up @@ -2210,6 +2227,7 @@ extern const OSSL_DISPATCH oqs_mayo3_keymgmt_functions[];
extern const OSSL_DISPATCH oqs_p384_mayo3_keymgmt_functions[];
extern const OSSL_DISPATCH oqs_mayo5_keymgmt_functions[];
extern const OSSL_DISPATCH oqs_p521_mayo5_keymgmt_functions[];
extern const OSSL_DISPATCH oqs_CROSSrsdp128balanced_keymgmt_functions[];

extern const OSSL_DISPATCH oqs_frodo640aes_keymgmt_functions[];

Expand Down
4 changes: 4 additions & 0 deletions oqsprov/oqsdecoders.inc
Original file line number Diff line number Diff line change
Expand Up @@ -275,4 +275,8 @@ DECODER_w_structure("mayo5", der, PrivateKeyInfo, mayo5),
DECODER_w_structure("mayo5", der, SubjectPublicKeyInfo, mayo5),DECODER_w_structure("p521_mayo5", der, PrivateKeyInfo, p521_mayo5),
DECODER_w_structure("p521_mayo5", der, SubjectPublicKeyInfo, p521_mayo5),
#endif
#ifdef OQS_ENABLE_SIG_cross_rsdp_128_balanced
DECODER_w_structure("CROSSrsdp128balanced", der, PrivateKeyInfo, CROSSrsdp128balanced),
DECODER_w_structure("CROSSrsdp128balanced", der, SubjectPublicKeyInfo, CROSSrsdp128balanced),
#endif
///// OQS_TEMPLATE_FRAGMENT_MAKE_END
9 changes: 9 additions & 0 deletions oqsprov/oqsencoders.inc
Original file line number Diff line number Diff line change
Expand Up @@ -921,4 +921,13 @@ ENCODER_w_structure("p521_mayo5", p521_mayo5, der, SubjectPublicKeyInfo),
ENCODER_w_structure("p521_mayo5", p521_mayo5, pem, SubjectPublicKeyInfo),
ENCODER_TEXT("p521_mayo5", p521_mayo5),
#endif
#ifdef OQS_ENABLE_SIG_cross_rsdp_128_balanced
ENCODER_w_structure("CROSSrsdp128balanced", CROSSrsdp128balanced, der, PrivateKeyInfo),
ENCODER_w_structure("CROSSrsdp128balanced", CROSSrsdp128balanced, pem, PrivateKeyInfo),
ENCODER_w_structure("CROSSrsdp128balanced", CROSSrsdp128balanced, der, EncryptedPrivateKeyInfo),
ENCODER_w_structure("CROSSrsdp128balanced", CROSSrsdp128balanced, pem, EncryptedPrivateKeyInfo),
ENCODER_w_structure("CROSSrsdp128balanced", CROSSrsdp128balanced, der, SubjectPublicKeyInfo),
ENCODER_w_structure("CROSSrsdp128balanced", CROSSrsdp128balanced, pem, SubjectPublicKeyInfo),
ENCODER_TEXT("CROSSrsdp128balanced", CROSSrsdp128balanced),
#endif
///// OQS_TEMPLATE_FRAGMENT_MAKE_END
Loading

0 comments on commit c951f62

Please sign in to comment.