一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统的制作方法

2022-03-05 10:45:57 来源:中国专利 TAG:


1.本发明涉及有向无环图-账户智慧交易链(dag-awtc,directed acyclic graph-account-wise transaction chain with byzantine fault tolerance)总账系统,具体地,涉及拜占庭容错(bft,byzantine fault tolerance)确定性共识方式的有向无环图-账户智慧交易链总账系统。


背景技术:

2.分布式总账大致分为区块链方式和有向无环图(dag,directed acyclic graph)方式。
3.图1为区块链及有向无环图的概念图。
4.图1的(a)部分示出区块链(blockchain)的生成方式,图1的(b)部分示出有向无环图(directed acyclic graph)的生成方式。
5.如图1的(a)部分所示,区块链总账具有一字型链的总账结构,具有一个写入点(writing point),因此存在区块的生成速度非常慢的缺点。
6.相反,图1的(b)部分所示的有向无环图总账同时具有多个写入点(writing point),由并行结构的链构成。当然具有交易的生成速度快的优点。然而,与全序(total ordering)方式的区块链不同,有向无环图总账由偏序(partial ordering)方式构成,因此只有相互连接的交易(transaction)才能定义写入顺序。
7.即,虽然有向无环图的速度快,但其具有的总账结构不适合用于确定性共识。这也是现有的各种有向无环图总账无法采用确定性共识方式的主要原因。
8.为了确定性共识,需要全部具有相同状态,为此需要停止新交易的生成,并等待当前状态全部被传播。如果进程以这种方式停止,则会破坏通过采用有向无环图在并行的写入点同时多发性地生成交易而获得的速度快的优点。因此,到目前为止在有向无环图总账结构中没能采用拜占庭容错确定性共识方式。


技术实现要素:

9.技术问题
10.本发明的目的在于,提供一种拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统。
11.解决问题的手段
12.在根据本发明目的的拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统中,有向无环图-账户智慧交易链(dag-awtc)总账系统可以包括共识对象交易设置模块,上述共识对象交易设置模块选择并实时设置所要对有向无环图-账户智慧交易链(dag(directed acyclic graph)-awtc(account-wise transaction chain))的交易(transaction)执行拜占庭容错(bft,byzantine fault tolerance)共识的共识对象交易,
将实时设置的共识对象交易输出到拜占庭容错共识执行模块。
13.其中,上述共识对象交易设置模块可配置成对于实时生成的交易,在过去的规定时间点,将在上述规定时间点之前尚未达成共识的多个交易实时设置为共识对象交易。
14.具体地,上述共识对象交易设置模块可配置成将从当前经过30秒钟至1分钟中的一个时间点之前的尚未达成共识的多个交易实时设置为共识对象交易。
15.并且,上述共识对象交易设置模块能够以如下方式进行实时设置:在实现传播后生成用于表示每个账户的过去状态的数据结构,使得上述拜占庭容错共识执行模块通过对比所生成的上述数据结构来执行拜占庭容错共识。
16.其中,在拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统中,使用梅克尔帕特里夏树(merkle patricia trie)作为该数据结构,但该数据结构可根据实现方式替换为任何其他结构。
17.发明的效果
18.根据上述拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统,通过配置成在并行型结构的有向无环图总账结构中应用确定性共识方式的拜占庭容错共识方式,具有可以确保交易的快速处理、迅速验证以及信息完整性的效果。
19.更加具体地,通过以充分扩散以执行拜占庭容错确定性共识为前提的时间设置,具有可以允许并行地分别执行拜占庭容错确定性共识以及交易处理的效果。
20.即,通过配置成在进行处理交易的同时执行拜占庭容错确定性共识作为单独的后台处理,可以实现拜占庭容错确定性共识,而不破坏有向无环图-账户智慧交易链总账结构所具有的交易的快速处理速度。
附图说明
21.图1为区块链和有向无环图的概念图。
22.图2为有向无环图-账户智慧交易链的概念图。
23.图3为根据本发明一实施例的拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统的框图。
具体实施方式
24.本发明可实施多种变更,可具有多种实施例,将在附图中例示特定实施例并进行详细说明。但是,这并非表示所要将本发明限定于特定实施方式,而应当理解为包括本发明的思想及技术范围内的所有变更、等同技术方案及代替技术方案。在说明每个附图时,对于类似的结构要素使用了类似的附图标记。
25.第一、第二、a、b等术语可用于描述各种结构要素,但上述结构要素不应限于上述多个术语。上述多个术语仅用来将一个结构要素与其他结构要素区分。例如,在不脱离本发明权利范围的情况下,第一结构要素可以命名为第二结构要素,类似地第二结构要素也可以命名为第一结构要素。术语“和/或”包括多个相关记载项的组合或者多个相关记载项中的任一项。
26.应当理解,当提及某个结构要素与其他结构要素“连接”或“联接”时,可以是与其他结构要素直接连接或联接,也可以是中间存在其他结构要素。相反,当提及某个结构要素
与其他结构要素“直接连接”或“直接联接”时,应当理解为中间不存在其他结构要素。
27.本技术中使用的术语仅仅用于描述特定实施例,而非旨在限定本发明。除非在文脉上含义有明显的不同,否则单数的表达包括复数的表达。本技术中,“包括”或“具有”等术语应理解为要指定说明书上所记载的特征、数字、步骤、操作、结构要素、部件或这些组合的存在,而非预先排除一个或多个其他特征、数字、步骤、操作、结构要素、部件或这些组合的存在或者附加可能性。
28.除非另有其他定义,否则其中所使用的全部术语(包括技术或科学术语)具有与本发明所属技术领域普通技术人员通常所理解的含义相同的含义。例如通用词典中定义的术语应解释为具有与相关技术的文脉上所具有的含义一致的含义,除非本技术中有明确定义,否则不应解释为理想化或过度形式化的含义。
29.以下,参照附图,对本发明的优选实施例进行详细说明。
30.图2为有向无环图-账户智慧交易链的概念图。
31.图2示出每个账户分别形成交易链的有向无环图总账结构方式。
32.即,每个账户a、b、c、d都具有各自的链,并行写入每个账户之间形成的交易。由于有向无环图-账户智慧交易链总账并行写入交易,因此是一种速度非常快并且理论上对速度或扩展性没有特别限制的方式。
33.本发明将作为确定性共识算法的拜占庭容错(byzantine fault tolerance)算法应用于有向无环图-账户智慧交易链总账。
34.图3为根据本发明一实施例的拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统的框图。
35.参照图3,根据本发明一实施例的拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统100可配置成包括共识对象交易设置模块110。
36.在拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统100中,将拜占庭容错确定性共识算法应用于有向无环图-账户智慧交易链总账结构。
37.通过拥有并行型总账结构的有向无环图总账的高交易处理速度及无限制的扩展性优点,结合每个账户交易链(awtc)方式,即使账户数量增加,也可以在不降低速度的情况下快速生成交易。不同于区块链,可以立即生成交易而不需要等待区块生成。
38.在区块链总账的情况下,由于通过全序(total ordering)方式在一个写入点(writing point)收集交易并生成区块,因此所需时间长但其生成顺序明确。
39.然而,在有向无环图总账的情况下,由于通过偏序(partial ordering)方式在多个写入点(writing point)中写入交易,因此花费时间短。但是存在只能在连接的交易之间定义写入顺序的缺点。最重要的是,每个节点共识时的传播时间不同,导致结合确定性共识方式方面存在困难。
40.然而,拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统100被配置成采用确定性共识方式之一的拜占庭容错。
41.确定性共识方式一经按既定步骤确认,就不得更改。
42.然而,在非确定性共识方式中,将当前多数人选择的状态认为是已被共识的。但随着时间的流逝,如果多数人选择的状态改变,则共识的状态也会改变。即,不存在不变的共识。例如,比特币(bitcoin)或者以太坊(ethereum)采用非确定性共识方式。
43.在拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统100中,对于在每个节点中分别写入的多个交易,通过每个节点的共识生成有向无环图总账。确定性共识方式一经达成共识,就不得更改。
44.在拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统100以如下方式配置:在每个节点的共识步骤中经过规定的交易传播时间时,在几乎完成扩散的前提下达成共识。
45.即,若充分扩散,则可将其看作为准备好达成共识。例如,在扩散约90%的状态下,由于每个节点具有相同信息的概率高,因此达成共识的概率增加。
46.在拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统100中,当采用拜占庭容错确定性共识方式时,若经过约30秒钟至1分钟的传播时间,则认为充分扩散,并且执行拜占庭容错确定性共识。
47.若不在上述前提下采用拜占庭容错确定性共识,则在经过约30秒至1分钟的传播时间之前,即,充分扩散之前,由于每个节点具有非常不同的当前状态,因此无法正确达成共识本身。
48.本发明的重点在于,通过对假设这种扩散充分实现的时间点设置时间间隔,可在有向无环图-账户智慧交易链总账结构中实现拜占庭容错确定性共识。对此进一步说明如下。
49.首先,有向无环图-账户智慧交易链总账结构是一种基本上不会发生冲突的结构,因为账户(account)的所有者(owner)生成与自身相关的交易,并且由于每个账户的链结构,每个交易的写入位置都不同,因而是一种发生冲突可能性低的结构。因此,在如上设置时间间隔的结构中,即使不阻止交易的处理,也可在后台(background)执行拜占庭容错确定性共识。
50.即,即使在进行拜占庭容错确定性共识的过程中,有向无环图-账户智慧交易链结构中也几乎不发生阻碍(block)交易处理的情况,拜占庭容错确定性共识及交易的处理可并行地分别同时执行。
51.以下,对详细结构进行描述。
52.共识对象交易设置模块110可配置成对于多个交易筛选所要执行拜占庭容错共识的交易并将其实时设置为共识对象交易。
53.共识对象交易设置模块110可配置成对于实时生成的交易,在过去的规定时间点,将在上述规定时间点之前尚未达成共识的多个交易设置为共识对象交易。
54.进行模拟的结果,确认了当经过约30秒至1分钟的时间时,实现充分扩散以达成共识。
55.当在经过上述扩散时间后执行共识步骤时,可在最佳时间内快速执行共识步骤来确定有向无环图-账户智慧交易链总账。
56.另一方面,如上所述的时间间隔有一定程度的灵活性。这种时间间隔不限于约30秒至1分钟的时间,也可以是被认为充分扩散以达成共识的时间。
57.但是,若要对比每个账户的梅克尔帕特里夏树(merkle patricia trie),其大小本身可能高达几百mb,导致产生很大的负荷。
58.因此,共识对象交易设置模块110可配置成将实现传播后的每个账户过去的树,即
过去共同的状态生成为约数个字节(byte)的梅克尔帕特里夏树(merkle patricia trie)的根(root)。并且共识对象交易设置模块110可以被设置为使得拜占庭容错共识执行模块10通过梅克尔帕特里夏树的根(root)之间的对比来执行共识。即,通过仅对比缩写状态的梅克尔根(merkle root),简化共识步骤并相应地减少共识时间。
59.其中,在拜占庭容错确定性共识方式的有向无环图-账户智慧交易链总账系统100中使用梅克尔帕特里夏树(merkle patricia trie)作为用于共识的数据结构,但该数据结构可根据实现方式替换为任何其他结构。
60.共识对象交易设置模块110实时设置的多个共识对象交易配置成由拜占庭容错共识执行模块10执行拜占庭容错共识执行步骤。
61.拜占庭容错共识执行模块10可根据实施例执行可验证随机函数(verifiable random function)-拜占庭容错或者实用拜占庭容错(practical byzantine tolerance)。
62.在上文中参照实施例进行了说明,但本领域普通技术人员可以理解,可在不脱离下述发明要求范围中所记载的本发明的精神及领域的范围内,对本发明实施各种修改及更改。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献