做最好的区块链网

波宝钱包下载安卓版|以太坊Dencun升级带来潜在机会

以太坊网络的升级Dencun测试网版本已于2024年1月17日上线了Goerli测试网,1月30日成功上线了Sepolia测试网。预计在2月7日的Holesky测试网升级后,即将是主网升级,已于3月13日确定。以太坊升级往往会引发行情波动,上一次升级是2023年4月12日的上海升级,POS相关项目受到市场追捧。本次Dencun升级涉及技术复杂,EIP-4844标志着以太坊在去中心化拓展上迈出重要一步。EIP-4484建立了更便宜的存储区域BLOB,并用新的交易类型BLOB-Carrying Transaction替代传统交易。BLOB存储可以节省成本,有效提升二层网络效率。升级还引发了安全隐患,但也带来了新的机会。通过完全去中心化的方式延长BLOB的可用时间,Ethstorage能有效补足Dencun升级上的安全短板。此外,Ethstorage还能解决NFT和DeFi等dApp存储需求大幅上涨的问题。

以太坊网络升级Dencun测试网版本于2024年1月17日上线了Goerli测试网,1月30日成功上线了Sepolia测试网,Dencun升级离我们越来越近。

再经历一次2月7日的Holesky测试网升级之后,就会是主网升级,目前坎昆升级主网线已经在3月13日正式确定。

以太坊升级几乎都会遇到一波主题行情,回顾以太坊的上一次还是2023年4月12日的上海升级,POS相关的项目都受到了市场的追捧。

如果按照以往的经验,本次Dencun升级染色体有提前布局的机会。

由于Decun升级背后涉及的技术内容比较晦涩,并不能像上海升级那样用“以太坊从PoW转向PoS”一言以蔽之,难以抓住布局的重点。

因此,本文将用通俗易懂的去解释Dencun升级的技术细节,为读者整理语言本次升级与数据可用性DA和Layer 2等相似之间的脉络。

01EIP 4484

EIP-4844是本次Decun升级中最重要的举措,标志着以太坊在以去中心化方式拓展的道路上迈出了切实而重要的一步。

通俗来讲,目前以太坊二层需要将二层发生的交易提交到以太坊主网的调用数据中,供节点价值二层网络出块的收益。

这样做带来的问题是,虽然交易数据已经被压缩了,但二层庞大的交易量再乘以以太坊主网增加了成本基数,对于二层节点和二层用户而言仍然是支出光是价格因素,就会让二层失去大量用户,流向侧链。

而EIP 4484建立了一个更为便宜的类型的存储区域BLOB(Binary Large Object,二进制大型对象),并用一种​​可以指向BLOB存储空间的名为“BLOB-Carrying Transaction”的新交易类型来替代升级之前需要存入calldata的交易数据,帮助以太坊生态二层实现节省Gas成本。

BLOB 存储便宜的原因

华丽便宜是要付出代价的,BLOB 数据比类似大小的普通以太坊 Calldata 成本更高的原因是,以太坊执行层(EL,EVM)实际上无法访问 BLOB 数据本身。

相反,EL 只能访问 BLOB 数据的引用,而 BLOB 本身的数据只能由以太坊的决策层(CL,迭代信标节点)下载和,存储起来的内存与计算量远小于普通以太坊调用数据。

而且 BLOB 还有一个特性,只能存储有限的周期时间(通常为约 18 天),并不会像以太坊账本那样无限膨胀。

BLOB 的存储量

与区块链永久的账户相反,BLOB 是暂时的存储,其可用时间为 4096 个纪元,即大约 18 天。

后期,大多数共识客户端将无法检索 BLOB 中的特定数据。它之前存在的证据将 KZG 承诺的形式保留在主网上,并永久存储在以太坊主网上。

为什么选择18天?这是在快速节省成本和效益之间的折衷方案。

首先要考虑此次升级最有利的受益对象 Optimistic Rollups(如:Arbitrum 和 Optimism,),因为根据 Optimistic Rollups 的设定,有 7 天的故障证明(Fruad Proof)的时间窗。

而 blob 中所存储的交易数据,正是 Optimistic Rollups 发起挑战的时候所需要的数据。

因此,Blob 选择的程度必须要保证 Optimistic Rollups 故障证明可以访问,为了简单起见,以太坊社区了 2 的 12次幂(4096 个纪元由 2^12 推导到来,一个纪元大约 6.4 分钟)。

BLOB 携带事务与 BLOB

理解这两者之间的关系,对于理解 BLOB 在数据可用性(DA)方面的作用至关重要。

此前是EIP-4484提议的整体,是一种新型交易,而黎明可以理解为一个针对第2层临时存储交易的位置。

两者可以理解为,此前中的大部分数据(layer2 交易数据)存储在即将进行的交易。而剩余的数据关系则BLOB 数据的承诺(Commitment) 福克斯存在主网的呼叫数据交易。也就是说,承诺是可以被EVM读取的。

可以将 Commitment 想象为将 BLOB 中的所有交易构建成一棵 Merkle 树,然后只有 Merkle 根的 Commitment 可以被契约访问。

如此做可以解决的实现:虽然EVM无法得知BLOB的具体内容,但EVM合约可以通过以太承诺进一步可以验证交易数据的真实性的目的。

02BLOB 与 Layer2 的关系

Rollup技术通过将数据上传到以太坊主网来实现数据可用性(DA),但并不是为了让L1的智能合约直接读取或验证这些上传的数据。

上传交易数据到L1的目的,为了让所有参与者都可以查看这些数据。

在Decun升级之前,如上文所述,Op-rollup将交易数据Calldata发布到以太坊。所以任何人都可以使用这些交易信息来恢复现状态,验证二层网络的正确性。

