24 unstable releases (4 breaking)
|new 0.10.0-rc.1||Mar 22, 2023|
|0.10.0-beta.2||Feb 6, 2023|
|0.9.0-rc.1||Dec 26, 2022|
|0.9.0-alpha.1||Nov 17, 2022|
|0.5.0||Nov 27, 2021|
#565 in Magic Beans
1,873 downloads per month
Used in 27 crates (12 directly)
Bitcoin protocol core library
The library implements components necessary for [client-side-validation] in bitcoin protocol, specifically
- deterministic bitcoin commitments API (LNPBP-1, LNPBP-2, LNPBP-3, LNPBP-6, LNPBP-11 & LNPBP-12 standards)
- bitcoin-based single-use-seal API (LNPBP-10 standards)
Client-side-validation is a paradigm for distributed computing, based on top of proof-of-publication/commitment medium layer, which may be a bitcoin blockchain or other type of distributed consensus system.
The development of the library is supported by LNP/BP Standards Association and is performed on its GitHub page.
The original idea of client-side-validation was proposed by Peter Todd with its possible applications designed by Giacomo Zucco. It was shaped into the protocol design by Dr Maxim Orlovsky with a big input from the community.
Minimum supported rust version for the library (MSRV) is 1.66 and 2021 rust edition.
Detailed developer & API documentation for all libraries can be accessed at:
To learn about the technologies enabled by the library please check slides from our tech presentations and LNP/BP tech talks videos.
The repository contains rust libraries for client-side validation.
Use library in other projects
To use libraries, you just need latest version of libraries, published to
[dependencies] section of your project
Cargo.toml. Here is the full list of available libraries from this repository:
bp-primitives = "1" # Bitcoin protocol primitives crate bp-dbc = "1" # Deterministic bitcoin commitments crate bp-seals = "1" # Bitcoin single-use-seals crate bp-core = "1" # Library including both of the previous crates
bp-core crate is an "umbrella" library containing both deterministic bitcoin
commitments and bitcoin seals crates inside.
The current list of the projects based on the library include:
- RGB: Confidential & scalable smart contracts for Bitcoin & Lightning
- Bitcoin-based decentralized identity proposal uses single-use-seals
Contribution guidelines can be found in CONTRIBUTING
This library requires minimum rust compiler version (MSRV) 1.66.0.
Policy on altcoins
Altcoins and "blockchains" other than Bitcoin blockchain/Bitcoin protocols are not supported and not planned to be supported; pull requests targeting them will be declined.
The libraries are distributed on the terms of Apache 2.0 opensource license. See LICENCE file for the license details.