CN109559120B - 基于权重的区块链共识方法、***、存储介质及电子设备 - Google Patents

基于权重的区块链共识方法、***、存储介质及电子设备 Download PDF

Info

Publication number
CN109559120B
CN109559120B CN201811466431.1A CN201811466431A CN109559120B CN 109559120 B CN109559120 B CN 109559120B CN 201811466431 A CN201811466431 A CN 201811466431A CN 109559120 B CN109559120 B CN 109559120B
Authority
CN
China
Prior art keywords
consensus
node
block chain
weight
leader
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.)
Active
Application number
CN201811466431.1A
Other languages
English (en)
Other versions
CN109559120A (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.)
State Grid Digital Technology Holdings Co ltd
State Grid Huitong Jincai Beijing Information Technology Co ltd
State Grid Corp of China SGCC
State Grid Zhejiang Electric Power Co Ltd
Original Assignee
State Grid Huitong Jincai Beijing Information Technology Co ltd
State Grid Corp of China SGCC
State Grid Zhejiang Electric Power Co Ltd
State Grid E Commerce Co Ltd
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 State Grid Huitong Jincai Beijing Information Technology Co ltd, State Grid Corp of China SGCC, State Grid Zhejiang Electric Power Co Ltd, State Grid E Commerce Co Ltd filed Critical State Grid Huitong Jincai Beijing Information Technology Co ltd
Priority to CN201811466431.1A priority Critical patent/CN109559120B/zh
Publication of CN109559120A publication Critical patent/CN109559120A/zh
Application granted granted Critical
Publication of CN109559120B publication Critical patent/CN109559120B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种面向能源区块链的基于权重的区块链共识方法,包括:在目标块链的各个共识节点中选取领导主节点;当所述领导主节点接收到交易请求时,将所述交易请求发送给各个其余共识节点进行验证;依据每一个其余共识节点的权重和预设的投票数,确定与其对应的共识结果的目标票数,将所述目标票数反馈给所述领导主节点;当反馈完成时,若共识结果的总票数大于预设的判定阈值,则判定达成共识。上述的方法,由于为每一个共识节点分配权重,令各个共识节点对所述能源区块链的影响是不同的,权重越高影响越大,提高了达成共识效率。

Description

