remove crypto_bug.c
authorChristian Grothoff <christian@grothoff.org>
Sat, 9 Jun 2018 15:42:02 +0000 (17:42 +0200)
committerChristian Grothoff <christian@grothoff.org>
Sat, 9 Jun 2018 15:42:13 +0000 (17:42 +0200)
src/util/Makefile.am
src/util/crypto_bug.c [deleted file]
src/util/crypto_ecc.c
src/util/crypto_ecc_setup.c

index 407f482df83661cad38b12123dce5a5b69bcbe85..208cab07b02a2567abb45c66aa5b582bfc00fad2 100644 (file)
@@ -598,5 +598,4 @@ EXTRA_DIST = \
   test_resolver_api_data.conf \
   test_service_data.conf \
   test_speedup_data.conf \
-  gnunet-qr.py.in \
-  crypto_bug.c
+  gnunet-qr.py.in 
diff --git a/src/util/crypto_bug.c b/src/util/crypto_bug.c
deleted file mode 100644 (file)
index aea801d..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
-     This file is part of GNUnet.
-     Copyright (C) 2018 GNUnet e.V.
-
-     GNUnet is free software: you can redistribute it and/or modify it
-     under the terms of the GNU Affero General Public License as published
-     by the Free Software Foundation, either version 3 of the License,
-     or (at your option) any later version.
-
-     GNUnet is distributed in the hope that it will be useful, but
-     WITHOUT ANY WARRANTY; without even the implied warranty of
-     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-     Affero General Public License for more details.
-    
-     You should have received a copy of the GNU Affero General Public License
-     along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-/**
- * @file util/crypto_bug.c
- * @brief work around unidentified public key cryptography bug
- * @author Christian Grothoff
- */
-
-/**
- * Enable work-around.  Will cause code to call #check_eddsa_key() to
- * see if we have a bad key, and if so, create a new one.
- */
-#define CRYPTO_BUG 0
-
-
-#if CRYPTO_BUG
-/**
- * Check if ECDH works with @a priv_dsa and this version
- * of libgcrypt.
- *
- * @param priv_dsa key to check
- * @return #GNUNET_OK if key passes
- */
-static int
-check_eddsa_key (const struct GNUNET_CRYPTO_EddsaPrivateKey *priv_dsa)
-{
-  struct GNUNET_CRYPTO_EcdhePrivateKey *priv_ecdh;
-  struct GNUNET_CRYPTO_EddsaPublicKey id1;
-  struct GNUNET_CRYPTO_EcdhePublicKey id2;
-  struct GNUNET_HashCode dh[2];
-
-  GNUNET_CRYPTO_eddsa_key_get_public (priv_dsa,
-                                      &id1);
-  for (unsigned int j=0;j<4;j++)
-  {
-    priv_ecdh = GNUNET_CRYPTO_ecdhe_key_create ();
-    /* Extract public keys */
-    GNUNET_CRYPTO_ecdhe_key_get_public (priv_ecdh,
-                                        &id2);
-    /* Do ECDH */
-    GNUNET_assert (GNUNET_OK ==
-                   GNUNET_CRYPTO_eddsa_ecdh (priv_dsa,
-                                             &id2,
-                                             &dh[0]));
-    GNUNET_assert (GNUNET_OK ==
-                   GNUNET_CRYPTO_ecdh_eddsa (priv_ecdh,
-                                             &id1,
-                                             &dh[1]));
-    /* Check that both DH results are equal. */
-    if (0 != memcmp (&dh[0],
-                     &dh[1],
-                     sizeof (struct GNUNET_HashCode)))
-    {
-      GNUNET_break (0); /* bad EdDSA key! */
-      return GNUNET_SYSERR;
-    }
-    GNUNET_free (priv_ecdh);
-  }
-  return GNUNET_OK;
-}
-#endif
index 789d350ff691624baa28fcfa0c874a899fba4346..07782b1815f076a54af69382d7c339145e8e08d6 100644 (file)
@@ -50,9 +50,6 @@
 #define LOG_GCRY(level, cmd, rc) do { LOG(level, _("`%s' failed at %s:%d with error: %s\n"), cmd, __FILE__, __LINE__, gcry_strerror(rc)); } while(0)
 
 
-#include "crypto_bug.c"
-
-
 /**
  * Extract values from an S-expression.
  *
index 1316a900c7f4e614bae77a078be18da1689e0333..507cbba11398f7fdad839759d9a80e813025533c 100644 (file)
@@ -39,9 +39,6 @@
 #define LOG_GCRY(level, cmd, rc) do { LOG(level, _("`%s' failed at %s:%d with error: %s\n"), cmd, __FILE__, __LINE__, gcry_strerror(rc)); } while(0)
 
 
-#include "crypto_bug.c"
-
-
 /**
  * Wait for a short time (we're trying to lock a file or want
  * to give another process a shot at finishing a disk write, etc.).