TronLink

您现在的位置是:主页 > 波宝钱包官方 >

波宝钱包官方

tronlink钱包官网|读懂zkSync Boojum升级:更安全更高效的zkEVM | 动区动趋-最具影响力的区块链新闻媒体

发布时间:2023-07-19波宝钱包官方
我们相信,Boojum 是 zkEVM 更安全、可扩充套件和高效的下一阶段。本文源自 zkSync 于 Mirror.xyz 所着文章《Boojum Upgrade: zkSync Era’s New High-performance Proof System for Radical Decentralization》,由深潮

我们相信,Boojum 是 zkEVM 更安全、可扩充套件和高效的下一阶段。本文源自 zkSync 于 Mirror.xyz 所着文章《Boojum Upgrade: zkSync Era’s New High-performance Proof System for Radical Decentralization》,由深潮 Techflow 编译、整理。 (前情提要:ZK Rollup的两个安全性难题:不变性和可升级性 ) (背景补充:Layer2模组化战争:OP Stack vs. ZK Stack,谁能赢? )

本文目录

  • TLDR
  • 认识 Boojum
    • Boojum 是什么?
  • 为什么选择 Boojum?
    • 世界一流的效能
    • 降低去中心化硬体的要求
  • Boojum 的主网之旅
  • 升级 zkSync Era
    • 从设计到审查的 Boojum 之旅
    • Boojum: 从审查到测试
    • Boojum: 从测试到主网

TLDR

  • 升级:zkSync Era 正在过渡到新的 Boojum 证明系统,无需重新生成。
  • 效能:Boojum 展示了一流的证明效能,补充了 zkSync Era 排序器,该排序器已经可以处理超过 100 TPS。
  • 去中心化:Boojum 证明者仅需要 16 GB RAM,可实现未来大规模证明者去中心化。

zkSync 的使命是推进所有人的个人自由 —— 通过构建一个无需信任、安全、无需许可、价格合理、易于使用、弹性和可无限扩充套件的区块链网路,使数位自我所有权普遍可及。

为了履行这一使命,zkSync Era 的 Alpha 版本于三个多月前向公众开放,反响非常惊人。网路亮点:

  • 锁定总价值 TVL 5.77 亿美元(来源:L2Beat);
  • 过去 30 天的 23, 750, 000 笔交易 —— 是所有 L2 中最多的(来源:L2Beat);
  • 9, 735 个原始码验证的智慧合约。

2023 年 3 月,基于 SNARK 的 zkSync Era 出世,利用了经过实战检验的电路框架,该框架已经在主网上为 zkSync Lite 提供了近三年的支援。然而,我们知道这不会是 zkSync Era 证明系统的最终版本,因此设计了这个系统,使我们能够在不进行重新生成的情况下对其进行根本性的更改。这意味着我们可以在不干扰开发者和使用者的情况下部署重大的密码学升级。

在幕后,我们已经在进行密码学升级的工作很长时间了。今天,我们很高兴地宣布第一个升级:zkSync Era 正在过渡到一种名为 「Boojum」 的新的 STARK 证明系统。

认识 Boojum

Boojum 是我们基于 Rust 开发的算术和约束库,我们使用它来实现 zkSync Era 和 ZK Stack 的升级版本的 ZK 电路。

Boojum 是什么?

Boojum 的特性:

  • PLONK 算术化:在零知识协议的背景下,算术化是将一般计算转化为数学形式的过程。与当前的证明系统一样,升级系统仍然採用 PLONK 风格的算术化。採用这种方法,相对于一些替代形式,ZK 电路的编写更简单,使系统更易于开发、审计、维护和升级。
  • 强大的承诺方案:Boojum 的核心在于 FRI 承诺方案,它是一个关键元件,使我们能够承诺有界多项式,并随后有效地证明所声称的(多项式的)opening 确实属于低次多项式。
  • 系统的效率:儘管当人们谈论证明者效能时有时会忽略见证生成,但在当前版本的证明系统中,我们已经达到了优化的 GPU 证明者非常高效的程度,以至于见证生成时间与证明生成时间相当。通过 Boojum,我们提供了自动并行化(如果依赖图允许)的见证生成,同时保持了定义见证生成函式的简易性.
  • 易于扩充套件:基本约束系统抽象非常简洁,但它允许使用者以各种方式新增自定义门型别,例如为它们新增一些专门的多项式,或者重用所谓的 「通用列」。使用者在为其电路定义了简单的几何结构之后,扩充套件介面提供了自动生成证明者、验证者和递迴验证者的能力。这样可以实现非常高效的开发过程;如果使用者更改电路结构并选择不同型别的门来使用,他们只需再次呼叫介面,它将重新生成金钥并确保他们使用正确的证明者和验证者。
  • 单一堆叠:通过 Boojum,上述所有内容都可以仅使用标準、惯用的 Rust 表达,利用其型别系统的表达能力。GPU 证明者的计算密集部分是用 CUDA C++ 编写的,但我们提供了 Rust 繫结以进行组合。

Boojum 预设使用大小为「 2 ^ 64 – 2 ^ 32 + 1」 的质数字段(被称为 「Goldilocks field」),并提供相应栏位繫结原语的实现,例如 Poseidon 2 hash 函式,以及基于查询表的更标準加密原语的实现,例如 SHA 256、Keccak 256 和 Blake 2s。

重要的是,在最后一步中,我们将使用非透明的基于配对的 SNARK 来包装 STARK 证明,并在以太坊上验证这个 SNARK。这个证明要小得多,验证成本更低;这一步降低了证明系统的成本,从而降低了交易本身的成本。

