nil::crypto3::zk::snark::detail::bacs_ppzksnark_policy< CurveType > Struct Template Reference

#include <basic_policy.hpp>

+ Collaboration diagram for nil::crypto3::zk::snark::detail::bacs_ppzksnark_policy< CurveType >:

Public Types

typedef bacs_auxiliary_input< typename curve_type::scalar_field_type > auxiliary_input_type
 
typedef bacs_circuit< typename curve_type::scalar_field_type > circuit_type
 
typedef CurveType curve_type
 
typedef bacs_ppzksnark_keypair< proving_key_type, verification_key_typekeypair_type
 
typedef bacs_primary_input< typename curve_type::scalar_field_type > primary_input_type
 
typedef r1cs_ppzksnark< CurveType >::processed_verification_key_type processed_verification_key_type
 
typedef r1cs_ppzksnark< CurveType >::proof_type proof_type
 
typedef bacs_ppzksnark_proving_key< curve_type, circuit_typeproving_key_type
 
typedef r1cs_ppzksnark< curve_type >::verification_key_type verification_key_type
 

Member Typedef Documentation

◆ auxiliary_input_type

template<typename CurveType >
typedef bacs_auxiliary_input<typename curve_type::scalar_field_type> nil::crypto3::zk::snark::detail::bacs_ppzksnark_policy< CurveType >::auxiliary_input_type

◆ circuit_type

template<typename CurveType >
typedef bacs_circuit<typename curve_type::scalar_field_type> nil::crypto3::zk::snark::detail::bacs_ppzksnark_policy< CurveType >::circuit_type

Below are various template aliases (used for convenience).

◆ curve_type

template<typename CurveType >
typedef CurveType nil::crypto3::zk::snark::detail::bacs_ppzksnark_policy< CurveType >::curve_type

◆ keypair_type

A key pair for the BACS ppzkSNARK, which consists of a proving key and a verification key.

◆ primary_input_type

template<typename CurveType >
typedef bacs_primary_input<typename curve_type::scalar_field_type> nil::crypto3::zk::snark::detail::bacs_ppzksnark_policy< CurveType >::primary_input_type

◆ processed_verification_key_type

A processed verification key for the BACS ppzkSNARK.

Compared to a (non-processed) verification key, a processed verification key contains a small constant amount of additional pre-computed information that enables a faster verification time.

◆ proof_type

template<typename CurveType >
typedef r1cs_ppzksnark<CurveType>::proof_type nil::crypto3::zk::snark::detail::bacs_ppzksnark_policy< CurveType >::proof_type

A proof for the BACS ppzkSNARK.

◆ proving_key_type

A proving key for the BACS ppzkSNARK.

◆ verification_key_type

A verification key for the BACS ppzkSNARK.


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