达尔文:波卡生态的跨链转接桥枢纽
达尔文(Darwinia)网络基于 Substrate 建立,计划竞拍平行链,并开发通往以太坊等不同公链的桥,从而成为波卡生态的跨链桥接枢纽,让波卡平行链和多条外部公链互通。
这一次 PolkaWorld 专访,我们采访了达尔文联合创始人 Alex,和他聊了聊达尔文如何实现这一目标,他还提前透露了一些达尔文插槽竞拍的计划哦。
PW:请先介绍一下创办达尔文的历程吧。
Alex:我是 Alex 钱晓栋,是达尔文的联合创始人,和我的合伙人 Denny 一起创办了达尔文网络。
在 2010 年、2011 年我们就受比特币的感召进入区块链圈子,各自参与了一些开源的工作。我们是 2013 年左右认识的,那时候是参与一个叫比特股(BitShares)的项目,他那时候是核心开发者,我是做前端的网页钱包代码贡献的,所以在论坛有了互动。那时候比特股算是最早的去中心化交易所,稳定币、DeFi 的概念其实那时候已经有了,但是比较复杂,所以大家讨论得很多。我们从这个时候开始认识,然后开始一起工作,之后又一起合作了很多项目。然后一直到 2018 年的时候,我们决定成立一个小团队,开始做进化星球游戏,然后再进化到现在的达尔文网络。
我们一直有一个愿景,就是 “Decentralized Web” ,所以我们做的各种各样事情,其实都是围绕这个目标来的。达尔文网络主要想解决的是在异构链之间,能够以去中心化、无需信任的方式来进行价值转移的桥网络。我们希望能在各种链之间搭上这样子的桥,能够让资产可以在异构链之间自由地流动,而不需要相信任何的中间人。同时我们也是波卡生态的比较早期的参与者,也是一个比较重要的基础设施的提供者。
我们希望能够成为波卡生态的一个平行链。因为在波卡的平行链架构中,平行链之间是可以通过波卡或者 Kusama 这样的中继链的角色,来实现高速、高效率地跨链互操作,而和外部的既有异构链之间的跨链,要通过桥的角色来实现。所以我们就想承担这样的角色:一方面我们成为平行链和波卡生产其他的平行链能够互通,另外一方面通过我们的桥,和以太坊、BSC、EOS、TRON 之类的外面的这些链接上。那么通过我们,波卡生态的平行链和外部的这些链之间就能进行互通。这是我们对自己的定位和想给社区和行业提供的价值。
PW:达尔文想要成为连接很多的链的 “跨链转接桥枢纽”,这要求你们跟很多的链之间都要搭建桥。你们计划开发和哪些网络之间的桥,目前实现了哪些呢?
Alex:第一个桥是以太坊桥,因为毫无争议,以太坊是现在最热门的一个跨链目的地。后面我们计划的清单里面有下面这几座桥:EOS、波场、BSC 和 Heco,但还没确定下一座桥具体是哪一个。在评估优先接哪一条链时,我们主要是看这条链上的生态,比如应用是否繁荣,用户基数是否多,是不是大家都很想去跨链到这条链。当然也会看它的共识是不是我们能够兼容的。
在第一座以太坊桥完成之后,我们观察一段时间,没有什么太大问题的话,就开始着手做下一座桥的开发了。有了第一座桥的经验,在开发过程中很多东西也模块化了,所以新的桥开发起来进度应该会更快。
我们想要实现的场景是,假设等达尔文上已经接了 4 座桥之后,那么当任何一个新的链想要实现跨链的时候,它只需要和达尔文之间搭一座桥,就可以通过达尔文作为中继,直接打开去往另外 4 个链的通道。和与 4 条链都直连桥相比,这种方式效率高得多。所以随着达尔文连接的桥的数量不断增加,达尔文作为基础设施的重要性就会逐渐显示出来。
特别是如果达尔文拿到波卡的卡槽,成为一个平行链的话,任何一个公链接进来的时候,一下子就打开了一扇门,去通向了波卡生态里众多的平行链,这一点吸引力还是很大的。
PW:波卡官方团队其实也在做一个波卡-以太坊的桥,你们做桥的方案和波卡的有什么区别?
Alex:波卡官方做的以太坊桥,是采用了一个基于 Authority 的 GRANDPA 模型。也就是说,它在以太网上有一个 Authority 的集合,是来自于波卡 Substrate 上的验证人的集合,所以当验证人在波卡端签了名之后,以太坊端就可以用他们的签名来进行校验。这一部分跟我们的实现桥的思路是比较相近的,本质上都是在以太网上实现一个 GRANDPA 协议的轻客户端。
但是我们和它不同的地方在于,我们在块头里面加入了 MMR 摘要信息。MMR 是一种加密算法叫 Merkle Mountain Range,是默克尔树的一种变体。摘要信息是把之前从创世区块到当前区块的所有块的块头,用 MMR 方式进行一次摘要,放在块头里面。
这样的好处在于,当我们在以太坊上确认了一个块,比如说 1 万号块的话,我们就可以直接去校验 0~1 万号块之间的任何一个块,它的形式是否正确,而不需要把 0~1 万号的每一个块都放进去。我们只需要有了一个最新的块,就可以校验历史中的任何一个块,所以相对来讲效率会更高一些。
这个思路不只是应用在以太坊到 Substrate 的桥上,在其他桥的协议里,我们都利用了 MMR 这个特性,这是我们和其他基于轻客户端的方案的最大区别 —— 线性和亚线性的区别,长远来说存储占用少、按需使用、费用更低。然后又通过了引入了 “乐观博弈见证” 子协议,来针对于那些没有不可逆最终性的链,比如以太坊和比特币这类基于工作量证明(PoW)共识的链。
PW:怎样做到桥接过程的去中心化呢?
Alex:我们称我们的轻客户为超级轻客户端,一方面因为有了 MMR,所以我们的块不需要线性的每一个块全都放进去,因为这样占的存储很高,费用会很大,我们可以按需跳着校验。那么怎么确定一个最终的最新的一个块头,它是正确的呢?我们引入了乐观博弈子协议来实现这个过程。
所以总体来讲,我们的桥需要有 “桥矿工” ,也就是 Relayer 来参与的。Relayer 需要把块搬过来,任何人都可以成为 Relayer,可以向超级轻客户端提交他们观察到的块头。Relayer 之间又会有制约关系,如果有人提交了错误的信息,那么会被其他人挑战,这个 Relayer 的押金就可能会被罚掉。其他的 Relayer 就有了足够的经济激励来观察轻客户端里数据提交的状况。
如果当两个 Relayer 发生争议,A 说我看到的是这个样子,B 说他看到的是那个样子,两个块发生争议的时候怎么来仲裁?我们不依靠类似仲裁委员会来投票来决定,而是在协议里就会挑战这两个人说,请你再提交历史链上的某几个块高的信息,来进一步验证。诚实的人就很容易就给到,因为它看到一个真实的链,很容易给出相应块高的数据。而如果这个人是攻击者,它是伪造了一条 fork 出来的条链,那么它就会发生困难。它要事先把链组装起来,才可能去满足你挑战的要求。在 PoW 的协议里面,要伪造一条假的链,攻击的成本相当于在原链发动 51% 攻击。所以攻击者在一次或者两次的挑战下面,他就必然会失败。因为在验证挑战数据时,协议不止检查块头中包含的历史链MMR摘要,还会对工作量进行跃迁校验。
所以这也是我们链的一个最大的特性,就是任何人都可以来仲裁,没有一个中间的超级实体来仲裁,我们的去中心化主要体现在这个方面。
PW:接下来的一段时间,达尔文发展的重点是什么?
Alex:上个月我们刚发布了 2021 年的开发路线图,从中可以看出,在新的一年里,我们的重点有两个方向:一个是 Kusama 和波卡的平行链卡槽拍卖,我们非常想要成为平行链。另外一个就是搭建尽量多的桥。这样我们在成为 Kusama 或波卡的平行链后,才能为生态带去一些实质性的价值。
同时在生态应用方面,会继续增加进化星球的功能,进化星球是我们展示能力的一个应用。所以随着每一个桥的开通,我们都会部署一块新的大陆在目的地的链上,让互操作性能够在游戏里体现出来,同时也让游戏变得更好玩。游戏的 NFT 以及 GameFi 的理念会在达尔文和进化星球中得到最大的验证。
PW:所以达尔文的先行网 Crab 会去竞拍 Kusama 的插槽吗?
Alex:是的,Crab 先行网将竞拍 Kusama 插槽,达尔文主网将竞拍波卡插槽。
Crab 是达尔文的先行网,是有真实的经济价值的。Crab 上的代币叫 CRING,我们会给它实打实的经济价值。我们从达尔文主网上拿了 2% 的就是 4000 万的 RING 作为超额储备,来支撑 Crab 上的 CRING,让 CRING 可以用 100:1 的比例兑换 RING。
如何实现兑换?我们之后会有下一座桥,是达尔文和 Crab 之间的桥,是一座 Substrate-Substrate 的桥。当 CRING 从 Crab 上转移到达尔文时,就变成了 RING,但它的数量就缩小了 100 倍。反过来,当 RING 去到 Crab 的时候,它就变成了 CRING,同时数量增大 100 倍。我们通过这种方式,来给到 CRING:RING 100:1 的托底价值,也让 Crab 真正成为一个有经济价值的先行网。
PW:说到插槽,达尔文打算什么时候公布平行链插槽竞拍计划呢?
Alex:其实我们已经有了大概平行链竞拍的方案,但是还在做一些功能上的开发,所以想等一切确定后再公布。
我们大致的竞拍方案思路是,对于那些支持我们竞拍插槽的用户,除了根据贡献比例给到 RING 代币回报之外,我们还想给他们一些其他更好玩的东西。比如说给他们一些 NFT,比如进化星球大陆里的土地、使徒小人,或者可以挖矿的钻头、钻机工具等。用户可以使用这些 NFT 在游戏里进行 GameFi 挖矿,比如在我们马上推出的铸造系统 “熔炉” 最终版中,用这些奖励区铸造出更多的东西,再进行建造或者交易。
我们会在 Crab 上建立一块大陆,拿大陆上的 NFT 去奖励用户。目前我们已经另外发了一个 Pangolin(穿山甲)测试网,专门在测试在 Crab 上面的 DVM 的执行的情况。DVM 就是 Darwinia Virtual Machine,是一个 EVM 兼容的虚拟机,可以执行以太坊上的一些应用。DVM 会为我们进化星球新大陆的部署带来便利,同时也可以有其他的开发者在上面部署一些应用。目前我们在密集地测试 DVM 的工作性,想要等到这一点确认无误后,再公布明确的竞拍方案和细则。
PW:DVM 是基于 Substrate 的以太坊兼容层 Frontier 做的吗?在 Frontier 的基础上有做了哪些改变呢?
Alex:Frontier 提供了标准的 EVM 的内核和执行器,同时给外部的 Substrate 链提供了很多灵活的接口来进行链层面的定制。DVM 的改动主要是深度的适配了现有的基础设施,为智能合约开发者提供轻松和无障碍的开发过程,同时为 dApp 用户提供无缝的使用体验。这些改动主要包括 Subkey 地址与以太坊地址的双向映射,系统 Currency 的存入与提取预编译合约,Substrate 余额精度和以太坊精度的无损双向转换,Metamask 的完全兼容,签名算法的兼容。
就拿 Substrate 余额精度和以太坊精度的无损双向转换来说,EVM 和 Substrate 之间是有一个接口的,用户的余额在转换,和常用工具的使用上都会有些麻烦。比如 Substrate 目前常用的是 Polkadot.js 插件,而跟 EVM 交互,常用 MetaMask 的插件等。我们把它们的接口进行了统一,让用户的交互变得更顺滑一些,特别是余额还需要从外面的链转到里面去,从 EVM 里转到外面来。
现在的形式就好像是一个怀孕的妈妈一样的,外面的 Substrate 链是一个妈妈,肚子里面的小朋友是一个 EVM,他们其实是两套独立的生命体,通过脐带在传输血液,但传输过程中的一些操作是会让用户很困惑的,所以我们在这个地方做了一些改进。
DVM 在达尔文中还有一个重要的使命,那就是管理各种各样的跨链映射资产,我们知道达尔文是一个跨链转接桥枢纽(Bridge Hub),将会有各种各样的资产被映射到 Darwinia 网络中去,包括 ERC20 Token 和 NFT,如何有效地管理这些映射资产同时又不限制这些资产继续在开放应用中使用,是一个十分重要的问题。我们使用 DVM 来管理这些映射资产恰恰是因为智能合约就是管理这些映射资产的重要手段,同时因为以太坊的资产标准已经被广泛地使用和接受,DVM 上的这些映射资产也将使用 ERC20 和 ERC721 这样的通用标准。
虽然 DVM 是为了管理跨链映射资产而生,但是作为一个通用开放的智能合约平台,并不限制其他的 dApp 在上面生长,包括 DeFi、NFT 等等,目前已经开始有 Swap 应用在达尔文虚拟机上进行部署。
PW:波卡社区的用户和开发者可以怎样参与达尔文项目?
Alex:其实一些一直关注达尔文的用户,已经在以各种各样的形式参与了。
Crab 的代币我们已经通过空投的方式给到 RING 和 DOT 的持有者,让用户可以在 Crab 上面来进行各种各样比较激进的实验。
在达尔文上面,因为 staking 模块是在第一个阶段就开启的,用户可以参与 staking,最近的收益是比较高的。你也可以先行试验一下以太坊和达尔文的桥,比如从以太坊上转过来,再从达尔文上转回去。还可以玩进化星球,参与社区活动,加入大使计划来帮助我们传播达尔文的理念等。
Scan QR code with WeChat