基于权重的区块链共识方法、***、存储介质及电子设备
技术领域
本发明涉及区块链共识机制技术领域,特别涉及一种基于权重的区块链共识方法、***、存储介质及电子设备。
背景技术
区块链具有分布式自治、可信透明、安全可靠、时序不可篡改等特性较好契合能源互联网所具有的设备智能、多能协同、供需分散等特点,应用于各个领域,以能源互联网为例,能源互联网作为一种泛能源***,通过电力技术、数字化技术、信息技术等实现热能***、电力***、燃气***等多能***之间的互联互通,有效推动能量流、信息流和价值流深度融合,已成为能源生产、传输、存储到消费整个产业链的重要支撑基础设施,然而,能源互联网中数据传输损耗大、传输效率低下、交易成本高、交易可信性低、监管难度大等问题使得其落地应用面临诸多挑战。两者之间的深度融合即能源区块链,为解决这些问题提供了可能性。
发明人对现有的能源区块链的共识方法进行研究发现,能源区块链作为一种共享的分布式数据库技术,其中各个节点对能源区块链的影响是不同的,但现有技术中对每一个节点相同对待,最终共识结果的反馈的准确度偏低。
发明内容
有鉴于此,本发明提供了基于权重的区块链共识方法、装置、存储介质及电子设备,用以解决现有技术中能源区块链作为一种共享的分布式数据库技术,其中各个节点对能源区块链的影响是不同的,但现有技术中对每一个节点相同对待,最终共识结果的反馈的准确度偏低的问题。
具体方案如下:
一种基于权重的区块链共识方法,包括:
在目标块链的各个共识节点中选取领导主节点;
当所述领导主节点接收到交易请求时,将所述交易请求发送给各个其余共识节点进行验证;
依据每一个其余共识节点的权重和预设的投票数,确定与其对应的共识结果的目标票数,将所述目标票数反馈给所述领导主节点;
当反馈完成时,若共识结果的总票数大于预设的判定阈值,则判定达成共识。
上述的方法,可选的,还包括:
创建与所述交易请求对应的目标区块;
将所述目标区块添加到所述目标区块链中。
上述的方法,可选的,还包括:
对所述领导主节点的反馈过程进行计时;
当计时时长达到预设的反馈时长且所述领导主节点未反馈时,判定所述领导主节点失效;
在所述目标区块链中重新选取领导主节点。
上述的方法,可选的,在目标区块链的各个节点中选取领导主节点,包括:
获取所述目标区块链中各个共识节点的产能,确定所述目标区块链的总产能;
依据各个产能和所述总产能,确定各个共识节点的权重;
将各个共识节点中权重最高的共识节点作为领导主节点。
上述的方法,可选的,当所述领导主节点接收到交易请求时,将所述交易请求发送给各个其余共识节点进行验证,包括:
将交易请求传递给所述领导主节点进行广播;
将与所述交易请求对应的预备消息发送给所述目标区块链中的各个其余节点进行验证。
一种基于权重的区块链共识***,包括:
选取模块,用于在能源区块链的各个共识节点中选取领导主节点;
验证模块,用于当所述领导主节点接收到交易请求时,将所述交易请求发送给各个其余共识节点进行验证;
反馈模块,用于依据每一个其余共识节点的权重和预设的投票数,确定与其对应的共识结果的目标票数,将所述目标票数反馈给所述领导主节点;
第一判定模块,用于当反馈完成时,若共识结果的总票数大于预设的判定阈值,则判定达成共识。
上述的***,可选的,还包括:
计时模块,用于对所述领导主节点的反馈过程进行计时;
第二判定模块,当计时时长达到预设的反馈时长且所述领导主节点未反馈时,判定所述领导主节点失效;
重选模块,用于在所述目标区块链中重新选取领导主节点。
上述的***,可选的,所述验证模块包括:
广播单元,用于将交易请求传递给所述领导主节点进行广播;
验证单元,用于将与所述交易请求对应的预备消息发送给所述目标区块链中的各个其余节点进行验证。
一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在的设备执行上述的基于权重的区块链共识方法。
一种电子设备,包括存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行上述的基于权重的区块链共识方法。
与现有技术相比,本发明包括以下优点:
本发明公开了一种基于权重的区块链共识方法,包括:在目标块链的各个共识节点中选取领导主节点;当所述领导主节点接收到交易请求时,将所述交易请求发送给各个其余共识节点进行验证;依据每一个其余共识节点的权重和预设的投票数,确定与其对应的共识结果的目标票数,将所述目标票数反馈给所述领导主节点;当反馈完成时,若共识结果的总票数大于预设的判定阈值,则判定达成共识。上述的方法,由于为每一个共识节点分配权重,令各个共识节点对所述目标区块链的影响是不同的,权重越高影响越大,提高了最终共识结果的反馈的准确度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种能源交易场景图;
图2为本发明提供的一种能源区块链示意图;
图3为本发明提供的一种基于权重的区块链共识方法流程图;
图4为本发明提供的一种区块链结构示意图;
图5为本发明提供的一种基于权重的区块链共识方法又一流程图;
图6为本发明提供的一种拜占庭容错投票共识流程图;
图7为本发明提供的一种能源区块链操作流程图;
图8为本发明提供的一种基于权重的区块链共识***结构框图;
图9为本发明提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
本发明实施例提供了一种基于权重的区块链共识方法,所述方法可以应用在能源区块链或者其它行业与区块链的融合过程中,本发明实施例中,以能源区块链为例进行说明,所述能源区块链可以为电量交易平台中,实现可追溯、不可篡改、多中心化的交易信息验证。能源区块链场景示意图如图1所示,场景中涉及的实体有能源厂、购买者、发生金钱交易时可能还会涉及到银行。购买者在多个能源厂中选择可以信任且能满足需求的节点进行交易,交易发生后生成一份账单,需要提供一个能源区块链来解决谁来记账、怎么记账、怎么校验信息的准确性等问题。基于上述场景的能源区块链如图2所示,链中主要包含三种节点。共识节点由能源厂实体构成,参与记账与校验的过程。共识节点包含领导状态与一般状态,初始状态为一般状态,当共识节点被选为领导主节点时状态变为领导状态。状态机制的设置是选择领导主节点的基础,可以帮助***达到记账的目的。备份节点不参与信息校验,只负责对数据进行备份,目的是方便政府监管部门的监管。网管节点是一个轻量级的网管***,可以实现协议的转换。网管节点提供API增加联盟连的可扩展性。参与者可以通过网关节点将交易数据应用在实际生活中。基于上述的能源区块链,本发明提供了一种基于权重的区块链共识方法,所述方法的执行主体可以为控制器或者处理器,所述共识方法属于投票类共识算法,投票类共识依赖于参与节点投票,典型的如实用拜占庭容错算法PBFT(Practical Byzantine Fault Tolerance),授权拜占庭容错算法dBFT(DelegatedByzantine Fault Tolerance)等。本发明面向能源区块链多能源协同应用场景,提出一种面向能源区块链的带权重实用拜占庭容错共识算法W-PBFT(Weight-Practical ByzantineFault Tolerance)。W-PBFT增加了权重机制,并且权重机制直接影响领导主节点的选取与数据校验方式,解决能源交易过程中节点记账一致性、安全性、可扩展性等问题。所述共识方法的执行流程如图3所示,包括:
S101、在目标区块链的各个共识节点中选取领导主节点;
本发明实施例中,所述目标区块链指图2所示的能源区块链,依据每一个共识节点的权重,在各个共识节点中选取领导主节点。如果共识节点被选为领导主节点那么此共识节点将获得记账权。获得记账权的共识节点负责生成区块并且将区块写入区块链中。
S102、当所述领导主节点接收到交易请求时,将所述交易请求发送给各个其余共识节点进行验证;
本发明实施例中,验证的过程需要分别在所述领导主节点和其余共识节点之间分别进行验证,若所述交易请求在所述领导主节点和/或者所述其余共识节点之间验证失败,对所述交易请求进行丢弃处理。当所述交易请求在领导主节点和所述其余共识节点之间验证成功时,对所述交易请求进行识别,得到共识结果,所述共识结果为可以为所述交易请求是否通过中的一种、两种或者其它的优选识别结果。
S103、依据每一个其余共识节点的权重和预设的投票数,确定与其对应的共识结果的目标票数,将所述目标票数反馈给所述领导主节点;
本发明实施例中,投票权是指在共识阶段共识节点表示是否验证通过校验,其中每一个共识节点的预设投票数是依据经验值或者实际情况进行确定的,每一个共识节点的权重大小是由其对应的产能决定的,其中每一个其余共识节点的目标票数为其对应的权重和预设的投票数的成绩,将每一个其余共识节点的目标票数反馈给所述领导主节点。
S104、当反馈完成时,若共识结果的总票数大于预设的判定阈值,则判定达成共识。
本发明实施例中,所述领导主节点统计每一个共识结果对应的总票数,若共识结果的总票数大于预设的判定阈值,则判定达成共识,其中,所述预设的判定阈值可以依据经验值和实际情况共同确定。
本发明实施例中,为了提高***的容错性,增加了计时器的超时机制。当领导主节点失效导致其他节点无期限地等待请求的执行时,启动计时器。当计时时长达到预设的反馈时长且所述领导主节点未反馈时,判定所述领导主节点失效,新的领导主节点将消息向全网广播继续执行操作。
本发明公开了一种基于权重的区块链共识方法,包括:在目标块链的各个共识节点中选取领导主节点;当所述领导主节点接收到交易请求时,将所述交易请求发送给各个其余共识节点进行验证;依据每一个其余共识节点的权重和预设的投票数,确定与其对应的共识结果的目标票数,将所述目标票数反馈给所述领导主节点;当反馈完成时,若共识结果的总票数大于预设的判定阈值,则判定达成共识。上述的方法,由于为每一个共识节点分配权重,因此,各个共识节点对所述目标区块链的影响是不同的,权重越高影响越大,提高了最终共识结果的反馈的准确度。
本发明实施例中,图1所示的能源区块链交易场景中涉及不同的能源厂、不同的产能方式、不同的用户。能源厂为用户提供能源,用户为能源付费。根据场景的描述需要定义一个特殊的区块结构存储交易中所产生的信息。区块中包含区块头、交易数量、区块体。
参考图4是区块链的结构。其中,区块头中包括版本号、上一个区块哈希Hash值、默克尔Merkle根哈希、时间戳、权重等属性字段。版本号用来匹配当前软件的版本;上一个区块哈希Hash值用来链接区块结构;默克尔Merkle根哈希用来校验交易完整性;时间戳记录区块产生时间;权重表示联盟中共识节点投票重要性程度。交易数量用来统计区块体内包含的交易数。区块体内记录交易信息。其中包括交易占用的字节数、区块内存储的交易数据。交易数据中准确的记录了订单编号、交易时间、付款时间、发货时间、发货地址、购买者的信息、购买数量、购买价钱、能源设备、调度数据。由于区块链中结合了密码学,可以确保存入区块中的信息是可信的、不可篡改的。
领导主节点校验数据的正确性后将交易数据存入区块中。此时交易还没有正式加入到区块链当中。只有在达成共识之后,才会正式被记录在区块链内。
本发明实施例中,在目标区块链的各个节点中选取领导主节点的方法流程如图5所示,包括步骤:
S201、获取所述目标区块链中各个共识节点的产能,确定所述目标区块链的总产能;
本发明实施例中,获取所述目标区块链中每一个共识节点的产能,并将各个产能进行累加,得到所述目标区块链的总产能。
S202、依据各个产能和所述总产能,确定各个共识节点的权重;
本发明实施例中,权重评估是整个共识机制运行的基础,权重直接影响共识节点的记账权与投票权。所谓记账权是指在领导主节点选择阶段,如果共识节点被选为领导主节点那么此共识节点将获得记账权。获得记账权的共识节点负责生成区块并且将区块写入区块链中。投票权是指在共识阶段节点表示是否验证通过校验时,投的票数是由权重大小决定的。权重Wi计算方法为:
Figure BDA0001889923100000081
Ei是能源厂在政府注册时提供的产能。Wi衡量一个能源厂所产的能量占整个区块链中所产的能量的比例。
S203、将各个共识节点中权重最高的共识节点作为领导主节点。
本发明实施例中,协议开始时,每一个共识节点会广播它的公钥和权重。公钥是为了证明共识节点是有效节点,每个共识节点只接受有效节点发来的消息。共识节点i成为领导主节点的概率Pi是由权重Wi在所有共识节点权重中所占的比例决定的,Pi的表达式如下:
Figure BDA0001889923100000082
每个节点通过公平的竞选成为领导主节点,节点j被选择的概率为(1-p1)(1-P2)...(1-pj-1)Pj。选择被选择概率最大的节点作为领导节点。
本发明实施中,所述目标区块链的各个共识节点的权重和数量都会因为新的共识节点的加入而发生变化,每当有新的共识节点加入时,重新分配权重,若新共识节点加入时,正在进行共识判断,则采用原有权重完成本次识别后,在重新分配权重。
本发明实施例中,选择出领导主节点之后,交易验证过程参考附图6,当领导主节点接收请求后启动四阶段的协议向各节点发送广播请求。由领导主节点负责生成目标区块。
预准备阶段:领导主节点将交易进行校验并放在目标区块内。所述领导主节点分配一个序列号给收到的请求,然后向所有共识节点群发预准备消息。请求本身是不包含在预准备消息内的,这样就能使预准备消息足够小。预准备消息的目的是证明交易被赋予了相对应序号。此外,将“请求排序协议”和“请求传输协议”进行解耦,有利于对消息传输的效率进行深度优化。
准备阶段:其余共识节点接收到领导主节点的预准备消息后首先对预准备消息进行验证,如果是非法请求就丢弃。验证预准备消息通过的共识节点接收到交易列表后,根据排序模拟执行这些交易。由于序号确保了所有共识节点以同样的顺序执行所有请求,这样就保证了算法的正确性。所有交易执行完后,如果是正确的向全网广播准备消息。
提交阶段:如果节点收到了一定数量正确消息,会向全网广播提交结果。提交结果是由共识节点i的权重Wi乘以共识节点拥有票数Ti,即:
resulti=Wi×Ti (3)
响应阶段:***中设定了一个预设的判定阈值ε,将所有权重票数相加得result=∑resuilt,若result≥ε,即所有的共识节点达成了共识。领导主节点会创建一个新的区块加入区块链尾部。
本发明实施例中,所述共识方法的整体操作流程如图7所示,其中,带权重实用拜占庭容错共识算法W-PBFT包含两个部分。第一部分是根据***中的权重选择领导主节点,第二部分在实用拜占庭容错算法基础上进行投票验证从而达到共识。***初始化指在能源区块链中,如果能源厂想要加入到区块链中,需要到一个信任的政府机构进行注册。注册通过后政府会将能源厂的ID加入区块链中,能源厂会获得一个公钥和ID证书。能源厂可以通过ID证书注册成为一个合法节点,公钥广播在全网后其它节点通过公钥识别其身份。
基于上述的方法,本发明实施例中,还提供了一种基于权重的区块链共识***,所述共识***的结构框图如图8所示,包括:
选取模块301,、验证模块302,、识别模块303,反馈模块304303和第一判定模块305304。
其中,
所述选取模块301,用于在能源区块链的各个共识节点中选取领导主节点;
所述验证模块302,用于当所述领导主节点接收到交易请求时,验证模块,将所述交易请求发送给各个其余共识节点进行验证;
所述反馈模块303,用于依据每一个其余共识节点的权重和预设的投票数,确定与其对应的共识结果的目标票数,将所述目标票数反馈给所述领导主节点;
所述第一判定模块304,用于当反馈完成时,若共识结果的总票数大于预设的判定阈值,则判定达成共识。
本发明公开了一种基于权重的区块链共识***,包括:在目标块链的各个共识节点中选取领导主节点;当所述领导主节点接收到交易请求时,将所述交易请求发送给各个其余共识节点进行验证;依据每一个其余共识节点的权重和预设的投票数,确定与其对应的共识结果的目标票数,将所述目标票数反馈给所述领导主节点;当反馈完成时,若共识结果的总票数大于预设的判定阈值,则判定达成共识。上述的***,由于为每一个共识节点分配权重,令各个共识节点对所述目标区块链的影响是不同的,权重越高影响越大,提高了最终共识结果的反馈的准确度。
本发明实施例中,所述共识***还包括:
计时模块305、第二判定模块306和重选模块307
其中,
所述计时模块305,用于对所述领导主节点的反馈过程进行计时;
所述第二判定模块306,当计时时长达到预设的反馈时长且所述领导主节点未反馈时,判定所述领导主节点失效;
所述重选模块307,用于在所述目标区块链中重新选取领导主节点。
本发明实施例中,所述验证模块302包括:
广播单元308和验证单元309。
其中,
所述广播单元308,用于将交易请求传递给所述领导主节点进行广播;
所述验证单元309,用于将与所述交易请求对应的预备消息发送给所述目标区块链中的各个其余节点进行验证。
本发明实施例还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在的设备执行上述一种基于权重的区块链共识方法,所述方法具体包括:
在目标块链的各个共识节点中选取领导主节点;
当所述领导主节点接收到交易请求时,将所述交易请求发送给各个其余共识节点进行验证;
依据每一个其余共识节点的权重和预设的投票数,确定与其对应的共识结果的目标票数,将所述目标票数反馈给所述领导主节点;
当反馈完成时,若共识结果的总票数大于预设的判定阈值,则判定达成共识。
上述的方法,可选的,还包括:
创建与所述交易请求对应的目标区块;
将所述目标区块添加到所述目标区块链中。
上述的方法,可选的,还包括:
对所述领导主节点的反馈过程进行计时;
当计时时长达到预设的反馈时长且所述领导主节点未反馈时,判定所述领导主节点失效;
在所述目标区块链中重新选取领导主节点。
上述的方法,可选的,在目标区块链的各个节点中选取领导主节点,包括:
获取所述目标区块链中各个共识节点的产能,确定所述目标区块链的总产能;
依据各个产能和所述总产能,确定各个共识节点的权重;
将各个共识节点中权重最高的共识节点作为领导主节点。
上述的方法,可选的,当所述领导主节点接收到交易请求时,将所述交易请求发送给各个其余共识节点进行验证,包括:
将交易请求传递给所述领导主节点进行广播;
将与所述交易请求对应的预备消息发送给所述目标区块链中的各个其余节点进行验证。
本发明实施例还提供了一种电子设备,其结构示意图如图9所示,具体包括存储器401,以及一个或者一个以上的程序402,其中一个或者一个以上程序402存储于存储器401中,且经配置以由一个或者一个以上处理器403执行所述一个或者一个以上程序402包含用于进行以下操作的指令:
在目标块链的各个共识节点中选取领导主节点;
当所述领导主节点接收到交易请求时,将所述交易请求发送给各个其余共识节点进行验证;
依据每一个其余共识节点的权重和预设的投票数,确定与其对应的共识结果的目标票数,将所述目标票数反馈给所述领导主节点;
当反馈完成时,若共识结果的总票数大于预设的判定阈值,则判定达成共识。
上述的方法,可选的,还包括:
创建与所述交易请求对应的目标区块;
将所述目标区块添加到所述目标区块链中。
上述的方法,可选的,还包括:
对所述领导主节点的反馈过程进行计时;
当计时时长达到预设的反馈时长且所述领导主节点未反馈时,判定所述领导主节点失效;
在所述目标区块链中重新选取领导主节点。
上述的方法,可选的,在目标区块链的各个节点中选取领导主节点,包括:
获取所述目标区块链中各个共识节点的产能,确定所述目标区块链的总产能;
依据各个产能和所述总产能,确定各个共识节点的权重;
将各个共识节点中权重最高的共识节点作为领导主节点。
上述的方法,可选的,当所述领导主节点接收到交易请求时,将所述交易请求发送给各个其余共识节点进行验证,包括:
将交易请求传递给所述领导主节点进行广播;
将与所述交易请求对应的预备消息发送给所述目标区块链中的各个其余节点进行验证。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种基于权重的区块链共识方法、装置、存储介质及电子设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (9)

