[][src]Trait storage_proofs::porep::PoRep

pub trait PoRep<'a, H: Hasher>: ProofScheme<'a> {
    type Tau;
    type ProverAux;
    fn replicate(
        pub_params: &'a Self::PublicParams,
        replica_id: &H::Domain,
        data: &mut [u8],
        data_tree: Option<MerkleTree<H::Domain, H::Function>>
    ) -> Result<(Self::Tau, Self::ProverAux)>;
fn extract_all(
        pub_params: &'a Self::PublicParams,
        replica_id: &H::Domain,
        replica: &[u8]
    ) -> Result<Vec<u8>>;
fn extract(
        pub_params: &'a Self::PublicParams,
        replica_id: &H::Domain,
        replica: &[u8],
        node: usize
    ) -> Result<Vec<u8>>; }

Associated Types

type Tau

type ProverAux

Loading content...

Required methods

fn replicate(
    pub_params: &'a Self::PublicParams,
    replica_id: &H::Domain,
    data: &mut [u8],
    data_tree: Option<MerkleTree<H::Domain, H::Function>>
) -> Result<(Self::Tau, Self::ProverAux)>

fn extract_all(
    pub_params: &'a Self::PublicParams,
    replica_id: &H::Domain,
    replica: &[u8]
) -> Result<Vec<u8>>

fn extract(
    pub_params: &'a Self::PublicParams,
    replica_id: &H::Domain,
    replica: &[u8],
    node: usize
) -> Result<Vec<u8>>

Loading content...

Implementors

impl<'a, 'c, L: Layers> PoRep<'a, <L as Layers>::Hasher> for L[src]

type Tau = Tau<<L::Hasher as Hasher>::Domain>

type ProverAux = Vec<MerkleTree<<L::Hasher as Hasher>::Domain, <L::Hasher as Hasher>::Function>>

impl<'a, H, G> PoRep<'a, H> for DrgPoRep<'a, H, G> where
    H: 'a + Hasher,
    G: 'a + Graph<H> + ParameterSetMetadata + Sync + Send
[src]

type Tau = Tau<H::Domain>

type ProverAux = ProverAux<H>

Loading content...