Joy

Joy

∮欢迎来到web3!现在我们是同志了。
medium

[科普] 什麼是BRC-20 -- 比特幣上的Token

起源#

BRC-20 是 Twitter 用戶 @domodata 在 2023 年 3 月 創建的比特幣上同質化代幣標準的嘗試。

image

來源: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 代幣,很多代幣漲幅驚人,是目前最火的話題。

image
儘管作者強調 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 的銘文如下:

{ 
  "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 代幣的銘文如下:

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

amt: 鑄造 brc-20 的數量,必須小於上面的 "lim"。

鑄造(轉賬)brc-20 代幣的銘文如下:

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

每個地址下 brc-20 代幣的餘額是多少,是 unisat.io 這樣客戶端軟件(索引器),根據 mint、transfer 事件進行統計獲得。如:UTXO 中包含 mint 銘文,就為第一個所有者添加,transfer 則在發起者的地址上扣除餘額,接收者地址加上餘額。

image

銘文是 ‘附加’ 交易(聰)上的,比特幣的礦工並不會處理這些銘文,從鏈上來看跟其它聰依然是沒有分別的,他們都是當做普通的聰來轉移的。

基於 Ordinals 協議附加的數據,需要額外的錢包(Ord Wallet / ordinalswallet 或 unisat)和區塊鏈瀏覽器來索引和跟踪他們。

例如這是一個鑄造 brc-20 FREE 代幣的交易:

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

在 ordinals 瀏覽器中才能展示詳細的 JSON 銘文:

image

brc-20.io 和 unisat.io 這樣的銘文服務商會跟踪每個交易,獲取到銘文,統計每個地址持有的 brc-20 代幣餘額。
完整的餘額狀態索引展示 目前 unisat.io 做的不錯。

如何發行或鑄造#

為了方便我們構造銘文,最好是選擇 Unisat 等 Ordinal 錢包,它們提供了部署了 BRC-20 標準的工具。

image

Unisat 是一個類似 MetaMask 的瀏覽器插件錢包,在創建錢包時,選擇 Taproot 格式的地址格式,然後從交易所提現或其他錢包轉入到該地址。

進入 brc-20 銘刻界面:

image

你可以選擇鑄造 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

當我們發行、鑄造或轉賬時,交易中的銘文數據,並不會被比特幣節點檢查及執行,因此需要我們來確保銘文 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 仍較中心化,體驗不佳(項目方 rug,網絡擁塞嚴重等)。但我們也看到大量的工具正在出現,由於比特幣本身有最大的共識,因此未來如何發展,值得關注。

參考鏈接#

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/

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。