更多
APP下载
合作
商城
签到

互动论坛 赚钱交流 BTC要不要恢复OP_CAT:OP_CAT能带来哪些新用例

[复制链接]
  • TA的每日心情
    开心
    2024-10-31 17:10
  • 签到天数: 203 天

    1237

    主题

    193

    伯币

    2万

    积分

    版主

    积分
    26364
    发表于 2024-5-17 00:10:43 | 显示全部楼层 | 阅读模式

    OP_CAT曾经是被中本聪从BTC脚本语言中删除的操作码,现在它又重新成为社区热议中心(注:OP_CAT是Bitcoin Asia大会期间比特币开发者们讨论最多的)。

    作为潜在的升级,它已获得最初的正式指定比特币改进提案(BIP)347。

    2024-05-17 00 09 36.png

    OP_CAT是一项旨在提升比特币智能合约功能(类似于以太坊)的举措。本文详解OP_CAT是什么、工作机制、有哪些用例、社区有哪些争议等。

    1、一些背景知识:OP_CAT是如何出现的

    OP_CAT 是比特币中的早期操作码。它最初是由比特币创始人中本聪创建的一种编程快捷方式。但由于担心高内存使用+潜在的安全漏洞,它于 2010 年被删除。

    2023 年 10 月,比特币研究人员 Ethan Heilman 和 Armin Sabouri 提出了比特币改进提案(BIP),建议将 OP_CAT 操作码重新引入比特币脚本语言。

    此操作码将允许开发人员在 Tapscript 中构建和评估 Merkle 树和其他哈希数据结构,Tapscript 是用于在 Taproot 升级中启用新交易类型的原生脚本语言。

    2、OP_CAT 理论上如何发挥作用?

    (i) 弹出值(Popping Values):首先从堆栈中删除顶部的两项(item)。

    (ii) 连接:然后将这两Item组合起来。如果x1和x2是item,x2是最后添加的item,OP_CAT将把它们连接起来形成x1x2。

    (iii) 推回:然后将新组合的item放回到堆栈的顶部。

    但是,如果堆栈上的item少于两个,或者组合item的大小超过 520 字节(这是比特币中脚本元素的限制),OP_CAT 将不起作用。如果通过软分叉启用,它将替换脚本中现有未使用的操作,使其处于活动状态,而无需对网络进行重大更改。

    3、为什么需要OP_CAT?它有什么用?

    简化数据处理:OP_CAT 允许合并 Tapscript 中的两个堆栈值。这简化了复杂数据结构的创建+增强了脚本功能。

    扩展比特币功能:OP_CAT 引入了比特币中不存在但在以太坊中至关重要的通用功能。这可以简化 L2、DEX + dApp 的开发,使比特币网络具有多功能性。

    多签脚本:OP_CAT 可以帮助减少多签脚本的大小,使它们更加高效且不那么繁琐。

    促进复杂的合约:OP_CAT 支持金库等高级合约,即使私钥被泄露也能保护资金。

    4、OP_CAT在比特币中作用争议:OP_CAT 完美吗?

    这个提案有点争议,因为它影响了比特币作为区块链未来如何发展或不发展的路径。

    一个阵营认为比特币应该保持原样,保留其交易 BTC 的核心功能,而另一些人则认为比特币还没有僵化,看到了增强所有新兴的可扩展性解决方案(如桥和L2 )蓬勃发展的空间。

    问题的核心是一个关键的决定:比特币是否应该扩展成一个更可编程的公链,或者仍然是一个 P2P 支付结算层。


    我就是我,不一样的烟火

    发表回复

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

    本版积分规则

    快速回复 返回顶部 返回列表