墨客系列介绍-子链

2018/4/6 17:14:16 发布者:本站编辑

区块链有很多概念,比如分叉链,侧链,子链,分别都是什么东西呢?


分叉链指的是基于同一个软件的,增减一些功能后单独部署的一个区块链。通常有两种玩法。很久以前,区块链还没有这么火的时候,那时候有比特币和很多山寨币。那些山寨币大多就是对比特币进行一些功能扩展或者参数修改,然后取个花哨的名字,靠营销来吸引眼球。到了2017年,比特币的市值超过了1500亿美元,这时出来一个新的玩法,就是不用再取其他的名字了,正儿八经的仍然用比特币的名字,但是作为比特币的儿子、孙子。和比特币的区别就是技术参数上的变动,主要是区块大小,难度系数更新办法等。这个玩法的特点不是另开一桌,而是直接保留比特币的原有用户群体,分叉之前的钱包都能获得等量的新货币。这个好处是显而易见,直接继承了比特币庞大的用户群。所以,BCHBTG轻而易举的挤入了币值前十位。当然,你能不能抵挡住刚开始分叉时候的抛售,对营销的压力会比较大。可以预计,比特币的儿子和孙子们会越来越多,他们之间会为算力的争夺互相厮杀。(为什么会互相厮杀,见《墨客系列介绍-虚拟货币的定价模型》)

 

 

侧链指的是与主链相平行的单独一个区块链,但是它和主链之间可以通过相互了解的协议互联。主链的货币可以通过在主链的可验证的锁定,在侧链获得对应的货币,反之亦可。作为主链的补充,侧链可以提供一些主链不能提供的功能。但是这个互联对共识机制有要求,而且侧链必须有与主链相当的算力才能保证侧链货币的安全性。要达到相当的算力,其实完全就成了另外一个单独的链。所以侧链概念出来后一直没有太多的应用。

子链指的是在主链的平台来派生出来的具有其他功能的区块链。这些子链不能单独存在,必须通过主链提供的基础设施才能运行,并且免费获得主链的全部用户。一个简单的例子是以太坊上面的erc20 合约。这个合约可以看成是一个逻辑子链,但是这个子链的共识方式与主链一致。

与以太坊不同,墨客扩充了子链的概念。墨客的子链一个显著的不同点是子链可以定义自己的共识方式和执行模块。与主链POW的共识方式不同,子链的共识方式可以是PBFTPOS,甚至是用户自己定义的共识方式。当然用户必须另外定义共识引擎,实现在自定义共识机制下的任务的执行。这些任务可以是基于solidityEVM的合约,也可以是用户自己定义的插件。SCS节点通过安装这些插件来参与用户自定义的共识过程。这个参与就是自定义的挖矿。SCS通过提供运算能力来维持自定义子链的运行,同时也获得收益。

 

 

墨客子链例子

 

这样做有几个好处:

1. 以插件的方式大大扩充了子链可以实现的功能。使得子链的功能不仅仅限制于智能合约所能处理的范围,增加了实用性。

2. 可以充分利用MOAC主链的生态环境快速地部署具有新功能的子链,而不需要去维护单独区块链所需要的节点,以及吸引新的用户参与付出的成本。

3. 部署子链的复杂度大大降低,只需要编写子链的共识以及执行模块。

4. 使得普通的用户SCS节点可以很方便的参与共识,实现共赢。

举个例子,比如说我想创建一个空气质量监测信息共享的区块链。我所需要的是编写一个墨客子链的共识插件,以及提供一个相配套的硬件,或者将传感器硬件与共识插件打包成一个硬件盒子。一个硬件盒子对应一个SCS节点。这样,所有具备空气监测能力的SCS节点注册后构成了一个子链。在这个子链中,每个SCS节点作为矿工,通过共识来维护子链,与此同时,提供空气质量信息来获得代币。并利用墨客的主链,实现与MOAC或者其他货币的交换。

 

此外,由于墨客支持大量的子链而不会影响系统的总体性能(参考《墨客系列介绍. 分片》),并且子链之间良好的互相交互功能,使得墨客可以架构一个功能强大的立体结构。我们可以设想这么一个墨客的架构场景:

 

1. 墨客的底层POW挖矿系统提供一个可靠的全局一致的区块链

2. 快速处理智能合约并且能够随时更新SCS节点的PBFT子链

3. 支持快速处理的零知识证明子链

4. 由海量SCS节点(硬件盒子)构成的IPFS分布式文件系统子链

5. 多个面向专业应用的行业子链

6. 分布式子链token交易所

7. 多个连接外部区块链系统的跨链子链

 

这样,通过各个子链之间灵活的交互功能,一个子链可以使用另外一个子链提供的资源(比如分布式文件系统)使得接入墨客系统的用户可以获得强大的分布式技术支持,从而使得在此基础上的构建应用变得非常简单,并且能够获得墨客系统的社区资源。另外由于墨客的跨链功能(参见《墨客介绍系列 – 实现与所有其他区块链的跨链》),决定了墨客是个开放系统,能够不断的吸收其他区块链技术的社区资源和技术进展。