区块链世界的强强联手,如何让波卡完美兼容以太坊?_SUBS:dappercoin

加入PolkaWorld社区,共建Web3.0!

2020年12月1日20:00,等待多时的以太坊2.0启动了创世区块,标志着阶段0(信标链)正式上线,这也意味着酝酿数年的以太坊2.0终于迈上了正轨。

作为饱受诟病的以太坊容量问题和效率问题,似乎众多人都将希望寄托于了以太坊2.0的升级上,但这升级并非一蹴而就的努力,中间的完整升级时间按照之前的预估大概要2-3年之久,毕竟以太坊这艘“巨轮”想要转弯并没那么容易。

因此,在以太坊升级的这段时间中,恰巧容易产生更多的创新者,而人们引以自豪的波卡,便是其中一个重要的颠覆式创新者。

在波卡生态中,同样有一个扮演着类似以太坊这样提供智能合约开发功能的重要角色,也就是我们之前向大家介绍的PlasmNetwork。

当然,如果是能够通俗理解PlasmNetwork的读者大概会明白,这就像在“波卡生态中再造了一个以太坊”,听起来似乎很容易理解,也很有趣,但Plasm仅仅是“波卡上的以太坊”吗?事实可能并非如此,毕竟站在巨人肩膀上的Plasm已经迈出了更大的一步。

为什么要兼容以太坊?

以太坊作为世界上第二大的区块链网络,也是最大的智能合约平台,并且许多开发者进入区块链世界通常是通过以太坊和他们的智能合约。所以很多区块链开发者都在使用以太坊智能合约以及相关的工具等。

然而,Substrate的原生智能合约使用的是一种基于Rust的语言,该语言的学习成本相对来说比较高。加上ink!(Substrate上的合约语言)合约目前缺乏工具来支持DApp的开发,也基本没有易于使用并可以安全地将现有基于EVM的应用程序迁移到基于WASM的Substrate区块链的工具或应用。

因此,Plasm要成为更好的可扩展智能合约平台之一,就必须找到一种方法,允许基于以太坊的开发者迁移到Plasm,而不会出现任何问题。

Plasm将在Layer1上支持基于WebAssembly的合约和以太坊虚拟机EVM,将以太坊的兼容性引入到Plasm网络和波卡网络,使其成为Polkadot上的多虚拟机、可扩展的智能合约平台,同时支持前沿的Layer2解决方案。

Plasm如何兼容以太坊?

目前,关于以太坊兼容性这个计划在通过Solang、EVM模块和Frontier实现。

1、Solang

没有人可以否认以太坊对DApp世界的影响,把大家已经开发出来的所有伟大的东西都抛在身后是一种浪费。到目前为止,基于WASM的智能合约已经被证明比最初的EVM具有更好的性能和可扩展性。甚至以太坊本身也在通过其eWASM寻求这种解决方案,我们可以有把握地说,现有的EVM将很快成为另一个遗留技术。

话虽如此,但是现在我们仍然有很多现有的工具和DApp,这就是Solang发挥作用的地方。

Solang是一个用Rust编写的惊人的编译器,它允许将Solidity合约编译为WASM二进制文件,这意味着你可以在Plasm网络上部署相同的Solidity语言的智能合约。

Solang的创造者最近成为了Plasm生态成员的一部分,允许Solidity合约使用Plasm的功能。他将继续研究Solang,并支持以太坊开发者在Plasm网络上部署Solidity智能合约。

2、EVM模块和Frontier

除了基于WASM合约的Solang,Plasm团队也正在为Plasm网络实现EVM模块。不过,波卡背后的Substrate框架本身就有EVM模块,为什么Plasm团队还要努力开发EVM模块,而不是直接调用呢?

我们知道,Substrate框架的一大优点是,它允许导入不同的模块,这些模块可以用于任何基于Substrate的区块链。EVM模块就是这样一个模块,允许基于Substrate的区块链执行基于EVM的合约。然而,这个模块主要关注的是将Substrate链信息转换为合约,而不是对完整的以太坊区块的处理。

为此,Plasm也正在积极开发以太坊RPC模块,这是一个将EVM合约带给最终用户的模块。这个模块允许Substrate链不仅公开本地SubstrateRPC(通过Polkadot-jsapi访问),而且还公开了与所有现有以太坊95%兼容的开发工具和库,如Web3.js,MetaMask,Truffle等,达到在Plasm上兼容以太坊所有工具的效果。

这组用于Substrate的以太坊RPC模块也是Parity官方开发的Frontier层中的一部分,其目标是能够为基于Substrate的区块链添加完整的、未修改的以太坊功能。

对于PlasmNetwork,他们正在测试网络Dusty上实现EVM模块并支持以太坊RPC。这将允许我们不仅可以部署和执行基于EVM的合约,而且允许开发者使用现有的以太坊开发工具和库,包括现有的以太坊Layer2协议。

然而,在这个实现的过程中甚至包括实现之后,Plasm官方也表示可能还会遇到许多障碍,因为WASM和EVM之间的兼容性不是最好的,但我们也相信,这会是一个伟大的开端——成为波卡上DApps的中心枢纽。

兼容以太坊:成为波卡上DApps的中心枢纽

为什么说Plasm可以成为“波卡上DApps的中心枢纽”,最重要的原因在于:Plasm在Layer1和Layer2上都支持了智能合约功能,并且可以容纳所有二层扩展的解决方案。

以太坊DApps平台作为第二大区块链,它每秒可以处理大约15个交易。VISA每秒钟可以处理大约1700笔交易,支付宝每秒钟可以处理大约256000笔交易。对比下目前DApps的交易速度很慢,非常不利于新用户使用区块链技术。为了解决这个问题,目前已经提出了几个区块链可扩展性解决方案:

