Expand description
Primitives module defines core strict interfaces from informational LNPBP standards specifying secure and robust practices for function calls used in main bitcoin protocols:
- consensus-level primitives;
- deterministic bitcoin commitments;
- single-use-seals.
The goal of this module is to maximally reduce the probability of errors and mistakes within particular implementations of this paradigms by standardizing typical workflow processes in a form of interfaces that will be nearly impossible to use in the wrong form.
Re-exports
Modules
- Rust bindings for Pieter Wuille’s secp256k1 library, which is used for fast and accurate manipulation of ECDSA signatures on the secp256k1 curve. Such signatures are used extensively by the Bitcoin network and its derivatives.
Structs
- Inner type representing future (non-tapscript) leaf versions. See
LeafVer::Future
. - invalid taproot leaf version {0}.
- Witness program as defined in BIP141.
Enums
- The leaf version for tapleafs.
- Version of the witness program.
Constants
- The SHA-256 midstate value for the TapBranch hash.
- The SHA-256 midstate value for the TapLeaf hash.
- The SHA-256 midstate value for the TapSig hash.
- The SHA-256 midstate value for the TapTweak hash.
- Taproot annex prefix.
- Tapleaf mask for getting the leaf version from first byte of control block.
- Tapscript leaf version.