nil::crypto3::zk::snark::r1cs_gg_ppzksnark< CurveType, Generator, Prover, Verifier, Mode, typename > Class Template Reference

ppzkSNARK for R1CS with a security proof in the generic group (GG) model More...

+ Collaboration diagram for nil::crypto3::zk::snark::r1cs_gg_ppzksnark< CurveType, Generator, Prover, Verifier, Mode, typename >:

Detailed Description

template<typename CurveType, typename Generator = r1cs_gg_ppzksnark_generator<CurveType>, typename Prover = r1cs_gg_ppzksnark_prover<CurveType>, typename Verifier = r1cs_gg_ppzksnark_verifier_strong_input_consistency<CurveType>, ProvingMode Mode = ProvingMode::Basic, typename = void>
class nil::crypto3::zk::snark::r1cs_gg_ppzksnark< CurveType, Generator, Prover, Verifier, Mode, typename >

ppzkSNARK for R1CS with a security proof in the generic group (GG) model

Template Parameters
CurveType
Generator
Prover
VerifierThe implementation instantiates the protocol of [Gro16] and aggregation scheme [BMM+19] for the protocol of [Gro16].

Acronyms:

  • R1CS = "Rank-1 Constraint Systems"
  • ppzkSNARK = "PreProcessing Zero-Knowledge Succinct Non-interactive ARgument of Knowledge"
  • SRS = "Structured Reference String"

References: [Gro16]: "On the Size of Pairing-based Non-interactive Arguments", Jens Groth, EUROCRYPT 2016, https://eprint.iacr.org/2016/260

[BMM+19]: "Proofs for inner pairing products and applications", Benedikt Bünz, Mary Maller, Pratyush Mishra, Nirvan Tyagi, Psi Vesely, Cryptology ePrint Archive, Report 2019/1177, 2019 https://eprint.iacr.org/2019/1177.pdf


The documentation for this class was generated from the following file: