﻿---
title: "ZK Rollup"
description: "从验证角度解释 ZK Rollup 的批次、有效性证明、数据可用性、结算状态、费用、提款与具体部署风险。"
image: "https://wiki.fcontext.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://wiki.fcontext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ZK Rollup

> 仅供教育参考，不构成投资、跨链桥或安全建议。ZK Rollup 的可靠性取决于被证明的程序、公开输入、数据可用性路径、合约、运营者、治理和结算链。

<a id="answer"></a>

## 直接答案

ZK Rollup，更准确地说是有效性 Rollup，在结算链之外执行交易，将交易组成批次，再向该链上的合约提交数据承诺、状态声明和有效性证明。验证器无需重新执行每笔交易，便可检查批次是否遵守编码的状态转换规则。这样可以让大量交易共同分摊数据发布和证明验证成本。

这种保证具体而非绝对。验证通过的证明只支持已部署程序所编码、并由公开输入绑定的陈述。它本身不能证明数据可取回、排序器持续在线且公平、结算区块已最终确定、跨链桥正确或升级安全。“ZK”也不代表 Rollup 天然私密：许多有效性 Rollup 会发布交易或状态差异数据，用户活动仍然可见。

<a id="mechanism"></a>

## 工作机制

1. 锁定具体部署：L1 与 L2 链 ID、Rollup 与桥合约、验证器及验证密钥版本、被证明的程序或电路、批次格式、数据可用性模式、排序器、证明者、管理员、暂停权限和观察区块。技术栈名称不能证明每个部署都具有相同保证。
2. 将排序与证明分开。排序器可以在数据承诺或证明到达 L1 前快速出具收据并构建 L2 区块。记录交易所在的准确批次，并区分已排序、已承诺、已证明、已接受、结算安全、结算最终确定和提款完成等状态。
3. 重建批次。取得协议要求的交易、状态差异、blob sidecar 或其他可用性载荷；验证顺序和承诺；然后推导前状态根、后状态根、提款根或消息根以及其他公开输入。绑定到错误链、批次或根的证明，证明的是错误命题。
4. 验证证明路径。确认结算交易使用预期证明、验证密钥和公开输入调用了目标验证器，交易成功、发出预期事件并更新正确状态槽。在可行时，用独立软件复现验证和执行。
5. 单独审查数据可用性。以太坊 blob 提供协议窗口期内的可用性与承诺，而非永久存档取回。外部委员会或替代 DA 层会引入自身假设。如果用户无法恢复重建状态或退出所需数据，证明有效也不能让数据失而复得。
6. 端到端追踪存款与提款。核对规范代币和消息传递器、金额、目标地址、消息 nonce、包含根、证明、最终性规则和实际余额变化。第三方快速桥是在独立定价、路由及对手方风险下垫付流动性，不会缩短规范证明或结算时钟。
7. 监控活性与控制权。度量批次和证明积压、强制包含及逃生路径、证明者多样性、升级、时间锁、守护者和紧急模式。合约、电路、密钥、DA 模式或协议升级后应重新分析。

<a id="example"></a>

## 计算示例

- **压缩。** 一个教学批次包含 `10,000 transactions`，`1,200 KB` 的原始协议输入被压缩为 `300 KB`。压缩比为 `1,200 / 300 = 4.0x`，体积缩减为 `1 - 300 / 1,200 = 75%`，十进制平均值为 `300,000 / 10,000 = 30 bytes/transaction`。这些数字并不衡量证明可靠性、状态增长或存档可用性。
- **成本分配。** 用户为该批次支付 `3.0 ETH`；实测 L1 数据发布成本为 `1.4 ETH`，证明验证为 `0.4 ETH`，L2 执行为 `0.2 ETH`。未解释的剩余为 `3.0 - 1.4 - 0.4 - 0.2 = 1.0 ETH`，用户平均成本为 `3.0 / 10,000 = 0.0003 ETH/transaction`。由于未计入证明生成、硬件、失败提交、桥接、资本和税费，剩余并非净利润。
- **生命周期。** 钱包在 `minute 0` 收到排序器收据；批次承诺在 `minute 12` 进入 L1；证明在 `minute 50` 被接受；选定的结算最终性政策在 `minute 64` 得到满足；规范提款在 `minute 70` 执行。顺序经过时间为 `12 + 38 + 14 + 6 = 70 minutes`。此前任何时间点都不等于提款完成。

<a id="risks"></a>

## 风险

- 链、部署、合约、批次、根、验证器、密钥或电路版本错误。
- 完备性不足或错误的被证明程序，被可靠证明系统如实证明。
- 公开输入、域分隔符、消息或协议参数缺失或编码错误。
- 验证器、预编译、桥、消息传递器或状态更新合约存在漏洞。
- 初始化材料遭破坏或密码学假设失效。
- 排序器审查、重排、双签、停机或延迟发布批次。
- 证明者停机、中心化、审查、容量不足或证明积压增长。
- 交易数据、状态差异或 blob sidecar 不可用、格式错误或未存档。
- 把数据承诺或委员会签名当作数据当前可取回的证据。
- L1 重组，或过早依赖尚不安全的结算交易。
- 特权升级、过短时间锁、替换验证器、暂停或紧急绕过。
- 强制包含、状态恢复或逃生路径不存在、被禁用或无法使用。
- 规范桥漏洞、代币映射错误、重放、消息或提款证明失败。
- 快速桥的流动性、定价、路由、偿付能力和对手方风险。
- 费用估算遗漏 L1 数据、证明、桥接、拥堵或失败交易成本。
- 假定一个 Rollup 的 EVM 兼容性、最终性、隐私或安全模型适用于另一个。

<a id="misconceptions"></a>

## 常见误区

- 每个 ZK Rollup 都会隐藏交易金额、地址和应用活动。
- 有效证明可保证数据可用，并让任何人重建当前状态。
- 排序器收据等同于 L1 已接受的证明或已最终确定的提款。
- 有效性证明消除了排序器、证明者、治理、升级和跨链桥风险。
- 最便宜或最快的证明系统会自动产生最安全的用户结果。

<a id="related"></a>

## 相关主题

- [有效性证明](/zh-cn/crypto/validity-proof/)
- [数据可用性](/zh-cn/crypto/data-availability/)
- [Layer 2](/zh-cn/crypto/layer2/)
- [Rollup](/zh-cn/crypto/rollup/)
- [零知识证明](/zh-cn/crypto/zero-knowledge-proof/)

<a id="sources"></a>

## 来源

- [Zero-knowledge rollups](https://ethereum.org/developers/docs/scaling/zk-rollups/) - Ethereum.org（查阅日期：2026-08-22）
- [Zero-knowledge proofs](https://ethereum.org/zero-knowledge-proofs/) - Ethereum.org（查阅日期：2026-08-22）
- [EIP-4844: Shard Blob Transactions](https://eips.ethereum.org/EIPS/eip-4844) - Ethereum Improvement Proposals（查阅日期：2026-08-22）
- [Rollup Process](https://docs.scroll.io/en/technology/chain/rollup/) - Scroll Documentation（查阅日期：2026-08-22）
- [Data availability](https://docs.starknet.io/learn/protocol/data-availability) - Starknet Documentation（查阅日期：2026-08-22）

Source: https://wiki.fcontext.com/zh-cn/crypto/zk-rollup/index.mdx
