pub trait ProverTranscript<S: Sigma> {
    type Rng: CryptoRng + RngCore;

    // Required method
    fn gen_rng<R: CryptoRng + RngCore>(
        &self,
        sigma: &S,
        witness: &S::Witness,
        in_rng: Option<&mut R>
    ) -> Self::Rng;
}
Expand description

A Transcript that can also generate a rng.

The prover needs an rng to generate it’s AnnounceSecret.

Required Associated Types§

source

type Rng: CryptoRng + RngCore

The type of Rng the transcript generates.

Required Methods§

source

fn gen_rng<R: CryptoRng + RngCore>( &self, sigma: &S, witness: &S::Witness, in_rng: Option<&mut R> ) -> Self::Rng

Generates an RNG from the transcript state and an input rng (in_rng) which should provide system randomness.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<S, H, R> ProverTranscript<S> for HashTranscript<H, R>
where S: Sigma, H: Update + FixedOutput<OutputSize = U32> + Clone, R: SeedableRng + CryptoRng + RngCore + Clone, R::Seed: From<GenericArray<u8, U32>>,

Implements a prover transcript for a 32-byte hash with a rng that takes a 32-byte seed.

§

type Rng = R