aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2022-03-07 21:49:11 +0100
committerFlorian Dold <florian@dold.me>2022-03-07 21:49:11 +0100
commit6df92029353d70195a7e7d989719e674473b0587 (patch)
treec2ac5b6e1a2e2533a87d38eafc2489b5b3da5825
parent0323868e10ca1fc5d3e10ad9e6866b986f552680 (diff)
fix recoup protocol breakage
-rw-r--r--packages/taler-util/src/talerTypes.ts28
-rw-r--r--packages/taler-wallet-core/src/crypto/workers/cryptoImplementation.ts8
2 files changed, 35 insertions, 1 deletions
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 {