首页 /
构建 /
快速开始
构建 /
开发者入门

快速开始使用

基于比特币上的 RGB 协议。

构建基于比特币上的 RGB 协议应用所需的一切——从选择合适的库到在比特币主网上发行你的第一个资产。

阅读时间 15 分钟
开发者指南
v0.11.1 · 主网
前置要求

具备比特币和 UTXO 的基础知识会有帮助。比特币上的 RGB 协议主要用 Rust 实现,同时为其他语言提供更高层的 SDK。不需要预先具备 RGB 经验。

01 /
选择你的路径

你想在

比特币上的 RGB 协议上构建什么?

面向比特币上的 RGB 协议开发者的三个常见起点。选择与你的目标相符的一个。

构建应用

将 RGB 资产支持集成到钱包、交易所或产品中。使用 RGB Lib——为应用开发者设计的高层 SDK。

跳转到 RGB Lib →

发行资产

在比特币上创建同质化代币、稳定币、NFT 或自定义资产。选择合适的模式,通过 CLI 或 SDK 发行。

跳转到模式 →

理解协议

深入技术规范——客户端验证、一次性密封条、模式、状态转换和承诺方案。

阅读文档 ↗

02 /
配置你的环境

从零开始,完成

第一笔 RGB 资产转移。

rgb-lib Python 演示 开始——一个在本地回归测试网上完整的钱包到转移流程——准备好构建时再探索完整 API。

01

rgb-lib 与 Python 演示

rgb-lib 是一个用于在比特币上构建 RGB 应用的 Rust SDK,提供 Python、Kotlin、Swift 和 Node.js 的语言绑定。它抽象了底层 RGB 协议,为钱包管理、资产发行和转移提供高层 API。

探索它最快的方式是 rgb-lib Python 演示:一个 Jupyter notebook,演示了在本地回归测试环境中完整的钱包到转移流程。不需要 Rust 经验。

需要 Docker

02

克隆并构建演示

克隆 rgb-lib-python 仓库,为 Jupyter 演示构建 Docker 镜像。

# Clone the repository

git clone https://github.com/RGB-Tools/rgb-lib-python
cd rgb-lib-python/demo
./services.sh build

Docker 会构建完整的 RGB 环境

03

运行 notebook

启动所有服务。控制台中会出现一个链接——在浏览器中打开它,从上到下依次运行每个单元格。这一步覆盖了在回归测试网上从钱包创建、资产发行到转移的完整流程。

# Start all services (Bitcoin regtest + Electrum + Jupyter)

./services.sh start

# Open the link from the console output in your browser
# Run each cell from top to bottom

本地回归测试网——无需真实比特币

04

什么是 rgb-lib

rgb-lib 是在比特币上的 RGB 协议上构建应用的推荐高层库。它负责钱包创建、UTXO 管理、资产发行和转移——抽象了底层协议细节。除了原生 Rust API 外,还提供 Python、Kotlin、Swift 和 Node.js 的语言绑定。

语言绑定:Python · Kotlin · Swift · Node.js

05

使用 Rust 构建

对于生产环境集成,rgb-lib 提供原生 Rust API 以及 Python、Kotlin、Swift 和 Node.js 的绑定。完整的配置需要一些本页未展示的额外步骤——请查看完整仓库获取 API 参考、示例和最新的 rgb-lib 版本。

// 1. Add rgb-lib to Cargo.toml
// 2. Create wallet + connect to the Bitcoin Network
// 3. Fund wallet + create UTXOs
// 4. Issue an asset (NIA, CFA, UDA, IFA, PFA)
// 5. Transfer the asset

github.com/RGB-Tools/rgb-lib ↗

如需完整的 RGB Lib API 参考和更详细的示例,请查看 完整库文档 ↗ 和 RGB Lib GitHub 仓库 ↗

03 /
支持的模式

为你的资产

选择合适的模式。

模式(Schema)是定义合约结构的模板——包括其状态、转换和验证规则。正如 docs.rgb.info 文档所述,模式”相当于面向对象编程语言中的类”。截至 v0.11.1,官方支持五种模式。

同质化 · 固定供应量

NIA

不可增发资产

转移

固定供应量的同质化代币。定义代码、名称、精度和发行总量。发行后供应量不可增加。适用于代币、稳定币或任何有供应上限的资产。

