diff options
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/taler-util/src/talerTypes.ts | 9 | ||||
| -rw-r--r-- | packages/taler-wallet-core/src/crypto/cryptoImplementation.ts | 7 | 
2 files changed, 12 insertions, 4 deletions
| diff --git a/packages/taler-util/src/talerTypes.ts b/packages/taler-util/src/talerTypes.ts index 014631ad7..471c7e927 100644 --- a/packages/taler-util/src/talerTypes.ts +++ b/packages/taler-util/src/talerTypes.ts @@ -1813,11 +1813,14 @@ export interface PurseDeposit {    ub_sig: UnblindedSignature;    /** -   * Age commitment hash for the coin, if the denomination is age-restricted. +   * Age commitment for the coin, if the denomination is age-restricted.     */ -  h_age_commitment?: HashCodeString; +  age_commitment?: string[]; -  // FIXME-Oec: proof of age is missing. +  /** +   * Attestation for the minimum age, if the denomination is age-restricted. +   */ +  attest?: string;    /**     * Signature over TALER_PurseDepositSignaturePS diff --git a/packages/taler-wallet-core/src/crypto/cryptoImplementation.ts b/packages/taler-wallet-core/src/crypto/cryptoImplementation.ts index 6336539fa..c6be1d466 100644 --- a/packages/taler-wallet-core/src/crypto/cryptoImplementation.ts +++ b/packages/taler-wallet-core/src/crypto/cryptoImplementation.ts @@ -1362,12 +1362,15 @@ export const nativeCryptoR: TalerCryptoInterfaceR = {      const hExchangeBaseUrl = hash(stringToBytes(req.exchangeBaseUrl + "\0"));      const deposits: PurseDeposit[] = [];      for (const c of req.coins) { +      let haveAch: boolean;        let maybeAch: Uint8Array;        if (c.ageCommitmentProof) { +        haveAch = true;          maybeAch = decodeCrock(            AgeRestriction.hashCommitment(c.ageCommitmentProof.commitment),          );        } else { +        haveAch = false;          maybeAch = new Uint8Array(32);        }        const sigBlob = buildSigPS(TalerSignaturePurpose.WALLET_PURSE_DEPOSIT) @@ -1387,7 +1390,9 @@ export const nativeCryptoR: TalerCryptoInterfaceR = {          coin_sig: sigResp.sig,          denom_pub_hash: c.denomPubHash,          ub_sig: c.denomSig, -        h_age_commitment: undefined, +        age_commitment: c.ageCommitmentProof +          ? c.ageCommitmentProof.commitment.publicKeys +          : undefined,        });      }      return { | 
