vrfVerify method

bool vrfVerify(
  1. MerlinTranscript script,
  2. VRFPreOut output,
  3. VRFProof proof, {
  4. MerlinTranscript? verifyScript,
})

Verifies a Verifiable Random Function (VRF) output and its proof.

Parameters:

  • script: A transcript containing context-specific information used for VRF verification.
  • output: The VRF output to be verified.
  • proof: The proof associated with the VRF output.

Implementation

bool vrfVerify(
  MerlinTranscript script,
  VRFPreOut output,
  VRFProof proof, {
  MerlinTranscript? verifyScript,
}) {
  final publicPointHash = vrfHash(script);
  final vrf = VRFInOut._(publicPointHash.toBytes(), output.toBytes());
  final vrifyScript = verifyScript ?? MerlinTranscript("VRF");
  return dleqVerify(vrifyScript, vrf, proof);
}