正反观点激烈交锋:铭文是对比特币网络的漏洞攻击还是安全创新
编译 | GaryMa 吴说区块链
反对观点:铭文是一种漏洞,损害比特币网络去中心化
作者:比特币开发者、Nostr Damus 创始人 William Casarin
原文:
https://habla.news/jb55/1701876273423
我将作为辩论小组的一员,反驳有关铭文对比特币有益的观点。我决定研究一下铭文的技术细节。我开始明白luke的观点,即它是如何利用比特币反数据垃圾机制的漏洞的。
在比特币中存储数据的“标准”方式
向比特币添加“数据”的标准方式是调用 OP_RETURN 操作码。比特币开发人员注意到人们通过大型多重签名交易将数据(如比特币白皮书)存储在 UTXO 集合中。问题在于,这个集合是不可修剪的,并且可能会随着时间的推移而增长。另一方面,OP_RETURN 输出是可证明可修剪的,不会增加 UTXO 膨胀。
以下是 2014 年 3 月 0.9.0 版本发布说明的摘录,其中讨论了这个问题:
关于 OP_RETURN:社区中存在一些混淆和误解,涉及到 0.9 版本和区块链中的 OP_RETURN 功能以及数据。这个改变并不是对在区块链中存储数据的认可。OP_RETURN 的改变创建了一个可证明可修剪的输出,以避免一些已经部署的存储任意数据(如图像)作为永远不能花费的交易输出的数据存储方案,使比特币的 UTXO 数据库膨胀。在区块链中存储任意数据仍然是一个不好的主意;在其他地方存储非货币数据的成本更低效率更高。
Bitcoin Core的许多工作都集中在确保系统在去中心化的情况下继续以预期目的运作。人们试图滥用它存储数据,Bitcoin Core一直不鼓励这样做,因为它不是为存储图像和数据而设计的,而是用于在网络空间中传输数字货币。
为了激励人们不要做愚蠢的事情,OP_RETURN 交易没有被设为非标准,因此它们可以被节点和矿工中继,但有一个附加条件:
● 它们只能推送 40 字节(后来增加到 80、83,我猜是为了支持更大的根默克尔哈希,因为这是 OP_RETURN 的唯一明智的用例)
● 比特币还添加了一个称为 -datacarriersize 的选项,它限制了从这些输出中中继或挖掘的总字节数。
为什么铭文在技术上是一种漏洞
铭文通过在 OP_IF 块内使用 OP_PUSH 将数据伪装为比特币脚本程序数据,绕过了 datacarriersize 限制。Ordinals不使用 OP_RETURN,并且不受 datacarriersize 限制的约束,因此节点运行者和矿工目前对于他们希望中继和包含在区块中的此数据的总大小具有有限的控制权。Luke 的 Bitcoin Knots有一些选项来对抗这种垃圾数据,所以希望不久的将来我们也能在Bitcoin Core中看到这一点。
铭文还利用了 segwit v1(见证折扣)和 v2/taproot(没有任意脚本大小限制)中的特性。这些特性中的每一个都有其引入的有趣且合理的理由。
见证折扣的目的是降低花费许多输出的成本,有助于减少 UTXO 集的大小。铭文利用这个折扣来存储伪装成比特币脚本的猴子jpeg。请记住,比特币不是用来存储数据的,所以任何时候比特币开发者都无意让它变得便宜和容易中继数据,所以这应该被视为一个漏洞。希望它得到修复,或者至少为节点运行者提供工具来对抗这种垃圾数据。
未来将何去何从
这个故事的有趣之处在于人们似乎对存储在比特币区块链上的图像赋予了价值,并且愿意支付费用将其收入区块中,因此没有意识形态的矿工和不关心比特币的健康和去中心化的人们很高兴支付或收取费用然后继续前进。
数据不应该打折,人们应该为存储数据支付全价。他们应该只使用 OP_RETURN 和哈希,比如 opentimestamps 或任何其他在比特币中存储数据的合理协议。
经过这次分析,我认为这是一种相当糟糕的垃圾数据漏洞,比特币开发人员应该着手于解决方案。像 Luke 这样实际关心网络健康和去中心化的意识形态开发人员正在这样做,我很高兴看到这一点。
正面观点:铭文是一种创新,并让比特币网络更安全
作者:jolestar
原文:
https://twitter.com/jolestar/status/1732711942563959185?s=20
Bitcoin 开发者 LukeDashjr 要禁止铭文(Inscription)的推文引起激烈讨论,他的主要理由是这是个 Bug,会影响 Bitcoin 网络的安全。
Bug 还是 Feature 之争影响深远,如果它是个 Bug,那修复它的版本就是延续了当前版本的正统版本,但如果它是个 Feature,修复它就是要删除这个 Feature,那修复版本就是一个分叉版本,所以值得深入讨论一下。
如何度量区块链网络的安全,一直是一个有争议的话题。一个经常被人拿来用的度量的维度是出块节点的数量(miner 或者 validator)。这点上 PoW 系统不占优势,经常被 PoS 推崇者嘲讽。还记得当初 EOS 用的 21 个节点嘲笑 BTC 不够去中心化,不够安全的文章么?
而 Bitcoin 开发者们经常用的一个度量方法是全节点的数量。为了让个人 PC 都能运行全节点,所以要严格限制区块大小,以及 UTXO 集,以降低全节点的成本。但多少个全节点算够呢?铭文在多大程度上会影响 Bitcoin 的全节点数量呢?反倒从当前的统计图上能看出,大约因为铭文的热度,很多人需要和 Bitcoin RPC 交互,增加了 Bitcoin 全节点的数量。
从全节点这个角度衡量,也不能说铭文影响了 Bitcoin 网络的安全。
区块链是一个公开账本,关心账本是否正确的人越多,这个账本越安全。而用户为什么关心这个账本?因为这个账本上记载了和他利益相关的东西,无论它是 BTC 也好,还是其他什么东西也好,只要他觉得有价值,他就会关心这个账本。
而用户关心账本的方式也并不是只有自己运行全节点一个途径。用户只要直接和 Bitcoin 网络发生连接,就有这个效果。比如用户安装链上钱包,查看链上交易,带来的安全保证就高于用户把 Bitcoin 托管在交易所或者托管钱包里。
而我们能看到的现象是,这波铭文热明显的带来了用户和 Bitcoin 网络更多的直接连接(浏览器钱包),带来了 DApp 应用生态的雏形(网站上挂铭文通过 psbt 链上交易),有更多用户关心这个账本上记录了什么东西了(区块链浏览器的涌现和访问量)。所以说,即便是从安全的角度,铭文对 Bitcoin 网络的安全是有提升的。
铭文乍一看没有太多技术含量,只是简单粗暴的往 Bitcoin 网络上写数据,还依赖一个中心化的 Indexer。
但我们可以把它理解成一种把 Bitcoin 当数据可用层(DA)的 Sovereign Rollup,只是在这个模式里,由客户端直接写 DA,可以叫做 DA first 模式,而 Indexer 相当于模块化区块链里的 Bitcoin 执行层,所以也可以认为 Indexer 实际上就是 Bitcoin 的 L2。
这个模式的缺点很明显,没有排序器(Sequencer)批量打包交易,用户体验很差,交易费也很贵,没有欺诈证明,安全性也受质疑。如果有技术团队设计了这样一个方案,肯定没有投资人愿意投资,但市场的魅力就在于,用户把它给玩出来了。前一段时间 BRC20 的余额在不同交易所的数据不一致,用户通过发推来社会共识,最终也实现了一致性,正好说明它是可行的。
但这个模式的优点是它是协议先行,先设计公开的协议和数据格式,链上只保存协议必须的数据,执行和校验在链下。而任何一个团队都可以实现一个 Indexer 接入这个 L2 的执行层网络,整个 DA 的数据是共享的。而 Ethereum 的 L2 方案里,每个 L2 相当于在 L1 的 DA 上圈了一块地,各自抢占空间,数据并没有共享。
这会完全呈现出不同的竞争态势。因为任何 L1 的空间总是有限的,如果 L2 没能开拓出新的,让用户信任的空间,那实际上并没有实现扩容。
所以说铭文是对 Bitcoin 作为 DA 的价值发现,同时配合 Indexer 的这种玩法展示了一种新的 L2 的构建途径,对 Bitcoin 生态有重大意义,它是个 Feature 不是 Bug。
可能的解决方案
当然,Bitcoin 开发者们担心的 UTXO 集膨胀的问题也是存在的。但它并不是无解的,因为铭文协议是一种链下共识的协议,只要 Indexer 以及社区达成共识,可以有非常多的解决方案,我这里拍脑袋写几个。
1. 用 Hash 替代铭文的内容。现在铭文包含了各种媒体文件,json 等,体积比较大。但实际上,只要 indexer 层成熟了,完全可以实现只写 Hash 到 L1,原始内容保存在 Indexer 或者用户的钱包里。
2. 设计一套协议,支持铭文在链上和链下之间的迁移。铭文迁移到链下的时候,相当于在 L1 销毁,UTXO 也就消费掉了。如果要再次回到链上,用户需要提供 Off-chain 转移的签名聚合,这样 Indexer 之间就可以校验。
还有一种方式是采用类似 Taproot 那样的稀疏默克尔树的校验方式,来实现链上链下的迁移。这个我原来设计过一个 Ethereum NFT 的迁移方案,但可惜 Ethereum 上的 NFT 是通过 Interface 定义的,不是数据对象模式,很难发挥出这种优势,而铭文的这种模式非常适合。感兴趣的朋友也可以看下这个链接:
https://github.com/rooch-network/rollup-nft
更多的方案就不写了。我想说的是,技术是一个生态系统,它需要随着用户的使用和反馈来生长。很多创新都不是开发者们在电脑前规划设计出来的,而是随机的尝试,然后和用户的反馈碰撞涌现出来的。
引用我在《语言是一个去中心化系统》中的一句话:接受一个系统是去中心化的,那就得接受它会演化出你不喜欢的东西,也得接受它的演化过程中的各种失败的尝试。
未来
现在这些协议发的资产大都属于 meme 币范畴,meme 币能否从有限次博弈变成一个长期的博弈的系统,主要看几方博弈:
1. 早期获利的参与者 holder 是否愿意持续投资生态,给资产提供应用场景,类似 Bitcoin 早期 holder 们投资各种基础设施。如果都套现离场,那就只是一场 meme 游戏。
2. 基础设施提供者能否提供这样的空间和场景。这一方面取决于 Bitcoin L2 等基础设施提供的能力,另外一方面也受包括 Bitcoin 核心开发者在内的 Bitcoin 社区态度的影响。
由于公众号推送逻辑调整,老读者请给吴说公众号加上星标,否则可能无法收到
加星标方式:如何给公众号设置星标
根据央行等部门发布“关于进一步防范和处置虚拟货币交易炒作风险的通知”,本文内容仅用于信息分享,不对任何经营与投资行为进行推广与背书,请读者严格遵守所在地区法律法规,不参与任何非法金融行为。不为任何虚拟货币、数字藏品相关的发行、交易与融资等提供交易入口、指引、发行渠道引导等。吴说内容未经许可,禁止进行转载、复制等,违者将追究法律责任。
就在2023.3.7日,由10KUniverse提出的以太坊改进提议EIP-6147已移至最终版本(Final)!该标准是ERC-721的扩展,分离了NFT和SBT的持有权和转让权,并定义了一个新的可设置到期时间的"守卫者"角色Guard,可使得NFT防...
Web3技术研究 | Solidity闪电贷实现方式与Move以及Rust闪电贷实现方式有何不同?本文作者:Beosin安全研究专家Sivan闪电贷是一种无抵押借款的服务,由于其拥有无需抵押便能借出资金的特性,使得资金利用率大大提高。在常见的以太坊闪电贷中,是通过以太坊交易机制来保证可以进行无抵押借出资金,...
引领Paradigm“意图交易”新赛道 , 获众多顶级VC青睐的dappOS有何亮点?2022年11月,dappOS入选旨在塑造Web3行业未来的BinanceLabs第五季孵化计划,从900多个项目中突出重围。随后获得来自BinanceLabs的种子前融资。上周,dappOS再宣布重磅消息,以5000万美元的估值完成种子轮融资,IDGCa...
融资1000万美元的NFT流动性市场,能否成为NFTfi的基础设施?作者:Chloe苏富比今年2月原先要拍卖一组被分割成104份的CryptoPunksNFT,估价高达2-3千万美元,但后来买家突然反悔导致这场交易失败。藏家就把这组NFT作为抵押品,在MetaStreet上成功贷款830万美元,刷新了NFT藏品抵...
Buidler DAO:浅谈为什么我觉得 Dark Forest 是 top 0 级别的全链上游戏点击蓝字/关注我们BuidlerDAO:Web3人才与项目孵化器https://link3.to/buidlerdao商务合作WeChat:MiaoFrank1229作者:@byeddy编辑:@Coucou注:文章仅代表个人观点,不构成任何投资意见。在一年半前点开了zkga.me这...
上市矿企 Bitfarms 2022 年 5 月的生产和采矿运营更新:算力为 3.4 EH/s,5 月共开采 431BTC
上市矿企Bitfarms发布2022年5月的生产和采矿运营更新,截止5月31日算力为3.4EH/s;5月共开采431BTC,同比增...
金色趋势丨BTC距离下一轮主升行情还有多久?
图中可以看到,红色线距离通道下轨仍有一段距离,通过历史走势能看到,2014年和2018年熊市均是收线收至下轨...
5 月份 BTC ETP 强劲复苏,全球净流入量达到 9,765 BTC
据arcaneresearch报告,5月份BTCETP强劲复苏,全球净流入量达到9,765BTC,这导致全球ETP持有量在5月底增长...
金色趋势丨BTC强势反弹 空头趋势已经终结?
BTC上周反弹最高涨至周线120均线附近遇阻回落,形成倒锤子线,根据长腿再探原则,本周开盘再次反弹,后面观...