Struct ark_poly_commit::marlin::marlin_pst13_pc::CommitterKey [−][src]
pub struct CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, { pub powers_of_g: BTreeMap<P::Term, E::G1Affine>, pub gamma_g: E::G1Affine, pub powers_of_gamma_g: Vec<Vec<E::G1Affine>>, pub num_vars: usize, pub supported_degree: usize, pub max_degree: usize, }
Expand description
CommitterKey is used to commit to and create evaluation proofs for a given
polynomial.
Fields
powers_of_g: BTreeMap<P::Term, E::G1Affine>Contains group elements corresponding to all possible monomials with
num_vars and maximum degree supported_degree evaluated at \beta
gamma_g: E::G1Affine\gamma times the generater of G1
powers_of_gamma_g: Vec<Vec<E::G1Affine>>Group elements of the form { \beta_i^j \gamma G }, where i ranges
from 0 to num_vars-1 and j ranges from 1 to supported_degree+1.
num_vars: usizeThe number of variables self is initialized for
supported_degree: usizeThe maximum degree supported by the trimmed parameters that self is
a part of
max_degree: usizeThe maximum degree supported by the UniversalParams self was derived
from.
Trait Implementations
impl<E, P> CanonicalDeserialize for CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, [src]
impl<E, P> CanonicalDeserialize for CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, [src]Reads Self from reader.
Reads Self from reader without compression.
Reads self from reader without compression, and without performing
validity checks. Should be used only when the input is trusted. Read more
impl<E, P> CanonicalSerialize for CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, [src]
impl<E, P> CanonicalSerialize for CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, [src]Serializes self into writer.
It is left up to a particular type for how it strikes the
serialization efficiency vs compression tradeoff.
For standard types (e.g. bool, lengths, etc.) typically an uncompressed
form is used, whereas for algebraic types compressed forms are used. Read more
Serializes self into writer without compression.
Serializes self into writer without compression, and without
performing validity checks. Should be used only when there is no
danger of adversarial manipulation of the output. Read more
impl<E, P> Clone for CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, [src]
impl<E, P> Clone for CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, [src]impl<E, P> Debug for CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, [src]
impl<E, P> Debug for CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, [src]impl<E, P> Hash for CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, [src]
impl<E, P> Hash for CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, [src]impl<E, P> PCCommitterKey for CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, [src]
impl<E, P> PCCommitterKey for CommitterKey<E, P> where
E: PairingEngine,
P: MVPolynomial<E::Fr>,
P::Point: Index<usize, Output = E::Fr>, [src]Outputs the maximum degree supported by the universal parameters
Self was derived from. Read more
Outputs the maximum degree supported by the committer key.
Auto Trait Implementations
impl<E, P> RefUnwindSafe for CommitterKey<E, P> where
<E as PairingEngine>::G1Affine: RefUnwindSafe,
<P as MVPolynomial<<E as PairingEngine>::Fr>>::Term: RefUnwindSafe, impl<E, P> Send for CommitterKey<E, P>impl<E, P> Sync for CommitterKey<E, P>impl<E, P> Unpin for CommitterKey<E, P> where
<E as PairingEngine>::G1Affine: Unpin, impl<E, P> UnwindSafe for CommitterKey<E, P> where
<E as PairingEngine>::G1Affine: RefUnwindSafe + UnwindSafe,
<P as MVPolynomial<<E as PairingEngine>::Fr>>::Term: RefUnwindSafe, Blanket Implementations
Mutably borrows from an owned value. Read more
fn hash_uncompressed<H>(&self) -> GenericArray<u8, <H as Digest>::OutputSize> where
H: Digest, [src]type Output = T
type Output = TShould always be Self
pub fn vzip(self) -> V