【技术实现步骤摘要】
节点共识方法及装置
本申请涉及数据传输
,具体而言,涉及一种节点共识方法及装置。
技术介绍
随着互联网技术的发展,区块链的应用越来越广泛,应用于区块链中的共识机制相当于投票机制,区块链中的所有节点都具备投票权利,每个节点通过共识机制进行投票,从而选出一个节点,使得所有节点通过共识机制达成共识。目前,共识机制一般都采用实用拜占庭容错算法(PracticalByzantineFaultTolerance,PBFT)。若在区块链系统中应用传统的PBFT算法,随着节点的数量增加,整个区块链的通信复杂度会急剧上升。现有技术中存在一种通信技术,通过设置主节点的方式降低传统PBET算法通信的复杂度,从而提高共识效率。但是这种设置主节点的方式,在共识过程中主节点和从节点之间仍需进行多次通信,从而导致共识效率还不够高。
技术实现思路
本申请的目的在于,针对上述现有技术中的不足,提供一种节点共识方法及装置,以解决现有技术中共识效率低的问题。为实现上述目的,本申请实施例采用的技术方案如下: ...
【技术保护点】
1.一种节点共识方法,应用于区块链网络中的主节点,其特征在于,所述方法包括:/n获取待共识信息,并将所述待共识信息发送至各从节点;/n获取各所述从节点的响应信息,并对各所述响应信息进行验证;/n若验证通过的所述响应信息数量大于2f,则生成共识信息,并将所述共识信息广播至各从节点;其中,f为当前区块链网络中可允许恶意节点和/或故障节点的最大个数;/n将所述待共识信息和所述共识信息一并发送至对应的客户端。/n
【技术特征摘要】 【专利技术属性】
1.一种节点共识方法,应用于区块链网络中的主节点,其特征在于,所述方法包括:
获取待共识信息,并将所述待共识信息发送至各从节点;
获取各所述从节点的响应信息,并对各所述响应信息进行验证;
若验证通过的所述响应信息数量大于2f,则生成共识信息,并将所述共识信息广播至各从节点;其中,f为当前区块链网络中可允许恶意节点和/或故障节点的最大个数;
将所述待共识信息和所述共识信息一并发送至对应的客户端。
2.如权利要求1所述的方法,其特征在于,所述获取待共识信息之前,所述方法还包括:
获取客户端的共识请求,并根据所述共识请求,生成请求信息;
根据所述请求信息和主节点签名,生成所述待共识信息。
3.如权利要求1所述的方法,其特征在于,所述若验证通过的所述响应信息数量大于2f,则生成共识信息,还包括:
根据所述共识信息识别故障节点和/或恶意节点,并记录故障节点信息和/或恶意节点信息。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述主节点根据预设时间间隔接收心跳请求,并响应所述心跳请求;其中,所述心跳请求,用于判定所述主节点是否发生故障。
5.一种节点共识方法,应用于区块链网络中的从节点,其特征在于,所述方法包括:
获取主节点发送的待共识信息,并对所述待共识信息中的主节点签名进行验证;
若验证通过,则生成响应信息;
将所述响应信息发送至所述主节点。
6.如权利要求5所述的方法,其特征在于,若主节点发生故障,所述方法包括:
各从节点中优先级最高的从节点接收其他从节点发送的主节点更改请求;其中,所述主节点更改请求中包括:节点信息,更改请求和节点签名;
所述优先级最高的从节点验证各所述主节点更改请求是否有效;
若有效的所述主节点更改请求数量大于2f,则确定所述优先级最高的从节点为主节点;其中,f为当前区块链网络中可允许恶意节点和/或故障节点的最大个数;
向其他从节点发送设置请求,所述设置请求中包括:主节点信息,设置主节点请求、主节点签名。
技术研发人员:陈志明,姜鹏,王桐,
申请(专利权)人:中信银行股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。