Correcting Vitalik’s inaccurate comments on DA issues and censorship-resistant withdrawals

All articles10个月前更新 wyatt
68 0 0
Plasma的Safety提款对DA系统没有依赖,抗审查提款也不是非要对DA系统有依赖。

作者:Faust,极客web3

2024年1月16日,在一条由以太坊Layer2项目Taiko创始人DanielWang发起,与AAwalletSoul Wallet创始人曾嘉俊互动的推文下,Vitalik说:“Rollup的关键在于无条件的Safety保障:即使你被所有人针对,你依然能将资产取走。如果DA依赖于外部系统(以太坊之外),就无法做到这一点。"

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

由于Vitalik在这条推文的后半段谈到了自己对Validium的看法(Validium是指不用以太坊实现DA数据发布的ZK二层),所以得到了很多人的关注(此前坊间盛传,以太坊基金会认为Layer2=Rollup)。

(需要强调:EthereumCommunity谈论的DA概念,指的是你能否获取到Layer2新产生的数据,不是说你能否检索到很久前的历史数据。如果不在以太坊链上发布新数据,Layer2节点可能无法顺利解析出最新的L2区块)

但“以太坊Layer2定义之争”及“DA War”早已被无数人听闻,本文不打算对此类话题作出任何探讨,旨在将更多精力聚焦在Vitalik发言的前半段,也就是本文开头涉及的那番话。

Vitalik在此表明,Rollup能够实现去信任化的抗审查提款,即便所有的Layer2节点不配合你,你也能够把自己的资产撤离Layer2;而且,他指出,只有rollup能实现这种“无条件的Safety提款”,而依赖于其他DA数据发布方式的Layer2,都不能这么做。

但实际上,Vitalik的这番话并不严谨。

首先,只有Layer1桥接到Layer2的资产才可以跨回到ETH链上,单纯的Layer2原生资产无法跨到Layer1(除非Layer2原生资产在Layer1上部署了桥接资产contract).

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

如果像Vitalik说的那样,“所有人都针对你”,你最多可以把L1-L2桥接资产提走,但无法把自己的“Layer2原生Token”提走,此时无论是走普通的withdraw,还是走forced withdraw,或是走Escape Hatch,都没用。

其次,“无需条件的安全提款”不是非要依赖于DA系统。Rollup之前的早期Layer2方案、在以太坊链下实现DA数据发布的Plasma,DA系统故障时(就是指数据扣留发生,除了排序器/委员会之外,其他人无法收到新的交易数据/状态转换信息),一样允许用户通过历史数据来提交资产证明,安全逃离Layer2。

换言之,Plasma的安全提款对DA系统没有依赖,抗审查提款也不是非要对DA系统有依赖(但要保证历史数据可获取);况且,这番话是以太坊基金会的Dankrad(Danksharding提出者)亲口说的,同时也是放之四海皆公理的。

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

参考极客Web3过往文章:《数据扣留与欺诈证明:Plasma不支持智能contract的原因》

其次,抛开Celestia及Blobstream不说,数据扣留/DA故障问题,就算不用ETH作为DA层,也可以解决。单说Arbitrum团队与Redstone团队正在实现的“数据可用性挑战”,允许排序器只在链上发布一个DA Commitment(其实就是datahash),声明已经在链下发布数据。如果有人无法在链下获取到新产生的数据,则可以针对链上的DA Commitment发起挑战,要求排序器将数据披露到链上。

这种机制设计很简洁,而且不需要依赖于Celestia、Avail或EigenDA等第三方DA,只需要Layer2项目方自己设置链下DAC节点即可,堪称Celestia杀手。

下文中,作者打算对Vitalik口中的“无需条件的安全提款”和他所没有提及的“数据可用性挑战”进行解读,尝试告诉大家:为何Celestia和Avail、EigenDA等第三方DA项目,不是DA offchain且追求安全性的Layer2的必选项?

此外,我们之前曾在阐述“比特币Layer2风险评估指标”的文章中,谈到抗审查提款比DA系统更基础、更关键,今天这篇文章也将就这个观点做出进一步解释。

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

