首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

每个人都在谈的Layer2到底是什么?

大家知道,在以太坊生态系统中,目前最大的挑战就是低吞吐量和高gas费以及延迟这几个问题。波卡和NEAR这类公链虽然号称可以解决此类问题。但还看不到挑战以太坊生态的苗头。以太坊2.0目前来看也是遥遥无期,因此在这个空档期,早前提出的Layer2解决方案可谓生逢其时,发展迅猛。

目前layer2的升级方案主要有四大种类:从早期的侧链、状态通道、plasma,到现如今最为可行且投入应用的Rollup,卷叠方案。今天就为大家重点介绍一下,比较有可能从众多方案中脱颖而出的Roll-Up的两种方案ZK rollup零知识卷叠又称零知卷叠和Optimistic Rollup乐观卷叠,下面我们就开始吧:

什么是Layer2?什么是Rollup?

举个不太恰当的例子,我们可以将以太坊看做中央银行,而layer2就是主要商业银行,工农建中,所有的货币资产都在中央银行发行结算,而其流通过程可以同时发生在中央银行和商业银行。因为大家都去央行结算的话,就会业务拥堵,于是有了其他商业商业银行来先处理大量业务,然后在和央行结算一次整体业务结果,这样就能更高效地运作了。所以对于以太坊上述问题,解决方案可以是,将以太坊的资产存入layer2,其资产流动在layer2上,最终结算却在以太坊上进行就可以了。

另一个问题,就是关于区块链网络扩容的,我们可以比作央行和商业银行处理的业务复杂程度,个人存钱取钱当然简单,但是能够处理对公复杂业务我们就类比为区块链网络扩容的问题。

网络扩容基本思路有两种:分别是链上扩容和链下扩容。

链上扩容称之为Layer1扩容,比如增加区块的大小,加快出块的时间等,如:EOS、ETH2.0、polkadot。相当于对央行进行改造,使其能满足日常运作;

链下扩容称之为Layer2扩容,有上述四种技术方案,但是其本质都是相通的,就相当于建立更合理的商业银行体系。

简单描述下四种方案:

首先,侧链,它就是连接到一条区块链上的另一条区块链,将主链的资产锚定到这个新的区块链上。侧链可以通过许多不同的方式,比如由可信的第三方、某个联盟或共识算法来运营。优点是,代码和数据独立,不增加主链的负担;缺点是,安全性弱。当前比较优质的项目有skale、Injective等等;

其次,状态通道,就是交易双方在链下构建一个通道,通过私钥签名以后,在链下进行交易。状态通道不太能支持没计划性的大额支付。就好比大家把钱放在链下一个钱包里结算,你就放了100块,但突然有个200块的付款,就完成不了。另外状态通道也不支持智能合约,当前项目有Celer、Raiden、Liquidity等……

再者,就是Plasma,等离子链,其实也是一种特殊的侧链,它的特点是,无法应用到智能合约上,且用户跑节点的负担比较重。这方面项目包括:OMG 、Matic、Loom,由于区块链技术都很新,大家都是摸着石头过河,随时探索或转型出新的技术解决方案也都是有可能的,比如Plasma团队后来就衍生出了Opimism.io团队,即提出optimistic rollup的团队。

最后,就是Roll-up,Vitalike钦点翻译为“卷叠”,实际上就是把一大堆交易打包到一起,卷起来然后一并发送到以太坊的主链上,这个打包的过程是发生在Layer2上的,它能够容纳大量的交易,并且很快地确认交易。

关于plasma失败,rollup崛起

在rollup之前,layer2的主要方案是侧链。

侧链失败的主要原因有两个:

(1)数据可用性不足

数据可用性是指侧链不像以太坊上的多节点,难以发动51%算力攻击,如要攻击以太坊得调动海量资源,而侧链却不需要,那么,侧链上的数据真的可以信任吗。节点矿工并不需要很多资源就可以修改你在侧链上的数据,这直接影响了用户在以太坊上的资产安全。

(2)退出困难

