CN109767199A - 基于信誉的pbft共识系统及方法、区块链数据处理系统 - Google Patents

基于信誉的pbft共识系统及方法、区块链数据处理系统 Download PDF

Info

Publication number
CN109767199A
CN109767199A CN201811504844.4A CN201811504844A CN109767199A CN 109767199 A CN109767199 A CN 109767199A CN 201811504844 A CN201811504844 A CN 201811504844A CN 109767199 A CN109767199 A CN 109767199A
Authority
CN
China
Prior art keywords
node
reputation
period
transaction
participants
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811504844.4A
Other languages
English (en)
Other versions
CN109767199B (zh
Inventor
沈玉龙
佟威
姜晓鸿
董学文
郑佳伟
马诗洋
刘启航
赵六顺
杨凌霄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN201811504844.4A priority Critical patent/CN109767199B/zh
Publication of CN109767199A publication Critical patent/CN109767199A/zh
Application granted granted Critical
Publication of CN109767199B publication Critical patent/CN109767199B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明属于区块链技术领域,公开了一种基于信誉的PBFT共识系统及方法、区块链数据处理系统;设计一个轻量级的信誉评估模型,基于节点重要性和服务反馈来计算节点的混合信誉值;选举信誉值高于阈值的一部分节点作为经典实用拜占庭容错共识机制的参与者;在参与者中运行PBFT共识机制,基于新的leader选举和交易验证方法达成共识,并广播共识结果。由于经典PBFT共识机制可扩展性受限,故本发明达成共识不受网络规模的影响;由于加入了节点信誉评估和参与者选举方法,故本发明具有比经典PBFT更高的安全性;由于计算所得的节点信誉可以指导下一次交易,故本发明评估节点信誉的算力是有效算力。

Description

基于信誉的PBFT共识系统及方法、区块链数据处理系统
技术领域
本发明属于区块链技术领域,尤其涉及一种基于信誉的PBFT(拜占庭容错Practical Byzantine Fault Tolerance,PBFT)共识系统及方法、区块链数据处理系统。
背景技术
目前,业内常用的现有技术是这样的:区块链是一种分布式共享账本,以其去中心化、不可篡改性等特性,成为业界的研究热点。区块链技术是一系列技术组合的产物,包括P2P网络技术、共识机制、密码学技术、智能合约等,其中共识机制被称为区块链的灵魂。区块链中的共识机制是指根据最新产生的交易集形成的区块的一致性,一组参与者更新区块链系统整体状态。现在已经有大量的共识机制被提出和使用。工作量证明机制(ProofofWork,PoW)广泛用于Bitcoin加密货币中,参与者通过算力竞争来获取记账权,达成共识和广播区块;然而PoW每个参与者都参与算力竞争,浪费了大量的算力,不适用于大规模和资源有限的联盟链。权益证明机制(ProofofStake,PoS)部分应用于以太坊区块链平台中,根据参与者持有的币龄不同相应地降低竞争难度,通过算力竞争来获取记账权,达成共识和广播区块;虽然PoS降低了竞争难度,但参与者竞争依旧浪费了大量的算力,也不适用于大规模和资源有限的联盟链。此外,PoW和PoS都不适用于节点具有身份的联盟链。实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)共识机制应用于HyperladgerFabricv0.6中,参与者通过多次验证和认证消息传递来达成共识,随后广播区块;但参与者共识过程传递消息的复杂度是O(n^2)且参与者中只能容忍不超过1/3的拜占庭对手,极大地限制了区块链网络的规模且容易造成共识失败,同样不适用于大规模和资源有限的联盟链。为了克服经典PBFT的不足,业界已经提出了一些改进方案。Tendermint提出将联盟链中节点身份赋予不同的权重,在共识过程中,只需要一致性节点的权重值之和达到一定的阈值即可达成共识;但这种方法依旧默认所有节点都参与共识,没有从根本上解决高消息复杂度问题。XFT机制基于拜占庭对手很难同时控制整个网络的假设,提出了狡猾的消息模型,能够提高参与者中容忍的拜占庭对手的比例。
综上所述,现有技术存在的问题是:目前联盟链网络规模受限、容错率低,容易造成大规模和资源有限联盟链的共识失败。
解决上述技术问题的难度和意义:针对经典PBFT公式机制,如何在大量节点之间快速地完成全网状态共识是BFT类共识机制用于大规模和资源有限联盟链的最大技术难题之一。本发明设计了一种基于信誉的PBFT共识系统和方法,其难点在于P2P节点信誉如何分布式计算和评估、如何保证节点信誉值可靠可信、如何抵制恶意节点影响信誉值的动态行为策略、如何选举适当数量的节点参与PBFT共识。随着区块链3.0时代的到来,“区块链+”成为区块链技术新的发展方向,区块链去中心化、防篡改、可追溯等特性使其具有良好的应用潜力和前景。基于信誉的PBFT共识系统及方法可以用于大规模和资源有限联盟链,促进区块链项目真正落地。
发明内容
针对现有技术存在的问题,本发明提供了一种基于信誉的PBFT共识系统及方法、区块链数据处理系统。
本发明是这样实现的,一种基于信誉的PBFT共识方法,所述基于信誉的PBFT共识系方法包括:
第一步,设计一个轻量级的信誉评估模型,基于节点重要性和交易满意度反馈来计算节点的混合信誉值;
第二步,选举信誉值高于阈值的一部分节点作为经典PBFT共识机制的参与者;
第三步,在参与者中运行PBFT共识机制,基于新的leader选举和交易验证方法达成共识,并广播共识结果。
进一步,在周期t计算节点临时的混合信誉值公式如下:
其中,RA(t)表示在周期t节点A临时的混合信誉值,表示在周期t第i个信誉计算参数,其中i=1,2,...,m且wi表示第i个信誉计算参数的权重,其中i=1,2,...,m且w1+w2+…+wm=1。
进一步,在周期t计算节点最终的混合信誉值公式如下:
其中,表示在周期t节点A最终的混合信誉值;
当在周期t计算的节点临时的混合信誉值小于在周期t-1计算的节点临时的混合信誉值时,在周期t节点最终的混合信誉值是两者的算术平均数;当在周期t计算的节点临时的混合信誉值不小于在周期t-1计算的节点临时的混合信誉值时,在周期t节点最终的混合信誉值是两者在整个时间周期内的加权平均数。
进一步,计算节点在周期t内发起的交易所收到的满意度评分的计算公式如下:
其中,表示节点A在周期t内发起的交易所收到的满意度的加权平均数,分别表示SA,i(t)的权重,NA(t)表示节点A在周期t内发起的交易总数;SA,i(t)表示节点A在周期t内发起的第i个交易所收到的满意度评分,SA,i(t)∈[0,1];表示提供第i个交易的满意度评分的节点在周期t-1的信誉, 表示节点A在周期t内发起的第i个交易的交易金额占所有交易的总交易金额的比例。
进一步,根据上一个周期选举的参与者数量自动调整阈值的大小,满足参与者选举的需求,系统生成阈值的公式如下:
其中,rT(t)表示在周期t系统产生的阈值,Ravg(t-1)表示在周期t-1内选举出来的参与者中信誉的中间数,Rlow(t-1)表示在周期t-1内选举出来的参与者中信誉的最小值,R2low(t-1)表示在周期t-1内选举出来的参与者中信誉的第二小值,Np(t-1)表示在周期t-1内选举出来的参与者的数量。
进一步,共识过程分为三个流程,包括:
pre-prepare:leader将交易列表发送给所有参与者;
prepare:参与者模拟执行交易列表并将执行结果摘要广播给其他参与者;
commit:参与者收到其他节点的执行结果摘要并验证,如果大多数摘要与自己的一致,则广播COMMIT消息给其他参与者;如果没有大多数摘要与自己的一致,则不进行任何操作。
进一步,在一个周期内,每生成一个区块都会在参与者中重新选举leader来生成下一个区块,具体来说,每个周期生成的第一个区块的leader是所有参与者中信誉值最高的节点,生成第i个区块的leader是由第i-1个leader随机产生并随区块广播给所有参与者的,随机产生是伪随机数发生器Random执行的;
参与者收到leader发送的交易列表后,验证发送交易列表的leader的数字签名与上一个周期末收到的新的leader的身份标识是否一致,若一致则继续执行经典PBFT共识机制,若不一致,则不进行任何操作。
本发明的另一目的在于提供一种实现所述基于信誉的PBFT共识方法的基于信誉的PBFT共识系统,所述基于信誉的PBFT共识系统包括用于大规模和资源有限的联盟链,联盟链具体包括:
一个注册机构,只用于联盟链节点注册,包括创建节点账户,分配唯一的密钥对标识账户和分配节点身份标识,所述的身份标识代表节点在联盟链中的重要性;
若干节点,用于产生和广播交易和交易满意度反馈。
进一步,所述节点内部具有支持共识机制的模块,包括:
交易产生模块,用于产生交易,交易通常包括接收方的账户地址、交易细节、发送方的数字签名、时间戳内容;
网络模块,用于发送和接收消息以及建立参与者路由表,消息包括交易细节消息、用于节点信誉计算的消息、交易列表消息、交易列表模拟执行消息、COMMIT消息;
信誉计算模块,用于根据本发明设计的信誉评估模型,基于多个参数计算节点混合信誉值,多个参数包括节点身份标识、交易满意度反馈,节点;
交易打包模块,只由leader启动,用于根据交易时间戳顺序,记录交易池中的交易到待生成区块交易列表中,以及在收到大多数COMMIT消息后将交易列表中的交易打包形成区块,leader具有全网最高的信誉值或由上一个周期的leader随机产生,交易池存储联盟链中产生的所有未打包的交易,大多数是参与者数量的2/3;
验证模块,只由参与者启动,用于验证交易列表发送者leader的数字签名和其他节点模拟执行交易列表的结果;
存储模块,用于存储区块链、交易和节点混合信誉值。
本发明的另一目的在于提供一种应用所述基于信誉的PBFT共识方法的区块链数据处理系统。
综上所述,本发明的优点及积极效果为:本发明设计了一种基于信誉的PBFT共识机制,技术难点是:如何设计一种信誉评估模型,分布式计算和评估联盟链中节点的信誉值;如何设计一种信誉修正模型,根据历史记录调整计算出来的节点信誉值;如何设计一种选举算法,在大规模和资源有限联盟链中选举适合数量和信誉的节点参与经典PBFT共识机制。本发明的意义是:由于经典PBFT共识机制可扩展性受限,故本发明达成共识不受网络规模的影响;由于加入了节点信誉评估和参与者选举方法,故本发明具有比经典PBFT更高的安全性;由于计算所得的节点信誉可以指导下一次交易,故本发明评估节点信誉的算力是有效算力。
附图说明
图1是本发明实施例提供的基于信誉的PBFT共识方法流程图。
图2是本发明实施例提供的基于信誉的PBFT共识机制的网络流程图。
图3是本发明实施例提供的联盟链网络拓扑图及节点内部功能模块示意图。
图4是本发明实施例提供的节点临时的混合信誉值计算模型算法流程图。
图5是本发明实施例提供的节点最终的混合信誉值计算模型算法流程图。
图6是本发明实施例提供的节点最终的混合信誉值计算模型理论效果图。
图7是本发明实施例提供的节点交易满意度评分计算模型算法流程图。
图8是本发明实施例提供的系统阈值生成模型算法流程图。
图9是经典PBFT共识机制正常执行流程图。
图10是本发明实施例提供的共识机制容错率实验结果示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对目前联盟链网络规模受限、容错率低,容易造成大规模和资源有限联盟链的共识失败。采用本发明达成共识不受网络规模的影响、共识过程不会造成算力浪费、共识结果具有比经典PBFT更高的安全性。
下面结合附图对本发明的应用原理作详细的描述。
如图1所示,本发明实施例提供的基于信誉的PBFT共识方法包括:
S101:设计一个轻量级的信誉评估模型,基于节点重要性和交易满意度反馈来计算节点的混合信誉值;
S102:选举信誉值高于阈值的一部分节点作为经典PBFT共识机制的参与者;
S103:在参与者中运行PBFT共识机制,基于新的leader选举和交易验证方法达成共识,并广播共识结果。
下面结合附图对本发明的应用原理作进一步的描述。
本发明实施例提供的联盟链网络拓扑图及节点内部功能模块如图3所示,包括1个注册机构,只用于联盟链节点注册,包括创建节点账户,分配唯一的密钥对标识账户和分配节点身份标识,所述的身份标识代表节点在联盟链中的重要性;若干节点,用于产生和广播交易和交易满意度反馈。其中,每个节点内部都具有支持共识机制的模块,包括:交易产生模块,用于产生交易,所述的交易通常包括接收方的账户地址、交易细节、发送方的数字签名、时间戳等内容;网络模块,用于发送和接收消息以及建立参与者路由表,所述的消息包括交易细节消息、用于节点信誉计算的消息、交易列表消息、交易列表模拟执行消息、COMMIT消息等;信誉计算模块,用于根据本发明设计的信誉评估模型,基于多个参数计算节点混合信誉值,所述的多个参数包括节点身份标识、交易满意度反馈等,所述的节点;交易打包模块,只由leader启动,用于根据交易时间戳顺序,记录交易池中的交易到待生成区块交易列表中,以及在收到大多数COMMIT消息后将交易列表中的交易打包形成区块,所述的leader具有全网最高的信誉值或由上一个周期的leader随机产生,所述的交易池存储联盟链中产生的所有未打包的交易,所述的大多数是参与者数量的2/3;验证模块,只由参与者启动,用于验证交易列表发送者(leader)的数字签名和其他节点模拟执行交易列表的结果;存储模块,用于存储区块链、交易和节点混合信誉值。
本发明实施例提供的节点信誉评估是周期执行的,其可以包括节点临时的混合信誉值计算、点最终的混合信誉值计算和节点交易满意度评分计算,下面具体说明。
周期t计算节点临时的混合信誉值计算模型算法如图4所示,其中算法输入包括节点身份标识及对应的权重、交易满意度评分及交易满意度评分权重;算法输出的是节点临时的混合信誉值;初始化节点临时的混合信誉值为0。在实施例中,在周期t计算节点临时的混合信誉值公式共识如下:
其中,RA(t)表示在周期t节点A临时的混合信誉值,表示在周期t第i个信誉计算参数,其中i=1,2,...,m且wi表示第i个信誉计算参数的权重,其中i=1,2,...,m且w1+w2+…+wm=1。
周期t计算节点最终的混合信誉值计算模型算法如图5所示,其中算法输入包括周期t-1的节点最终的混合信誉值和周期t计算的节点临时的混合信誉值;算法输出是节点最终的混合信誉值;初始化节点最终的混合信誉值为0。在实施例中,在周期t计算节点最终的混合信誉值公式如下:
其中,表示在周期t节点A最终的混合信誉值。周期t的节点混合信誉值可以快速下降却不能快速上升,具体来说,当在周期t计算的节点临时的混合信誉值小于在周期t-1计算的节点临时的混合信誉值时,在周期t节点最终的混合信誉值是两者的算术平均数;当在周期t计算的节点临时的混合信誉值不小于在周期t-1计算的节点临时的混合信誉值时,在周期t节点最终的混合信誉值是两者在整个时间周期内的加权平均数。
周期t计算节点最终的混合信誉值计算模型理论效果如图6所示,节点采用动态的交易行为策略:节点在周期20之前,通过执行合法交易和反馈来恢复最终的混合信誉值;节点在周期20开始发起非法交易或反馈,最终的混合信誉值下降。如图所示,节点恢复最终的混合信誉值的曲线是平缓的,即恢复最终的混合信誉值所需时间较长;节点执行非法交易使得最终的混合信誉值下降曲线是陡峭的,即降低最终的混合信誉值是敏感的。这种节点最终的混合信誉值计算模型能够信誉计算减轻非法节点短时大量合法交易的影响。
周期t计算节点交易满意度评分计算模型算法如图7所示,其中算法输入包括交易满意度评分集、交易金额和周期t-1的节点最终的混合信誉值;算法输出是周期内发起的交易所收到的满意度的加权平均数。在实施例中,在周期t计算节点最终的混合信誉值公式如下:
其中,表示节点A在周期t内发起的交易所收到的满意度的加权平均数,分别表示SA,i(t)的权重,具体来说,NA(t)表示节点A在周期t内发起的交易总数;SA,i(i)表示节点A在周期t内发起的第i个交易所收到的满意度评分,SA,i(t)∈[0,1];表示提供第i个交易的满意度评分的节点在周期t-1的信誉, 表示节点A在周期t内发起的第i个交易的交易金额占所有交易的总交易金额的比例。
本发明实施例提供的交易满意度反馈计算公式,交易满意度受到提供交易满意度评分的节点自身信誉和交易自身交易金额的影响。
本发明实施例提供的轻量级的信誉评估模型,轻量级体现在计算和存储两个方面:计算的轻量级体现在通过迭代的方式计算节点在周期t最终的混合信誉值;存储的轻量级体现在每个周期只保存最新的节点混合信誉值。
本发明实施例提供的系统阈值生成模型算法如图8所示,其中算法输入包括在周期t-1内选举出来的参与者中信誉的中间数,在周期t-1内选举出来的参与者中信誉的最小值,在周期t-1内选举出来的参与者中信誉的第二小值,在周期t-1内选举出来的参与者的数量。在实施例中,在周期t计算系统阈值公式如下:
其中,rT(t)表示在周期t系统产生的阈值,Rave(t-1)表示在周期t-1内选举出来的参与者中信誉的中间数,Rlow(t-1)表示在周期t-1内选举出来的参与者中信誉的最小值,R2low(t-1)表示在周期t-1内选举出来的参与者中信誉的第二小值,Np(t-1)表示在周期t-1内选举出来的参与者的数量。
参与者选举的需求,通常参与者的数量控制在10-16个之间,这是因为基于经典PBFT共识机制的区块链规模受限,参与者数量不能超过20个,同时参与者数量越多共识结果越可靠。阈值计算公式,周期t的阈值受到周期t-1的参与者数量的影响,具体来说,当周期t-1的参与者数量少于13时,周期t的阈值减小幅度偏大,为周期t-1的参与者中信誉中间数与周期t-1的参与者中信誉最小值之差;当周期t-1的参与者数量不少于13时,周期t的阈值增加幅度偏小,为周期t-1的参与者中信誉第二小值与周期t-1的参与者中信誉最小值之差。
本发明实施例提供的选举是周期性执行的,每个周期内产生若干个区块。
本发明实施例提供的经典PBFT共识机制如图9所示,共识过程分为5个流程包括:request:客户端(C)将消息细节发送给leader(0);pre-prepare:0将交易列表发送给所有参与者(1,2,3);prepare:1,2模拟执行交易列表并将执行结果摘要广播给其他参与者(假设3是非法节点,则3不参与任何消息广播);commit:0,1,2收到其他节点的执行结果摘要并验证,如果大多数摘要与自己的一致,则广播COMMIT消息给其他0,1,2;如果没有大多数摘要与自己的一致,则不进行任何操作;reply:0,1,2将最终的共识结果发送给C。
本发明实施例提供的新的leader选举方法,在一个周期内,每生成一个区块都会在参与者中重新选举leader来生成下一个区块,具体来说,每个周期生成的第一个区块的leader是所有参与者中信誉值最高的节点,生成第i个区块的leader是由第i-1个leader随机产生并随区块广播给所有参与者的,所述的随机产生是伪随机数发生器Random执行的。
本发明实施例提供的交易验证方法,参与者收到leader发送的交易列表后,验证发送交易列表的leader的数字签名与上一个周期末收到的新的leader的身份标识是否一致,若一致则继续执行经典PBFT共识机制,若不一致,则不进行任何操作。
本发明实施例提供的共识机制容错率实验结果如图10所示。从图中看到非常直观的观察结果,随着α的增加,所有五种情景的αp都会增加。在每个场景下所提出的机制的容错性可以在导致αp=1/3的α点处获得。极端情况是β=0,其中不存在伪装者。在这种情况下,当系统中恶意对等体的比率小于约98%时,所选参与者αp中的恶意对等体的比率接近0。随着α从98%增加到100%,αp从0增加到1并且在α=98.6%的点处达到1/3。这意味着提议的基于信誉的PBFT可以实现大约98%的容错。这种高容错性能背后的原因是所提出的信誉评估模型可以有效地降低恶意对等体的信誉值,使得这些对等体几乎不可能被选择作为运行PBFT方案的参与者。因此,所提出的机制可以被认为是高性能恶意对等过滤器与经典PBFT机制的组合。从图中我们还可以看出,随着恶意对等体β中伪装者的比例增加,所提出的机制的容错性能降低。例如,对于β=0的情况,容错率约为98%,而对于β=20%的情况,它下降到约70%,对于β=40%的情况,下降到约60%。这是因为较大的β意味着更多的恶意对等体将在所考虑的时间间隔(即100个周期)中假装是合法的。结果,这些伪装者的声誉值将不断增加,并且最终可能与普通同伴的声誉值几乎相同。因此,这些伪装者更有可能被选为参与者,从而危及共同共识的产生。这最终降低了所提出的方案的容错性能。我们可以看到,虽然一小部分恶意对手假装是合法的,但在大多数情况下,建议的机制仍然可以实现高于1/3的容错(对于β<80%)。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于信誉的PBFT共识方法,其特征在于,所述基于信誉的PBFT共识系方法包括:
第一步,设计一个轻量级的信誉评估模型,基于节点重要性和交易满意度反馈来计算节点的混合信誉值;
第二步,选举信誉值高于阈值的一部分节点作为经典PBFT共识机制的参与者;
第三步,在参与者中运行PBFT共识机制,基于新的leader选举和交易验证方法达成共识,并广播共识结果。
2.如权利要求1所述的基于信誉的PBFT共识方法,其特征在于,在周期t计算节点临时的混合信誉值公式如下:
其中,RA(t)表示在周期t节点A临时的混合信誉值,表示在周期t第i个信誉计算参数,其中i=1,2,...,m且wi表示第i个信誉计算参数的权重,其中i=1,2,...,m且w1+w2+…+wm=1。
3.如权利要求1所述的基于信誉的PBFT共识方法,其特征在于,在周期t计算节点最终的混合信誉值公式如下:
其中,表示在周期t节点A最终的混合信誉值;
当在周期t计算的节点临时的混合信誉值小于在周期t-1计算的节点临时的混合信誉值时,在周期t节点最终的混合信誉值是两者的算术平均数;当在周期t计算的节点临时的混合信誉值不小于在周期t-1计算的节点临时的混合信誉值时,在周期t节点最终的混合信誉值是两者在整个时间周期内的加权平均数。
4.如权利要求1所述的基于信誉的PBFT共识方法,其特征在于,计算节点在周期t内发起的交易所收到的满意度评分的计算公式如下:
其中,表示节点A在周期t内发起的交易所收到的满意度的加权平均数,分别表示SA,i(t)的权重,NA(t)表示节点A在周期t内发起的交易总数;SA,i(t)表示节点A在周期t内发起的第i个交易所收到的满意度评分,SA,i(t)∈[0,1];表示提供第i个交易的满意度评分的节点在周期t-1的信誉, 表示节点A在周期t内发起的第i个交易的交易金额占所有交易的总交易金额的比例。
5.如权利要求1所述的基于信誉的PBFT共识方法,其特征在于,根据上一个周期选举的参与者数量自动调整阈值的大小,满足参与者选举的需求,系统生成阈值的公式如下:
其中,rT(t)表示在周期t系统产生的阈值,Ravg(t-1)表示在周期t-1内选举出来的参与者中信誉的中间数,Rlow(t-1)表示在周期t-1内选举出来的参与者中信誉的最小值,R2low(t-1)表示在周期t-1内选举出来的参与者中信誉的第二小值,Np(t-1)表示在周期t-1内选举出来的参与者的数量。
6.如权利要求1所述的基于信誉的PBFT共识方法,其特征在于,共识过程分为三个流程,包括:
pre-prepare:leader将交易列表发送给所有参与者;
prepare:参与者模拟执行交易列表并将执行结果摘要广播给其他参与者;
commit:参与者收到其他节点的执行结果摘要并验证,如果大多数摘要与自己的一致,则广播COMMIT消息给其他参与者;如果没有大多数摘要与自己的一致,则不进行任何操作。
7.如权利要求1所述的基于信誉的PBFT共识方法,其特征在于,在一个周期内,每生成一个区块都会在参与者中重新选举leader来生成下一个区块,具体来说,每个周期生成的第一个区块的leader是所有参与者中信誉值最高的节点,生成第i个区块的leader是由第i-1个leader随机产生并随区块广播给所有参与者的,随机产生是伪随机数发生器Random执行的;
参与者收到leader发送的交易列表后,验证发送交易列表的leader的数字签名与上一个周期末收到的新的leader的身份标识是否一致,若一致则继续执行经典PBFT共识机制,若不一致,则不进行任何操作。
8.一种实现权利要求1所述基于信誉的PBFT共识方法的基于信誉的PBFT共识系统,其特征在于,所述基于信誉的PBFT共识系统包括用于大规模和资源有限的联盟链,联盟链具体包括:
一个注册机构,只用于联盟链节点注册,包括创建节点账户,分配唯一的密钥对标识账户和分配节点身份标识,所述的身份标识代表节点在联盟链中的重要性;
若干节点,用于产生和广播交易和交易满意度反馈。
9.如权利要求8所述的基于信誉的PBFT共识系统,其特征在于,所述节点内部具有支持共识机制的模块,包括:
交易产生模块,用于产生交易,交易通常包括接收方的账户地址、交易细节、发送方的数字签名、时间戳内容;
网络模块,用于发送和接收消息以及建立参与者路由表,消息包括交易细节消息、用于节点信誉计算的消息、交易列表消息、交易列表模拟执行消息、COMMIT消息;
信誉计算模块,用于根据本发明设计的信誉评估模型,基于多个参数计算节点混合信誉值,多个参数包括节点身份标识、交易满意度反馈,节点;
交易打包模块,只由leader启动,用于根据交易时间戳顺序,记录交易池中的交易到待生成区块交易列表中,以及在收到大多数COMMIT消息后将交易列表中的交易打包形成区块,leader具有全网最高的信誉值或由上一个周期的leader随机产生,交易池存储联盟链中产生的所有未打包的交易,大多数是参与者数量的2/3;
验证模块,只由参与者启动,用于验证交易列表发送者leader的数字签名和其他节点模拟执行交易列表的结果;
存储模块,用于存储区块链、交易和节点混合信誉值。
10.一种应用权利要求1~7任意一项所述基于信誉的PBFT共识方法的区块链数据处理系统。
CN201811504844.4A 2018-12-10 2018-12-10 基于信誉的pbft共识系统及方法、区块链数据处理系统 Active CN109767199B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811504844.4A CN109767199B (zh) 2018-12-10 2018-12-10 基于信誉的pbft共识系统及方法、区块链数据处理系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811504844.4A CN109767199B (zh) 2018-12-10 2018-12-10 基于信誉的pbft共识系统及方法、区块链数据处理系统

