Crate bp

source ·
Expand description

Core 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§

  • pub extern crate dbc;
  • pub extern crate seals;

Modules§

  • bcstl
  • 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.
  • stlstl
    Strict types library generator methods.

Structs§

Enums§

Constants§

Traits§

Type Aliases§

  • Bitcoin consensus allows arrays which length is encoded as VarInt to grow up to 64-bit values. However, at the same time no consensus rule allows any block data structure to exceed 2^32 bytes (4GB), and any change to that rule will be a hardfork. So for practical reasons we are safe to restrict the maximum size here with just 32 bits.