Cregis Research观察:BRC-20的前世今生

一、BRC-20背景与发展历程

随着区块链技术的快速发展,各种加密货币和代币协议不断涌现。在以太坊的ERC-20代币协议成为行业标准之际,比特币社区也迎来了实验性质的BRC-20代币标准。BRC-20标准采用简洁、安全的设计理念,实现了代币的部署、铸造和转移。BRC-20基于比特币网络,通过在聪(Satoshis)上记录数据的方式实现代币的发行和管理。本文将介绍BRC-20的原理和应用以及优势和缺陷等方面的内容,以期为读者提供全面深入的了解。

长期以来,人们觉得比特币生态相对于以太坊来说不具有扩展性,因为除了转账交易以外,区块上几乎无法保存任何数据。BRC-20近期爆火的原因在于它是基于比特币的代币标准,将NFT和其他代币引入了比特币生态。

2020年1月,比特币核心开发者Pieter Wuille发布了BIP341和BIP342比特币改进提案为比特币生态带来了可能性。

2022年6月,Casey Rodarmor对BIP342中的Tapscript做了技术延伸与扩展,并且提出新的比特币改进方案ordinal (序数)和 inscription(铭文),主要实现了比特币链上存储数据的功能。

2023年3月,Domodata进行ERC-20实验,通过Ordinal协议和inscriptions功能,向比特币链上存储json数据,证明链下代币余额状态,变相的实现了向比特币生态发布代币的功能。

事件

作者

时间

影响

bip-341 和 bip-342

https://twitter.com/pwuille

2020年1月

比特币链上存储带来可能性

ordinal 和 inscriptions

https://twitter.com/rodarmor

2022年2月

实现比特币链上存储技术

brc-20

https://twitter.com/domodata

2023年3月

解决比特币生态发布代币问题

Domodata(BRC-20作者)认为BRC-20标准只是个有趣的实验,通过实验向我们展示了可以通过以创建链上铭文的方式证明链下代币余额的状态。他觉得这只是一次尝试,BRC-20标准不应该被认为是唯一标准,同时鼓励比特币社区的人们共同努力修补和优化标准,并且BRC-20的作者还认为在比特币上发行资产目前是存在着更好的方案的。

二、BRC-20前置知识

BRC-20是基于Ordinal协议的代币标准。Ordinal协议是一种针对比特币网络的扩展协议,它允许在比特币聪上铭刻数据。基于Ordinal协议,BRC-20可以实现代币的发行、转移和交易。

BRC-20的原理相对复杂,需要了解比特币网络上的一些概念,比如聪(Satoshis)、Ordinal、Inscription和Taproot升级等。其中,聪是比特币网络的最小单位,Ordinal理论对每个聪进行编号,Inscription则是将数据刻在每个聪上,而Taproot升级相关的技术则是控制这些Inscription的机制。这些概念共同构成了BRC-20标准的运作逻辑。

(一)Satoshis(聪)

Satoshis(聪)不是比特币,而是比特币的最小单位,1个比特币可以分割成1亿个聪。

(二)Ordinal(序数)

序数理论是一种协议,用于将序列号分配给 satoshis(比特币的最小细分),并在交易花费时跟踪这些 satoshis。这些序列号都是很大的数字,比如这个 804766073970493。每个聪,也就是一个比特币的 ¹⁄₁₀₀₀₀₀₀₀₀,都有一个序号。

ord是一个开源项目(GitHub - casey/ord: ‍ Rare and exotic sats)。该项目包括几个部分一个是ordinal方案对比特币的改进建议,另外一个是用rust开发的ord工具,集成了索引、区块浏览器和命令行钱包的功能。后面我们会讲解到如何通过ord工具包刻录自己的铭文。

Cregis Research观察:BRC-20的前世今生_第1张图片

(三)inscription(铭文)

ordinal协议通过为每个聪分配唯一编号并添加注释来实现扩展功能。这个过程被称为铭文(inscription),即为聪赋予衍生含义。注释即铭文内容写在了交易见证(witnesses)当中,使得聪可以刻写任何类型的内容。铭文内容大小限制在3.9M以下会比较安全,因为铭文内容是包含在交易中的,所以内容越大,铭文交易需要支付的手续费就越高。

Cregis Research观察:BRC-20的前世今生_第2张图片

我们可以通过下载Bitcoin Core 和ord,创建自己的Inscriptions。

#安装ord
curl --proto '=https' --tlsv1.2 -fsLS https://ordinals.com/install.sh | bash -s
#打印ord版本号
ord --version
#创建比特币核心钱包
ord wallet create
#获取钱包地址
ord wallet receive
#查看待处理交易
ord wallet transactions
#创建Inscriptions(铭文)
ord wallet inscribe --fee-rate FEE_RATE FILE
#发送铭文
ord wallet send --fee-rate  
(四)BIP341和BIP342

