diff options
author | Christian Grothoff <christian@grothoff.org> | 2021-11-05 22:48:11 +0100 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2021-11-05 22:48:11 +0100 |
commit | eaf9d728f54681be4e9ed3467ff9d10e71ad2b04 (patch) | |
tree | 3fc06dfc4a1dca958f3b810b740f915215503d1d /src/lib/exchange_api_link.c | |
parent | ba627bf84c89ea93a117bce8563b30a3d460e633 (diff) |
more crypto refactoring
Diffstat (limited to 'src/lib/exchange_api_link.c')
-rw-r--r-- | src/lib/exchange_api_link.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/lib/exchange_api_link.c b/src/lib/exchange_api_link.c index f544e71e3..a9dc8852f 100644 --- a/src/lib/exchange_api_link.c +++ b/src/lib/exchange_api_link.c @@ -123,14 +123,16 @@ parse_link_coin (const struct TALER_EXCHANGE_LinkHandle *lh, &fc); /* extract coin and signature */ + if (GNUNET_OK != + TALER_denom_sig_unblind (sig, + &bsig, + &fc.blinding_key, + &rpub)) + { + GNUNET_break_op (0); + return GNUNET_SYSERR; + } *coin_priv = fc.coin_priv; - // FIXME: use more generlized unblinding API! - GNUNET_assert (TALER_DENOMINATION_RSA == bsig.cipher); - sig->cipher = TALER_DENOMINATION_RSA; - sig->details.rsa_signature - = TALER_rsa_unblind (bsig.details.blinded_rsa_signature, - &fc.blinding_key.rsa_bks, - rpub.details.rsa_public_key); /* verify link_sig */ { struct TALER_PlanchetDetail pd; |