本文介绍了零知识 Rollup(ZK Rollup)的概念、工作原理以及在以太坊扩展中的作用,并对比了StarkNet、zkSync、Polygon zkEVM、Aztec和Scroll等多个主流ZK Rollup项目,最后还概述了其他有潜力的ZK Rollup解决方案和如何在ZK Rollup上构建应用。
零知识 Rollup (ZK Rollup, ZK-rollups, ZKR) 是 Web3 中最热门的趋势之一。 这一概念在扩展以太坊方面的作用使其在 2022-2024 年获得了主流采用。
在本文中,GetBlock 将介绍 ZK Rollup 的基本原理,并描述利用它进行 DeFi 设计的最受欢迎的项目。
ZK Rollup 旨在以太坊主网之外处理一些交易数据,以节省其计算资源,并使其操作更快速且具有成本效益。
因此,考虑到所有的限制和挑战,ZK Rollup 技术是在交易吞吐量和使用成本方面扩展以太坊最有希望的方式。
在 Web3 的上下文中,ZK Rollup 代表了一类二层以太坊 (ETH) 扩展解决方案。与其他 L2 工具(状态通道、Optimistic Rollup)类似,它们部分在链外处理交易数据,以减少必须发布到区块链的数据量。
图片来自 HackMD
每个 ZK Rollup 系统都包含三个对于其安全有效运行必不可少的元素:
从技术上讲,ZK Rollup 将交易捆绑(或“ Rollup ”)成在链下执行的批次。 ZK Rollup 通过智能合约与以太坊主网交互:一旦交易被“ Rollup ”,证明者就会生成加密证明并将数据传输到基于以太坊的智能合约。
简而言之,ZK Rollup 压缩数千笔交易,并以仅一笔交易的速度和价格在以太坊上处理它。在这样做的同时,ZK Rollup 试图保护数据免受第三方查看或以某种方式篡改。
通常,在“ ZK Rollup ”类别中有两类主要项目。第一个代表“ ZK Rollup ”本身的子类:它们是使用此技术来扩展以太坊的区块链。
利用第一类的应用程序就像以前使用以太坊或 Polygon 一样,代表了第二类。
以下是一些领先的“ ZK Rollup ”- 区块链的示例:
让我们总结一下关于 2024 年一些流行的 ZK Rollup 项目的基本知识。
N | 名称 | 主网上线时间 | TVL,百万美元 | Token | 技术 |
---|---|---|---|---|---|
1 | StarkNet | 2023 年 4 月 | 148 | STRK | zk-STARKs, UTXO-based |
2 | zkSync | 2023 年 3 月 | 501 | N/A | PLONK, account-based |
3 | Polygon zkEVM | 2023 年 3 月 (Beta) | 120 | MATIC | zkEVM |
4 | Aztec | 2022 年 7 月 (针对 Aztec Connect) | 5 | N/A | zk-SNARKs |
5 | Scroll | 10 月 | 64 | N/A | zkEVM |
现在,让我们回顾一下 ZK 技术的一些最流行的实现、它的优势、挑战和限制。
StarkNet 由以色列 Web3 建设者 StarkWare Labs 开发,是以太坊领域中首批可行的基于 ZK 的系统之一。
StarkNet 是一个用 Cairo 编写的无需许可的 ZK Rollup 区块链,Cairo 是一种原创编程语言。2018 年初,零知识可扩展透明知识论证 (ZK-STARK) 的发明者,ZK 协议之一的 Eli Ben-Sasson 介绍了 StarkNet 。
图片来自 StarkNet Ecosystem
2020 年,它的第一个实现 StarkEx 上线,以扩展选定的以太坊 dApp 的运营:Rhino,Sorare 等。
StarkNet 的架构包括三个链下组件:Sequencer、Prover 和 Full Node 。Sequencer 从用户那里接收交易,Prover 将它们批量处理并创建密码学有效性证明,而 Full Nodes 跟踪系统状态的变化。
此外,它还有两个链上组件:Verifier 和 StarkNet Core 。Verifier 接收密码学证明,而 Core 更新系统以确保 L1-L2 的一致性。
通常,与 Optimistic Rollup 等其他扩展技术相比,ZK-STARK 被认为更安全且更具可扩展性。例如,将来 StarkNet 中将会有更多的 Prover 。
此外,它默认具有抗量子性,并且更容易定制。
一些研究人员批评了将 StarkNet 连接到以太坊的智能合约的设计以及 Sequencer/Prover 交互的限制。
zkSync 由 Matter Labs 开发,其第一次迭代(现在称为 zkSync Lite )于 2020 年 6 月推出。在 2024 年,它是 ZK Rollup 领域的关键新闻制造者。
ZK Rollup 解决方案 zkSync 揭示了扩展以太坊的另一种方法。现在它由两个独立的区块链组成: zkSync Lite (以前称为 zkSync 1.0)和 zkSync Era (以前称为 zkSync 2.0 )。
图片来自 zkSync
zkSync 1.0 是 ZK 技术的第一个商业上可行的实现,它完成了九位数的 TVL,而 zkSync Era 是第一个 zkEVM 区块链,即基于 ZK 的 L2 网络,它可以运行与为“原生”以太坊虚拟机 (EVM) 编写的应用程序相同的代码;此功能称为“EVM 等效”。
自 v1.0 版本以来,zkSync 一直在利用 PLONK,即“知识的普适非交互式论证的拉格朗日基置换”。此开发用通用且可更新的设置取代了特定于应用程序的受信任设置,从而大大减少了 dApps 开发的时间和精力。
zkSync 2.0 除了 EVM 等效之外,还拥有古怪的基础设施,其中“常规”的 Full Node 、Prover 和 Interactor 配备了 Paranoid Monitor ,后者会提醒 Matter Labs 注意事件。
zkSync 是第一个通过其 zkPorter 协议添加对分片潜在支持的 ZK Rollup 项目。它还支持 Zinc 之外的各种智能合约语言,Zinc 是它的内部语言。
此外,zkSync 向用户收取几乎可以忽略不计的费用。正如 L2Fees Info 显示的那样,截至 2024 年第一季度,它的产品是第二便宜的。
2023 年,一些用户报告说 zkSync 2.0 网络上的 L2 到 L1 提款速度很慢。
Polygon zkEVM 是由蓝筹区块链生态系统 Polygon Network (MATIC) 开发的第一个 zkEVM 解决方案。
Polygon zkEVM 于 2023 年 3 月推出,利用 100% 的 EVM 等效性以及 ZK 证明的安全性和资源效率。
另请参阅:https://getblock.io/blog/polygon-matic-launches-a-news-gen-ls-scaling-solution-ethereum/
它允许基于以太坊和 Polygon 的 dApp 迁移到 L2 区块链,而无需更改其代码库。
Polygon zkEVM 开创了递归 STARK 的应用。它使 zkEVM 中最昂贵的操作(Keccak 、ECDSA 和 Recursion)的性能提高了 100 倍。
它的 Prover 元素是 L2 领域中最强大的:它能够在普通的 CPU 服务器(64 核)上仅用 300 秒验证 50 万个 gas 单位。
与 EVM 的完全等效(因此,与所有 EVM 生态系统区块链的完全等效)使 Polygon zkEVM 成为有兴趣离开 L1 的 dApp 的首选解决方案。此外,它还得到了 Polygon (最大的 EVM 兼容区块链)的巨大“生态系统效应”的支持。
一些用户批评 MATIC token 在 zkEVM 操作中的作用,而另一些用户则对高额费用感到惊讶:它比大多数竞争对手的费用更高。
Aztec 于 2021 年推出,是首个专注于使以太坊私有的 L2 解决方案生态系统,因为它为私有和公共智能合约解锁了机会。
Aztec 将自己宣传为第一个混合 ZK Rollup 。实际上,它是 ZK 层的组合:一层 ZK 基础设施加密交易以使其私有,第二层 ZK 在将交易发送到以太坊之前压缩交易。
2022 年,它为几个主流以太坊 dApp 引入了以隐私为中心的桥接解决方案 Aztec Connect 。
Aztec 利用 Noir ,它自己的智能合约语言。与它的所有竞争对手不同,Aztec 与 EVM 不兼容,因为它在以太坊虚拟机之外工作。
该协议利用其自己基于未花费交易输出模型 (UTXO) 的状态树、公共状态树(其工作方式与以太坊熟悉的 Patricia-Merkle 树类似)和零知识执行环境。
Aztec 比所有竞争对手的解决方案都具有无可争议的优势:它优先考虑使用智能合约的所有操作的隐私,以便开发人员可以将私有状态集成到他们的设计中。
Aztec 不支持 Solidity ,Solidity 是基于以太坊的 dApp 的最主流的编程语言。此外,在加速监管机构的追捕中,所有隐私解决方案都可能成为全球执法部门的目标。
与 Polygon zkEVM 不同,Scroll 是以太坊上的基于 zkEVM 的 ZK Rollup 。这意味着它仍然 100% 等效于以太坊,并且适用于 L1 dApp 迁移。
Scroll 于 2021 年推出,正在缓慢但肯定地接近其主网发布。尽管仍处于测试阶段,但在最新一轮融资后,它的估值已超过 16 亿美元。与其他 zkEVM 产品一样,Scroll 将 EVM 等效性作为其主要的“杀手级功能”优先考虑。
Scroll 融合了所有最先进的 EVM 开发的优势。它在“字节码级别”上 100% 等效于 EVM,它利用了熟悉的 Solidity 语言,因此,比以往任何时候都更容易且毫不费力地从 L1 迁移到 L2 。
首先也是最重要的是,它等效于以太坊。然后,它完全由 VC 支持,因此 Scroll 不与单个市场参与者相关联,这使其更具民主性和去中心化。Scroll 由一群备受瞩目的以太坊资深人士开发。
Scroll 肯定落后于 zkEVM 竞赛中的竞争对手:在 2023 年初,该产品仍处于 Alpha 测试网阶段。因此,使其具有商业可行性还需要时间。它的主要竞争对手 Polygon zkEVM 和 zkSync 已经进入了开发的下一阶段。
除了顶级 ZK Rollup 之外,还有许多有前途的解决方案正在开发中。此外,一些领先的 dApp 创建了他们自己的基于 ZK 的机制。
Boba Network 是第一个基于 ZK 证明的多区块链 L2 扩展解决方案。它通过 ZK Rollup 帮助从 BNB Chain 到 Moonriver 的多个 EVM 生态系统区块链进行扩展。它的 zkBNB 是 BNB Chain 的开创性扩展器,在 2023 年抢占了头条新闻。
与 Polygon zkEVM 不同,Linea 是 ConsenSys (以太坊领域最大的公司实体)的 zkEVM 实现。除了 100% EVM 等效之外,Linea 区块链还将与 MetaMask 原生集成,MetaMask 是最受欢迎的链上钱包和主流开发工具平台 Truffle 。截至 2024 年 1 月,Linea 以 Alpha 主网的形式提供。
Orbis 协议是 Cardano (第二大权益证明区块链)的首个 ZK Rollup 。它利用 zkSNARK 技术来扩展 Cardano ,因为 dApp 对区块链的兴趣加速了。
FTX 的崩溃和相关的市场不确定性使团队停止了开发:现在该项目已完全开源,并由 GitHub 爱好者支持。
早期区块链 Taiko 将自己宣传为与以太坊等效的 ZK Rollup 。它的架构拥有 Proposer 、Prover 和 Node Runner 。Taiko 优先考虑 EVM 等效性,而不是生成 ZK 证明的速度。因此,它支持所有以太坊操作码,但在 L2 轨道上。
ImmutableX 是第一个专注于 L2 扩展技术实际使用的平台。也就是说,由于先进的扩展方法,它提供了无 gas 的 NFT 铸造。它的专有 Immutable zkEVM 是一个专为 GameFi 领域量身定制的 ZK Rollup 链。它为基于区块链的游戏和元宇宙提供整体 EVM 兼容性。
Fox 是一个古怪的以太坊 ZK Rollup ,它融合了 zkEVM 的优势和它自己的技术,即零知识快速客观知识论证,缩写为 ZK-FOAKS 。它使用并行计算,因此为以太坊之上的三层解决方案铺平了道路。Fox 使用 Solidity 和 Rust 编程语言。
Loopring 是最古老的以太坊扩展协议之一:它在 2019 年初为这项挑战提供了第一个解决方案。现在,它将自己宣传为用于支付和交易的 ZK Rollup 。它的 tokenomical 设计由 LRC 实用程序和治理 token 支持。
Ola 是以太坊上第一个专注于可编程隐私的 L2 区块链。简而言之,它允许开发人员选择基础设施的这个或那个元素应该是公共的还是私有的。Ola 融合了 UTXO 模型、ZKVM 和 ZK-ZKVM 工具的优势。
Metis 可以说是以太坊生态系统中最便宜的 Rollup 解决方案。它开创了 Rollup 的混合方法,因为它融合了 ZK Rollup 和 Optimistic Rollup (另一种扩展以太坊的方法)的优势。Metis 全新的智能 Layer 2 解决方案融合了 ZK Rollup 的隐私性和 Optimistic Rollup 的速度。Metis Andromeda 区块链的 TVL 超过 1.08 亿美元,是以太坊上第五大 L2 。
Mina 是一个专注于 zkSNARK 的隐私区块链。它不是建立在以太坊本身之上的,而是利用了它的基于帐户的模型。Mina 开创了 zkApps 的概念,即仅在 ZK 网络之上运行的区块链应用程序。
在本节中,我们将演示基于 ZK 的 dApp 开发的最短指南。例如,要在 StarkNet 上开发 token,区块链工程师需要遵循一些简单的步骤。
首先,请确保你在顶级区块链节点提供商 GetBlock 上拥有一个帐户 。GetBlock 是首批推出 StarkNet 节点 的公司之一,因此在构建你的第一个基于 StarkNet 的合约时,请不要犹豫免费使用它。
设置开发环境:确保你拥有一个包含必要工具的开发环境。这通常包括 Node.js 、NPM (Node Package Manager)和你选择的代码编辑器。
安装 StarkNet SDK:使用 NPM 安装 StarkNet SDK,该 SDK 提供与 StarkNet 交互的必要工具和库。你可以通过在终端中运行以下命令来安装它:
1
npm install --global starknet-sdk
1
starknet-sdk init getblock_starknet_token
编写合约代码:在你的项目目录中,导航到 contracts 文件夹。你会找到一个名为 contract.cairo 的示例合约文件。在代码编辑器中打开此文件,并使用用于 StarkNet 合约的编程语言 Cairo 定义 token 的合约逻辑。实现诸如 token 转移、余额和其他相关功能之类的功能。
编译合约:编写合约代码后,你需要将其编译为与 StarkNet 兼容的格式。使用 StarkNet SDK 通过运行以下命令来编译合约
1
starknet-sdk compile contracts/contract.cairo
这将生成一个带有 .json 扩展名的输出文件,表示已编译的合约。
部署合约:要将已编译的合约部署到 StarkNet,你需要与 StarkNet 部署提供商进行交互。一种选择是使用 StarkNet Studio ,它提供了一个基于 Web 的界面,用于部署和与合约进行交互。或者,你可以使用 StarkNet SDK 的部署工具。运行以下命令以部署你的合约:
1
starknet-sdk deploy compiled/contract.json --network NETWORK_NAME
将 NETWORK_NAME 替换为你希望部署到的适当的 StarkNet 网络(例如,“mainnet”或“ropsten”)。
ZK Rollup 是以太坊和 EVM 兼容区块链顶部的二层网络。它们在链下处理交易数据,以提高以太坊主网的容量。
流行的 ZK Rollup 使用零知识证明来保护广播到以太坊的数据的完整性。
一般来说,它提供了将压缩交易广播到以太坊主网的不同方法。 Optimistic Rollup 假设每个证明都是正确的,而 ZK Rollup 验证每个加密数据。
它显着降低了(至少 100 倍)以太坊的使用成本,同时保持了相同的安全性和去中心化水平。
通过复杂的密码学方法,有关交易的数据被加密。尝试猜测受现代 ZKP 技术保护的消息中写的内容是极其荒谬的。
所有 ZK 叙事产品都处于早期阶段,因此它们的原生 token 容易受到波动性加剧的影响。但是,MINA 、MATIC 和其他一些 ZK token 在 2023 年第一季度上涨。此外,社区预计 STRK 、ZKS 空投。
大部分情况下,分析师和用户都担心 ZK 证明生成的成本以及 Prover (即 ZK Rollup 中的关键验证机制)的中心化。
更多问题?联系
- 原文链接: getblock.io/blog/top-zk-...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!