Skip to content

Commit

Permalink
Remove SIKE/SIDH (#84)
Browse files Browse the repository at this point in the history
  • Loading branch information
baentsch authored Aug 3, 2022
1 parent dffe829 commit aa33992
Show file tree
Hide file tree
Showing 13 changed files with 0 additions and 406 deletions.
2 changes: 0 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,6 @@ The following quantum-safe algorithms from liboqs are supported (assuming they h
- **NTRU**: `ntru_hps2048509`, `ntru_hps2048677`, `ntru_hps4096821`, `ntru_hps40961229`, `ntru_hrss701`, `ntru_hrss1373`
- **NTRU-Prime**: `ntrulpr653`, `ntrulpr761`, `ntrulpr857`, `ntrulpr1277`, `sntrup653`, `sntrup761`, `sntrup857`, `sntrup1277`
- **SABER**: `lightsaber`, `saber`, `firesaber`
- **SIDH**: `sidhp434`, `sidhp503`, `sidhp610`, `sidhp751`
- **SIKE**: `sikep434`, `sikep503`, `sikep610`, `sikep751`
<!--- OQS_TEMPLATE_FRAGMENT_LIST_KEXS_END -->

For each `<KEX>` listed above, the following hybrid algorithms are made available as follows:
Expand Down
16 changes: 0 additions & 16 deletions crypto/obj/objects.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1398,22 +1398,6 @@ secg-scheme 14 3 : dhSinglePass-cofactorDH-sha512kdf-scheme
: p384_saber
: firesaber
: p521_firesaber
: sidhp434
: p256_sidhp434
: sidhp503
: p256_sidhp503
: sidhp610
: p384_sidhp610
: sidhp751
: p521_sidhp751
: sikep434
: p256_sikep434
: sikep503
: p256_sikep503
: sikep610
: p384_sikep610
: sikep751
: p521_sikep751
: kyber90s512
: p256_kyber90s512
: kyber90s768
Expand Down
8 changes: 0 additions & 8 deletions include/openssl/evp.h
Original file line number Diff line number Diff line change
Expand Up @@ -314,14 +314,6 @@ OPENSSL_EXPORT EC_KEY *EVP_PKEY_get1_EC_KEY(const EVP_PKEY *pkey);
(pkey_id == NID_lightsaber) || \
(pkey_id == NID_saber) || \
(pkey_id == NID_firesaber) || \
(pkey_id == NID_sidhp434) || \
(pkey_id == NID_sidhp503) || \
(pkey_id == NID_sidhp610) || \
(pkey_id == NID_sidhp751) || \
(pkey_id == NID_sikep434) || \
(pkey_id == NID_sikep503) || \
(pkey_id == NID_sikep610) || \
(pkey_id == NID_sikep751) || \
(pkey_id == NID_kyber90s512) || \
(pkey_id == NID_kyber90s768) || \
(pkey_id == NID_kyber90s1024) || \
Expand Down
16 changes: 0 additions & 16 deletions include/openssl/ssl.h
Original file line number Diff line number Diff line change
Expand Up @@ -2428,22 +2428,6 @@ OPENSSL_EXPORT int SSL_set1_curves_list(SSL *ssl, const char *curves);
#define SSL_CURVE_P384_SABER 12057
#define SSL_CURVE_FIRESABER 538
#define SSL_CURVE_P521_FIRESABER 12058
#define SSL_CURVE_SIDHP434 539
#define SSL_CURVE_P256_SIDHP434 12059
#define SSL_CURVE_SIDHP503 540
#define SSL_CURVE_P256_SIDHP503 12060
#define SSL_CURVE_SIDHP610 541
#define SSL_CURVE_P384_SIDHP610 12061
#define SSL_CURVE_SIDHP751 542
#define SSL_CURVE_P521_SIDHP751 12062
#define SSL_CURVE_SIKEP434 543
#define SSL_CURVE_P256_SIKEP434 12063
#define SSL_CURVE_SIKEP503 544
#define SSL_CURVE_P256_SIKEP503 12064
#define SSL_CURVE_SIKEP610 545
#define SSL_CURVE_P384_SIKEP610 12065
#define SSL_CURVE_SIKEP751 546
#define SSL_CURVE_P521_SIKEP751 12066
#define SSL_CURVE_KYBER90S512 574
#define SSL_CURVE_P256_KYBER90S512 12094
#define SSL_CURVE_KYBER90S768 575
Expand Down
16 changes: 0 additions & 16 deletions oqs_scripts/test_with_interop_server.py
Original file line number Diff line number Diff line change
Expand Up @@ -50,22 +50,6 @@
'p384_saber',
'firesaber',
'p521_firesaber',
'sidhp434',
'p256_sidhp434',
'sidhp503',
'p256_sidhp503',
'sidhp610',
'p384_sidhp610',
'sidhp751',
'p521_sidhp751',
'sikep434',
'p256_sikep434',
'sikep503',
'p256_sikep503',
'sikep610',
'p384_sikep610',
'sikep751',
'p521_sikep751',
'kyber90s512',
'p256_kyber90s512',
'kyber90s768',
Expand Down
16 changes: 0 additions & 16 deletions oqs_scripts/try_handshake.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,22 +52,6 @@
'p384_saber',
'firesaber',
'p521_firesaber',
'sidhp434',
'p256_sidhp434',
'sidhp503',
'p256_sidhp503',
'sidhp610',
'p384_sidhp610',
'sidhp751',
'p521_sidhp751',
'sikep434',
'p256_sikep434',
'sikep503',
'p256_sikep503',
'sikep610',
'p384_sikep610',
'sikep751',
'p521_sikep751',
'kyber90s512',
'p256_kyber90s512',
'kyber90s768',
Expand Down
50 changes: 0 additions & 50 deletions oqs_template/generate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -125,56 +125,6 @@ kems:
nid: '0x021A'
mix_with: [{'name': 'p521', 'mix_nid':'0x2F1A', 'nid':'SSL_CURVE_SECP521R1'}]
oqs_meth: 'OQS_KEM_alg_saber_firesaber'
-
family: 'SIDH'
name: 'sidhp434'
nid: '0x021B'
mix_with: [{'name': 'p256', 'mix_nid':'0x2F1B', 'nid':'SSL_CURVE_SECP256R1'}]
use_as_default_with: 'p256'
oqs_meth: 'OQS_KEM_alg_sidh_p434'
-
family: 'SIDH'
name: 'sidhp503'
nid: '0x021C'
mix_with: [{'name': 'p256', 'mix_nid':'0x2F1C', 'nid':'SSL_CURVE_SECP256R1'}]
oqs_meth: 'OQS_KEM_alg_sidh_p503'
-
family: 'SIDH'
name: 'sidhp610'
nid: '0x021D'
mix_with: [{'name': 'p384', 'mix_nid':'0x2F1D', 'nid':'SSL_CURVE_SECP384R1'}]
oqs_meth: 'OQS_KEM_alg_sidh_p610'
-
family: 'SIDH'
name: 'sidhp751'
nid: '0x021E'
mix_with: [{'name': 'p521', 'mix_nid':'0x2F1E', 'nid':'SSL_CURVE_SECP521R1'}]
oqs_meth: 'OQS_KEM_alg_sidh_p751'
-
family: 'SIKE'
name: 'sikep434'
nid: '0x021F'
mix_with: [{'name': 'p256', 'mix_nid':'0x2F1F', 'nid':'SSL_CURVE_SECP256R1'}]
use_as_default_with: 'p256'
oqs_meth: 'OQS_KEM_alg_sike_p434'
-
family: 'SIKE'
name: 'sikep503'
nid: '0x0220'
mix_with: [{'name': 'p256', 'mix_nid':'0x2F20', 'nid':'SSL_CURVE_SECP256R1'}]
oqs_meth: 'OQS_KEM_alg_sike_p503'
-
family: 'SIKE'
name: 'sikep610'
nid: '0x0221'
mix_with: [{'name': 'p384', 'mix_nid':'0x2F21', 'nid':'SSL_CURVE_SECP384R1'}]
oqs_meth: 'OQS_KEM_alg_sike_p610'
-
family: 'SIKE'
name: 'sikep751'
nid: '0x0222'
mix_with: [{'name': 'p521', 'mix_nid':'0x2F22', 'nid':'SSL_CURVE_SECP521R1'}]
oqs_meth: 'OQS_KEM_alg_sike_p751'
-
family: 'CRYSTALS-Kyber'
name: 'kyber90s512'
Expand Down
34 changes: 0 additions & 34 deletions ssl/extensions.cc
Original file line number Diff line number Diff line change
Expand Up @@ -246,22 +246,6 @@ static bool is_post_quantum_group(uint16_t id) {
id == SSL_CURVE_P384_SABER ||
id == SSL_CURVE_FIRESABER ||
id == SSL_CURVE_P521_FIRESABER ||
id == SSL_CURVE_SIDHP434 ||
id == SSL_CURVE_P256_SIDHP434 ||
id == SSL_CURVE_SIDHP503 ||
id == SSL_CURVE_P256_SIDHP503 ||
id == SSL_CURVE_SIDHP610 ||
id == SSL_CURVE_P384_SIDHP610 ||
id == SSL_CURVE_SIDHP751 ||
id == SSL_CURVE_P521_SIDHP751 ||
id == SSL_CURVE_SIKEP434 ||
id == SSL_CURVE_P256_SIKEP434 ||
id == SSL_CURVE_SIKEP503 ||
id == SSL_CURVE_P256_SIKEP503 ||
id == SSL_CURVE_SIKEP610 ||
id == SSL_CURVE_P384_SIKEP610 ||
id == SSL_CURVE_SIKEP751 ||
id == SSL_CURVE_P521_SIKEP751 ||
id == SSL_CURVE_KYBER90S512 ||
id == SSL_CURVE_P256_KYBER90S512 ||
id == SSL_CURVE_KYBER90S768 ||
Expand Down Expand Up @@ -396,8 +380,6 @@ static const uint16_t kDefaultGroups[] = {
SSL_CURVE_P256_BIKEL1,
SSL_CURVE_P256_NTRU_HPS2048509,
SSL_CURVE_P256_LIGHTSABER,
SSL_CURVE_P256_SIDHP434,
SSL_CURVE_P256_SIKEP434,
SSL_CURVE_P256_KYBER90S512,
///// OQS_TEMPLATE_FRAGMENT_ADD_DEFAULT_KEMS_END
};
Expand Down Expand Up @@ -453,22 +435,6 @@ static const uint16_t kAllSupportedGroups[] = {
SSL_CURVE_SABER,
SSL_CURVE_P521_FIRESABER,
SSL_CURVE_FIRESABER,
SSL_CURVE_P256_SIDHP434,
SSL_CURVE_SIDHP434,
SSL_CURVE_P256_SIDHP503,
SSL_CURVE_SIDHP503,
SSL_CURVE_P384_SIDHP610,
SSL_CURVE_SIDHP610,
SSL_CURVE_P521_SIDHP751,
SSL_CURVE_SIDHP751,
SSL_CURVE_P256_SIKEP434,
SSL_CURVE_SIKEP434,
SSL_CURVE_P256_SIKEP503,
SSL_CURVE_SIKEP503,
SSL_CURVE_P384_SIKEP610,
SSL_CURVE_SIKEP610,
SSL_CURVE_P521_SIKEP751,
SSL_CURVE_SIKEP751,
SSL_CURVE_P256_KYBER90S512,
SSL_CURVE_KYBER90S512,
SSL_CURVE_P384_KYBER90S768,
Expand Down
16 changes: 0 additions & 16 deletions ssl/s3_both.cc
Original file line number Diff line number Diff line change
Expand Up @@ -708,22 +708,6 @@ class CipherScorer {
group_id != SSL_CURVE_P384_SABER &&
group_id != SSL_CURVE_FIRESABER &&
group_id != SSL_CURVE_P521_FIRESABER &&
group_id != SSL_CURVE_SIDHP434 &&
group_id != SSL_CURVE_P256_SIDHP434 &&
group_id != SSL_CURVE_SIDHP503 &&
group_id != SSL_CURVE_P256_SIDHP503 &&
group_id != SSL_CURVE_SIDHP610 &&
group_id != SSL_CURVE_P384_SIDHP610 &&
group_id != SSL_CURVE_SIDHP751 &&
group_id != SSL_CURVE_P521_SIDHP751 &&
group_id != SSL_CURVE_SIKEP434 &&
group_id != SSL_CURVE_P256_SIKEP434 &&
group_id != SSL_CURVE_SIKEP503 &&
group_id != SSL_CURVE_P256_SIKEP503 &&
group_id != SSL_CURVE_SIKEP610 &&
group_id != SSL_CURVE_P384_SIKEP610 &&
group_id != SSL_CURVE_SIKEP751 &&
group_id != SSL_CURVE_P521_SIKEP751 &&
group_id != SSL_CURVE_KYBER90S512 &&
group_id != SSL_CURVE_P256_KYBER90S512 &&
group_id != SSL_CURVE_KYBER90S768 &&
Expand Down
96 changes: 0 additions & 96 deletions ssl/ssl_key_share.cc
Original file line number Diff line number Diff line change
Expand Up @@ -617,22 +617,6 @@ CONSTEXPR_ARRAY NamedGroup kNamedGroups[] = {
{NID_p384_saber, SSL_CURVE_P384_SABER, "p384_saber", "p384_saber"},
{NID_firesaber, SSL_CURVE_FIRESABER, "firesaber", "firesaber"},
{NID_p521_firesaber, SSL_CURVE_P521_FIRESABER, "p521_firesaber", "p521_firesaber"},
{NID_sidhp434, SSL_CURVE_SIDHP434, "sidhp434", "sidhp434"},
{NID_p256_sidhp434, SSL_CURVE_P256_SIDHP434, "p256_sidhp434", "p256_sidhp434"},
{NID_sidhp503, SSL_CURVE_SIDHP503, "sidhp503", "sidhp503"},
{NID_p256_sidhp503, SSL_CURVE_P256_SIDHP503, "p256_sidhp503", "p256_sidhp503"},
{NID_sidhp610, SSL_CURVE_SIDHP610, "sidhp610", "sidhp610"},
{NID_p384_sidhp610, SSL_CURVE_P384_SIDHP610, "p384_sidhp610", "p384_sidhp610"},
{NID_sidhp751, SSL_CURVE_SIDHP751, "sidhp751", "sidhp751"},
{NID_p521_sidhp751, SSL_CURVE_P521_SIDHP751, "p521_sidhp751", "p521_sidhp751"},
{NID_sikep434, SSL_CURVE_SIKEP434, "sikep434", "sikep434"},
{NID_p256_sikep434, SSL_CURVE_P256_SIKEP434, "p256_sikep434", "p256_sikep434"},
{NID_sikep503, SSL_CURVE_SIKEP503, "sikep503", "sikep503"},
{NID_p256_sikep503, SSL_CURVE_P256_SIKEP503, "p256_sikep503", "p256_sikep503"},
{NID_sikep610, SSL_CURVE_SIKEP610, "sikep610", "sikep610"},
{NID_p384_sikep610, SSL_CURVE_P384_SIKEP610, "p384_sikep610", "p384_sikep610"},
{NID_sikep751, SSL_CURVE_SIKEP751, "sikep751", "sikep751"},
{NID_p521_sikep751, SSL_CURVE_P521_SIKEP751, "p521_sikep751", "p521_sikep751"},
{NID_kyber90s512, SSL_CURVE_KYBER90S512, "kyber90s512", "kyber90s512"},
{NID_p256_kyber90s512, SSL_CURVE_P256_KYBER90S512, "p256_kyber90s512", "p256_kyber90s512"},
{NID_kyber90s768, SSL_CURVE_KYBER90S768, "kyber90s768", "kyber90s768"},
Expand Down Expand Up @@ -889,86 +873,6 @@ UniquePtr<SSLKeyShare> SSLKeyShare::Create(uint16_t group_id) {
return UniquePtr<SSLKeyShare>(New<ClassicalWithOQSKeyShare>(SSL_CURVE_P521_FIRESABER, SSL_CURVE_SECP521R1, OQS_KEM_alg_saber_firesaber));
else
return nullptr;
case SSL_CURVE_SIDHP434:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sidh_p434))
return UniquePtr<SSLKeyShare>(New<OQSKeyShare>(SSL_CURVE_SIDHP434, OQS_KEM_alg_sidh_p434));
else
return nullptr;
case SSL_CURVE_P256_SIDHP434:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sidh_p434))
return UniquePtr<SSLKeyShare>(New<ClassicalWithOQSKeyShare>(SSL_CURVE_P256_SIDHP434, SSL_CURVE_SECP256R1, OQS_KEM_alg_sidh_p434));
else
return nullptr;
case SSL_CURVE_SIDHP503:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sidh_p503))
return UniquePtr<SSLKeyShare>(New<OQSKeyShare>(SSL_CURVE_SIDHP503, OQS_KEM_alg_sidh_p503));
else
return nullptr;
case SSL_CURVE_P256_SIDHP503:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sidh_p503))
return UniquePtr<SSLKeyShare>(New<ClassicalWithOQSKeyShare>(SSL_CURVE_P256_SIDHP503, SSL_CURVE_SECP256R1, OQS_KEM_alg_sidh_p503));
else
return nullptr;
case SSL_CURVE_SIDHP610:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sidh_p610))
return UniquePtr<SSLKeyShare>(New<OQSKeyShare>(SSL_CURVE_SIDHP610, OQS_KEM_alg_sidh_p610));
else
return nullptr;
case SSL_CURVE_P384_SIDHP610:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sidh_p610))
return UniquePtr<SSLKeyShare>(New<ClassicalWithOQSKeyShare>(SSL_CURVE_P384_SIDHP610, SSL_CURVE_SECP384R1, OQS_KEM_alg_sidh_p610));
else
return nullptr;
case SSL_CURVE_SIDHP751:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sidh_p751))
return UniquePtr<SSLKeyShare>(New<OQSKeyShare>(SSL_CURVE_SIDHP751, OQS_KEM_alg_sidh_p751));
else
return nullptr;
case SSL_CURVE_P521_SIDHP751:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sidh_p751))
return UniquePtr<SSLKeyShare>(New<ClassicalWithOQSKeyShare>(SSL_CURVE_P521_SIDHP751, SSL_CURVE_SECP521R1, OQS_KEM_alg_sidh_p751));
else
return nullptr;
case SSL_CURVE_SIKEP434:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sike_p434))
return UniquePtr<SSLKeyShare>(New<OQSKeyShare>(SSL_CURVE_SIKEP434, OQS_KEM_alg_sike_p434));
else
return nullptr;
case SSL_CURVE_P256_SIKEP434:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sike_p434))
return UniquePtr<SSLKeyShare>(New<ClassicalWithOQSKeyShare>(SSL_CURVE_P256_SIKEP434, SSL_CURVE_SECP256R1, OQS_KEM_alg_sike_p434));
else
return nullptr;
case SSL_CURVE_SIKEP503:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sike_p503))
return UniquePtr<SSLKeyShare>(New<OQSKeyShare>(SSL_CURVE_SIKEP503, OQS_KEM_alg_sike_p503));
else
return nullptr;
case SSL_CURVE_P256_SIKEP503:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sike_p503))
return UniquePtr<SSLKeyShare>(New<ClassicalWithOQSKeyShare>(SSL_CURVE_P256_SIKEP503, SSL_CURVE_SECP256R1, OQS_KEM_alg_sike_p503));
else
return nullptr;
case SSL_CURVE_SIKEP610:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sike_p610))
return UniquePtr<SSLKeyShare>(New<OQSKeyShare>(SSL_CURVE_SIKEP610, OQS_KEM_alg_sike_p610));
else
return nullptr;
case SSL_CURVE_P384_SIKEP610:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sike_p610))
return UniquePtr<SSLKeyShare>(New<ClassicalWithOQSKeyShare>(SSL_CURVE_P384_SIKEP610, SSL_CURVE_SECP384R1, OQS_KEM_alg_sike_p610));
else
return nullptr;
case SSL_CURVE_SIKEP751:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sike_p751))
return UniquePtr<SSLKeyShare>(New<OQSKeyShare>(SSL_CURVE_SIKEP751, OQS_KEM_alg_sike_p751));
else
return nullptr;
case SSL_CURVE_P521_SIKEP751:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_sike_p751))
return UniquePtr<SSLKeyShare>(New<ClassicalWithOQSKeyShare>(SSL_CURVE_P521_SIKEP751, SSL_CURVE_SECP521R1, OQS_KEM_alg_sike_p751));
else
return nullptr;
case SSL_CURVE_KYBER90S512:
if(OQS_KEM_alg_is_enabled(OQS_KEM_alg_kyber_512_90s))
return UniquePtr<SSLKeyShare>(New<OQSKeyShare>(SSL_CURVE_KYBER90S512, OQS_KEM_alg_kyber_512_90s));
Expand Down
Loading

0 comments on commit aa33992

Please sign in to comment.