对联盟链进行共识背书的方法技术

技术编号:37450561 阅读:12 留言:0更新日期:2023-05-06 09:22
本公开涉及一种对联盟链进行共识背书的方法。该方法包括:客户端获取背书策略和连接信息,其中背书策略包括服务质量,连接信息包括多个背书组织的可用性状态;客户端根据连接信息,向多个背书节点发送交易背书请求;多个背书节点根据交易背书请求生成经过多个背书节点各自签名的多个交易结果,并且将多个交易结果返回给客户端;客户端将多个交易结果以及多个背书组织的可用性状态发送给排序节点;排序节点确定多个交易结果的顺序并保存在新生成的区块中,并且将区块以及来自客户端的多个背书组织的可用性状态发送给记账节点;记账节点根据背书策略和可用性状态对交易完成验证后,将区块加入联盟链中。将区块加入联盟链中。将区块加入联盟链中。

【技术实现步骤摘要】
对联盟链进行共识背书的方法


[0001]本公开涉及区块链领域,具体来说,涉及一种对联盟链进行共识背书的方法。

技术介绍

[0002]区块链是一种分布式、多方共享的账本技术。它通过数学方法实现交易数据和历史记录的不可篡改,通过共识算法和智能合约实现各参与方对交易的共同确认和账本记录。用户对区块链的转账、存证等基本操作的执行或对智能合约的调用及其数据构成了区块链的交易,交易按一定顺序保存于区块内。同时区块链的状态变化或合约的执行可触发产生系统标准的或用户自定义的事件,可由区块链的应用程序接收和处理。
[0003]随着区块链的普及,区块链在提升信任、促进跨机构协作等方面的优势获得越来越广泛的认可,区块链在全球的许多行业都获得了普遍的落地应用,并且在链上沉淀和积累了越来越大量的业务数据。
[0004]区块链的类型可以分为公有链、联盟链和私有链。
[0005]对于公有链,全世界任何人都可以在任何时候加入、任意读取数据,任何人都能发送交易且交易能获得有效确认,任何人都能参与其中共识过程。共识过程决定了哪个区块可被添加到区块链中。
[0006]对于私有链,其写入权限由某个阻止和机构控制。读取权限或者对外开放,或者被进行了任意程度的限制。
[0007]对于联盟链,其共识过程收到预定节点的控制。联盟链只针对特定某个群体的成员和有限的第三方,内部指定多个预选的节点为记账人,每个块的生成由所有的预选节点共同决定,其他接入节点可以参与交易,但不过问记账过程,其他第三方可以通过该区块链开放的AP I进行限定查询。联盟链的主要使用群体是例如银行、保险、证券、商业协会、集团企业及上下游企业等。

技术实现思路

