pub struct KynVdfVerifier { /* private fields */ }Expand description
Pure Rust Wesolowski VDF verifier.
A thin stateful wrapper around verify_chia_vdf that holds the discriminant
size so callers don’t need to pass it on every verification call.
§Example
use kyn_vdf::KynVdfVerifier;
let verifier = KynVdfVerifier::new(); // 1024-bit discriminant
let is_valid = verifier.verify(challenge, proof, 100_000)?;Implementations§
Source§impl KynVdfVerifier
impl KynVdfVerifier
Sourcepub fn new() -> Self
pub fn new() -> Self
Creates a new KynVdfVerifier with the standard 1024-bit discriminant.
This matches the discriminant size used by the Chia Network mainnet VDF.
Sourcepub fn with_bits(discriminant_size_bits: usize) -> Self
pub fn with_bits(discriminant_size_bits: usize) -> Self
Creates a new KynVdfVerifier with a custom discriminant bit-size.
Use this when verifying proofs generated with a non-standard discriminant size.
discriminant_size_bits must be a non-zero multiple of 8.
Sourcepub fn verify(
&self,
challenge: &[u8],
proof_bytes: &[u8],
iterations: u64,
) -> Result<bool, KynVdfError>
pub fn verify( &self, challenge: &[u8], proof_bytes: &[u8], iterations: u64, ) -> Result<bool, KynVdfError>
Verifies a Wesolowski VDF proof.
Delegates to verify_chia_vdf with this verifier’s configured discriminant size.
§Errors
See verify_chia_vdf for the full list of possible errors.
Trait Implementations§
Source§impl Clone for KynVdfVerifier
impl Clone for KynVdfVerifier
Source§fn clone(&self) -> KynVdfVerifier
fn clone(&self) -> KynVdfVerifier
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for KynVdfVerifier
impl Debug for KynVdfVerifier
Source§impl Default for KynVdfVerifier
impl Default for KynVdfVerifier
Source§fn default() -> KynVdfVerifier
fn default() -> KynVdfVerifier
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for KynVdfVerifier
impl RefUnwindSafe for KynVdfVerifier
impl Send for KynVdfVerifier
impl Sync for KynVdfVerifier
impl Unpin for KynVdfVerifier
impl UnsafeUnpin for KynVdfVerifier
impl UnwindSafe for KynVdfVerifier
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more