什么是 Layer 2 区块链?
作者 Max Crawford

在高峰时段于 Ethereum 上部署智能合约,你会看到交易费用飙升,或者交易在内存池中卡上数小时。区块链并非可无限扩容的网络:blockspace 本身是有限的,随着对这部分空间需求的增长,用户体验会随之下降,这对应用来说可能是致命的:如果每次代码部署都要花费数百美元,谁会愿意用这样的链构建应用?如果仅 gas 费就要花掉 10 美元,谁会愿意在应用里兑换 20 美元的代币?
Layer 2 区块链解决了这个问题。
什么是 layer 2 区块链?
Layer 2 区块链把计算和交易执行从 Ethereum 或 Bitcoin 这样的基础 layer 1 区块链上移出去,同时仍然依靠该 L1 链来验证并保障这些 L2 交易的安全。换句话说,L1 起到了类似清算所的作用,确保所有 L2 交易和用户余额的正确性;此外 L1 链还存储 L2 的状态,使 L2 能够获得 L1 网络带来的额外安全性。
L2 区块链的机制是为规模化而设计的。交易在链下执行,减轻了 L1 更为拥挤的 blockspace 上的负载。L2 不会把每笔交易的结果单独提交回 L1,而是先将成百上千笔交易打包在一起——再把这些聚合数据以单笔交易的形式提交到 L1 链上。L1 上的数学证明能够保证这些交易的有效性,而无需在 L1 链上重新执行每一笔交易。
最终结果是:L2 通过在该链上结算,获得了 L1 安全性带来的好处,同时通过把计算和交易排序移到链下,以更低的成本实现了 100 倍的性能提升。
主要的 L2 设计
L2 区块链有多种不同的设计方式,包括 rollup、状态通道(state channel)和侧链(sidechain),它们在安全性、成本和速度之间做出了不同的权衡。我们来仔细看看这些不同 L2 实现之间的差异。
Optimistic rollup
像 Arbitrum 和 Optimism 这样的Optimistic rollup默认假定交易有效——无罪推定,除非被证明有问题。交易先在 L2 上执行,然后被提交到 Ethereum。之后交易会进入一个为期七天的挑战期,验证者可以在此期间对无效交易提出异议。如果无人提出挑战,交易即为最终确认。
这里的权衡很明确:交易快速且便宜(因为证明交易正确没有计算成本),但这种低成本是有代价的——提现回 Ethereum 需要等待长达一周才能最终确认。
零知识 rollup
像 ZkSync Era、Starknet 和 Polygon zkEVM 这样的 ZK rollup 使用加密证明来即时验证交易。L2 生成一个有效性证明(SNARK 或 STARK),将其提交到 Ethereum,由 Ethereum 通过数学方式验证。不需要挑战期——交易几乎能够立即达成最终确认。
这种即时结算是有代价的:生成有效性证明的计算成本很高,因此用户要为这份速度溢价支付更多费用。ZK rollup 也是一项更复杂的技术。Optimistic rollup 比 ZK 技术更早进入市场,目前占据了明显更大的市场份额。不过随着进一步的研究让 ZK 技术变得更加可行,这种局面可能会发生变化。
状态通道
状态通道可以实现点对点交易,而不必为每一次互动都触碰区块链——就像开一个酒吧记账单,在夜晚结束时再结算最终余额。Lightning 和 Raiden 这样的网络就是为转账和支付场景实现了这种机制。
由于状态通道没有全局状态的概念(在通道关闭之前,用户无法看到通道内部发生的活动),你无法构建与链上状态交互的智能合约逻辑,这限制了状态通道可以支持的使用场景。
侧链
像 Polygon PoS 这样的侧链与 Ethereum(或其他 L1)并行运行,拥有独立的共识机制和验证者网络。侧链的设计空间可以非常宽泛,但通常侧链都会与 L1 保持某种关联,无论是使用合并挖矿(merge-mining,让 L1 矿工同时挖 L2)、使用原生桥接让资产可以在 L1 与 L2 之间转移,还是利用 L1 来实现数据可用性或结算。
由于侧链设计的范围很广,有时侧链并不像 rollup 那样被认为是真正的"L2",但对于那些不需要与 L1 绑定绝对安全性的应用来说,侧链可以提供一种快速而灵活的实现方式。
L2 设计上的权衡至关重要
每种 L2 都会做出不同的取舍,而安全性、最终确认时间、成本和开发体验之间的取舍,会给构建者和用户体验带来很大差异。在为你的业务选择合适的 L2 时,你需要想清楚自己的使用场景需要满足哪些要求:
- 安全性:不同的 L2 提供不同类型的安全保证。Optimistic rollup 继承了 Ethereum 的完整安全性,但需要依赖欺诈证明(fraud proof)。ZK rollup 提供数学层面的保证,但依赖复杂的密码学。侧链则拥有独立的安全模型。
- 交易费用:从某种程度上说,所有 L2 相比在 L1 上构建都能降低成本,但具体的降幅可能相差很大。ZK rollup 的证明生成成本更高,但能在 L1 上实现更好的数据压缩。Optimistic rollup 的经济模型更简单,因此交易费用更低,但需要在 L1 链上存储更多数据,这又从另一个角度增加了成本。
- 确认速度:Optimistic rollup 需要 7 天的挑战窗口期,而 ZK rollup 和状态通道可以提供近乎即时的最终确认。你的场景需要多快达成交易最终确认?如果交易在 7 天挑战窗口期内偶尔被回滚,对你的用户会有多大影响?
- 开发体验:Optimistic rollup 通常提供更好的 EVM 兼容性——你往往只需做很小的改动就能部署现有的 Solidity 代码。对于拥有成熟 Solidity 工具链和模板代码的生态来说,这种兼容性可以大大减少构建过程中的摩擦。相比之下,ZK rollup 可能需要学习全新的编程语言和工具。
- 去中心化程度:目前大多数 L2 都使用中心化的排序器(sequencer),不过这一状况正在开始改变,而且有些 L2 比其他 L2 更中心化。相比上述其他权衡因素,你有多重视在去中心化网络上构建这件事?
你的使用场景以及理念立场,将决定你选择用哪种 L2 方案来构建。如果你对哪种 rollup 更适合你的业务还有疑问,我们的 rollup 团队可以帮你做出决定。你可以在这里联系我们的 rollup 团队。
L2 链的未来
L2 领域的发展非常迅速。仅仅几年前,还没有人在谈论 L2,更不用说在其上构建了。如今,rollup 已经拥有数亿用户,交易价值达数十亿美元。毫无疑问,L2 会长期存在,即便许多企业选择针对自己的场景构建全新的定制 L1(L2 的运营成本更低,这意味着企业可以保留更多收入,专注于为客户交付价值,而如果要面对从零启动自己的 L1 这一更困难的问题,你根本无法做到这一点)。
随着 L2 区块链持续扩大市场份额,该领域也涌现出许多令人兴奋的创新,进一步推动 L2 向前发展。
ZK 研究继续推动 ZK 设计方案在主流应用中的可行性。像 ZKSync Era、Scroll 和 Polygon zkEVM 这样的组织已经让 ZK rollup 实现了 EVM 兼容,消除了这些生态系统采用的主要障碍;与此同时,不断出现的新突破也在持续降低生成 zk 证明的计算成本。
在 optimistic 方面,团队们正在推进将 ZK 证明整合进自己技术栈的工作,从而实现动态方案——交易可以根据需求被路由到不同的证明系统。各团队也在改善不同 L2 链之间的互操作性,帮助带来更深的流动性和统一的生态系统。
最后,我们甚至看到了 L3 和 appchain 的兴起——这些链专门服务于单个应用,针对特定使用场景进行定制,能够解锁在与其他实体共享链上空间时无法实现的优化和更好的用户体验。
开始在 L2 链上构建
Layer 2 并不是权宜之计式的扩容方案——它们已经在生产环境中运行,支撑着数百万笔交易,并推动着各种不同设计类型的主流采用。
好消息是,最受欢迎的 L2 方案都兼容 EVM,你现有的 Ethereum 工具在这些不同的 L2 环境中同样适用,包括 Hardhat、Foundry,当然还有 Alchemy。
我们通过自己的基础设施和一整套开发者工具,支持所有主流 L2,帮助你构建任何链上应用。获取你的免费 API key,向一条领先的 L2 区块链发起你的第一次 API 调用,亲身体验在这个发展最快的链上领域之一进行构建的感觉。
常见问题
layer 1 和 layer 2 有什么区别?
Layer 1 指的是像 Ethereum 或 Bitcoin 这样处理共识、安全性和数据可用性、完全独立运行的基础区块链。Layer 2 则是构建在某个 L1 之上的二级网络,负责处理计算以及交易的排序和打包,并将这些工作放到 L1 链之外进行,以降低成本。之后 L2 会把这些交易提交回 L1,并依赖 L1 链来保障网络安全。
layer 2 和 Ethereum 一样安全吗?
大多数 L2 通过密码学证明或欺诈检测机制继承了 Ethereum 的安全性。虽然不同方案的安全模型有所不同,但设计得当的 L2 能够维持与基础链相同的安全保证。
layer 2 交易能便宜多少?
L2 上的交易成本通常比 Ethereum 主网便宜 10 到 100 倍。在网络高度拥堵期间,节省的费用甚至会更多。一笔在主网上要花 50 美元的交易,在 L2 上可能只需 0.5 美元甚至更少。
我可以在不同的 layer 2 之间转移资产吗?
L2 之间直接的互操作性仍在改进中,但你可以先把资产桥接回 Ethereum,再转到另一个 L2,或者使用第三方桥接方案将资产从一条链转移到另一条链。
进行 layer 2 开发需要学习新的编程语言吗?
大多数 L2 都支持 Solidity 以及标准的 Ethereum 开发工具。像 StarkNet 这样的一些方案最初需要使用 Cairo,但即便是它们,现在也在加入对 Solidity 的支持。
如果 layer 2 掉线了会怎样?
大多数 L2 都设有应急退出机制,即使 L2 停止运行,用户依然可以直接通过 Ethereum 提取资金。这项功能有时被称为"强制提现"(forced withdrawal),它让用户无论 L2 处于何种状态,都能把自己的 L2 资产取回到 L1 上。
相关概览

构建区块链应用
Alchemy 将最强大的 Web3 开发者产品和工具与资源、社区及专业支持结合在一起。


