Layer3深入解读: 扩容游戏的终极战场?

This article is not available in the current language yet. Showing the original version.
“二层网络是当前的最佳解决方案,但我相信多层网络结构一定会成为未来趋势”

原文:《Foresight Ventures: Layer3深入解读

作者:Yihan Xu@Foresight Ventures

一、从Layer1到Layer3

Layer1是底层区块链。Ethereum、Bitcoin、Solana等公链都是Layer1区块链,它们是区块链网络的基础,各种Layer2都搭建在这些公链之上。

Layer2指以太坊扩容方案。各条Layer2链都是单独的区块链,在保证安全性的基础上提升交易速度和TPS。比如Zksync、Starkware、Arbitrum、Optimism都是不同的Layer2解决方案。

Layer3深入解读: 扩容游戏的终极战场?       那什么是Layer3?

简单来说Layer3希望在Layer2的基础上完成更加定制化的设计,解决目前Layer2无法实现/实现起来比较困难的功能(包括定制化扩容、privacy等),从而进一步降低成本,提升效率。

但Layer3的想法还在非常早期阶段,现在下定论显然有失偏颇。Layer3的最终形态需要基于开发者探索、实战检验和实际需求。

现在有很多大佬已经提出了相关的设计思路,通过StarkWare提出的多层网络结构图(Layer3的其中一种构建思路),我会做进一步的分析和总结,帮助大家理清思路。

二、StarkWare的多层网络

以太坊多层网络的实践设想最早由StarkWare团队在文章"Fractal Scaling: From L2 to L3"中提出。在这种设计中,现在的Layer2是一种general purpose的扩容,在此之上,Layer3做定制化的扩容。下面我会对图中提到的方案逐个分析(从左到右)。Layer3深入解读: 扩容游戏的终极战场?

1.StarkEx Volition(rollup+validium)—> 低成本扩容

在Layer2的方案中我们已经熟悉了Validiums,一种通过SNARK算法对计算结果进行验证,数据不上传Layer1而是依赖于validator托管的扩容方案。由于数据存在链下而非直接发布到Layer1,Validium降低了gas成本并提供了更好的privacy(数据并不向public公开)。但是从去中心化和安全性的角度看,Data Availability依赖于第三方委员会,因此Validiums使用并不广泛。

StarkEx Volition为Dapp提供了一种混合模式,可以选择将数据放到链上以保证安全性(StarkEx Rollup)或者放到链下以获取更低的成本(StarkEx Validium)。现阶段StarkEx仍然是Layer2的扩容方案,但是在StarkWare后续的架构设计中,StarkEx完全可以作为一种打开Layer3大门的通道,在StarkNet通用扩容的基础上进一步为特定的dapp降低成本。

2.App-specific StarkNet —> 定制化扩容

我们知道Layer2的电路设计是为了服务所有Dapp,这意味着工程师设计电路的首要考虑是兼容性。因此现在的电路设计一定程度上牺牲了效率,并没有针对特定的Dapps进行优化。这对于强交互性的Dapp来说是一种的瓶颈,比如注重游戏体验和实时玩家交互的web3游戏。App-specific StarkNet可以为帮助对性能要求较高的Dapp定制化地进行设计以达到更高的performance。

我认为在这个场景下Layer2解决用户编程和可组合性的问题,而Layer3定制化地针对项目方提供更高的性能。比如一个Dapp不需要和其他Dapp共享电路资源,并获得定制化的电路设计,或是由Layer3提供更高效的存储结构会数据压缩服务。

3.StarkNet(Validiums)—> 低成本扩容

类似于StarkEx Volition,在Layer3中将Validiums作为一种低成本的扩容方案,让一些对价格敏感的Dapp获得更低的成本。

4.Privacy StarkNet —> 定制化功能

对隐私功能的实现,某种程度上也可以看作app-specific design。虽然ZK-rollup对privacy友好,但出于去中心化和安全性的考虑,用户的交易数据仍需要在压缩后通过calldata发布到Layer1作为history log,让所有用户都可以成为prover进行验证。因此以扩容为目的的rollup并不能实现privacy。Layer3的能很方便的解决了这一痛点,对于一些强隐私需求的用户,定制化地在rollup甚至rollup of rollup的基础上实现隐私功能。

