halo2_axiom::transcript

Trait Transcript

Source
pub trait Transcript<C: CurveAffine, E: EncodedChallenge<C>> {
    // Required methods
    fn squeeze_challenge(&mut self) -> E;
    fn common_point(&mut self, point: C) -> Result<()>;
    fn common_scalar(&mut self, scalar: C::Scalar) -> Result<()>;

    // Provided method
    fn squeeze_challenge_scalar<T>(&mut self) -> ChallengeScalar<C, T> { ... }
}
Expand description

Generic transcript view (from either the prover or verifier’s perspective)

Required Methods§

Source

fn squeeze_challenge(&mut self) -> E

Squeeze an encoded verifier challenge from the transcript.

Source

fn common_point(&mut self, point: C) -> Result<()>

Writing the point to the transcript without writing it to the proof, treating it as a common input.

Source

fn common_scalar(&mut self, scalar: C::Scalar) -> Result<()>

Writing the scalar to the transcript without writing it to the proof, treating it as a common input.

Provided Methods§

Source

fn squeeze_challenge_scalar<T>(&mut self) -> ChallengeScalar<C, T>

Squeeze a typed challenge (in the scalar field) from the transcript.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§