以太坊创办人Vitalik今日(2)发表新文章《以太坊的多客户端理念将如何与ZK-EVM互动?》,内容提及当前以太坊客户端的多元化原因,以及零知识证明未来的发展、如何保护以太坊Layer1以及多客户端的想像,而Vitalik认为当前困难的零知识证明生成可能在AI的普及下将可能变成快速、轻松实现EVM等校并能识别所有错误,他也谈及以太坊未来的蓝图:未来看起来非常美好。以太坊区块会比今天更小,任何人都可以在他们的笔记本电脑甚至他们的手机或浏览器扩展程序中运行一个完全验证的节点,这一切都会发生…从短期来看,这仍然是一段漫长的旅程。ZK-EVM就在这里….
客户端多元化的原因
Vitalik一开始在文章中提及,当前以太坊节点客户端拥有许多团队,他认为这是一种哲学,借由多元化客户端的方式,可以降低软件错误后,导致整个网络的灾难性崩溃风险。他以2010年的比特币溢出漏洞为例子,他认为主要是当时的开发生态不够成熟,不然当时很可能会让大量的交易所、或者钱包遭到攻击,而如果当时有五个比特币客户端的话,不可能全部出现同样的错误。
相反的多个客户端会出现共识错误的问题,但只要客户端数量越多时,出现共识的风险程度也会越小,而Vitalik的理论显示,建议维持在三个以上的多客户端,应该是比较好的作法。
以太坊共识层及执行层客户端分布
ZK-EVM如何进入Layer1
在百花齐放的Layer2中,为何Vitalik独钟爱zk-Rollup?在本文中也讲述了他的理由,当前零知识证明汇是一个已知可行且能帮助Layer1进行验证的汇总方式,而Vitalik也提出了两种方式来验证Layer1:
选项1:限制Layer1活动,强制将活动移到第二层进行
透过这种形式,如此一来Layer1便可成为完全Layer2的纯粹汇总链,当大多数交易都处在Layer2上十,可以让一整个Layer1区块包含完整的SNARK证明以及部份的存款取款操作。
但明显地这样做有好几个缺点,首先是许多L1原生应用将变成经济上不可行,且有可能无法使Layer1验证本身变得便宜,而Vitalik也认为即使是L2优先更高的生态,某种程度上可以让dapp在Layer1上负担的起,好处也是很多的(例如大金额的应用可以集中在Layer1上)。
选项2:SNARK-验证第1层
在Layer2上完全EVM以太坊等校的的zk-EVM可以用来验证以太坊EVM的执行,但须要撰写更多有关SNARK代码来验证不同Layer间区块的共识,将是一个非常具有挑战性的工程,而如今从zk-EVM到验证以太坊区块通常需要数分钟到数小时不等的时间,实时生成证明就变成一个或多个挑战除非从三点改进:
删除许多对于SNARK不友好的组件,可加速生成
或者通过专门硬件方式来加速
通过执行平行化改进架构处理
而Vitalik也提及实现这些的最好客户端的方式,就是通过Openmulti ZK-EVM,即有多个不同的ZK-EVM客户端,都在生成自己对自己兼容的证明,他认为这是当前以太坊发展可以实现的,而通过这样的模式也会面对新的挑战,例如验证者可能会恶意延迟发布块借此来攻击、或者验证ZK-SNARKs会因为块中可以删除验证数据,而导致多个客户端验证时效率低落,Vitalik认为应该要将每单个区块,都可以生成多种类型的证明,则这样就发布实际发布原始签名(纪录在区块上)。
未来可能是AI带领多重zk-EVM客户端
总结来说,Vitalik当前的研究认为,多元且平行、不完全相同的ZK-EVM可能是以太坊未来的趋势,虽然提及有很多困难的地方,但Vitalik也认为当前AI的出现可能会加强验证,使其不同的ZK-EVM实现等校,并成功辨识之间所有的错误:过渡的第一步可能比我们预期的要早,一旦我们切换到Verkle树和无状态客户端,客户端就可以开始逐渐使用ZK-EVM,并且可以过渡到“开放的多ZK-EVM”世界开始自行发生。