RGB v0.11-beta6: Enhancing Bitcoin Smart Contracts with API Stabilization and New Features

rgb-banner

The LNP/BP Standards Association has announced the release of RGB v0.11-beta6. This system, which enables private and scalable client validated smart contracts on Bitcoin and Lightning networks, has seen substantial improvements and refinements in its latest iteration. The release detailed here, introduces stabilised API’s, enhanced interface inheritance, improved scripting capabilities, optimised data containers, and new invoicing features.

API Stabilization & Feature Freeze

RGB v0.11-beta6 has reached a critical point in its development with the stabilisation of it’s APIs and the implementation of a feature freeze. This means no further consensus-level or standard library-breaking changes are planned, except for addressing newly discovered bugs or issues. Developers working with RGB are encouraged to update to this version to ensure interoperability across applications involving assets, invoices, consignments, and other exchange data.

Key Enhancements in Beta 6

Consensus-level Changes:

  • Genesis Timestamp and Issuer Identity: New proposals (RCP-240227A & RCP-240227B) make the timestamp and issuer identity integral parts of the genesis, enhancing transparency and traceability.

  • Script & Type Libraries: Changes (RCP-240313B) move script and type libraries outside of schema, interfaces, and operations, streamlining the development process.

  • Multiple Metadata Fields: Proposal RCP-240326A allows multiple metadata fields in contract operations, adding flexibility.

  • Asset Tags & Multichain Support: Improved handling of asset tags used in homomorphic encryption and enhanced support for running RGB contracts on multiple layer 1 solutions like Liquid network and the upcoming Prime network.

  • Virtual Machine & Macro Assembly Instructions: New Op-codes for contract state introspection and streamlined bracing, alongside more macro assembly instructions for complex verification code.


Interface Inheritance

A new way of designing RGB smart contract interfaces, providing better modularity, auditability, and the ability to upgrade.

Invoicing

Amount encoding: Introduction of a modified Base32 encoding for hiding amounts.

Pay-to-Address Requests: Standardization using blind seal definitions and improved encoding and chunking methods.

Data Containers

Optimizations have made data containers more compact and secure, enhancing overall performance.

Standard Library & Application-Level Changes:

  • Deterministic Contract & Operation Creation: Simplified API for working with contracts and consignments.

  • Embedded Wallet Support: Beta 6 introduces embedded wallet support, extending and simplifying RGB wallet APIs and improving Electrum and Esplora support.

  • New High-Level RGB Runtime: For software integration, along with a command-line tool for better output presentation and debugging capabilities.

Toolchain & Dev Tools

Enhanced APIs and commands, improved presentation of non-asset smart contract state, and new debugging tools for converting data consignments into human-readable formats.

Moving Forward

The RGB development team is preparing for a public preview of the RGB v0.11 and is actively seeking qualified auditors and penetration testers to enhance the systems security and robustness. A grant programme is planned to facilitate this process. For a complete list of changes, issues, and pull requests, visit the public RGB roadmap page. Detailed explanations of the changes can be found in the full release of the blog post.

Previous
Previous

Lightning Network: The Universal Language of Bitcoin

Next
Next

Core Scientific Declines $1 Billion Buyout Offer From CoreWeave