|
purify
C++ Purify implementation with native circuit and BPP support
|
#include "src/legacy_bulletproof/inner_product_impl.h"#include "src/legacy_bulletproof/circuit_compress_impl.h"#include "src/legacy_bulletproof/util.h"#include "third_party/secp256k1-zkp/src/group.h"#include <stdlib.h>Go to the source code of this file.
Data Structures | |
| struct | secp256k1_bulletproof_circuit_abgh_data |
| struct | secp256k1_bulletproof_circuit_vfy_ecmult_context |
Functions | |
| static int | secp256k1_bulletproof_circuit_abgh_callback (secp256k1_scalar *sc, secp256k1_ge *pt, size_t idx, void *data) |
| static int | secp256k1_bulletproof_relation66_prove_impl (const secp256k1_ecmult_context *ecmult_ctx, secp256k1_scratch *scratch, unsigned char *proof, size_t *plen, const secp256k1_bulletproof_circuit_assignment *assn, const secp256k1_ge *commitp, const secp256k1_scalar *blinds, size_t nc, const secp256k1_ge *value_gen, const secp256k1_bulletproof_circuit *circ, const secp256k1_bulletproof_generators *gens, const unsigned char *nonce, const unsigned char *extra_commit, size_t extra_commit_len) |
| static int | secp256k1_bulletproof_circuit_same_batch_shape (const secp256k1_bulletproof_circuit *a, const secp256k1_bulletproof_circuit *b) |
| static int | secp256k1_bulletproof_circuit_vfy_callback (secp256k1_scalar *sc, secp256k1_ge *pt, secp256k1_scalar *randomizer, size_t idx, void *data) |
| static int | secp256k1_bulletproof_relation66_verify_impl (const secp256k1_ecmult_context *ecmult_ctx, secp256k1_scratch *scratch, const unsigned char *const *proof, size_t n_proofs, size_t plen, const secp256k1_ge *const *commitp, size_t *nc, const secp256k1_ge *value_gen, const secp256k1_bulletproof_circuit *const *circ, const secp256k1_bulletproof_generators *gens, const unsigned char **extra_commit, size_t *extra_commit_len) |
|
static |
Definition at line 24 of file circuit_impl.h.
References secp256k1_bulletproof_circuit_assignment::ao, secp256k1_bulletproof_circuit_abgh_data::assn, secp256k1_bulletproof_circuit_abgh_data::comp_circ, secp256k1_bulletproof_pf_compressed_circuit::l1, secp256k1_bulletproof_pf_compressed_circuit::l3, secp256k1_bulletproof_circuit_assignment::n_gates, secp256k1_bulletproof_pf_compressed_circuit::r0, secp256k1_bulletproof_pf_compressed_circuit::r1, secp256k1_bulletproof_pf_compressed_circuit::r3, secp256k1_bulletproof_circuit_abgh_data::x, and secp256k1_bulletproof_circuit_abgh_data::x2.
Referenced by secp256k1_bulletproof_relation66_prove_impl().
|
static |
Definition at line 327 of file circuit_impl.h.
References secp256k1_bulletproof_circuit::n_bits, secp256k1_bulletproof_circuit::n_commits, secp256k1_bulletproof_circuit::n_constraints, and secp256k1_bulletproof_circuit::n_gates.
Referenced by secp256k1_bulletproof_relation66_verify_impl().
|
static |
Definition at line 334 of file circuit_impl.h.
References secp256k1_bulletproof_circuit_vfy_ecmult_context::age, secp256k1_bulletproof_vfy_compressed_circuit::c_sum, secp256k1_bulletproof_circuit_vfy_ecmult_context::commits, secp256k1_bulletproof_circuit_vfy_ecmult_context::comp_circ, secp256k1_bulletproof_circuit_vfy_ecmult_context::count, secp256k1_bulletproof_circuit_vfy_ecmult_context::n_commits, secp256k1_bulletproof_circuit_vfy_ecmult_context::n_gates, secp256k1_bulletproof_circuit_vfy_ecmult_context::randomizer82, secp256k1_bulletproof_circuit_vfy_ecmult_context::t, secp256k1_bulletproof_circuit_vfy_ecmult_context::tge, secp256k1_bulletproof_circuit_vfy_ecmult_context::value_gen, secp256k1_bulletproof_vfy_compressed_circuit::wl_wo, secp256k1_bulletproof_vfy_compressed_circuit::wr, secp256k1_bulletproof_vfy_compressed_circuit::wv, and secp256k1_bulletproof_circuit_vfy_ecmult_context::x.
Referenced by secp256k1_bulletproof_relation66_verify_impl().
|
static |
Definition at line 56 of file circuit_impl.h.
References secp256k1_bulletproof_circuit_assignment::al, secp256k1_bulletproof_circuit_assignment::ao, secp256k1_bulletproof_circuit_assignment::ar, secp256k1_bulletproof_circuit_abgh_data::assn, secp256k1_bulletproof_generators::blinding_gen, secp256k1_bulletproof_circuit_abgh_data::comp_circ, secp256k1_bulletproof_generators::gens, secp256k1_bulletproof_pf_compressed_circuit::l1, secp256k1_bulletproof_pf_compressed_circuit::l3, secp256k1_bulletproof_generators::n, secp256k1_bulletproof_circuit::n_bits, secp256k1_bulletproof_circuit::n_commits, secp256k1_bulletproof_circuit_assignment::n_commits, secp256k1_bulletproof_circuit::n_gates, secp256k1_bulletproof_circuit_assignment::n_gates, nonce, secp256k1_bulletproof_pf_compressed_circuit::r0, secp256k1_bulletproof_pf_compressed_circuit::r1, secp256k1_bulletproof_pf_compressed_circuit::r3, rho, secp256k1_bulletproof_circuit_abgh_callback(), secp256k1_bulletproof_inner_product_prove_impl(), secp256k1_bulletproof_pf_compress_circuit(), secp256k1_bulletproof_pf_compressed_circuit_allocate_frame(), secp256k1_bulletproof_pf_slsr(), secp256k1_bulletproof_serialize_points(), secp256k1_bulletproof_update_commit_circuit(), secp256k1_bulletproof_update_commit_n(), secp256k1_bulletproof_vector_commit(), secp256k1_scalar_chacha20(), secp256k1_scratch_deallocate_frame(), secp256k1_bulletproof_pf_compressed_circuit::wv, secp256k1_bulletproof_circuit_abgh_data::x, and secp256k1_bulletproof_circuit_abgh_data::x2.
Referenced by purify_bulletproof_prove_circuit_impl().
|
static |
Definition at line 403 of file circuit_impl.h.
References secp256k1_bulletproof_circuit_vfy_ecmult_context::age, secp256k1_bulletproof_circuit_vfy_ecmult_context::commits, secp256k1_bulletproof_circuit_vfy_ecmult_context::comp_circ, secp256k1_bulletproof_circuit_vfy_ecmult_context::count, secp256k1_bulletproof_circuit_vfy_ecmult_context::n_commits, secp256k1_bulletproof_innerproduct_context::n_extra_rangeproof_points, secp256k1_bulletproof_circuit_vfy_ecmult_context::n_gates, secp256k1_bulletproof_circuit::n_gates, secp256k1_bulletproof_innerproduct_context::p_offs, secp256k1_bulletproof_innerproduct_context::proof, secp256k1_bulletproof_innerproduct_context::rangeproof_cb, secp256k1_bulletproof_innerproduct_context::rangeproof_cb_data, secp256k1_bulletproof_circuit_same_batch_shape(), secp256k1_bulletproof_circuit_vfy_callback(), secp256k1_bulletproof_deserialize_point(), secp256k1_bulletproof_inner_product_verify_impl(), SECP256K1_BULLETPROOF_MAX_PROOF, secp256k1_bulletproof_update_commit_circuit(), secp256k1_bulletproof_update_commit_n(), secp256k1_bulletproof_vfy_compress_circuit(), secp256k1_bulletproof_vfy_compressed_circuit_allocate_frame(), secp256k1_scratch_alloc, secp256k1_scratch_allocate_frame(), secp256k1_scratch_deallocate_frame(), secp256k1_bulletproof_circuit_vfy_ecmult_context::tge, secp256k1_bulletproof_circuit_vfy_ecmult_context::value_gen, secp256k1_bulletproof_circuit_vfy_ecmult_context::y, secp256k1_bulletproof_circuit_vfy_ecmult_context::yinv, and secp256k1_bulletproof_innerproduct_context::yinv.
Referenced by purify_bulletproof_verify_circuit_impl().