Type Alias storage_proofs_core::parameter_cache::Bls12GrothParams

source ·
pub type Bls12GrothParams = MappedParameters<Bls12>;

Aliased Type§

struct Bls12GrothParams {
    pub param_file_path: PathBuf,
    pub param_file: File,
    pub params: Mmap,
    pub vk: VerifyingKey<Bls12>,
    pub pvk: PreparedVerifyingKey<Bls12>,
    pub h: Vec<Range<usize>>,
    pub l: Vec<Range<usize>>,
    pub a: Vec<Range<usize>>,
    pub b_g1: Vec<Range<usize>>,
    pub b_g2: Vec<Range<usize>>,
    pub checked: bool,
}

Fields§

§param_file_path: PathBuf

The parameter file we’re reading from.

§param_file: File

The file descriptor we have mmaped.

§params: Mmap

The actual mmap.

§vk: VerifyingKey<Bls12>

This is always loaded (i.e. not lazily loaded).

§pvk: PreparedVerifyingKey<Bls12>§h: Vec<Range<usize>>

Elements of the form ((tau^i * t(tau)) / delta) for i between 0 and m-2 inclusive. Never contains points at infinity.

§l: Vec<Range<usize>>

Elements of the form (beta * u_i(tau) + alpha v_i(tau) + w_i(tau)) / delta for all auxiliary inputs. Variables can never be unconstrained, so this never contains points at infinity.

§a: Vec<Range<usize>>

QAP “A” polynomials evaluated at tau in the Lagrange basis. Never contains points at infinity: polynomials that evaluate to zero are omitted from the CRS and the prover can deterministically skip their evaluation.

§b_g1: Vec<Range<usize>>

QAP “B” polynomials evaluated at tau in the Lagrange basis. Needed in G1 and G2 for C/B queries, respectively. Never contains points at infinity for the same reason as the “A” polynomials.

§b_g2: Vec<Range<usize>>§checked: bool