三、Again,什么是Layer3?

看完以上分析,Layer3应该已经不那么抽象了,下面总结一下这种Layer3的设计到底想解决什么问题,帮助大家进一步建立对Layer3认知。

1.Vitalik的设想

  1. L2 is for scaling, L3 is for customized functionality.
  2. L2 is for general-purpose scaling, L3 is for customized scaling
  3. L2 is for trustless scaling (rollups), L3 is for weakly-trusted scaling (validiums)

2.进一步解读

  1. Layer2作为general purpose的扩容解决方案,那么对于Layer3的设计可以放下单纯的扩容,去定制化地做一些Layer2无法轻易实现的功能,比如privacy;
  2. Layer2中ZK-rollup设计考虑了通用和兼容性,为整个生态提供一种通用的扩容解决方案。因此在ZK(E)VM的设计上或多或少牺牲了ZK-friendly。那么Layer3可以针对不同应用做进一步扩容。举个例子,在ZK场景下,一些应用可以通过更加定制化的电路设计来获得更好的performance;
  3. Layer2中ZK-rollup在扩容的同时需要保证Data Availability,在cost上做了妥协。因此,Layer3可以用于低成本扩容,为不同开发者提供更多扩容方案,比如Validium就是一个很好的选择。

第二点和第三点中Layer3都是在做进一步扩容,有什么区别?

  • 我认为两者是截然不同的,并且解决了现在Layer2不同的痛点。第二点中的定制化扩容旨在提升性能,而第三点中提到的则是一种更加general purpose的低成本扩容方案。

3.小结

以上都可能是之后Layer3发展方向,并且也不会限定在某一种形态。一些Dapp会需要提供隐私功能的Layer3,一些dapp会受益于低成本的扩容,一些dapp会因为定制化的Layer3带来performance的提升。总之,Layer3会在Layer2的基础上进一步提升性能,创造更多可能性。

四、是否需要Layer3?

看到这你可能会产生两个疑问:

  1. 既然Layer3这么牛逼,是不是可以继续往上继续叠加Layer4、Layer5、Layer6…以达到更好的扩容效果?
  2. 以上提到的Layer3的用途都可以通过二层网络结构实现。看下面👇这张Vitalik给出的架构对比图,把上述Layer3的结构直接架在Layer1上只作Layer2也没什么问题。Validium还是能进行低成本扩容,定制化的电路设计也能为特定的项目方提供更好的performance,打造一条隐私链也合情合理。那么为什么要多此一举地在Layer2之上再做一层拓展?Layer3深入解读: 扩容游戏的终极战场?       👇从扩容和必要性的角度逐一分析👇

1.真的可以无限扩容吗?

当然不行。

- 计算层

从ZK-rollup的角度出发(相比optimistic rollup更贴近这个疑问),在计算层理论上可以将Layer3的ZK-rollup生成的ZKP发送给Layer2的ZK-rollup,然后在Layer2继续用ZKP证明Layer3的一堆ZKPs,并生发送给Layer1做验证。

- 数据层

需要注意的是,除了计算,我们需要考虑数据存储。Rollup链依然需要将交易数据发送到Layer1(ZK-rollup可以对数据进行压缩),来保证数据可用性,让用户可以通过数据验证proof的真实性。计算时可以用一个ZKP去证明一堆ZKP,但是数据没法压缩后继续压缩,就算可以,也并不需要一个Layer3来完成,只需要将Layer2压缩后的数据用这种方式进一步压缩即可。因此,从Data Availability的角度出发,继续叠Layer并不会在明显提升scalability。

可以参考Vitalik提到的:“There's always something in the design that's just not stackable, and can only give you a scalability boost once - limits to data availability, reliance on L1 bandwidth for emergency withdrawals, or many other issues.”

2.二层还是多层网络?

我认为二层网络是当前的最佳解决方案,但未来属于多层网络。

分析这个问题,我们需要明确Layer3的价值是什么。

五、Layer3的价值

4个字概括:降本提效。

1.深入分析成本

