Crate secp256k1_sys
source ·Expand description
secp256k1-sys FFI bindings
Direct bindings to the underlying C library functions. These should not be needed for most users.
Modules
Macros
Structs
A Secp256k1 context, containing various precomputed values and such
needed to do elliptic curve computations. If you create one of these
with
secp256k1_context_create
you MUST destroy it with
secp256k1_context_destroy
, or else you will have a memory leak.Library-internal representation of a Secp256k1 public key
Data structure that contains additional arguments for schnorrsig_sign_custom.
Library-internal representation of a Secp256k1 signature
Constants
Flag for keys to indicate compressed serialization format
Flag for keys to indicate uncompressed serialization format
Flag for context to enable no precomputation
Flag for context to enable signing precomputation
Flag for context to enable verification precomputation
Statics
Default ECDH hash function
Traits
A trait for producing pointers that will always be valid in C. (assuming NULL pointer is a valid no-op)
Rust doesn’t promise what pointers does it give to ZST (https://doc.rust-lang.org/nomicon/exotic-sizes.html#zero-sized-types-zsts)
In case the type is empty this trait will give a NULL pointer, which should be handled in C.
Functions
A reimplementation of the C function
secp256k1_context_create
in rust.A reimplementation of the C function
secp256k1_context_destroy
in rust.This function is an override for the C function, this is the an edited version of the original description:
This function is an override for the C function, this is the an edited version of the original description:
secp256k1_ec_privkey_negate⚠Deprecated
secp256k1_ec_privkey_tweak_add⚠Deprecated
secp256k1_ec_privkey_tweak_mul⚠Deprecated
Type Definitions
Hash function to use to post-process an ECDH point to get
a shared secret.
A nonce generation function. Ordinary users of the library
never need to see this type; only if you need to control
nonce generation do you need to use it. I have deliberately
made this hard to do: you have to write your own wrapper
around the FFI functions to use it. And it’s an unsafe type.
Nonces are generated deterministically by RFC6979 by
default; there should be no need to ever change this.
Same as secp256k1_nonce function with the exception of accepting an
additional pubkey argument and not requiring an attempt argument. The pubkey
argument can protect signature schemes with key-prefixed challenge hash
inputs against reusing the nonce when signing with the wrong precomputed
pubkey.