Matter Labs:为什么我们未能如期在8月上线zkSync 2.0 ?
撰文:Matter Labs
编译:链捕手
今年3月,Matter Labs表示将在8月上线zkSync 2.0,但如今并没有顺利上线,因而撰文谈及具体原因,以及接下来的上线计划。
2021 年 3 月 27 日,我们宣布了 zkSync 1.x 和 2.0 的计划。
我们成功地将 zkSync 1.x 升级部署到主网,但未能满足我们对 8 月发布 zkSync 2.0 的预测。在这篇文章中,我们将讨论延迟、逐步推出测试网以及公平启动主网。
为什么要延迟?
早在 3 月份,我们就完成了 zkSync 2.0 的设计,并估算了构建所需的时间。由于 gas 费用一直居高不下,我们的设计优先考虑安全性和时间,在效率、优化和与以太坊的兼容性方面进行了一些权衡——由于线路的基本限制,使线路环境适应 EVM 并不简单。
然而,有一个关键决定没有优先考虑主网上线时间:选择 LLVM。虽然从头开始实现自定义编译器会更快,但从长远来看,除了 LLVM 之外别无选择。LLVM 由从事工业级产品(LLVM 是 macOS 和 iOS 不可或缺的一部分)的工程师构建,是生产工业级产品的最先进的编译器框架,迫使我们考虑调试器、链接器、汇编器、反汇编器和二进制实用程序,即使我们只是想快速发布一个编译器。通过利用 LLVM,我们的编译器拥有所有经典优化,超过 20,000 次回归测试和 3,000 次集成 / 可执行测试、低维护负担以及以可以翻译成 LLVM IR 的任何语言编写智能合约的能力。
5 月份,虽然我们的节点和 VM 已准备就绪,但与我们的架构和 LLVM 存在一些无法预料的不兼容性,我们需要额外的时间来集成到框架中。我们不想打开一个缺少三个核心组件之一的测试网,但即使有初始开销,我们仍然坚持我们从一开始就采用 LLVM 的决定。Matter Labs 绝不会在安全性或代码质量方面妥协。遵循最佳工业级实践是缓慢的,但替代方案是使用技术债务进行编程。债务总有一天要还的。
构建 zkSync 2.0 是一个紧张的研发过程:
- 对 snark 友好的 EVM 和相同地址空间中不同的每个帐户数据可用性策略以前从未做过;
- 它需要同时解决编译器、zkEVM 和节点的需求。
由于实现与研究高度相关,很多时候我们找到了一个更好的解决方案,导致更低的成本、更好的兼容性或更方便的接口:
- 我们进行了几次迭代以提高编译器的效率,这为我们提供了如何使我们的 VM 更高效的想法(更多详细信息在技术见解帖子中);
- 我们的 API 和 SDK 与 Web3 API 和 ethers 非常相似,因此我们决定通过额外的 zkSync L2 特定功能来支持两者;
- 我们找到了一种方法来取消交易执行跟踪长度的限制,从而实现任意大的交易。
随着 Gas 价格在 6、7 月平均为 20 Gwei,我们感到时间压力有所减少,当我们看到有明确的方法可以做得更好时,我们不想上线。现在,我们将在发布任何版本之前整合所有改进,以尽可能避免任何破坏性升级。我们现在正在开发的版本比我们三月份发布的版本功能更多,成本更低,并且更兼容和更方便。
然而,我们确实想对你直截了当地说实话。瞄准 8 月份是一个非常雄心勃勃的目标。我们现在很清楚,即使我们放弃了效率和以太兼容性的改进,在质量上不妥协的交付也是不可能的。这就是技术创新边缘研发的本质:任何预测总是围绕着许多未知因素进行猜测。
状态更新
在 6 个月的时间里,我们已经实现并测试了:
- 执行节点
- zkEVM (线路和执行环境)
- Solidity 和 Zinc 编译器(已编译并成功测试 Uniswap v2)
我们正在敲定:
- Web3+ API (完全支持开箱即用的 Web3 API + zkSync L2 特定功能)
- 以太+ SDK
- L1 到 L2 通信(对于抗审查很重要:来自 zkSync 的资金可以通过 L1 交易提取,即使你必须先从智能合约转移它们。)
进行中:
- 将线路 / 证明器和数据可用性协议集成到执行器节点中
- L2 到 L1 通信(例如从 L2 触发 L1 合约)
- Vyper 开发人员:Vyper 团队目前正在构建 Vyper-to-LLVM 前端,我们的编译器团队正在与他们密切合作,以确保你可以在 zkSync 2.0 上的 Vyper 中无缝部署智能合约。
测试网计划
我们将分三个阶段开放测试网:
North Star
几周后,我们将开始发布一组协议的第一个版本。我们希望与这些团队密切合作,以便在我们发布开放测试网时促进反馈和修复的快速迭代,并最大限度地减少错误和挑战。如果你对此阶段感兴趣,请填写此表格。
Spotlight Search
然后,我们希望向愿意创建内容的人开放。这可以从推文线程到博客文章,再到完整的开发人员演示视频。我们的目标是在我们完全打开我们的测试网时可以随时使用各种有用的资源,并作为我们系统的另一轮测试。如果你喜欢写作或制作技术内容,请填写此表格。
Kindergarten
测试网对所有人开放。
主网上线
Matter Labs 致力于构建一个中立的第 2 层,所有协议和基础设施都可以以公平公正的方式部署和运行。
因此,我们的主网发布是一个公平的发布对我们来说至关重要:我们将为每个人提供时间在同等条件下在 zkSync 上准备和启动项目。
我们快到终点了!预计不会有更大的变化,我们正在努力集成所有活动部件,实现方便的 SDK,并编写文档。