# BTC上的智能合约:Fractal BTC和CAT20协议解析近期,比特币生态迎来了一个重要进展。经过多轮测试网后,Fractal BTC于9月正式上线主网。Fractal的一大亮点是具备智能合约功能,并在主网上线同时推出了新的代币协议CAT20。本文将深入探讨CAT20的技术设计及其潜在影响。## Fractal Bitcoin简介在了解CAT20之前,我们需要先简单认识Fractal Bitcoin。Fractal Bitcoin是一个完全兼容BTC的"二层"网络,区块确认时间仅需1分钟。其基本原理是将BTC网络复制多份,每条链都可处理交易,从而提高整体处理速度。Fractal的一大亮点是启用了BTC早期因安全考虑而弃用的OP_CAT操作码。这一操作码的重新启用,赋予了Fractal Bitcoin智能合约的能力,为更多创新应用打开了可能性。## CAT Protocol概述基于OP_CAT的支持,CAT Protocol应运而生。目前已落地的CAT20协议,在功能上类似于以太坊的ERC20标准。让我们来看看CAT20是如何实现类似ERC20的生命周期的。### 部署流程CAT20的部署分为"commit"和"reveal"两个阶段:1. Commit阶段:将代币基本信息(如名称、符号等)写入交易输出脚本。该交易的hashId作为代币的唯一标识。2. Reveal阶段:输出一个包含CAT20初始状态Hash的OP_RETURN,以及一个用于后续Mint过程的Minter。这种两阶段部署方式是区块链项目常用的提交-揭示模式,可以在reveal阶段才公开项目的部分数据。### Mint机制Mint过程有以下特点:- 输入为一个minter(最初由deploy生成)- 每次mint只有一个minter输入,可有多个minter输出- 每次mint生成一个token- 输出顺序固定:minter后必须是tokenMint过程中minter的数量变化很关键。如果每次只输出1个minter,会造成网络拥堵;输出过多则增加交易成本。V2版本默认生成两个状态相近的Minter,以平衡这一问题。### 交易构建CAT20的交易构建有两个关键点:1. Reveal阶段:通过巧妙修改脚本逻辑,实现对非本地址UTXO的控制。2. Minter阶段:推测是利用OP_CAT实现的智能合约功能,使所有人都能使用minter UTXO作为输入。### 交易状态(V2)交易状态存储在OP_RETURN和智能合约中。OP_RETURN存储当前输出状态的Hash,合约存储剩余Mint次数。每次Mint后,新Minter的mint数量为剩余可mint数量的一半。值得注意的是,CAT20 token本身也是智能合约,包含数量和归属者地址两个基本状态。这意味着CAT20并不直接存在于用户地址的UTXO上。### 转账和销毁转账时,交易的token输入输出数量需保持一致。销毁token只需将其转到普通地址即可。## 总结CAT20的设计给予用户很大的操作灵活性,但也对合约的验证逻辑提出了更高要求。这种设计的优势包括:1. 查询token持有情况只需检查token UTXO2. 通过搜索OP_RETURN中带"cat"的交易可快速了解mint状态CAT20为比特币生态带来了新的可能性,但其安全性和实际应用效果还有待进一步观察和验证。
BTC智能合约新突破:Fractal BTC主网上线引入CAT20协议
BTC上的智能合约:Fractal BTC和CAT20协议解析
近期,比特币生态迎来了一个重要进展。经过多轮测试网后,Fractal BTC于9月正式上线主网。Fractal的一大亮点是具备智能合约功能,并在主网上线同时推出了新的代币协议CAT20。本文将深入探讨CAT20的技术设计及其潜在影响。
Fractal Bitcoin简介
在了解CAT20之前,我们需要先简单认识Fractal Bitcoin。Fractal Bitcoin是一个完全兼容BTC的"二层"网络,区块确认时间仅需1分钟。其基本原理是将BTC网络复制多份,每条链都可处理交易,从而提高整体处理速度。
Fractal的一大亮点是启用了BTC早期因安全考虑而弃用的OP_CAT操作码。这一操作码的重新启用,赋予了Fractal Bitcoin智能合约的能力,为更多创新应用打开了可能性。
CAT Protocol概述
基于OP_CAT的支持,CAT Protocol应运而生。目前已落地的CAT20协议,在功能上类似于以太坊的ERC20标准。让我们来看看CAT20是如何实现类似ERC20的生命周期的。
部署流程
CAT20的部署分为"commit"和"reveal"两个阶段:
Commit阶段:将代币基本信息(如名称、符号等)写入交易输出脚本。该交易的hashId作为代币的唯一标识。
Reveal阶段:输出一个包含CAT20初始状态Hash的OP_RETURN,以及一个用于后续Mint过程的Minter。
这种两阶段部署方式是区块链项目常用的提交-揭示模式,可以在reveal阶段才公开项目的部分数据。
Mint机制
Mint过程有以下特点:
Mint过程中minter的数量变化很关键。如果每次只输出1个minter,会造成网络拥堵;输出过多则增加交易成本。V2版本默认生成两个状态相近的Minter,以平衡这一问题。
交易构建
CAT20的交易构建有两个关键点:
Reveal阶段:通过巧妙修改脚本逻辑,实现对非本地址UTXO的控制。
Minter阶段:推测是利用OP_CAT实现的智能合约功能,使所有人都能使用minter UTXO作为输入。
交易状态(V2)
交易状态存储在OP_RETURN和智能合约中。OP_RETURN存储当前输出状态的Hash,合约存储剩余Mint次数。每次Mint后,新Minter的mint数量为剩余可mint数量的一半。
值得注意的是,CAT20 token本身也是智能合约,包含数量和归属者地址两个基本状态。这意味着CAT20并不直接存在于用户地址的UTXO上。
转账和销毁
转账时,交易的token输入输出数量需保持一致。销毁token只需将其转到普通地址即可。
总结
CAT20的设计给予用户很大的操作灵活性,但也对合约的验证逻辑提出了更高要求。这种设计的优势包括:
CAT20为比特币生态带来了新的可能性,但其安全性和实际应用效果还有待进一步观察和验证。