Sin7Y 研究人员对话——关于 zkEVM 的思考

这篇文章主要介绍了Sin7Y 研究人员对话——关于 zkEVM 的思考 ,文中通过代码以及文档配合进行讲解,很详细,它对在座的每个人的研究和工作具有很经典的参考价值。 如果需要,让我们与区块链资料网一起学习。

https://www.interchains.cc/24800.html

Sin7Y 研究人员对话——关于 zkEVM 的思考是很好的区块链资料,他说明了区块链当中的经典原理,可以给我们提供资料,Sin7Y 研究人员对话——关于 zkEVM 的思考学习起来其实是很简单的,

不多的几个较为抽象的概念也很容易理解,之所以很多人感觉Sin7Y 研究人员对话——关于 zkEVM 的思考比较复杂,一方面是因为大多数的文档没有做到由浅入深地讲解,概念上没有注意先后顺序,给读者的理解带来困难

Sin7Y 研究人员对话——关于 zkEVM 的思考

  • Sin7Y
  • 零知识证明

Sin7Y 是一个由 L2 Labs Foundation 支持的非营利性研究组织。它探讨了加密行业最重要、最前沿的话题—— EVM、Layer2、侧链、跨链和匿名支付解决方案等。对话的目标是将志同道合的人聚集在一起,形成一个长期可持续发展的智库,以普及行业知识,提高解决问题的效率。

本文为 Sin7Y 发布的第一篇对话记录,我们邀请了匿名业内专家,以问答的形式讨论了一些关于以太坊eth虚拟机亟待解决问题的想法和方向。

Sin7Y 研究人员对话——关于 zkEVM 的思考

问:如何证明 Prover 使用了正确的合约逻辑? 答: 你需要在链上调用数据,这将定义“制定合约”,之后我们需要从存储中加载该合约的字节码,并确保这些是状态验证传递给以太坊eth虚拟机证明的操作码。

问:那么过程应该是这样的: • Prover 从存储中加载合约字节码; • 在状态证明中检查字节码,然后传递给以太坊eth虚拟机证明 但是如何确保状态证明和 zkEVM 证明中使用的字节码的确是从存储中加载的呢?是在电路中证明?还是需要像 HERMEZ 方案一样使用 Plookup 技术? 答: 是的,Plookup 可用于构建键值映射。

问: 对于基于原生的 zkEVM 和基于编译器的 zkEVM,您有什么想法吗? 来自 ZKSync 的 Alex 说基于原生的 zkEVM (我认为我们目前就是这样设计的)“要复杂一个数量级”。 答: 基于编译器的方案会有很大的不同。智能合约的安全属性,尤其是它需要考虑对新的以太坊eth虚拟机行为进行安全审计。这就会要求开发人员学习这些新行为,并在构建智能合约时更为仔细。过去发现过这样一个错误:有人构建了某些程序,我们就假定开发人员会学些如何去使用它。我们能从乐观的汇总团队学到的一点是:支持开发人员而不是要求他们重建一切,这点很重要。

这两种方法都有道理,所以都值得探索;但是,有些人更相信以太坊eth虚拟机仿真法会奏效。此外,我们需要注意在使用基于编译器的方法时,编译程序会变得多么复杂。

问:您怎么看将 zk-friendly 用于基于编译器的 zkEVM 与基于原生的 zkEVM ? 答: 这是一个棘手的问题。我想说,我们可以在实现(两种方案)后来确定答案。但是即便计算机语言相同,我仍会担心安全性以及开发人员如何适应新的以太坊eth虚拟机。这就是为什么一些团队采用纯以太坊eth虚拟机(即原生)的原因。

问:如果用 KZG10 替换 IPA,Halo2 算法可能需要信任设置。为什么不直接使用 Plonk 算法? 答: 的确如此。我认为现在可以接受可信任设置。从长远来看,团队可能希望能够切换到另一个不需要可信任设置的量子安全多项式承诺方案。所以现在,开发人员正在尝试用一种允许这样做的方式来构建某个程序。这就意味着尽量避免增加或者倍增 Kate 多项式承诺。使用 Kate,这个操作就可以用承诺的形式完成。但是用 STARKs 的话,开发人员必须逐个元素地执行此操作,这个成本就过于昂贵了。

