介绍

您可能听说过重新启用 OP_CAT 作为比特币脚本语言的潜在升级。根据您获取新闻的来源,OP_CAT 被称为“只有 10 行代码”、“实现契约实验的最佳方式”、“过于强大”、“危险并导致矿工集中化”或“必然导致有争议的软分叉”。我要指出的是,所有这些观点都是错误的。OP_CAT 非常有用,可以用作契约,而且(单独)并不是比特币的最佳下一步行动。不多也不少。

为了说明这一点,我将探讨几个(看似不相关的)主题,其中一些主题几个月前对我来说还是新事物。我将尝试以一种方式来安排这些主题,以便在一个地方提供必要的背景信息。

OP_CAT 的作用是什么

使用 CAT 进行自省

让我们来解决许多人第一次接触 OP_CAT 时都会遇到的一个迫切问题。将堆栈中的两个项目合并为一个(A B CAT -> AB)的几行代码怎么可能实现任何有趣的事情?Andrew Poelstra 在最近的采访中雄辩地解释了这一点,我发表了一个愚蠢而简短的解释:

比特币有点奇怪,所以它也可以拆分东西。然后 SHA256 让我们可以撤消哈希值。然后因为密码学只是数学,我们知道如何磨练,CAT 让我们可以从签名验证中提取哈希值。因此,我们可以检查签名内的任何哈希值……

— 里尔登🍯🦡 🦢| 拥抱分叉 (@reardencode) 2024 年 5 月 17 日

由于比特币脚本严格来说是一种验证语言,因此每个操作码都可以正向或反向使用。可以为脚本提供哈希值并要求提供原像,或者为脚本提供原像并要求使用 OP_SHA256 的哈希值。这一见解为我们提供了 OP_CAT 契约如何运作的前两个部分。

如果比特币脚本可以访问正在验证的交易的哈希值,则它可以要求支出堆栈提供哈希原像,以脚本要求的任何方式拆分,然后验证该原像的任何特定部分。这正是契约的本质——验证花费一些比特币的交易的一部分。

这很好,但是比特币没有像 OP_TXHASH 这样的操作码来让脚本访问交易的哈希值。在这里,我们利用 BIP340 Schnorr 签名验证方程来要求用户提供哈希值。如果用户提供一个值,如果脚本将字节 0x00 连接到该值的末尾,该值将是有效的交易哈希,如果脚本将字节 0x01 连接到该值,该值也将成为有效 BIP340 签名的一部分(其他某些参数是固定的)。

结合这些技术,OP_CAT 可以检查其支出交易中可以签名的任何部分,甚至可以以某些有限的方式回顾其父交易。通过一些精心的代码设计,人们可以构建 Purrfect Vaults、CatVM 等。

CAT 的其他用途

但我们不应该这样做。用 OP_CAT 构建这些东西会导致难以维护的可憎之物。相反,我们应该将 OP_CAT 用于它的优点,它有很多优点:它可以实现与 OP_CHECKSEPARATESIG 相同的功能,检查 Merkle 包含证明,将用于签名验证的数据与 OP_CHECKSIGFROMSTACK 结合起来,等等。

CAT 问题

现在我们知道了 CAT 的作用,那么问题是什么呢?为什么人们(包括我自己)说它是一头危险的野兽?使用上面描述的自省技术,CAT 可以实现两种特定的构造:算力托管和(据称)自动化做市商 (AMM)。直到最近,这两者都被认为是将中心化的 MEV 引入比特币的重大风险。

MEV、MEVil 和矿工中心化

MEV(矿工可提取价值)这个术语有点令人困惑。最简单的解释是,它包括交易费,当然我们希望这些费用支付给矿工,以帮助确保比特币在未来很长一段时间内的安全性。MEV 通常用于表示矿工可以从他们的区块中提取的额外价值,超出公共中继网络上可见的费用。这可能以带外支付的形式出现,矿工参与合同并以有利于自己的方式重新排序交易,甚至直接盗窃商品和服务,矿工挖出区块,重组并双花已确认的付款给商家。所有这些形式的 MEV 都可以被认为对网络参与者不利,因为矿工利用他们在网络中的地位为自己谋利,而牺牲了其他网络参与者的利益。然而,MEV 本身并不会通过推动矿工集中化而造成系统性问题,只会给特定受影响的参与者带来局部问题。

MEVil 这个词有时用来形容推动矿工中心化的 MEV —— 我更喜欢中心化 MEV 这个术语,并将在未来继续使用它。要将 MEV 改为中心化 MEV,需要做以下几件事:

  1. 提取难度必须足够大,以至于开源块模板构建器无法合理地提取它

  2. 可提取的总价值必须随着矿工的比特币哈希率而增长

  3. 可开采价值必须证明开采成本的合理性

如果满足所有这些要求,那么只有足够大的矿工才会有动力开始开采 MEV。一旦他们开始开采,他们将能够凭借额外开采的收入超越规模较小的同行的增长。开采 MEV 的成本越高(直到对任何矿工来说都不值得),它造成的集中压力就越大。

那么,避免 MEV 中心化(在某种意义上)很简单:确保比特币上存在的 MEV 机会要么很容易提取,以至于每个人都可以这样做,要么提取的成本高于其价值(要么是因为它们太小,要么是因为它们太昂贵)。

