# ZK Rollup

> ZK Rollup 是一种以太坊的 Layer 2 扩展解决方案，通过链下处理交易来实现更快的验证、减少拥堵和降低 gas 费用。

- Canonical URL: https://iq.wiki/zh/wiki/zk-rollup
- Categories: Cryptoassets
- Created: 2023-08-10T09:02:55.766Z
- Last updated: 2023-12-16T18:56:48.553Z
- Source: IQ.wiki — the world's largest blockchain and crypto encyclopedia (https://iq.wiki)

---

**ZK Rollup**，也称为零知识[rollup](https://iq.wiki/wiki/rollup)，为[以太坊](https://iq.wiki/wiki/ethereum)网络提供了一种扩展解决方案，通过在[主网](https://iq.wiki/wiki/mainnet)之外处理交易来提高其吞吐量。它是一种 Layer 2 扩展解决方案，可以更快地验证[区块链](https://iq.wiki/wiki/blockchain)交易，同时最大限度地减少 [gas](https://iq.wiki/wiki/gas) 费用。 [\[1\]](#cite-id-wkce3o5hnse)


ZK [Rollup](https://iq.wiki/wiki/rollup) 提供了高效且更快的可扩展性解决方案，因为它结合了链上和链下流程。由于 Merkle 树是 ZK Rollup 的组件之一，因此它可以成功地比 Layer 1 区块链更快地验证交易。 [\[1\]](#cite-id-wkce3o5hnse)

## 概述

ZK Rollup 通过执行链下计算，同时专注于减少需要在链上发布的数据量，为[以太坊](https://iq.wiki/wiki/ethereum)主网提供了一种扩展解决方案。它批量处理数千笔交易，然后仅将最少量的数据摘要发布到[主网](https://iq.wiki/wiki/mainnet)，以提高[区块链](https://iq.wiki/wiki/blockchain)的可扩展性并最大限度地减少网络拥堵。ZK [Rollup](https://iq.wiki/wiki/rollup) 协议有三个主要组成部分：一个[智能合约](https://iq.wiki/wiki/smart-contract)，用于管理链之间的交互；一个证明者，用于在 Layer 2 链上生成交易有效性的密码学证明；以及一组验证者，他们是一组负责确认证明并将其提交给智能合约的节点。 [\[1\]](#cite-id-wkce3o5hnse)[\[2\]](#cite-id-guje0hp72rv)

ZK Rollup 使用密码学有效性证明，也称为零知识证明 (ZKP)，来验证捆绑的交易。这些有效性证明被提交到部署在[以太坊](https://iq.wiki/wiki/ethereum)区块链上的[智能合约](https://iq.wiki/wiki/smart-contract)，以便更新 ZK Rollup 的状态。与 [Optimistic Rollups](https://iq.wiki/wiki/optimistic-rollup) 相比，这种方法只需要将有效性证明发布到链上，而不是所有交易数据，从而提供了一种更具数据效率的解决方案。 [\[2\]](#cite-id-guje0hp72rv)[\[3\]](#cite-id-xuiz327we)

### ZK Rollup 的工作原理

使用密码学有效性证明来验证链上交易而无需交互或信任的能力是 ZK [Rollup](https://iq.wiki/wiki/rollup) 的一个重要特征。ZK Rollup 工作原理的第一步是用户签署交易并将其提交给证明者，证明者验证并将其排队。然后，证明者将队列中的数千笔交易批量处理成一个区块，并生成其有效性的零知识证明 (ZKP)。验证证明只需几毫秒，甚至无需透露任何交易信息。其次，证明者将证明和少量数据（如状态根和交易根）作为单个交易提交给[以太坊](https://iq.wiki/wiki/ethereum)网络。最后，[智能合约](https://iq.wiki/wiki/smart-contract)验证证明并相应地更新其状态。如果要提取资金，则需要退出请求，该请求在以太坊区块中提交。作为回应，[智能合约](https://iq.wiki/wiki/smart-contract)立即解锁并转移资金。ZK Rollup 中没有提款等待期，因为它们由证明验证，这与[乐观 rollup](https://iq.wiki/wiki/optimistic-rollup) 不同，后者可能需要大约一周才能完成。 [\[1\]](#cite-id-wkce3o5hnse)[\[2\]](#cite-id-guje0hp72rv)[\[4\]](#cite-id-c5t8gzjrnim)

## ZK Rollup 与以太坊网络的交互

ZK [Rollup](https://iq.wiki/wiki/rollup) 协议在[以太坊](https://iq.wiki/wiki/ethereum)之上运行，并由[智能合约](https://iq.wiki/wiki/smart-contract)管理。其核心架构由两个组件组成：链上合约和链下虚拟机 (VM)。 [\[2\]](#cite-id-guje0hp72rv)

### 链上合约

[以太坊](https://iq.wiki/wiki/ethereum)网络充当 ZK Rollup 的基础层（Layer 1）。网络上的[智能合约](https://iq.wiki/wiki/smart-contract)，包括存储 [rollup](https://iq.wiki/wiki/rollup) 区块、监控状态更新和跟踪存款的主合约，控制 ZK Rollup 协议。验证者也是一种链上合约，用于验证区块生产者提交的零知识证明。 [\[2\]](#cite-id-guje0hp72rv)

### 链下虚拟机 (VM)

链下 VM 充当 ZK Rollup 协议的第二层（Layer 2）。这是交易执行和状态存储发生的地方，以及验证交易有效性的地方。当有效性证明在[以太坊](https://iq.wiki/wiki/ethereum)[主网](https://iq.wiki/wiki/mainnet)上验证时，链下 VM 中的状态转换得到保证。 [\[2\]](#cite-id-guje0hp72rv)

## 决定 ZK Rollup 类型的因素

决定 ZK Rollup 类型的各种因素是证明系统、电路设计和数据可用性解决方案。 [\[1\]](#cite-id-wkce3o5hnse)

### 证明系统

这是指用于验证链上交易的 ZKP 类型。不同的证明系统具有不同的属性和权衡，例如证明大小、验证时间、可信设置或证明者时间。主要的证明系统类型是 [ZK SNARKs](https://iq.wiki/wiki/zk-snark)（简洁、非交互式的知识论证）、ZK STARKs（简洁、透明的知识论证）、PLONK 和 bulletproofs。一些利用不同证明系统的 ZK Rollup 包括 Aztec ([ZK SNARKs](https://iq.wiki/wiki/zk-snark))、StarkWare (ZK STARKs) 和 zkSync (PLONK)。 [\[1\]](#cite-id-wkce3o5hnse)



### 电路设计

电路设计是关于在 Layer 2 链上编码和执行交易。电路设计的三个主要组成部分是可扩展性、可用性和兼容性。主要电路设计可以是基于帐户的、基于 ZKVM 的或基于 UTXO 的。一些使用不同电路设计的 ZK[ Rollups](https://iq.wiki/wiki/rollup) 包括 zkSync（基于帐户）、ZkPorter（基于 ZKVM）和 StarkWare（基于 UTXO）。 [\[1\]](#cite-id-wkce3o5hnse)

### 数据可用性解决方案

这是指链下完整区块数据的存储和访问。数据解决方案的示例包括 [IPFS](https://iq.wiki/wiki/ipfs)（去中心化存储网络）、Validium（数据可用性抽样）、Celestia（数据可用性委员会）等。一些使用不同数据可用性解决方案的 ZK Rollup 包括 zkSync (IPFS)、ZkPorter (Celestia) 和 StarkWare (Validium)。 [\[1\]](#cite-id-wkce3o5hnse)

## 优点

ZK Rollup 有许多优点，包括更低的 gas 费用、更高的吞吐量、安全性和完整性、隐私功能和更快的交易最终确定周期。 [\[1\]](#cite-id-wkce3o5hnse)

### 更低的 Gas 费用

ZK Rollup 降低了 gas 成本并提高了效率，因为它能够为交易批次生成零知识证明，并通过压缩数据提交最少的链上数据，从而降低了在链上发布数据的成本。 [\[1\]](#cite-id-wkce3o5hnse)[\[5\]](#cite-id-s5x5ujpvzw)

### 更高的吞吐量

ZK Rollup 通过避免基础层拥堵和限制来实现更快的交易速度和更短的确认时间。有人建议 ZK [Rollup](https://iq.wiki/wiki/rollup) 可以将吞吐量提高多达 100 倍。 [\[1\]](#cite-id-wkce3o5hnse)

### 安全性和完整性

ZK [Rollup](https://iq.wiki/wiki/rollup) 使用无需信任的密码学框架来确保其安全性。无需信任的加密机制是确保安全性和维护完整性的更安全选择，因为它们允许用户处理其交易或存储其数据，而无需信任第三方。 [\[1\]](#cite-id-wkce3o5hnse)[\[5\]](#cite-id-s5x5ujpvzw)

### 隐私功能

由于使用 ZKP 来验证链上交易而不泄露任何信息，因此具有很高的交易隐私级别。ZK [Rollup](https://iq.wiki/wiki/rollup) 提供的另一个隐私功能是隐藏交易金额或接收者。 [\[1\]](#cite-id-wkce3o5hnse)

### 更快的交易最终确定周期

用户可以立即收到有关其交易的反馈和最终确定，因为他们只需要[区块链](https://iq.wiki/wiki/blockchain)来验证运营商提交的证明的有效性。 [\[1\]](#cite-id-wkce3o5hnse)[\[5\]](#cite-id-s5x5ujpvzw)
