本文深入探讨了zkSync的架构和生态系统,zkSync 是一家致力于开发 zkEVM 的公司,并介绍了 zkSync 的发展历程、融资情况、当前生态以及核心架构(执行、结算和数据可用性)。
zkSync 的旅程始于 2019 年的 EthCC,当时一个小团队致力于使用 zkSNARK 实现 Rollup。 他们的概念验证于 2019 年 1 月推出,其中包括使用 zkSNARK 在以太坊中运行侧链。 从那时起,他们将去中心化作为核心原则。 他们专注于将所有交易数据存储在以太坊中,并考虑采用多运营商模型来处理排序器去中心化模型。
到 2020 年 6 月,该团队取得了重大进展,推出了 zkSync v1 主网。 该版本是他们旅程中的一个重要里程碑,代表了他们最初概念在更大范围内的实际实施。 一年后,在 2021 年 6 月,他们通过发布 zkSync 2.0 测试网(称为 Era)进一步突破了界限。
快进到 2023 年 3 月,zkSync 的完整主网成功启动,标志着该团队取得了一项重大成就。 这一发展代表了该平台的成熟及其为更广泛采用做好准备。 此次发布是第一个部署在以太坊 Rollup 生态系统中的主网 zkEVM。
目前,该团队正在努力使 zkSync 开源。 这将允许从 ZK-Stack 中单独部署 ZK rollup 链,使团队能够启动自己的定制 rollup。 有关这一激动人心的发展的更多详细信息预计将在不久后公布。
zkSync 和 Matterlabs 的所有推文都可以在此链接中找到。
zkSync 背后的团队 Matterlabs 已经积累了大量资金来进一步实现其使命。 通过最近于 2022 年 11 月完成的 C 轮融资,他们已成功将其总融资额提高到 4.58 亿美元。 这一数字包括各种投资轮次和一个专门的生态系统基金。 这包括一个单独的 2 亿美元的生态系统基金、2 亿美元的 C 轮融资、由 a16z 领投的 5000 万美元的 B 轮融资以及 800 万美元的 A 轮融资和种子轮融资。
所有这些资源加在一起,为 Matterlabs 提供了必要的财务支持,以推进其 zkSync 使命,加快其发展步伐,并促进更广泛的生态系统内的增长。 Matterlabs 拥有的总资金是主要区块链项目中最大的资金之一。
(来源: zkSync Insider)
多年来,zkSync 取得了显著的进展和增长。 zkSync v1(现在称为 zkSync Lite)在 2020 年 12 月突破了一个里程碑,当时它的总锁定价值 (TVL) 超过 100 万美元。 从那时起,zkSync 生态系统的 TVL 呈指数级增长。 截至目前,它已超过 6.5 亿美元,使 zkSync 成为以太坊生态系统中第三大 Layer 2 Rollup。
(来源: L2BEAT — Layer 2 生态系统的状态)
(来源: zkSync Era — L2BEAT)
快进到 2023 年 6 月,zkSync 拥有一些令人印象深刻的关键指标。 它是每秒交易数 (TPS) 排名第一的 rollup,尽管在 30 天的时间里略微落后于 Arbitrum。 它拥有最快的 TVL 增长率,并且是 Layer 1 上支付的汇总费用领先的 rollup。
此外,唯一钱包的数量也在增加,表明用户采用率正在提高。 同时,桥接到 zkSync 的以太坊数量也在增长。
(来源: zkSync 生态系统 — dapps 的时代)
2.2.1 Argent
Argent 是一个基于以太坊的加密货币的非托管移动钱包,它为管理数字资产提供了安全且用户友好的体验。
Argent 具有独特的安全模型,旨在保护用户资产,即使用户的手机丢失或被盗。 此模型包括生物特征身份验证、社交恢复和链上智能合约钱包等功能。 Argent 是一款具有多重签名安全性和社交恢复功能的钱包,以太坊创始人 Vitalik Buterin 表示这是他“保护钱包的首选方法”。
2.2.2 SyncSwap
SyncSwap 是 zkSync Era 中最大的 DeFi 协议。 它是基于 AMM 的 DEX,并在 AMM 设计中提供了各种重要功能。 它为各种代币提供了一个 AMM 池,具有 62 个池,重要的属性如下
2.2.3 Tevaera
Tevaera 的游戏生态系统为游戏世界带来了冒险和技术的独特融合。 Teva Games 提供设置在自然环境中的多类型游戏,并通过中央守护者角色故事情节链接在一起。 第一个多人游戏将与 Tevaera 2.0 版本一同首次亮相,提供以加密货币为主题的能量提升和多样化游戏模式的刺激游戏体验。
生态系统通过链上游戏基础设施得到进一步增强,该基础设施由 Teva Core、Teva Chain、Teva Dex 和 Teva Market 组成。
zkSync Era 是一个 Layer 2 协议,旨在解决以太坊的可扩展性问题,利用零知识 (ZK) rollup 结构。 它由 Matter Labs 开发,代表一个 ZK-rollup 平台,其设计重点是用户需求。 该平台旨在在其自定义虚拟机中与以太坊虚拟机 (EVM) 广泛兼容,并针对零知识证明进行了优化。
(来源: matter-labs/zksync-era: zkSync era)
zkSync rollup 操作的阶段可以概括为:
这部分深入探讨 zkSync 的运作方式,重点关注三个基本层:
3.1.1 VM 级别的执行
它运行在 type4 zkEVM 上,这意味着它采用用高级语言(例如 Solidity、Vyper)编写的智能合约代码,然后将其编译为设计为对 ZK-SNARK 友好的语言。
此外,zkSync Era 的一个独特之处在于它使用基于 LLVM 的编译器,该编译器最终将允许开发人员使用 C++、Rust 和其他流行的语言来编写智能合约。
LLVM 框架是一个用于构建智能合约语言工具链的编译器。 其先进的中间表示 (IR) 允许开发人员设计、实施和完善有效的语言特定功能,同时利用广泛的 LLVM 生态系统。
在已建立的工具链中,LLVM 处理 LLVM IR,引入全面的优化,并最终将优化的 IR 转发到 zkEVM 后端代码生成器。
(来源: 概述|欢迎来到我们的文档|zkSync Era)
3.1.2 执行概述
在 zkSync 中,核心应用在管理执行层方面起着关键作用。
它的第一个职责是跟踪 Layer 1 (L1) 智能合约的存款或优先操作。 这种机制对于确保 zkSync 与以太坊网络的无缝集成至关重要,因为所有从以太坊网络发起的更改都需要在 zkSync Layer 2 (L2) 环境中进行监控和反映。
核心应用程序还负责管理内存池 (mempool),该内存池收集传入的交易。 然后,这些交易的集合在队列中等待处理,有效地充当在确认并添加到区块之前的暂存区。
核心应用程序职责的一个组成部分包括从内存池中获取交易、在虚拟机 (VM) 中执行它们以及根据需要调整状态。 本质上,此过程包括拾取交易、处理它们并将结果反映在系统中。
在执行交易后,核心应用程序会生成链区块。 这些区块由已执行和验证的捆绑交易组成。 然后,核心应用程序将这些区块和证明提交给 L1 智能合约。 此过程确保 L1 以太坊链的状态始终与 L2 zkSync 链同步。
为了允许基于以太坊的应用程序的无缝交互,它提供了与以太坊兼容的 web3 API。 这使得 zkSync 对于已经熟悉以太坊生态系统的开发人员和用户来说更易于访问和用户友好。
此结算层负责确保状态转换 zkSync 的完整性。 此验证过程在以太坊中部署的智能合约中完成。 此过程中有两个重要的合约
(来源: zkSync Era — L2BEAT)
3.2.1 执行器合约
proveBlocks 函数在确保 zkSync 系统的完整性和安全性方面起着核心作用。 它的主要工作是验证已提交区块的 zk-SNARK 证明。 以下是其工作原理的简化说明:
简而言之,proveBlocks 函数就像一个警惕的守门人,确保以正确的顺序验证区块,zk-SNARK 证明准确无误,并相应地更新系统状态。 它的目标是防止执行无效区块,从而确保 zkSync 系统的整体安全性和完整性。
3.2.2 验证器合约
这是实现上述验证逻辑的地方。 它通过检查 zk-SNARK 证明来验证提交的数据,从而充当 zkSync 的保护。 验证器合约用于验证提交给 zkSync 的数据是否有效。
验证器合约存储“验证密钥”,该密钥用于验证这些 zk-SNARK 证明。 每当 zkSync 想要提交更新时,它会生成一个 zk-SNARK 证明,并通过执行器合约将其提交给验证器合约。
然后,验证器合约使用验证密钥来检查证明是否有效。 如果有效,它知道更新是合法的,而无需查看实际数据。 如果无效,它会拒绝更新。
通过验证这些证明,验证器合约确保只有正确且有效的数据才能被 zkSync 接受。 这对于安全性和防止无效状态更改至关重要。
系统的这一部分充当档案,存储所有交易信息(输入)、系统修改(输出)和证明。 zkSync 使用智能合约接口来设置其数据可用性 (DA) 策略。 zkSync 计划提供多种 DA 选项,以降低成本和保护隐私。
3.3.1 zkPorter
(来源: zkPorter:L2 扩展的突破|通过 Matter Labs)
zkSync 引入了一种名为“zkPorter”的链下数据可用性解决方案。 该工具旨在与 zkSync 的 rollup 系统集成,从而促进 rollup 和 zkPorter 帐户之间的交互。 为了确保 zkPorter 中的数据安全,使用了“守护者”——他们是质押 zkSync 代币并通过签署区块来验证数据可用性的人员。
zkPorter 作为内部共识协议运行,从而实现了大量的交易吞吐量。 为了进行比较,zkSync 2.0 中的标准 ZK Rollup 模式能够处理大约每秒 1,000 到 5,000 笔交易 (TPS)。 相比之下,zkPorter 可以管理每秒 20,000 到 100,000 笔交易,具体取决于交易的复杂性。
使用 zkPorter 的一个权衡是用户必须信任 zkSync 的内部共识机制。 这导致 rollup 解决方案的去中心化程度较低。 用户需要权衡的是选择 zkPorter 以降低成本但降低安全性,还是选择 ZK-rollup 模式以实现最高级别的安全性。
此外,zkSync 2.0 促进了互操作性,允许在 ZK-rollup 和 zkPorter 帐户之间进行无缝交换。 zkPorter 与 Starkware 的 Volition 之间的根本区别在于数据可用性的确定:在 zkPorter 中,此决策是在帐户基础上做出的,而在 Volition 中,该决策是在帐户内的每个交易的基础上做出的。
最近,Matter Labs 宣布即将发布 ZK-Stack。 这将提供一个类似 OP-Stack 的软件来定制和运营 appchain rollups。
OP-Stack 和 ZK-Stack 的共同特征
尽管从哲学角度来看存在相似之处,但从技术和商业角度来看存在差异。 这部分将深入探讨以下角度之间的差异
4.1.1 EVM 等效性
OP-Stack 的 EVM 实现:OP-Stack 的 EVM 经过精心设计,对以太坊的 geth 进行了细微的修改,从而形成了一个几乎与 EVM 完全兼容的系统。 另一方面,ZK-Stack 在 EVM 操作码中进行了一些更改,其中一些操作码不受支持。 尽管进行了这些修改,但影响很小,并且这些项目已经过严格的测试并在现实世界中得到验证。
但是,由于 ZK-Stack 不具有 EVM 等效性,因此发生了一些事件。一个值得注意的实例涉及 921 ETH 被困在智能合约中,因为该合约使用了 transfer 函数。 这个问题已得到有效解决。
4.1.2 本地账户抽象
与 ERC-4337 不同,ZK-Stack 的架构包括一个本地账户抽象 (AA) 功能。 在像 ERC-4337 这样的系统中,有必要建立一个单独的 UserOps 内存池,以允许网络内的帐户抽象。
4.1.3 对隐私的支持
通过利用 Validium,将数据存储在其他机密数据库中可确保隐私,前提是运营商对区块数据保密。 此功能对于企业用户尤其有利。
4.2.1 基础设施运营:OP-Stack 更加直观
运营:zkSync 和 OP-Stack 都通过一个 Sequencer 来运作,该排序器协调交易并将数据存储到以太坊。 然而,zkSync 的运营需要一个证明者。 此证明者应用程序处理服务器生成的区块和关联的元数据,以构建有效性零知识 (zk) 证明。 相比之下,OP-Stack 不需要单独的复杂基础设施来参与证明挑战游戏。
4.2.2 VM 替代方案:ZK-Stack 更有可能提供各种选项
zkSync 使用 LLVM 编译器,该编译器会转换为 zkEVM 字节码,这表明有可能使用其他语言(例如 C++)建立执行环境。
4.2.3 数据可用性:ZK-Stack 提供多种选项
OP-Stack 主要依赖以太坊作为其数据可用性层,将所有交易信息和输出状态根存储在以太坊中。 这种使用导致运营 OP-Stack 链的成本很高。 然而,已经尝试通过将交易数据存储在 Celestia DA 中来抵消这种成本。
ZK-Stack 正在积极研究和开发替代数据可用性解决方案,例如 zkPorter。 这种方法使用户能够根据他们对更高安全性或更低成本的偏好来确定他们的数据可用性。 此外,希望维护数据隐私的企业可以采用像 Validium 这样的解决方案,该解决方案允许数据存储而不披露。
今天,启动一个独立的 rollup 已经成为一个可行的选择,特别是随着 ZK-Stack 和 OP-Stack 等开源软件的公开开发和维护。 此外,Rollup-as-a-Service (RaaS) 平台(例如 Caldera 和 Conduit)大大简化了该过程。
超越开发人员的观点,至关重要的是要实际评估运营 rollup 的潜在成本和收入。 但是,由于存在多个变量,因此预测这些金额可能会很复杂。
随着代码库的重大改进有规律地进行,从 Optimism 最近的 Bedrock 升级中可以明显看出,与运行 rollup 相关的成本正在迅速降低。 这种动态的性质使得准确估计成本和收入具有挑战性。 此外,由于单个实体通常管理所有 rollups,因此与服务器和基础设施相关的特定成本尚未得到广泛认可。 最后,基础代币价格(例如 zkSync 和 Optimism 的 $ETH)的波动性增加了另一层不确定性,因为成本会根据市场情绪而波动。
一些主要的成本和收入如下:
4.3.1 成本
4.3.2 收入
Matterlabs 一直致力于 zkEVM 的开发,并在此过程中取得了重大进展。 尽管不是完全 EVM 兼容(Type4 EVM),但在利用 LLVM 方面似乎具有巨大的潜力。 Matterlabs 的下一个进展阶段是发布 ZK-Stack,这是一个代码库,使开发人员能够利用其强大的代码库来创建自己的 rollups。 该工具承诺在隐私和可扩展性领域具有优于 OP-Stack 的明显优势。
尽管如此,这两个项目仍处于早期阶段,需要大量工作。 必须对其实现相关的成本和收入结构进行全面评估。 此外,一个重大的挑战在于围绕这两个代码库培养一个开发人员生态系统。 详细的分析和战略规划对于确保平台及其相关技术的可持续未来至关重要。
我希望这两个项目都蓬勃发展,并且公开构建和共享路线图成为 web3 领域的常态。
\* 我目前正在使用链上数据分析 rollups 的收入和成本结构。 如果你对潜在的合作感兴趣,请打开 DM。
感谢 Kate 设计本文的图形, M3TA 提供有关 zkSync 上链上数据的宝贵见解。
Four Pillars 是一家总部位于首尔的全球加密研究公司,由韩国最具影响力的区块链研究人员组成。 通过强大的研究和治理技能,它通过提供高质量的研究文章,同时支持协议扩展到韩国和全球市场,帮助各种市场参与者轻松加入区块链行业。
- 原文链接: medium.com/fourpillars/s...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!