Skip to main content

Crate vega_prover

Crate vega_prover 

Source
Expand description

This library implements the ZK provers of Vega, optimized for low-latency client-side proving of statements over signed data.

Modules§

bellpepper
Support for generating R1CS from Bellpepper
errors
This module defines errors returned by the library.
provider
This module implements Spartan’s traits using the following several different combinations
traits
This module defines various traits required by the users of the library to implement.
vega_mc_zkp
Zero-knowledge multi-circuit (MC) prover using NeutronNova folding (https://eprint.iacr.org/2024/1606), proved with the single-circuit prover.
vega_sc
Single-circuit (SC) prover. Implements the Spartan SNARK protocol (https://eprint.iacr.org/2019/550).
vega_sc_zkp
Zero-knowledge single-circuit (SC) prover. Implements the Spartan protocol with Nova folding for ZK.

Macros§

impl_field_reduction_constants
Implement FieldReductionConstants for a field type.
impl_montgomery_limbs
Implement MontgomeryLimbs for a field type with .0 containing [u64; 4].
impl_traits
Implements Spartan’s traits
impl_traits_no_dlog_ext
Implements Spartan’s traits except DlogGroupExt so that the MSM can be implemented differently
zip_with
Macros to give syntactic sugar for zipWith pattern and variants.
zip_with_for_each
Like zip_with but use for_each instead of map.