Moonbeam创始人Derek接受DeFiYield Michael的采访,介绍了Moonbeam与波卡的关系、分享并讨论了Moonbeam性能表现和未来发展方向等观点。
以下为Derek采访节选,点击观看完整视频。
你为什么选择在波卡上构建Moonbeam?
我们最初构建Moonbeam的原因是我们觉得将来会有越来越多的区块链, 而这些区块链如何互相交流可能会成为一个问题。我之所以相信未来会有更多的区块链是因为计算一开始也很贵、很稀有,但因为计算(机)非常有用,再加上大家共享了资源之后,价格就逐渐下来了,功能也变得更具有针对性。我觉得区块链未来也会变得更多、更具有针对性。
今天,如果你想构建一个区块链的话,你基本上只有两个选择:要么用波卡的Substrate技术,也就是个区块链的框架,要么用Cosmos SDK技术。这两个框架会让构建区块链便捷很多。
为何在波卡上构建一个与EVM兼容的链?
对我们来说,最终目标并不是成为像是在波卡上的以太坊。EVM兼容性是有实际价值的。Moonbeam的愿景是成为一个大家可以构建跨链用例和应用的平台,但是我们在想大家会使用什么开发工具呢?因为我个人背景是Web2而不是Web3,所以我们团队通常以实际角度来看事情。当观察开发者用的工具时,我们发现EVM技术栈有着最高的采用率、最成熟的工具、最多的集成、最多基础设施提供者等等,所以我们觉得做以太坊实施是一个非常具有使用价值的决定。很多开发者已经在使用这些工具了,所以采用以太坊相比使用新的技术栈会减少很多麻烦。
我们决定在Substrate上做以太坊实施,其中包括EVM、交易层、Web3 RPC等必要成分。我们的目标之一是达到开发工具和基础设施兼容性以确保它们能在Moonbeam上正常使用。另一个目标是部署其他一些重要的工具,例如Etherscan、Chainlink喂价等。达成这两个目标是让大家高效工作的前提,它们现在也都已经实现了。
为什么不直接分叉整个以太坊状态?
这种方法对于Moonbeam来说不太合理,因为Moonbeam有自己独特的Token经济模型,如果直接搬运以太坊的话会产生许多冲突,所以从零开始更适合我们。Moonbeam在1月上线后也一直在EVM上构建基础设施来帮助大家更高效工作。
波卡上的架构
平行链和波卡负责的是不同的地方。两者合作的方式是:平行链负责活跃度和区块生产,我们有个完整的质押系统来判定谁是合格的收集人(Collator)可以用来生产区块。收集人只负责生产,但不做最终确认。因此区块被传送至中继链上的验证人(Validator),验证人有能力能够验证交易。总结来说,平行链这端负责活跃度、区块生产、功能性,而中继链验证人负责安全性和最终验证。这个模型的强大之处在于,Moonbeam与其他平行链处在安全共享伞下,也就是由中继链的支持下,平行链之间可以互相传递消息、集成。
Moonbeam上如何达成共识?
和Cosmos的模型相似,Moonbeam用的也是一个质押类系统。GLMR Token可以被质押给收集人。我们一共有将近100个收集人插槽,质押量最多的收集人会占据这些插槽,这些收集人会被随机选择生产下一个区块。所以Moonbeam是有一个权益证明共识系统的。
波卡如何保证安全性,抵御攻击?
我认为收集人负责提交区块,他们不会最终确认区块,直到中继链的验证人完成它,所以这个机制运作的原理是如何做到的?波卡采用WASM技术。Moonbeam采用Runtime(所有Moonbeam核心的逻辑,如EVM等其他组成部分)。作为成为波卡上平行链的一部分,WASM二进制格式有Moonbeam所有的逻辑,发布到中继链。中继链上的模型是:每个短时间内,不同验证人随机进入不同平行链的槽位,以接收来自收集人的区块。进入时,验证人加载拥有这Moonbeam核心逻辑的WASM二进制,以重新验证区块的所有内容。如果有跟Moonbeam Runtime不符合的地方,验证人会拒绝此项交易。这就是安全性的由来。
各方现在对于EVM有些批评意见,甚至出现了EVM++、Famtom VM等其他更新的版本,Moonbeam如何应对?
EVM对Moonbeam来说仍然是一个正确的选择,鉴于Moonbeam是希望最大化兼容性以及与其他链的互操作性。就目前来说EVM兼容性仍能够赢得这个市场。问题在于,扩展性如何?
Moonbeam的愿景是多链未来,我们想要提供可以轻松地将工作量迁移至其他链。现阶段我们正在与其他现有的链进行集成。长期来说,开发者想要将工作量迁移至EVM或者是波卡上的平行线程(随付随用的平行链,无需租赁槽位),我们的想法是,可能有一些在Moonbeam上的智能合约需要调用其他链来工作,智能合约变得就如协调者的角色。
Moonbeam的性能、费用如何?
总的来说,现在费用挺低的,每次交易只要几美分左右。有些人问过我为什么费用不再低点,但设立一个合适的价格并不容易,因为如果费用过低就会有很多垃圾消息,如果费用过高就会抑制大家使用Moonbeam,所以我们要尽量找到一个平衡点。性能方面,我们也一直在做改进。我们先正在准备一个叫“Contextual Execution”的升级,它能将吞吐量增加四倍。
所以为何Contextual Execution是一个重要的升级?
目前来说,我描述的模型是将区块传送至中继链进行验证,所以现在每个区块都需要一定数量的时间让中继链上的验证人重新执行/验证它。所以我认为限制是在于整个流程区块与区块之间的时间差距,因为区块既要被生成还要被送至中继链然后验证人还要重新执行它,并在获得验证后再传送至平行链。在EVM模型执行区块总是需要一段时间并重新执行,如同所有的交易。
所以Contextual Ececution的重点就是能够允许中继链能供同时平行地执行区块,代表最终的验证或许会晚一点点出现,但可以产生更多的交易和吞吐量。目前来说有点像是WASM执行时间,中继链验证人需要重新验证所有区块,这就是当前的限制。所以通过展开这个限制并允许多层的验证,或是平行的进行验证,将会协助提升吞吐量,所以这就是为什么我们先前说可以提升4倍。
跨链桥、以太坊上的Layer 2 Rollups、和波卡上的跨链XCM有什么区别?这些区别对Moonbeam意味着什么?
至今很多跨链互操作性都是通过跨链桥实现的,最值得注意的用例就是Token的转移。现在很多新的协议意识到了Token转移只是很多交互中的一个用例,不同的人可能会用不同的术语(如GMP、XCM等)来概括这些交互,但这个概念就是你可以进行例如Token转移或发送消息的跨链交互,而且我们现在在这个领域看到了很多新发展。
那么就区别上来看,以太坊总的来说只是一个共识领域,和波卡或是Cosmos的区别是它们有多个链。Cosmos上的链更有主权意识一些,而波卡上的那些链更像是不同有针对性的平行链合在一起的一条链。
我觉得针对性很关键,波卡和Cosmos允许开发者们把他们的链用于特定的用处,例如基础设施、存储等等,这在Layer 2上还很难做到。这种针对性对于我们的多链愿景很重要,因为现在你可以专注于做好你擅长的事,然后从其他链获取你不擅长的东西。
不同链之间的可组合性如何运作?比如基于Rust和基于EVM的平行链如何互相交流?
这些东西现在正在被开发,而且因为有很多消息传递方式所以其实会很复杂,但我们先来讨论下波卡原生的XCM消息传递。我们正在与很多平行链团队合作来帮助促进XCM的跨链运用。
Moonbeam智能合约可以往另一个平行链发送一条XCM消息,也可以接收外来的XCM消息,这有助于Moonbeam上的一些集成。至于如何运作,XCM可以被看作是一个运输工具,你可以把以太坊智能合约通信数据等放入XCM进行运输。
有些团队可能会使用平行链和Moonbeam上的智能合约来驱动他们的应用。我们很看好互连合约,因为它可以允许一个跨很多链的应用为用户提供一个整合的体验。有些应用已经开始开发了,比如Lido已经在Moonbeam上部署了。那么在Moonbeam上有一些智能合约和预编译代码来延伸EVM的功能,然后我们可以用XCM来将这些预编译代码连接到其他链。我们希望能够掩藏复杂琐碎的东西,为用户提供更便捷的体验。
跨链的安全漏洞如何解决?
某些线路会比其他线路更安全,在以后我们可能会有多个线路,就像我们有普通邮寄、FedEx等等,人们会选择最适合他们想要运输的东西的线路。
我认为IBC和XCM有很大的优势,因为它像是链上原生构建的。目前有很多覆盖的网络,他们提供了很多人希望到达的目标点。我的确期待它具有非常高的实用性,并在这些覆盖的链上更新,且我们也已经看到了很多正在进行的开发者使用这些覆盖的网络创造有趣的跨链应用。
举个例子,有个在Moonbeam上部署的借贷协议,有点像是MakerDAO,你存入抵押后会获得拿出稳定币的资格。以往如果想要进行一个多链扩张,一般会直接在多条链上复制该协议。这种做法的挑战是碎片化效应,你的每一个市场都是分离的,互相之间毫不知悉;而我们现在这个队伍的做法是在Moonbeam上设立一个中心,然后在其他链上设立分支。那么假如一个用户在Avalanche上进行存款,Moonbeam中心就会收到消息说这位用户在Avalanche存入了多少数额的AVAX。然后这个用户可以回到主网络并获取稳定币,因为系统知道这位用户在Avalanche上存入了AVAX。这是一个中心辐射型模型,中心知悉其他所有链的状态,所以效率就会比分离市场模型高很多,因为你可以使用在任何一个链上存入的资金,所以我对这种方式非常看好。
那么这种中心辐射型模型对去中心化意味着什么呢?
首先,中心并不会有整条链的状态,而只是有某一个应用的状态,而且就算它是被放在Moonbeam上的智能合约里,Moonbeam本身也是去中心化的,所以不会出现像链下那样的中心化形式。当然了,中心辐射型模型和每一条链的部署是独立的那种点对点模式不同,但那种模式要复杂很多,所以很多团队会先采用中心辐射型模型,相对于联合的系统来说,简化了很多东西。
Moonriver是你们的金丝雀网络,那么在Moonriver上进行测试给你们带来了什么好处?
不管做什么事,一开始肯定都会犯错。在Moonriver上线第一个月时出现了一个停顿,因此我们得知了在进行数据迁移时,必须要把所有数据放在一个区块上,所以这是进行升级很重要的一点。最终我们需要中继链的帮助,虽然当时问题不大,但我们当然不希望类似的情况再发生,所以我们研发了各类工具来确保当我们在Moonbeam上线时不会出现这类错误。
有一个测试网当然很好,但这不会分裂你们的用户和流动性并创造其他问题吗?
有两个网络当然会有更多的复杂性,但我觉得这是值得的。Kusama和波卡之间的连接性正在提升,除了第三方桥之外还有一个通用XCM通道正在被开发中,这将使得两者间的集成更上一层楼。虽然Kusama的目的是作为金丝雀网络,但现在它也有了自己的特色,因为社区成员和Token持有者也都有自己的想法。有些项目只想在Kusama部署,但总的来说我们大部分精力还是放在Moonbeam上。
你们选择了构建一个通用区块链而不是应用链,这么做的优势有哪些?
虽然Moonbeam和EVM是通用链,从某种程度上来看其实也是非常有针对性的,因为我们将它专注于某些功能。关于应用链,我觉得就像电脑革命一样,之后会有更多的应用链。但我觉得未来我们会回到一个类似于云端的情况,也就是会有一些擅长于某些事的专注基础设施链,如数据存储、消息传递等等。开发者们可以在Moonbeam上把这些不同东西合并在一块。
你对Moonbeam的生态系统哪些方面最感到兴奋?生态系统上正在开发有什么有趣的项目?
自从我们一月上线以来,我们的生态系统很活跃,现在大约有268个项目。我最感兴趣的是跨链用例。因为EVM其实很多,所以我经常被问的一个问题就是Moonbeam有什么特殊的,Moonbeam要怎么样从其他那些EVM中脱颖而出。对我们来说,答案就是专注于跨链用例。
举个例子,我之前提到的多个消息传递系统,XCM、Axelar、和IBC,那么有三个不同消息传递系统的情况下就算是想要追踪交易都是很困难的事,所以我们想要把Moonbeam打造成适用于这种情形的最好平台。Moonbeam可以提供更好的用户体验和效率,所以我确信这个平台会在未来获得更大的吸引力。
关于Moonbeam
Moonbeam是一个智能合约平台,用于构建跨链互连应用程序,能够访问任何链上的用户、资产和服务。通过将来自以太坊、Cosmos、波卡等功能整合到一个平台中,Moonbeam解决了当今用户体验碎片化的问题,解锁了真正的互操作性,并为下一代应用程序奠定基础。Moonbeam平台使用集成的跨链信息传递,允许开发者创建访问多个远程区块链服务的智能合约。通过此方式结合Moonbeam的开发者友好型EVM平台、各类工具支持和Substrate架构,为构建互连应用程序提供理想化的开发环境。
更多 Moonbeam 信息
官网: Moonbeam | Polkadot Smart Contract Platform
twitter: https://twitter.com/MoonbeamNetwork
Telegram: https://t.me/moonbeam_CN
Discord: https://discord.gg/skPfXvJWG7
中文电报群助手:@MoonbeamSister