非同质化 · 唯一

UDA

唯一数字资产

转移

非同质化资产(NFT)。支持内嵌媒体(最大约 64KiB)以及通过哈希摘要引用的外部媒体附件。可包含用于抵押资产的储备证明。

同质化 · 可收藏

CFA

可收藏同质化资产

转移

与 NIA 类似,但额外增加了一个表示收藏品的”Article”字符串。适用于既具有可转移价值、又带有收藏属性的同质化资产。

同质化 · 可增发

IFA

可增发同质化资产

转移

增发

替换

销毁

具有二次发行权的同质化资产。支持增发至设定的总供应量上限、销毁操作,以及用于历史验证捷径的替换权限。

同质化 · 许可制

PFA

许可制同质化资产

转移(签名)

不可增发的同质化资产,发行方必须通过签名明确授权每一笔转移。专为受监管资产设计,例如带有法律转移限制的公司股份。

自定义

你的模式

RGB 模式具有可组合性和可扩展性。可为身份认证、DAO 治理、发布证明,或任何需要在比特币上实现可编程状态的应用构建自定义模式。

模式文档 ↗

04 /
库与工具

比特币 RGB 协议的

库技术栈。

库关系图来自 RGB 官方文档 docs.rgb.info/annexes/rgb-library-map ↗

比特币 RGB 协议由一系列 Rust 库组成的技术栈构成,每个库负责协议的特定层。应用开发从 RGB Lib 开始——它抽象了下层的所有细节。

RGB Lib

Rust · 应用推荐使用

面向钱包和应用集成的高层库。将所有协议复杂性抽象为简洁的 API,用于发行资产、管理 UTXO 和转移。

github.com/RGB-Tools/rgb-lib ↗

RGB Lightning Node

Rust · 闪电网络集成

运行支持 RGB 的闪电网络节点。管理特定资产的支付通道,通过闪电网络路由 RGB 资产支付。

github.com/RGB-Tools/rgb-lightning-node ↗

RGB Consensus

Rust · 协议核心

RGB 协议的核心实现——状态转换、模式验证、合约操作。适合协议层开发。

github.com/rgb-protocol/rgb-consensus↗

RGB Sandbox

Docker · 测试环境

用于 RGB 开发的容器化测试环境。运行一个完整配置了 RGB 的本地比特币回归测试网络——无需接触主网即可发行和转移资产。

github.com/rgb-protocol/rgb-sandbox ↗

RGB Schemas

Rust · 标准模式

所有支持的 RGB 模式的官方实现——NIA、UDA、CFA、IFA、PFA。资产发行的参考实现。

github.com/rgb-protocol/rgb-schemas ↗

RGB Ops

Rust · 应用层操作

面向 RGB 应用的非共识关键 API,构建于 RGB Consensus 之上——发票生成、PSBT 构建以及比特币 RGB 协议的其他操作。

github.com/rgb-protocol/rgb-ops ↗

05 /
沙盒与测试

在上线主网前,

先在本地测试。

RGB Sandbox 提供一个基于 Docker 的环境,内置本地比特币回归测试网络,已为 RGB 开发完整配置。无需花费真实聪即可发行和转移资产。

01

克隆 sandbox 仓库

git clone https://github.com/rgb-protocol/rgb-sandbox

cd rgb-sandbox

02

启动 sandbox 环境

Docker 会启动本地比特币回归测试节点、Electrum 服务器以及所有必需的 RGB 基础设施。

docker-compose up -d

03

运行演示脚本

sandbox 中包含演示脚本,演示了在回归测试网上从发行到转移资产的完整流程。

./demo.sh

完整的发行 → 转移 → 接收流程

06 /
深入了解

接下来

该读什么。

客户端验证

理解让比特币上的 RGB 协议得以运作的密码学模型。

客户端验证 ↗

RGB 与闪电网络

在比特币上的 RGB 协议上构建原生闪电资产通道。

RGB 闪电网络 ↗

完整协议文档

完整技术规范——模式、状态转换、承诺方案。

docs.rgb.info ↗

生态系统与工具

构建在比特币上的 RGB 协议之上的钱包、DEX 和基础设施项目。

生态系统与工具 ↗

有问题吗,

加入开发者社区。

提问、分享你正在构建的项目,获得 RGB 社区的支持。