[][src]Struct resource_proof::ResourceProof

pub struct ResourceProof { /* fields omitted */ }

Holds the prover requirements

Implementations

impl ResourceProof[src]

pub fn new(min_size: usize, difficulty: u8) -> ResourceProof[src]

Configure a new prover.

min_size is target data size in bytes. It may be small or large to test bandwidth (although it may be compressible).

difficulty is the number of leading binary zeros required in the hash. Each extra zero doubles the difficulty.

pub fn create_proof_data(&self, nonce: &[u8]) -> VecDeque<u8>[src]

Create the proof data with a given nonce.

pub fn create_prover(&self, data: VecDeque<u8>) -> ResourceProver[src]

Create a prover object. Requires a copy of the data (from create_proof_data) to be passed in.

pub fn validate_all(
    &self,
    nonce: &[u8],
    received_data: &VecDeque<u8>,
    key: u64
) -> bool
[src]

Validate the proof data and key (this is the number of zeros to be pushed onto the data).

pub fn validate_data(&self, nonce: &[u8], data: &VecDeque<u8>) -> bool[src]

Validate the data for the given nonce and size data.

pub fn validate_proof(&self, nonce: &[u8], key: u64) -> bool[src]

Validate the proof key (this must recreate the data, hence validate_all is faster when both must be checked).

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.