taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

commit 63eaaa722d5f5e902cac43ca4e1e367a289426a5
parent fa7275c153452f99c3ac8259f68487b0589a9ed1
Author: Özgür Kesim <oec-taler@kesim.org>
Date:   Thu, 16 Jan 2025 12:39:40 +0100

[exchange] refine recoup requests

The new withdraw request requires adjustments in the
requests, too.  Now that we store an array of blinded
coins for each withdraw, in order to find a coin to
recoup in the database, we need the hash of the commitment
of the original withdrawal for lookup, and the index
of the coin in the array.

Diffstat:
Mcore/api-exchange.rst | 18++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)

diff --git a/core/api-exchange.rst b/core/api-exchange.rst @@ -2830,9 +2830,16 @@ Coin History // that is important to fix the coin's denomination. h_denom_pub: HashCode; - // Coin blinding key. + // Coin blinding key that was used in the original withdraw request. coin_blind: DenominationBlindingKeyP; + // The hash of the withdraw commitment of the original withdraw + // request that this coin was part of + h_commitment: HashCode; + + // Coin's index in the original withdraw request, starting at 0 + coin_index: Integer; + // Reserve receiving the recoup. reserve_pub: EddsaPublicKey; @@ -2904,9 +2911,16 @@ Coin History // that is important to fix the coin's denomination. h_denom_pub: HashCode; - // Coin blinding key. + // Coin blinding key that was used in the original withdraw request. coin_blind: DenominationBlindingKeyP; + // The hash of the withdraw commitment of the original withdraw + // request that this coin was part of + h_commitment: HashCode; + + // Coin's index in the original withdraw request, starting at 0 + coin_index: Integer; + // Signature by the exchange over a // `TALER_RecoupRefreshConfirmationPS` // of purpose ``TALER_SIGNATURE_EXCHANGE_CONFIRM_RECOUP_REFRESH``.