逃生舱:Viatlik口中的“无需条件的安全提款”

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

其实,Vitalik的这番话不难推敲,是在谈论ZK Rollup的逃生舱。逃生舱又名Escape Hatch,是一种在Layer1上直接触发的提款模式。该模式一旦被触发,Rollup合约将进入冻结状态,拒收Sequencer提交的新数据,并允许任何人出示Merkle Proof,证明自己在Layer2上的资产余额,将属于自己的资产从Layer2官方桥存款地址中转走。

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

更进一步说,逃生舱模式是在用户交易遭到Layer2排序器长时间的拒绝后,可以由当事人在Layer1上手动触发的“去信任化提款机制”。

不过,在激活逃生舱模式前,被排序器拒绝的用户,要先调用Layer1上Rollup合约中的强制提款函数,发起强制提款请求,并抛出一个事件让Layer2节点知晓:有人发起了强制提款请求。

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

(由于Layer2节点都会运行以太坊geth客户端,会接收到以太坊区块,所以能够监听到强制提款事件的触发)

如果强制提款请求被长时间无视,用户就可以主动触发逃生舱模式(路印协议默认这个等待期为15天,StarkEx方案是7天)。然后,其操作流程就如同本文开篇所谈,用户提交对应自己资产的Merkle Proof,证明自己在Layer2的资产状况,然后从Rollup相关合约中把资产提走。

但要构造Merkle Proof,需要先获知完整的L2状态,要找一个L2全节点索要数据。如果Vitalik所说的那种极端情况发生,没有Layer2节点配合你,你可以自己启动一个Layer2全节点,通过以太坊网络,获取L2排序器发布到以太坊上的历史数据,从Layer2创世区块开始一个个同步,直到算出最后的状态,构造出Merkle Proof,就可以通过逃生舱来安全提款。

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

显然,这时的“抗审查性”,与以太坊/Layer1本身等价。只要有以太坊全节点提供很久前的历史数据给你就行,接近于去信任化。

但EIP-4844后,以太坊全节点会自动丢掉部分历史数据,使得Layer2超18天的历史数据不再被ETH节点全网备份,届时逃生舱提款的抗审查性,将不再像今天这样接近于Trustless。

4844后,我们需要信任,数量较为有限的、存储了全部历史数据的以太坊节点,愿意提供数据给你(Layer2原生的节点往往很少,暂且不考虑进来)。届时,Layer1历史数据可检索/Layer2逃生舱提款的信任假设,将从今天的Trustless或0,变为1/N,即假设N个节点中能有1个为你提供数据。

EthStorage团队似乎致力于将这个N扩大,激励更多节点存储很久前的历史数据。如果1/N的分母足够大,分数还是接近于0,接近于没有引入信任假设。这或许可以适当解决4844后的历史数据检索问题。

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

逃生舱与DA的关系——Validium的勒索攻击

在这里我们再度概括下:逃生舱就是让你通过Merkle Proof,证明自己的Layer2资产状况,在Layer1上去信任的提款。

而Vitalik之所以提到,提款涉及的资产安全需要有DA作为前提,主要是指Validium方案可以因“数据扣留攻击”而无法提款。(只发布stateroot,不发布对应的交易数据)。

具体原理是:排序器可能扣住交易数据不放,只向以太坊链上发布一个Merkle Root(Stateroot),然后通过有效性证明,设法让新的Stateroot通过验证,成为当前的合法Stateroot。

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

这时候,大家不知道合法Stateroot对应的完整状态,无法构造出对应的Merkle Proof来发动逃生舱提款。除非排序器愿意释放数据给你,你才能提款,这被Arbitrum的某位技术负责人形象的称为“赎金问题”(我个人更喜欢称之为勒索攻击)。

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

但DA在链下的Validium,之所以容易出现“勒索攻击”,是因为他自己的机制设计不够完善,如果引入和提款行为相关的挑战机制,或者引入数据可用性挑战,理论上可以解决勒索攻击问题。

