707 / 736BRC20

BRC-20

通过 Ordinals Inscriptions 记录的代币

BRC-20 利用比特币交易中的文本记录来记账。比特币保存这些数据,却不计算代币余额。计算由另一个程序——索引器——完成:它读取记录,并按 BRC-20 的规则解释其含义。

BRC-20 是一种元协议,也就是解释比特币中所存数据的一套规则。其基本操作 deploy、mint 和 transfer 分别用于创建代币、发行单位和转移单位。这些代币不是额外的 BTC,也不是比特币共识新增的一部分。

化名 domo 的作者尝试用 Ordinals 创建同质化代币,即同一种代币的各个单位在账务中具有相同作用。原始文档将其称为实验,并提醒读者不要把它视为最终方案。BRC-20 的规则是参与者之间的约定,并没有改变比特币的规则。 [1]

Inscription 是在花费 Taproot 输出时写入见证数据的内容。用于 BRC-20 时,它包含 JSON,也就是由 p、op、tick 等命名字段组成的文本。比特币节点验证交易,但不会把这段文本当作代币账务来执行。解释其含义的是索引器。 [5]

第一个有效的 deploy 占用一个 ticker,也就是不区分大小写的代币标识。它设置供应量 max,并可设置单次发行限制 lim 和精度 dec。基本规则最多允许 18 位小数。除了原来的 4 字节标识,IP1 又引入了与 self_mint 相关的 5 字节标识。这里计算的是 UTF-8 字节,而不是字母;两种形式不能随意替换。 [2] [3] [6]

持有人先创建一条 transfer inscription,写明金额 amt。这会从可用余额中预留相应金额,但总余额暂时不变。只有这条 inscription 的第一次移动才会把单位转给接收者。转给自己则会解除预留。每条 transfer inscription 只能使用一次;再次出售同一条记录,不会再转移那些代币。 [1] [3]

索引器必须以相同方式处理事件顺序、限额和首次转移规则。它们根据 scriptPubKey,也就是输出的锁定脚本,跟踪余额归属,而不是只看显示的地址。链重组可能改变顺序和最终账目。因此,比特币交易得到确认,本身并不能证明其中的 BRC-20 操作有效。 [3]

基本规则接受 text/plain 或 application/json 内容类型,并要求合法的 JSON。必需字段及操作名称使用小写字母;必需的值,包括数字,都要写成带引号的字符串。dec 限制小数位数,uint64_max 限制数值范围。即使人能轻松读懂,一个没有引号的数字或多余的逗号也可能使操作无效。 [3]

如果服务商先在自己的地址上创建 mint,代币余额可能归它所有。之后仅交付 mint inscription,并不会转移那笔余额。误花相关 UTXO,也可能带来意外结果。把 inscription 作为矿工手续费支付以及销毁代币,都有各自的规则;普通 BTC 转账并不是 BRC-20 的通用操作指南。 [1] [6]

先核对第一个有效的 deploy、max、lim、dec,以及适用时的 self_mint,再按区块和交易顺序追踪后续事件。OPI 可以比较每个区块的事件哈希,以及整段历史的累计哈希。但规则版本必须一致:较新的可编程模块扩展了原始模型。本词条解释的是这一基础,而不是所有扩展。 [4]

要获得更完整的理解,请将本词条与以下词条结合阅读: Ordinals Inscriptions, Runes, UTXO, Taproot, Bitcoin Script, Fee Rate.

01比特币 Full Nodes 会验证 BRC-20 吗?

它们验证比特币交易及其脚本,但不计算 BRC-20 代币余额。余额由索引器按元协议规则重建。因此,仅运行比特币节点,还不足以验证代币账目。

02BRC-20 和 Runes 是一回事吗?

不是。基本的 BRC-20 使用文本形式的 Ordinals Inscriptions,并通过两个步骤转账。Runes 把二进制 runestone 消息写入含 OP_RETURN 的输出,并以另一种方式将代币分配给 UTXO。这两个系统的规则不能混用。

DOC · 001domo — BRC-20 experiment一手来源 DOC · 002Layer 1 Foundation — BRC-20 Documentation文档 DOC · 003Layer 1 Foundation — BRC-20 Indexing Rules规范 DOC · 004OPI — Open Protocol Indexer文档 DOC · 005Ordinal Theory Handbook — Inscriptions文档 DOC · 006Layer 1 Foundation — BRC20 IP1规范 DOC · 007Ordinal Theory Handbook — Runes文档
修订日期: 来源优先 · 非投资建议