[0008]根据本公开的一个方面,提供了一种对联盟链进行共识背书的方法,包括:
[0009]客户端获取背书策略和背书策略中的多个背书组织的多个背书节点的连接信息,其中所述背书策略包括服务质量,所述服务质量表示背书组织的背书节点在不可用的情况下是否参与交易的背书共识,所述连接信息包括所述多个背书组织的可用性状态;
[0010]客户端根据所述连接信息,向所述多个背书节点发送交易背书请求;
[0011]所述多个背书节点根据所述交易背书请求生成经过所述多个背书节点各自签名的多个交易结果,并且将所述多个交易结果返回给所述客户端;
[0012]所述客户端将所述多个交易结果以及所述多个背书组织的可用性状态发送给排序节点;
[0013]所述排序节点确定所述多个交易结果的顺序并保存在新生成的区块中,并且将所述区块以及来自所述客户端的所述多个背书组织的可用性状态发送给记账节点;
[0014]所述记账节点根据所述背书策略和所述可用性状态对交易完成验证后,将所述区块加入联盟链中。
[0015]在根据本公开的一些实施例中,所述背书策略还包括第一策略:在所述多个背书节点中,只有全部的背书节点都对交易进行了背书的情况下,所述记账节点才完成对所述交易的验证。
[0016]在根据本公开的一些实施例中,所述背书策略还包括第二策略:只要所述多个背书节点中的任一背书节点对交易进行了背书,所述记账节点就完成对所述交易的验证。
[0017]在根据本公开的一些实施例中,所述背书策略还包括第三策略:只有所述多个背书节点中的至少预定数量的背书节点对交易进行了背书,所述记账节点才完成对所述交易的验证。
[0018]在根据本公开的一些实施例中,当所述背书策略为第一策略时,所述记账节点还根据所述多个背书组织的服务质量和可用性状态,对交易进行验证。
[0019]在根据本公开的一些实施例中,在多个背书节点中,除了根据可用性状态确定不可用且服务质量表示不参与交易的背书共识的背书节点以外的全部的背书节点,都对交易进行了背书的情况下,所述记账节点才完成对交易的验证。
[0020]在根据本公开的一些实施例中,在所述背书策略为第二策略或第三策略的情况下,所述连接信息中不包含与不可用的背书节点相关的信息。
[0021]在根据本公开的一些实施例中,所述客户端从其所属组织之外的背书节点获取所述连接信息。
[0022]在根据本公开的一些实施例中,所述联盟链可以为Hyper l edger Fabr i c联盟链。
[0023]在根据本公开的一些实施例中,所述背书节点可以为Peer类型节点。
[0024]在根据本公开的一些实施例中,所述排序节点可以为Orderer类型节点。
[0025]在根据本公开的一些实施例中,所述记账节点可以为Peer类型节点。
[0026]根据本公开的另一个方面,提供了一种计算机设备,包括存储器和处理器,所述存储器上存储有能够由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时,执行如本公开所述的方法。
[0027]通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得更为清楚。
附图说明
[0028]构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
[0029]参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
[0030]图1示出了根据本公开一个或多个示例性实施例的对联盟链进行共识背书的方法的流程图;
[0031]图2示出了根据本公开一个或多个示例性实施例的联盟链中交易背书的共识过程的示意图;
[0032]图3示出了根据本公开的一个或多个示例性实施例的背书策略的示意图;
[0033]图4示出了根据本公开的一个或多个示例性实施例的连接信息的示意图;
[0034]图5示出了根据本公开的一个或多个示例性实施例的背书策略的示意图;
[0035]图6示出了根据本公开的一个或多个示例性实施例的连接信息的示意图;
[0036]图7示出了根据本公开的一种示例性实施例的计算设备的框图。
[0037]注意,在以下说明的实施方式中,有时在不同的附图之间共同使用同一附图标记来表示相同部分或具有相同功能的部分,而省略其重复说明。在一些情况中,使用相似的标号和字母表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
[0038]为了便于理解,在附图等中所示的各结构的位置、尺寸及范围等有时不表示实际的位置、尺寸及范围等。因此,本公开并不限于附图等所公开的位置、尺寸及范围等。
具体实施方式
[0039]下面将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
[0040]以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。也就是说,本文中的结构及方法是以示例性的方式示出,来说明本公开中的结构和方法的不同实施例。然而,本领域技术人员将会理解,它们仅仅说明可以用来实施的本本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种对联盟链进行共识背书的方法,包括:客户端获取背书策略和背书策略中的多个背书组织的多个背书节点的连接信息,其中所述背书策略包括服务质量,所述服务质量表示背书组织的背书节点在不可用的情况下是否参与交易的背书共识,所述连接信息包括所述多个背书组织的可用性状态;客户端根据所述连接信息,向所述多个背书节点发送交易背书请求;所述多个背书节点根据所述交易背书请求生成经过所述多个背书节点各自签名的多个交易结果,并且将所述多个交易结果返回给所述客户端;所述客户端将所述多个交易结果以及所述多个背书组织的可用性状态发送给排序节点;所述排序节点确定所述多个交易结果的顺序并保存在新生成的区块中,并且将所述区块以及来自所述客户端的所述多个背书组织的可用性状态发送给记账节点;所述记账节点根据所述背书策略和所述可用性状态对交易完成验证后,将所述区块加入联盟链中。2.根据权利要求1所述的方法,其中,所述背书策略还包括第一策略:在所述多个背书节点中,只有全部的背书节点都对交易进行了背书的情况下,所述记账节点才完成对所述交易的验证。3.根据权利要求1所述的方法,其中,所述背书策略还包括第二策略:只要所述多个背书节点中的任一背书节点对交易进行了背书,所述记账节点就完成对所述交易的验证。4.根据权利要求1所述的方法,其中,所述背书策略还包括第三策略:只有所述多个背书节点中的至少预定数量的背书节点对交易进行了背书,所述...

【专利技术属性】
技术研发人员:余珊印明亮
申请(专利权)人:蚂蚁区块链科技上海有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1