BIP341和BIP342是两个与比特币改进相关的提案。BIP全称为Bitcoin Improvement Proposal(比特币改进提案),用于描述比特币协议、客户端或环境的新特性、流程或规范。BIP341和BIP342与Taproot升级有关,主要目的是提高比特币的隐私性和扩展性,而不是直接用于向区块链写入数据,但是Taproot升级可以使用比特币脚本和通过交易向区块链低成本写入数据,为brc-20标准进行了技术铺垫。

  • BIP341:Segregated Witness(隔离见证)输出,这个提案定义了新的输出类型,该输出类型实现了Taproot功能。这使得支持Taproot的交易可以与其他类型的交易在一个区块中共存,同时维持向后兼容性。BIP341为新的输出类型提供了详细的描述和规范。
  • BIP342:Tapscript,这个提案描述了Taproot内部的脚本语言,称为Tapscript。Tapscript基于比特币的现有脚本语言,并对其进行了扩展和优化。BIP342定义了Tapscript的语法、运行环境和执行规则。这些改进使得在比特币网络中执行复杂的智能合约变得更加高效和隐私。

常规我们可以使用OP_RETURN操作码将一小段数据(最多80字节)附加到交易输出中,从而将数据永久写入比特币区块链中。如果需要存储更多的数据我们需要采用数据分割的方式,创建多个包含OP_RETURN的交易,向每个小块分别写入一段数据,这种方法会大大增加交易费用。

当BIP341和342出现时,我们可以使用P2WSH(Pay-to-Witness-Script-Hash),P2WSH是Segregated Witness(隔离见证)的一部分,他允许你创建一个比特币地址,该地址表示Witness-Script(见证脚本)的散列值,要花费这个地址的资金,必须提供满足该脚本的解锁条件的输入。具体流程如下:
1.创建一个包含您要存储的数据的见证脚本。您可以使用OP_PUSHDATA操作码将数据嵌入脚本中。
2.计算见证脚本的散列值(SHA-256)。
3.使用散列值创建一个P2WSH地址。
4.创建一个比特币交易,将资金发送到P2WSH地址。
5.广播交易到比特币网络。

我们进行交易时,将解锁脚本从交易主体中分离,存储在Witness(见证数据)中。通过该技术我们可以在任何比特区块的Witness部分存储高达4MB的任意数据。这构成了任何比特币Inscriptions(铭文)的上限为4MB。

三、BRC-20的技术原理

基于ordinal铭文的BRC-20标准,利用Satoshis(聪)来存储和管理代币的各种信息,如代币名称、符号、总量等,将这些信息以JSON格式编码后写入Satoshis(聪)中,组成了一个一个的铭文(inscriptions)。最后通过汇总所有铭文(inscriptions)的活动,便可以找到 BRC-20 通证的余额状态,从而实现了代币的部署、铸造和转账。

Cregis Research观察:BRC-20的前世今生_第3张图片

(BRC-20标准)
 

BRC-20 是一种基于比特币的实验性代币标准,核心思想是通过序数理论 (ordinal theory) 创建、铸造和转移 BRC-20 通证来实现在比特币区块链上进行资产管理。该实验主要包括以下几个方面:

Cregis Research观察:BRC-20的前世今生_第4张图片

(流程图)

部署(Deploy):创建 BRC-20 通证,需要设置通证参数,如代币符号、最大供应量和铸币限制等。部署过程仅用于初始化 BRC-20,不影响状态。

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

***************注释****************
"p": "brc-20":指定协议为BRC-20,有助于其他系统识别和处理BRC-20事件。
"op": "deploy":指定操作类型为部署。
"tick": "ordi":指定通证的4个字母标识符,这里用"ordi"作为演示文档中的示例,它的最大供应量已达到。
"max": "21000000":设置通证的最大供应量为21,000,000。
"lim": "1000":设置每个序数的铸币限制为1000。

铸造(Mint):使用铸造功能铸造一定数量的 BRC-20 通证。铸造操作向铸币功能的初始所有者提供相应余额。若通证设有铸币限制,请确保不超过该限制。

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

***************注释****************
"p": "brc-20":指定协议为BRC-20,有助于其他系统识别和处理BRC-20事件。
"op": "mint":指定操作类型为铸造。
"tick": "ordi":指定通证的4个字母标识符,这里用"ordi"作为示例。
"amt": "1000":设置铸造的通证数量为1000。

转移(Transfer):通过转移功能转移BRC-20 通证的一定数量。转移操作从发送者的余额中扣除通证,并将其添加至接收者的余额。转移功能仅在第一次转移时生效。

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

***************注释****************
"p": "brc-20":指定协议为BRC-20,有助于其他系统识别和处理BRC-20事件。
"op": "transfer":指定操作类型为转移。
"tick": "ordi":指定通证的4个字母标识符,这里用"ordi"作为示例。
"amt": "100":设置转移的通证数量为100。

状态追踪:我们创建链上铭文(inscriptions),向其中存储符合BRC-20标准的json数据的方式,可以证明链下代币部署、铸造,转移的状态。通过汇总链上所有铭文(inscriptions)的活动,可以找到 BRC-20 代币的余额状态。

