From 6df92029353d70195a7e7d989719e674473b0587 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Mon, 7 Mar 2022 21:49:11 +0100 Subject: fix recoup protocol breakage --- packages/taler-util/src/talerTypes.ts | 28 +++++++++++++++++++++- .../src/crypto/workers/cryptoImplementation.ts | 8 +++++++ 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/packages/taler-util/src/talerTypes.ts b/packages/taler-util/src/talerTypes.ts index fa544aeb6..4ea1b45fc 100644 --- a/packages/taler-util/src/talerTypes.ts +++ b/packages/taler-util/src/talerTypes.ts @@ -147,9 +147,31 @@ export class ExchangeAuditor { denomination_keys: AuditorDenomSig[]; } +export type ExchangeWithdrawValue = + | ExchangeRsaWithdrawValue + | ExchangeCsWithdrawValue; + +export interface ExchangeRsaWithdrawValue { + cipher: "RSA"; +} + +export interface ExchangeCsWithdrawValue { + cipher: "CS"; + + /** + * CSR R0 value + */ + r_pub_0: string; + + /** + * CSR R1 value + */ + r_pub_1: string; +} + export interface RecoupRequest { /** - * Hashed enomination public key of the coin we want to get + * Hashed denomination public key of the coin we want to get * paid back. */ denom_pub_hash: string; @@ -171,6 +193,8 @@ export interface RecoupRequest { * Signature of TALER_RecoupRequestPS created with the coin's private key. */ coin_sig: string; + + ewv: ExchangeWithdrawValue; } export interface RecoupRefreshRequest { @@ -197,6 +221,8 @@ export interface RecoupRefreshRequest { * the coin's private key. */ coin_sig: string; + + ewv: ExchangeWithdrawValue; } /** diff --git a/packages/taler-wallet-core/src/crypto/workers/cryptoImplementation.ts b/packages/taler-wallet-core/src/crypto/workers/cryptoImplementation.ts index d96e83058..af77e2be4 100644 --- a/packages/taler-wallet-core/src/crypto/workers/cryptoImplementation.ts +++ b/packages/taler-wallet-core/src/crypto/workers/cryptoImplementation.ts @@ -272,6 +272,10 @@ export class CryptoImplementation { coin_sig: encodeCrock(coinSig), denom_pub_hash: req.denomPubHash, denom_sig: req.denomSig, + // FIXME! + ewv: { + cipher: "RSA", + }, }; return paybackRequest; } else { @@ -298,6 +302,10 @@ export class CryptoImplementation { coin_sig: encodeCrock(coinSig), denom_pub_hash: req.denomPubHash, denom_sig: req.denomSig, + // FIXME! + ewv: { + cipher: "RSA", + }, }; return recoupRequest; } else { -- cgit v1.2.3