pub trait Verifier<'params, Scheme: CommitmentScheme> {
    type Guard: Guard<Scheme, MSMAccumulator = Self::MSMAccumulator>;
    type MSMAccumulator;

    const QUERY_INSTANCE: bool;

    fn new(params: &'params Scheme::ParamsVerifier) -> Self;
    fn verify_proof<'com, E: EncodedChallenge<Scheme::Curve>, T: TranscriptRead<Scheme::Curve, E>, I>(
        &self,
        transcript: &mut T,
        queries: I,
        msm: Self::MSMAccumulator
    ) -> Result<Self::Guard, Error>
    where
        'params: 'com,
        I: IntoIterator<Item = VerifierQuery<'com, Scheme::Curve, <Scheme::ParamsVerifier as Params<'params, Scheme::Curve>>::MSM>> + Clone
; }
Expand description

Common multi-open verifier interface for various commitment schemes

Required Associated Types

Unfinalized verification result. This is returned in verification to allow developer to compress or combined verification results

Accumulator fot comressed verification

Required Associated Constants

Query instance or not

Required Methods

Creates new verifier instance

Process the proof and returns unfinished result named Guard

Implementors