不难看出,Rollup 交易数据需要便宜+公开透明,Calldata 并不是为二层专门储备交易数据的好地方,而 BLOB-Carrying Transaction 才算是为 Rollup 临时定制的。

读到这里,可能大家心里都有疑问,这种交易数据看起来并不重要,它有什么用?

实际上,交易只有数据在少数情况下才会用到:

  • 对于 Optimistic Rollup 来说,基于信任假设,一定可能会出现不诚信问题,此时 Rollup 上传的交易记录才派上用场,用户可以利用这个数据发起交易挑战(防欺诈);
  • 对于ZK Rollup,零知识证明已经证明状态更新是正确的,上传数据只是为了让用户自己计算出完整状态,在二层节点无法正常运转时启用逃生舱(Escape Hatch,需要机制完整的L2状态树,最后会讲到)。

这意味着,交易数据被一致实际使用的场景非常有限。即使在Optimism汇总的交易挑战中也只需要当场提交证明交易数据“存在”的证据(状态),而不需要事先记下交易详情就存储在主网。

所以如果我们把交易数据放在 BLOB 元素中,虽然合约无法访问,但是主网合约可以存储这个 BLOB 的承诺。

将来如果挑战机制需要一笔笔交易,我们只需提供该笔交易的数据,只需能够对应上。这可以说服,将交易数据提供给挑战机制。

这样既利用了交易数据的公开透明性,也规避了将所有数据提前录入巨大的天然气成本。

通过仅记录承诺,完成交易数据可验证性的同时又极大优化了成本。这是 Rollup 技术上传交易数据的一个巧妙且高效的解决方案。

需要说明的是,在 Dencun 的实际操作中,并没有采用与 Celestia 类似的 Merkle 树的方式产生承诺,而是采用巧妙的 KZG(Kate-Zaverucha-Goldberg,糖果式承诺)模式。

相比 Merkle 树证明,生成过程 KZG Proof 的过程相对复杂,但其验证的成交量更小,验证步骤也更简单,但缺点是需要进行可信任设置(ceremony.ethereum.org 现在现在已经结束)且不具防量子计算攻击能力(Dencun使用了版本哈希的方法,如果需要可以更换其他验证方法)。

对于现在大热的DA项目Celestia,其采用的就是Merkle树变体,相比KZG,有一定程度要依赖节点的完整性,而却有利于降低节点之间计算资源的借贷要求,维持网络的去中心化特征。

03Dencun的机会

Eip4844为二层降本增效的同时,却也引发了安全隐患,这也带来了新的机会。

看来明白原因,我们需要了解一下前面提到的逃生舱机制或者强制提现机制。

在Layer 2节点失能时,该机制可以保证用户资金安全回到主网。激活该机制的前提是用户需要获得Layer 2完整的状态树。

按照正常情况,用户只要找一个Layer2全节点索要数据,生成merkle证明,再提交给主网的合约,以证明自己提款的适期性。

但不要忘记用户想要启动逃生舱机制退出L2不一定是因为L2节点作恶了,节点都作恶了,那大概率就不会从节点哪里获取到想要的数据。

这就是Vitalik常提到的数据扣留攻击。

EIP-4844,主网上记录了永久的Layer2记录,在没有Layer2节点可以提供完整的链下状态时,用户可以自己部署一个全节点。

这个全节点可以通过与以太坊主网获取Layer 2排序器在主网上发布的所有历史数据,用户就可以构造出所需的Merkle证明,将证明提交给主网上的合约,可以安全地完成L2资产锣。

而EIP-4844之后,第2层数据只存在以太坊全节点的BLOB中,18天之前的历史数据将被自动删除。

因此,上一段时间中通过同步主网获取整棵状态树的方法不再可行,想要获取第2层的完整状态树,只能通过第三方为爱的存储了以太坊BLOB全部数据(该本该本) 18天自动删除)的主网节点,或二层原创节点(很少)。

因此 4844 上线后,用户通过完全可信的方式获取 Layer 2 完整状态树将变得十分困难。

用户没有稳定到达获取 Layer 2 状态树,就无法在极端条件下进行强制提款操作。因此,4844 一定编程了 Layer 2 的安全短板/解除。

要补足这块的安全救援,我们需要拥有有正向经济循环的消耗信任储存方案。这里的储存,主要是指以一种信任的方式保留以太坊中的数据,而过去的储存类似不太一样了,因为还存在“消耗信任”这个关键字。

以太坊以太坊

Ethstorage就可以解决消耗信任这个问题,得到了两轮以太坊基金会的资助。

可以说这个概念真正的可以迎合/替换Dencun升级的样子,非常值得关注。

首先,Ethstorage最具有观赏意义,能够以完全去中心化的方式延长DA BLOB的可用时间,补上4844后Layer 2的安全最短板。

另外,现有的大部分L2解决方案主要中心化于扩展以太坊的计算能力,即增加TPS。然而,在以太坊主网上安全存储坊的大量数据需求大幅上涨,特别是由于NFT和DeFi等dApp的流行。

例如,链上 NFT 的存储需求非常明显,因为用户不仅拥有 NFT 合约的代币,还拥有链上图像。Ethstorage 可以解决这些图像存储在第三方会带来额外的信任问题。

最后,Ethstorage还能解决去中心化dApp的前端的需求。目前现有的解决方案主要是由中心化服务器(带DNS)进行托管,这种设置使得网站很容易受到审查和其他问题的影响,例如DNS劫持、网站黑客攻击或服务器崩盘,龙成交量风现金等事件就是证明。

现在Ethstorage尚处于网络测试阶段,看好这一前景的用户可以体验一下。