我认为这种Layer3的架构带来最大的想象力在于对成本的优化,或许随着技术飞速迭代,之后会有更多Layer3杀手级的设计,但成本永远是我们需要直视的话题,同样也是当初设计Layer2的原因。

从降低gas fee的角度出发,现在Layer2的rollup不可能以理论速度在极短的时间(比如赶在以太坊出块时间12-14s内)将rollup链上的交易打包成batch并(生成proof)提交到Layer1验证。原因有以下两点组成:

  1. 原提交batch到Layer1会产生不低的成本,根据Vitalik的说法每个batch的成本> 400,000 gas;
  2. Rollup链上单位时间内每个batch能打包的transaction数量有限。

—> 简单说就是,提交batch存在基础成本,因此每个batch打包的交易越多,每笔交易分摊的gas fee越低。

因此rollup的设计需要权衡打包交易的时间间隔(用户体验)和每笔交易分摊的费用(用户成本)。如果过快地打包交易并提交Layer1,会增加分摊到每笔交易上的gas fee;过慢则会增加confirmation time,影响用户体验。

Layer3可能带来哪些优化?

如果我们考虑加入Layer3,比如在ZK-rollup的基础上再加一层ZK-rollup会极大地降低这提交batch到Layer1的基础成本(一个ZKP证明一堆ZKP,减少数据size)。根据Vitalik的估算,提交一个batch proof到Layer1的成本约为8000 gas。

接下来用简单的数学计算帮助大家更加直观的理解成本问题;

已知:

  • 分摊到每笔交易的gas = transaction cost + batch cost / transaction amount
  • 以上等式中,transaction amount = TPS * confirmation time

假设在理想情况下:

  • batch cost = 400,000 gas(实际情况会更高)
  • transaction cost = 368 gas(Fully optimized ERC20 transfers)
  • TPS = 5(Layer2均值)

- 当前Layer2的gas情况

  • confirmation time = 12s(以太坊出块时间)

分摊到每笔交易的gas = 368 + 400000 / (5 * 12)= ~7035

  • confirmation time = 1h

分摊到每笔交易的gas = 368 + 400000 / (5 * 3600)= ~390

在当前二层网络的设计中,分摊到每笔交易的gas对打包batch的间隔时间(也就是用户感知到的confirmation time)非常敏感,且将confirmation time控制在一个较短的时间窗内带来的成本非常高。

- 加入Layer3的gas情况

  • confirmation time = 12s(以太坊出块时间)

分摊到每笔交易的gas = 368 + 8000 / (5 * 12)= ~501

  • confirmation time = 1h

分摊到每笔交易的gas = 368 + 8000 / (5 * 3600)= ~368

2.关于成本的思考

  • 在Layer2的基础上Layer3有明显提升,将confirmation time从12s延长到1h(每个batch打包更多交易)并没有带来显著的gas收益。同时Layer3的设计几乎可以在一个较短的confirmation time内(12s)达到当前Layer2花费一小时confirmation的gas成本。在保证用户体验的前提下极大降低了成本。
  • 另外,我认为容易被忽视的一点是,由于batch cost的降低导致transaction amount的增加同样不会为每笔交易带来太多gas成本的收益。因此,Layer3从这个角度看也更适合去做app-specific、定制化的设计(不依赖于大量的交易来抵消高昂的batch cost)。

3.浅谈一下效率

和成本一样,我认为做多层网络结构的原因一定躲不开提升效率,抛开成本和效率谈结构设计有多fashion没有任何意义。

我们知道wrapped token的实现降低了Layer2之间的互操作成本,但是效率上仍然有待提升,我们简单算一下为什么:

- Optimistic-rollup —> 14天!

由于fraud proof time,一个rollup链存(~7天)➕另一个rollup链取(~7天),~14天的验证期仍然无法避免;Layer3深入解读: 扩容游戏的终极战场?

- ZK-rollup —> ~12小时