当用户试图从侧链中提取资金时,他们必须向侧链提交退出交易请求,然后等待一段时间。如果大量用户都需要退出一个Plasma 侧链,那么该链的整个有效状态必须在一个有效期内发布到以太坊主网上。由于数据同步问题,几乎可以肯定的是,大量退出会把以太坊挤爆。这就是所谓批量退出问题。

侧链的失败,带来更好的创新方案,所以rollup开始崛起。

 两种Rollup:ZK-rollup和Optimistic-rollup分别是什么,各自的优劣势是什么? 

ZK-Rollup 零知卷叠 中的 ZK 就是指零知识证明(Zero—Knowledge Proof),它指的是证明者能够在不向验证者提供任何有用的信息的前提下,使验证者相信某个结论是正确的。举个例子就是有人给了你一封信,并在信封上面写了一句结论,信的内容是证明这个结论是正确的过程。零知识证明的作用就是在 你不打开信封看到信的内容的情况下,也能判断这个结论是正确的。

回到ZK-rollup,我们可以把他看成三部分,分别是以太坊网上的智能合约,中间操作员和链下计算部分。

以太坊主链上的智能合约用来保管要进行交易的代币,例如你要在路印的交易所用ETH购买LRC,那么首先你需要先把你的ETH转到一个智能合约上锁定。

链下计算部分是指Layer2处理交易或者计算的部分,每一笔交易都会产生一个零知识证明的结论。

中间操作员负责收集和验证每一笔交易的零知识证明结论,并且打包后计算得出这一批交易的整体总结式结论,然后把最终的结论发送到以太坊主网上进行验证。

目前zk-rollup的发展瓶颈是每次发送到主网上面的总结式结论数据虽然不多,但是在链下要通过零知识证明计算出这个总结式结论的计算量却非常的大,这还仅仅是转账的数据,如果在链下整合智能合约并把数据发送到链上,那整体的数据量会增加几个数量级,那么计算出这个总结式结论是非常困难的。

这是zk-rollup的一种基本形态,不同项目的具体形态可能会有所微调。

接下来,optimistic-ROLLUP 乐观卷叠,optimistic-rollup本质上就是一种特殊机制的侧链:

在普通侧链中,我们将资产锚定后,侧链上的资产不会主动提交到以太坊主网上,只有当用户提出请求退出时才会解除锚定。前面我们也讲过侧链的弊病,而op-rollup就是在侧链的基本结构上添加了固定的规则:

为了解决数据可用性,添加中间操作员维护系统,制定机制来保障数据可信任。

为了解决退出困难问题,op-rollup提出每七天将侧链的数据提交至以太坊主网,所以每条侧链上存在的数据是有限的,固定时间间隔将侧链数据同步至以太坊主网。

Optimistic的字面意思是乐观,他默认把所有的参与者视为好人。同样可以像zk-rollup一样简单将其拆解成三部分:以太坊主链上的智能合约,中间操作员(包含侧链节点)和链下计算,以太坊主链上的智能合约同样是用来保管要进行交易的代币。

与zk-rollup区别的地方在于,op-rollup的解决方案的每次确认交易后,中间操作员不会对交易的结果进行一系列复杂的验证,就直接进行打包,并在7天或者特定的时间后上传到以太坊的主链上。中间操作员不仅仅是充当搬运者的角色,还充当监督者的角色,他们会对其他操作员打包的数据进行核对和验证,如果发现有操作员作恶他就会上报,并且将这段时间内的交易进行回滚。

这样做的好处就是因为上传的数据量比较少,可以将智能合约集成到Layer2,这也是其被synthetix和uniswap等Defi龙头青睐的重要原因。

但是缺点也很明显,就是数据要在7天或者更长时间后才会上链,因此如果你将代币锁定Layer2上,将其取出需要等待7天或者更长时间。

zk-rolllup和optimistic-rollup的对比:

最后给大家对比总结两种rollup的特点:

1. zk-rollup并非完全不能运行智能合约,只是目前效率太低;

2. 关于安全性两者都有一些需要克服的隐患,比如,op-rollup可能随着资金量越大,风险越高,而zk-rollup却需要可信第三方;

3. 关于隐私性,zk-rollup可实现而op-rollup并未提及。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210319A011Z200?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券