diff --git a/src/identity.ts b/src/identity.ts index 06cd436..ecd64ca 100644 --- a/src/identity.ts +++ b/src/identity.ts @@ -14,7 +14,7 @@ export class IdentityCredential { const idNullifier = memKeys.subarray(32, 64); const idSecretHash = memKeys.subarray(64, 96); const idCommitment = memKeys.subarray(96); - const idCommitmentBigInt = buildBigIntFromUint8Array(idCommitment); + const idCommitmentBigInt = buildBigIntFromUint8Array(idCommitment, 96); return new IdentityCredential( idTrapdoor, diff --git a/src/utils/bytes.ts b/src/utils/bytes.ts index 000488c..279a2b3 100644 --- a/src/utils/bytes.ts +++ b/src/utils/bytes.ts @@ -61,9 +61,12 @@ export function writeUIntLE( * @param array: Uint8Array * @returns BigInt */ -export function buildBigIntFromUint8Array(array: Uint8Array): bigint { +export function buildBigIntFromUint8Array( + array: Uint8Array, + byteOffset: number = 0 +): bigint { const dataView = new DataView(array.buffer); - return dataView.getBigUint64(0, true); + return dataView.getBigUint64(byteOffset, true); } /**