BXiaobai Navigationy the way,前文曾提到,允许用户通过很久前的历史数据来提款的Plasma,就不会出现Validium这样的“勒索攻击”,而Plasma也是DA在链下的(链下DA+链上验证欺诈证明)。

References:Data Withholding and Fraud Proofs: Why Plasma Doesn’t Support Smart Contracts

所以说,抗审查提款/逃生舱并不是非要依赖于DA,一切取决于提款流程的机制设计。Vitalik之所以认为,抗审查提款与DA绑定,是因为他是先入为主的从Validium、智能合约型Rollup等既有方案出发,脑海中已经存在了一种思维定式。

但这不代表天底下所有DA offchain的Layer2都面临和Validium一样的问题,不代表智能合约型Rollup就是一切的终点,创新随时都可能发生(比如后文提到的数据可用性挑战)。

反过来,如果你的Layer2方案从一开始就不考虑有逃生舱、抗审查提款这类设计,你的Layer2就肯定不够去信任/安全。换言之,好的DA和证明系统,是实现抗审查提款的充分条件,但不是必要条件。

所以我们此前的文章中,提到Layer2木桶效应中,抗审查提款是比DA和证明系统更基础的短板,是有理由的。

References:《用木桶理论拆解比特币/以太坊Layer2安全模型与风险指标》

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

Celestia杀手:Arbitrum和Redstone的数据可用性挑战

说完了逃生舱与DA的关系,我们再来回看DA本身:Layer2也不是非要把DA数据发布到以太坊上,才能避免排序器搞“数据扣留”。

Redstone和Arbitrum、Metis等都在研发“数据可用性挑战”机制,允许排序器只在链上发布DA Commitment(datahash)+Stateroot,声明已经在链下发布状态转换参数(交易数据)。如果有人无法在链下获取到新产生的数据,则可以针对链上的DA Commitment发起挑战,要求排序器将数据披露到链上。

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

如果排序器被挑战后,没有及时在ETH链上发布数据,则它之前发布的datahash/commitment会被视为无效,关联在一起的stateroot也会无效。显然,这直接解决了数据扣留问题(只发布stateroot,不发布对应的交易数据)。

显而易见,这比起Validium和Optimium这类DA offchain的Layer2,多出了一个“数据可用性挑战”。但这么一个简单的设计,就足以对Celestia和Avail、EigenDA等造成有力竞争。自己设置一个DAC,引入数据可用性挑战,则不需要再依赖于Celestia。

但相对的,数据可用性挑战也有需要解决的经济问题。ZkSync创始人在和Arbitrum技术负责人battle时指出,数据可用性挑战在理论上容易遭到Dos攻击。比如,排序器快速在链上发布数千个DA commitment,然后扣住对应的完整数据不发布。它可以通过这种方式耗尽所有挑战者的资金,然后发布一个无效区块,steal取用户资产。

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

当然,这种假设过于极端,本质是一个攻守双方的博弈论问题,并且实际上,排序器更容易被恶意挑战者dos攻击,遭到连续挑战后退化为Rollup。围绕着数据可用性挑战的攻守双方之间的博弈情形,其实非常有趣,对应的机制设计也会充分考验Arbitrum和Redstone以及Metis项目方的智慧(这个话题可以单独成文了)。

纠正 Vitalik 关于 DA 问题与抗审查提款的不严谨言论

但无论如何,数据可用性挑战都将为Layer2的DA方案设计带来更多的创新,这种方案也将在比特币Layer2生态画上浓墨重彩的一笔。

The article comes from the Internet:Correcting Vitalik’s inaccurate comments on DA issues and censorship-resistant withdrawals

Related recommendations: Why do you say this time?Binance Could IEO earnings exceed everyone’s expectations?

The market atmosphere is different, so the circulating market value after going online is higher than in previous periods. Written by: Riyue Xiaochu Many people may not realize that the returns from Binance’s Launchpool this time may be much higher than in previous periods. There are two main reasons: 1) The market atmosphere is different, so the circulating market value after going online is higher than in the past; 2) The mining time is different, and the previous pool project...

share to
© 版权声明

相关文章