The application involves a block chain consensus method. The client sends the behavior information that carries the behavior request to the main node; the main node receives the behavior information and sends the identity generation request to the first trusted device to carry the behavior request; the first trusted device generates the identification information that carries the unique number of the behavior request, and the identification will be identified. The message is sent to the main node; the main node broadcasts the identification information to each slave node and executes the behavior request, sends the generated execution results to the client; after each node receives the identification information, the identification authentication request is sent to the corresponding second trusted devices to carry the identification information; each of the second trusted devices is in the identification information. The unique number is validated by legitimacy; after the nodes receive the legitimate results returned by the corresponding second trusted devices, the behavior requests are executed and the generated execution results are sent to the client; the client determines the consensus results based on the received execution results. The solution provided by this application can reduce the cost of network and hardware.
【技术实现步骤摘要】
区块链共识方法、装置和系统、标识信息处理方法和装置
本申请涉及计算机
,特别是涉及一种区块链共识方法、装置和系统、及标识信息处理方法和装置。
技术介绍
随着网络技术的发展,分布式系统逐渐成为主流的系统架构。在分布式系统中,若干个节点协作配合,共同完成预定任务,如存储任务和计算任务等。分布式系统的工作过程中,各节点常需要就某数据或决议达成一致,然而,异常节点(如故障节点和恶意节点)或网络故障等因素均可能破坏各节点的一致性。以区块链应用为例,其关键问题就是要解决分布式系统下各节点账本的一致性,原因在于区块链网络涉及P2P(PeertoPeer,对等网络)的拓扑结构,网络中随时可能存在节点或者网络故障,甚至拜占庭节点(恶意节点)。基于此,需要引入共识(Consensus)机制解决分布式系统的一致性问题。传统方法中,主要基于拜占庭容错算法实现共识。然而,传统拜占庭容错算法中,假设异常节点的数目不超过f,则该分布式系统达成一致需要至少(3f+1)个节点。并且,从节点均须按照主节点的排序结果执行客户端发送的行为请求,为此各节点需要就执行顺序进行多轮投票。以区块链应用为例,基于状态机复制技术,进行每笔交易的过程中均会修改节点的状态,为保证区块链系统中的各正常节点的状态一致,交易在所有节点上都必须按照相同的顺序执行,为此各节点需要就交易的执行顺序进行多轮投票(投票是指节点之间相互广播消息)。因此,传统方法存在网络及硬件开销大,并发性不高、吞吐量低和共识时间长等问题,影响系统的整体性能。
技术实现思路
基于此,有必要针对传统方法中网络及硬件开销大的问题,提供一种区块链共识 ...
【技术保护点】
一种区块链共识方法,其特征在于,包括:客户端向主节点发送携带行为请求的行为信息;所述主节点接收所述行为信息,向第一可信设备发送携带所述行为请求的标识生成请求;所述第一可信设备基于所述标识生成请求生成标识信息,并将所述标识信息发送至所述主节点,所述标识信息包括针对所述行为请求的唯一编号;所述主节点接收所述标识信息,将所述标识信息广播给各从节点;所述主节点执行所述行为请求,获得第一执行结果,并将所述第一执行结果发送至所述客户端;各所述从节点接收所述标识信息,向各自对应的第二可信设备发送携带所述标识信息的标识验证请求;各所述第二可信设备接收所述标识验证请求,对接收到的所述标识信息中的唯一编号进行合法性验证,获得合法性验证结果,并将该合法性验证结果发送至对应的从节点;各所述从节点分别接收所述合法性验证结果,并在所述合法性验证结果为合法结果时,执行所述行为请求,并将生成的第二执行结果发送至所述客户端;所述客户端基于接收到的所述第一执行结果和各所述第二执行结果确定共识结果。
【技术特征摘要】
1.一种区块链共识方法,其特征在于,包括:客户端向主节点发送携带行为请求的行为信息;所述主节点接收所述行为信息,向第一可信设备发送携带所述行为请求的标识生成请求;所述第一可信设备基于所述标识生成请求生成标识信息,并将所述标识信息发送至所述主节点,所述标识信息包括针对所述行为请求的唯一编号;所述主节点接收所述标识信息,将所述标识信息广播给各从节点;所述主节点执行所述行为请求,获得第一执行结果,并将所述第一执行结果发送至所述客户端;各所述从节点接收所述标识信息,向各自对应的第二可信设备发送携带所述标识信息的标识验证请求;各所述第二可信设备接收所述标识验证请求,对接收到的所述标识信息中的唯一编号进行合法性验证,获得合法性验证结果,并将该合法性验证结果发送至对应的从节点;各所述从节点分别接收所述合法性验证结果,并在所述合法性验证结果为合法结果时,执行所述行为请求,并将生成的第二执行结果发送至所述客户端;所述客户端基于接收到的所述第一执行结果和各所述第二执行结果确定共识结果。2.根据权利要求1所述的方法,其特征在于:在所述客户端向主节点发送携带行为请求的行为信息的步骤之前,还包括:客户端向目标节点发送携带行为请求和所述客户端的身份信息的授权请求;所述目标节点接收所述授权请求,并在所述授权请求满足预定许可授权条件时,生成针对所述授权请求的授权信息,所述许可授权条件包括所述身份信息为合法的身份信息、以及所述行为请求为有效行为请求;所述目标节点将所述授权信息发送至所述客户端;所述行为信息还包括授权信息,且所述主节点接收所述行为信息,向第一可信设备发送携带所述行为请求的标识生成请求的步骤,包括:所述主节点接收所述行为信息,在所述行为信息中携带的授权信息为有效授权信息时,向第一可信设备发送携带所述行为请求的标识生成请求。3.一种区块链共识方法,其特征在于,包括:接收客户端发送的携带行为请求的行为信息;向第一可信设备发送携带所述行为请求的标识生成请求,所述标识生成请求用于触发该第一可信设备生成标识信息,所述标识信息包括针对所述行为请求的唯一编号;接收所述第一可信设备根据所述标识生成请求返回的标识信息,将所述标识信息广播至各从节点,触发各所述从节点分别向对应的第二可信设备发送用于触发该第二可信设备对所述唯一编号进行合法性验证的标识验证请求,并触发各所述从节点在接收到相应的第二可信设备返回的合法性验证结果为合法结果时,执行所述行为请求,并将生成的第二执行结果发送至所述客户端;执行所述行为请求,获得第一执行结果,并将所述第一执行结果发送至所述客户端;所述第一执行结果和各所述第二执行结果用于触发所述客户端确定共识结果。4.根据权利要求3所述的方法,其特征在于:在所述接收客户端发送的携带行为请求的行为信息的步骤之前,还包括:接收所述客户端发送的携带行为请求和所述客户端的身份信息的授权请求,并在所述授权请求满足预定许可授权条件时,生成针对所述授权请求的授权信息,将所述授权信息发送至所述客户端,所述许可授权条件包括所述身份信息为合法的身份信息、以及所述行为请求为有效行为请求;所述行为信息还包括授权信息,且所述向第一可信设备发送携带所述行为请求的标识生成请求的步骤,包括:在所述行为信息中携带的授权信息为有效授权信息时,向第一可信设备发送携带所述行为请求的标识生成请求。5.根据权利要求3或4所述的方法,其特征在于,所述方法还包括下述两项中的至少一项:接收所述客户端发送的投票确认请求,向所述客户端返回针对所述投票确认请求的第一确认结果,所述投票确认请求由所述客户端在接收到的执行结果中相同执行结果的总数目不等于节点总数,但超过所述节点总数一半时生成,所述接收到的执行结果包括所述第一执行结果和各所述第二执行结果,所述节点总数为所述从节点所处的共识网络的节点的总数目,所述第一确认结果用于触发所述客户端基于所述第一确认结果、以及各所述从节点接收到所述客户端发送的投票确认请求时返回的第二确认结果确定共识结果;接收所述从节点转发的行为请求,向所述从节点返回针对所述行为请求的标识信息,其中,所述行为请求为所述从节点在接收到所述客户端发送的行为请求、且在缓存中未查找到该行为请求对应的执行结果时转发,所述行为请求由所述客户端在接收到的执行结果中相同执行结果的总数目未超过节点总数一半时向所述从节点发送,所述接收到的执行结果包括所述第一执行结果和各所述第二执行结果,所述节点总数为所述从节点所处的共识网络的节点的总数目。6.一种区块链共识方法,其特征在于,包括:接收主节点发送的标识信息,所述标识信息包括针对行为请求的唯一编号,且所述标识信息为第一可信设备基于所述主节点发送的携带所述行为请求的标识生成请求生成,所述标识生成请求由所述主节点在接收到所述客户端发送的携带所述行为请求的行为信息时向所述第一可信设备发送;向第二可信设备发送携带所述标识信息的标识验证请求,所述标识验证请求用于触发所述第二可信设备对所述唯一编号进行合法性验证;接收所述第二可信设备返回的合法性验证结果,并在所述合法性验证结果为合法结果时,执行所述行为请求,生成第二执行结果,并将所述第二执行结果发送至所述客户端;所述第二执行结果用于触发所述客户端基于所述第二执行结果和所述主节点执行所述行为请求后发送的第一执行结果确定共识结果。7.根据权利要求6所述的方法,其特征在于:在所述接收主节点发送的标识信息的步骤之前,还包括:接收客户端发送的携带行为请求和所述客户端的...
【专利技术属性】
技术研发人员:徐俊,梁添才,陈秋平,高兵,姚剑萍,
申请(专利权)人:广州广电运通金融电子股份有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。