snark_verifier_sdk::halo2

Function gen_snark

Source
pub fn gen_snark<'params, ConcreteCircuit, P, V>(
    params: &'params ParamsKZG<Bn256>,
    pk: &ProvingKey<G1Affine>,
    circuit: ConcreteCircuit,
    path: Option<impl AsRef<Path>>,
) -> Snark
where ConcreteCircuit: CircuitExt<Fr>, P: Prover<'params, KZGCommitmentScheme<Bn256>>, V: Verifier<'params, KZGCommitmentScheme<Bn256>, Guard = GuardKZG<'params, Bn256>, MSMAccumulator = DualMSM<'params, Bn256>>,
Expand description

Generates a SNARK using either SHPLONK or GWC multi-open scheme. Uses Poseidon for Fiat-Shamir.

Tries to first deserialize from / later serialize the entire SNARK into path if specified. Serialization is done using bincode.