1.一种基于权重的区块链共识方法,其特征在于,包括:
获取目标区块链中各个共识节点的产能,确定所述目标区块链的总产能,对于每一个共识节点,将所述共识节点的产能与总产能的比值作为所述共识节点的权重;将各个共识节点中权重最高的共识节点作为领导主节点;
当所述领导主节点接收到交易请求时,对所述交易请求进行校验并分配一个序列号给所述交易请求,并将所述交易请求发送给各个其余共识节点进行验证;
其余共识节点中的每一个共识节点,在验证通过后,接收交易列表并根据排序对所述交易列表中的所述交易请求进行模拟执行;并在模拟执行结果为正确时向全广播准备消息,若所述共识节点接收到一定数量的正确消息,则将所述共识节点的权重和预设的投票数之间的乘积确定为所述共识通过所对应的目标票数;将所述目标票数反馈给所述领导主节点;
当反馈完成时,所述领导主节点统计各个共识节点的目标票数,若共识结果的总票数大于预设的判定阈值,则判定达成共识。
2.根据权利要求1所述方法,其特征在于,还包括:
创建与所述交易请求对应的目标区块;
将所述目标区块添加到所述目标区块链中。
3.根据权利要求1所述方法,其特征在于,还包括:
对所述领导主节点的反馈过程进行计时;
当计时时长达到预设的反馈时长且所述领导主节点未反馈时,判定所述领导主节点失效;
在所述目标区块链中重新选取领导主节点。
4.根据权利要求1所述方法,其特征在于,所述将所述交易请求发送给各个其余共识节点进行验证,包括:
将交易请求传递给所述领导主节点进行广播;
将与所述交易请求对应的预备消息发送给所述目标区块链中的各个其余节点进行验证。
5.一种基于权重的区块链共识***,其特征在于,包括:
选取模块,用于获取目标区块链中各个共识节点的产能,确定所述目标区块链的总产能,对于每一个共识节点,将所述共识节点的产能与总产能的比值作为所述共识节点的权重;将各个共识节点中权重最高的共识节点作为领导主节点;
验证模块,用于当所述领导主节点接收到交易请求时,对所述交易请求进行校验并分配一个序列号给所述交易请求,验证模块,将所述交易请求发送给各个其余共识节点进行验证;
反馈模块,用于在验证通过后,接收交易列表并根据排序对所述交易列表中的所述交易请求进行模拟执行;并在模拟执行结果为正确时向全广播准备消息,若所述共识节点接收到一定数量的正确消息,则将所述共识节点的权重和预设的投票数之间的乘积确定为所述共识通过所对应的目标票数;将所述目标票数反馈给所述领导主节点;
第一判定模块,用于当反馈完成时,若共识结果的总票数大于预设的判定阈值,则判定达成共识。
6.根据权利要求5所述***,其特征在于,还包括:
计时模块,用于对所述领导主节点的反馈过程进行计时;
第二判定模块,当计时时长达到预设的反馈时长且所述领导主节点未反馈时,判定所述领导主节点失效;
重选模块,用于在所述目标区块链中重新选取领导主节点。
7.根据权利要求5所述***,其特征在于,所述验证模块包括:
广播单元,用于将交易请求传递给所述领导主节点进行广播;
验证单元,用于将与所述交易请求对应的预备消息发送给所述目标区块链中的各个其余节点进行验证。
8.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在的设备执行如权利要求1~4任意一项所述的基于权重的区块链共识方法。
9.一种电子设备,其特征在于,包括存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行如权利要求1~4任意一项所述的基于权重的区块链共识方法。
CN201811466431.1A 2018-12-03 2018-12-03 基于权重的区块链共识方法、***、存储介质及电子设备 Active CN109559120B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811466431.1A CN109559120B (zh) 2018-12-03 2018-12-03 基于权重的区块链共识方法、***、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811466431.1A CN109559120B (zh) 2018-12-03 2018-12-03 基于权重的区块链共识方法、***、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN109559120A CN109559120A (zh) 2019-04-02
CN109559120B true CN109559120B (zh) 2021-11-19

