CAT20協議引領BTC智能合約新時代

robot
摘要生成中

BTC智能合約新篇章:解析Fractal Bitcoin與CAT20協議

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

Fractal Bitcoin作爲比特幣生態的新成員,在經過多輪測試網後於9月正式上線主網。它的一大亮點是具備智能合約功能,並在主網啓動之際推出了CAT20代幣協議。那麼,CAT20有哪些巧妙的技術設計?我們又能從中學到什麼呢?

Fractal Bitcoin簡介

在深入CAT20之前,我們需要先了解Fractal Bitcoin。它是一個完全兼容BTC的二層網路,區塊確認時間僅需1分鍾。其基本原理是將BTC網路復制多份,每條鏈都能處理交易,從而提高整體處理速度。

Fractal的一大創新在於啓用了BTC早期因安全考慮棄用的OP_CAT操作碼。這使得Fractal Bitcoin具備了智能合約的能力,爲更多創新應用提供了可能。

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

CAT Protocol概述

基於OP_CAT的支持,CAT Protocol應運而生。目前,CAT20協議已在Fractal主網上線運行。它在設計上類似於以太坊的ERC20標準,但又有其獨特之處。

部署流程

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

  1. Commit階段:將代幣基本信息寫入交易輸出腳本,生成的交易哈希作爲該代幣的唯一標識。

  2. Reveal階段:輸出一個OP_RETURN保存CAT20初始狀態哈希,並生成一個Minter用於後續鑄造過程。

這種兩步部署方式有助於保護項目信息,直到reveal階段才完全公開。

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

鑄造機制

CAT20的鑄造過程有幾個特點:

  • 每次鑄造使用一個minter作爲輸入
  • 可以輸出多個minter,但每次只能鑄造一個token
  • 輸出順序固定,minter必須在token之前

爲平衡網路擁堵和經濟性,V2版本默認生成兩個狀態相近的Minter。

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

交易構建

CAT20巧妙地利用了比特幣腳本的靈活性:

  1. 在reveal階段,通過調整公鑰生成方式,使部署者能控制不同地址的UTXO。

  2. minter階段利用OP_CAT實現智能合約功能,允許任何人使用minter UTXO。

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

狀態管理

CAT20在OP_RETURN和智能合約中存儲狀態信息:

  • OP_RETURN保存當前交易輸出狀態的哈希
  • 合約中記錄Token剩餘的鑄造次數

每次鑄造後,新生成的Minter的鑄造數量爲剩餘可鑄造數量的一半。

轉帳和銷毀

轉帳時,輸入輸出的token數量需保持一致。銷毀token只需將其轉到普通地址即可。

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

總結

CAT20的設計靈活性高,用戶可自主構建交易。這種設計便於查詢token持有情況和鑄造狀態,但也要求合約部分有嚴格的校驗邏輯。

CAT20作爲Fractal Bitcoin上的創新協議,展示了比特幣生態在智能合約領域的新可能。它的發展將爲比特幣網路帶來更多有趣的應用場景。

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

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

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

CAT-4.36%
BTC-0.76%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 6
  • 分享
留言
0/400
分叉自由主义者vip
· 07-22 01:38
btc也玩跟上玩智能合约了啊
回復0
Crypto历史课vip
· 07-21 00:39
历史总是重演... 2017年的ICO狂潮又回来了,老实说
查看原文回復0
潮水退了就知道vip
· 07-20 09:51
这也太看好了吧!
回復0
幻想矿工vip
· 07-20 09:46
神奇~又一个layer2项目
回復0
GraphGuruvip
· 07-20 09:40
不会玩就别玩了
回復0
空投猎人007vip
· 07-20 09:37
btc终于要起飞了!
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)