复制成功

分享至

主页 > 数字货币 >

「复活」被中本聪删除的操作码?一文读懂OP_CAT软分叉

2024.01.23

原文作者:Jaleel,BlockBeats

比特币代码库中,一个曾经被中本聪删除被历史尘封已久的操作码「OP_CAT」或将「复活」。

围绕着 OP_CAT 操作码,比特币 NFT 项目 Taproot Wizards 推出了新系列 NFT Quantum Cats 引起热社区议。尽管 OP_CAT 这一称呼并非指向我们熟悉的「猫」,但 Taproot Wizard 却用了猫的形象发售了一款名为 Quantum Cats 的新 NFT,利用模因文化,帮助 OP_CAT 造势。相关阅读:《比特币「量子猫」:没有智能合约,铭文如何实现动态变化?》

OP_CAT,这个一度被中本聪从比特币脚本语言中移除的操作码,如今被重新拿到了台面上讨论,一些比特币开发者想要「复活」这个操作码,并通过 13 行代码的软分叉,为比特币实现智能合约做出铺垫。在比特币开发者的推动和以猫的模因形象造势下,关于 OP_CAT 的热度和讨论达到了新的高度。

「复活」被中本聪删除的操作码?一文读懂OP_CAT软分叉

「复活」被中本聪删除的操作码

操作码(Opcodes),亦称为指令或函数,是构成比特币脚本语言的基本组成元素。历史上,由于对客户端实现可能存在的漏洞的担忧,比特币早期版本中的某些操作码被移除,OP_CAT 操作码就是其中之一。

OP_CAT 最初是比特币官方命令集的一部分,允许进行字符串的连接操作,将两个元素拼接成一个。但因为在 OP_LSHIFT 等操作码中发现的严重漏洞可能导致任何比特币节点崩溃,同时担心 OP_CAT 操作码可能导致堆栈元素指数级增长,从而可能导致内存使用量与脚本大小呈指数关系增长。

因此中本聪出于谨慎,在 2010 年 8 月 15 日将 OP_CAT 被移除。这些被移除的操作码通常被称为「禁用」,但这种说法并不准确,因为它们从协议中被彻底删除,使得任何使用比特币的人都无法使用这些操作码。

2023 年 10 月,Bitcoin Core 开发者 Ethan Heilman 和 Botanix Labs 首席软件工程师 Armin Sabouri 联合发布了一份比特币改进提案(BIP)草案,名为「OP_CAT」,让这个讨论到了一个新的高度。

这份草案,仅包含简洁的 13 行代码,却携带了明确直观的功能性质,定义了一个新的 tapscript 操作码,允许在堆栈上串联两个值。此代码实现的灵感明显来自原始被删除的 OP_CAT。

「复活」被中本聪删除的操作码?一文读懂OP_CAT软分叉

「复活」的条件已经满足

至于为什么一个被中本聪删除的操作码,如今却有开发者希望能恢复,这份 BIP 草案中的动机部分做出了一些详细解释:这主要是基于对内存使用的考量,OP_CAT 使得脚本构造的内存使用量可能与脚本本身的大小呈指数级增长。具体来说,一个简单的脚本,仅通过将一个 1 字节的值推入堆栈,接着利用 OP_DUP 操作码进行复制,再通过 OP_CAT 操作码进行 40 次串联,便可能导致堆栈值膨胀至超过 1 TB 的庞大规模。

尽管如此,随着时间的推进和技术的发展,这一问题已不再是障碍。在 tapscript 的架构之下,一个明确的规则被制定,即最大堆栈元素的大小被严格限制在 520 字节以内。这一改变有效地解决了 OP_CAT 可能引发的内存使用问题,为其「复活」和整合提供了可能性。

由此可见,OP_CAT 再次被拿出来讨论并考虑恢复使用,主要是因为它在构建更复杂和功能强大的脚本方面有潜在的价值。此外,一些原因和变化已经满足「复活」的条件,其中包括:

1. 高级智能合约和协议的需求:随着比特币生态系统的发展,对更高级和复杂的智能合约和协议的需求增加了。OP_CAT 通过允许在堆栈上组合对象,增加了 tapscript 的表达力和功能。例如,它可以用于构建和评估默克尔树和其他哈希数据结构,支持树签名、后量子 Lamport 签名、非抵赖合约、保险库等功能。

2. 其他链上的成功案例:一些比特币分叉,如比特币现金(Bitcoin Cash)和侧链 Liquid,已经重新启用了 OP_CAT,并用它实现了代币的创建和管理、支付通道以及在区块链上嵌入和检索数据的方法。这表明在适当的环境和限制下,OP_CAT 可以安全有效地使用。

3. 量子安全性的探索:有研究提出,如果能够使用 OP_CAT 之类的操作,结合 Lamport 签名等技术,可以构建量子安全的比特币交易和协议。这种探索对于提高比特币系统的未来安全性具有潜在价值。

4. 社区和技术发展:比特币社区和技术的持续发展促使人们重新考虑和评估以前的决定。随着对比特币协议更深入的了解和新技术的出现,之前被认为有问题或不适用的功能可能会在新的上下文中找到安全和有用的应用场景。

软分叉,谈何容易

免责声明:数字资产交易涉及重大风险,本资料不应作为投资决策依据,亦不应被解释为从事投资交易的建议。请确保充分了解所涉及的风险并谨慎投资。OKEx学院仅提供信息参考,不构成任何投资建议,用户一切投资行为与本站无关。

加⼊OKEx全球社群

和全球数字资产投资者交流讨论

扫码加入OKEx社群

相关推荐

industry-frontier