exchange

Base system with REST service to issue digital coins, run by the payment service provider
Log | Files | Refs | Submodules | README | LICENSE

commit 0b370a68148507016c6e707b01918350887887f7
parent 8175fdfa0f47e74e239190e809eff4dda5565a76
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sat,  6 Nov 2021 17:26:11 +0100

add extension hashing

Diffstat:
Msrc/include/taler_signatures.h | 7-------
Msrc/util/wallet_signatures.c | 10+++++-----
2 files changed, 5 insertions(+), 12 deletions(-)

diff --git a/src/include/taler_signatures.h b/src/include/taler_signatures.h @@ -530,13 +530,6 @@ struct TALER_DepositRequestPS */ struct TALER_MerchantPublicKeyP merchant; - /** - * The coin's public key. This is the value that must have been - * signed (blindly) by the Exchange. The deposit request is to be - * signed by the corresponding private key (using EdDSA). - */ - struct TALER_CoinSpendPublicKeyP coin_pub; - }; diff --git a/src/util/wallet_signatures.c b/src/util/wallet_signatures.c @@ -48,13 +48,12 @@ TALER_wallet_deposit_sign ( .merchant = *merchant_pub }; - // FIXME: sign also over h_extensions! + if (NULL != h_extensions) + dr.h_extensions = *h_extensions; GNUNET_assert (GNUNET_OK == GNUNET_TIME_round_abs (&wallet_timestamp)); GNUNET_assert (GNUNET_OK == GNUNET_TIME_round_abs (&refund_deadline)); - GNUNET_CRYPTO_eddsa_key_get_public (&coin_priv->eddsa_priv, - &dr.coin_pub.eddsa_pub); TALER_amount_hton (&dr.amount_with_fee, amount); TALER_amount_hton (&dr.deposit_fee, @@ -87,10 +86,11 @@ TALER_wallet_deposit_verify ( .h_denom_pub = *h_denom_pub, .wallet_timestamp = GNUNET_TIME_absolute_hton (wallet_timestamp), .refund_deadline = GNUNET_TIME_absolute_hton (refund_deadline), - .merchant = *merchant_pub, - .coin_pub = *coin_pub + .merchant = *merchant_pub }; + if (NULL != h_extensions) + dr.h_extensions = *h_extensions; TALER_amount_hton (&dr.amount_with_fee, amount); TALER_amount_hton (&dr.deposit_fee,