专访Polygon zkEVM:与以太坊面临的监管问题相比,Layer2去中心化排序器更重要
采访:Jack,BlockBeats
编译:Laughing,BlockBeats
似乎自黑山 EDCON 后,ZK 就成了所有人都在讨论的话题。但实际上,ZK 赛道的热度自年初 Arbitrum 空投后便未曾消减过。随着 zkSync Era 上线,「ZK 空投」的预期也被推到了新的高点,除了 zkSync 和 Starknet,Scroll、Linea 等 zkEVM 项目也成了「羊毛党」的重点撸毛对象。
但有意思的是,尽管 ZK 赛道的空头预期空前高涨,但大多数人对这个领域的细分概念仍然相对模糊。ZK Rollup、zkEVM、zk-SNARK、zk-STARK 等等,每一个似乎都很重要,但每一个都不是太懂。必须承认,ZK 赛道的强技术性,的确为很多人了解该领域增添了不少难度。
Polygon 作为最早投入 ZK 扩容开发的团队,自身产品经历过多次迭代,对 ZK Rollup 有着深刻的理解与洞见,而 Polygon zkEVM 也是目前少数已上线的 zkEVM。为此,BlockBeats 在近期专访了 Polygon zkEVM 的技术负责人 Jordi Baylina,向这位「技术宅男」请教了 ZK 赛道的发展现状、机会,以及 Polygon zkEVM 的未来展望。
关于 ZK Rollup 和 zkEVM
BlockBeats:首先,Jordi 能否向读者简单阐释 ZK Rollups 和 zkEVM 之间的区别?以及我们为什么需要一个经过 ZK 验证的 EVM?
Jordi Baylina:从用户的角度来看,OP Rollups 和 ZK Rollups 最大的区别是提取资金所需的时间。例如,当你将 1 个 ETH 放入 Optimism 或 Arbitrum 时,取回这笔钱至少需要一周的时间。如果你想把资金留在那里,问题就不是那么大。但当你的资金在多个 Rollup 的系统时,问题就会更加复杂,资金会难以转移。当你想转移资金到另一个 Rollup,那么也需要一周或两周的时间。这就是 OP Rollups 面临的最大问题。
在 ZK Rollup 的情况下,你可以在生成验证证明后退出 Rollup。目前,在 Polygon zkEVM 上,这个时间大约是一个小时,但最短可以达到 30 秒。而 30 秒和两周是一个很大的差别。30 秒实际上让你可以去另一个 Rollup 上进行交易,然后再回到同一个 Rollup。所以如果你想让你的资金与全世界连接,并且你可以在这里转移资金,这有更高的可用性。我的意思是,你不会陷入资金无法转移的困境,这一点很重要。
BlockBeats:和 Starknet、zkSync 等 ZK Rollups 相比,Polygon zkEVM 有什么区别?
Jordi Baylina:Polygon zkEVM 最大的区别在于它是一个 EVM,这意味着它与以太坊完全兼容。用户只需连接 MetaMask,就可以做与在以太坊上相同的事情。你可以部署智能合约、与智能合约交互、创建代币、转账、创建多签,无论你想做什么,都不需要任何特殊的工具,你只需使用与以太坊上相同的工具,如 MetaMask、etherscan、HardHat 等,所有可用于以太坊的工具,你都可以使用,你不需要特定的其他工具。
BlockBeats:社区常有「ZK 和 EVM 不兼容」的观点,为什么会有这种说法?
Jordi Baylina:EVM 最初设计时并未考虑 ZK proof。EVM 的设计是在 2014~2015 年左右完成的,而相关的 ZK proof 概念则出现在 2018~2019 年左右,因此在 EVM 设计时并没有考虑到 ZK proof 的因素。但在 Polygon 中,通过我们自己的设计成功构建了 zkEVM,也就是构建了一个证明系统,一个能够验证任何以太坊交易的 zkProver(零知识证明生成器)。
它能以与任何以太坊客户端相同的方式进行验证,这意味着我们实现了与以太坊完全兼容。因此,如果你知道如何在以太坊上进行开发,那么你也应该知道如何在 zkEVM 上进行开发。你不需要任何其他特殊的东西。从开发者的角度来看,他们几乎不会感受到任何区别,除了 Gas 价格和吞吐量方面的差异。
BlockBeats:Polygon 本身已经是一个与 EVM 兼容的侧链,为什么它还要构建另一个 Layer 2 扩容方案?
Jordi Baylina:Polygon 有两个部分。一个是 Polygon PoS,也就是原始的 Polygon 网络,另一个是 Polygon zkEVM。它们是两个独立的网络,目前没有连接在一起。Polygon PoS 是一种 Layer 1 的侧链,就像 Gnosis、Avalanche 或其他 Layer 1 侧链一样。而 Polygon zkEVM 是一个 ZK Rollup,也是一个 EVM,它与以太坊兼容。最后,你会看到它们融合在一起,它将是极具可扩展性的。
实际上这正是 Polygon 一直在努力的方向,所以我们创建了 PoS,这样就可以成为更好的扩容 Layer 1。但所有的 Layer 1 都有一些限制,即共识机制。你可以在安全性上稍微做些妥协,但你无法同时获得以太坊的安全性等等。Polygon PoS 是一种可以提供非常快速且便宜的交易的权衡,它在安全性上有一些妥协,但这并不意味着它不安全,只是它没有与以太坊相同级别的安全性和去中心化。在这个「不可能三角」中存在着不同的平衡,对于许多应用程序来说,这可能已经足够了。但对于一个 Layer 1 来说,共识层一直存在着这样或那样的限制。
真正的区块链扩容需要通过 Layer 2 技术来实现,因此 Polygon 在构建 Layer 2 技术上投入了大量的资金,具体而言,是 ZK Rollup 技术。当然,在 Polygon PoS 的扩容尝试中我们做过 Supernets,但这是一种在 Layer 1 生态系统中发展的方式。对于区块链的整体扩容而言,Polygon 确实非常专注于 ZK Rollups。
BlockBeats:许多 ZK Rollups 都采用了 zk-SNARK,但 Polygon zkEVM 结合了 zk-SNARK 和 zk-STARK。而最近关于二者的讨论也很多,您怎么看 zk-SNARK 和 STARK?
Jordi Baylina:目前 STARK 是我们所知道的最快的证明系统。此外,还有一个重要因素是,在 STARKs 之上实现完全递归非常容易。这使得我们能够在单个交易中聚合许多区块,非常方便。而且我们还使用了一个与 StarWare 不同的东西,我们称之为小素数域 (small prime field) 的 STARK,它甚至比普通的 Stark 快 10 倍。
律动 BlockBeats 注:在数学中,"小素数域 (small prime field)" 是指一个由一个小质数作为特征的有限域(也称为有限素域或伽罗瓦域)。在这个域中,所有的运算都是模这个质数进行的。小质数域在密码学和编码理论等领域中经常使用,因为它们具有一些重要的性质,如具有良好的分组效应和可逆性等。
BlockBeats:在 ZK Rollup 领域,大家似乎都在争取实现 EVM 兼容甚至等效,但作为龙头的 Starknet 却是非 EVM 兼容的。
Jordi Baylina:你可以说 Starknet 是以太坊的 Layer 2,因为它们是建立在以太坊之上的。但实际上,一个区别在于是否与以太坊兼容并等效,而 Starknet 并不兼容。如果你直接将 MetaMask 连接到这个端口并开始使用,它就是等效的。或者你可以使用 Remix 创建一个智能合约并在其中部署它,它应该和以太坊完全一样地运行。
但 Starknet 使用了一种不同的语言,并与不同的东西进行比较,就像是一个不同的链。你不能去 Remix(以太坊开发环境)上生成一个智能合约然后在 Cairo 上部署它,你需要使用它们自己的工具。
BlockBeats:像 Kakarot 这样的 zkEVM 项目选择在 Starknet 之上再搭建一个 zkEVM,您如何看待这种技术实现路径?它与 Polygon zkEVM 在技术层面有什么不同之处?
Jordi Baylina:对于 Kakarot 团队来说,他们试图实现与以太坊兼容,但为了达到这个目标,他们采用的技术栈速度有些慢了。虽然具体情况还需要进一步观察,但我觉得他们可能效率不会很高。目前的问题在于,这个项目非常依赖于 zkEVM 的构建方式。而 Kakarot 是基于 Cairo 构建的,Cairo 相对较慢,而且 EVM 非常复杂,在 Cairo 的基础上构建将会非常低效。这是两层技术栈,也许它能行得通,但是我觉得规模会很小。
与其使用 Cairo 这样的通用虚拟机,我们构建了一个定制的虚拟机。就像构建一个执行特定程序的专用处理器一样。我们定制了虚拟机而不是使用 Cairo 语言。这个虚拟机专门设计用于构建 zkEVM,就像设计一个只能运行单个程序的计算机一样。
BlockBeats:所以 Polygon zkEVM 从一开始就会使用 Solidity 进行开发吗?
Jordi Baylina:Polygon 使用的是 EVM,因此它使用与以太坊相同的底层技术。这意味着你可以使用 Solidity 进行开发,并且一旦你在 Solidity 中进行开发,你不仅可以在以太坊上部署,也可以在 zkEVM 上部署,因为它们使用的是相同的处理器,即以太坊虚拟机。而 StarNet 使用的是 Cairo,它并非只是使用了 EVM。
关于 OP Rollup 和 zkEVM 赛道
BlockBeats:在一两年前,大家还认为 OP Rollups 是短期内扩容的主流解决方案。但现在,几大主流 ZK Rollups 都相继上线主网。您觉得,OP Rollups 现在对以太坊扩容还有重要价值吗?
Jordi Baylina:OP Rollups 在 ZK Rollup 还未完全准备就绪的情况下是一个不错的解决方案。但是现在 ZK Rollup 已经准备就绪,我认为使用 OP Rollups 已经没有太多意义了。两年前 zkEVM 还在构建中时,大家都认为需要大约五年的工作时间,因此在这五年中 OP Rollups 可能是非常合理的选择。但仅仅经过两年的时间,zkEVM 已经取得了很好的发展,我们提前达成了那个目标。
对比 OP Rollups、Starknet 和 Polygon zkEVM,其中一个重大的区别就是 Polygon zkEVM 是三者中唯一一个真正实现的 zkEVM,也是唯一一个与以太坊完全兼容的 zkEVM。zkSync 在 Solidity 层面上是兼容的,但是你需要使用特定的工具来编译,它并不是 EVM。而 Starnet 则是不兼容以太坊的。
BlockBeats:在您看来,是什么关键因素加速了 ZK Rollups 的开发进程?
Jordi Baylina:最主要的,是我们把所有工具和技术组合在一起时,它们的综合作用起了关键作用。这是一个工程过程,就像将许多已知的部分组合在一起。我们在某种程度上证明了这是可能的,并且在这个过程中解决了许多挑战。
例如,在证明时间和计算证明所需的数据中心方面,我们最初需要数小时。而现在,在一台大型机器上构建一个证明只需要一分钟。所以,你可以看到在这两年里的进步。这并不是一个单一的因素,正如我之前所说,例如我们从大素数域转向小素数域,我们采用了 STARKS,加速了在其中使用的哈希函数,我们学会了如何进行算术处理和如何以高效的方式在电路中实现 keccak256 等。我们创建了一个非常优秀的架构,使不同的团队可以并行工作。我们有限制层、密码学层、ROM(只读存储器)层,这实际上是在实现测试层。这些不同的层使我们能够高效地并行工作,这也是我们能够快速构建这个系统的原因。
BlockBeats:但许多来自社区的声音还是在抱怨,认为在以太坊和 Layer 2 之间转移资产,或者在 Layer 2 上交互时需要很长时间,同时 Gas 费用也没有便宜多少。这是为什么?
Jordi Baylina:就在 L1 和 L2 之间转移资产来说,在以太坊的 zkEVM 中情况并非如此。从 Layer 1 到 Layer 2,需要经过两层的处理。因此,你需要在 Layer 1 中完成交易以使其最终确认,这需要大约 12 分钟的时间。
我认为除了他们没有正确执行操作之外,没有其他原因。目前,在 Polygon zkEVM 存入资金需要 12 分钟,我们每小时生成一个证明来提取资金,所以整个过程应该不超过一个半小时,即使这可能会有所波动。也就是说,我们知道最多只需要一个小时,也可能会更短。
当前的 Gas 费用是 Layer 1 Gas 费用的 10%,因为我们需要支付数据可用性费用。但是我可以告诉你的是,在大约六个月后,也就是明年初,我们计划将再次提升,在目前已有的 10 倍的基础上再增加 50 倍。这 50 倍的提升主要来自数据压缩,这是我们目前正在努力研究的领域。另外的 10 倍则来自于 EIP-4844。
律动 BlockBeats 注:EIP-4844(也被称为 proto-danksharding 提案)是由 Vitalik Buterin 和其他来自以太坊生态系统的程序员共同创建的。EIP-4844 的主要目的是在不牺牲去中心化的情况下,降低网络上的 gas 费用,特别是对 Rollup 解决方案。Arbitrum 和 Optimism 等 Rollup 解决方案可以将 gas 费用降低 100 到 1000 倍。
BlockBeats:当前,zkEVM 赛道的竞争非常激烈。polygon zkEVM、Consensys 还有 scroll 都在争夺 L2 用户,而许多用户仍分不清它们与 Starknet 和 zkSync 之间的区别。在您看来,Polygon zkEVM 和其他 zkEVM 项目相比有哪些异同?
Jordi Baylina:Scroll 与我们有很多相似性,Scroll 是一个 zkEVM,我们也是 zkEVM。而 zkSync 不是,它是一个 zkSolidity,在技术实现过程中并没有 EVM。而 Starknet 甚至不是 EVM,它更像是一个侧链。但这并不意味着它们有好坏之分,它们是不同的事物。
zkEVM 是实现了 EVM 的,也就是说你可以使用零知识证明 EVM。这是可以互换的,也就是说你应该能够以与以太坊完全相同的方式使用它。在 zkEVM 领域,我们要讨论的是 Scroll、Consensys(Linea)以及 Polygon zkEVM,它们可以说是目前最先进的三个 zkEVM 项目,我们各有优劣。当然还有 Taiko,但那是一个 Type 1 zkEVM。
其中,Consensys 更多关注架构设计,以使终端用户感觉不出与 EVM 的不同。当然,他们现在主网还没有上线,因此我们还需要等到主网上线后再观察它的实际表现。但从用户的角度来看,不应该有太大的区别。
主流 ZK Rollups 和 zkEVM 技术架构对比,图源:Dewhales Research(注:Polygon Hermez 即当前的 Polygon zkEVM)
我认为 Consensys 架构非常类似于 Polygon zkEVM,都非常关注状态,它们之间的区别在于密码学部分。我认为它们采用的基于格 (lattice-based) 的方案很有意思,我们可以关注一下它们的实现方式,也许这是一个优势。但从架构的角度来看,我们非常相似。而 Scroll 有些不同,Scroll 没有那么多的层次结构,它更加简化和内聚。
律动 BlockBeats 注:在密码学中,基于格(lattice-based)的密码学是一种基于格理论的密码学分支,它利用了格结构的数学性质来构建安全的密码系统。格是多维向量空间中的一组线性无关的向量构成的集合。基于格的密码学利用了格问题的难解性,其中最著名的问题是「最短向量问题」(Shortest Vector Problem,简称 SVP)和「最近向量问题」(Closest Vector Problem,简称 CVP)。这些问题通常在高维空间中是难解的,即使使用现代计算机也需要巨大的计算资源和时间。相较于传统的基于数论或椭圆曲线的密码学,基于格的密码学在抵抗量子计算攻击方面具有一定优势。由于目前没有已知的高效量子算法能够解决格问题,基于格的密码学被视为一种抵御量子计算攻击的可行选择,并且受到广泛的研究和应用。
BlockBeats:您在 EDCON 演讲时分享到,Polygon zkEVM 团队常与 Scroll 等「对手团队」进行交流。大家的交流主要涉及哪些话题?您是如何看待彼此之间的竞争关系?
Jordi Baylina:我们通常讨论非常技术性的话题。比如,你的项目是如何处理交易的,如何排序,如何实现这个特定的代码,如何解决这个问题,如何解决那个问题,我们在这些话题上分享了很多见解。
在我看来我们并不是在竞争,确切地说,至少在技术层面上不是一个竞争的关系,同时我们也在试图避免竞争,这就是我在座谈会上所谈论的。我们并不与任何人竞争,而是追求合作的态度。这是一项非常复杂的技术,你要把自己置于更高的层次上。我从其他人那里学到了很多东西,同时也向其他人传授知识,这是我们前进的方式。当然,在产品层面、市场推广和调整方面可能会有竞争,但对用户来说,这也并非坏事。
关于 ZK 加速
BlockBeats:zkEVM 也需要排序器对吗?
Jordi Baylina:目前 zkEVM 采用的是中心化的排序器。和其他侧链一样,侧链都需要排序器,而排序器可以是中心化的或去中心化的。目前大多数侧链都采用了中心化的排序器,但同时它们也都计划去构建去中心化的排序器。在 Polygon 中有一种名为「效率证明(Proof of Efficiency)」的机制,但目前它是中心化的排序器,我们正在努力寻求更好的解决方案。
BlockBeats:为了使排序器去中心化,你们会推出新的 Token 吗?
Jordi Baylina:我们已经有一个 Token 了,就是 MATIC,不需要推出新的 Token。我们已经有一个优秀、强大、有价值的 token。这个 token 可以用于共识层,例如 Polygon PoS,也可以用于去中心化排序器等等。它在许多方面都非常有用,对于维护这个基础设施来说将是一个非常重要的 Token。
BlockBeats:排序器到完全去中心化大概需要多长时间?
Jordi Baylina:我在 Polygon 中并不负责这部分内容,在 Polygon 上有其他团队的人正在处理这个问题。我希望能尽快实现,但我不确定,可能需要六个月或一年。这不会是一个很快的过程,我不认为它下个月就能实现。但至少在 Polygon 上有一个完整的团队致力于朝这个方向发展。
BlockBeats:另外,很多人都在研究「ZK 挖矿」的机会。您怎么看此事?
Jordi Baylina:目前,证明生成器非常中心化,但将来会实现去中心化的证明生成器。这是有可能的。可能需要一段时间,但是这将会发生。确切地说,有两件事情需要参与,一是排序,二是验证,这两个过程都需要去中心化,其中关键的是排序器。证明生成器只是一个进行计算的机器,仅此而已。
BlockBeats:所以这里的确存在机会?
Jordi Baylina:是的,绝对的。虽然现在还不是时候,但将来会有机会。
BlockBeats:最后,Polygon 作为一个整体是如何看待 zkEVM 的?
Jordi Baylina:ZK 将是一个核心部分,我们看到了基于 ZK 的 Layer 2 生态系统,许多侧链之间可以相互交互。对于证明生成器、以太坊监管等方面的问题,我并不担心。我更担心的是排序器,我们需要去中心化排序器。