Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
StdlibPedersen< Builder > Class Template Reference
Inheritance diagram for StdlibPedersen< Builder >:

Static Public Member Functions

static void test_pedersen ()
 
static void test_mixed_witnesses_and_constants ()
 
static void test_empty_input ()
 
static void test_single_input ()
 
static void test_two_inputs ()
 
static void test_three_inputs ()
 
static void test_large_input ()
 
static void test_zero_values ()
 
static void test_custom_generator_context ()
 
static void test_all_constants ()
 
static void test_special_field_element ()
 
static void test_determinism ()
 
static void test_pedersen_two ()
 
static void test_pedersen_edge_cases ()
 
static void test_pedersen_large ()
 
static void test_multi_hash ()
 
static void test_hash_eight ()
 
static void test_hash_constants ()
 
static void test_empty_input ()
 
static void test_single_input ()
 
static void test_large_inputs ()
 
static void test_generator_contexts ()
 
static void test_determinism ()
 

Private Types

using _curve = stdlib::bn254< Builder >
 
using fr_ct = typename _curve::ScalarField
 
using witness_ct = typename _curve::witness_ct
 
using public_witness_ct = typename _curve::public_witness_ct
 
using pedersen_commitment = typename stdlib::pedersen_commitment< Builder >
 
using _curve = stdlib::bn254< Builder >
 
using byte_array_ct = typename _curve::byte_array_ct
 
using fr_ct = typename _curve::ScalarField
 
using witness_ct = typename _curve::witness_ct
 
using public_witness_ct = typename _curve::public_witness_ct
 
using pedersen_hash = typename stdlib::pedersen_hash< Builder >
 
using cycle_group = typename stdlib::cycle_group< Builder >
 

Static Private Member Functions

static void verify_commitment (Builder &builder, const std::vector< stdlib::field_t< Builder > > &inputs, crypto::GeneratorContext< curve::Grumpkin > context={})
 

Detailed Description

template<typename Builder>
class StdlibPedersen< Builder >

Definition at line 17 of file pedersen.test.cpp.

Member Typedef Documentation

◆ _curve [1/2]

template<typename Builder >
using StdlibPedersen< Builder >::_curve = stdlib::bn254<Builder>
private

Definition at line 18 of file pedersen.test.cpp.

◆ _curve [2/2]

template<typename Builder >
using StdlibPedersen< Builder >::_curve = stdlib::bn254<Builder>
private

Definition at line 18 of file pedersen.test.cpp.

◆ byte_array_ct

template<typename Builder >
using StdlibPedersen< Builder >::byte_array_ct = typename _curve::byte_array_ct
private

Definition at line 20 of file pedersen.test.cpp.

◆ cycle_group

template<typename Builder >
using StdlibPedersen< Builder >::cycle_group = typename stdlib::cycle_group<Builder>
private

Definition at line 25 of file pedersen.test.cpp.

◆ fr_ct [1/2]

template<typename Builder >
using StdlibPedersen< Builder >::fr_ct = typename _curve::ScalarField
private

Definition at line 20 of file pedersen.test.cpp.

◆ fr_ct [2/2]

template<typename Builder >
using StdlibPedersen< Builder >::fr_ct = typename _curve::ScalarField
private

Definition at line 21 of file pedersen.test.cpp.

◆ pedersen_commitment

template<typename Builder >
using StdlibPedersen< Builder >::pedersen_commitment = typename stdlib::pedersen_commitment<Builder>
private

Definition at line 23 of file pedersen.test.cpp.

◆ pedersen_hash

template<typename Builder >
using StdlibPedersen< Builder >::pedersen_hash = typename stdlib::pedersen_hash<Builder>
private

Definition at line 24 of file pedersen.test.cpp.

◆ public_witness_ct [1/2]

template<typename Builder >
using StdlibPedersen< Builder >::public_witness_ct = typename _curve::public_witness_ct
private

Definition at line 22 of file pedersen.test.cpp.

◆ public_witness_ct [2/2]

template<typename Builder >
using StdlibPedersen< Builder >::public_witness_ct = typename _curve::public_witness_ct
private

Definition at line 23 of file pedersen.test.cpp.

◆ witness_ct [1/2]

template<typename Builder >
using StdlibPedersen< Builder >::witness_ct = typename _curve::witness_ct
private

Definition at line 21 of file pedersen.test.cpp.

◆ witness_ct [2/2]

template<typename Builder >
using StdlibPedersen< Builder >::witness_ct = typename _curve::witness_ct
private

Definition at line 22 of file pedersen.test.cpp.

Member Function Documentation

◆ test_all_constants()

template<typename Builder >
static void StdlibPedersen< Builder >::test_all_constants ( )
inlinestatic

Definition at line 217 of file pedersen.test.cpp.

