ECVRF Code Utils#
- pragma_sdk.common.randomness.randomness_utils.ecvrf_proof_to_hash(pi_string)[source]#
- Input:
pi_string - VRF proof, octet string of length ptLen+n+qLen (80) bytes
- Output:
(“VALID”, beta_string) where beta_string is the VRF hash output, octet string of length hLen (64) bytes, or (“INVALID”, []) upon failure
- pragma_sdk.common.randomness.randomness_utils.ecvrf_prove(secret_key, alpha_string)[source]#
- Input:
secret_key - VRF private key (32 bytes) alpha_string - input alpha, an octet string
- Output:
(“VALID”, pi_string) - where pi_string is the VRF proof, octet string of length ptLen+n+qLen (80) bytes, or (“INVALID”, []) upon failure
- pragma_sdk.common.randomness.randomness_utils.ecvrf_verify(y, pi_string, alpha_string) -> (<class 'str'>, <class 'list'>)[source]#
- Input:
y - public key, an EC point as bytes pi_string - VRF proof, octet string of length ptLen+n+qLen (80) bytes alpha_string - VRF input, octet string
- Output:
(“VALID”, beta_string), where beta_string is the VRF hash output, octet string of length hLen (64) bytes; or (“INVALID”, []) upon failure