UTXO:串起铭文、面向意图的BTC L2的发展脉络

[复制链接]
910 |0
发表于 2024-2-19 00:54:01 | 显示全部楼层 |阅读模式
什么是 UTXO 和 eUTXO?
UTXO (Unspent Transaction Output),直译就是「尚未花费的交易输出」。比如,你收到了一笔 10 个 BTC 的转账,并且没有花费给其他人,这一笔 10 BTC 就是一个 UTXO。
让我们通过对比和例子来理解。
目前区块链主流的两个交易记录模型,也就是 UTXO 模型和账户模型。以太坊采用的账户模型非常好理解,这个模型就和银行账户、支付宝微信账户一样。这种模型下,账户里的资金总量直观显示为一个整体余额,系统只需要跟踪用户账户的余额变化。打个比方:你的账户里有 1000 元的余额。你购买 600 元的 OneKey Classic 时,系统会在你的账户里计算扣除 400 元,同时在 OneKey 的账户里面增加 400 元。
相比以太坊使用的账户模型,比特币的 UTXO 抽象会更像真正的「钱包」和「钞票」,更像真正的现金交易。打个比方:想象你有一个钱包袋子,里面有很多不同面额的钞票。每一张钞票都可以看作是一个 UTXO,即一笔你可以使用的钱。在比特币这样的系统里,当你收到别人转账的比特币,这笔钱就像是钱包里的一张新钞票,你还没用它来支付别的东西,所以它是「未花费的」。
每次你进行一笔交易,比如用一张 1000 元的钞票买了一个 600 元的 OneKey Classic,你会拿回 400 元的找零。在比特币系统中,这种操作相当于你用一个 UTXO(1000 元)创建了两个新的 UTXO:一个是支付给 我们 OneKey(600 元),另一个是找回给自己的(400 元)。你「花费」掉了原来的 UTXO(1000 元),同时「生成」新的 UTXO(600 元和 400 元)。
有了上文,eUTXO(Extended Unspent Transaction Output,即扩展版的尚未花费的交易输出)的概念,就很好理解了。在 Cardano 这类使用 eUTXO 模型的系统中,它不仅记录了钱的数量,还能包含更复杂的数据和逻辑(例如,这笔钱只能用来购买特定的商品或服务)。这样一来,每笔交易不仅是转移资金,还可以执行一些条件甚至是智能合约的内容。这使得交易变得更灵活,但同时也更复杂。
BRC-20 等铭文与 UTXO 有什么关系?
如果你对 BRC-20 协议有所了解,你很快就会发现——「卧槽,他们在做的事就是在 UTXO 模型上面跑账户模型」。毕竟,协议名字的来源是使用账户模型的以太坊的代币标准 ERC-20。
在 BRC-20 中,代币的操作,包括部署(deploy)、铸造(mint)和转移(transfer),都是通过在比特币的 UTXO 交易中嵌入 JSON 格式的数据来实现的。这相当于,我们在之前提到的「钞票」上写字记录。这种方式做到比特币链上可以自由发行代币。可是,比特币无法管理账户模型,且 BRC-20 的内容是放在 Segwit 的 Taproot 脚本中,比特币无法识别里面的数字并计算。这就像银行系统只认钞票的面额,不会去管你在上面写了什么字。 好在,不像中心化的银行,所有的比特币交易都是公开的,我们能查到所有的「钞票」上写了什么字。只要我们按照一定的规则(序数理论)去做账本,在链下计算加加减减就行。所以 BRC-20 目前就采取在链下构建一个索引服务器,来实现 BRC20 的代币的各种账本计算。但这种方式,显然会存在中心化的风险——这个维护账本的服务并没有 POW 或者 POS 的公平博弈机制来保证不做恶。所以这也很好解释,为什么 BRC-20 在一些比特币核心开发者极客的眼里——这就是画蛇添足和技术倒退。
所以后面又发展了各种新的铭文协议,来解决 BRC-20 的缺点。比如 ARC-20 和 Runes 采用了一种类似的方法来让比特币计算余额,即直接让代币的数量等于 UTXO 中比特币的数量(单位:聪)——1 token = 1 sat,而不是另外计数。这相当于,你在最小面额的钞票上面打了「特殊记号」,来代表另外一种货币。其实也就是币圈上古历史出现过的「染色币」。 这样做的好处是,在追踪交易、计算余额等方面,不需要任何的链下系统。只是需要一个索引服务器来识别这个「特殊记号」,降低了索引服务器的成本。但是这也引入了一个新问题,比特币网络为了减少垃圾交易,有一个最小交易输出限制(546 聪),导致 ARC-20 这样的铭文代币无法拆分出更细颗粒度的交易,导致流动性类似 NFT,不是真正的同质化代币。但是要引入拆分交易的计算,兜兜转转,又不得不进行中心化链下索引交易。在这个问题上,ARC-20 卡了很久,几个月都没有拆分的方案。目前看起来项目方寄希望于启发于 BitVM 的 AVM 来实现质押拆分计算,开发难度不小。
CKB 如何实现无跨链桥的 L2?
从技术来讲,不少 Meme 型铭文资产发行方案本身给比特币技术进步的推动有限。铭文创造了许多新的资产,但是应用也止步在了发行资产。 但是其财富效应和 FOMO 让人们看到了 BTC 生态的想象力。在一次次链上玩家的实战需求中,比特币网络和 UTXO 的种种限制,更刺激了人们对于比特币扩容和更复杂生态应用的需求。
从扩容的角度,闪电网络已经是一个足够棒的 L2,闪电通道通过博弈(基于惩罚的可撤销承诺交易)实现去信任且运行多年。但闪电网络的状态通道架构也基本局限在了支付,无法实现更多复杂的意图。 前面提到,实现一个相对安全优雅的 L2,走与 BTC 同构的 UTXO 模型,并采用 eUTXO 概念进行扩展,或许是一个出路。公链 Ergo 和 Cardano 均已在 eUTXO 模型上有所建树,都实现了智能合约功能。不过率先想到去实现 L2 解决方案的是 CKB。
CKB 的答案是提出 RGB 的扩展协议:RGB++,其实与其说是扩展,不如说的「大魔改」。CKB 的拓展继承了 RGB 协议的核心,但是直接采用不同的虚拟机和验证方案。RGB 协议作为一个开源智能合约系统协议,其设计目的是在 UTXO 区块链(如比特币、Liquid)上运行可扩展、稳健和私密的智能合约。目前 v0.11 尚未发布,其虚拟机 AluVM 距离完全落地还有一定的距离(有一说是这一轮牛市结束了都不一定能做出来)。 其技术重点「同构绑定」,是将比特币 UTXO 映射到 Nervos CKB 的 Cell——一种魔改版 UTXO,可以结合实现智能合约能力。对于验证方案,所有的 RGB++ 交易都会在 BTC 和 CKB 链上同步各出现一笔交易。原本的链下客户端验证被改成了 CKB 的链上公开验证,这对于用户来说友好了很多,不需要使用独立的客户端,不需要自行保存原始交易数据。 粗略地理解,即在比特币一层发型的 RGB ++资产,可以在 ckb 二层使用智能合约实现各种复杂意图。CKB 没有使用任何跨链桥,而是使用了原生的客户端验证方案。
某种意义上,这是一种相对前沿的想法——去做意图(Intent)跨链扩容,而非传统的资产跨链。
L2 们总是在想办法使用各种方式将 BTC 在 L2 锁定,但实现扩容和复杂应用,也许只需要在 L2 做面向意图的应用就行呢?
有需要买矿机的小伙伴可以踊跃联系小编哦~李17779130177【微信同号】
虽然 RGB++ 目前还只是构想,实践尚未深入,但是这个方案相信会给 BTC L2 的正统性探索提供了新的道路。未来可期。

销售ip加密盒子翻墙连接各大矿池17779130177
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门版块
快速回复 返回顶部 返回列表