[−][src]Crate secp256k1_sys
secp256k1-sys FFI bindings
Direct bindings to the underlying C library functions. These should not be needed for most users.
Modules
recovery | FFI of the recovery module |
types |
Macros
impl_array_newtype | |
impl_raw_debug |
Structs
Context | A Secp256k1 context, containing various precomputed values and such
needed to do elliptic curve computations. If you create one of these
with |
KeyPair | |
PublicKey | Library-internal representation of a Secp256k1 public key |
Signature | Library-internal representation of a Secp256k1 signature |
XOnlyPublicKey |
Constants
SECP256K1_START_NONE | Flag for context to enable no precomputation |
SECP256K1_START_VERIFY | Flag for context to enable verification precomputation |
SECP256K1_START_SIGN | Flag for context to enable signing precomputation |
SECP256K1_SER_UNCOMPRESSED | Flag for keys to indicate uncompressed serialization format |
SECP256K1_SER_COMPRESSED | Flag for keys to indicate compressed serialization format |
Statics
secp256k1_ecdh_hash_function_default | Default ECDH hash function |
secp256k1_nonce_function_default | |
secp256k1_context_no_precomp | |
secp256k1_nonce_function_bip340 | |
secp256k1_nonce_function_rfc6979 |
Traits
CPtr | 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
Type Definitions
EcdhHashFn | Hash function to use to post-process an ECDH point to get a shared secret. |
NonceFn | 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. |
SchnorrNonceFn | 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. |