问:当前 zkEVM 方案有两个电路,状态电路和以太坊eth虚拟机电路,也许还有签名电路,您认为递归 SNARKs 在此适用吗? 答: 是的,可能会有 3 个或 4 个。递归有望允许低成本的一个线性映射检查链上验证。像递归聚合 PLONK 一样,链上一次可以验证多个证明。

问:对于用 SNARK-friendly zkEVM 替换 keccak,您有什么想法和顾虑吗? 答: 它是减小电路尺寸的途径之一。替换 keccak 的顾虑主要是兼容性的问题,你将不得不更改 solidity 编译器,因为它们使用 keccak 进行一些优化,keccak 还用于计算存储 mapping 元素的位置。证明时间成本可能并不重要,因为开发人员可以非常快速地进行证明,即使需要额外花费很多我们依然可以接受,因为当前的交易费用太高了。

问:是否有这样的可能,将 zk-friendly hash 添加到预编译合约中,并将 solidity 编译程序添加到相同 hash 中,这样 hash 就可以替代 keccak 了? 答: 可以通过硬分叉把 zk-friendly hash 添加上,尽管可能很难说服人们这样去做。还可以调整 solidity 以使用 keccak 以外的其他程序。

问:与 ZKSyncAPI (即 Bellman)相比,Halo2API 怎么样 ? 答: 两种 API 都很棒。使用 Halo2 可以加快开发速度,它能够让开发人员非常容易地定义多项式这种基本组件。对于 zkEVM 电路开发来说,Halo2 库的最大问题在于 Halo2 多项式承诺,不过我们可以将其更改为 Kate 承诺。

问:请问您如何看待引入像 Poseidon hash 这样的 zk-friendly 操作带来的工作量? 答: 如果不需要修改 solidity 编译器,可以将包含在原生 solidity 编译程序字节码中的 keccak hash 替换为 Poseidon hash,并且添加一个预编译的 Poseidon hash 合约用于计算存储索引。我认为这可能不会带来很多工作量。但是我最近意识到,solidity 实际上在使用 keccak 来决定条目存储地址。例如,映射就用到了它。 因此,如果有人更改这个 hash 函数,就还得更改节点+以太坊eth虚拟机测试,来达到使用同样 hash 函数的目的。

问:有关于 zkEVM 升级的问题:EIP1559 在 zkEVM 中很难实现,即使实现了,在第一版 zkEVM 完成后,我们如何进行另一个新的 zkEVM 的更改(比如 EIP3855)? 答: 一旦这个操作部署完成,你就无法拥有升级功能,除非出现了重大安全隐患。因为,如果你可以升级 L2,那么你始终可以将 L2 升级到新版本从而可以转移走所有资金。有了这样的前提,平台可能不得不每年更新一次 zkEVM 新版本,每个人都需要迁移到那个新版本。就像 Uniswap 第一版和第二版都逐渐失去了价值。

关于 Sin7Y Sin7Y 是一个由 L2 Labs Foundation 支持的非营利性研究组织。它探讨了加密行业最重要、最前沿的话题—— EVM、Layer2、侧链、跨链和匿名支付解决方案等。对话的目标是将志同道合的人聚集在一起,形成一个长期可持续发展的智库,以普及行业知识,提高解决问题的效率。

部分转自网络,侵权联系删除www.interchains.cchttps://www.interchains.cc/24800.html

区块链毕设网(www.interchains.cc)全网最靠谱的原创区块链毕设代做网站 部分资料来自网络,侵权联系删除! 最全最大的区块链源码站 ! QQ3039046426
区块链知识分享网, 以太坊dapp资源网, 区块链教程, fabric教程下载, 区块链书籍下载, 区块链资料下载, 区块链视频教程下载, 区块链基础教程, 区块链入门教程, 区块链资源 » Sin7Y 研究人员对话——关于 zkEVM 的思考

提供最优质的资源集合

立即查看 了解详情