aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-wallet-core/src/crypto
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2022-01-12 15:51:56 +0100
committerFlorian Dold <florian@dold.me>2022-01-12 15:51:56 +0100
commitdc596f1f4d494c3bf9e57253d773205dc0479179 (patch)
tree9c5dc7e51a9c21582819be6ad1779937a8d71378 /packages/taler-wallet-core/src/crypto
parentdbdad96b27619b8190571b899d3b11dd6af39335 (diff)
downloadwallet-core-dc596f1f4d494c3bf9e57253d773205dc0479179.tar.xz
implement latest recoup protocol
Diffstat (limited to 'packages/taler-wallet-core/src/crypto')
-rw-r--r--packages/taler-wallet-core/src/crypto/cryptoTypes.ts2
-rw-r--r--packages/taler-wallet-core/src/crypto/workers/cryptoImplementation.ts18
2 files changed, 7 insertions, 13 deletions
diff --git a/packages/taler-wallet-core/src/crypto/cryptoTypes.ts b/packages/taler-wallet-core/src/crypto/cryptoTypes.ts
index 5351815a7..93a7cd1c4 100644
--- a/packages/taler-wallet-core/src/crypto/cryptoTypes.ts
+++ b/packages/taler-wallet-core/src/crypto/cryptoTypes.ts
@@ -157,7 +157,6 @@ export interface CreateRecoupReqRequest {
denomPub: DenominationPubKey;
denomPubHash: string;
denomSig: UnblindedSignature;
- recoupAmount: AmountJson;
}
/**
@@ -170,5 +169,4 @@ export interface CreateRecoupRefreshReqRequest {
denomPub: DenominationPubKey;
denomPubHash: string;
denomSig: UnblindedSignature;
- recoupAmount: AmountJson;
}
diff --git a/packages/taler-wallet-core/src/crypto/workers/cryptoImplementation.ts b/packages/taler-wallet-core/src/crypto/workers/cryptoImplementation.ts
index b366fa9ec..f9dcc6493 100644
--- a/packages/taler-wallet-core/src/crypto/workers/cryptoImplementation.ts
+++ b/packages/taler-wallet-core/src/crypto/workers/cryptoImplementation.ts
@@ -263,7 +263,6 @@ export class CryptoImplementation {
const p = buildSigPS(TalerSignaturePurpose.WALLET_COIN_RECOUP)
.put(decodeCrock(req.denomPubHash))
.put(decodeCrock(req.blindingKey))
- .put(amountToBuffer(Amounts.jsonifyAmount(req.recoupAmount)))
.build();
const coinPriv = decodeCrock(req.coinPriv);
@@ -274,7 +273,6 @@ export class CryptoImplementation {
coin_sig: encodeCrock(coinSig),
denom_pub_hash: req.denomPubHash,
denom_sig: req.denomSig.rsa_signature,
- amount: Amounts.stringify(req.recoupAmount),
};
return paybackRequest;
} else {
@@ -283,7 +281,6 @@ export class CryptoImplementation {
coin_sig: encodeCrock(coinSig),
denom_pub_hash: req.denomPubHash,
denom_sig: req.denomSig,
- amount: Amounts.stringify(req.recoupAmount),
};
return paybackRequest;
}
@@ -292,33 +289,32 @@ export class CryptoImplementation {
/**
* Create and sign a message to recoup a coin.
*/
- createRecoupRefreshRequest(req: CreateRecoupRefreshReqRequest): RecoupRefreshRequest {
+ createRecoupRefreshRequest(
+ req: CreateRecoupRefreshReqRequest,
+ ): RecoupRefreshRequest {
const p = buildSigPS(TalerSignaturePurpose.WALLET_COIN_RECOUP_REFRESH)
.put(decodeCrock(req.denomPubHash))
.put(decodeCrock(req.blindingKey))
- .put(amountToBuffer(Amounts.jsonifyAmount(req.recoupAmount)))
.build();
const coinPriv = decodeCrock(req.coinPriv);
const coinSig = eddsaSign(p, coinPriv);
if (req.denomPub.cipher === DenomKeyType.LegacyRsa) {
- const paybackRequest: RecoupRefreshRequest = {
+ const recoupRequest: RecoupRefreshRequest = {
coin_blind_key_secret: req.blindingKey,
coin_sig: encodeCrock(coinSig),
denom_pub_hash: req.denomPubHash,
denom_sig: req.denomSig.rsa_signature,
- amount: Amounts.stringify(req.recoupAmount),
};
- return paybackRequest;
+ return recoupRequest;
} else {
- const paybackRequest: RecoupRefreshRequest = {
+ const recoupRequest: RecoupRefreshRequest = {
coin_blind_key_secret: req.blindingKey,
coin_sig: encodeCrock(coinSig),
denom_pub_hash: req.denomPubHash,
denom_sig: req.denomSig,
- amount: Amounts.stringify(req.recoupAmount),
};
- return paybackRequest;
+ return recoupRequest;
}
}