作者:xpara 编译:Cointime.com 237
关键要点
1、Matterlabs是zkSync背后的公司,他们一直致力于开发独特的zkEVM并构建优秀的产品。
2、目前,zkSync Era正在经历增长,表现出令人印象深刻的指标和各种项目的部署。
3、通过研究zkSync的三个关键层(执行层、结算层和数据可用性层),可以理解其架构。
4、zkSync的基础代码库ZK-Stack和OP-Stack可能有相似的理念,但从dapp开发者、核心开发者和业务运营者的角度来看,可以找到明显的区别。
zkSync的足迹
1、zkSync的简要历史
zkSync的旅程始于2019年的EthCC,当时他们是一个小团队,其致力于通过zkSNARK实现Rollup。他们的概念验证于2019年1月提出,涉及使用zkSNARK在以太坊上操作一个侧链。从那时起,他们将去中心化作为核心原则。他们专注于将所有交易数据存储在以太坊上,并考虑采用多操作员模型来处理序列化去中心化模型。
到2020年6月,该团队在zkSync v1主网的推出方面取得了重大进展。这个版本是他们旅程中的一个重要里程碑,代表着他们的最初概念实际实施在更广泛的范围内。一年后的2021年6月,他们进一步突破了界限,发布了被称为Era的zkSync 2.0测试网。
时间快进到2023年3月,zkSync的完整主网成功上线,标志着团队取得了重大成就。这一发展代表了该平台的成熟程度和对更广泛采用的准备。这次发布是第一个在以太坊Rollup生态系统中部署的主网zkEVM。
目前,团队正在努力使zkSync成为开源项目。这将允许从ZK-Stack中独立部署zk rollup链,使团队能够启动自己定制的rollup链。预计很快将公布关于这一令人激动的发展的更多详细信息。
2、资金
作为zkSync背后的团队,Matterlabs已经筹集了大量资金来推动其使命。通过2022年11月进行的最新C轮融资,他们成功将总融资额增加到4.58亿美元。这个数字包括了各种投资轮次和一个专门的生态基金。其中包括一个独立的2亿美元专门的生态基金,2亿美元的C轮融资,由a16z领投的5,000万美元的B轮融资,以及800万美元的A轮和种子轮融资。
1)种子轮:种子轮融资中,Matterlabs从PlaceholderVC、Hashed等投资者那里获得了200万美元。这笔早期的资金注入为他们开始进行zkSync项目的工作提供了重要的基础。
2)A轮:在种子轮融资之后,Matterlabs在A轮融资中额外筹集了600万美元。这笔新的资金注入为推动他们的研发工作,使zkSync更加接近实现提供了动力。
3)B轮:Matterlabs的势头继续增长,在B轮融资中,他们筹集了5000万美元,主要由a16z领投。
4)C轮:Matterlabs筹集了2亿美元。
5)最后,除了这些融资轮次之外,Matterlabs还建立了一个专门的2亿美元生态基金。这个基金专门用于促进更广泛的zkSync生态系统的增长和发展。
所有这些资源的结合为Matterlabs提供了必要的财务支持,以推进他们的zkSync使命,加快其发展速度,并促进更广泛生态系统的增长。总体而言,Matterlabs在主要区块链项目中获得了最大规模的资金支持。
当前生态系统
1、整体状况
多年来,zkSync取得了显著的进展和增长。zkSync v1,现在被称为zkSync Lite,在2020年12月达到了一个里程碑,当时其总锁定价值(TVL)超过了100万美元。从那时起,zkSync生态系统的TVL呈指数级增长。截至目前,其TVL已经超过6.5亿美元,使zkSync成为以太坊生态系统中第三大Layer 2 Rollup。
快进到2023年6月,zkSync在一些令人印象深刻的关键指标上取得了成绩。尽管在30天的时间内稍稍落后于Arbitrum,但它仍然是每秒交易数(TPS)最高的Rollup。它拥有最快的总锁定价值(TVL)增长率,并且是在Layer 1上支付的累计费用最多的Rollup。
此外,其钱包数量也在增加,表明用户采用率正在增加。与此同时,桥接到zkSync的以太坊数量也在增长。
2、重要项目
1)Argent
Argent是一个非托管的移动钱包,用于管理基于以太坊的加密货币,提供安全且用户友好的数字资产管理体验。
Argent拥有独特的安全模型,即使用户的手机丢失或被盗,也能保护用户的资产。该模型包括生物识别认证、社交恢复和链上智能合约钱包等功能。Argent是一个具有多重签名安全和社交恢复功能的钱包,以太坊创始人Vitalik Buterin表示这是他"保护钱包的首选方法"。
2)SyncSwap
SyncSwap是zkSync时代最大的DeFi协议。它是基于AMM的去中心化交易所,并在AMM设计中提供了各种重要功能。它为具有62个池的各种代币提供了一个AMM池,并具有以下重要特性:
A、稳定池:多池允许SyncSwap聚合多个不同的池模型,每个模型都有自己的最佳场景,从而使交易高效。第一个实现的池模型是稳定池,相对于通用的经典池,稳定池支持高效的稳定币交易,使SyncSwap进入大规模的稳定币市场。
B、智能路由:它作为一个流动性聚合器,汇集不同的流动性池和各种池模型,以轻松获得最佳价格。提供多跳和路径拆分功能。
C、动态费用:SyncSwap在其去中心化交易所引入了动态费用,允许用户根据市场条件和社区偏好自定义交易费用。其中四个方面包括可变费用、定向费用、费用折扣和费用委托。这些功能为用户提供了灵活性和适应性,以优化他们的交易策略,并与市场和社区的变化动态保持一致。
3)Tevaera
Tevaera的游戏生态系统为游戏世界带来了冒险与技术的独特融合。Teva Games提供多种类型的游戏,以自然环境为背景,通过中心化的守护者角色故事线相互连接。首款多人游戏将在Tevaera 2.0推出时首次亮相,提供令人激动的游戏体验,包括加密主题的能力提升和多样化的游戏模式。
该生态系统进一步通过链上游戏基础设施进行增强,包括Teva Core、Teva Chain、Teva Dex和Teva Market。
A、Teva Core是一个先进的多人游戏框架。
B、Teva Chain是一个第三层的游戏超级链,促进了向完全链上游戏的过渡。
C、Teva Dex通过自动化的游戏去中心化交易所,为可持续的玩游戏和赚取经济做出贡献。
D、Teva Market允许铸造和交易独特的NFT角色。
zkSync的架构
zkSync Era是一个Layer 2协议,旨在解决以太坊的可扩展性问题,采用零知识(ZK)Rollup结构。由Matter Labs开发,它代表着一个以用户需求为重点设计的zk-rollup平台。该平台旨在通过自定义虚拟机在以太坊虚拟机(EVM)上实现广泛的兼容性,并针对零知识证明进行了优化。
zkSync的Rollup操作可以总结如下:
首先,用户生成一笔交易或优先级操作。
随后,操作员负责处理用户的请求。在成功处理后,操作员创建一个Rollup操作,并将其包含在区块中。
完成区块后,操作员将其提交给zkSync智能合约,以区块承诺的形式。值得注意的是,智能合约验证了某些Rollup操作的部分逻辑。
最后,区块的证明被提供给zkSync智能合约,这一步骤称为区块验证。如果验证成功并与Verifier合约一致,它将验证新状态是否为最终状态。这标志着zkSync Rollup操作的生命周期结束。
这部分介绍了zkSync的运作方式,重点关注三个基本层次:
1)执行:这是导致区块链状态变化或转换的过程。简单来说,它是接收交易并将其应用于前一个状态的过程。
2)结算:通过一个证明系统,确保执行阶段所做的更改准确反映了系统的整体状态。
3)数据可用性:这是系统的记录部分。所有交易数据(输入)、系统变更(输出)和证明都存储在这里。其目的是确保系统的当前状态在需要时始终可以从头开始重建。
1、执行
1)虚拟机级别的执行
它在类型4的zkEVM上运行,这意味着它接收用高级语言(如Solidity、Vyper)编写的智能合约代码,然后将其编译成设计为zk-SNARK友好的语言。
此外,zkSync Era的一个独特之处在于它使用了基于LLVM的编译器,最终可以让开发人员使用C++、Rust和其他流行语言编写智能合约。
LLVM框架是用于构建智能合约语言工具链的编译器。其先进的中间表示(IR)使开发人员能够设计、实现和改进有效的语言特性,同时利用广泛的LLVM生态系统。
在已建立的工具链中,LLVM处理LLVM IR,引入全面的优化,并将优化后的IR转发给zkEVM后端代码生成器。
2)执行概述
在zkSync中,核心应用程序在管理执行层面起着关键作用。
其首要责任是跟踪第1层(L1)智能合约,以处理存款或优先级操作。这个机制对于确保zkSync与以太坊网络的无缝集成至关重要,因为所有从以太坊网络发起的更改都需要被监控并反映在zkSync的第2层(L2)环境中。
核心应用程序还负责管理一个内存池(mempool),用于收集传入的交易。这些交易会在队列中等待处理,实际上充当了一个保持区域,直到它们被确认并添加到区块中。
核心应用程序的重要职责之一是从内存池中获取交易,在虚拟机(VM)中执行它们,并根据需要调整状态。本质上,这个过程涉及接收交易、处理交易,并将结果反映在系统中。
在执行交易后,核心应用程序生成链块。这些块包含已执行和验证的打包交易。然后,核心应用程序将这些块和证明提交给第1层智能合约。这个过程确保第1层以太坊链的状态与第2层zkSync链保持一致。
为了使基于以太坊的应用程序能够无缝交互,zkSync提供了一个与以太坊兼容的web3 API。这使得zkSync对于已经熟悉以太坊生态系统的开发人员和用户更加易于访问和使用。
2、结算
结算层负责确保zkSync状态转换的完整性。这个验证过程在以太坊部署的智能合约中进行。在这个过程中有两个重要的合约:
1)执行器合约:该合约从验证者那里获取区块数据和zkSync状态转换的zk证明。
2)验证器合约:这是一个逻辑合约,允许系统验证执行器合约提供的区块数据和zk证明。
1)执行器合约
proveBlocks函数在确保zkSync系统的完整性和安全性方面扮演着核心角色。它的主要任务是验证提交的区块的zk-SNARK证明。以下是它的工作原理的简化解释:
首先,proveBlocks确保区块按照正确的顺序进行验证。它通过检查接收到的上一个区块是否是区块链序列中需要进行验证的下一个区块来实现这一点。
接下来,该函数开始逐个检查提交的区块。它检查这些区块的哈希值是否与它们在区块链中特定位置的预期值相匹配。这确保了正在验证的区块确实是正确的区块。
然后,函数开始构建所谓的proofPublicInput数组。这是一个列表,成为zk-SNARK证明验证过程的公共输入。该数组包含每个提交区块的区块编号。
之后,利用proofPublicInput数组和一些存储的参数,函数检查zk-SNARK证明。这类似于解决一个拼图,所有的块应该完美地拼合在一起。
如果证明检查通过,函数会更新系统以反映这些区块已经通过验证。就像在清单上的项目旁边打勾一样。
最后,对于每个已经通过验证的区块,函数触发一个称为BlockVerification的特殊事件。这类似于发送一个通知,确认区块的编号、哈希值和承诺已经通过验证。
简而言之,proveBlocks函数就像一位警惕的门卫,确保区块按正确的顺序进行验证,zk-SNARK证明是准确的,并相应地更新系统状态。它的目标是防止无效区块被执行,确保zkSync系统的整体安全性和完整性。
2)验证器合约
这是上述验证逻辑的实现位置。它通过检查zk-SNARK证明来验证提交的数据,充当zkSync的守卫。验证器合约用于验证提交给zkSync的数据是否有效。
验证器合约存储了“验证密钥”,用于验证这些zk-SNARK证明。每当zkSync想要提交更新时,它会生成一个zk-SNARK证明,并通过执行器合约将其提交给验证器合约。
然后,验证器合约使用验证密钥来检查证明是否有效。如果有效,它知道更新是合法的,而无需看到实际数据。如果无效,则拒绝更新。
通过验证这些证明,验证器合约确保只有正确和有效的数据被接受到zkSync中。这对于安全性和防止无效状态更改非常重要。
3、数据可用性
系统的这一部分充当存档,存储所有交易信息(输入)、系统修改(输出)和证明。zkSync使用智能合约接口来设置其数据可用性(DA)策略。zkSync计划提供多种DA选项,以降低成本并增加隐私性。
1)zkPorter
zkSync引入了一种名为“zkPorter”的链下数据可用性解决方案。这个工具旨在与zkSync的Rollup系统集成,促进Rollup和zkPorter账户之间的互动。为了确保zkPorter内部数据的安全性,使用了所谓的“守护者”——他们是抵押zkSync代币的个人,并通过对区块进行签名来验证数据的可用性。
zkPorter作为一个内部共识协议运作,促进了高吞吐量的交易处理。相比之下,zkSync 2.0中的标准ZK Rollup模式每秒能够处理大约1,000到5,000笔交易。而zkPorter可以处理20,000到100,000笔交易,具体取决于交易的复杂程度。
利用zkPorter的一个权衡是用户必须信任zkSync的内部共识机制。这导致Rollup解决方案的去中心化程度较低。对用户而言,需要在zkPorter提供较低成本但降低安全性之间做出权衡,或选择ZK Rollup模式以获得最高级别的安全性。
此外,zkSync 2.0促进了互操作性,允许在ZK Rollup和zkPorter账户之间无缝进行交换。zkPorter和Starkware的Volition之间的基本区别在于数据可用性的确定方式:在zkPorter中,这个决定是基于账户的,而在Volition中,这个决定是在账户内每个交易基础上做出的。
ZK-Stack和OP-Stack
最近,Matter Labs宣布即将发布ZK-Stack。它将提供类似于OP-Stack的软件,用于定制和操作应用链Rollup。
OP-Stack和ZK-Stack的共同特点
1)开源和免费:两者都是在开源许可证下开发的,保证了免费访问。它们鼓励开发人员根据软件进行贡献和构建。
2)互操作性:ZK Stack的Hyperchains概念可以无缝连接到一个无信任的网络,具有低延迟和共享流动性。同时,OP-Stack设想了一个Superchain概念,将所有基于OP-Stack的链连接起来。
3)去中心化:为了实现更加分布式的网络和社区,OP-Stack和ZK-Stack都在即将发布的路线图中明确规划了去中心化的计划。这一举措不仅增加了网络的韧性,还确保了权威和控制的更加公平分布。
尽管在哲学观点上存在相似之处,但在技术和业务观点上存在差异。本部分将深入探讨以下不同的观点:
1)DApp开发者
2)核心开发者
3)商业
1、开发者视角
1)EVM 等价性
OP-Stack 的 EVM 实现:OP-Stack 的 EVM 经过轻微修改,几乎完全与以太坊的 geth 兼容。另一方面,ZK-Stack 对 EVM 操作码进行了一些更改,其中一些操作码不被支持。尽管有这些修改,影响仍然很小,并且这些项目在真实世界中经过了严格测试和验证。
然而,由于 ZK-Stack 不具备 EVM 等价性,导致了一些问题的出现。一个值得注意的例子是921 ETH 被困在一个智能合约中,因为该合约使用了转账功能。这个问题已经得到有效解决。
2)本地账户抽象
与 ERC-4337 不同,ZK-Stack 的架构包括本地账户抽象(AA)功能。在诸如 ERC-4337 的系统中,需要建立一个单独的 UserOps 内存池,以允许网络内的账户抽象。
3)隐私支持
通过利用 Validium,在其他保密数据库上存储数据可以确保隐私,前提是操作员保持块数据的机密性。这个特性对企业用户尤为有利。
2、核心开发者视角
1)基础设施运作:OP-Stack 更直观
运作方式:无论是 zkSync 还是 OP-Stack,都通过一个序列控制器来编排交易并将数据存入以太坊。然而,zkSync 的运作需要一个验证者。这个验证者应用程序会处理由服务器生成的区块和相关元数据,以构建有效的零知识(zk)证明。相比之下,OP-Stack 不需要额外复杂的基础设施参与证明挑战游戏。
2)虚拟机替代方案:ZK-Stack 提供更多潜力的选择
zkSync 使用 LLVM 编译器将代码转换为 zkEVM 字节码,表明可以建立使用其他语言(如 C++)的执行环境。
3)数据可用性:ZK-Stack 提供多样选择
OP-Stack 主要依赖以太坊进行数据可用性层,将所有交易信息和输出状态根存储在以太坊上。这种使用方式导致操作 OP-Stack 链的成本相当大。然而,已经有一些尝试通过将交易数据存储在 Celestia DA 中来抵消这一成本。
ZK-Stack 正在积极研究和开发诸如 zkPorter 等替代数据可用性解决方案。这种方法使用户可以根据对更高安全性或更低成本的偏好来确定数据可用性。此外,希望保持数据隐私的企业可以采用 Validium 等解决方案,允许在不披露的情况下进行数据存储。
3、商业视角:成本与收入
如今,启动独立的 Rollup 成为了一个可行的选择,尤其是由于像 ZK-Stack 和 OP-Stack 这样的开源软件正在公开开发和维护。此外,Caldera 和 Conduit 等 Rollup-as-a-Service(RaaS)平台极大地简化了这个过程。
除了开发者的视角之外,实际评估运营 Rollup 所涉及的潜在成本和收入非常重要。然而,由于存在多个变量,预测这些金额可能很复杂。
由于代码库不断进行重大改进,最近 Optimism 的 Bedrock 升级就是一个明显例子,运行 Rollup 的成本正在迅速降低。这种动态性使得准确估计成本和收入变得具有挑战性。此外,由于通常由单个实体管理所有 Rollup,与服务器和基础设施相关的特定成本并不被广泛认可。最后,基础代币价格的波动性,例如 zkSync 和 Optimism 的 $ETH,增加了另一层不确定性,因为成本可能根据市场情绪而波动。
以下是一些主要的成本和收入:
1)成本
A、L1 发布成本:存储交易、状态根、证明数据的成本。通常,乐观 Rollup 需要更多的发布成本,因为它需要存储原始交易数据进行验证。一些 Rollup 会发布状态差异而不是整个状态数据,以避免进一步的成本。
B、L2 序列控制器运营成本
C、证明成本:对于 zk,生成和验证证明的成本;对于欺诈证明,则是证明挑战的成本。
2)收入
L2 交易费用
可能的 MEV(最大化交易价值),但目前大多数 L2 序列控制器已知不提取 MEV,以避免中心化问题。
总结
Matterlabs 对 zkEVM 的开发投入了大量的精力,取得了显著的进展。尽管不是完全兼容 EVM(Type4 EVM),但利用 LLVM 仍然存在着巨大的潜力。Matterlabs 下一阶段的进展是发布 ZK-Stack,这是一个代码库,将使开发者能够利用其强大的代码库来创建自己的 Rollup。这个工具在隐私和可扩展性等方面有明显优势,相较于 OP-Stack。
然而,这两个项目都还处于早期阶段,需要进行大量的工作。必须对与实施相关的成本和收入结构进行彻底评估。此外,一个重要的挑战在于建立围绕这两个代码库的开发者生态系统。详细的分析和战略规划对确保平台及其相关技术的可持续未来至关重要。
所有评论