nil::marshalling::verifier_input_serializer_tvm< nil::crypto3::zk::snark::r1cs_gg_ppzksnark< algebra::curves::bls12< 381 > > > Struct Reference
#include <marshalling.hpp>
Collaboration diagram for nil::marshalling::verifier_input_serializer_tvm< nil::crypto3::zk::snark::r1cs_gg_ppzksnark< algebra::curves::bls12< 381 > > >:
Public Types | |
using | chunk_type = std::uint8_t |
using | CurveType = typename algebra::curves::bls12< 381 > |
using | scheme_type = nil::crypto3::zk::snark::r1cs_gg_ppzksnark< CurveType > |
Static Public Member Functions | |
template<typename FieldType > | |
static std::enable_if<!::nil::crypto3::algebra::is_extended_field< FieldType >::value, void >::type | field_type_process (typename FieldType::value_type input_fp, typename std::vector< chunk_type >::iterator &write_iter) |
template<typename FieldType > | |
static std::enable_if<::nil::crypto3::algebra::is_extended_field< FieldType >::value, void >::type | field_type_process (typename FieldType::value_type input_fp, typename std::vector< chunk_type >::iterator &write_iter) |
template<typename T > | |
static void | g1_accumulation_vector_process (accumulation_vector< T > input_av, std::vector< chunk_type >::iterator &write_iter) |
template<typename GroupType > | |
static void | g1_group_type_process (typename GroupType::value_type input_g, typename std::vector< chunk_type >::iterator &write_iter) |
template<typename T > | |
static void | g1_sparse_vector_process (sparse_vector< T > input_sv, std::vector< chunk_type >::iterator &write_iter) |
template<typename GroupType > | |
static void | g2_group_type_process (typename GroupType::value_type input_g, typename std::vector< chunk_type >::iterator &write_iter) |
static void | g2g1_element_kc_process (crypto3::zk::snark::detail::element_kc< typename CurveType::template g2_type<>, typename CurveType::template g1_type<>> input_ek, std::vector< chunk_type >::iterator &write_iter) |
static void | g2g1_knowledge_commitment_vector_process (knowledge_commitment_vector< typename CurveType::template g2_type<>, typename CurveType::template g1_type<>> input_kv, std::vector< chunk_type >::iterator &write_iter) |
static std::size_t | get_g2g1_knowledge_commitment_vector_size (knowledge_commitment_vector< typename CurveType::template g2_type<>, typename CurveType::template g1_type<>> input_kv) |
static std::size_t | get_r1cs_constraint_byteblob_size (r1cs_constraint< typename CurveType::scalar_field_type > input_rc) |
template<typename T > | |
static void | linear_combination_process (linear_combination< T > input_cm, std::vector< chunk_type >::iterator &write_iter) |
template<typename T > | |
static void | linear_term_process (linear_term< T > input_lt, std::vector< chunk_type >::iterator &write_iter) |
static std::vector< chunk_type > | process (typename scheme_type::primary_input_type pi) |
static std::vector< chunk_type > | process (typename scheme_type::proof_type pr) |
static std::vector< chunk_type > | process (typename scheme_type::proving_key_type pk) |
static std::vector< chunk_type > | process (typename scheme_type::verification_key_type vk) |
template<typename T > | |
static void | r1cs_constraint_process (r1cs_constraint< T > input_rc, std::vector< chunk_type >::iterator &write_iter) |
template<typename T > | |
static void | r1cs_constraint_system_process (r1cs_constraint_system< T > input_rs, std::vector< chunk_type >::iterator &write_iter) |
static void | std_size_t_process (std::size_t input_s, std::vector< chunk_type >::iterator &write_iter) |
Static Public Attributes | |
constexpr static const std::size_t | chunk_size = 8 |
static const std::size_t | fp_byteblob_size |
static const std::size_t | fr_byteblob_size |
static const std::size_t | g1_byteblob_size = curve_element_serializer<CurveType>::sizeof_field_element |
static const std::size_t | g2_byteblob_size = 2 * curve_element_serializer<CurveType>::sizeof_field_element |
static const std::size_t | g2g1_element_kc_byteblob_size = g2_byteblob_size + g1_byteblob_size |
static const std::size_t | gt_byteblob_size = 2 * 3 * 2 * fp_byteblob_size |
static const std::size_t | linear_term_byteblob_size = std_size_t_byteblob_size + fr_byteblob_size |
static const std::size_t | std_size_t_byteblob_size = 4 |
Member Typedef Documentation
◆ chunk_type
using nil::marshalling::verifier_input_serializer_tvm< nil::crypto3::zk::snark::r1cs_gg_ppzksnark< algebra::curves::bls12< 381 > > >::chunk_type = std::uint8_t |
◆ CurveType
using nil::marshalling::verifier_input_serializer_tvm< nil::crypto3::zk::snark::r1cs_gg_ppzksnark< algebra::curves::bls12< 381 > > >::CurveType = typename algebra::curves::bls12<381> |
◆ scheme_type
Member Function Documentation
◆ field_type_process() [1/2]
template<typename FieldType >
|
inlinestatic |
◆ field_type_process() [2/2]
template<typename FieldType >
|
inlinestatic |
◆ g1_accumulation_vector_process()
template<typename T >
|
inlinestatic |
◆ g1_group_type_process()
template<typename GroupType >
|
inlinestatic |
◆ g1_sparse_vector_process()
template<typename T >
|
inlinestatic |
◆ g2_group_type_process()
template<typename GroupType >
|
inlinestatic |
◆ g2g1_element_kc_process()
|
inlinestatic |
◆ g2g1_knowledge_commitment_vector_process()
|
inlinestatic |
◆ get_g2g1_knowledge_commitment_vector_size()
|
inlinestatic |
◆ get_r1cs_constraint_byteblob_size()
|
inlinestatic |
◆ linear_combination_process()
template<typename T >
|
inlinestatic |
◆ linear_term_process()
template<typename T >
|
inlinestatic |
◆ process() [1/4]
|
inlinestatic |
◆ process() [2/4]
|
inlinestatic |
◆ process() [3/4]
|
inlinestatic |
◆ process() [4/4]
|
inlinestatic |
◆ r1cs_constraint_process()
template<typename T >
|
inlinestatic |
◆ r1cs_constraint_system_process()
template<typename T >
|
inlinestatic |
◆ std_size_t_process()
|
inlinestatic |
Member Data Documentation
◆ chunk_size
|
staticconstexpr |
◆ fp_byteblob_size
|
static |
Initial value:
= CurveType::base_field_type::modulus_bits / chunk_size +
(CurveType::base_field_type::modulus_bits % chunk_size ? 1 : 0)
constexpr static const std::size_t chunk_size
Definition: zk/include/nil/crypto3/zk/snark/systems/ppzksnark/r1cs_gg_ppzksnark/marshalling.hpp:878
◆ fr_byteblob_size
|
static |
Initial value:
=
CurveType::scalar_field_type::modulus_bits / chunk_size +
(CurveType::scalar_field_type::modulus_bits % chunk_size ? 1 : 0)
◆ g1_byteblob_size
|
static |
◆ g2_byteblob_size
|
static |
◆ g2g1_element_kc_byteblob_size
|
static |
◆ gt_byteblob_size
|
static |
◆ linear_term_byteblob_size
|
static |
◆ std_size_t_byteblob_size
|
static |
The documentation for this struct was generated from the following file: