Hyden Adams 发了一则吐槽推特:"我想陈述一个事实,在 UNISWAP 上我们每天将有 420k 美金浪费于交易的 gas 费用,而这意味着,一年将有 150M 美金浪费在 gas上 ,这不可笑,这是事实"。
听起来是很荒谬的事情,但却真实发生了。
实际的用户体验是,ETH2.0 发展迟缓,越来越多的交易导致高负载,打包速度变慢,高昂的矿工费,手续费。种种警告表示:以太坊需要自救。
在以太坊的分片遇到瓶颈的时候,Rollup 的出现又让 Layer2 开始变得炙手可热。在 PolkaWorld 之前的一期专访中,加密投资机构 DFG 也预测 2021 年的其中一个发展趋势是 DeFi 在二层网络的实施。
Layer1 上效率是有极限的,这直接导致了现实世界的不便利体验,除非修改一些限制条件,否则我们不可能突破这个极限。所以 Layer2 的思想是让大部分事情在 Layer2 去做,通过和 Layer1 的交互能够将信任传递到 Layer1。
简单来说就是:Layer1 能干的活很少,Layer2 可以在线协助干活,而且多多益善。体现在区块链上的形式就是链外操作,链上记录。
所以说 Layer2 本质上是扩容解决方案一个类别的统称,旨在通过 Layer2,解决 Layer1 上无法扩容的根本问题,那这一类的解决方案中,都衍生出了哪些具体的交互形式呢?
简单来概括有四大类:状态通道、侧链、Plasma 和 Rollup。
前三类 Layer2 的解决方案基本上已经逐渐凋零了,但也有其使用场景,因为属于偏早期的设计模型,所以都有一些不够完善的问题。比如状态通道就不可避免需要锁定相应的代币;侧链就没能解决好退出周期的问题,而 Plasma 则存在一个一定需要参与者实时监控的问题。
Rollup!Rollup!
Plasma 和状态通道的解决方案是依靠所有者完全知晓状态,但这使得此类方案无法完全通用化。Rollups,则是一种「混合型」二层方案。Rollups 将计算 (以及状态存储) 移至链下,但将每笔交易的一些数据放在链上。
Rollup 又主要分为两大类,一类是 Optimistic Rollup,另一类是 ZK Rollup。
yearn.finance锁仓量已超30亿美元:yearn.finance发推称,其TVL(锁仓量)已超30亿美元。[2021/4/15 20:22:19]
Optimistic Rollup 解决方案为欺诈证明 (fraud proofs) 。
聚合者(Batch/也只批处理交易)将批处理后的交易数据和状态根,一起提交到 L1 的 Rollup 合约(智能合约),并且在这个过程中提供惩罚机制,允许任何人在挑战期结束前来验证交易,如果发生错误,则滚回区块(Rollup!!!)
甚至可以将 L1 上的智能合约迁移到 L2 上,这类解决方案非常适合 Defi 项目。也就是说,一般情况下在 L2 上验证交易(OVM),如果有欺诈可能,则在 L1 上重新跑一遍(EVM)。
ZK Rollups 解决方案为有效性证明 (validity proofs)。
字面理解即为证明其有效,通过在 L2 上对每一笔交易做非交互式零知识证明(Zero Knowledge,简称ZK),将所有交易数据压缩后与 ZK 证明一起打包上 L1,这样做的优势是安全性能高,在链上进行 Rollup 合约密码学验证。虽然链下产生零知识证明需要消耗大量计算资源,但无论计算量有多大,该证明都能在链上得到极速验证。
到今天,我们看到波卡提出以中继链(Layer0)和平行链( Layer1)相结合的方式来处理扩展性问题的全新思路,而不是局限在以太坊的“旧城改造”上。但这样的结构,无法直接做到对 Layer2 的探索,所以还需要借助平行链的扩展性带来 Layer2 的功能。目前我们也看到一些生态项目在 Layer2 上的一些探索。其中,目前最为知名的就属 Plasm Network,它将作为波卡上专注于 Layer1-Layer2 这样垂直扩展性的 Layer1 存在,意义重大。
我们知道,水平可扩展性不同于垂直可扩展性,波卡有前者,但没有后者。因此,一般来说,平行链需要是一条基于 Substrate 框架的区块链,但一个 Rollup 的应用程序可以与平行链不同,这意味着 Layer2 的应用程序不需要从第 1 天开始就是一条完整的“区块链”。
另一方面,Rollups 极大概率成为以太坊 Layer2 解决方案中的重要代表,甚至成为大部分项目的首选解决方案,那么波卡必然也需要能够与之兼容。
而如果波卡具备了更主流的 Rollups 扩展方案,那么目前基于以太坊上的 Rollups 项目也是可以顺利接入到波卡生态中,当然这需要波卡本身具有良好的兼容性,至少可以与市面上大部分 Layer2 方案相融合。
而这就是 Plasm 网络一直在做的事:成为更好的可扩展智能合约平台,并让基于以太坊的开发者能够顺利迁移到 Plasm 网络中,同时让 Plasm 网络能够容纳市面上所有的二层扩展解决方案。目前 Plasm 网络已经成功部署了 Rollup,相信在不久的将来也会部署在波卡网络中。
兼容所有 Layer2 解决方案
Plasm 并不只满足于支持一种 Layer2 的解决方案。
Plasm 认为几年之后区块链会分为不同的用途,像比特币以太坊这类 Layer1 的公链会被应用为信任层,而 Layer2 将会是交易层。因此,Plasm 认为 Layer2 将会是区块链未来不可或缺的重要方向。
于是,Plasm 选择了众多 Layer2 解决方案中的 Plasma,因为它是最不依赖主链处理性能的可扩展性解决方案,可以在不牺牲去中心化的情况下管理其侧链。Plasm 采用了以太坊基金会支持的 Plasma 团队开发的虚拟机(Optimistic Virtual Machine,简称OVM)。
而 OVM 是可以支持所有 Layer2 协议的虚拟机,它是所有 Layer2 可扩展性结构的统一,这意味着除了 Plasma 以外,Plasm 还兼容其他诸如状态通道、Optimistic Rollups、ZK Rollups等所有 Layer2 的协议。
这也是 Plasm 的目标 —— 成为一个包含所有 Layer2 解决方案的智能合约平台,用户可以自由选择任意的解决方案,并降低负载。与此同时,Plasm 还因此一并兼容了支持这些不同 Layer2 解决方案的项目,可谓是一举多得。
优化了现有 Layer2
Plasm 并不只是对现有 Layer2 进行兼容。
Plasm 是在波卡上利用 Substrate 框架,实现了 Plasma 这个 Layer2 解决方案。但是 Plasm 并不是简单的把 Plasma 实现了而已,Plasma 本身也有一些缺点,比如其 Layer1 智能合约的有限性能,使得很多 Dapps 无法实现,又比如部署一个基于 Plasma 的 DApp(简称Plapp)比一般的 DApps 要更复杂,一般的 DApps 只需要编写和部署就可以创建一个 DApp,Plapps 则需要存在于母链、子链、运营者和用户上的四个智能合约组成。
所以 Plasm 通过一套标准库和云服务来部署和管理 Plasma 组件等工具,解决了上述问题,并让开发者能更轻松的开发他们的应用程序。
另一方面,Layer2 的解决方案也不能完全在 Plasma 上执行,为帮助 DApp 开发者应对那些不能在 Plasma 上执行的 Layer2,Plasm 专门建立了一个 Plasma as a Service 平台来为开发者们提供支持,这也再次展现了 Plasm 的高兼容性。同时,这个平台还提供了一套操作简便的图形用户界面(GUI)供开发者使用,进一步的降低了开发者的学习和部署门槛。
由于波卡中继链本身不支持智能合约,波卡的生态项目中是缺少 Plasm 这样一个高兼容性强扩展性的智能合约平台,所以 Plasm 可以让波卡网络更具价值。
Plasm 的 Layer2 发展规划
目前 Plasm 已经支持 EVM 和 Solidity,并且集成了 Metamask、Remin、Truffle,同时也会支持 ECDSA,WASM 和 ink!,并在 Layer2 层面已经实现了 Plasma。
接下来,Plasm 的规划是实现部署 Optimistic Rollups,进一步兼容更多的 Layer2 解决方案。之后,便是参与波卡平行链竞拍,成为波卡的平行链,也将是作为波卡主要的垂直扩展性提供方。最后,便是推出 DApp 的激励,努力开展生态建设。
对于 Plasm 网络来说,一方面它将作为波卡智能合约的重要构成部分,另一方面也将作为波卡 Layer2 的扩展解决方案,但不同于其他 Layer2 方案的是,Plasm 更像是一个能够与其他 Layer2 赛道融合的“万能贴”,帮助波卡架起一座横跨各种 Layer2 的桥梁。
正因如此,如果说以太坊2.0 是“ ETH1.0 + 分片(+ Rollups)”,那 Plasm 就是在波卡上创建 ETH2.0。
特别感谢:Zenlink cz 对本文 Layer2 内容的贡献
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。