SegWit:通过删除签名信息并将其存储在基本交易块之外来修复交易的延展性。状态通道:组合特定用户之间的链下交易,只有最终状态被提交到主链上。分片:通过创建分片,允许更多的交易同时被并行处理。Plasma:将交易存储在独立的子链中,并且只有根哈希存储在主链中。当然,我们也可以把扩展的解决方案重心放在Layer1和Layer2的协调上。例如以太坊的Layer1仅存在于以太坊主网中,而Layer2解决方案可以结合Layer1、Layer2和链下的解决方案,以获得更好的性能和可扩展性。

我们普遍认为的是,交易处理需要在主网Layer1链之外进行,因为链上已经达到性能限制。未来,区块链模型可能会发展为Layer1层作为信任层,Layer2作为交易层。

上面我们讲到Plasm已经在Layer1上支持了EVM和WASM的合约,目的是为了兼容以太坊,允许基于以太坊的开发者无缝地迁移到Plasm网络上。除了Layer1上的智能合约,Plasm在Layer2上也通过OVM兼容了Plasma、闪电网络和其他Layer2协议,从而做到在Layer2上也支持智能合约。

那么,什么是OVM呢?

OVM是一种支持所有二层协议的虚拟机,这是所有第二层协议的统一,这意味着Plasm网络不仅支持Plasma,也支持其他二层协议。

Plasm网络将容纳所有二层扩展的解决方案,用户可以随心选择使用哪个解决方案,用最小的成本使他们的场景成为可能。

Plasm的升级:将Rollups带入波卡网络

如果仅仅是兼容以太坊的功能还不足以支撑起Plasm网络的特殊性,就在2020年12月4日,Plasm正式获得来自Web3基金会的第6笔赠款。

这笔资金将用于将ZKRollups引入到Plasm网络以及Substrate上。过去,Plasm专注于实现OVM,这是集成所有Layer2协议的虚拟机。你可以将OVM看作是用于转移资金和在Layer1和Layer2之间通信的安全层。随着Plasm完成OVM,团队意识到通过Layer2合约执行的?ZKRollups可以为Polkadot生态系统带来的价值。

如果SubstrateEVM和ink!合约都可以利用此性能,则对于DApp开发人员是一件很棒的事情。换句话说,PlasmNetwork正在成为支持以太坊虚拟机EVM和WebAssembly的Rollups的智能合约平台。

正如大家所知,Plasm一直致力于Layer1和Layer2,但Plasm的Layer2解决方案主要用于代币转账。当Plasm正在构建一个应用程序平台时,许多人希望在Plasm的Layer2层使用智能合约,而不是代币转账。这就是为什么Plasm在更多地关注Rollups,这是一种支持Layer2智能合约的可扩展解决方案。

就在上周,Plasm已经成功将ZKRollups合约部署到了Plasm网络上。

我们相信Rollups是杀手级的Layer2解决方案,一旦在Plasm网络上实现ZKRollups和OptmisticRollups,Plasm的网络将支持各种DApps以及一个开发环境来抽象所有这些复杂性。

Plasm的发展期望

最后我们再总结下,Plasm未来将支持以下功能:

以太坊的兼容性:EVM,Solidity,以太坊工具基于WebAssembly的合约(ink!合约)PlasmaOVM:支持所有Layer2解决方案的合约环境ZKRollups和OptimisticRollups基于Plasm这些特殊的功能和在技术端的开发能力,Plasm除了拥有强大的兼容能力,还将在可扩展性和互操作性方方面发挥出巨大的作用,并且因为Plasm设计之初就预设了支持二层扩容技术,所以Plasm能够给波卡上面的Layer2带来更多的想象空间。

1、可扩展性展望

正如我们上文介绍的Layer1和Layer2一直处于“爱恨交割”之中,但Plasm通过在代码层面早期的设计,让接入波卡的项目不用再担心扩展的问题,也不用单独自己花时间去开发OptimisticRollups和ZKRollups的功能,仅需要接入波卡网络,就能享受到Plasm带来的“共用”功能。

因此,Plasm网络的Layer2可以更直接的解决可扩展性问题,这也意味着使用Plasm部署DApp可以获得更高的TPS、更低的交易成本和更快的区块确定,而这正好修正了目前以太坊面临的问题,可以说既解决了以太坊的诟病,也给波卡网络带来了特有的智能合约。

正如Plasm创始人渡边创太之前分享的:理想情况下,开发者可以在Plasm网络上构建任何应用,而不用再考虑扩展性问题。

2、互操作性展望

前面我们提到Plasm采用了以太坊基金会支持的Plasma团队开发的虚拟机OVM,它支持所有Layer2协议的虚拟机,这意味着Plasm不仅可以为波卡生态提供各种智能合约服务,还能完美兼容其他类型的Layer2网络,这大大加强了不同区块链之间的联系,带来了更强的互操作性。

鉴于此,Plasm将会搭建起链与链之间崭新的桥梁,Plasm不仅可以兼容以太坊的一些协议还能兼容波卡网络,可以说Plasm是链接了过去与未来的“虫洞”。

作为拿过6次官方Grant的Plasm网络,目前也是在所有Polkadot生态当中唯一拿到如此多?Grant的项目,可谓是集万千荣誉于一身。

在过去的几年中,Plasm团队一直专注在技术领域的研发上,从最早的Plasma到OVM再到现在的ZKRollups,我们一路见证了Plasm在区块链生态中开创性的发展,并将以太坊和波卡的兼容性进一步扩大,而这将是我们在2021年更多的期待,毕竟平行链拍卖在即,让我们拭目以待!

欢迎学习Substrate:?https://substrate.dev/关注Substrate进展:https://github.com/paritytech/substrate关注Polkadot进展:https://github.com/paritytech/polkadot

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:0ms0-6:17ms