Publications (2)

Publication Number Publication Date
CN109767199A true CN109767199A (zh) 2019-05-17
CN109767199B CN109767199B (zh) 2023-06-16

Family

ID=66451424

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811504844.4A Active CN109767199B (zh) 2018-12-10 2018-12-10 基于信誉的pbft共识系统及方法、区块链数据处理系统

Country Status (1)

Country Link
CN (1) CN109767199B (zh)

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110189128A (zh) * 2019-06-06 2019-08-30 西安安盟智能科技股份有限公司 一种用于区块快速生成的分布式共识的算法和装置
CN110519246A (zh) * 2019-08-15 2019-11-29 安徽师范大学 基于信任区块链节点的信任度计算方法
CN110677485A (zh) * 2019-09-30 2020-01-10 大连理工大学 一种基于信用的动态分层拜占庭容错共识方法
CN110766551A (zh) * 2019-09-10 2020-02-07 中国科学院信息工程研究所 一种基于改进Kafka共识机制的联盟链及交易方法
CN110784346A (zh) * 2019-10-18 2020-02-11 深圳供电局有限公司 一种基于信誉值的pbft共识系统及方法
CN111131181A (zh) * 2019-12-05 2020-05-08 重庆邮电大学 一种基于信誉机制和DPBFT算法的区块链动态DPoS共识方法
CN111353717A (zh) * 2020-03-05 2020-06-30 中国工商银行股份有限公司 区块链共识节点推选系统及方法
CN111355810A (zh) * 2020-03-17 2020-06-30 重庆邮电大学 一种基于信誉与投票机制的改进pbft共识方法
CN111510502A (zh) * 2020-04-28 2020-08-07 吉林科创电力有限公司 一种基于动态信誉值的pbft共识传播优化方法
CN111583039A (zh) * 2020-05-09 2020-08-25 江苏大学 无管理者区块链交易的安全交互方法、激励方法及交易系统
CN111682942A (zh) * 2020-05-18 2020-09-18 哈尔滨工业大学 一种应用于许可链的二元加权拜占庭容错共识方法
CN111724145A (zh) * 2020-05-25 2020-09-29 天津大学 一种区块链系统分片协议的设计方法
CN111770148A (zh) * 2020-06-22 2020-10-13 重庆邮电大学 一种基于区块链技术的雾计算卸载模型优化方法
CN112073484A (zh) * 2020-08-28 2020-12-11 武汉大学 一种基于联盟链的gdpr合规监管方法及系统
CN112073483A (zh) * 2020-08-28 2020-12-11 武汉大学 基于信誉与委员会背书机制的权威证明共识方法及系统
CN112202612A (zh) * 2020-09-29 2021-01-08 东软集团股份有限公司 区块链节点管理方法、存储介质、节点以及区块链系统
CN112395642A (zh) * 2020-11-20 2021-02-23 湖南智慧政务区块链科技有限公司 一种安全多方隐私计算方法、装置、设备及存储介质
CN112437049A (zh) * 2020-11-06 2021-03-02 深圳前海微众银行股份有限公司 一种基于bft的区块链共识方法及装置
CN112468552A (zh) * 2020-11-16 2021-03-09 天津大学 双层分布式区块链网络模型的轻量级信誉共识实现方法
CN112532581A (zh) * 2020-10-26 2021-03-19 南京辰阔网络科技有限公司 一种基于共识参与度和交易活跃度的改进pbft共识方法
CN112702346A (zh) * 2020-12-24 2021-04-23 国网浙江省电力有限公司电力科学研究院 基于联盟链的分布式身份认证方法及系统
CN112751824A (zh) * 2020-11-30 2021-05-04 长安大学 一种基于区块链的车载命名数据网络信任机制
CN113222690A (zh) * 2021-04-27 2021-08-06 铭数科技(青岛)有限公司 一种应用于区域能源互联网的区块链共识方法
CN113645190A (zh) * 2021-07-12 2021-11-12 中国科学院信息工程研究所 一种考虑节点信誉的拜占庭容错共识方法及区块链
CN113691632A (zh) * 2021-08-27 2021-11-23 广东卓启云链科技有限公司 一种区块链计算资源的动态调度方法及系统
CN113746635A (zh) * 2021-08-18 2021-12-03 湖北文理学院 提高pbft共识可扩展性的方法、装置、计算设备及存储介质
CN113783948A (zh) * 2021-08-26 2021-12-10 浙商银行股份有限公司 一种联盟链组合共识方法、设备及存储介质
CN114003584A (zh) * 2021-11-02 2022-02-01 贵州大学 一种基于演化博弈的拜占庭容错共识方法
CN114024961A (zh) * 2021-09-24 2022-02-08 泉州华中科技大学智能制造研究院 一种区块链网络及其共识算法
CN114285748A (zh) * 2021-12-28 2022-04-05 福州物联网开放实验室有限公司 基于物联网的信誉评价方法及系统
CN114363352A (zh) * 2022-01-05 2022-04-15 青岛理工大学 基于区块链的物联网系统跨链交互方法
CN115277722A (zh) * 2022-07-27 2022-11-01 长安大学 一种基于信誉值模型的dr-pbft改进算法
CN116015672A (zh) * 2022-12-15 2023-04-25 山西大学 一种基于信誉模型的pbft共识机制
CN118096377A (zh) * 2024-04-23 2024-05-28 国网数字科技控股有限公司 一种分布式绿电交易轻量级共识方法、系统、设备及介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160321629A1 (en) * 2015-05-01 2016-11-03 Monegraph, Inc. Digital content rights transfers within social networks
CN107018024A (zh) * 2017-05-10 2017-08-04 广东工业大学 一种云服务推荐方法及装置
CN107040594A (zh) * 2017-04-12 2017-08-11 山大地纬软件股份有限公司 基于pbft的许可区块链节点准入的方法及装置
US20170323392A1 (en) * 2016-05-05 2017-11-09 Lance Kasper Consensus system for manipulation resistant digital record keeping
CN107659429A (zh) * 2017-08-11 2018-02-02 四川大学 基于区块链的数据共享方法
CN107665405A (zh) * 2017-09-26 2018-02-06 北京邮电大学 一种车辆信誉管理方法及装置
US20180101560A1 (en) * 2016-10-07 2018-04-12 International Business Machines Corporation Establishing overlay trust consensus for blockchain trust validation system
CN108011709A (zh) * 2016-12-27 2018-05-08 北京量子保科技有限公司 一种基于区块链的数据交易方法
CN108122165A (zh) * 2017-12-15 2018-06-05 北京中电普华信息技术有限公司 一种区块链共识方法及系统
CN108492103A (zh) * 2018-02-07 2018-09-04 北京大学深圳研究生院 一种联盟区块链共识方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160321629A1 (en) * 2015-05-01 2016-11-03 Monegraph, Inc. Digital content rights transfers within social networks
US20170323392A1 (en) * 2016-05-05 2017-11-09 Lance Kasper Consensus system for manipulation resistant digital record keeping
US20180101560A1 (en) * 2016-10-07 2018-04-12 International Business Machines Corporation Establishing overlay trust consensus for blockchain trust validation system
CN108011709A (zh) * 2016-12-27 2018-05-08 北京量子保科技有限公司 一种基于区块链的数据交易方法
CN107040594A (zh) * 2017-04-12 2017-08-11 山大地纬软件股份有限公司 基于pbft的许可区块链节点准入的方法及装置
CN107018024A (zh) * 2017-05-10 2017-08-04 广东工业大学 一种云服务推荐方法及装置
CN107659429A (zh) * 2017-08-11 2018-02-02 四川大学 基于区块链的数据共享方法
CN107665405A (zh) * 2017-09-26 2018-02-06 北京邮电大学 一种车辆信誉管理方法及装置
CN108122165A (zh) * 2017-12-15 2018-06-05 北京中电普华信息技术有限公司 一种区块链共识方法及系统
CN108492103A (zh) * 2018-02-07 2018-09-04 北京大学深圳研究生院 一种联盟区块链共识方法

