以太坊:波卡创始人Gavin Wood新作:Polkadot、Substrate 和以太坊_UBS

作者:GavinWood

翻译:KIKO

来源:PolkaWorld

编者注:原标题为《Polkadot、Substrate和以太坊》

从三年前Polkadot论文发布以来我们就知道,与以太坊生态系统建立桥梁,以帮助扩展双方的功能将是该网络的关键点之一,这一点没有改变。当然,“以太坊”在各种语境下意味着许多不同的东西,它的意思很大程度上取决于意图和严格性。无论这个词怎么用,“以太坊”至少不会指代当前的“ETH主网”,这一点应该很少有人会争辩。但是,有人会断言,“以太坊”意味着要排除任何其他网络,甚至包括那些“官方”批准的网络。

在其他情况下,它包括官方批准的后续项目/网络/分支,例如Shasper。其中一些还包括“非规范”分支,例如以太坊旗帜下的原始“经典”链,但有些人反对这种说法。“以太坊企业联盟”行业组或以太坊开发组等组织的人,普遍认为“以太坊”是一个更广泛的概念。包括基于以太坊的原始执行引擎及其相关开发人员工具或与之兼容的任何技术,比如?Ethermint、HyperledgerBurrow和各种Parity-PoA网络等,这里仅举几例。

无论如何定义以太坊,Parity都一如既往地致力于支持和将“以太坊”桥接到Substrate和Polkadot。虽然我们正在将Substrate及其相关的智能合约基础设施,做成为世界上创造新区块链和dApp的最强大、用起来最方便的框架,但我们绝对理解,有很多人喜欢在以太坊生态系统中创造,无论基于主网还是在更大范围的开发社区中。我们会尽最大努力支持这些团队的建立和相互联系。

我们的承诺涉及三个不同的项目,我想花一些时间来解释:Substrate中的波卡/以太坊公共网络转接桥、Substrate/Parity-以太坊-PoA桥和以太坊兼容的EVM智能合约执行模块。

Polkadot/以太坊公共桥

第一个基本上是2016年原始Polkadot论文中假定的软件的一部分。该想法是在以太坊主网上建立智能合约,该合约与Polkadot的Grandpafinality小工具保持同步,是一种Polkadot的“超轻客户端”。这促进了非常普遍的互操作水平,主要是针对以太坊链的原生代币和预先存在的合同,这些合同提供了一些关键功能,而这些功能在Polkadot中是不可用的。从技术上讲,这种智能合约能够分析新的区块并将其转发到以太坊链中。Polkadot平行链将包括以太坊的“轻客户端”,能够检查其PoW共识系统并解释智能合约收据,从而将以太坊的消息转发到Polkadot网络中。

实现这些会有一些障碍,主要障碍是以太坊主网上非本地代币的gas价格过高。在创建这样的基础架构方面已经有了一些早期的努力。但是,要正常工作并且没有额外的验证人/Staking经济,这将需要Polkadot的额外支持,特别是要求其验证人以以太坊固有的格式提供最终性证明。Web3基金会正在积极研究并指定为此设计,并且可以向希望追求实现结果的团队提供赠款。

Substrate/Parity-以太坊-PoA桥

但是对于某些项目,Polkadot/以太坊的互操作性不太重要,因为它们无论如何都将无法部署到主网。尽管没有在以太坊主网上部署,但这些项目还是希望与以太坊生态系统保持高度兼容,因为其中包括活跃的社区、开发人员工具、支持和文档以及众多可用的服务提供商在内的众多因素。归根结底,该网络处于令人垂涎的位置,在这里“没有人责怪你选择在以太坊上写你的合同”,对此我们感到敬意,也为我们参与了这一创造过程感到自豪。

