fix: use correct offset when converting commitment to bigint

This commit is contained in:
Arseniy Klempner 2024-03-21 20:49:28 -07:00
parent 3dc59084c9
commit 10d463a512
No known key found for this signature in database
GPG Key ID: 59967D458EFBF01B
2 changed files with 6 additions and 3 deletions

View File

@ -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,

View File

@ -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);
}
/**