随着“zkEVM战争”的升温,公众对不同zkEVM的优点进行了大量的讨论。也有一些错误的信息,所以我们想澄清一些关于PolygonzkEVM的事实以及它与其他产品的比较。
我的观点存在偏见,因为我本身在Polygon工作,但我会努力保持比较的公平性。我将主要关注Polygon的zkEVM和zkSyncEra,因为它们正在生产中,而且我对其他zkEVM项目了解不多。
zkSync的zkEVM和验证器构成了超过10万行的代码。我尽力给出一个准确的总结,但如果有任何不准确的地方,请告诉我,我将予以纠正。
EVM兼容性
PolygonzkEVM直接执行EVM字节码。根据Vitalik的分类,它是一个3型zkEVM.它应该很快就会变成2型;目前我们还缺少四个预编译版本。Scroll也在努力实现2型zkEVM.
马来西亚网络安全部探索加密货币和数字资产交易所的安全措施:9月13日消息,马来西亚网络安全部已与MX Global Sdn Bhd签订协议,探讨加密货币和数字资产交易所(DAX)背后所需的安全措施。马来西亚网络安全总执行长拿督Datuk Amirudin Abdul Wahab表示,双方今天签署的谅解备忘录(MoU)旨在为加密货币和DAX背后技术领域的合作建立一个总体框架。
MX Global是一家总部位于吉隆坡的金融科技公司,其使命是创建一个高度可访问且安全的加密货币交易平台,允许商家、消费者和交易者进行加密货币交易。
据悉,谅解备忘录有效期为两年,在此期间,双方将开发马来西亚网络安全加密货币部门确定的领域,重点是区块链技术。(malaymail)[2022/9/13 13:27:33]
相比之下,zkSyncEra使用不同的字节码格式,通过他们提供的编译器支持Solidity,这使得它成为一个4型kEVM:它支持Solidity,但不支持EVM字节码本身。像Hardhat这样的工具并不是开箱即用的,尽管它可以与zkSync的插件一起使用。
Nifty Gateway推出允许策划作品的平台Publishers:9月1日消息,NFT交易平台Nifty Gateway宣布推出允许用户策划自己作品的平台Publishers,超50位策展人将能够选择艺术家名单并以类似Shopify的方式经营自己的NFT店面,之后会扩展到其他想要发布NFT的团体,例如艺术家、为忠诚度或效用发布NFT的品牌等。[2022/9/1 13:02:48]
zkSync认为他们的zkVM更适合于未来,也就是说,它可以更好地与Solidity以外的语言一起工作。然而,他们的虚拟机似乎继承了EVM的许多性能特征,比如它的256位字大小。像Miden?这样的zkVM可能更具有未来性,因为它是为通用计算设计的,而不是专注于Solidity.
性能
性能一直是Polygon的首要任务,我们的zkEVM非常高效。在CPU上运行我们的验证器,每笔交易的成本大约是0.000084美元。
数据:近24小时全网爆仓2.13亿美元,以太坊爆仓近1亿美元:金色财经报道,据Coinglass数据,近24小时全网爆仓2.13亿美元,其中以太坊爆仓9527.08万美元,比特币爆仓4845.29万美元。[2022/8/27 12:51:31]
虽然我们没有找到任何针对zkSync的zkEVM的工作基准,但我们怀疑由于我们对ZK技术的选择非常不同,因此存在很大的性能差距。
场选择
在研究了几个备选方案之后,我们选择了被称为Goldilocks的字段,一个阶为2^64-2^32+1的素字段。它的小尺寸和美丽的二进制结构导致了极快的场操作,在现代CPU上,乘法运算只需不到两个周期。
zkSync采取了一种更传统的方法,采用基于alt-bn128曲线的SNARK.底层字段大约254位,字段乘法在CPU上需要大约80个周期。
狗狗币联合创始人:从本质上讲狗狗币只是一个共享的数据库和网络:金色财经报道,狗狗币联合创始人Shibetoshi Nakamoto发推表示,从本质上讲,狗狗币只是一个共享的数据库和网络,以虚拟币的形式增加数据库条目,并以狗币为吉祥物。其余的只是关于人们如何决定使用它和重视它。加密货币很简单,人们很复杂。[2022/8/17 12:31:48]
为了了解这可能造成的巨大差异,我们可以看看Celer的SHA2基准。在那里,我们的STARK验证器比基于椭圆曲线的验证器快5-50倍。
alt-bn128的优点是EVM原生支持它,所以向Ethereum提交证明更简单。在Polygon,我们反而用alt-bn128上的fflonk证明来“包装”我们的最终聚合证明。我们的方法需要更多的工作,但我们认为这是非常值得的,因为它有令人难以置信的性能提升。
算术化
差异还不止于此。我们的zkEVM建立在STARK?的基础上,但有一个现代的扭曲。我们有一个用于CPU的主STARK,以及用于算术、散列等等的其他STARK.然后这些表可以被连接起来,就像我们在RapidUp?中描述的那样。这类似于物理CPU,它通常有协处理器来加速密集型操作,如渲染、加密或ML推理。
以Keccak为例。由于它被EVM应用大量使用,我们为它设计了一个专用的STARK,使用了一些新的技巧,我们在这里记录了这些技巧。设计这样的自定义算术需要大量的工作,但它得到了回报,使我们能够在每秒内证明数百个Keccak的排列组合。
zkSync采取的是我称之为更传统的方法。他们使用基于PLONK的验证器,虽然它确实支持自定义门,但他们的zkEVM并没有过多地使用它们;大多数计算是通过一个名为electorOptimizedWidth4MainGateWithDNext的通用门完成的。它似乎比普通的PLONK门稍微强大一些,但它仍然局限于简单的操作,如mul-adds.
值得称赞的是,zkSync确实使用了查找参数,这是一种更现代的技术,可以帮助提高像Keccak这样的东西的效率。不过,如果没有自定义的算术,像256位数学、Keccak等等的效率就会大打折扣。
安全
Polygon非常重视安全问题,我们的zkEVM已经通过了两次独立的审计:一次是Spearbit,另一次是Hexens.两份报告都是公开的,在这里。我们还公布了验证部署的说明。
我们不知道zkSync的zkEVM的任何的公开的审计。zkSync的网站列出了对桥接合同的审计,但没有列出zkEVM本身的。
除了审计,这两个项目都有各种“训练轮”来提供后备安全层,但这是一个丰富的话题,我不会在这里讨论。
L1数据
PolygonzkEVM将所有交易数据发布到L1,在Twitter上有一些关于与此相关的gas成本的混淆;请参见Edu的帖子以获得正确的数字。目前,平均交易大小约为120字节,因此每个交易的成本约为120*16=1920?gas.
但zkSync发布了状态差异。恶意的排序器可以扣留交易数据,但zkSync认为,拥有当前状态的trie就足以保证安全。这似乎有点值得商榷,因为交易数据通常被认为是可用的,而且某些应用程序依赖于此。
看一下修正后的数据,我们的zkEVM和zkSync的每笔交易的gas成本基本上没有区别。这些数字可能会随着时间的推移而变化,基于每个链上发生的交易的混合,但到今天为止,状态差异似乎没有节省任何gas;两个系统都在向L1发送每个交易的120字节左右。
我们正计划在这里进行一些优化,但不是用状态差异。交易本身可以被压缩,减少gas成本,同时仍然保证交易数据的可用性。更多关于这个问题的信息很快就会出现!
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。