Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/bitcoin-core/secp256k1
/ functions
Functions
1,037 in github.com/bitcoin-core/secp256k1
⨍
Functions
1,037
◇
Types & classes
116
↓ 2 callers
Function
load256two64
Load a 128-bit unsigned integer into an array of 16 uint16_t's in LE order representing a 256-bit value. */
src/tests.c:1991
↓ 2 callers
Function
modinv2p64
Compute the modular inverse of (odd) x mod 2^64. */
src/tests.c:983
↓ 2 callers
Function
musig_test_set_secnonce
src/modules/musig/tests_impl.h:877
↓ 2 callers
Function
nonce_function_bip340
src/modules/schnorrsig/main_impl.h:90
↓ 2 callers
Function
nonce_function_bip340_impl
src/modules/schnorrsig/main_impl.h:40
↓ 2 callers
Function
nonce_function_rfc6979_impl
src/secp256k1.c:497
↓ 2 callers
Function
parse_iterations
src/unit_test.c:140
↓ 2 callers
Function
secp256k1_context_preallocated_create
src/secp256k1.c:119
↓ 2 callers
Function
secp256k1_context_set_sha256_compression
src/secp256k1.c:225
↓ 2 callers
Function
secp256k1_ctz32_var_debruijn
Determine the number of trailing zero bits in a (non-zero) 32-bit x. * This function is only intended to be used as fallback for * secp256k1_ctz32_v
src/util.h:369
↓ 2 callers
Function
secp256k1_ctz64_var_debruijn
Determine the number of trailing zero bits in a (non-zero) 64-bit x. * This function is only intended to be used as fallback for * secp256k1_ctz64_v
src/util.h:381
↓ 2 callers
Function
secp256k1_der_read_len
src/ecdsa_impl.h:36
↓ 2 callers
Function
secp256k1_ec_pubkey_combine
src/secp256k1.c:789
↓ 2 callers
Function
secp256k1_ec_seckey_tweak_add_helper
src/secp256k1.c:685
↓ 2 callers
Function
secp256k1_ecdsa_sign_inner
src/secp256k1.c:541
↓ 2 callers
Function
secp256k1_ecdsa_signature_normalize
src/secp256k1.c:457
↓ 2 callers
Function
secp256k1_ecmult_compute_two_tables
Like secp256k1_ecmult_compute_table, but one for both gen and gen*2^128. */
src/ecmult_compute_table_impl.h:37
↓ 2 callers
Function
secp256k1_ecmult_gen_compute_table
src/ecmult_gen_compute_table_impl.h:17
↓ 2 callers
Function
secp256k1_ecmult_multi_batch_size_helper
Compute the number of batches and the batch size given the maximum batch size and the * total number of points */
src/ecmult_impl.h:804
↓ 2 callers
Function
secp256k1_ecmult_odd_multiples_table
Fill a table 'pre_a' with precomputed odd multiples of a. * pre_a will contain [1*a,3*a,...,(2*n-1)*a], so it needs space for n group elements. *
src/ecmult_impl.h:73
↓ 2 callers
Function
secp256k1_ecmult_strauss_wnaf
src/ecmult_impl.h:252
↓ 2 callers
Function
secp256k1_effective_nonce
out_nonce = nonce_pts[0] + b*nonce_pts[1] */
src/modules/musig/session_impl.h:558
↓ 2 callers
Function
secp256k1_ellswift_elligatorswift_var
Find an ElligatorSwift encoding (u, t) for point P. * * This is similar secp256k1_ellswift_xelligatorswift_var, except it takes a full group element
src/modules/ellswift/main_impl.h:375
↓ 2 callers
Function
secp256k1_ellswift_sha256_init_bip324
Set hash state to the BIP340 tagged hash midstate for "bip324_ellswift_xonly_ecdh". */
src/modules/ellswift/main_impl.h:506
↓ 2 callers
Function
secp256k1_ellswift_sha256_init_create
Set hash state to the BIP340 tagged hash midstate for "secp256k1_ellswift_create". */
src/modules/ellswift/main_impl.h:423
↓ 2 callers
Function
secp256k1_ellswift_sha256_init_encode
Set hash state to the BIP340 tagged hash midstate for "secp256k1_ellswift_encode". */
src/modules/ellswift/main_impl.h:385
↓ 2 callers
Function
secp256k1_ellswift_xswiftec_frac_var
Decode ElligatorSwift encoding (u, t) to a fraction xn/xd representing a curve X coordinate. */
src/modules/ellswift/main_impl.h:24
↓ 2 callers
Function
secp256k1_ellswift_xswiftec_inv_var
Try to complete an ElligatorSwift encoding (u, t) for X coordinate x, given u and x. * * There may be up to 8 distinct t values such that (u, t) dec
src/modules/ellswift/main_impl.h:168
↓ 2 callers
Function
secp256k1_ellswift_xswiftec_var
Decode ElligatorSwift encoding (u, t) to X coordinate. */
src/modules/ellswift/main_impl.h:135
↓ 2 callers
Function
secp256k1_fe_from_signed30
src/field_10x26_impl.h:1115
↓ 2 callers
Function
secp256k1_fe_from_signed62
src/field_5x52_impl.h:417
↓ 2 callers
Function
secp256k1_fe_impl_set_b32_mod
src/field_5x52_impl.h:228
↓ 2 callers
Function
secp256k1_fe_mul_inner
src/field_10x26_impl.h:377
↓ 2 callers
Function
secp256k1_fe_sqr_inner
src/field_10x26_impl.h:707
↓ 2 callers
Function
secp256k1_ge_set_all_gej
src/group_impl.h:198
↓ 2 callers
Function
secp256k1_ge_storage_cmov
src/group_impl.h:911
↓ 2 callers
Function
secp256k1_ge_table_set_globalz
src/group_impl.h:289
↓ 2 callers
Function
secp256k1_ge_x_frac_on_curve_var
src/group_impl.h:958
↓ 2 callers
Function
secp256k1_gej_eq_x_var
src/group_impl.h:417
↓ 2 callers
Function
secp256k1_heap_child1
src/hsort_impl.h:16
↓ 2 callers
Function
secp256k1_i128_check_pow2
src/int128_struct_impl.h:198
↓ 2 callers
Function
secp256k1_i128_det
src/int128_struct_impl.h:160
↓ 2 callers
Function
secp256k1_i128_eq_var
src/int128_struct_impl.h:194
↓ 2 callers
Function
secp256k1_i128_from_i64
src/int128_struct_impl.h:189
↓ 2 callers
Function
secp256k1_int_cmov
If flag is 1, set *r equal to *a; if flag is 0, leave it. Constant-time. * Both *r and *a must be initialized and non-negative. Flag must be 0 or 1.
src/util.h:312
↓ 2 callers
Function
secp256k1_jacobi32_maybe_var
Compute the Jacobi symbol of x modulo modinfo->modulus (variable time). gcd(x,modulus) must be 1. */
src/modinv32_impl.h:666
↓ 2 callers
Function
secp256k1_jacobi64_maybe_var
Compute the Jacobi symbol of x modulo modinfo->modulus (variable time). gcd(x,modulus) must be 1. */
src/modinv64_impl.h:721
↓ 2 callers
Function
secp256k1_keypair_save
src/modules/extrakeys/main_impl.h:163
↓ 2 callers
Function
secp256k1_memzero_explicit
Zeroes memory to prevent leaking sensitive info. Won't be optimized out. */
src/util.h:236
↓ 2 callers
Function
secp256k1_modinv32
Compute the inverse of x modulo modinfo->modulus, and replace x with it (constant time in x). */
src/modinv32_impl.h:532
↓ 2 callers
Function
secp256k1_modinv32_normalize_30
Take as input a signed30 number in range (-2*modulus,modulus), and add a multiple of the modulus * to it to bring it to range [0,modulus). If sign <
src/modinv32_impl.h:63
↓ 2 callers
Function
secp256k1_modinv32_update_de_30
Compute (t/2^30) * [d, e] mod modulus, where t is a transition matrix for 30 divsteps. * * On input and output, d and e are in range (-2*modulus,mod
src/modinv32_impl.h:408
↓ 2 callers
Function
secp256k1_modinv32_update_fg_30_var
Compute (t/2^30) * [f, g], where t is a transition matrix for 30 divsteps. * * Version that operates on a variable number of limbs in f and g. * *
src/modinv32_impl.h:501
↓ 2 callers
Function
secp256k1_modinv32_var
Compute the inverse of x modulo modinfo->modulus, and replace x with it (variable time). */
src/modinv32_impl.h:581
↓ 2 callers
Function
secp256k1_modinv64
Compute the inverse of x modulo modinfo->modulus, and replace x with it (constant time in x). */
src/modinv64_impl.h:588
↓ 2 callers
Function
secp256k1_modinv64_normalize_62
Take as input a signed62 number in range (-2*modulus,modulus), and add a multiple of the modulus * to it to bring it to range [0,modulus). If sign <
src/modinv64_impl.h:88
↓ 2 callers
Function
secp256k1_modinv64_update_de_62
Compute (t/2^62) * [d, e] mod modulus, where t is a transition matrix scaled by 2^62. * * On input and output, d and e are in range (-2*modulus,modu
src/modinv64_impl.h:411
↓ 2 callers
Function
secp256k1_modinv64_update_fg_62_var
Compute (t/2^62) * [f, g], where t is a transition matrix for 62 divsteps. * * Version that operates on a variable number of limbs in f and g. * *
src/modinv64_impl.h:553
↓ 2 callers
Function
secp256k1_modinv64_var
Compute the inverse of x modulo modinfo->modulus, and replace x with it (variable time). */
src/modinv64_impl.h:637
↓ 2 callers
Function
secp256k1_musig_aggnonce_save
src/modules/musig/session_impl.h:110
↓ 2 callers
Function
secp256k1_musig_aggnonce_serialize
src/modules/musig/session_impl.h:244
↓ 2 callers
Function
secp256k1_musig_compute_noncehash_sha256_tagged
Initializes SHA256 with fixed midstate. This midstate was computed by applying * SHA256 to SHA256("MuSig/noncecoef")||SHA256("MuSig/noncecoef"). */
src/modules/musig/session_impl.h:533
↓ 2 callers
Function
secp256k1_musig_ge_serialize_ext
Outputs 33 zero bytes if the given group element is the point at infinity and * otherwise outputs the compressed serialization */
src/modules/musig/session_impl.h:24
↓ 2 callers
Function
secp256k1_musig_keyaggcoef
Assumes that pk is not the point at infinity and that the Y-coordinates of pk * and cache_i->second_pk are normalized. */
src/modules/musig/keyagg_impl.h:128
↓ 2 callers
Function
secp256k1_musig_keyaggcoef_internal
Compute KeyAgg coefficient which is constant 1 for the second pubkey and * otherwise tagged_hash(pks_hash, pk) where pks_hash is the hash of public k
src/modules/musig/keyagg_impl.h:106
↓ 2 callers
Function
secp256k1_musig_keyaggcoef_sha256
Initializes SHA256 with fixed midstate. This midstate was computed by applying * SHA256 to SHA256("KeyAgg coefficient")||SHA256("KeyAgg coefficient")
src/modules/musig/keyagg_impl.h:93
↓ 2 callers
Function
secp256k1_musig_keyagglist_sha256
Initializes SHA256 with fixed midstate. This midstate was computed by applying * SHA256 to SHA256("KeyAgg list")||SHA256("KeyAgg list"). */
src/modules/musig/keyagg_impl.h:64
↓ 2 callers
Function
secp256k1_musig_nonce_gen_internal
src/modules/musig/session_impl.h:372
↓ 2 callers
Function
secp256k1_musig_partial_sig_load
src/modules/musig/session_impl.h:178
↓ 2 callers
Function
secp256k1_musig_partial_sig_save
src/modules/musig/session_impl.h:173
↓ 2 callers
Function
secp256k1_musig_pubkey_tweak_add_internal
src/modules/musig/keyagg_impl.h:231
↓ 2 callers
Function
secp256k1_musig_secnonce_invalidate
If flag is 1, invalidate the secnonce; if flag is 0, leave it. * Constant-time. Flag must be 0 or 1. */
src/modules/musig/session_impl.h:74
↓ 2 callers
Function
secp256k1_musig_secnonce_save
src/modules/musig/session_impl.h:50
↓ 2 callers
Function
secp256k1_musig_sum_pubnonces
src/modules/musig/session_impl.h:491
↓ 2 callers
Function
secp256k1_nonce_function_bip340_sha256_tagged
Initializes SHA256 with fixed midstate. This midstate was computed by applying * SHA256 to SHA256("BIP0340/nonce")||SHA256("BIP0340/nonce"). */
src/modules/schnorrsig/main_impl.h:16
↓ 2 callers
Function
secp256k1_nonce_function_bip340_sha256_tagged_aux
Initializes SHA256 with fixed midstate. This midstate was computed by applying * SHA256 to SHA256("BIP0340/aux")||SHA256("BIP0340/aux"). */
src/modules/schnorrsig/main_impl.h:26
↓ 2 callers
Function
secp256k1_nonce_function_musig_sha256_tagged
Initializes SHA256 with fixed midstate. This midstate was computed by applying * SHA256 to SHA256("MuSig/nonce")||SHA256("MuSig/nonce"). */
src/modules/musig/session_impl.h:321
↓ 2 callers
Function
secp256k1_nonce_function_musig_sha256_tagged_aux
Initializes SHA256 with fixed midstate. This midstate was computed by applying * SHA256 to SHA256("MuSig/aux")||SHA256("MuSig/aux"). */
src/modules/musig/session_impl.h:311
↓ 2 callers
Function
secp256k1_pippenger_max_points
* Returns the maximum number of points in addition to G that can be used with * a given scratch space. The function ensures that fewer points may als
src/ecmult_impl.h:743
↓ 2 callers
Function
secp256k1_pippenger_scratch_size
* Returns the scratch size required for a given number of points (excluding * base point G) without considering alignment. */
src/ecmult_impl.h:664
↓ 2 callers
Function
secp256k1_read_be64
Read a uint64_t in big endian */
src/util.h:444
↓ 2 callers
Function
secp256k1_rfc6979_hmac_sha256_clear
src/hash_impl.h:385
↓ 2 callers
Function
secp256k1_scalar_cadd_bit
src/scalar_low_impl.h:65
↓ 2 callers
Function
secp256k1_scalar_check_overflow
src/scalar_low_impl.h:53
↓ 2 callers
Function
secp256k1_scalar_from_signed30
src/scalar_8x32_impl.h:733
↓ 2 callers
Function
secp256k1_scalar_from_signed62
src/scalar_4x64_impl.h:932
↓ 2 callers
Function
secp256k1_scalar_mul_512
src/scalar_8x32_impl.h:549
↓ 2 callers
Function
secp256k1_scalar_mul_512
src/scalar_4x64_impl.h:682
↓ 2 callers
Function
secp256k1_scalar_split_128
src/scalar_low_impl.h:150
↓ 2 callers
Function
secp256k1_scalar_to_signed30
src/scalar_8x32_impl.h:762
↓ 2 callers
Function
secp256k1_scalar_to_signed62
src/scalar_4x64_impl.h:952
↓ 2 callers
Function
secp256k1_schnorrsig_sha256_tagged
Initializes SHA256 with fixed midstate. This midstate was computed by applying * SHA256 to SHA256("BIP0340/challenge")||SHA256("BIP0340/challenge").
src/modules/schnorrsig/main_impl.h:98
↓ 2 callers
Function
secp256k1_schnorrsig_sign_internal
src/modules/schnorrsig/main_impl.h:122
↓ 2 callers
Function
secp256k1_selftest
src/secp256k1.c:87
↓ 2 callers
Function
secp256k1_selftest_sha256
src/selftest.h:14
↓ 2 callers
Function
secp256k1_sha256_smoke_test
Perform a smoke test on a supplied SHA256 compression function. */
src/hash_impl.h:141
↓ 2 callers
Function
secp256k1_silentpayments_calculate_input_hash_scalar
Callers must ensure that pubkey_sum is not the point at infinity before calling this function. */
src/modules/silentpayments/main_impl.h:66
↓ 2 callers
Function
secp256k1_silentpayments_create_output_tweak
src/modules/silentpayments/main_impl.h:118
↓ 2 callers
Function
secp256k1_silentpayments_create_shared_secret
src/modules/silentpayments/main_impl.h:88
↓ 2 callers
Function
secp256k1_silentpayments_label_load
Loads a group element from a label. Returns 1 unless the label wasn't properly initialized. */
src/modules/silentpayments/main_impl.h:356
← previous
next →
301–400 of 1,037, ranked by callers