diff options
| author | Florian Dold <florian.dold@gmail.com> | 2020-01-15 13:31:09 +0100 | 
|---|---|---|
| committer | Florian Dold <florian.dold@gmail.com> | 2020-01-15 13:31:19 +0100 | 
| commit | 6d12045f8de2ff05af96885e5edcbbc3077325dc (patch) | |
| tree | 614f9c74b0a5cff8121f7935a73967218318d916 /src | |
| parent | 8a3f0e3f8d998d1badc9767fb207e7a07d645150 (diff) | |
remove tvg, it's now part of GNUnet
Diffstat (limited to 'src')
| -rw-r--r-- | src/exchange-tools/Makefile.am | 8 | ||||
| -rw-r--r-- | src/exchange-tools/taler-exchange-tvg.c | 259 | 
2 files changed, 0 insertions, 267 deletions
| diff --git a/src/exchange-tools/Makefile.am b/src/exchange-tools/Makefile.am index 0a4bd6fe..b08cea68 100644 --- a/src/exchange-tools/Makefile.am +++ b/src/exchange-tools/Makefile.am @@ -16,7 +16,6 @@ bin_PROGRAMS = \    taler-exchange-keycheck \    taler-exchange-wire \    taler-exchange-dbinit \ -  taler-exchange-tvg \    taler-wire  taler_wire_SOURCES = \ @@ -61,13 +60,6 @@ taler_exchange_keycheck_LDADD = \    -lgnunetutil  $(XLIB)  taler_exchange_keycheck_LDFLAGS = $(POSTGRESQL_LDFLAGS) -taler_exchange_tvg_SOURCES = \ -  taler-exchange-tvg.c -taler_exchange_tvg_LDADD = \ -  $(LIBGCRYPT_LIBS) \ -  $(top_builddir)/src/util/libtalerutil.la \ -  -lgnunetutil  $(XLIB) -  taler_exchange_dbinit_SOURCES = \    taler-exchange-dbinit.c  taler_exchange_dbinit_LDADD = \ diff --git a/src/exchange-tools/taler-exchange-tvg.c b/src/exchange-tools/taler-exchange-tvg.c deleted file mode 100644 index 55e658fc..00000000 --- a/src/exchange-tools/taler-exchange-tvg.c +++ /dev/null @@ -1,259 +0,0 @@ -/* -  This file is part of TALER -  Copyright (C) 2019 GNUnet e.V. - -  TALER is free software; you can redistribute it and/or modify it under the -  terms of the GNU General Public License as published by the Free Software -  Foundation; either version 3, or (at your option) any later version. - -  TALER 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 General Public License for more details. - -  You should have received a copy of the GNU General Public License along with -  TALER; see the file COPYING.  If not, see <http://www.gnu.org/licenses/> -*/ - -/** - * @file exchange-tools/taler-exchange-tvg.c - * @brief Generate test vectors for cryptographic operations. - * @author Florian Dold - */ -#include "platform.h" -#include "taler_util.h" -#include "taler_signatures.h" -#include <gnunet/gnunet_util_lib.h> - - -/** - * Print data base32-crockford with a preceding label. - * - * @param label label to print - * @param data data to print - * @param size size of data - */ -static void -display_data (char *label, void *data, size_t size) -{ -  char *enc = GNUNET_STRINGS_data_to_string_alloc (data, size); -  printf ("%s %s\n", label, enc); -  GNUNET_free (enc); -} - - -/** - * Main function that will be run. - * - * @param cls closure - * @param args remaining command-line arguments - * @param cfgfile name of the configuration file used (for saving, can be NULL!) - * @param cfg configuration - */ -static void -run (void *cls, -     char *const *args, -     const char *cfgfile, -     const struct GNUNET_CONFIGURATION_Handle *cfg) -{ -  { -    struct GNUNET_HashCode hc; -    char *str = "Hello, GNU Taler"; - -    GNUNET_CRYPTO_hash (str, strlen (str), &hc); - -    printf ("hash code:\n"); -    display_data ("  input", str, strlen (str)); -    display_data ("  output", &hc, sizeof (struct GNUNET_HashCode)); -  } -  { -    struct GNUNET_CRYPTO_EcdhePrivateKey *priv1; -    struct GNUNET_CRYPTO_EcdhePublicKey pub1; -    struct GNUNET_CRYPTO_EcdhePrivateKey *priv2; -    struct GNUNET_HashCode skm; -    priv1 = GNUNET_CRYPTO_ecdhe_key_create (); -    priv2 = GNUNET_CRYPTO_ecdhe_key_create (); -    GNUNET_CRYPTO_ecdhe_key_get_public (priv1, &pub1); -    GNUNET_assert (GNUNET_OK == GNUNET_CRYPTO_ecc_ecdh (priv2, &pub1, &skm)); - -    printf ("ecdhe key:\n"); -    display_data ("  priv1", priv1, sizeof (struct -                                            GNUNET_CRYPTO_EcdhePrivateKey)); -    display_data ("  pub1", &pub1, sizeof (struct -                                           GNUNET_CRYPTO_EcdhePublicKey)); -    display_data ("  priv2", priv2, sizeof (struct -                                            GNUNET_CRYPTO_EcdhePrivateKey)); -    display_data ("  skm", &skm, sizeof (struct GNUNET_HashCode)); -    GNUNET_free (priv1); -    GNUNET_free (priv2); -  } - -  { -    struct GNUNET_CRYPTO_EddsaPrivateKey *priv; -    struct GNUNET_CRYPTO_EddsaPublicKey pub; -    priv = GNUNET_CRYPTO_eddsa_key_create (); -    GNUNET_CRYPTO_eddsa_key_get_public (priv, &pub); - -    printf ("eddsa key:\n"); -    display_data ("  priv", priv, sizeof (struct -                                          GNUNET_CRYPTO_EddsaPrivateKey)); -    display_data ("  pub", &pub, sizeof (struct GNUNET_CRYPTO_EddsaPublicKey)); -    GNUNET_free (priv); -  } -  { -    struct GNUNET_CRYPTO_EddsaPrivateKey *priv; -    struct GNUNET_CRYPTO_EddsaPublicKey pub; -    struct GNUNET_CRYPTO_EddsaSignature sig; -    struct TALER_ProposalDataPS data = { 0 }; -    priv = GNUNET_CRYPTO_eddsa_key_create (); -    GNUNET_CRYPTO_eddsa_key_get_public (priv, &pub); -    data.purpose.size = htonl (sizeof (struct TALER_ProposalDataPS)); -    GNUNET_assert (GNUNET_OK == GNUNET_CRYPTO_eddsa_sign (priv, &data.purpose, -                                                          &sig)); -    GNUNET_assert (GNUNET_OK == GNUNET_CRYPTO_eddsa_verify (0, -                                                            &data.purpose, -                                                            &sig, -                                                            &pub)); - -    printf ("eddsa sig:\n"); -    display_data ("  priv", priv, sizeof (struct -                                          GNUNET_CRYPTO_EddsaPrivateKey)); -    display_data ("  pub", &pub, sizeof (struct GNUNET_CRYPTO_EddsaPublicKey)); -    display_data ("  data", &data, sizeof (struct TALER_ProposalDataPS)); -    display_data ("  sig", &sig, sizeof (struct GNUNET_CRYPTO_EddsaSignature)); -    GNUNET_free (priv); -  } - -  { -    size_t out_len = 64; -    char out[out_len]; -    char *ikm = "I'm the secret input key material"; -    char *salt = "I'm very salty"; -    char *ctx = "I'm a context chunk, also known as 'info' in the RFC"; - -    GNUNET_assert (GNUNET_OK == GNUNET_CRYPTO_kdf (&out, -                                                   out_len, -                                                   salt, -                                                   strlen (salt), -                                                   ikm, -                                                   strlen (ikm), -                                                   ctx, -                                                   strlen (ctx), -                                                   NULL)); - -    printf ("kdf:\n"); -    display_data ("  salt", salt, strlen (salt)); -    display_data ("  ikm", ikm, strlen (ikm)); -    display_data ("  ctx", ctx, strlen (ctx)); -    printf ("  out_len %u\n", (unsigned int) out_len); -    display_data ("  out", out, out_len); -  } -  { -    struct GNUNET_CRYPTO_EcdhePrivateKey *priv_ecdhe; -    struct GNUNET_CRYPTO_EcdhePublicKey pub_ecdhe; -    struct GNUNET_CRYPTO_EddsaPrivateKey *priv_eddsa; -    struct GNUNET_CRYPTO_EddsaPublicKey pub_eddsa; -    struct GNUNET_HashCode key_material; -    priv_ecdhe = GNUNET_CRYPTO_ecdhe_key_create (); -    GNUNET_CRYPTO_ecdhe_key_get_public (priv_ecdhe, &pub_ecdhe); -    priv_eddsa = GNUNET_CRYPTO_eddsa_key_create (); -    GNUNET_CRYPTO_eddsa_key_get_public (priv_eddsa, &pub_eddsa); -    GNUNET_CRYPTO_ecdh_eddsa (priv_ecdhe, &pub_eddsa, &key_material); - -    printf ("eddsa_ecdh:\n"); -    display_data ("  priv_ecdhe", priv_ecdhe, sizeof (struct -                                                      GNUNET_CRYPTO_EcdhePrivateKey)); -    display_data ("  pub_ecdhe", &pub_ecdhe, sizeof (struct -                                                     GNUNET_CRYPTO_EcdhePublicKey)); -    display_data ("  priv_eddsa", priv_eddsa, sizeof (struct -                                                      GNUNET_CRYPTO_EddsaPrivateKey)); -    display_data ("  pub_eddsa", &pub_eddsa, sizeof (struct -                                                     GNUNET_CRYPTO_EddsaPublicKey)); -    display_data ("  key_material", &key_material, sizeof (struct -                                                           GNUNET_HashCode)); -  } - -  { -    struct GNUNET_CRYPTO_RsaPrivateKey *skey; -    struct GNUNET_CRYPTO_RsaPublicKey *pkey; -    struct GNUNET_HashCode message_hash; -    struct GNUNET_CRYPTO_RsaBlindingKeySecret bks; -    struct GNUNET_CRYPTO_RsaSignature *blinded_sig; -    struct GNUNET_CRYPTO_RsaSignature *sig; -    char *blinded_data; -    size_t blinded_len; -    char *public_enc_data; -    size_t public_enc_len; -    char *blinded_sig_enc_data; -    size_t blinded_sig_enc_length; -    char *sig_enc_data; -    size_t sig_enc_length; -    skey = GNUNET_CRYPTO_rsa_private_key_create (2048); -    pkey = GNUNET_CRYPTO_rsa_private_key_get_public (skey); -    GNUNET_CRYPTO_random_block (GNUNET_CRYPTO_QUALITY_WEAK, &message_hash, -                                sizeof (struct GNUNET_HashCode)); -    GNUNET_CRYPTO_random_block (GNUNET_CRYPTO_QUALITY_WEAK, &bks, sizeof (struct -                                                                          GNUNET_CRYPTO_RsaBlindingKeySecret)); -    GNUNET_assert (GNUNET_YES == GNUNET_CRYPTO_rsa_blind (&message_hash, &bks, -                                                          pkey, &blinded_data, -                                                          &blinded_len)); -    blinded_sig = GNUNET_CRYPTO_rsa_sign_blinded (skey, blinded_data, -                                                  blinded_len); -    sig = GNUNET_CRYPTO_rsa_unblind (blinded_sig, &bks, pkey); -    GNUNET_assert (GNUNET_YES == GNUNET_CRYPTO_rsa_verify (&message_hash, sig, -                                                           pkey)); -    public_enc_len = GNUNET_CRYPTO_rsa_public_key_encode (pkey, -                                                          &public_enc_data); -    blinded_sig_enc_length = GNUNET_CRYPTO_rsa_signature_encode (blinded_sig, -                                                                 & -                                                                 blinded_sig_enc_data); -    sig_enc_length = GNUNET_CRYPTO_rsa_signature_encode (sig, &sig_enc_data); -    printf ("blind signing:\n"); -    display_data ("  message_hash", &message_hash, sizeof (struct -                                                           GNUNET_HashCode)); -    display_data ("  rsa_public_key", public_enc_data, public_enc_len); -    display_data ("  blinding_key_secret", &bks, sizeof (struct -                                                         GNUNET_CRYPTO_RsaBlindingKeySecret)); -    display_data ("  blinded_message", blinded_data, blinded_len); -    display_data ("  blinded_sig", blinded_sig_enc_data, -                  blinded_sig_enc_length); -    display_data ("  sig", sig_enc_data, sig_enc_length); -    GNUNET_CRYPTO_rsa_private_key_free (skey); -    GNUNET_CRYPTO_rsa_public_key_free (pkey); -    GNUNET_CRYPTO_rsa_signature_free (sig); -    GNUNET_CRYPTO_rsa_signature_free (blinded_sig); -  } -} - - -/** - * The main function of the test vector generation tool. - * - * @param argc number of arguments from the command line - * @param argv command line arguments - * @return 0 ok, 1 on error - */ -int -main (int argc, -      char *const *argv) -{ -  const struct GNUNET_GETOPT_CommandLineOption options[] = { -    GNUNET_GETOPT_OPTION_END -  }; - -  /* force linker to link against libtalerutil; if we do -     not do this, the linker may "optimize" libtalerutil -     away and skip #TALER_OS_init(), which we do need */ -  (void) TALER_project_data_default (); -  GNUNET_assert (GNUNET_OK == -                 GNUNET_log_setup ("taler-exchange-dbinit", -                                   "INFO", -                                   NULL)); -  if (GNUNET_OK != -      GNUNET_PROGRAM_run (argc, argv, -                          "taler-exchange-tvg", -                          "Generate test vectors", -                          options, -                          &run, NULL)) -    return 1; -  return 0; -} | 