Cited By (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110189128A (zh) * 2019-06-06 2019-08-30 西安安盟智能科技股份有限公司 一种用于区块快速生成的分布式共识的算法和装置
CN110189128B (zh) * 2019-06-06 2021-05-14 西安安盟智能科技股份有限公司 一种用于区块快速生成的分布式共识的方法和装置
CN110519246A (zh) * 2019-08-15 2019-11-29 安徽师范大学 基于信任区块链节点的信任度计算方法
CN110519246B (zh) * 2019-08-15 2021-09-28 安徽师范大学 基于信任区块链节点的信任度计算方法
CN110766551A (zh) * 2019-09-10 2020-02-07 中国科学院信息工程研究所 一种基于改进Kafka共识机制的联盟链及交易方法
CN110766551B (zh) * 2019-09-10 2022-04-01 中国科学院信息工程研究所 一种基于改进Kafka共识机制的联盟链及交易方法
CN110677485A (zh) * 2019-09-30 2020-01-10 大连理工大学 一种基于信用的动态分层拜占庭容错共识方法
CN110784346A (zh) * 2019-10-18 2020-02-11 深圳供电局有限公司 一种基于信誉值的pbft共识系统及方法
CN110784346B (zh) * 2019-10-18 2022-07-29 深圳供电局有限公司 一种基于信誉值的pbft共识系统及方法
CN111131181A (zh) * 2019-12-05 2020-05-08 重庆邮电大学 一种基于信誉机制和DPBFT算法的区块链动态DPoS共识方法
CN111131181B (zh) * 2019-12-05 2022-02-08 重庆邮电大学 一种基于信誉机制和DPBFT算法的区块链动态DPoS共识方法
CN111353717A (zh) * 2020-03-05 2020-06-30 中国工商银行股份有限公司 区块链共识节点推选系统及方法
CN111355810B (zh) * 2020-03-17 2022-05-10 重庆邮电大学 一种基于信誉与投票机制的改进pbft共识方法
CN111355810A (zh) * 2020-03-17 2020-06-30 重庆邮电大学 一种基于信誉与投票机制的改进pbft共识方法
CN111510502A (zh) * 2020-04-28 2020-08-07 吉林科创电力有限公司 一种基于动态信誉值的pbft共识传播优化方法
CN111583039A (zh) * 2020-05-09 2020-08-25 江苏大学 无管理者区块链交易的安全交互方法、激励方法及交易系统
CN111682942A (zh) * 2020-05-18 2020-09-18 哈尔滨工业大学 一种应用于许可链的二元加权拜占庭容错共识方法
CN111724145A (zh) * 2020-05-25 2020-09-29 天津大学 一种区块链系统分片协议的设计方法
CN111770148A (zh) * 2020-06-22 2020-10-13 重庆邮电大学 一种基于区块链技术的雾计算卸载模型优化方法
CN111770148B (zh) * 2020-06-22 2022-04-29 重庆邮电大学 一种基于区块链技术的雾计算卸载模型优化方法
CN112073484A (zh) * 2020-08-28 2020-12-11 武汉大学 一种基于联盟链的gdpr合规监管方法及系统
CN112073484B (zh) * 2020-08-28 2022-01-04 武汉大学 一种基于联盟链的gdpr合规监管方法及系统
CN112073483A (zh) * 2020-08-28 2020-12-11 武汉大学 基于信誉与委员会背书机制的权威证明共识方法及系统
CN112073483B (zh) * 2020-08-28 2022-01-04 武汉大学 基于信誉与委员会背书机制的权威证明共识方法及系统
CN112202612A (zh) * 2020-09-29 2021-01-08 东软集团股份有限公司 区块链节点管理方法、存储介质、节点以及区块链系统
CN112532581A (zh) * 2020-10-26 2021-03-19 南京辰阔网络科技有限公司 一种基于共识参与度和交易活跃度的改进pbft共识方法
WO2022095780A1 (zh) * 2020-11-06 2022-05-12 深圳前海微众银行股份有限公司 一种基于bft的区块链共识方法及装置
CN112437049A (zh) * 2020-11-06 2021-03-02 深圳前海微众银行股份有限公司 一种基于bft的区块链共识方法及装置
CN112468552B (zh) * 2020-11-16 2023-06-30 天津大学 双层分布式区块链网络模型的轻量级信誉共识实现方法
CN112468552A (zh) * 2020-11-16 2021-03-09 天津大学 双层分布式区块链网络模型的轻量级信誉共识实现方法
CN112395642A (zh) * 2020-11-20 2021-02-23 湖南智慧政务区块链科技有限公司 一种安全多方隐私计算方法、装置、设备及存储介质
CN112395642B (zh) * 2020-11-20 2024-02-13 湖南智慧政务区块链科技有限公司 一种安全多方隐私计算方法、装置、设备及存储介质
CN112751824A (zh) * 2020-11-30 2021-05-04 长安大学 一种基于区块链的车载命名数据网络信任机制
CN112702346A (zh) * 2020-12-24 2021-04-23 国网浙江省电力有限公司电力科学研究院 基于联盟链的分布式身份认证方法及系统
CN112702346B (zh) * 2020-12-24 2024-05-10 国网浙江省电力有限公司电力科学研究院 基于联盟链的分布式身份认证方法及系统
CN113222690A (zh) * 2021-04-27 2021-08-06 铭数科技(青岛)有限公司 一种应用于区域能源互联网的区块链共识方法
CN113645190A (zh) * 2021-07-12 2021-11-12 中国科学院信息工程研究所 一种考虑节点信誉的拜占庭容错共识方法及区块链
CN113746635A (zh) * 2021-08-18 2021-12-03 湖北文理学院 提高pbft共识可扩展性的方法、装置、计算设备及存储介质
CN113783948B (zh) * 2021-08-26 2024-05-31 浙商银行股份有限公司 一种联盟链组合共识方法、设备及存储介质
CN113783948A (zh) * 2021-08-26 2021-12-10 浙商银行股份有限公司 一种联盟链组合共识方法、设备及存储介质
CN113691632B (zh) * 2021-08-27 2023-06-13 广东卓启云链科技有限公司 一种区块链计算资源的动态调度方法及系统
CN113691632A (zh) * 2021-08-27 2021-11-23 广东卓启云链科技有限公司 一种区块链计算资源的动态调度方法及系统
CN114024961A (zh) * 2021-09-24 2022-02-08 泉州华中科技大学智能制造研究院 一种区块链网络及其共识算法
CN114024961B (zh) * 2021-09-24 2023-07-25 泉州华中科技大学智能制造研究院 一种区块链网络及其共识算法
CN114003584B (zh) * 2021-11-02 2024-02-23 贵州大学 一种基于演化博弈的拜占庭容错共识方法
CN114003584A (zh) * 2021-11-02 2022-02-01 贵州大学 一种基于演化博弈的拜占庭容错共识方法
CN114285748B (zh) * 2021-12-28 2023-06-27 福州物联网开放实验室有限公司 基于物联网的信誉评价方法及系统
CN114285748A (zh) * 2021-12-28 2022-04-05 福州物联网开放实验室有限公司 基于物联网的信誉评价方法及系统
CN114363352B (zh) * 2022-01-05 2023-08-15 青岛理工大学 基于区块链的物联网系统跨链交互方法
CN114363352A (zh) * 2022-01-05 2022-04-15 青岛理工大学 基于区块链的物联网系统跨链交互方法
CN115277722B (zh) * 2022-07-27 2023-08-22 长安大学 一种基于信誉值模型的dr-pbft改进方法
CN115277722A (zh) * 2022-07-27 2022-11-01 长安大学 一种基于信誉值模型的dr-pbft改进算法
CN116015672A (zh) * 2022-12-15 2023-04-25 山西大学 一种基于信誉模型的pbft共识机制
CN116015672B (zh) * 2022-12-15 2024-05-28 山西大学 一种基于信誉模型的pbft共识机制
CN118096377A (zh) * 2024-04-23 2024-05-28 国网数字科技控股有限公司 一种分布式绿电交易轻量级共识方法、系统、设备及介质

Also Published As

Publication number Publication date
CN109767199B (zh) 2023-06-16

Similar Documents

Publication Publication Date Title
CN109767199A (zh) 基于信誉的pbft共识系统及方法、区块链数据处理系统
CN109639430B (zh) 安全高速轻量级的区块链系统及方法
Lei et al. Reputation-based byzantine fault-tolerance for consortium blockchain
CN109547527B (zh) 区块链中基于信誉机制的分区快速共识方法
CN109842606B (zh) 基于一致性哈希算法的区块链共识算法和系统
CN111131209B (zh) 一种改进的高效共识方法、系统、计算机设备及存储介质
CN111082943B (zh) 一种高效的区块链共识方法
CN112163856A (zh) 用于区块链与物联网融合场景的共识方法及系统
CN112073483B (zh) 基于信誉与委员会背书机制的权威证明共识方法及系统
CN113660668A (zh) 一种异构融合网络的无缝可信跨域路由系统及其控制方法
Wang et al. Blockchain-based dynamic energy management mode for distributed energy system with high penetration of renewable energy
CN112217683A (zh) 跨异构链数据可达性处理方法、系统、介质、设备、终端
Liu et al. An intelligent strategy to gain profit for bitcoin mining pools
KR20200081533A (ko) 사물 인터넷 환경을 위한 동적 블라인드 투표기반의 블록체인 합의방법
Yuan et al. A multi-source feedback based trust calculation mechanism for edge computing
CN116366669A (zh) 一种适用于众包系统的基于信誉值分权制衡的共识方法
CN114422146B (zh) 一种区块链主节点匿名排序方法
Xu et al. Improved PBFT algorithm based on vague sets
Zhang et al. A lightweight privacy preserving scheme of charging and discharging for electric vehicles based on consortium blockchain in charging service company
CN116546499B (zh) 一种基于轻量级拜占庭容错的移动终端身份认证方法
CN116260826A (zh) 一种供应链溯源中拜占庭容错共识方法及系统
CN116389478A (zh) 一种基于区块链和联邦学习的四网融合数据共享方法
CN116389040A (zh) 基于信誉的区块链共识方法、装置和计算机设备
Chen et al. Parameter-estimation based trust model for unstructured peer-to-peer networks
Chen et al. Thinkey: A scalable blockchain architecture

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant