一种可监管的区块链动态分片设计方法及系统
未命名
07-12
阅读:100
评论:0

1.本公开涉及区块链技术领域,具体涉及一种可监管的区块链动态分片设计方法及系统。
背景技术:
2.本部分的陈述仅仅是提供了与本公开相关的背景技术信息,不必然构成在先技术。
3.区块链作为分布式账本的关键技术之一,其去中心化、可匿名、不可篡改的特性受到学术界和工业界的青睐,然而在区块链的信任模型中,用户之间的信任源于对整个系统的信任,整个区块链所有的交易需要各个节点进行验证和存储,从而浪费了大量的时间和空间,也导致区块链系统存在低吞吐、高延迟的瓶颈,出现严重的可扩展性问题。分片技术作为一种链上扩容方式,将整个区块链网络分成不同片,由各分片的节点负责处理所在分片的交易以及存储分片的状态,通过并行验证事务,在吞吐量、时延以及共识协议等方面都得到优化。
4.然而,分片技术提供吞吐量的同时也带了新的问题,分片处理后,分片仅具有有限数量的节点,从而降低了计算能力并稀释了其中的可信节点。然而这大大降低了单个分片的攻击成本,单个分片内恶意节点更容易发动51%攻击,造成单分片接管攻击。
5.分片策略容易忽略节点之间的客观差异,导致区块链中不同分片之间存在性能差距。在基于分片的区块链中,生成块所需的时间取决于哪个子区块花费最长的生成时间,必须缩短最慢分片生成块时间。此外,整个分片机制在运行过程中有大量时间用于处理交易以外的工作,为了防止节点作恶,在一个分片周期后,不少分片技术需要大量时间和开销进行分片重配置,整个网络对于交易的验证停滞,全网都要在重配置前后进行新旧账本交接,从而大幅降低了整个区块链的性能。
技术实现要素:
6.本公开为了解决上述问题,提出了一种可监管的区块链动态分片设计方法及系统,基于信誉机制,选举领导管理机制提升共识效率,提出监管委员参与共识同步、更新信誉列表并对恶意节点进行驱逐,委员会动态重组有效调动分片系统的活跃性,解决区块链分片后安全风险增加以及共识效率低的问题。
7.根据一些实施例,本公开采用如下技术方案:
8.一种可监管的区块链动态分片设计方法,包括:
9.在第一次共识周期开始时,根据网络成熟度标准选择网络中最老的节点作为负责人组成监管委员会,由监管委员会将网络所有节点随机分到不同的组形成若干组普通分片,最后形成一个监管委员会和多个普通分片的分片结构;
10.在每一个分片中,基于节点累积的信誉分数确定位于领导者区间内的节点,在区间内随机选择出分片中的领导者和备选领导者;
11.当节点接收到来自监管委员会分发的交易进行共识时,片内交易采用由分片领导节点统领的pbft共识协议,跨片交易由监管委员会负责人统领的原子协议进行共识,交易验证后,分片领导者向监管委员会发送生成的子区块;
12.监管委员会基于验证者的行为,通过信誉评价计算所有节点的分数,对于分数未达到阈值的节点投票后进行驱逐淘汰处理,整合来自各分片的子区块,更新信誉列表,生成最终区块广播到全网;
13.每个共识周期结束时,根据分片信誉值划分可信分片和一般分片,进行委员会动态重组,结束之后进入下一周期。
14.根据一些实施例,本公开采用如下技术方案:
15.一种可监管的区块链动态分片设计系统,其特征在于,包括:
16.分片模块,用于在第一次共识周期开始时,根据网络成熟度标准选择网络中最老的节点作为负责人组成监管委员会,由监管委员会将网络所有节点随机分到不同的组形成若干组普通分片,最后形成一个监管委员会和多个普通分片的分片结构;
17.共识模块,用于当节点接收到来自监管委员会分发的交易进行共识时,片内交易采用由分片领导节点统领的pbft共识协议,跨片交易由监管委员会负责人统领的原子协议进行共识,交易验证后,分片领导者向监管委员会发送生成的子区块;
18.监管委员会基于验证者的行为,通过信誉评价计算所有节点的分数,对于分数未达到阈值的节点投票后进行驱逐淘汰处理,整合来自各分片的子区块,更新信誉列表,生成最终区块广播到全网;
19.动态重组模块,用于每个共识周期结束时,根据分片信誉值划分可信分片和一般分片,进行监管委员会动态重组,依据信誉分数平衡得到新的节点分配,结束之后衔接至下一周期的领导节点选举。
20.与现有技术相比,本公开的有益效果为:
21.本公开相对于传统的分片方法,提出监管委员会和普通分片两种分片结构,使得交易的分配和共识的同步更加有序的进行。与全分片参与共识决策相比较,由监管委员会参与的跨片共识,降低了通信复杂度并有效沟通了输入分片和输出分片,降低了重放攻击和消息伪造攻击的风险。
22.本公开融合信誉机制来增强区块链网络的安全性,在节点信誉的计算上,通过时间衰减因子有效结合节点的过去和现在,避免一个节点在短时期飞速获得高分去攻击网络;另外设置基于信誉分数的驱逐机制,使得网络环境更加可信。
23.本公开基于信誉机制带来的安全可靠性,在分片中选举领导者以及备选领导者,相较于单一领导节点的分片,当此领导者出现恶意延迟、消息扣留等行为时,验证节点可以直接通过备选领导者上报监管委员会,实现领导节点的替换以及交易的正常验证。
24.本公开在委员会动态重组的设计中,既实现了对新节点的分片处理,又调控了分片中可信节点的数量,使得分片之间性能维持在同一水平,避免出现恶意节点集中同一分片发起共谋攻击,间接提高了整个分片系统的可信度以及活跃性。
附图说明
25.构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示
意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。
26.图1为本公开实施例的可监管的区块链动态分片设计方法实现方法的流程图;
27.图2为本公开实施例的分片模型以及交易共识结构示意图;
28.图3为本公开实施例的委员会动态重组工作方式示意图。
具体实施方式:
29.下面结合附图与实施例对本公开作进一步说明。
30.应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
31.需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
32.实施例1
33.本公开的一种实施例中提供了一种可监管的区块链动态分片设计方法,步骤包括:
34.步骤一:在第一次共识周期开始时,根据网络成熟度标准选择网络中最老的节点作为负责人组成监管委员会,由监管委员会将网络所有节点随机分到不同的组形成若干组普通分片,最后形成一个监管委员会和多个普通分片的分片结构;
35.步骤二:获取节点在交易中累积的信誉分数,根据信誉分数确定位于领导者区间内的节点,在区间内随机选择出分片中的领导者和备选领导者;
36.步骤三:当节点接收到来自监管委员会分发的交易进行共识时,片内交易采用由分片领导节点统领的pbft共识协议,跨片交易由监管委员会负责人统领的原子协议进行共识,交易验证后,分片领导者向监管委员会发送生成的子区块;
37.步骤四:监管委员会基于验证者的行为,通过信誉评价计算所有节点的分数,对于分数未达到阈值的节点投票后进行驱逐淘汰处理,整合来自各分片的子区块,更新信誉列表,生成最终区块广播到全网;
38.步骤五:每个共识周期结束时,根据分片信誉值划分可信分片和一般分片,进行监管委员会动态重组,结束之后进入下一周期。
39.作为一种实施例,基于信誉评价带来的优点,设立监管委员会并动态化地重组分片节点,有效解决分片内部共识效率低、安全隐患大的问题,具体步骤如下:
40.在步骤一中:根据网络成熟度标准选择网络中最老的节点作为负责人组成监管委员会的过程为:根据一个节点在一段时间内的表现,即根据该节点为网络性能贡献计算能力的多少,是否处于表现协作的节点级别的顶端,当一个节点达到足够成熟度时可成为负责人组成监管委员会,所述监管委员会能够监视参与共识的每个节点的行为,并更新节点信誉分数。
41.所述分片结构的组成方式为:由所述监管委员会根据节点id的前k位来确定分片,最后形成一个监管委员会和多个普通分片的分片结构。
42.具体的,如图2所示,在第一个周期开始时,根据velloso等人提出的网络成熟度标准,选择网络中最老的节点优先成为负责人组成监管委员会来监视参与共识的每个节点的行为,并更新节点信誉评分。
43.成熟度基于这样一个事实,即一个节点在足够长的时间内表现良好,处于表现协作的节点级别的顶端,因此在所有节点中,它是那些为网络的良好性能贡献了更多计算能力的节点之一。因此,当一个节点达到足够成熟度成为负责人时,如果攻击网络将会放弃之前付出的所有努力。
44.进一步地,由监管委员会根据节点id的前k位来确定它的分片。假设系统中有2k个分片,所有在哈希中以011开头的节点都属于分片3,很明显这里k=3。最后形成一个监管委员会和多个普通分片的分片结构。
45.此后每一周期由委员会动态重组规则确定各分片以及监管委员会。
46.在步骤二中,在分片中设置领导者管理机制,领导者和备选领导者的确定方法为:分片形成后,对于分片选举信誉分数位于前50%的节点作为领导者区间,在区间内随机选择出分片中的领导者和备选领导者,备选领导者需要监督领导者的行为,并在领导者有恶意行为时,及时上报监管委员会并进行替补;上一轮领导者的节点本轮不出现在选择区间内。
47.即:在分片形成后,对于分片选举信誉分数位于前50%的节点作为领导者区间,在区间内随机选择出分片中的领导者和备选领导者,备选领导者需要监督其领导者的行为,并在领导者有恶意行为比如出现罢工,扣留消息等行为时,及时上报监管委员会并进行替补,特别说明的是,上一轮是领导者的节点本轮不出现在选择区间内。
48.步骤三中,进行共识的方法为:在完成分片配置后,监管委员会接收来自用户发来的交易并将交易分发至不同分片,根据交易涉及到的单一分片或者多个分片处理,共识分为片内共识和跨片共识,片内使用pbft共识,通过多个分片内多个节点验证共识;跨片交易由监管委员会负责人统领的原子协议进行共识;交易完成后分片领导者同步后向监管委员会发送生成的子区块。
49.针对片内交易,基于信誉领导者的pbft共识算法包括:
50.1.领导者节点将包含交易id的列表签名发送给片内的所有节点;
51.2.每个节点收到交易id后进行验证并决定接受还是拒绝;
52.3.验证节点将他们的决定结果签名传递给分片领导者;
53.4.领导者在收集节点的决定后产生交易子区块。
54.具体的,领导者节点将包含交易id、发送交易的时间戳以及领导者签名的列表发送给片内的所有节点,每个节点收到交易列表后进行验证并作出决定,验证节点将他们的决定签名传递给分片领导者;领导者在收集节点的决定后产生子区块,验证过程中,如果领导者扣留消息、恶意罢工,当超过一半的节点通过备选领导者上报监管委员会时,片内领导者被扣除信誉分数并剔除网络,并由备选领导者任职后继续处理交易。
55.针对跨片交易,监管委员会收到一个跨片交易后,由交易id输入可验证随机函数确定一个负责人节点来统领的原子协议参与交易的全过程,包括:
56.1》负责人将任命相应的验证节点来验证交易,并将交易广播到全网的所有的相关输入分片上。
57.2》收到验证消息的输入分片在分片内运行pbft共识进行交易验证,然后输入分片将验证结果消息返回给负责人。负责人将统计所有相关输入分片返回的消息与验证节点的验证消息进行对比。
58.3》如果输入分片的验证消息相同,负责人提交交易,将接受的消息发送至所有相关的输出分片中,输出分片创建输出对象,交易完成。
59.如果交易验证消息出现不同,负责人将拒绝该交易并购将中止的消息广播至相关的输入分片,输入分片解锁特定的输入对象。
60.具体的,如图2所示,共识同步:在完成分片配置后,监管委员会收到用户发来的交易并将交易分发至不同分片,根据交易涉及到的单一分片或者多个分片处理,共识分为片内共识和跨片共识。片内使用pbft共识,通过多个分片内多个节点验证共识来保证交易的安全性和有效性。跨片交易由监管委员会负责人统领的原子协议进行共识,交易完成后分片领导者同步后向监管委员会发送生成的子区块。
61.对于片内交易,基于信誉领导者的pbft共识算法包括:领导者节点将包含交易id、发送交易的时间戳t1以及领导者签名的列表《tx,t1,sig
leader
》发送给片内的所有节点;每个节点收到交易列表后进行验证并做出自己的决定dtxi;验证节点将他们的决定签名《dtxi,t2,sigi》传递给分片领导者;领导者在收集节点的决定后产生子区块,该子区块包含领导本身的签名sig
leader
、所有验证节点的签名sigi以及验证交易时反应的时间(t2-t1);验证过程中,如果领导节点扣留消息、恶意罢工,当超过一半的节点通过备选领导节点上报监管委员会时,片内领导节点被扣除分数并剔除网络,并由备选领导者任职后继续处理交易。
62.对于跨片交易,监管委员会收到一个跨片交易后,由交易id输入可验证随机函数(vrf)确定一个负责人节点来统领的原子协议参与交易的全过程,交易t(x1,x2)
→
(y1,y2,y3),两个输入x1,x2分别由分片1和分片2管理,最终产生分别由分片1、分片2和分片3管理的输出(y1,y2,y3),步骤如下:
63.1)pre-prepare。监管委员会中的负责人收到跨片交易后,负责人将任命相应的验证节点来验证交易,然后将交易广播到全网的所有的相关输入分片(分片1和分片2)上。
64.2)prepare。所有的相关输入分片接收到负责人的验证消息后,输入分片在分片内运行pbft共识进行交易验证,如果交易通过验证,输入分片将交易锁定,输入对象变为锁定(locked)状态。然后输入分片将预接受(pre-accept)消息返回给负责人。负责人将所有相关输入分片返回的消息与验证节点的验证消息进行对比,根据验证消息是否统一来决定下一步的操作时提交还是中止。
65.3)commit。根据prepare的结果,如果输入分片的验证消息相同,负责人提交交易,将接受(accpet)的消息发送至所有相关的输出分片中,输出分片创建输出对象,交易完成。如果交易验证消息出现不同,负责人将拒绝该交易并购将中止的消息广播至相关的输入分片,输入分片解锁特定的输入对象,输入对象的状态重新变为活跃(active)。
66.监管委员会中负责人在跨片共识的作用为:
67.1)在跨片交易的处理上对比全分片参与决策共识的o(n2),使用负责人协调跨片通信通过聚合分片消息可以将分片数量的成本降低到o(n)。
68.2)在跨片交易的安全上,所处的无权限网络中,当输入分片和输出分片消息不互
通的情况时,攻击者通过发送预先录制的假消息发动重放攻击从而导致分片之间的状态不一致;攻击者可以作为一个用户伪造交易,在输入分片进行交流,在输出分片就停止。本身就作为监管委员会的一员的负责人,在跨片交易的协调工作上能有效的降低重放攻击和消息伪造攻击的风险。
69.步骤四中,监管委员会基于验证者的行为,通过信誉评价计算所有节点的分数,对于分数未达到阈值的节点投票后进行驱逐淘汰处理,整合来自各分片的子区块,更新信誉列表,生成最终区块广播到全网;
70.具体的,更新信誉列表并生成最终区块:监管委员会在收到上一步骤发来的子区块(其中也包括了包含领导本身的签名、所有验证节点的签名以及验证交易时反应的时间)后,对比交易处理结果,监管委员会基于验证者的行为,通过信誉评价计算出本轮节点的信誉分数。
71.其中,信誉计算公式由节点的历史分数、本轮验证交易的的价值,共识时间和奖罚因子这些因素组成。
72.节点信誉值的影响因子计算公式为:
[0073][0074]
其中δ
t-1
为节点的历史因子,l为验证交易的数量,t(j)为交易的价值,预防有恶意节点在价值小的时候正常验证,在交易价值大的时候发起攻击;αj为验证结果系数,对比交易结果,当节点验证结果正确时取值为1,相反错误时取值为-1,s(j)为奖励或者惩罚系数,设置标准参考如下:
[0075]
1)以v(i)=1-(i-1)/n为参考,表示完成共识的第i个节点,完成验证更快的节点具有更大的奖励/惩罚值;
[0076]
2)对于监管委员会以及各分片领导者的奖励/惩罚力度都应大于普通验证节点。因为领导节点若是恶意的,将对整个系统造成更大的危害。
[0077]
其中时间衰减因子ρ来调节历史信誉的有效性,计算公式为:
[0078][0079]
其中σ是调整时间衰减因子ρ影响的参数,假设历史声誉的形成时间为th,当前时间段为ti。它们之间的延迟用于衡量历史声誉的有效性,随着时间的流逝逐渐减弱,距离当前时间段越近,声誉价值的权重越高。
[0080]
节点在第t轮共识的最终声誉分数:
[0081][0082]rt
取值区间为(0,1),从初始状态开始的增长或减少都呈现先快后慢的趋势,在st趋近于正无穷或负无穷时,函数变化趋势会趋于平缓,在此控制下节点信誉分数不会无限增长,避免了出现垄断的可能。每一轮新加入的节点以网络成熟度为初始信誉影响因子。
[0083]
进一步地,在所有验证节点的信誉值计算后,对于分数未达到阈值的节点,阈值可以由在不同网络环境中具体设置,监管委员会投票后进行淘汰处理,过程如下:
[0084]
1)监管委员会中的所有负责人分别对信誉分数低于阈值的节点发出投票交易:
[0085]
vote=《pki,pkj,t1,dj,sj》
[0086]
其中pki是恶意节点的公钥,pkj是监管负责人的公钥,t1是投票的时间戳,dj是该负责人对于本次投票做出的决定,sj是负责人的签名。
[0087]
2)要从网络中驱逐一个节点,必须有超过一半的负责人同意该节点已经低于信任阈值。监管委员会中的领导节点收集所有来自负责人的投票信息,所有的投票交易信息被统计验证并挖掘在一个区块中,如果同意驱逐的投票数超过负责人的一半,则节点i开始退出。
[0088]
3)驱逐,监管委员会的领导节点发出驱逐交易:
[0089]
expulsion=《pki,pkj,t1,t2,sj》
[0090]
其中t2是驱逐节点的时间戳。
[0091]
4)领导节点将驱逐的结果进行广播,所有的节点更新网络视图,监管委员会对系统的信誉列表进行更新。删除被驱逐节点的地址并丢弃它的公钥。
[0092]
如果一个被驱逐的节点重新加入网络,它必须重新生成一个新的密钥对,并且将丢弃过往的所有的分数积累。
[0093]
监管委员会在整合并更新信誉列表后,生成最终块广播至全网。
[0094]
步骤五:每个共识周期结束时,根据分片信誉值划分可信分片和一般分片,进行监管委员会动态重组,结束之后进入下一周期。
[0095]
在步骤五中需要进行委员会动态重组:分片技术作为区块链的扩容方案,其中的节点可以自由的连接和离开,给恶意攻击者留下了足够的空间来接管某个委员会,进而对整个系统造成损害。为保证分片的安全性,有必要定期的调整分片成员。
[0096]
简单的做法是在每一轮开始时重排所有节点,既能彻底防止节点之间作恶,又能将新加入的节点安排到分片中。然而,一个完整的重分配过程不仅会停止整个分片的进程,还会带来昂贵的时间和存储开销。
[0097]
为了平衡系统的可用性和性能,依照本公开设计委员会动态重组方法,如图3,为本公开实施例中委员会动态重组工作方式示意图,在一个共识周期结束时,监管委员会根据各分片的总信誉值大小,划分可信分片和一般分片,比例各占一半,当有新的节点加入时,监管委员会将新节点随机加入至某个可信分片中,并把该可信分片中固定数量的节点随机抽取出来统一分配至不同分片中,过程如下:
[0098]
1)在每一轮中新的节点加入可信分片后,随机抽取可信分片节点的α个百分比,其中包括分片中的领导者节点。
[0099]
2)抽取出的节点依照信誉分数列表进行降序排序,依次分给信誉总分较低的分片(包括可信分片和普通分片),从而保持各分片的性能在差不多的水平上。
[0100]
3)在重分配完成后,选取总分数最高的分片为监管委员会,并衔接至下一周期领导者节点的选举。
[0101]
实施例2
[0102]
本公开的一种实施例中提供了一种可监管的区块链动态分片设计系统,包括:
[0103]
分片模块,用于在第一次共识周期开始时,根据网络成熟度标准选择网络中最老的节点作为负责人组成监管委员会,由监管委员会将网络所有节点随机分到不同的组形成若干组普通分片,在以后的周期中,由重组的委员会规则确定各分片;在各分片中获取节点在交易中累积的信誉分数,根据信誉分数确定位于领导者区间内的节点,在区间内随机选择出分片中的领导者和备选领导者;
[0104]
共识模块,当节点接收到交易进行共识时,片内交易使用pbft共识,跨片交易由监管委员会负责人统领的原子协议进行共识,交易验证后,分片领导者向监管委员会发送生成的子区块;监管委员会基于验证者的行为,通过信誉评价计算所有节点的分数,对于分数未达到阈值的节点投票后进行驱逐淘汰处理,整合来自各分片的子区块,更新信誉列表,生成最终区块广播到全网;
[0105]
动态重组模块,每个共识周期结束时,根据分片信誉值划分可信分片和一般分片,进行委员会动态重组,依据信誉分数平衡得到新的节点分配,结束之后衔接至下一周期的领导节点选举。
[0106]
本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0107]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0108]
上述虽然结合附图对本公开的具体实施方式进行了描述,但并非对本公开保护范围的限制,所属领域技术人员应该明白,在本公开的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本公开的保护范围以内。
技术特征:
1.一种可监管的区块链动态分片设计方法,其特征在于,包括:在第一次共识周期开始时,根据网络成熟度标准选择网络中最老的节点作为负责人组成监管委员会,由监管委员会将网络所有节点随机分到不同的组形成若干组普通分片,最终形成一个监管委员会和多个普通分片的分片结构;在每一个分片中,基于节点累积的信誉分数确定位于领导者区间内的节点,在区间内随机选择出分片中的领导者和备选领导者;当节点接收到来自监管委员会分发的交易进行共识时,片内交易采用由分片领导节点统领的pbft协议进行共识,跨片交易由监管委员会负责人统领的原子协议进行共识,交易验证后,分片领导者向监管委员会发送生成的子区块;监管委员会基于验证者的行为,通过信誉评价计算所有节点的分数,对于分数未达到阈值的节点投票后进行驱逐淘汰处理,整合来自各分片的子区块,更新信誉列表,生成最终区块广播到全网;每个共识周期结束时,根据分片信誉值划分可信分片和一般分片,进行委员会动态重组,结束之后进入下一周期。2.如权利要求1所述的一种可监管的区块链动态分片设计方法,其特征在于,所述根据网络成熟度标准选择网络中最老的节点作为负责人组成监管委员会的过程为:根据一个节点在一段时间内的表现,即根据该节点为网络性能贡献计算能力的多少,是否处于表现协作的节点级别的顶端,当一个节点达到足够成熟度时可成为负责人组成监管委员会,所述监管委员会能够监视参与共识的每个节点的行为,并更新节点信誉分数。3.如权利要求1所述的一种可监管的区块链动态分片设计方法,其特征在于,所述普通分片的组成方式为:由所述监管委员会根据节点id的前k位来确定节点所属分片,最后形成一个监管委员会和多个普通分片的分片结构。4.如权利要求1所述的一种可监管的区块链动态分片设计方法,其特征在于,所述领导者和备选领导者的确定方法为:分片形成后,对于分片选举信誉分数位于前50%的节点作为领导者区间,在区间内随机选择出分片中的领导者和备选领导者,备选领导者需要监督领导者的行为,并在领导者有恶意行为时,及时上报监管委员会并进行替补;上一轮领导者的节点本轮不出现在选择区间内。5.如权利要求1所述的一种可监管的区块链动态分片设计方法,其特征在于,所述进行共识的方法为:在完成分片配置后,监管委员会接收来自用户发来的交易并将交易分发至不同分片,根据交易涉及到的单一分片或者多个分片处理,共识分为片内共识和跨片共识,片内使用pbft共识,通过多个分片内多个节点验证共识;跨片交易由监管委员会负责人统领的原子协议进行共识;交易完成后分片领导者同步后向监管委员会发送生成的子区块。6.如权利要求1所述的一种可监管的区块链动态分片设计方法,其特征在于,针对片内交易,基于信誉领导者的pbft共识算法包括:领导者节点将包含交易id、发送交易的时间戳以及领导者签名的列表发送给片内的所有节点,每个节点收到交易列表后进行验证并作出决定,验证节点将他们的决定签名传递给分片领导者;领导者在收集节点的决定后产生子区块,验证过程中,如果领导者扣留消息、恶意罢工,当超过一半的节点通过备选领导者上报监管委员会时,片内领导者被扣除信誉分数并剔除网络,并由备选领导者任职后继续处理交易。
7.如权利要求1所述的一种可监管的区块链动态分片设计方法,其特征在于,针对跨片交易,监管委员会收到一个跨片交易后,由交易id输入可验证随机函数确定一个负责人节点来统领的原子协议参与交易的全过程,包括:1.负责人将任命相应的验证节点来验证交易,并将交易广播到全网的所有的相关输入分片上;2.收到验证消息的输入分片在分片内运行pbft共识进行交易验证,然后输入分片将验证结果消息返回给负责人;负责人将统计所有相关输入分片返回的消息与验证节点的验证消息进行对比;3.如果输入分片的验证消息相同,负责人提交交易,将接受的消息发送至所有相关的输出分片中,输出分片创建输出对象,交易完成;如果交易验证消息出现不同,负责人将拒绝该交易并购将中止的消息广播至相关的输入分片,输入分片解锁特定的输入对象。8.如权利要求6所述的一种可监管的区块链动态分片设计方法,其特征在于,所述子区块中包含交易验证结果、领导本身的签名、所有验证节点的签名以及验证交易时反应的时间。9.如权利要求1所述的一种可监管的区块链动态分片设计方法,其特征在于,所述信誉分数计算公式由节点的历史分数、本轮验证交易的价值、共识时间以及奖罚因子多个因素组成。10.一种可监管的区块链动态分片设计系统,其特征在于,包括:分片模块,用于在第一次共识周期开始时,根据网络成熟度标准选择网络中最老的节点作为负责人组成监管委员会,由监管委员会将网络所有节点随机分到不同的组形成若干组普通分片,在以后的周期中,由重组的委员会规则确定各分片;在各分片中获取节点在交易中累积的信誉分数,根据信誉分数确定位于领导者区间内的节点,在区间内随机选择出分片中的领导者和备选领导者;共识模块,当节点接收到交易进行共识时,片内交易使用pbft共识,跨片交易由监管委员会负责人统领的原子协议进行共识,交易验证后,分片领导者向监管委员会发送生成的子区块;监管委员会基于验证者的行为,通过信誉评价计算所有节点的分数,对于分数未达到阈值的节点投票后进行驱逐淘汰处理,整合来自各分片的子区块,更新信誉列表,生成最终区块广播到全网;动态重组模块,每个共识周期结束时,根据分片信誉值划分可信分片和一般分片,进行委员会动态重组,依据信誉分数平衡得到新的节点分配,结束之后衔接至下一周期的领导节点选举。
技术总结
本公开提供了一种可监管的区块链动态分片设计方法及系统,涉及区块链技术领域,方法包括:在监管委员会和普通分片两种分片的结构中,基于信誉机制选举各分片的领导者以及备选领导者;在完成分片配置后,监管委员会分发交易至不同分片,并由监管委员会与各分片协作进行共识验证,最终生成交易的子区块;基于子区块,监管委员会更新本轮信誉列表,对未达到信任阈值的节点投票后进行驱逐处理,并生成最终区块;最后基于信誉列表进行委员会动态重配置并形成下一轮周期的分片结构。本公开融合信誉机制设立监管来增强区块链分片后的安全性并提升了共识效率。提升了共识效率。提升了共识效率。
技术研发人员:张淑慧 田汉文 王连海 徐淑奖 邵蔚 王子业 于菲菲
受保护的技术使用者:齐鲁工业大学(山东省科学院)
技术研发日:2023.04.06
技术公布日:2023/7/7
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/