为什么选择 Boojum?

在设计 Boojum 时,决策背后有两个关键因素:(1)世界一流的证明效能,以及(2)降低去中心化的硬体要求。

世界一流的效能

当前基于 SNARK 的系统,虽然对于当前来说是有效的,但无法扩充套件到 ZK Stack 中的高交易量、接近即时的交易。zkSync Era 作为 Hyperchain 执行的未来目标是在未来几年内支援这些系统。我们对这些系统的设想是,证明可以便宜快速地生成和验证,从而实现快速的最终性和 Hyperchain 之间的互操作性。

证明系统的效能直接影响使用者为其交易支付的费用,随着时间的推移,这些成本需要趋近于零。当前版本的证明系统足够高效,可以构建 zkEVM,并在短短几个月内处理数百万笔交易,但是通过 Boojum,我们可以做得更好!

为了衡量网路的证明生成时间(以及与效能相关的其他关键指标),我们与 Celer 合作,Celer 团队在基準测试和分析多个证明系统方面拥有丰富的经验。在下面的图像中,您可以看到 Boojum 在大多数进行效能分析的系统中表现出色。结果不言自明:我们的实施展示了世界一流的证明效能,据我们所知,这是目前在生产中使用的最快的证明系统。

为了进行公平比较,Celer 在基于 CPU 的证明者上进行了这些基準测试,但我们的主网系统使用的是基于 GPU 的证明者,速度更快。

转向基于 STARK 的证明系统代表了效能的显着提升,并将有助于确保最终性和对 zkSync Era 和其他基于 ZK Stack 的系统的增加活动水平的支援的低延迟。

降低去中心化硬体的要求

当人们认为这不是我们优化的唯一指标时,这些效能结果尤其令人印象深刻 —— 我们希望提高系统性能,同时降低执行它的硬体要求。

目前普遍使用的证明系统,包括我们现有的系统,在硬体方面要求较高。我们当前的证明系统在一组 A100 GPU 上执行,每个 GPU 具有 80 GB 的 RAM。对昂贵且功能强大的机器的需求对我们的目标构成了重大障碍:使用者驱动的去中心化证明生成的未来。要实现这个目标,仅仅使证明生成无需许可是不够的;使用者还不应该需要一台带有数百 GB RAM 的昂贵机器来参与其中。

这是我们取得极其引人注目的进展的另一个领域!我们用于 Boojum 的 GPU 证明器仅需要 16 GB 的 RAM,这种低门槛是我们设想的未来的重要一步。基于 CPU 的证明也可以使用低至 64 GB 的 RAM,我们希望将其降低到 32 GB,并充分利用现代多核处理器。

最后,zkSync Era 基于 Rust 的序列器已经可以每秒处理 100 多个交易(TPS)。新的证明系统的引入不仅提高了效能,还降低了硬体要求,使其成为序列器的理想补充。Boojum 带来的效能提升意味着系统可以更快地证明交易,而降低的硬体要求则改善了网路对更便宜的机器的访问,以实现更高的横向扩充套件性。

Boojum 的主网之旅

团队已经花费数月时间开发这个升级,我们很高兴现在已经到了在主网上测试系统的阶段。我们也想分享一下迄今为止的一些故事。

升级 zkSync Era

首先,zkSync Era 的设计使我们能够随着时间的推移升级每个元件,证明系统也不例外。

与以太坊类似,我们使用 Merkle 树资料结构来储存有关网路状态的资讯。鉴于我们正在证明有关系统状态的陈述,这些资讯是证明系统所必需的。为了这个 Merkle 树(以及证明系统与之互动的方式),一个关键的设计决策是使用非代数 hash 函式,具体来说是 Blake 2s。如果我们仅仅优化证明生成的便利性,我们就会使用代数 hash函式(例如 Poseidon 2),但这种选择会将可观察状态与证明系统引数耦合起来 —— 例如质数位段的选择。然后,对证明系统的任何升级都需要完全重新生成状态。

从设计到审查的 Boojum 之旅

大约一个月前,我们开始逐渐形成了我们新的证明系统实现的完整端到端版本。考虑到这个变化的複杂性以及系统正确性的关键性,我们开始进行一系列的内部和外部审计。

当时,zkEVM 电路和 Boojum 算术化库仍在积极开发中,但我们与外部安全审计员合作,重点关注我们的主要电路和 Boojum 元件的健全性潜在问题的早期识别。我们密切合作,向他们提供完整的原始码和文件访问许可权,他们对 zkEVM 电路和 Boojum 小工具进行了审查和测试,使用了自动化和手动测试的方法。

Boojum: 从审查到测试

这将带我们来到今天,我们分阶段推出的下一步:主网影子模式!我们很高兴地宣布,我们现在正在与现有的证明系统并行执行新的证明系统,儘管 Boojum 目前仅处于测试阶段。我们已经开始为主网区块生成和验证 「影子证明」。

这些影子证明对于 zkSync Era 的主网版本并非必需 —— 这仍将由现有的证明系统驱动。我们只是验证这些影子证明以进一步测试和优化系统,但使用的是 zkSync Era 使用者活动的真实生产资料。

Boojum: 从测试到主网

与我们所做的一切一样,安全始终是首要考虑的因素。只有当我们对新系统的测试完全满意时,我们才会考虑迁移,并在未来的几周和几个月内分享更多细节。我们还计划进行进一步的审计和安全评估,以使这个令人兴奋的升级更加接近全面部署,并逐渐淘汰当前的证明系统。

我们相信,Boojum 是 zkEVM 更安全、可扩充套件和高效的下一阶段。