◆ test_custom_generator_context()

template<typename Builder >
static void StdlibPedersen< Builder >::test_custom_generator_context ( )
inlinestatic

Definition at line 202 of file pedersen.test.cpp.

◆ test_determinism() [1/2]

template<typename Builder >
static void StdlibPedersen< Builder >::test_determinism ( )
inlinestatic

Definition at line 242 of file pedersen.test.cpp.

◆ test_determinism() [2/2]

template<typename Builder >
static void StdlibPedersen< Builder >::test_determinism ( )
inlinestatic

Definition at line 367 of file pedersen.test.cpp.

◆ test_empty_input() [1/2]

template<typename Builder >
static void StdlibPedersen< Builder >::test_empty_input ( )
inlinestatic

Definition at line 96 of file pedersen.test.cpp.

◆ test_empty_input() [2/2]

template<typename Builder >
static void StdlibPedersen< Builder >::test_empty_input ( )
inlinestatic

Definition at line 235 of file pedersen.test.cpp.

◆ test_generator_contexts()

template<typename Builder >
static void StdlibPedersen< Builder >::test_generator_contexts ( )
inlinestatic

Definition at line 294 of file pedersen.test.cpp.

◆ test_hash_constants()

template<typename Builder >
static void StdlibPedersen< Builder >::test_hash_constants ( )
inlinestatic

Definition at line 205 of file pedersen.test.cpp.

◆ test_hash_eight()

template<typename Builder >
static void StdlibPedersen< Builder >::test_hash_eight ( )
inlinestatic

Definition at line 177 of file pedersen.test.cpp.

◆ test_large_input()

template<typename Builder >
static void StdlibPedersen< Builder >::test_large_input ( )
inlinestatic

Definition at line 168 of file pedersen.test.cpp.

◆ test_large_inputs()

template<typename Builder >
static void StdlibPedersen< Builder >::test_large_inputs ( )
inlinestatic

Definition at line 268 of file pedersen.test.cpp.

◆ test_mixed_witnesses_and_constants()

template<typename Builder >
static void StdlibPedersen< Builder >::test_mixed_witnesses_and_constants ( )
inlinestatic

Definition at line 72 of file pedersen.test.cpp.

◆ test_multi_hash()

template<typename Builder >
static void StdlibPedersen< Builder >::test_multi_hash ( )
inlinestatic

Definition at line 123 of file pedersen.test.cpp.

◆ test_pedersen()

template<typename Builder >
static void StdlibPedersen< Builder >::test_pedersen ( )
inlinestatic

Definition at line 44 of file pedersen.test.cpp.

◆ test_pedersen_edge_cases()

template<typename Builder >
static void StdlibPedersen< Builder >::test_pedersen_edge_cases ( )
inlinestatic

Definition at line 58 of file pedersen.test.cpp.

◆ test_pedersen_large()

template<typename Builder >
static void StdlibPedersen< Builder >::test_pedersen_large ( )
inlinestatic

Definition at line 98 of file pedersen.test.cpp.

◆ test_pedersen_two()

template<typename Builder >
static void StdlibPedersen< Builder >::test_pedersen_two ( )
inlinestatic

Definition at line 28 of file pedersen.test.cpp.

◆ test_single_input() [1/2]

template<typename Builder >
static void StdlibPedersen< Builder >::test_single_input ( )
inlinestatic

Definition at line 112 of file pedersen.test.cpp.

◆ test_single_input() [2/2]

template<typename Builder >
static void StdlibPedersen< Builder >::test_single_input ( )
inlinestatic

Definition at line 253 of file pedersen.test.cpp.

◆ test_special_field_element()

template<typename Builder >
static void StdlibPedersen< Builder >::test_special_field_element ( )
inlinestatic

Definition at line 230 of file pedersen.test.cpp.

◆ test_three_inputs()

template<typename Builder >
static void StdlibPedersen< Builder >::test_three_inputs ( )
inlinestatic

Definition at line 146 of file pedersen.test.cpp.

◆ test_two_inputs()

template<typename Builder >
static void StdlibPedersen< Builder >::test_two_inputs ( )
inlinestatic

Definition at line 128 of file pedersen.test.cpp.

◆ test_zero_values()

template<typename Builder >
static void StdlibPedersen< Builder >::test_zero_values ( )
inlinestatic

Definition at line 187 of file pedersen.test.cpp.

◆ verify_commitment()

template<typename Builder >
static void StdlibPedersen< Builder >::verify_commitment ( Builder builder,
const std::vector< stdlib::field_t< Builder > > &  inputs,
crypto::GeneratorContext< curve::Grumpkin context = {} 
)
inlinestaticprivate

Definition at line 26 of file pedersen.test.cpp.


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