e52367a
From 4a275f852b61238161c053774736dc07b3ade200 Mon Sep 17 00:00:00 2001
e52367a
From: Dmitry Belyavskiy <dbelyavs@redhat.com>
e52367a
Date: Mon, 21 Aug 2023 11:46:40 +0200
e52367a
Subject: [PATCH 11/48] 0011-Remove-EC-curves.patch
1eb7adc
1eb7adc
Patch-name: 0011-Remove-EC-curves.patch
1eb7adc
Patch-id: 11
1eb7adc
Patch-status: |
1eb7adc
    # remove unsupported EC curves
1eb7adc
---
1eb7adc
 apps/speed.c                 |  8 +---
e52367a
 crypto/evp/ec_support.c      | 87 ------------------------------------
e52367a
 test/acvp_test.inc           |  9 ----
e52367a
 test/ecdsatest.h             | 17 -------
e52367a
 test/recipes/15-test_genec.t | 27 -----------
e52367a
 5 files changed, 1 insertion(+), 147 deletions(-)
1eb7adc
1eb7adc
diff --git a/apps/speed.c b/apps/speed.c
1eb7adc
index cace25eda1..d527f12f18 100644
1eb7adc
--- a/apps/speed.c
1eb7adc
+++ b/apps/speed.c
1eb7adc
@@ -385,7 +385,7 @@ static double ffdh_results[FFDH_NUM][1];  /* 1 op: derivation */
347681c
 #endif /* OPENSSL_NO_DH */
347681c
 
347681c
 enum ec_curves_t {
347681c
-    R_EC_P160, R_EC_P192, R_EC_P224, R_EC_P256, R_EC_P384, R_EC_P521,
347681c
+    R_EC_P224, R_EC_P256, R_EC_P384, R_EC_P521,
477bb5e
 #ifndef OPENSSL_NO_EC2M
477bb5e
     R_EC_K163, R_EC_K233, R_EC_K283, R_EC_K409, R_EC_K571,
477bb5e
     R_EC_B163, R_EC_B233, R_EC_B283, R_EC_B409, R_EC_B571,
1eb7adc
@@ -395,8 +395,6 @@ enum ec_curves_t {
347681c
 };
347681c
 /* list of ecdsa curves */
347681c
 static const OPT_PAIR ecdsa_choices[ECDSA_NUM] = {
347681c
-    {"ecdsap160", R_EC_P160},
347681c
-    {"ecdsap192", R_EC_P192},
347681c
     {"ecdsap224", R_EC_P224},
347681c
     {"ecdsap256", R_EC_P256},
347681c
     {"ecdsap384", R_EC_P384},
1eb7adc
@@ -423,8 +421,6 @@ static const OPT_PAIR ecdsa_choices[ECDSA_NUM] = {
f4c397c
 };
347681c
 /* list of ecdh curves, extension of |ecdsa_choices| list above */
347681c
 static const OPT_PAIR ecdh_choices[EC_NUM] = {
347681c
-    {"ecdhp160", R_EC_P160},
347681c
-    {"ecdhp192", R_EC_P192},
347681c
     {"ecdhp224", R_EC_P224},
347681c
     {"ecdhp256", R_EC_P256},
347681c
     {"ecdhp384", R_EC_P384},
1eb7adc
@@ -1442,8 +1438,6 @@ int speed_main(int argc, char **argv)
347681c
      */
347681c
     static const EC_CURVE ec_curves[EC_NUM] = {
347681c
         /* Prime Curves */
347681c
-        {"secp160r1", NID_secp160r1, 160},
347681c
-        {"nistp192", NID_X9_62_prime192v1, 192},
347681c
         {"nistp224", NID_secp224r1, 224},
347681c
         {"nistp256", NID_X9_62_prime256v1, 256},
347681c
         {"nistp384", NID_secp384r1, 384},
1eb7adc
diff --git a/crypto/evp/ec_support.c b/crypto/evp/ec_support.c
e52367a
index 1ec10143d2..82b95294b4 100644
1eb7adc
--- a/crypto/evp/ec_support.c
1eb7adc
+++ b/crypto/evp/ec_support.c
477bb5e
@@ -20,89 +20,15 @@ typedef struct ec_name2nid_st {
347681c
 static const EC_NAME2NID curve_list[] = {
347681c
     /* prime field curves */
347681c
     /* secg curves */
347681c
-    {"secp112r1", NID_secp112r1 },
347681c
-    {"secp112r2", NID_secp112r2 },
347681c
-    {"secp128r1", NID_secp128r1 },
347681c
-    {"secp128r2", NID_secp128r2 },
347681c
-    {"secp160k1", NID_secp160k1 },
347681c
-    {"secp160r1", NID_secp160r1 },
347681c
-    {"secp160r2", NID_secp160r2 },
347681c
-    {"secp192k1", NID_secp192k1 },
477bb5e
-    {"secp224k1", NID_secp224k1 },
347681c
     {"secp224r1", NID_secp224r1 },
347681c
     {"secp256k1", NID_secp256k1 },
347681c
     {"secp384r1", NID_secp384r1 },
347681c
     {"secp521r1", NID_secp521r1 },
347681c
     /* X9.62 curves */
347681c
-    {"prime192v1", NID_X9_62_prime192v1 },
347681c
-    {"prime192v2", NID_X9_62_prime192v2 },
347681c
-    {"prime192v3", NID_X9_62_prime192v3 },
347681c
-    {"prime239v1", NID_X9_62_prime239v1 },
347681c
-    {"prime239v2", NID_X9_62_prime239v2 },
347681c
-    {"prime239v3", NID_X9_62_prime239v3 },
347681c
     {"prime256v1", NID_X9_62_prime256v1 },
477bb5e
     /* characteristic two field curves */
477bb5e
     /* NIST/SECG curves */
347681c
-    {"sect113r1", NID_sect113r1 },
347681c
-    {"sect113r2", NID_sect113r2 },
347681c
-    {"sect131r1", NID_sect131r1 },
347681c
-    {"sect131r2", NID_sect131r2 },
347681c
-    {"sect163k1", NID_sect163k1 },
347681c
-    {"sect163r1", NID_sect163r1 },
347681c
-    {"sect163r2", NID_sect163r2 },
347681c
-    {"sect193r1", NID_sect193r1 },
347681c
-    {"sect193r2", NID_sect193r2 },
347681c
-    {"sect233k1", NID_sect233k1 },
347681c
-    {"sect233r1", NID_sect233r1 },
347681c
-    {"sect239k1", NID_sect239k1 },
347681c
-    {"sect283k1", NID_sect283k1 },
347681c
-    {"sect283r1", NID_sect283r1 },
347681c
-    {"sect409k1", NID_sect409k1 },
347681c
-    {"sect409r1", NID_sect409r1 },
347681c
-    {"sect571k1", NID_sect571k1 },
347681c
-    {"sect571r1", NID_sect571r1 },
347681c
-    /* X9.62 curves */
347681c
-    {"c2pnb163v1", NID_X9_62_c2pnb163v1 },
347681c
-    {"c2pnb163v2", NID_X9_62_c2pnb163v2 },
347681c
-    {"c2pnb163v3", NID_X9_62_c2pnb163v3 },
347681c
-    {"c2pnb176v1", NID_X9_62_c2pnb176v1 },
347681c
-    {"c2tnb191v1", NID_X9_62_c2tnb191v1 },
347681c
-    {"c2tnb191v2", NID_X9_62_c2tnb191v2 },
347681c
-    {"c2tnb191v3", NID_X9_62_c2tnb191v3 },
347681c
-    {"c2pnb208w1", NID_X9_62_c2pnb208w1 },
347681c
-    {"c2tnb239v1", NID_X9_62_c2tnb239v1 },
347681c
-    {"c2tnb239v2", NID_X9_62_c2tnb239v2 },
347681c
-    {"c2tnb239v3", NID_X9_62_c2tnb239v3 },
347681c
-    {"c2pnb272w1", NID_X9_62_c2pnb272w1 },
347681c
-    {"c2pnb304w1", NID_X9_62_c2pnb304w1 },
347681c
-    {"c2tnb359v1", NID_X9_62_c2tnb359v1 },
347681c
-    {"c2pnb368w1", NID_X9_62_c2pnb368w1 },
347681c
-    {"c2tnb431r1", NID_X9_62_c2tnb431r1 },
347681c
-    /*
347681c
-     * the WAP/WTLS curves [unlike SECG, spec has its own OIDs for curves
347681c
-     * from X9.62]
347681c
-     */
347681c
-    {"wap-wsg-idm-ecid-wtls1", NID_wap_wsg_idm_ecid_wtls1 },
347681c
-    {"wap-wsg-idm-ecid-wtls3", NID_wap_wsg_idm_ecid_wtls3 },
347681c
-    {"wap-wsg-idm-ecid-wtls4", NID_wap_wsg_idm_ecid_wtls4 },
347681c
-    {"wap-wsg-idm-ecid-wtls5", NID_wap_wsg_idm_ecid_wtls5 },
347681c
-    {"wap-wsg-idm-ecid-wtls6", NID_wap_wsg_idm_ecid_wtls6 },
347681c
-    {"wap-wsg-idm-ecid-wtls7", NID_wap_wsg_idm_ecid_wtls7 },
347681c
-    {"wap-wsg-idm-ecid-wtls8", NID_wap_wsg_idm_ecid_wtls8 },
347681c
-    {"wap-wsg-idm-ecid-wtls9", NID_wap_wsg_idm_ecid_wtls9 },
347681c
-    {"wap-wsg-idm-ecid-wtls10", NID_wap_wsg_idm_ecid_wtls10 },
347681c
-    {"wap-wsg-idm-ecid-wtls11", NID_wap_wsg_idm_ecid_wtls11 },
347681c
-    {"wap-wsg-idm-ecid-wtls12", NID_wap_wsg_idm_ecid_wtls12 },
347681c
-    /* IPSec curves */
347681c
-    {"Oakley-EC2N-3", NID_ipsec3 },
347681c
-    {"Oakley-EC2N-4", NID_ipsec4 },
477bb5e
     /* brainpool curves */
347681c
-    {"brainpoolP160r1", NID_brainpoolP160r1 },
347681c
-    {"brainpoolP160t1", NID_brainpoolP160t1 },
347681c
-    {"brainpoolP192r1", NID_brainpoolP192r1 },
347681c
-    {"brainpoolP192t1", NID_brainpoolP192t1 },
347681c
-    {"brainpoolP224r1", NID_brainpoolP224r1 },
347681c
-    {"brainpoolP224t1", NID_brainpoolP224t1 },
477bb5e
     {"brainpoolP256r1", NID_brainpoolP256r1 },
477bb5e
     {"brainpoolP256t1", NID_brainpoolP256t1 },
477bb5e
     {"brainpoolP320r1", NID_brainpoolP320r1 },
1eb7adc
@@ -111,8 +37,6 @@ static const EC_NAME2NID curve_list[] = {
477bb5e
     {"brainpoolP384t1", NID_brainpoolP384t1 },
477bb5e
     {"brainpoolP512r1", NID_brainpoolP512r1 },
477bb5e
     {"brainpoolP512t1", NID_brainpoolP512t1 },
347681c
-    /* SM2 curve */
347681c
-    {"SM2", NID_sm2 },
347681c
 };
347681c
 
347681c
 const char *OSSL_EC_curve_nid2name(int nid)
e52367a
@@ -150,17 +74,6 @@ int ossl_ec_curve_name2nid(const char *name)
e52367a
 /* Functions to translate between common NIST curve names and NIDs */
e52367a
 
e52367a
 static const EC_NAME2NID nist_curves[] = {
e52367a
-    {"B-163", NID_sect163r2},
e52367a
-    {"B-233", NID_sect233r1},
e52367a
-    {"B-283", NID_sect283r1},
e52367a
-    {"B-409", NID_sect409r1},
e52367a
-    {"B-571", NID_sect571r1},
e52367a
-    {"K-163", NID_sect163k1},
e52367a
-    {"K-233", NID_sect233k1},
e52367a
-    {"K-283", NID_sect283k1},
e52367a
-    {"K-409", NID_sect409k1},
e52367a
-    {"K-571", NID_sect571k1},
e52367a
-    {"P-192", NID_X9_62_prime192v1},
e52367a
     {"P-224", NID_secp224r1},
e52367a
     {"P-256", NID_X9_62_prime256v1},
e52367a
     {"P-384", NID_secp384r1},
1eb7adc
diff --git a/test/acvp_test.inc b/test/acvp_test.inc
1eb7adc
index ad11d3ae1e..894a0bff9d 100644
1eb7adc
--- a/test/acvp_test.inc
1eb7adc
+++ b/test/acvp_test.inc
1eb7adc
@@ -211,15 +211,6 @@ static const unsigned char ecdsa_sigver_s1[] = {
1eb7adc
     0xB1, 0xAC,
347681c
 };
347681c
 static const struct ecdsa_sigver_st ecdsa_sigver_data[] = {
1eb7adc
-    {
347681c
-        "SHA-1",
347681c
-        "P-192",
347681c
-        ITM(ecdsa_sigver_msg0),
347681c
-        ITM(ecdsa_sigver_pub0),
347681c
-        ITM(ecdsa_sigver_r0),
347681c
-        ITM(ecdsa_sigver_s0),
347681c
-        PASS,
347681c
-    },
1eb7adc
     {
347681c
         "SHA2-512",
347681c
         "P-521",
1eb7adc
diff --git a/test/ecdsatest.h b/test/ecdsatest.h
1eb7adc
index 63fe319025..06b5c0aac5 100644
1eb7adc
--- a/test/ecdsatest.h
1eb7adc
+++ b/test/ecdsatest.h
477bb5e
@@ -32,23 +32,6 @@ typedef struct {
477bb5e
 } ecdsa_cavs_kat_t;
347681c
 
477bb5e
 static const ecdsa_cavs_kat_t ecdsa_cavs_kats[] = {
477bb5e
-    /* prime KATs from X9.62 */
477bb5e
-    {NID_X9_62_prime192v1, NID_sha1,
477bb5e
-     "616263",                  /* "abc" */
477bb5e
-     "1a8d598fc15bf0fd89030b5cb1111aeb92ae8baf5ea475fb",
477bb5e
-     "0462b12d60690cdcf330babab6e69763b471f994dd702d16a563bf5ec08069705ffff65e"
477bb5e
-     "5ca5c0d69716dfcb3474373902",
477bb5e
-     "fa6de29746bbeb7f8bb1e761f85f7dfb2983169d82fa2f4e",
477bb5e
-     "885052380ff147b734c330c43d39b2c4a89f29b0f749fead",
477bb5e
-     "e9ecc78106def82bf1070cf1d4d804c3cb390046951df686"},
477bb5e
-    {NID_X9_62_prime239v1, NID_sha1,
477bb5e
-     "616263",                  /* "abc" */
477bb5e
-     "7ef7c6fabefffdea864206e80b0b08a9331ed93e698561b64ca0f7777f3d",
477bb5e
-     "045b6dc53bc61a2548ffb0f671472de6c9521a9d2d2534e65abfcbd5fe0c707fd9f1ed2e"
477bb5e
-     "65f09f6ce0893baf5e8e31e6ae82ea8c3592335be906d38dee",
477bb5e
-     "656c7196bf87dcc5d1f1020906df2782360d36b2de7a17ece37d503784af",
477bb5e
-     "2cb7f36803ebb9c427c58d8265f11fc5084747133078fc279de874fbecb0",
477bb5e
-     "2eeae988104e9c2234a3c2beb1f53bfa5dc11ff36a875d1e3ccb1f7e45cf"},
477bb5e
     /* prime KATs from NIST CAVP */
477bb5e
     {NID_secp224r1, NID_sha224,
477bb5e
      "699325d6fc8fbbb4981a6ded3c3a54ad2e4e3db8a5669201912064c64e700c139248cdc1"
1eb7adc
diff --git a/test/recipes/15-test_genec.t b/test/recipes/15-test_genec.t
1eb7adc
index 2dfed387ca..c733b68f83 100644
1eb7adc
--- a/test/recipes/15-test_genec.t
1eb7adc
+++ b/test/recipes/15-test_genec.t
1eb7adc
@@ -41,37 +41,11 @@ plan skip_all => "This test is unsupported in a no-ec build"
347681c
     if disabled("ec");
347681c
 
477bb5e
 my @prime_curves = qw(
477bb5e
-    secp112r1
477bb5e
-    secp112r2
477bb5e
-    secp128r1
477bb5e
-    secp128r2
477bb5e
-    secp160k1
477bb5e
-    secp160r1
477bb5e
-    secp160r2
477bb5e
-    secp192k1
477bb5e
-    secp224k1
477bb5e
     secp224r1
477bb5e
     secp256k1
477bb5e
     secp384r1
477bb5e
     secp521r1
477bb5e
-    prime192v1
477bb5e
-    prime192v2
477bb5e
-    prime192v3
477bb5e
-    prime239v1
477bb5e
-    prime239v2
477bb5e
-    prime239v3
477bb5e
     prime256v1
477bb5e
-    wap-wsg-idm-ecid-wtls6
477bb5e
-    wap-wsg-idm-ecid-wtls7
477bb5e
-    wap-wsg-idm-ecid-wtls8
477bb5e
-    wap-wsg-idm-ecid-wtls9
477bb5e
-    wap-wsg-idm-ecid-wtls12
477bb5e
-    brainpoolP160r1
477bb5e
-    brainpoolP160t1
477bb5e
-    brainpoolP192r1
477bb5e
-    brainpoolP192t1
477bb5e
-    brainpoolP224r1
477bb5e
-    brainpoolP224t1
477bb5e
     brainpoolP256r1
477bb5e
     brainpoolP256t1
477bb5e
     brainpoolP320r1
477bb5e
@@ -136,7 +110,6 @@ push(@other_curves, 'SM2')
477bb5e
     if !disabled("sm2");
106fe89
 
477bb5e
 my @curve_aliases = qw(
477bb5e
-    P-192
477bb5e
     P-224
477bb5e
     P-256
477bb5e
     P-384
1eb7adc
-- 
1eb7adc
2.41.0
1eb7adc