Struct storage_proofs_porep::stacked::Proof [−][src]
pub struct Proof<Tree: MerkleTreeTrait, G: Hasher> { pub comm_d_proofs: MerkleProof<G, U2>, pub comm_r_last_proof: MerkleProof<Tree::Hasher, Tree::Arity, Tree::SubTreeArity, Tree::TopTreeArity>, pub replica_column_proofs: ReplicaColumnProof<MerkleProof<Tree::Hasher, Tree::Arity, Tree::SubTreeArity, Tree::TopTreeArity>>, pub labeling_proofs: Vec<LabelingProof<Tree::Hasher>>, pub encoding_proof: EncodingProof<Tree::Hasher>, }
Fields
comm_d_proofs: MerkleProof<G, U2>
comm_r_last_proof: MerkleProof<Tree::Hasher, Tree::Arity, Tree::SubTreeArity, Tree::TopTreeArity>
replica_column_proofs: ReplicaColumnProof<MerkleProof<Tree::Hasher, Tree::Arity, Tree::SubTreeArity, Tree::TopTreeArity>>
labeling_proofs: Vec<LabelingProof<Tree::Hasher>>
Indexed by layer in 1..layers.
encoding_proof: EncodingProof<Tree::Hasher>
Implementations
pub fn verify(
&self,
pub_params: &PublicParams<Tree>,
pub_inputs: &PublicInputs<<Tree::Hasher as Hasher>::Domain, <G as Hasher>::Domain>,
challenge: usize,
graph: &StackedBucketGraph<Tree::Hasher>
) -> bool
[src]
pub fn verify(
&self,
pub_params: &PublicParams<Tree>,
pub_inputs: &PublicInputs<<Tree::Hasher as Hasher>::Domain, <G as Hasher>::Domain>,
challenge: usize,
graph: &StackedBucketGraph<Tree::Hasher>
) -> bool
[src]Verify the full proof.
Trait Implementations
impl<Tree: Debug + MerkleTreeTrait, G: Debug + Hasher> Debug for Proof<Tree, G> where
Tree::Hasher: Debug,
Tree::Arity: Debug,
Tree::SubTreeArity: Debug,
Tree::TopTreeArity: Debug,
Tree::Hasher: Debug,
Tree::Arity: Debug,
Tree::SubTreeArity: Debug,
Tree::TopTreeArity: Debug,
Tree::Hasher: Debug,
Tree::Hasher: Debug,
[src]
impl<Tree: Debug + MerkleTreeTrait, G: Debug + Hasher> Debug for Proof<Tree, G> where
Tree::Hasher: Debug,
Tree::Arity: Debug,
Tree::SubTreeArity: Debug,
Tree::TopTreeArity: Debug,
Tree::Hasher: Debug,
Tree::Arity: Debug,
Tree::SubTreeArity: Debug,
Tree::TopTreeArity: Debug,
Tree::Hasher: Debug,
Tree::Hasher: Debug,
[src]impl<'de, Tree: MerkleTreeTrait, G: Hasher> Deserialize<'de> for Proof<Tree, G> where
MerkleProof<G, U2>: Deserialize<'de>,
MerkleProof<Tree::Hasher, Tree::Arity, Tree::SubTreeArity, Tree::TopTreeArity>: Deserialize<'de>,
ReplicaColumnProof<MerkleProof<Tree::Hasher, Tree::Arity, Tree::SubTreeArity, Tree::TopTreeArity>>: Deserialize<'de>,
LabelingProof<Tree::Hasher>: Deserialize<'de>,
EncodingProof<Tree::Hasher>: Deserialize<'de>,
[src]
impl<'de, Tree: MerkleTreeTrait, G: Hasher> Deserialize<'de> for Proof<Tree, G> where
MerkleProof<G, U2>: Deserialize<'de>,
MerkleProof<Tree::Hasher, Tree::Arity, Tree::SubTreeArity, Tree::TopTreeArity>: Deserialize<'de>,
ReplicaColumnProof<MerkleProof<Tree::Hasher, Tree::Arity, Tree::SubTreeArity, Tree::TopTreeArity>>: Deserialize<'de>,
LabelingProof<Tree::Hasher>: Deserialize<'de>,
EncodingProof<Tree::Hasher>: Deserialize<'de>,
[src]fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]Deserialize this value from the given Serde deserializer. Read more
impl<Tree: MerkleTreeTrait, G: Hasher> Serialize for Proof<Tree, G> where
MerkleProof<G, U2>: Serialize,
MerkleProof<Tree::Hasher, Tree::Arity, Tree::SubTreeArity, Tree::TopTreeArity>: Serialize,
ReplicaColumnProof<MerkleProof<Tree::Hasher, Tree::Arity, Tree::SubTreeArity, Tree::TopTreeArity>>: Serialize,
LabelingProof<Tree::Hasher>: Serialize,
EncodingProof<Tree::Hasher>: Serialize,
[src]
impl<Tree: MerkleTreeTrait, G: Hasher> Serialize for Proof<Tree, G> where
MerkleProof<G, U2>: Serialize,
MerkleProof<Tree::Hasher, Tree::Arity, Tree::SubTreeArity, Tree::TopTreeArity>: Serialize,
ReplicaColumnProof<MerkleProof<Tree::Hasher, Tree::Arity, Tree::SubTreeArity, Tree::TopTreeArity>>: Serialize,
LabelingProof<Tree::Hasher>: Serialize,
EncodingProof<Tree::Hasher>: Serialize,
[src]Auto Trait Implementations
impl<Tree, G> RefUnwindSafe for Proof<Tree, G> where
<Tree as MerkleTreeTrait>::Arity: RefUnwindSafe,
<G as Hasher>::Domain: RefUnwindSafe,
<<Tree as MerkleTreeTrait>::Hasher as Hasher>::Domain: RefUnwindSafe,
<Tree as MerkleTreeTrait>::Hasher: RefUnwindSafe,
<Tree as MerkleTreeTrait>::SubTreeArity: RefUnwindSafe,
<Tree as MerkleTreeTrait>::TopTreeArity: RefUnwindSafe,
impl<Tree, G> Unpin for Proof<Tree, G> where
<Tree as MerkleTreeTrait>::Arity: Unpin,
<G as Hasher>::Domain: Unpin,
<<Tree as MerkleTreeTrait>::Hasher as Hasher>::Domain: Unpin,
<Tree as MerkleTreeTrait>::Hasher: Unpin,
<Tree as MerkleTreeTrait>::SubTreeArity: Unpin,
<Tree as MerkleTreeTrait>::TopTreeArity: Unpin,
impl<Tree, G> UnwindSafe for Proof<Tree, G> where
<Tree as MerkleTreeTrait>::Arity: UnwindSafe,
<G as Hasher>::Domain: UnwindSafe,
<<Tree as MerkleTreeTrait>::Hasher as Hasher>::Domain: UnwindSafe,
<Tree as MerkleTreeTrait>::Hasher: UnwindSafe,
<Tree as MerkleTreeTrait>::SubTreeArity: UnwindSafe,
<Tree as MerkleTreeTrait>::TopTreeArity: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
type Output = T
type Output = T
Should always be Self
pub fn vzip(self) -> V