diff --git a/packages/proof/src/hash.ts b/packages/proof/src/hash.ts index 6f9285ae5..a320fafb5 100644 --- a/packages/proof/src/hash.ts +++ b/packages/proof/src/hash.ts @@ -9,5 +9,9 @@ import { NumericString } from "snarkjs" * @returns The message digest. */ export default function hash(message: BigNumberish): NumericString { - return (BigInt(keccak256(toBeHex(message, 32))) >> 8n).toString() + // SNARK scalar field modulus (Baby Jubjub curve) + const SNARK_SCALAR_FIELD = 21888242871839275222246405745257275088548364400416034343698204186575808495617n + + const hashValue = BigInt(keccak256(toBeHex(message, 32))) + return (hashValue % SNARK_SCALAR_FIELD).toString() }