taler-typescript-core

Wallet core logic and WebUIs for various components
Log | Files | Refs | Submodules | README | LICENSE

commit 9fe7376c4c6b41a30dc94ab45815dcf90e5ff23c
parent aacf7d4424d5d79b0f47882180603acd42e135f5
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date:   Fri,  7 Nov 2025 21:57:42 +0100

less magic numbers

Diffstat:
Mpackages/taler-util/src/taler-crypto.ts | 2++
Mpackages/taler-wallet-core/src/mailbox.ts | 12+++---------
2 files changed, 5 insertions(+), 9 deletions(-)

diff --git a/packages/taler-util/src/taler-crypto.ts b/packages/taler-util/src/taler-crypto.ts @@ -1122,6 +1122,8 @@ export enum TalerSignaturePurpose { WALLET_PURSE_ECONTRACT = 1216, WALLET_PURSE_DELETE = 1220, WALLET_TOKEN_USE = 1222, + MAILBOX_MESSAGES_DELETE = 1223, + MAILBOX_KEYS_UPDATE = 1224, WALLET_COIN_HISTORY = 1209, EXCHANGE_CONFIRM_RECOUP = 1039, EXCHANGE_CONFIRM_RECOUP_REFRESH = 1041, diff --git a/packages/taler-wallet-core/src/mailbox.ts b/packages/taler-wallet-core/src/mailbox.ts @@ -49,6 +49,7 @@ import { Duration, AbsoluteTime, eddsaVerify, + TalerSignaturePurpose, } from "@gnu-taler/taler-util"; import { WalletExecutionContext, @@ -153,10 +154,8 @@ export async function updateMailboxKeys( ...(new Uint8Array(expNboBuffer))]); const digest = sha512(digestBuffer); vMsg.setUint32(0, messageHeader.byteLength + digest.length); - // FIXME: Where is gana? - vMsg.setUint32(4, 1224); + vMsg.setUint32(4, TalerSignaturePurpose.MAILBOX_KEYS_UPDATE); const msgToSign = new Uint8Array([...(new Uint8Array(messageHeader)), ...digest]); - // FIXME sign const signature = eddsaSign(msgToSign, privateSigningKey); const keys: MailboxMessageKeys = { signingKey: encodeCrock(signingKey), @@ -308,15 +307,10 @@ export async function refreshMailbox( const vMsg = new DataView(messageHeader); const digest = sha512(new Uint8Array(messages)); vMsg.setUint32(0, 8 + 64); - // FIXME: Where is gana? - vMsg.setUint32(4, 1223); + vMsg.setUint32(4, TalerSignaturePurpose.MAILBOX_MESSAGES_DELETE); const msgToSign: Uint8Array = new Uint8Array([...(new Uint8Array(messageHeader)), ...digest]); const privateSigningKey: Uint8Array = decodeCrock(mailboxConf.privateKey); const signature = eddsaSign(msgToSign, privateSigningKey); - const mailboxPubkeyString = encodeCrock(eddsaGetPublic(decodeCrock(mailboxConf.privateKey))); - if (!eddsaVerify(msgToSign, signature, decodeCrock(mailboxPubkeyString))) { - logger.error("Signature invalid!"); - } succeedOrThrow(await mailboxClient.deleteMessages({ mailboxConf: mailboxConf, matchIf: res.body.etag,