CAT20協議解析:Fractal BTC如何實現比特幣智能合約

robot
摘要生成中

BTC智能合約即將到來?Fractal BTC上新代幣協議CAT20解析

近期,比特幣生態中一個名爲Fractal BTC的二層網路在經歷多輪測試後正式上線主網。Fractal BTC的一大亮點是具備智能合約功能,並在主網啓動之際推出了新的代幣協議CAT20。那麼CAT20有哪些巧妙的技術設計?我們又能從中學到什麼呢?

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

Fractal Bitcoin簡介

在了解CAT20之前,我們需要先簡單了解一下Fractal Bitcoin。Fractal Bitcoin是一個與BTC完全兼容的"二層"網路,區塊確認時間只需1分鍾,比BTC更快。其基本原理是將BTC網路復制多份,每條鏈都可以處理交易,從而提高整體處理速度。

Fractal的一大特色是啓用了BTC早期因安全考慮而廢棄的OP_CAT操作碼,這讓Fractal Bitcoin具備了類似智能合約的能力,爲未來發展提供了更多可能性。

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

CAT Protocol概述

基於底層OP_CAT的支持,CAT Protocol應運而生。目前已經實際運行的是CAT20協議,某交易平台也新增了相應的界面支持。CAT20在名稱和功能上都與ERC20相似,那麼它是如何實現類似ERC20的生命週期的呢?

部署流程

部署CAT20代幣時,用戶需要指定錢包地址和代幣基本信息。與ERC20不同的是,CAT20可以設置預挖和單次鑄造上限。

部署分爲"commit"和"reveal"兩個階段:

  1. Commit階段:將代幣基本信息寫入交易輸出腳本。
  2. Reveal階段:保存CAT20初始狀態的哈希值,並生成Minter用於後續鑄造。

這種兩步部署方式在區塊鏈項目中較爲常見,可以在reveal階段才揭示項目的完整信息。

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

鑄造機制

Mint過程有以下特點:

  • 輸入爲一個minter,最初由部署時生成
  • 每次mint只有一個minter作爲輸入,可有多個minter作爲輸出
  • 每次mint生成一個token
  • 輸出順序固定,minter後必須是token

minter的數量管理很關鍵。如果每次只輸出1個,會造成擁堵;輸出過多則增加成本。V2版本默認生成兩個狀態相近的Minter,以平衡效率和成本。

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

交易構建

CAT20能夠使用非自有地址的UTXO構建交易,這得益於巧妙的腳本設計:

  1. 通過調整公鑰生成方式,實現對不同地址UTXO的控制
  2. minter本身作爲智能合約,允許任何人使用

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

狀態管理

minter中保存了狀態信息,包括:

  1. OP_RETURN中存儲當前交易輸出狀態的哈希值
  2. 合約中存儲剩餘可Mint數量

新生成的Minter可Mint數量爲剩餘總量的一半,直到全部Mint完成。

CAT20 token本身也是智能合約,記錄數量和歸屬地址。這一點與BRC20等銘文機制不同。

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

轉帳與銷毀

轉帳時輸入輸出token數量需保持一致。可在同一交易中轉移多種token。

銷毀token只需將其轉入普通地址即可。

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

總結

CAT20的設計靈活性很高,用戶可自主構建各類操作。這種設計有以下優勢:

  1. 查詢token持有情況只需檢索token的UTXO
  2. 通過OP_RETURN數據可輕鬆追蹤mint進度

不過靈活性也帶來了安全隱患,需要在合約中加強校驗邏輯。總的來說,CAT20爲BTC生態帶來了新的可能性,值得我們持續關注其發展。

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

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

BTC-1.5%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 4
  • 分享
留言
0/400
签名焦虑症vip
· 07-22 15:23
就这也要写那么长 看得我脑瓜子疼
回復0
RugDocDetectivevip
· 07-22 15:21
又一个二层 一坨代码味儿
回復0
liquiditea_sippervip
· 07-22 15:21
又一层马甲 看着头疼
回復0
RegenRestorervip
· 07-22 15:13
那年比特币2000块,现在后悔死了
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)