为了支持这种观点,我们将引入一个?Substrate到Parity-以太坊-PoA的转接桥,这与位于xDAI链核心的现有Parity转接桥非常相似。在这种情况下,它没有将任意的Parity以太坊链连接到以太坊主网,而是将其连接到Substrate模块。在这种情况下,以太坊-PoA链仍将需要管理其自身的安全性。以太坊-PoA链将使用快速Aura共识算法,并受益于久经考验的Parity以太坊代码库,该代码库具有多年的优化和调优功能以及各种其他企业级功能,包括秘密存储集成和合同状态加密。

在这种情况下,所需的基础架构要简单得多:我们在ParityEthereum代码库中引入了一个特殊的预编译协定,该协定能够高效且无状态地验证Grandpa的确定证明。借助桥接合同和区块转发器,唯一需要的附加组件是充当Ethereum/Aura-PoA轻客户端并可以理解和转发消息的Substrate模块。该项目的工作已经开始,我们预计在今年年底之前会出原型。

因此,该项目将允许任何基于ParityEthereum的安全私有链或PoA以太坊链可以完全访问同级Substrate链或Polkadot社区。

SubstrateEVM

还有一些项目喜欢Substrate以及它带来的所有功能和灵活性,但是谁需要为他们现有的Solidity代码库升级的路径,在某些情况下这确实是非常重要的。我们自己的基于WebAssembly的“Substrate合同”模块及其各种工具,包括Ink!。基于Rust的EDSL是我们着手进行的事情,其原因有很多:LLVM的WebAssembly后端意味着许多通用语言可以轻松地用于Wasm。诸如解释器和编译器、调试器、字节码分析器和库之类的大量工具意味着可以大大改善开发环境,而且有了Ink!我们还获得了Rust语言的测试、文档和正确性功能。

此外,通过抛弃已有五年历史的以太坊执行模型,我们既可以简化和加快代码库,又可以在执行环境中提高经济效率。就是说,现实表明有时功能、性能和清楚程度必须在兼容性面前让步。为此,我们将推出SubstrateEVM。这是一个SubstrateSRML模块,将以太坊兼容执行环境“本地”引入到Substrate中。本质上,这使你的Substrate链可以承载绝大多数以太坊状态转换功能。可以将现有的Solidity/EVM代码部署到此环境中。与Substrate其余部分的互操作是通过专门引入的“预编译合同”API进行的。

将其视为单个SRML模块中的整个以太坊区块链,可以集成到你的自定义区块链的其余部分中,可以称之为区块链虚拟化层。这项工作已经开始,我们还希望在未来几周内准备好MVP。

此外…我们也越来越有兴趣支持现有的工作,以开发用于Solidity编译器的WebAssembly后端,该后端与Substrate-Contracts执行模型兼容。如果正确实施,这将允许将现有的Solidity智能合约直接部署到Substrate-Contracts链中。实际上,在此模型中,没有什么可以阻止同一Substrate链同时具有EVM-Contracts模块和Substrate-Contracts模块。两者之间可以互操作,甚至可以将消息发布到桥接过来的单独的Parity-Ethereum链上,或者如果部署为平行链,则可以传播到包括Ethereum主网在内的更广阔的Polkadot社区!

目前,我们主要关注开发和强化Polkadot1.0的最终核心组件,因此,我们无法始终像我们希望的那样将大量的开发时间用于这些项目。就是说,Polkadot的存在理由是将具有多种技术假设的截然不同的项目整合在一起。以太坊社区是地球上最重要的开发人员社区,拥有最自由的思想家和最有意义的发展——忽略这一点是短视的表现。经过两年的漫长发展,Polkadot和Substrate的核心基础架构已经日趋成熟,我们真的可以开始考虑构建外围部件,并使世界变得多样化,让连接链成为现实。

有关Polkadot和Substrate的更多信息,请访问Polkadot网站或Substrate网站。你可以在GithubPR上查看SubstrateSRMLEVM模块的状态,或者在我们在Github存储库中跟踪Ethereum-PoA/Substrate桥的开发进度。

?

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

大币网

[0:15ms0-14:552ms