|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
#include <non_native_group_generator.hpp>
Public Types | |
| using | element = typename G1::element |
Static Public Member Functions | |
| static void | init_generator_tables () |
| static std::array< fr, 2 > | get_xlo_endo_values (const std::array< uint64_t, 2 > key) |
| static std::array< fr, 2 > | get_xhi_endo_values (const std::array< uint64_t, 2 > key) |
| static std::array< fr, 2 > | get_xlo_values (const std::array< uint64_t, 2 > key) |
| static std::array< fr, 2 > | get_xhi_values (const std::array< uint64_t, 2 > key) |
| static std::array< fr, 2 > | get_ylo_values (const std::array< uint64_t, 2 > key) |
| static std::array< fr, 2 > | get_yhi_values (const std::array< uint64_t, 2 > key) |
| static std::array< fr, 2 > | get_xyprime_values (const std::array< uint64_t, 2 > key) |
| static std::array< fr, 2 > | get_xyprime_endo_values (const std::array< uint64_t, 2 > key) |
| static BasicTable | generate_xlo_table (BasicTableId id, const size_t table_index) |
| static BasicTable | generate_xhi_table (BasicTableId id, const size_t table_index) |
| static BasicTable | generate_xlo_endo_table (BasicTableId id, const size_t table_index) |
| static BasicTable | generate_xhi_endo_table (BasicTableId id, const size_t table_index) |
| static BasicTable | generate_ylo_table (BasicTableId id, const size_t table_index) |
| static BasicTable | generate_yhi_table (BasicTableId id, const size_t table_index) |
| static BasicTable | generate_xyprime_table (BasicTableId id, const size_t table_index) |
| static BasicTable | generate_xyprime_endo_table (BasicTableId id, const size_t table_index) |
| static MultiTable | get_xlo_table (const MultiTableId id, const BasicTableId basic_id) |
| static MultiTable | get_xhi_table (const MultiTableId id, const BasicTableId basic_id) |
| static MultiTable | get_xlo_endo_table (const MultiTableId id, const BasicTableId basic_id) |
| static MultiTable | get_xhi_endo_table (const MultiTableId id, const BasicTableId basic_id) |
| static MultiTable | get_ylo_table (const MultiTableId id, const BasicTableId basic_id) |
| static MultiTable | get_yhi_table (const MultiTableId id, const BasicTableId basic_id) |
| static MultiTable | get_xyprime_table (const MultiTableId id, const BasicTableId basic_id) |
| static MultiTable | get_xyprime_endo_table (const MultiTableId id, const BasicTableId basic_id) |
Static Public Attributes | |
| static constexpr size_t | TABLE_SIZE = 256 |
| static std::array< std::pair< fr, fr >, TABLE_SIZE > | generator_endo_xlo_table |
| static std::array< std::pair< fr, fr >, TABLE_SIZE > | generator_endo_xhi_table |
| static std::array< std::pair< fr, fr >, TABLE_SIZE > | generator_xlo_table |
| static std::array< std::pair< fr, fr >, TABLE_SIZE > | generator_xhi_table |
| static std::array< std::pair< fr, fr >, TABLE_SIZE > | generator_ylo_table |
| static std::array< std::pair< fr, fr >, TABLE_SIZE > | generator_yhi_table |
| static std::array< std::pair< fr, fr >, TABLE_SIZE > | generator_xyprime_table |
| static std::array< std::pair< fr, fr >, TABLE_SIZE > | generator_endo_xyprime_table |
| static std::once_flag | init_flag |
Definition at line 18 of file non_native_group_generator.hpp.
| using bb::plookup::ecc_generator_tables::ecc_generator_table< G1 >::element = typename G1::element |
Definition at line 20 of file non_native_group_generator.hpp.
|
static |
Definition at line 257 of file non_native_group_generator.cpp.
|
static |
Definition at line 209 of file non_native_group_generator.cpp.
|
static |
Definition at line 233 of file non_native_group_generator.cpp.
|
static |
Definition at line 186 of file non_native_group_generator.cpp.
|
static |
Definition at line 351 of file non_native_group_generator.cpp.
|
static |
Definition at line 327 of file non_native_group_generator.cpp.
|
static |
Definition at line 303 of file non_native_group_generator.cpp.
|
static |
Definition at line 280 of file non_native_group_generator.cpp.
|
static |
Definition at line 420 of file non_native_group_generator.cpp.
|
static |
Get 2 high 68-bit limbs of x-coordinate (for endomorphism point \lambda.[1])
Definition at line 127 of file non_native_group_generator.cpp.
|
static |
Definition at line 390 of file non_native_group_generator.cpp.
|
static |
Get 2 high 68-bit limbs of x-coordinate
Definition at line 101 of file non_native_group_generator.cpp.
|
static |
Definition at line 405 of file non_native_group_generator.cpp.
|
static |
Get 2 low 68-bit limbs of x-coordinate (for endomorphism point \lambda.[P])
Definition at line 114 of file non_native_group_generator.cpp.
|
static |
Definition at line 375 of file non_native_group_generator.cpp.
|
static |
Get 2 low 68-bit limbs of x-coordinate
Definition at line 89 of file non_native_group_generator.cpp.
|
static |
Definition at line 480 of file non_native_group_generator.cpp.
|
static |
Get the prime basis limbs for the x and y coordinates (endomorphism version for \lambda.[1])
Definition at line 177 of file non_native_group_generator.cpp.
|
static |
Definition at line 465 of file non_native_group_generator.cpp.
|
static |
Get the prime basis limbs for the x and y coordinates
Definition at line 164 of file non_native_group_generator.cpp.
|
static |
Definition at line 450 of file non_native_group_generator.cpp.
|
static |
Get 2 high 68-bit limbs of y-coordinate
Definition at line 151 of file non_native_group_generator.cpp.
|
static |
Definition at line 435 of file non_native_group_generator.cpp.
|
static |
Get 2 low 68-bit limbs of y-coordinate
Definition at line 139 of file non_native_group_generator.cpp.
|
static |
Init 8-bit generator lookup tables The 8-bit wNAF is structured so that entries are in the range [0, ..., 255]
The actual scalar value = (wNAF * 2) - 255
scalar values are from the values [-255, -253, ..., -3, -1, 1, 3, ..., 253, 255]
Definition at line 19 of file non_native_group_generator.cpp.
|
inlinestatic |
Definition at line 40 of file non_native_group_generator.hpp.
|
inlinestatic |
Store arrays of precomputed 8-bit lookup tables for generator point coordinates (and their endomorphism equivalents):
Each table has TABLE_SIZE rows and 2 columns.
Definition at line 39 of file non_native_group_generator.hpp.
|
inlinestatic |
Definition at line 46 of file non_native_group_generator.hpp.
|
inlinestatic |
Definition at line 42 of file non_native_group_generator.hpp.
|
inlinestatic |
Definition at line 41 of file non_native_group_generator.hpp.
|
inlinestatic |
Definition at line 45 of file non_native_group_generator.hpp.
|
inlinestatic |
Definition at line 44 of file non_native_group_generator.hpp.
|
inlinestatic |
Definition at line 43 of file non_native_group_generator.hpp.
|
inlinestatic |
Definition at line 47 of file non_native_group_generator.hpp.
|
staticconstexpr |
Definition at line 23 of file non_native_group_generator.hpp.