WhitePaper Darwinia Network GenePaper - 技术架构 (02)

tony · 发布于 2019年08月26日 · 69 次阅读
本帖已被设为精华帖!

区块链网络正在分层化和专用化,基础的公链网络负责共识安全性和跨链,第二层网络和侧链则正在往特定应用领域发展。

类似波卡网络和Substrate这样的新技术发展,符合了这样的业态发展趋势,在这种背景下,达尔文网络(简称 Darwinia),一个专注于应用领域的跨链和应用链网络,选择加入这个生态和技术趋势,将分层网络、跨链交互、面向应用设计、用户体验等作为我们的关键设计特性和原则。

  • 在使用区块链技术打造新型区块链应用的过程中,我们发现区块链技术的大规模推广还存在几个问题:

    • 1)当前的区块链基础设施还无法满足用户体验:目前区块链游戏的用户体验问题主要体现在两个方面,一是数字钱包的使用上手困难,助记词需要备份和忘记密码无法找回资产对于用户来说还是很大的认知门槛和使用门槛。二是由于目前公链的低TPS,以及燃料费付费习惯对于互联网免费用户来说也是比较大的障碍。
    • 2)传统IT和互联网公司缺乏区块链应用开发工具和方法:区块链应用的开发需要一定的区块链技术积累,传统应用开发者搭建一套完备的区块链开发平台成本较高。
    • 3)不同公链之间的区块链游戏是割裂的:由于公链的异构,区块链游戏开发者为了触及多个公链的用户,需要为每一个公链重复开发同一款应用,成本比较高。

我们希望使用目前最先进的区块链技术和框架来构造一个开放的网络和应用套件来解决这些问题。这个网络和应用套件将区块链可信技术和Web3基础设施,同时又具备以下特性,即分层网络设计,支持跨链交互,开发者友好,最佳用户体验,高并发可定制。

这个网络就是达尔文网络,这个应用套件就是达尔文应用链SDK。

架构设计

达尔文网络是基于Substrate[1]技术构建的区块链网络,在架构设计上参考Polkadot[2]的跨链网络框架,包括中继链,平行链,转接桥等设计。达尔文网络作为Polkadot生态的一员,同时又区分于Polkadot的是,达尔文网络主要专注于游戏和应用方向的跨链和应用链业务。

通过达尔文网络,区块链游戏或者Dapp 可以通过达尔文网络方便的进行游戏资产和游戏操作的跨链交互,比如,以太坊上的迷恋猫(Cryptokitties)游戏可以通过达尔文链把以太坊上的 NFT :迷恋猫转变成EOS上的迷恋猫;以太坊上的玩家和 EOS 上的玩家可以通过达尔文网络同时玩进化星球游戏。同时得益于Polkadot生态,达尔文网络可以链接更广泛的游戏和玩家。

达尔文中继链,达尔文应用链,Polkadot 中继链等的架构关系如下图所示

达尔文中继链

达尔文中继链是达尔文网络中最重要的角色,也是各个应用并行链的枢纽。

达尔文网络自身可以作为一个独立的跨链网络运行,达尔文中继链将负责共识安全和跨链互操作。同时,得益于Polkadot提供了一套开放的异构网络接入方式,达尔文中继链也可以选择接入Polkadot作为平行链运行,Polkadot将接管并负责达尔文中继链的安全,这样,达尔文网络中的所有应用链将可以通过Polkadot连接至外部更广泛的区块链网路。

为此,我们将达尔文中继链的运行模式分成了Solo模式和Polkadot模式:

Solo模式

达尔文网络可以选择作为一个独立的公链网络运行,并负责自己的共识安全,其核心业务和应用业务,包括各个应用链的跨链功能不受影响。

Polkadot模式

在Polkadot模式下,达尔文中继链除了可以作为达尔文网络的中继链运行之外,还将作为Polkadot的平行链。

因为Polkadot网络采用共享安全的模型,所以处于Polkadot 连接模式时,平行链的跨链安全性将由Polkadot中继链的验证人来保证,达尔文网络在切换至连接模式后,原先的验证人和Staking机制将用于保证达尔文网络内部的局部共识,这样有助于帮助实现更快的块确认和更高的TPS。这套局部共识机制也将帮助Collator来确定提交给Polkadot验证人的区块不会违反Polkadot全局共识。

应用链SDK

为了方便应用开发者在不需要懂得太多区块链知识的基础上开发满足应用层面需求的区块链网络,达尔文网络基于 Substrate 和达尔文网络应用工具集设计开发一套应用区块链的框架,被称为达尔文应用链SDK。其设计目标是为了满足应用层面,甚至是业务层面的需求,而不是公链的平台需求,所以达尔文应用链将侧重于框架的灵活性,组件的多样性,在共识算法,出块速度,治理模式上与公链也会非常不同。

达尔文应用链是一组区块链开发套件,可以满足应用开发者不同区块链定制需求,甚至一键发链,包括随机数服务和DKMS分布式密钥管理服务。基于这套SDK开发的应用链也将使用Substrate内核,将被设计成可以作为平行链直接连接至达尔文网络中继链。

NFT可识别性

对于不同的物品,我们会用一个唯一的标识来标记它。在虚拟资产世界,因为存在不同的账本或称区块链网络(简称域),不同的物品在同一个域里面因为有不同的标识,所以可以区分,但是该域里面的观察者无法识别来自外部域的物品标识。

目前现有的很多ERC721的区块链应用所做的设计,都主要是针对域内资产进行标识设计,没有将不同域内的资产复用考虑进来,这样导致在对非同质资产进行复用时,单独的Token ID无法标识唯一的资产,还需要带上很多域信息,实现起来十分复杂。

为了解决这个问题,我们设计了一个星际资产编码标准,让不同公链,不同游戏的资产在达尔文网络可以得到唯一标识,让游戏资产可以方便的跨链转移。

共收到 0 条回复
tony 将本帖设为了精华贴 08月26日 14:04
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册