|
purify
C++ Purify implementation with native circuit and BPP support
|
#include <limits.h>#include <stdlib.h>#include <string.h>Go to the source code of this file.
Data Structures | |
| struct | secp256k1_fast_scalar |
| struct | secp256k1_bulletproof_wmatrix_entry |
| struct | secp256k1_bulletproof_wmatrix_row |
| struct | secp256k1_bulletproof_circuit |
| struct | secp256k1_bulletproof_circuit_assignment |
| struct | secp256k1_bulletproof_generators |
Macros | |
| #define | SECP256K1_BULLETPROOF_MAX_DEPTH 60 |
| #define | SECP256K1_BULLETPROOF_MAX_PROOF (160 + 66 * 32 + 7) |
| #define | secp256k1_scratch_alloc(scratch, size) secp256k1_scratch_alloc(&default_error_callback, scratch, size) |
Typedefs | |
| typedef secp256k1_callback | secp256k1_ecmult_context |
| typedef struct secp256k1_bulletproof_circuit | secp256k1_bulletproof_circuit |
| typedef struct secp256k1_bulletproof_circuit_assignment | secp256k1_bulletproof_circuit_assignment |
| typedef struct secp256k1_bulletproof_generators | secp256k1_bulletproof_generators |
Functions | |
| int | secp256k1_scratch_allocate_frame (secp256k1_scratch *scratch, size_t n, size_t objects) |
| void | secp256k1_scratch_deallocate_frame (secp256k1_scratch *scratch) |
| static int | purify_checked_mul_size (size_t lhs, size_t rhs, size_t *out) |
| static int | purify_checked_add_size (size_t lhs, size_t rhs, size_t *out) |
| static secp256k1_bulletproof_generators * | secp256k1_bulletproof_generators_create (const secp256k1_context *ctx, const secp256k1_generator *blinding_gen, size_t n, size_t precomp_n) |
| static void | secp256k1_bulletproof_generators_destroy (const secp256k1_context *ctx, secp256k1_bulletproof_generators *gen) |
| static void | secp256k1_scalar_chacha20 (secp256k1_scalar *r1, secp256k1_scalar *r2, const unsigned char *seed, size_t idx) |
| static SECP256K1_INLINE void | secp256k1_pedersen_ecmult_scalar (secp256k1_gej *rj, const secp256k1_scalar *sec, const secp256k1_scalar *value, const secp256k1_ge *value_gen, const secp256k1_ge *blind_gen) |
| #define secp256k1_scratch_alloc | ( | scratch, | |
| size | |||
| ) | secp256k1_scratch_alloc(&default_error_callback, scratch, size) |
| typedef struct secp256k1_bulletproof_circuit secp256k1_bulletproof_circuit |
| typedef struct secp256k1_bulletproof_generators secp256k1_bulletproof_generators |
| typedef secp256k1_callback secp256k1_ecmult_context |
|
static |
Definition at line 86 of file core.h.
Referenced by secp256k1_bulletproof_generators_create().
|
static |
Definition at line 75 of file core.h.
Referenced by secp256k1_bulletproof_generators_create().
|
static |
Definition at line 97 of file core.h.
References secp256k1_bulletproof_generators::blinding_gen, secp256k1_bulletproof_generators::gens, secp256k1_bulletproof_generators::n, purify_checked_add_size(), and purify_checked_mul_size().
Referenced by purify_bulletproof_backend_resources_clone(), and purify_bulletproof_backend_resources_create().
|
static |
Definition at line 169 of file core.h.
References secp256k1_bulletproof_generators::gens.
Referenced by purify_bulletproof_backend_resources_destroy().
|
static |
Definition at line 220 of file core.h.
Referenced by purify_bulletproof_prove_circuit_impl().
|
static |
Definition at line 181 of file core.h.
Referenced by secp256k1_bulletproof_pf_slsr(), and secp256k1_bulletproof_relation66_prove_impl().
| int secp256k1_scratch_allocate_frame | ( | secp256k1_scratch * | scratch, |
| size_t | n, | ||
| size_t | objects | ||
| ) |
Definition at line 51 of file scratch_frames.c.
References purify_bulletproof_scratch_frames::checkpoints, purify_bulletproof_scratch_frames::depth, purify_bulletproof_scratch_frames::next, purify_bulletproof_scratch_frames_acquire_lock(), purify_bulletproof_scratch_frames_find(), purify_bulletproof_scratch_frames_head, purify_bulletproof_scratch_frames_release_lock(), and purify_bulletproof_scratch_frames::scratch.
Referenced by secp256k1_bulletproof_inner_product_prove_impl(), secp256k1_bulletproof_inner_product_verify_impl(), secp256k1_bulletproof_pf_compressed_circuit_allocate_frame(), secp256k1_bulletproof_relation66_verify_impl(), and secp256k1_bulletproof_vfy_compressed_circuit_allocate_frame().
| void secp256k1_scratch_deallocate_frame | ( | secp256k1_scratch * | scratch | ) |
Definition at line 83 of file scratch_frames.c.
References purify_bulletproof_scratch_frames::checkpoints, purify_bulletproof_scratch_frames::depth, purify_bulletproof_scratch_frames::next, purify_bulletproof_scratch_frames_acquire_lock(), purify_bulletproof_scratch_frames_find(), purify_bulletproof_scratch_frames_head, purify_bulletproof_scratch_frames_release_lock(), and purify_bulletproof_scratch_frames::scratch.
Referenced by secp256k1_bulletproof_inner_product_prove_impl(), secp256k1_bulletproof_inner_product_verify_impl(), secp256k1_bulletproof_relation66_prove_impl(), and secp256k1_bulletproof_relation66_verify_impl().