欲了解更多信息,请查看@TheBlueMatt 最近的帖子。

算力托管(née Drivechains)

很多年前(在闪电网络或方舟、超时树、roll-ups、BitVM 或 CatVM 等想法出现之前),侧链被认为是比特币的终极扩容解决方案。这个想法在概念上很简单:出于所有常见的去中心化原因,比特币区块必须保持有限大小,但我们可以将侧链附加到比特币,而侧链可以拥有更快的区块、更大的区块、更多的计算能力等等。然而在实践中,实现侧链并不那么容易。比特币的最终结算从根本上与工作量证明相关,工作量证明是重新排序交易的不可证伪的成本,侧链如何继承这一点?此外,比特币如何在侧链之间转移?回答这两个问题的最佳方案是驱动链(BIP 300 和 301)。我不会用驱动链的细节来烦你,但我只想说,这种侧链系统只有两种结果:要么它们相对未使用(因此无用),要么它们被广泛使用并成为比特币事实上的区块大小增加。这种事实上的区块大小增加是 MEV 集中化的一种形式,只有较大的矿工才能以经济有效的方式参与潜在的庞大而复杂的侧链区块所提供的额外收入机会。

可以使用 OP_CAT 构建的哈希率托管是 Drivechains 提案的一小部分。这是一个限制从侧链提款的系统,使用一个计数器,该计数器的值只能由矿工更改,从高值开始,并且必须达到零才能处理侧链提款。这据称是一种从侧链转出的“无需信任”的转账,但实际上创建了一个矿工联盟,可以控制侧链中持有的所有比特币。

自从 Drivechains 提案制定以来,任何可用于基于矿工控制计数器创建提款的提案都被称为“Drivechains”,这对我们来说是不利的。希望现在能清楚为什么这种不恰当的简称是无用的——Drivechains 要么毫无价值,要么很危险,但哈希率托管只是将某些交易结果的控制权转移给隐性矿工联盟的一种方式。

代币和 AMM

代币

出于我永远无法完全明白的原因,人类喜欢好的代币(或坏的代币,或者真的只是代币)。几乎从比特币诞生之初,就有关于如何将其他代币嵌入协议的讨论,从 Colored Coins 和 Counterparty,到最近的 Taproot Assets 和 Runes。所有这些协议都有一个共同点:它们需要一个比特币交易的外部索引,该索引要么了解外部数据,要么处理来自比特币交易序列的数据,以确定协议内代币的转换。本文的重点是,比特币锁定脚本完全不知道代币的存在,甚至验证交易的比特币节点也不知道代币的存在(即,即使比特币锁定脚本可以完全访问完整的比特币 UTXO 集,也无法发现任何这些代币的状态)。

自动化做市商(AMM)

在其他区块链系统上,通常使用被称为 AMM 的合约来(例如)通过以固定价格买卖来固定两种代币之间的比率。可以在 AMM 中编码的规则超出了本文的范围。可以说,AMM 为 MEV 创造了巨大的机会,并且由于需要私人交易关系来最大化 MEV 的回报,因此 MEV 也处于中心化状态。这经常被用作反对构建更具表现力的比特币脚本的论据——我们确实希望避免将比特币网络暴露在 MEV 中心化的变化中。但是,正如我上面所描述的,无论比特币脚本多么具有表现力,都根本没有实用的方法来评估比特币以外任何代币的状态。比特币脚本无法找到稀有的 Sat。他们找不到 Rune 余额。他们无法识别 Taproot 资产。

如果无法获取有关非比特币资产处置的任何信息,那么基于比特币脚本的 AMM 的整个概念就毫无意义了。代币位置可以通过预言机的签名来证明,但预言机证明并不能构成 AMM。它们可用于促进特定的手动交易,但不能用于持久的自动化系统。此外,这种基于预言机的系统可以在不改变比特币的情况下构建。

结论

希望您能看到,CAT 并不是那么可怕的野兽。它实际上根本不是什么野兽。它既没有无限的能力,也没有神奇的力量。它只是一个非常有用的小操作码。我们可能想要避免的一件事是激活 OP_CAT,而没有其他方式进行事务自省,例如 OP_TXHASH、OP_TX 或两者。即使使用 LNHANCE 启用它,也只是对 OP_CAT 本身的改进,因为它减少了实现许多 OP_CAT 自省协议所需的脚本的大小和复杂性。

我认为此时,“CAT 引入了无限的一切”已经变得毫无意义了。

它以一种糟糕的方式引入了有用的内省功能,没人会使用它。为了帮助人们不使用它,我们应该启用 CAT 以及 TXHASH 或类似功能。https://t.co/nvnxYn66Um https://t.co/1Ag5TwjuUw

— 里尔登🍯🦡 🦢| 拥抱分叉 (@reardencode) 2024 年 5 月 17 日

这是 Brandon Black 的客座文章。表达的观点完全是他们自己的观点,并不一定反映 BTC Inc 或 Bitcoin Magazine 的观点。

来源:比特币杂志

文章《OP_CAT 和无限虚无》首先出现在 Crypto Breaking News 上。