区块链

超块链(Hyperchain)拥有先进专利算法的并行区块链

字号+ 作者:米人网 来源:www.lilin111.com 2019-04-04 12:37 我要评论( )

超块链是一种全新的区块链技术,以高性能和高度数据兼容为设计目标,主要解决块效率低下、算力耗费严重和设计以交易导向为主而引发的应用局限性。区块链作为下一代......

超块链是一种全新的区块链技术,以高性能和高度数据兼容为设计目标,主要解决块效率低下、算力耗费严重和设计以交易导向为主而引发的应用局限性。区块链作为下一代互联网基础设施的候选技术,仍需要解决诸多不足,超块链以此为目标,提出分布式系统下的CAP分时一致性方法,并以此理论基础设计出全新的Buddy共识算法,为区块链技术提供了三种全新的特性:可并行出块,可处理离散数据,链上可承载虚拟链。其他次要新特性包括如内建的跨链操作、自定义共识等可被应用层直接调用,这些都极大的拓宽了区块链的适用范围。超块链同样支持交易事务、智能合约等现有区块链的全部缺省特性,而且更加高效。

超块链设计目标

超块链将成为一代高性能、对上层应用友好、开放、敏捷和可定制的区块链技术,以期足以在更广泛领域内承载各类互联网应用。在基本架构的层面上解决现有区块链性能差、局限于交易导向、数据类型受限、去中心化不佳等致命问题。

超块链的具体技术目标是:

· 数据结构及算法充分并行化以提高效能
· 节点对等,完全去中心化
· 对离散(非一致性、非结构化)数据有良好的支持
· 不依赖特定的基础币,不依赖特定的账本
· 内建对智能合约、跨链操作等特性的支持
· 开放架构,支持应用层自定义共识和自定义链上数据
· 支持链上虚拟化

基本原理

超块链以更高并行性为设计目标,而现有区块链在数据结构上是完全串行的,这一硬约束是区块链的关键瓶颈,超块链首先在链结构上作了大幅的改进,提出全新的并行的结构(详见数据结构一节),这一改变可以充分利用分布式网络天然的并行性优势,大幅提高出块效率。

并行的数据结构并不能直接带来效率,现有共识算法普遍基于交易账本,并不支持并行。超块链设计了全新的具有并行特性的共识算法,该算法在Paxos算法理论(一种分布式系统容错算法)的基础上做了大幅改进(详见共识算法一节),采用对等互证的原理,将局部共识有条件扩展为全局共识。

并行链结构存在着一定的回溯不确定问题(回溯指针不唯一),我们通过链结构中的周期性“超块(Hyper Block)”来解决回溯不确定性问题,保证链结构和传统串行链具有同样严谨的一致性。

超块链对所支持的数据结构没有硬性限制,是一种高度开放的区块链技术。
超块链采用与现有区块链相同的方式来支持智能合约等应用特性。
超块链满足区块链技术的去中心化、对等共识、前向依赖三大特征。
超块链完全不同于现有交易导向的串行区块链,而是一个适用于更多应用场景的并行链。

1. 数据结构

超块链的链块分为局部块和超块两种,超块链的数据块结构与传统区块链的链结构相仿,无论是局部块或是超块都是一种前向依赖的链式结构,拓扑结构上均为由块头和块体构成。

超块链(Hyperchain)拥有先进专利算法的并行区块链

整个局部块的整体组装过程如下算法所示:

超块链(Hyperchain)拥有先进专利算法的并行区块链

超块链(Hyperchain)拥有先进专利算法的并行区块链

超块是超块链为了解决并行性和回溯一致性的矛盾而设置的周期性数据结构,这个结构也是一个前向依赖的链式结构,同时记录了局部块的相关信息。

超块链(Hyperchain)拥有先进专利算法的并行区块链

在周期性的超块之间,局部块并行出块,与超块一起形成以下的结构。

超块链(Hyperchain)拥有先进专利算法的并行区块链

整个超块的整体组装过程如下算法所示:

超块链(Hyperchain)拥有先进专利算法的并行区块链

超块链(Hyperchain)拥有先进专利算法的并行区块链

构成超块链并行结构的局部块和超块,各自依据前序哈希值进行锚定,并且不同子链各自可以采用Layer2共识进行进一步的加强难度累积,从而实现整个数据结构的数据一致性的高可靠。

2. 共识算法

超块链的共识算法主要解决在并行条件下的数据共识问题,同时还要支持非一致性数据,因此除POW以外的现有区块链共识算法(基于特定一致性数据的共识)并不适用,因此我们提出了一种基于对等互证原理的全新算法,这一算法借鉴了Paxos算法的实施思想,但作了大幅改变,避免了该算法可能产生的隐式中心化,实现了超块链完全去中心化的并行共识算法——Buddy共识算法。

在Paxos算法中,存在Proposer、Acceptor、Client、Learner这几种角色,该算法是为了实现分布式一致性和容错而设计,节点关系并不是对等场景。在超块链网络的完全对等场景中,我们将角色合并处理为Proposer、Acceptor两个,即每个Proposer同时也是Client,每个Acceptor兼具Learner。这一合并的基本立足点为:每一个节点既是Server也是Client,每个Client获得服务的条件是为对等方提供Server服务。我们将这种对等关系称为Buddy。

利用状态机理论形式化描述如下图所示,如上文所述,网络参与节点存在着“建议者”和“Buddy伙伴”两个状态,其中如前文所述的Acceptor也即为“Buddy伙伴”,有4种不同的响应。任何网络参与节点在“建议者”状态下,上链不成功则依然是“建议者”,发出邀约获得通过则转变为“Buddy伙伴”状态,在此状态下通过其他邀约则继续保持“Buddy伙伴”状态,发生通讯异常则自动退回“建议者”状态。

超块链(Hyperchain)拥有先进专利算法的并行区块链

图四  Buddy共识算法节点状态机图

超块链(Hyperchain)拥有先进专利算法的并行区块链

Buddy共识算法将共识分为两个阶段:局部共识和全局共识。局部共识由有数据上链需求的一对节点为起始,通过广播各自的共识协议而发现对方并提出共识请求,此时节点角色为Proposer,当收到任意Acceptor的回复后,Proposer会依据预定义的共识脚本来决定选择哪一个Acceptor作为Buddy,并按照该共识脚本组装共识数据。这一共识数据被视作初始局部链由两个节点共同拥有。接下来,这两个节点作为新的Proposer,重复前一过程,使局部链以2n的速度增长,直至共识脚本所约定的长度。该过程在系统中是并行进行的,因此系统中将同时存在多条局部链。

超块链(Hyperchain)拥有先进专利算法的并行区块链

  • 共2页:
  • 上一页
  • 1
  • 2
  • 下一页
  • 转载请注明出处。

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • Paralism并行区块链支撑的数字经济平台

      Paralism并行区块链支撑的数字经济平台

      2019-04-04 12:18