diff options
author | Christian Grothoff <christian@grothoff.org> | 2015-05-16 14:15:34 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2015-05-16 14:15:34 +0200 |
commit | f4a59d1cccd058b3180ea23ed9fdea69cb2129b8 (patch) | |
tree | ad732a3b92fcd74f5c1295ceee5c06e3a63b3206 /src/mint/taler-mint-httpd_test.c | |
parent | d080e59e272e307b9ebc267f2c4dd2941cd79436 (diff) |
eliminating ECDSA, replacing with EdDSA-ECDHE-combo in transfer protocol
Diffstat (limited to 'src/mint/taler-mint-httpd_test.c')
-rw-r--r-- | src/mint/taler-mint-httpd_test.c | 92 |
1 files changed, 2 insertions, 90 deletions
diff --git a/src/mint/taler-mint-httpd_test.c b/src/mint/taler-mint-httpd_test.c index 6bf11c33e..61bd4d968 100644 --- a/src/mint/taler-mint-httpd_test.c +++ b/src/mint/taler-mint-httpd_test.c @@ -297,97 +297,9 @@ TMH_TEST_handler_test_ecdhe (struct TMH_RequestHandler *rh, /** - * Handle a "/test/ecdsa" request. Parses the JSON in the post, - * which must contain a "ecdsa_pub" with a public key and an - *"ecdsa_sig" with the corresponding signature for a purpose - * of #TALER_SIGNATURE_CLIENT_TEST_ECDSA. If the signature is - * valid, a reply with a #TALER_SIGNATURE_MINT_TEST_ECDSA is - * returned using the same JSON format. - * - * @param rh context of the handler - * @param connection the MHD connection to handle - * @param[in,out] connection_cls the connection's closure (can be updated) - * @param upload_data upload data - * @param[in,out] upload_data_size number of bytes (left) in @a upload_data - * @return MHD result code - */ -int -TMH_TEST_handler_test_ecdsa (struct TMH_RequestHandler *rh, - struct MHD_Connection *connection, - void **connection_cls, - const char *upload_data, - size_t *upload_data_size) -{ - json_t *json; - int res; - struct GNUNET_CRYPTO_EcdsaPublicKey pub; - struct GNUNET_CRYPTO_EcdsaSignature sig; - struct GNUNET_CRYPTO_EccSignaturePurpose purpose; - struct TMH_PARSE_FieldSpecification spec[] = { - TMH_PARSE_MEMBER_FIXED ("ecdsa_pub", &pub), - TMH_PARSE_MEMBER_FIXED ("ecdsa_sig", &sig), - TMH_PARSE_MEMBER_END - }; - struct GNUNET_CRYPTO_EcdsaPrivateKey *pk; - - res = TMH_PARSE_post_json (connection, - connection_cls, - upload_data, - upload_data_size, - &json); - if (GNUNET_SYSERR == res) - return MHD_NO; - if ( (GNUNET_NO == res) || (NULL == json) ) - return MHD_YES; - res = TMH_PARSE_json_data (connection, - json, - spec); - json_decref (json); - if (GNUNET_YES != res) - return (GNUNET_NO == res) ? MHD_YES : MHD_NO; - purpose.size = htonl (sizeof (struct GNUNET_CRYPTO_EccSignaturePurpose)); - purpose.purpose = htonl (TALER_SIGNATURE_CLIENT_TEST_ECDSA); - if (GNUNET_OK != - GNUNET_CRYPTO_ecdsa_verify (TALER_SIGNATURE_CLIENT_TEST_ECDSA, - &purpose, - &sig, - &pub)) - { - TMH_PARSE_release_data (spec); - return TMH_RESPONSE_reply_signature_invalid (connection, - "ecdsa_sig"); - } - TMH_PARSE_release_data (spec); - pk = GNUNET_CRYPTO_ecdsa_key_create (); - purpose.purpose = htonl (TALER_SIGNATURE_MINT_TEST_ECDSA); - if (GNUNET_OK != - GNUNET_CRYPTO_ecdsa_sign (pk, - &purpose, - &sig)) - { - GNUNET_free (pk); - return TMH_RESPONSE_reply_internal_error (connection, - "Failed to ECDSA-sign"); - } - GNUNET_CRYPTO_ecdsa_key_get_public (pk, - &pub); - GNUNET_free (pk); - return TMH_RESPONSE_reply_json_pack (connection, - MHD_HTTP_OK, - "{s:o, s:o}", - "ecdsa_pub", - TALER_json_from_data (&pub, - sizeof (pub)), - "ecdsa_sig", - TALER_json_from_data (&sig, - sizeof (sig))); -} - - -/** * Handle a "/test/eddsa" request. Parses the JSON in the post, * which must contain a "eddsa_pub" with a public key and an - *"ecdsa_sig" with the corresponding signature for a purpose + *"eddsa_sig" with the corresponding signature for a purpose * of #TALER_SIGNATURE_CLIENT_TEST_EDDSA. If the signature is * valid, a reply with a #TALER_SIGNATURE_MINT_TEST_EDDSA is * returned using the same JSON format. @@ -583,7 +495,7 @@ TMH_TEST_handler_test_transfer (struct TMH_RequestHandler *rh, int res; struct TALER_EncryptedLinkSecretP secret_enc; struct TALER_TransferPrivateKeyP trans_priv; - union TALER_CoinSpendPublicKeyP coin_pub; + struct TALER_CoinSpendPublicKeyP coin_pub; struct TMH_PARSE_FieldSpecification spec[] = { TMH_PARSE_MEMBER_FIXED ("secret_enc", &secret_enc), TMH_PARSE_MEMBER_FIXED ("trans_priv", &trans_priv), |