use libecvrf::{ extends::ScalarExtend, secp256k1::{curve::Scalar, SecretKey}, util::thread_rng, ECVRF, }; fn main() { let secret_key = SecretKey::random(&mut thread_rng()); let ecvrf = ECVRF::new(secret_key); let alpha = Scalar::randomize(); let proof = ecvrf.prove(&alpha); println!("result: {:#?}", proof); println!("{:?}", ecvrf.verify(&alpha, &proof)); let smart_contract_proof = ecvrf.prove_contract(&alpha); println!("result: {:#?}", smart_contract_proof); }