Struct ark_poly_commit::marlin::marlin_pc::VerifierKey [−][src]
pub struct VerifierKey<E: PairingEngine> { pub vk: VerifierKey<E>, pub degree_bounds_and_shift_powers: Option<Vec<(usize, E::G1Affine)>>, pub max_degree: usize, pub supported_degree: usize, }
Expand description
VerifierKey is used to check evaluation proofs for a given commitment.
Fields
vk: VerifierKey<E>The verification key for the underlying KZG10 scheme.
degree_bounds_and_shift_powers: Option<Vec<(usize, E::G1Affine)>>Information required to enforce degree bounds. Each pair
is of the form (degree_bound, shifting_advice).
The vector is sorted in ascending order of degree_bound.
This is None if self does not support enforcing any degree bounds.
max_degree: usizeThe maximum degree supported by the UniversalParams self was derived
from.
supported_degree: usizeThe maximum degree supported by the trimmed parameters that self is
a part of.
Implementations
Find the appropriate shift for the degree bound.
Trait Implementations
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
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
prepare PreparedVerifierKey from VerifierKey
Outputs the maximum degree supported by the universal parameters
Self was derived from. Read more
Outputs the maximum degree supported by the verifier key.
impl<E: PairingEngine> ToConstraintField<<<E as PairingEngine>::Fq as Field>::BasePrimeField> for VerifierKey<E> where
E::G1Affine: ToConstraintField<<E::Fq as Field>::BasePrimeField>,
E::G2Affine: ToConstraintField<<E::Fq as Field>::BasePrimeField>, [src]
impl<E: PairingEngine> ToConstraintField<<<E as PairingEngine>::Fq as Field>::BasePrimeField> for VerifierKey<E> where
E::G1Affine: ToConstraintField<<E::Fq as Field>::BasePrimeField>,
E::G2Affine: ToConstraintField<<E::Fq as Field>::BasePrimeField>, [src]Auto Trait Implementations
impl<E> RefUnwindSafe for VerifierKey<E> where
<E as PairingEngine>::G1Affine: RefUnwindSafe,
<E as PairingEngine>::G2Affine: RefUnwindSafe,
<E as PairingEngine>::G2Prepared: RefUnwindSafe, impl<E> Send for VerifierKey<E>impl<E> Sync for VerifierKey<E>impl<E> Unpin for VerifierKey<E> where
<E as PairingEngine>::G1Affine: Unpin,
<E as PairingEngine>::G2Affine: Unpin,
<E as PairingEngine>::G2Prepared: Unpin, impl<E> UnwindSafe for VerifierKey<E> where
<E as PairingEngine>::G1Affine: UnwindSafe,
<E as PairingEngine>::G2Affine: UnwindSafe,
<E as PairingEngine>::G2Prepared: UnwindSafe, 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