避免了fraud proof time的漫长等待,相比Optimistic-rollup更快,但是有以下两个问题:

  • 目前Layer2的ZK(E)VM需要做到one Virtual Machine fits all Dapps,因此设计上妥协了一些ZK-unfriendly的设计,导致proof在生成时候需要额外的时间处理无法并行计算的指令;
  • 在分析成本时提到过,出于对打包交易的时间间隔和每笔交易分摊的费用的权衡,当前的ZK-rollup无法在短时间打包交易到Layer1(否则gas太贵用户不干)。

- 加入Layer3之后

  • Layer3的思路就是定制化扩容、app-specific scaling,因此,ZK-rollup生成proof这部分额外花费的时间会得到最大程度的优化;
  • Layer3的设计可以将跨链的交易成本降低基础上保证效率。相比于二层网络结构,无需经过Layer1,which is expensive and congested。

4.重新审视Layer3

综上所述,这种Layer3的设计就好像是在Layer1安全性的基础上,以Layer2为核心搭建出了无数子生态。

我认为一定程度上,多层网络架构进一步将Layer1的功能隔离,让Layer1专注于保障交易安全性,将计算等功能转移到每个子生态系统中。

六、另一种Layer3思路

Vitalik提出了一种新的架构设计思路,在我看来也可以算作一种多层网络架构的设计(你也可以把它看成一种二层网络结构),非常值得分析和思考:

Layer1: base layer

Layer2: batch mechanism

Layer3: rollup、validiumLayer3深入解读: 扩容游戏的终极战场?

1.对这种架构的解读

在现在的Layer1和Layer2之间插了一个(聚合+验证+分发)层。

在这种设计中,一种batch mechanism的结构以开放式协议的形态成为架构中的Layer2;现在我们熟知的Layer2(ZK-rollup)可以接入这种协议并成为一种Layer3。

我认为整套batch mechanism的核心是以下2点:

  1. Batch prover将加入batch mechanism的各个ZK-rollup发送的多个proof聚合,并记录所有的new state、old state、state delta;
  2. Batch handler只需要验证一次聚合后的proof,验证成功后以(New state, Old state, State delta)作为验证成功的证明分发给相应的rollup链(Layer3)用于更新state。

2.Again,Layer3的价值

- 成本

相比现在Layer1的verifier contract验证不同rollup链发送的batch proof并更新state,这套新的架构相当于将gas成本在各个rollup链之间分摊。根据Vitalik的描述,分摊后的gas cost同样约为8000。因此,这种Layer3的设计在成本因素上同样产生了很大价值。

- 安全性

这样的结构设计使得Layer2(batch mechanism)成为了一个用途明确且专一,结构简单的中间层,这使得这一层在安全性和governance-minimized上具备天然的优势。

*Starkware上的SHARP正在做类似的实现,递归的证明方式使得proof可以被提交到Layer2的StarkNet上,为进一步实现Layer3创造可能性。Layer3深入解读: 扩容游戏的终极战场?

七、对Layer3未来的思考

  1. 二层网络是当前的最佳解决方案,但我相信多层网络结构一定会成为未来趋势;
  2. 基于现在大家对Layer3的设想,ZK相关技术对Layer3会起到极大的推动作用,并且未来Layer3的底层技术很可能离不开ZK,甚至基于ZK。因此,在ZK领域的探索对Layer3的发展非常重要;
  3. Layer3的概念处于早期阶段,未来一切皆有可能!但本质上Layer3的出现会是成本和效率驱动的。Layer3的出现不会改变Layer2作为general purpose scaling的格局,而是在Layer2的基础上做更加定制化的事情;
  4. Layer3的发展离不开扎实的Layer2。持续推进现在Layer2的生态繁荣和底层技术进展仍然是高优先级的;

Reference

https://vitalik.ca/general/2022/09/17/layer_3.html

https://medium.com/starkware/fractal-scaling-from-l2-to-l3-7fe238ecfb4f

https://medium.com/starkware/recursive-starks-78f8dd401025

https://ethereum.org/zh/layer-2/

Share to:

Author: Foresight Ventures

Opinions belong to the column author and do not represent PANews.

This content is not investment advice.

Image source: Foresight Ventures. If there is any infringement, please contact the author for removal.

Follow PANews official accounts, navigate bull and bear markets together
PANews APP
US stocks closed mixed, with crypto stocks generally declining.
PANews Newsflash