[科普] 什么是BRC-20 -- 比特币上的Token

  • Tiny熊
  • 更新于 2023-05-02 10:14
  • 阅读 9206

背景BRC-20是Twitter用户@domodata在2023年3月创建的比特币上同质化代币标准的尝试。目前 BRC-20 仍较中心化,体验不佳。但我们也看到大量的工具真在出现,由于比特币本身有最大的共识,因此未来如何发展,值得关注。

背景

BRC-20 是Twitter用户@domodata在2023年3月 创建的比特币上同质化代币标准的尝试。

image-20230501100306158

来源:Twitter: https://twitter.com/domodata/status/1633658974686855168

BRC-20利用JSON格式的Ordinals铭文来部署代币合约、铸造代币和转账代币。Ordinals 协议利用比特币隔离见证数据保附加数据,在这篇科普文章有更详细介绍。

BRC-20 第一个代币 ordi ("Ordinals "的简称)发行后,很快引起了社区的FOMO情绪, ordi 所有2100万代币在18小时内,被铸造完毕,并很快有人部署了 "meme"(模因), "pepe" (青蛙佩佩) ,并被快速铸造一空,到目前为止,根据 brc-20.io 上数据,已经铸造了7543个不同的BRC-20代币,很多代币涨幅惊人,是目前最火的话题。

<img src="https://img.learnblockchain.cn/pics/20230502083915.png" alt="image-20230502083914246" style="zoom:40%;" />

尽管作者强调 BRC-20 当前仅仅是一个有趣的实验性,不应该被认为是比特币上同质化token标准,无法阻挡大家参与的热情。

BRC-20 是什么?

BRC-20 这个名字参考自以太坊ERC-20代币标准,不过由于比特币区块链没有像以太坊那样的链上执行能力,BRC-20 使用了比特币见证数据区域记录JOSN格式铭文,链下更新状态(余额)的方式来实施BRC-20 。

BRC-20 定义了一组简单的JSON 格式铭文来描述代币的部署、铸造及转移, 以下引用自: https://domo-2.gitbook.io/brc-20-experiment/

部署 brc-20

部署brc-20的铭文如下:

{ 
  "p": "brc-20",
  "op": "deploy",
  "tick": "ordi",
  "max": "21000000",
  "lim": "1000"
}

p: 表示协议名。

op:表示操作类型, 操作可以是deploy, mint, transfer

tick:brc-20的4个字母标识符

max: 设置brc-20的最大发行量

lim: 每次mint 时限额。

铸造 brc-20

铸造brc-20 代币的铭文如下:

{ 
  "p": "brc-20",
  "op": "mint",
  "tick": "ordi",
  "amt": "1000"
}

amt: 铸造brc-20的数量,必须小于上面的 "lim"。

转账 brc-20

铸造brc-20 代币的铭文如下:

{ 
  "p": "brc-20",
  "op": "transfer",
  "tick": "ordi",
  "amt": "100"
}

每个地址下brc-20 代币的余额是多少,是unisat.io这样客户端软件(索引器),根据minttransfer 事件进行统计获得。如:UTXO中包含 mint 铭文,就为第一个所有者添加,transfer 则在发起者的地址上扣除余额,接收者地址加上余额。

image-20230501101138728

铭文是 ‘附加’ 交易(聪)上的,比特币的矿工并不会处理这些铭文,从链上来看跟其它聪依然是没有分别的,他们都是当做普通的聪来转移的。

基于 Ordinals 协议附加的数据,需要额外的钱包(Ord Wallet / ordinalswalletunisat)和区块链浏览器来索引和跟踪他们。

例如这是一个铸造brc-20 FREE 代币的交易:

https://blockstream.info/tx/331d02db3d6ee0cffae9052be5799bd7754c6ebb2020e422058b73334c59bf85

在 ordinals 浏览器中才能展示详细的JSON铭文:

image-20230502001633592

来源链接:https://ordinals.com/inscription/331d02db3d6ee0cffae9052be5799bd7754c6ebb2020e422058b73334c59bf85i0

brc-20.iounisat.io 这样的铭文服务商会跟踪每个交易,获取到铭文,统计每个地址持有的brc-20 代币余额。 完整的余额状态索引展示 目前unisat.io 做的不错。

如何发行或铸造

为了方便我们构造铭文,最好是选择 Unisat 等Ordinal钱包,它们提供了部署了BRC-20标准的工具。

image-20230502090855909

来源:https://unisat.io/

Unisat 是一个类似MetaMask的浏览器插件钱包,在创建钱包时,选择Taproot 格式的地址格式,然后从交易所提现或其他钱包转入到该地址。

进入brc-20 铭刻界面

<img src="https://img.learnblockchain.cn/pics/20230502091530.png" alt="image-20230502091524635" style="zoom:50%;" />

你可以选择铸造brc-20 或发行(Deploy)一个自己的brc-20 。

在发行(Deploy)brc-20 时,每个 brc-20 使用“Tick”名称来识别唯一性,部署时需设置“Tick”名称、“max”最大发行量、"lim"单个交易铸造量。因此部署时,brc-20代币的tick不能与已经部署过的brc-20相同。

在铸造brc-20,则需要确保该brc-20 还没有达到最大发行量。在Unisat可以查阅铸币百分比:

image-20230502093238127

当我们发行、铸造或转账时,交易中的铭文数据,并不会被比特币节点检查及执行,因此需要我们来确保铭文JSON数据是有效的,以转帐为例,有效的转帐功能,应该:

  • 在铭文中所述的金额不能超过可用余额(Available)

  • 可用余额定义为:[总余额] - [转移的余额(Transferable balance)]。如果一个地址没有转移过,可用余额总余额是相等的。

例如:一个钱包持有的总余额为1000 "ordi",而 。持有人然后签署了700 "ordi "的转移铭文。一旦铭文被确认,以下情况是真实的:总余额=1000,转移的余额=700, 因此可用余额=300。如果在下一个区块中,用户进行 500 "ordi "的转移铭文,这将是无效的。不过比特币节点不检查铭文,交易可以成功,但是在 brc-20 钱包服务中,则会当做一个失败的交易,不会更新状态。

小结

BRC-20 及 Ordinals NFT, 给比特币带来了很多争论,分成两种阵营:支持的一方认为,只要你支付手续费,你就有全权以任意的方式使用区块空间,不论交易是什么内容,他们 认为BRC-20 与 NFT 给比特币带来了新的文化与叙事,有利于提高比特币的采用率。反对方则认为这些BRC-20与NFT毫无价值,是垃圾交易,这些垃圾交易会抢占交易带宽,导致交易入块时间变长以及手续费变高。

目前 BRC-20 仍较中心化,体验不佳。但我们也看到大量的工具真在出现,由于比特币本身有最大的共识,因此未来如何发展,值得关注。

本文作者Tiny熊,如果你觉得本文对你有帮助,欢迎关注我 @tinyxiong_eth

以下是我写作本文的参考链接:

参考链接

brc-20 文档:https://domo-2.gitbook.io/brc-20-experiment/

BRC-20 浏览器: https://brc-20.io/

BRC-20钱包:https://unisat.io/

Ordinals 原生钱包:https://ordinalswallet.com/

BRC-20交易市场: https://ordswap.io/

Mint 工具:https://looksordinal.com/

Oriscan: https://ordiscan.com/

点赞 4
收藏 4
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

1 条评论

请先 登录 后评论
Tiny熊
Tiny熊
0xD682...E8AB
登链社区发起人 通过区块链技术让世界变得更好而尽一份力。