Skip to content
This repository has been archived by the owner on Aug 7, 2024. It is now read-only.
/ rgb-core Public archive
forked from RGB-WG/rgb-core

RGB Core Library: consensus validation for private & scalable client-validated smart contracts on Bitcoin & Lightning

License

Notifications You must be signed in to change notification settings

BitSwap-BiFi/rgb-core

 
 

RGB Core Library

Build Tests Lints codecov

crates.io Docs unsafe forbidden Apache-2 licensed

RGB is confidential & scalable client-validated smart contracts for Bitcoin & Lightning. To learn more about RGB please check RGB website.

RGB Core library provides consensus-critical and validation code for RGB. It is a standard implementation, jointly with LNP/BP Standards defining RGB consensus and validation rules.

The consensus-critical code library is shared with the following libraries:

  1. Client-side-validation Lib. It is non-bitcoin-specific library, covering concepts related to client-side-validation (commitments, single-use-seals abstracted from bitcoin, consensus-critical data encoding protocols).
  2. BP Core Lib. This is client-side-validation applied to bitcoin protocol with deterministic bitcoin commitments (tapret) and TXO-based single-use-seals.
  3. AluVM virtual machine used by RGB for Turing-complete smart contract functionality.
  4. Strict types, defining memory layout and serialization of structured data types used in RGB smart contracts.

The development of the project is supported and managed by LNP/BP Standards Association. The design of RGB smart contract system and implementation of this and underlying consensus libraries was done in 2019-2024 by Dr Maxim Orlovsky basing or earlier ideas of client-side-validation and RGB as "assets for bitcoin and LN" by Peter Todd and Giacomo Zucco. Upon the release of RGBv1 the protocol will be immutable and this library will accept only bugfixes; i.e. it will be ossified by requiring consensus ACK for the new changes across the large set of maintainers.

The current list of the projects based on the library include:

  • RGB Standard Lib: library providing high-level RGB smart contract API in rust.
  • RGB Wallet: runtime and command-line tool for working with RGB.

Contributing

Currently, library functionality is frozen and as a part of ossification only bugfixes are accepted.

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.

License

See LICENCE file.

About

RGB Core Library: consensus validation for private & scalable client-validated smart contracts on Bitcoin & Lightning

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Languages

  • Rust 93.5%
  • TeX 5.8%
  • Other 0.7%