Cregis Research观察:BRC-20的前世今生_第5张图片

四、BRC-20的应用与操作

(一)如何创建BRC-20钱包

Cregis Research观察:BRC-20的前世今生_第6张图片

1.下载并创建钱包:ordinalswallet.com
2.点击您的钱包个人资料。
3.点击“接收”。
4.复制钱包地址。
5.前往任何支持taproot的交易所并将一些BTC提现到此地址。(Binance,Bybit等)

(二)如何购买BRC-20代币

Cregis Research观察:BRC-20的前世今生_第7张图片

1.点击BRC20选项卡,从列表中选择任意代币。(以$PEPE为例)
2.现在检查代币数量,每个代币价格。点击“立即购买”。
3.确认密码。
4.点击“立即购买”并确认交易。

(三)如何铸造自己的BRC-20代币

Cregis Research观察:BRC-20的前世今生_第8张图片

1.转到“铭文”部分。
2.选择“BRC-20”,输入代币简称(4个字母)和数量,然后点击“提交”。
3.选择网络费用,然后点击“铭文”。

(四)如何免费铸造其他代币

Cregis Research观察:BRC-20的前世今生_第9张图片

1.转到BRC-20列表,查看每个代币供应量下的进度条。(如果进度条不是100%,那么您可以铸造该代币)。
2.点击代币>>检查详情>>铸币。
3.设置费用>>铭文。
4.确认交易。

五、BRC-20的风险

(一)偏离去中心化原则

BRC-20 代币的发行和使用机制导致了某种程度的中心化。这是因为 BRC-20 代币需要依赖特定的平台和交易所进行发行、交易和管理,而这些平台和交易所往往掌握着更多的资源和权力。这与比特币去中心化的核心精神相悖,因为比特币的目标是实现一个去中心化、公平且开放的货币体系。

(二)缺失公平和安全性

BRC-20 代币的铭文先到先得机制可能导致不公平。这是因为在比特币网络上,矿工可以选择处理他们想要处理的交易,而 BRC-20 代币的铭文先到先得机制让矿工更倾向于处理那些支付更高费用的交易,而忽略了其他交易。这可能导致一部分用户因为支付不起高昂的交易费用而被排除在外。此外,BRC-20 代币的安全性不及比特币网络本身,因为其依赖于比特币网络之上的第二层技术,可能会存在安全漏洞和风险。

(三)风险

BRC-20 代币可能会引发名为 time-bandit attacks 的 MEV 策略攻击。这是因为 BRC-20 代币在比特币网络上的交易和应用可能导致矿工有机会利用 MEV(矿工可提取价值)策略攻击,通过操纵交易顺序来谋取利益。这对网络的整体安全性和可靠性产生负面影响。此外,BRC-20 代币还可能引起监管对比特币的打击风险。这是因为 BRC-20 代币的发行和交易可能涉及到一些非法活动,如洗钱、金融欺诈等,从而导致政府和监管机构对整个比特币网络产生担忧并采取措施进行打压。

六、BRC-20投资建议

虽然BRC-20协议目前处于实验阶段,但BRC-20协议为比特币社区提供了一种新的代币实现方式,BRC-20协议的出现有助于推动比特币生态的创新,吸引更多的开发者和用户加入比特币社区。未来,随着比特币社区对BRC-20协议的优化和改进,它将在加密货币领域发挥更大的作用。

目前面临的一些挑战。首先,与以太坊的ERC-20相比,BRC-20无法与智能合约进行交互,无法执行自动化操作,如自动转账或分红等。这限制了BRC-20在某些场景下的应用潜力。其在去中心化金融(DeFi)和其他应用场景的应用可能受到限制。此外,由于BRC-20协议尚处于实验阶段,其可扩展性和兼容性仍需进一步探讨。

BRC-20作为基于Ordinal协议的一个实验,其本质是对Ordinal协议的一次应用实验,该实验为我们提供了新的思路。投资者在进行投资时,应具备长期的视角。未来可能会有更多基于Ordinal协议的优化和创新出现,投资者应关注这些发展趋势,以做出更明智的投资决策。

引用

brc-20协议文档
brc-20 - brc-20 experiment

taro协议文档
Taproot Assets - Builder's Guide

ordinal BIP
ord/bip.mediawiki at master · casey/ord · GitHub

ordinal文档
Introduction - Ordinal Theory Handbook

tapscript工具
GitHub - cmdruid/tapscript: A humble library for working with Tapscript and Bitcoin Transactions.

BIP341
bips/bip-0341.mediawiki at master · bitcoin/bips · GitHub

BIP342
bips/bip-0342.mediawiki at master · bitcoin/bips · GitHub

domodata推特
https://twitter.com/domodata

pwuille推特
https://twitter.com/pwuille

brc-20应用
https://twitter.com/pwuille

ord
GitHub - casey/ord: ‍ Rare and exotic sats

brc-20的风险
BRC-20 引发比特币网络剧烈波动,有哪些不可忽视的争议和风险? - ChainCatcher

你可能感兴趣的:(区块链)