Family

ID=65868710

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811466431.1A Active CN109559120B (zh) 2018-12-03 2018-12-03 基于权重的区块链共识方法、***、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN109559120B (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110135803B (zh) * 2019-04-29 2023-12-08 深圳市元征科技股份有限公司 一种事项管理方法及区块链节点设备
CN110059981B (zh) * 2019-04-29 2021-06-04 威富通科技有限公司 信任度评估方法、装置及终端设备
WO2020258252A1 (zh) * 2019-06-28 2020-12-30 深圳市网心科技有限公司 一种区块链数据的共识方法及相关设备
CN110400410A (zh) * 2019-07-31 2019-11-01 中钞***产业发展有限公司杭州区块链技术研究院 一种电子投票***
CN110336707A (zh) * 2019-08-07 2019-10-15 卓尔智联(武汉)研究院有限公司 区块链共识装置、方法及计算机可读存储介质
CN110598060A (zh) * 2019-09-18 2019-12-20 广东卓启投资有限责任公司 一种区块链快速共识方法、装置、计算机设备和存储介质
CN110866753B (zh) * 2019-10-24 2021-04-06 腾讯科技(深圳)有限公司 一种第三方结算的控制方法、装置、电子设备和存储介质
CN110855475B (zh) * 2019-10-25 2022-03-11 昆明理工大学 一种基于区块链的共识资源切片方法
CN111083052B (zh) * 2019-12-19 2022-01-28 度小满科技(北京)有限公司 一种基于有序平衡二叉树的分片方法及装置
CN113132126B (zh) * 2019-12-30 2022-10-11 百度在线网络技术(北京)有限公司 投票权重确定方法及相关设备
CN111277627B (zh) * 2020-01-08 2022-04-01 深圳讴谱科技有限公司 一种基于贡献量权重证明共识机制的方法
CN112287023B (zh) * 2020-06-12 2024-04-02 支付宝(杭州)信息技术有限公司 一种块链式账本中的权重分配方法、装置及设备
CN111915133A (zh) * 2020-07-01 2020-11-10 国电南瑞科技股份有限公司 一种区块链加权共识的电网调控操作方法和***
CN111818152B (zh) * 2020-07-02 2021-04-30 电子科技大学 一种基于分布式网络的领导者选举的共识方法
CN111814204B (zh) * 2020-09-09 2020-12-15 腾讯科技(深圳)有限公司 基于区块链的数据共识方法、相关设备及存储介质
CN112087518B (zh) * 2020-09-10 2022-10-21 中国工商银行股份有限公司 用于区块链的共识方法、装置、计算机***和介质
CN112200680B (zh) * 2020-12-03 2021-03-05 腾讯科技(深圳)有限公司 区块链节点管理方法、装置、计算机以及可读存储介质
CN112688775B (zh) * 2020-12-17 2023-01-06 中国工商银行股份有限公司 联盟链智能合约的管理方法和装置、电子设备、及介质
CN112669149B (zh) * 2020-12-24 2024-06-04 杭州趣链科技有限公司 一种区块链的共识方法、装置、服务器及存储介质
CN113326516A (zh) * 2021-04-22 2021-08-31 远光软件股份有限公司 区块链共识方法、区块链***及计算机设备
US11755562B2 (en) 2021-05-13 2023-09-12 International Business Machines Corporation Score based endorsement in a blockchain network
CN113450221A (zh) * 2021-07-05 2021-09-28 石河子大学 一种基于能量证明共识机制的区块链电能交易方法
CN113486118B (zh) * 2021-07-21 2023-09-22 银清科技有限公司 共识节点选取方法及装置
CN114625899B (zh) * 2022-03-14 2023-09-08 北京百度网讯科技有限公司 信息处理方法、装置、电子设备以及存储介质
CN114625802A (zh) * 2022-03-15 2022-06-14 北京广元科技有限公司 基于能源区块链的高并发交易优化方法和***
CN115190130B (zh) * 2022-09-13 2022-12-02 北京笔新互联网科技有限公司 基于区块链的数据处理方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108182635A (zh) * 2017-12-18 2018-06-19 深圳前海微众银行股份有限公司 区块链共识方法、***和计算机可读存储介质
CN108377206A (zh) * 2018-03-12 2018-08-07 众安信息技术服务有限公司 用于配置共识算法的方法、装置及计算机可读存储介质
CN108768665A (zh) * 2018-07-02 2018-11-06 上海达家迎信息科技有限公司 区块链生成方法、装置、计算机设备以及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10304143B2 (en) * 2016-05-05 2019-05-28 Lance Timothy Kasper Consensus system for manipulation resistant digital record keeping
CN108052530B (zh) * 2017-11-10 2020-12-11 杭州云象网络技术有限公司 一种基于联盟链的去中心化ca构建方法及其***
CN108122165B (zh) * 2017-12-15 2020-10-30 北京中电普华信息技术有限公司 一种区块链共识方法及***
CN108011370A (zh) * 2017-12-27 2018-05-08 华北电力大学(保定) 一种基于全球能源区块链的分布式能源调度交易方法
CN108665274A (zh) * 2018-05-14 2018-10-16 北京链享未来科技有限公司 一种记账节点智能选择方法
CN108923909B (zh) * 2018-07-02 2021-07-20 上海达家迎信息科技有限公司 区块链生成方法、装置、计算机设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108182635A (zh) * 2017-12-18 2018-06-19 深圳前海微众银行股份有限公司 区块链共识方法、***和计算机可读存储介质
CN108377206A (zh) * 2018-03-12 2018-08-07 众安信息技术服务有限公司 用于配置共识算法的方法、装置及计算机可读存储介质
CN108768665A (zh) * 2018-07-02 2018-11-06 上海达家迎信息科技有限公司 区块链生成方法、装置、计算机设备以及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于能源区块链网络的虚拟电厂运行与调度模型;佘维 等;《中国电机工程学报》;20170705;第37卷(第13期);第3730-3732页 *

Also Published As

Publication number Publication date
CN109559120A (zh) 2019-04-02

Similar Documents

Publication Publication Date Title
CN109559120B (zh) 基于权重的区块链共识方法、***、存储介质及电子设备
CN108667632B (zh) 基于区块链的信用记录共享方法及装置、电子设备
JP7284747B2 (ja) 分散協調を用いるスマートコントラクトの実行
CN107220130B (zh) 一种在区块链的节点处实现的信息共识方法、装置及***
US10554407B1 (en) Protocols for decentralized networks
CN109255713B (zh) 一种区块链网络中某一时间段内记账权的获取方法
US11636450B2 (en) Blockchain system to which proof-of-transaction consensus algorithm is applied, and method therefor
Ferrer-Gomila et al. A fair contract signing protocol with blockchain support
CN109559228B (zh) 资源转移方法、装置、计算机设备以及可读存储介质
CN110998631A (zh) 分布式账本技术
JP2021517324A (ja) 媒体リソース割当方法、装置、システム、コンピュータプログラム及びコンピュータ装置
CN113256297B (zh) 基于区块链的数据处理方法、装置、设备及可读存储介质
CN112163954B (zh) 基于区块链的交易方法及装置
CN110855432A (zh) 基于可验证随机函数分配验证者奖励的异步bft&dpos共识机制
CN111416709B (zh) 基于区块链***的投票方法、装置、设备及存储介质
CN113987080A (zh) 基于信誉共识的区块链激励方法、装置及相关产品
CN110990790B (zh) 一种数据处理方法及设备
CN112597240A (zh) 一种基于联盟链的联邦学习的数据处理方法与***
CN113362067A (zh) 一种基于异步共识的电力交易撮合方法及***
CN110910091A (zh) 一种数据处理方法、设备及介质
CN111275346A (zh) 数据处理方法、装置、设备及存储介质
CN114978893B (zh) 一种基于区块链的去中心化联邦学习方法及***
CN113435949B (zh) 基于智能合约的去中心化联邦机器学习方法、***及存储介质
CN117333221A (zh) 一种基于区块链的多方联券共建***
CN116244709A (zh) 区块链网络中出块节点的确定方法及相关装置

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
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 100032 room 8018, 8 / F, building 7, Guangyi street, Xicheng District, Beijing

Patentee after: State Grid Digital Technology Holdings Co.,Ltd.

Patentee after: STATE GRID ZHEJIANG ELECTRIC POWER Co.,Ltd.

Patentee after: STATE GRID HUITONG JINCAI (BEIJING) INFORMATION TECHNOLOGY Co.,Ltd.

Patentee after: STATE GRID CORPORATION OF CHINA

Address before: 100053 Xicheng District Bai Guang road two, 1, 1, 1212, Beijing

Patentee before: STATE GRID ELECTRONIC COMMERCE Co.,Ltd.

Patentee before: STATE GRID ZHEJIANG ELECTRIC POWER Co.,Ltd.

Patentee before: STATE GRID HUITONG JINCAI (BEIJING) INFORMATION TECHNOLOGY Co.,Ltd.

Patentee before: STATE GRID CORPORATION OF CHINA