summaryrefslogtreecommitdiff
path: root/packages/taler-wallet-core/src/crypto
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2022-10-31 16:50:54 +0100
committerFlorian Dold <florian@dold.me>2022-10-31 16:51:01 +0100
commit780eb20227d07afeea654e8b883790b6b1ab8e1c (patch)
treebb3ed226e4301d313133a8b79c80a800447dd604 /packages/taler-wallet-core/src/crypto
parent6d08ed0680bc94637212e4bc18e162e930eff77f (diff)
downloadwallet-core-780eb20227d07afeea654e8b883790b6b1ab8e1c.tar.gz
wallet-core-780eb20227d07afeea654e8b883790b6b1ab8e1c.tar.bz2
wallet-core-780eb20227d07afeea654e8b883790b6b1ab8e1c.zip
wallet-core: fix deposit with age restrictions
Diffstat (limited to 'packages/taler-wallet-core/src/crypto')
-rw-r--r--packages/taler-wallet-core/src/crypto/cryptoImplementation.ts5
-rw-r--r--packages/taler-wallet-core/src/crypto/workers/nodeThreadWorker.ts3
2 files changed, 4 insertions, 4 deletions
diff --git a/packages/taler-wallet-core/src/crypto/cryptoImplementation.ts b/packages/taler-wallet-core/src/crypto/cryptoImplementation.ts
index 98bb6c9cb..892d3fc8f 100644
--- a/packages/taler-wallet-core/src/crypto/cryptoImplementation.ts
+++ b/packages/taler-wallet-core/src/crypto/cryptoImplementation.ts
@@ -1074,13 +1074,11 @@ export const nativeCryptoR: TalerCryptoInterfaceR = {
// FIXME: put extensions here if used
const hExt = new Uint8Array(64);
let hAgeCommitment: Uint8Array;
- let maybeAgeCommitmentHash: string | undefined = undefined;
let minimumAgeSig: string | undefined = undefined;
if (depositInfo.ageCommitmentProof) {
const ach = AgeRestriction.hashCommitment(
depositInfo.ageCommitmentProof.commitment,
);
- maybeAgeCommitmentHash = ach;
hAgeCommitment = decodeCrock(ach);
if (depositInfo.requiredMinimumAge != null) {
minimumAgeSig = encodeCrock(
@@ -1130,11 +1128,12 @@ export const nativeCryptoR: TalerCryptoInterfaceR = {
};
if (depositInfo.requiredMinimumAge != null) {
+ // These are only required by the merchant
s.minimum_age_sig = minimumAgeSig;
s.age_commitment =
depositInfo.ageCommitmentProof?.commitment.publicKeys;
} else if (depositInfo.ageCommitmentProof) {
- (s as any).h_age_commitment = encodeCrock(hAgeCommitment);
+ s.h_age_commitment = encodeCrock(hAgeCommitment);
}
return s;
diff --git a/packages/taler-wallet-core/src/crypto/workers/nodeThreadWorker.ts b/packages/taler-wallet-core/src/crypto/workers/nodeThreadWorker.ts
index de8f12902..f255e3cfd 100644
--- a/packages/taler-wallet-core/src/crypto/workers/nodeThreadWorker.ts
+++ b/packages/taler-wallet-core/src/crypto/workers/nodeThreadWorker.ts
@@ -19,6 +19,7 @@
*/
import { Logger } from "@gnu-taler/taler-util";
import os from "os";
+import url from "url";
import { nativeCryptoR } from "../cryptoImplementation.js";
import { CryptoWorkerFactory } from "./cryptoDispatcher.js";
import { CryptoWorker } from "./cryptoWorkerInterface.js";
@@ -26,7 +27,7 @@ import { processRequestWithImpl } from "./worker-common.js";
const logger = new Logger("nodeThreadWorker.ts");
-const f = import.meta.url;
+const f = url.fileURLToPath(import.meta.url);
const workerCode = `
// Try loading the glue library for embedded