BTC生態新智能合約平台Fractal上線 CAT20協議亮點解析

robot
摘要生成中

BTC生態迎來智能合約新發展

最近比特幣生態出現了一個新的智能合約平台Fractal Bitcoin,它在9月份正式上線主網。Fractal的一大特點是具備智能合約能力,並在主網上線同時推出了新的代幣協議CAT20。CAT20在技術設計上有哪些巧妙之處?我們可以從中學到什麼?

技術角度解讀CAT20:分形比特幣上的新代幣協議

Fractal Bitcoin簡介

在了解CAT20之前,我們需要先簡單了解一下Fractal Bitcoin,兩者的關係類似於ERC20和ETH,CAT20協議是部署在Fractal Bitcoin上的。

Fractal Bitcoin又稱作分形比特幣,是一個完全兼容BTC的二層網路。相比BTC,它的區塊確認時間更快,只需1分鍾。其基本原理是將BTC網路復制了幾份,每條鏈都可以處理交易,處理交易的節點增多,速度自然也就加快了。不過具體的技術細節,如不同鏈之間如何通信目前還不太清楚,官方也沒有提供相關的技術文檔。

Fractal的一個重要特點是啓用了BTC很久以前因安全原因棄用的操作碼OP_CAT,這讓Fractal Bitcoin的能力上升了一個臺階。有人認爲OP_CAT能讓BTC具備智能合約的能力,這樣就爲未來發展提供了更多可能性。

目前,已經有人在Fractal Bitcoin上實現了一個類似ERC20的協議。

技術角度解讀CAT20:分形比特幣上的新代幣協議

CAT Protocol

有了底層的OP_CAT支持,很快就出現了對應的CAT Protocol。目前已經在實際運行的是CAT20協議,某區塊瀏覽器上也新增了對應的功能面板。

CAT20的名字讓人聯想到ERC20,兩者確實比較相似。相比成熟的ERC20協議,CAT20是如何實現類似的生命週期的呢?

技術角度解讀CAT20:分形比特幣上的新代幣協議

Deploy

在部署前,用戶需要指定錢包地址及代幣的基本信息,後者與ERC20類似。不同的是,CAT20可以設置預挖和每次Mint的數量限制。

部署分爲兩個階段:"commit"和"reveal"。在commit階段,交易的輸出腳本中會寫入代幣的基本信息,如名稱、符號等。commit階段發起的交易hashId會作爲該代幣的標識,用於區分其他代幣。

在reveal階段,交易會輸出一個OP_RETURN,保存CAT20的初始狀態Hash。之後會再輸出一個Minter,用於維護後續Mint過程的狀態變化。

整個Deploy過程遵循了區塊鏈上常用的提交和揭示兩個步驟,是一種比較常見的項目部署方式。

技術角度解讀CAT20:分形比特幣上的新代幣協議

Mint

Mint過程有以下幾個特徵:

  • mint的輸入是一個minter,最初由deploy時生成
  • 每次mint只有一個minter作爲輸入,有任意個minter作爲輸出
  • 每次mint只有一個token
  • 輸出的順序有要求,minter必須在token之前

Mint過程中minter的數量變化會影響整個網路的mint活動。如果每次只輸出1個minter,網路中可用的minter數量不變,會造成擁擠。爲避免這種情況,需要將每次輸出的minter數量設爲大於1。但多輸出一個minter就要多支付一筆utxo,出於經濟考慮,更多人會傾向於將minter設爲0,這會導致minter通縮,需要一些人自願支付多出的minter來維持。

在V2版本中,默認生成兩個Minter,且兩個Minter的狀態會盡可能接近。

技術角度解讀CAT20:分形比特幣上的新代幣協議

交易的狀態(V2)

minter中保留了狀態,存儲在兩個地方:一是交易輸出的OP_RETURN中,二是存儲在智能合約中,即上述的Minter和Token。

OP_RETURN中存儲當前交易輸出狀態的Hash,合約中存儲Token剩餘的Mint次數。每次Mint後,新生成Minter的mint數量等於剩餘可mint數量除以二。最後所有Minter的剩餘數量爲0。

除Minter外,生成的Token也是智能合約,即CAT20。CAT20有兩個基本狀態:數量和Token歸屬者地址。不同於BRC20或銘文,CAT20並不在地址的UTXO上。

技術角度解讀CAT20:分形比特幣上的新代幣協議

Transfer

Transfer時,構建交易的輸入和輸出token數量需保持一致。同一筆交易可以有多個不同token,只需各token的輸入輸出數量一致即可。

技術角度解讀CAT20:分形比特幣上的新代幣協議

Burn

要燃燒Token,只需將Token轉到普通地址即可。

技術角度解讀CAT20:分形比特幣上的新代幣協議

總結

CAT20的所有操作都由用戶自己構建,靈活性很大,因此合約部分需要做大量校驗邏輯。目前出現的一些漏洞也是因校驗邏輯疏忽造成的。

這種設計有以下優點:

  1. 查找所有Token持有情況只需查看token的utxo,無需繼續向上查詢
  2. 查看mint當前情況可搜索OP_RETURN中數據帶有cat的交易

技術角度解讀CAT20:分形比特幣上的新代幣協議

BTC0.97%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 7
  • 分享
留言
0/400
破产倒计时vip
· 2小時前
又一个L2割韭菜的来了
回復0
NFT Regret Machinevip
· 3小時前
比特币哪有这么多花里胡哨的 真不会炒
回復0
清醒的梦游者vip
· 3小時前
又是智能合约 BTC不搞这些不好吗
回復0
NFT梦游者vip
· 3小時前
又一个哪儿凉快呆哪儿的山寨币
回復0
熊市理发师vip
· 3小時前
又一山寨币 都快数不过来了
回復0
MetaDreamervip
· 3小時前
又见智能合约? btc这是往eth那学去了
回復0
鱿鱼丝加班狗vip
· 3小時前
BTC又整新活是吧 坐等薅羊毛
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)