CN117061538A - 一种基于区块链网络的共识处理方法及相关装置 - Google Patents
一种基于区块链网络的共识处理方法及相关装置 Download PDFInfo
- Publication number
- CN117061538A CN117061538A CN202210480672.1A CN202210480672A CN117061538A CN 117061538 A CN117061538 A CN 117061538A CN 202210480672 A CN202210480672 A CN 202210480672A CN 117061538 A CN117061538 A CN 117061538A
- Authority
- CN
- China
- Prior art keywords
- target
- consensus
- identification
- node
- transaction data
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims description 32
- 238000012545 processing Methods 0.000 claims abstract description 172
- 238000000034 method Methods 0.000 claims abstract description 87
- 238000004806 packaging method and process Methods 0.000 claims abstract description 31
- 230000008569 process Effects 0.000 claims description 30
- 238000004891 communication Methods 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 24
- 238000012858 packaging process Methods 0.000 claims description 7
- 238000012795 verification Methods 0.000 description 43
- 239000010410 layer Substances 0.000 description 25
- 238000010586 diagram Methods 0.000 description 21
- 239000003795 chemical substances by application Substances 0.000 description 20
- 230000006870 function Effects 0.000 description 19
- 238000005516 engineering process Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 239000002355 dual-layer Substances 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000012856 packing Methods 0.000 description 5
- 239000002356 single layer Substances 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 238000002955 isolation Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000012550 audit Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000370 acceptor Substances 0.000 description 1
- 238000009456 active packaging Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请实施例公开了一种基于区块链网络的共识处理方法、装置、设备、介质及程序产品,其中的方法包括:获取目标交易数据;对目标交易数据进行打包处理,生成目标区块;将目标区块在区块链网络中进行广播;接收目标区块的目标共识结果和目标识别结果;以及,根据目标共识结果和目标识别结果,对目标区块进行上链处理。采用本申请实施例能够在共识环节中实现对交易数据的共识以及识别,确保存储至区块链的交易数据的合法性和安全性。
Description
技术领域
本申请涉及计算机技术领域,具体涉及区块链技术领域,尤其涉及一种基于区块链网络的共识处理方法、一种基于区块链网络的共识处理装置、一种区块链设备、一种计算机可读存储介质及一种计算机程序产品。
背景技术
随着计算机技术的快速发展,区块链技术逐渐受到广泛关注,越来越多的数据被存储至区块链上,以防止数据被篡改。共识是区块链技术的基础,所谓共识是指区块链网络中的节点通过共识算法对新生成的区块进行共识校验,共识校验成功就将区块上链至区块链,以实现将区块数据存储至区块链;共识校验失败则该新区块不能被上链至区块链。由此可见,区块上链之前的共识环节,对于维护区块链网络中的数据安全具有重要作用。
发明内容
本申请实施例提供一种基于区块链网络的共识处理方法及相关装置,能够在共识环节中实现对交易数据的共识以及识别,确保存储至区块链的交易数据的合法性和安全性。
一方面,本申请实施例提供一种基于区块链网络的共识处理方法,区块链网络包括至少一个共识节点和至少一个识别节点,每个识别节点对应一种或多种识别类型,且每个识别节点用于对相应识别类型下的交易数据进行识别处理;该方法由目标共识节点执行,目标共识节点是至少一个共识节点中的任一个;该方法包括:
获取目标交易数据,目标交易数据属于目标识别类型;
对目标交易数据进行打包处理,生成目标区块;
将目标区块在区块链网络中进行广播,使区块链网络中的共识节点对目标区块进行共识,以及,使目标识别类型对应的目标识别节点对目标区块中的目标交易数据进行识别处理;
接收目标区块的目标共识结果和目标识别结果;以及,
根据目标共识结果和目标识别结果,对目标区块进行上链处理。
本申请实施例中,在对基于目标交易数据打包生成的目标区块进行共识的环节中,通过引入目标交易数据所属目标识别类型对应的目标识别节点,来对目标区块中的目标交易数据进行识别处理,使得在共识环节中新增对目标交易数据本身内容的合法性的检查,从而确保能够上链的目标区块不仅是共识验证成功的,而且目标区块中的目标交易数据是识别成功的,进而能够提高上链的目标交易数据的合法性,进而提高区块链网络中存储的数据的安全性。
另一方面,本申请实施例提供一种基于区块链网络的共识处理方法,区块链网络中包括至少一个共识节点和至少一个识别节点,每个识别节点对应一种或多种识别类型,且每个识别节点用于对相应识别类型下的交易数据进行识别处理;该方法由目标识别类型对应的目标识别节点执行;该方法包括:
接收目标共识节点在区块链网络中广播的目标区块;目标共识节点是区块链网络包括的至少一个共识节点中的任一个;目标区块是目标共识节点基于目标交易数据打包处理得到的;目标交易数据属于目标识别类型;
对目标区块中的目标交易数据进行识别处理,得到识别投票结果;
将识别投票结果返回至目标共识节点,以使目标共识节点根据识别投票结果得到目标区块的目标识别结果,并根据目标识别结果和目标共识结果对目标区块进行上链处理;目标共识结果是目标共识节点基于共识投票生成的,共识投票是区块链网络中的共识节点对目标区块进行共识得到的。
本申请实施例中,在对目标区块进行共识的环节中,目标识别节点可以对广播得到的目标区块中的目标交易数据进行识别处理,如识别目标交易数据是否满足业务要求(如交易数据所属识别类型与目标识别节点对应的目标识别类型是否匹配),以实现对目标交易数据的合法性的检查;并将识别投票结果发送至目标共识节点,以便于目标共识节点在确定对目标区块共识成功,以及对目标交易数据识别成功的情况下,才对目标区块进行上链处理;不仅能够通过共识节点的共识验证确保目标区块的安全性,还能通过目标识别节点的识别处理确保目标交易数据的合法性。
另一方面,本申请实施例提供一种基于区块链网络的共识处理装置,区块链网络包括至少一个共识节点和至少一个识别节点,每个识别节点对应一种或多种识别类型,且每个识别节点用于对相应识别类型下的交易数据进行识别处理;该装置搭载于目标共识节点上,目标共识节点是至少一个共识节点中的任一个;该装置包括:
获取单元,用于获取目标交易数据,目标交易数据属于目标识别类型;
处理单元,用于对目标交易数据进行打包处理,生成目标区块;
处理单元,还用于将目标区块在区块链网络中进行广播,使区块链网络中的共识节点对目标区块进行共识,以及,使目标识别类型对应的目标识别节点对目标区块中的目标交易数据进行识别处理;
处理单元,还用于接收目标区块的目标共识结果和目标识别结果;以及,
处理单元,还用于根据目标共识结果和目标识别结果,对目标区块进行上链处理。
在一种实现方式中,区块链网络中的每个节点中部署有目标配置合约,目标配置合约中包括:每个识别节点对应的识别类型以及交易数据所属的识别类型。
在一种实现方式中,处理单元用于根据目标共识结果和目标识别结果,对目标区块进行上链处理时,具体用于:
若目标共识结果指示目标区块共识成功,且目标识别结果指示目标区块中的目标交易数据识别成功,则将目标区块存储至区块链网络中的区块链上。
在一种实现方式中,处理单元用于接收目标区块的目标共识结果时,具体用于:
接收区块链网络中的各个共识节点返回的对目标区块的共识投票结果;
统计指示对目标区块共识成功的共识投票结果的第一票数,并根据第一票数生成目标共识结果;
其中,若第一票数大于第一数量阈值,则确定目标共识结果指示目标区块共识成功。
在一种实现方式中,目标识别类型的数量为1,处理单元用于接收目标区块的目标识别结果时,具体用于:
接收目标识别类型对应的各个目标识别节点返回的,对目标区块中的目标交易数据的识别投票结果;
统计指示对目标交易数据识别通过的识别投票结果的第二票数,并根据第二票数生成目标识别结果;
其中,若第二票数大于第二数量阈值,则确定目标识别结果指示目标区块中的目标交易数据识别成功。
在一种实现方式中,目标识别类型包括第一目标识别类型和第二目标识别类型,处理单元用于接收目标区块的目标识别结果时,具体用于:
接收第一目标识别类型对应的各个目标识别节点返回的第一识别投票结果;
统计指示对目标交易数据识别通过的第一识别投票结果的第一识别票数,并根据第一识别票数生成第一识别结果;以及,
接收第二目标识别类型对应的各个目标识别节点返回的第二识别投票结果;
统计指示对目标交易数据识别通过的第二识别投票结果的第二识别票数,并根据第二识别票数生成第二识别结果;
基于第一识别结果和第二识别结果生成目标识别结果;
其中,若第一识别票数大于第三数量阈值,则确定第一识别结果指示目标区块中的目标交易数据识别成功;若第二识别票数大于第四数量阈值,则确定第二识别结果指示目标区块中的目标交易数据识别成功;若第一识别结果指示识别成功,且第二识别结果指示识别成功,则确定目标识别结果指示目标区块中的目标交易数据识别成功。
一种实现方式中,处理单元,还用于:
若目标识别结果指示目标区块中的目标交易数据识别失败,则接收识别投票结果指示目标交易数据识别不通过的,各个目标识别节点发送的目标反馈信息;目标反馈信息用于指示:目标识别节点对目标交易数据识别不通过的原因;
将目标反馈信息发送至目标交易数据的提交方。
一种实现方式中,目标配置合约中还包括每个识别节点的节点标识,处理单元,还用于:
获取目标识别类型对应的目标识别节点的目标节点标识;
若基于目标节点标识与目标识别节点之间成功建立通信连接,则触发执行对目标交易数据进行打包处理,生成目标区块的步骤。
一种实现方式中,处理单元,还用于:
在对目标交易数据进行打包处理的过程中,若检测到与目标识别节点之间的通信连接断开,则暂停对目标交易数据的打包处理;
在检测到与目标识别节点之间的通信连接恢复时,继续对目标交易数据进行打包处理。
本申请实施例中,在对基于目标交易数据打包生成的目标区块进行共识的环节中,通过引入目标交易数据所属目标识别类型对应的目标识别节点,来对目标区块中的目标交易数据进行识别处理,使得在共识环节中新增对目标交易数据本身内容的合法性的检查,从而确保能够上链的目标区块不仅是共识验证成功的,而且目标区块中的目标交易数据是识别成功的,进而能够提高上链的目标交易数据的合法性,进而提高区块链网络中存储的数据的安全性。
另一方面,本申请实施例提供一种基于区块链网络的共识处理装置,区块链网络中包括至少一个共识节点和至少一个识别节点,每个识别节点对应一种或多种识别类型,且每个识别节点用于对相应识别类型下的交易数据进行识别处理;该装置搭载于目标识别类型对应的目标识别节点上;该装置包括:
接收单元,用于接收目标共识节点在区块链网络中广播的目标区块;目标共识节点是区块链网络包括的至少一个共识节点中的任一个;目标区块是目标共识节点基于目标交易数据打包处理得到的;目标交易数据属于目标识别类型;
处理单元,用于对目标区块中的目标交易数据进行识别处理,得到识别投票结果;
处理单元,还用于将识别投票结果返回至目标共识节点,以使目标共识节点根据识别投票结果得到目标区块的目标识别结果,并根据目标识别结果和目标共识结果对目标区块进行上链处理;目标共识结果是目标共识节点基于共识投票生成的,共识投票是区块链网络中的共识节点对目标区块进行共识得到的。
在一种实现方式中,处理单元用于对目标区块中的目标交易数据进行识别处理,得到识别投票结果时,具体用于:
获取目标交易数据对应的识别规则,识别规则是由识别方提供的;
根据识别规则对所述目标交易数据进行识别处理,得到识别投票结果;
其中,识别规则用于对目标交易数据包含的交易信息的正确性进行识别;识别投票结果指示目标交易数据识别通过时,确定目标交易数据包含的交易信息是正确的。
在一种实现方式中,处理单元,还用于:
若识别投票结果指示目标交易数据识别不通过,则生成目标反馈信息,目标反馈信息用于指示:目标交易数据识别不通过的原因;
将目标反馈信息发送至目标共识节点,以使目标共识节点在检测到目标识别结果指示目标区块识别失败时,将目标反馈信息发送至目标交易数据的提交方。
本申请实施例中,在对目标区块进行共识的环节中,目标识别节点可以对广播得到的目标区块中的目标交易数据进行识别处理,如识别目标交易数据是否满足业务要求(如目标交易数据所属数据类型与目标识别节点对应的目标识别类型是否匹配),以实现对目标交易数据的合法性的检查;并将识别投票结果发送至目标共识节点,以便于目标共识节点在确定对目标区块共识成功,以及对目标交易数据识别成功的情况下,才对目标区块进行上链处理;不仅能够通过共识节点的共识验证确保目标区块的安全性,还能通过目标识别节点的识别处理确保目标交易数据的合法性。
另一方面,本申请提供了一种区块链节点设备,该设备包括:
处理器,用于加载并执行计算机程序;
计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序被处理器执行时,实现上述基于区块链网络的共识处理方法。
另一方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序适于由处理器加载并执行上述共识处理方法。
另一方面,本申请提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。区块链节点设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该区块链节点设备执行上述基于区块链网络的共识处理方法。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a示出了本申请一个示例性实施例提供的一种数据共享系统的架构示意图;
图1b示出了本申请一个示例性实施例提供的一种区块链的示意图;
图1c示出了本申请一个示例性实施例提供的一种区块链网络的架构示意图;
图1d示出了本申请一个示例性实施例提供的一种共识处理方案的流程示意图;
图2示出了本申请一个示例性实施例提供的一种基于区块链网络的共识处理方法的流程示意图;
图3a示出了本申请一个示例性实施例提供的一种广播目标区块的示意图;
图3b示出了本申请一个示例性实施例提供的一种广播目标区块的示意图;
图4a示出了本申请一个示例性实施例提供的一种生成目标识别结果的示意图;
图4b示出了本申请一个示例性实施例提供的一种生成目标识别结果的示意图;
图5示出了本申请一个示例性实施例提供的一种确定目标区块是否上链的示意图;
图6示出了本申请一个示例性实施例提供的一种基于区块链网络的共识处理方法的流程示意图;
图7a示出了本申请一个示例性实施例提供的一种目标识别节点对目标交易数据识别的示意图;
图7b示出了本申请一个示例性实施例提供的一种目标识别节点对目标交易数据识别的示意图;
图8示出了本申请一个示例性实施例提供的一种向提交方反馈目标反馈信息的示意图;
图9示出了本申请一个示例性实施例提供的一种双层区块链网络的架构示意图;
图10示出了本申请一个示例性实施例提供的一种双层区块链网络的架构示意图;
图11a示出了本申请一个示例性实施例提供的一种双层区块链网络的架构示意图;
图11b示出了本申请一个示例性实施例提供的一种基于区块链网络的共识处理方法的流程示意图;
图12示出了本申请一个示例性实施例提供的一种基于区块链网络的共识处理装置的结构示意图;
图13示出了本申请一个示例性实施例提供的一种基于区块链网络的共识处理装置的结构示意图;
图14示出了本申请一个示例性实施例提供的一种区块链节点设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例涉及区块链(Blockchain),区块链是区块链技术的基础,所谓区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链由多个区块组成,一种区块的结构示意图可参见图1a,如图1a所示,区块的创始块中包括区块头和区块体,区块头中存储有输入信息特征值、版本号、时间戳和难度值,区块体中存储有输入信息;创始块的下一区块以创始块为父区块,下一区块中同样包括区块头和区块体,区块头中存储有当前区块的输入信息特征值、父区块的区块头特征值、版本号、时间戳和难度值,并以此类推,使得区块链中每个区块中存储的区块数据均与父区块中存储的区块数据存在关联,保证了区块中输入信息的安全性。区块链可由区块链网络所包含的区块链节点进行维护;其中,区块链网络可以理解为一个数据共享系统,是指用于进行区块链节点与区块链节点之间数据共享的系统,该数据共享系统的一种示例性结构可参见图1b;如图1b所示,数据共享系统中可包括多个区块链节点101,各个区块链节点101可以为接入至该区块链网络中的服务器,也可以为接入至该区块链网络中的终端(如终端中运行的客户端),这里对区块链节点101的具体形式不做限定。
具体地,当区块链网络中的任一区块链节点(如具有共识功能的共识节点)竞拍得到提案权限后,可从交易池中获取交易数据,并对交易数据进行打包产生新的区块;然后,各个区块链节点可以采用共识算法,对产生的新的区块进行共识验证,只有在共识验证成功后,才将该区块存储至区块链上,以实现对区块链的维护(如更新)。通过在将交易数据上链之前,先对基于交易数据生成的区块进行共识验证的过程,能够确保上链的交易数据是未被篡改的。
由此可见,在交易数据上链的整个过程中,共识环节是非常重要的部分,关系到整个区块链网络的数据安全保障。目前,在对基于交易数据生成的区块进行共识验证的共识环节中,共识节点可采用共识算法对该区块进行共识验证,并在共识验证成功后将区块存储至区块链,以确保区块链中交易数据的合法性;其中,共识算法可包括但不限于:工作量证明、权益证明、委托权益证明等等,在不同业务场景下所采用的共识算法并不相同,本申请实施例对共识算法的类型不作限定。
经实践发现,共识节点对区块的共识验证过程,主要是验证区块的一致性;当区块满足一致性时,确定对区块共识验证成功,当区块不满足一致性时,确定对区块共识验证失败。所谓一致性可简单理解为共识节点对接收到的区块的来源的验证。例如:共识节点A将区块发送给共识节点B进行共识验证时,共识节点B对该区块的一致性验证包括:验证共识节点B接收到的区块与共识节点A发送给共识节点B的区块是否相同;若共识节点B接收到的区块与共识节点A发送给共识节点B的区块相同,则确定区块满足一致性,表示该区块在从共识节点A传输至共识节点B的过程中未被篡改;若共识节点B接收到的区块与共识节点A发送给共识节点B的区块不同,则确定区块不满足一致性,表示该区块在从共识节点A传输至共识节点B的过程中被篡改。
为进一步加强对交易数据本身的内容的正确性的识别,以提升区块链网络中交易数据的合法性;所谓交易数据的合法性可是指交易数据所包含的信息的正确性;例如,交易数据是增值发票,则该增值发票的合法性可是指:该增值发票所包含的金额是正确的或满足金额要求的。本申请实施例提出一种在区块链网络中的交易数据上链之前,先对交易数据本身内容进行正确性检测的共识方案(或称为共识处理方案);该共识处理方案在区块链网络中增加一个或多个识别节点,每个识别节点对应一种或多种识别类型,这样在区块链网络中的共识节点对目标区块(如基于目标交易数据打包生成的区块)进行共识验证的共识环节中,可采用目标交易数据所属的目标识别类型对应的目标识别节点,对该目标交易数据本身的内容进行识别;不仅能够通过区块链网络中的共识节点验证目标区块的安全性(如是否被篡改),而且能够通过目标识别节点识别(或称为检查)目标交易数据所包含的信息的合法性(如信息是否正确),以实现对不合法数据的及时拦截,从而提高区块链网络中数据存储的合法性和安全性。
为便于理解上述提及的共识处理方案,下面结合图1c对本申请实施例涉及的包含共识节点和识别节点的区块链网络(或称为区块链系统)进行详细介绍。如图1c所示,该区块链网络可以包括多个区块链节点;区块链节点可以是指:计算机设备或运行于计算机设备中的应用程序(可简称为应用)。计算机设备可包括但不限于:智能手机、平板电脑、便携式计算机、移动互联网设备、智能电视、或头戴设备等智能设备;计算机设备中运行的应用程序可是指为完成某项或多项特定功能的计算机程序,可包括但不限于:安装在计算机设备中的客户端、无需下载安装即可使用的小程序、通过浏览器打开的web应用程序等等。
区块链网络中的每个区块链节点中部署有目标配置合约,该目标配置合约作为系统层面的基础合约;其中,目标配置合约中可包括每个识别节点对应的识别类型以及交易数据所属的识别类型。更为详细地,目标配置合约可用于管理:区块链网络中的区块链节点的节点类型、每个识别节点对应的识别类型、识别节点对应的节点标识,以及至少一个业务合约,业务合约中记录了交易数据所属的识别类型。下面对目标配置合约管理的具体信息进行介绍:
1)共识节点和识别节点的身份和地址。具体是在目标配置合约中记录了区块链网络中各个区块链节点的节点类型和节点地址;其中,任一区块链节点的节点类型用于指示该任一区块链节点是作为区块链网络中的共识节点,还是作为区块链网络中的识别节点;任一区块链节点的节点地址可用于在区块链网络中唯一标识该任一区块链节点,区块链网络中的其他区块链节点可以根据该任一区块链节点的节点地址与该任一区块链节点之间进行数据通信。
2)识别节点对应的识别类型。区块链网络中的识别类型可包括但不限于:财务识别类型、教育识别类型或交通识别类型等,中的一种或多种;任一识别类型对应的识别节点可以用于对相应识别类型下的交易数据进行识别处理,以实现对交易数据本身所包含的信息的正确性进行检测。值得说明的是,每个识别节点可以对应一种或多种识别类型。继续参见图1c,区块链网络中包括识别类型1对应的节点集群2、识别类型2对应的节点集群3以及识别类型3对应的节点集群4;其中,注册节点类型为识别类型1的识别节点可包括:识别节点a以及识别节点b,注册节点类型为识别类型2的识别节点可包括:识别节点b、识别节点c以及识别节点d,注册节点类型为识别类型3的识别节点可包括:识别节点e;由此可见,识别节点b对应有两种识别类型,分别识别类型1和识别类型2。并且,同一识别类型对应的节点集群中的各个识别节点之间是等价的,可以相互代替的;换而言之,同一识别类型对应的节点集群中的各个识别节点的功能是相同的,特在此说明。
3)至少一个业务合约。任一业务合约中记录了交易数据所属的识别类型。也就是说,业务合约中记录了一种或多种交易数据中每种交易数据,需要经过哪些识别类型对应的识别节点的识别处理;当目标交易数据(如任一交易数据)以区块形式广播至区块链网络中后,区块链网络中的识别节点会根据目标业务合约判断该目标交易数据所属的识别类型;当检测到该目标交易数据属于一种或多种目标识别类型时,由区块链网络中一种或多种目标识别类型中每一种目标识别类型,所对应的目标识别节点对该目标交易数据进行识别处理。此设计支持采用具有对目标识别类型下的交易数据进行识别处理的识别能力的目标识别节点,来对目标交易数据进行识别处理;相比于采用一个综合识别节点对所有识别类型下的交易数据进行识别而言,能够实现更加有效地对目标交易数据的精准化识别,提高对目标交易数据识别的专业性。
按照上述描述可将区块链网络中的区块链节点具体可以划分为:至少一个共识节点和至少一个识别节点。按照区块链节点(如共识节点和识别节点)对应的节点类型的不同,区块链网络中所包含的区块链节点可以划分为不同的节点集群;分别为:共识类型对应的节点集群102、识别类型1对应的节点集群103、识别类型2对应的节点集群104、识别类型3对应的节点集群105……。其中,任一节点集群中包括该节点集群对应的集群类型对应的一个或多个区块链节点。下面对区块链网络中包括的共识类型的节点集群,和任一种识别类型的节点集群进行较为详细的介绍;其中:
例如:共识类型对应的节点集群102中包括一个或多个具有共识功能的共识节点,支持根据共识算法对区块进行共识验证。共识集群中的各个共识节点支持竞拍区块链网络中的区块的提案权限;当任一共识节点竞拍到对区块的提案权限后,可由该任一共识节点对交易数据进行打包生成新的区块,并将新的区块广播至区块链网络,以使区块链网络中的共识集群包括的各个其他共识节点对该新的区块进行共识验证;并在该新的区块共识验证成功后,各个其他共识区块将新的区块链接至各自维护的区块链上,以实现对新的区块所包含的交易数据的分布式存储。
再如:识别类型1对应的节点集群103中包括识别类型1对应的一个或多个识别节点;每个识别节点仅支持接收共识节点广播的区块并对区块进行投票,不支持竞拍区块的提案权限,也不支持主动打包区块。并且,识别节点不进行区块详细数据的存储,只对区块的校验数据进行存储;例如,不存储完整的区块(包区块头和区块体),只存储校验数据,校验数据可包括但不限于:区块的区块头以及默克尔根等数据;当然,识别节点也可以根据识别方的业务需求,区块链中同步与该识别节点相关的交易数据进行存储,具体同步的交易数据是根据识别方的需求自行确定的。一种实现方式中,轻节点中各个区块头未连接成区块链,即轻节点中不包含区块链;在另一种实现方式中,轻节点中各个区块头仍然可以连接形成区块链,且该区块链中部分区块的区块体为空(如不包含输入信息),部分区块的区块体不为空(如包含与该轻节点相关的交易数据)。
值得说明的是,如图1c所示的区块链网络中的其他识别类型对应的节点集群的相关内容,可参见上述对识别类型1对应的节点集群103所示的相关内容的相关描述,在此不作赘述。另外,区块链网络中包括的识别类型的种类和数量,可以根据业务需求自定义,本申请实施例对区块链网络中的识别类型的种类和数量不作限定。
基于图1c所示的区块链系统的架构示意图,本申请实施例提供的共识处理方案的示例性流程可参见图1d所示的流程示意图。如图1d所示,该共识处理方案的大致流程可包括:首先,共识类型对应的节点集群(或称为共识集群)中的目标共识节点(如任一共识节点)在区块链网络中竞拍到提案权限后,该目标共识节点可对交易集中的目标交易数据进行打包处理,生成目标区块;并将目标区块广播至区块链网络中。然后,区块链网络中除目标共识节点之外的其他共识节点可根据共识算法对该目标区块进行共识验证,得到共识投票,并返回共识投票至目标共识节点。同时,区块链网络中的每种识别类型对应的节点集群中的各个识别节点均可以接收到广播的目标区块;然后,各个识别节点根据目标配置合约中的目标业务合约,判断自己是否具有对目标区块中的目标交易数据进行识别的能力或权限。若目标业务合约中记录了目标交易数据属于目标识别类型,且目标识别节点对应目标识别类型,则确定目标识别节点具有对目标交易数据进行识别的权限;那么目标识别节点可对该目标交易数据进行识别处理,得到识别投票结果,并返回识别投票结果投票至目标共识节点;该识别投票结果用于指示目标识别节点对目标交易数据所包含的信息识别成功或失败。最后,目标共识节点可根据接收到的共识投票确定目标共识节点,以及,根据接收到识别投票结果确定目标识别结果;并根据目标共识结果和目标识别结果,对目标区块进行上链处理。
由此可见,在对基于目标交易数据打包生成的目标区块进行共识的环节中,本申请实施例支持不仅支持区块链网络中的共识节点对目标区块进行共识,而且支持目标交易数据所属目标识别类型对应的目标识别节点,对目标交易数据本身的内容进行识别处理;并且,只有在对目标区块共识成功,以及对目标交易数据识别成功的情况下,才将目标区块进行上链处理。通过上述方案,不仅能够通过共识节点的共识验证确保目标区块的安全性,还能通过目标识别节点的识别确保目标交易数据的合法性,以实现对不合法数据的及时拦截。
需要说明的是,本申请实施例运用到具体产品或技术中时,如目标共识节点获取目标交易数据时,需要获得目标交易数据的提交方的许可或者同意;且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,如区块链网络中存储的数据类型需要遵循相关国家和地区的相关法律法规和标准。
基于上述描述的基于区块链网络的共识处理方案,本申请实施例提出更为详细的基于区块链网络的共识处理方法,下面将结合附图对本申请实施例提出的基于区块链网络的共识处理方法进行详细介绍。
图2示出了本申请一个示例性实施例提供的一种基于区块链网络的共识处理方法的流程示意图;该共识处理方法可以由具有共识功能的目标共识节点(如共识集群中的任一共识节点)来执行;该共识处理方法可包括但不限于步骤S201-S204:
S201:获取目标交易数据,并对目标交易数据进行打包处理,生成目标区块。
目标交易数据中包括交易信息;例如,目标交易数据是发票数据,那么该目标交易数据集中包含的交易信息可包括但不限于:发票开具方的标识、发票接收方的标识、发票类型、发票开具时间、发票有效时间或发票金额等等中的一项或多项;其中,发票开具方的标识发票开具方的标识(或发票接收方的标识)是一种身份标识符,用于代表发票开具方的身份;身份标识符可是由多个字符组成的字符串,字符可包括以下至少一种:中文字符(即汉字)、英文字符(即字母)、数字和标点符号(如逗号“,”、句号“。”、方括号“【】”)。
具体实现中,目标交易数据可以存储于区块链网络中的交易池中,该交易池可以理解为用于缓存区块链网络中接收到的交易数据的存储空间,具体可是指目标共识节点中划分得到的用于存储待上链的交易数据的存储空间;交易池中的交易数据是由数据提交方提交的,根据业务类型不同,该交易数据并不相同,如交易数据为发票数据或学历数据等。当目标共识节点在区块链网络中竞拍得到区块的提案权限时,目标共识节点可以从交易池中拉取待上链的一个或多个交易数据,该一个或多个交易数据中包括目标交易数据;然后,对该一个或多个交易数据进行打包处理,以生成待上链的目标区块。
其中,目标共识节点可采用哈希算法对一个或多个交易数据进行打包,以构建目标区块;具体是采用哈希算法为目标区块生成数字签名,该数字签名是只有信息的发送者(即目标共识节点)才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息(如目标交易数据)真实性的一个有效证明;这样后续其他共识节点对该目标区块进行共识验证时,可通过对该数字签名进行验证,以实现发送目标区块的发送方的身份鉴别,进而确保目标区块在传输过程中未被篡改。其中,哈希算法可包括但不限于:MD4(MessageDigest4)算法、MD5(MessageDigest5)算法、SHA1(Secure Hash Algorithm1)算法等等;对于同一个哈希算法来说,相同的输入必定会得到相同的输出,不同的输入必定会得到不同的输出;具体是将目标区块中的交易数据(如目标交易数据)作为哈希算法的输入,那么得到的输出便是该目标区块的数字签名;本申请实施例对具体采用哪种哈希算法不作限定。
S202:将目标区块在区块链网络中进行广播。
目标共识节点在目标交易数据成功打包生成目标区块后,目标共识节点可将目标区块广播至区块链网络中,以使区块链网络中的每个区块链节点均能够接收到该目标区块。正如前述所描述的,区块链网络中的区块链节点均维护有一个节点标识列表,那么目标共识节点可根据该节点标识列表,找到区块链网络中的除该目标共识节点之外的其他区块链节点的节点标识(或节点地址,用于唯一标识区块链节点的信息),那么根据节点标识将目标区块发送至相应的区块链节点,以实现对目标区块的广播。
可选的,目标共识节点可以根据每个区块链节点(如共识节点和识别节点)的节点标识,将目标区块发送至各个区块链节点;此广播方式的示例性实施过程可参见图3a所示,假设区块链网络中包括目标共识节点301、共识节点302、共识节点303、识别节点304以及目标识别节点305,那么目标共识节点301可以根据节点标识列表中记录的各个区块链节点的节点标识,将目标区块分别发送至共识节点302、共识节点303、识别节点304以及目标识别节点305中的每一个,以实现在区块链网络中广播目标区块。
可选的,目标共识节点还可以根据广播规则将目标区块发送至区块链网络中的部分区块链节点,以便于该部分区块链节点继续将接收到的目标区块转发至其他未收到目标区块的区块链节点。其中,广播规则可包括但不限于:目标共识节点将目标区块发送至距离小于距离阈值的部分区块链节点,以使该部分区块链节点转发目标区块;或者,目标共识节点将目标区块随机发送至部分区块链节点,以使该部分区块链节点转发目标区块;等等;本申请实施例对广播规则的具体实施方式不作限定。
以广播规则包括:目标共识节点将目标区块发送至距离小于距离阈值的部分区块链节点为例,结合图3b给出这种广播规则下广播目标区块的示例性过程。如图3b所示,假设区块链网络中包括目标共识节点301、共识节点302、共识节点303、识别节点304以及目标识别节点305,距离阈值为70米;且目标共识节点301与共识节点302之间的距离为30米,目标共识节点301与共识节点303之间的距离为100米,目标共识节点与识别节点304之间的距离为50米,目标共识节点与目标识别节点304之间的距离为80米;则目标共识节点301可以从其维护的节点标识列表中确定出共识节点302的节点标识和识别节点304的节点标识,并将目标区块发送至共识节点302和识别节点304。进一步的,若共识节点302与共识节点303之间的距离为200米,识别节点304与共识节点303之间的距离为60米,且共识节点302与目标识别节点305之间的距离为200米,识别节点304与目标识别节点305之间的距离为60米,则确定识别节点304与共识节点303之间的距离60米小于距离阈值70米,且识别节点304与目标识别节点305之间的距离60米小于距离阈值70米,则可以由识别节点304将接收到的目标区块转发至共识节点303以及目标识别节点305。
需要说明的是,上述只是给出两种示例性的在区块链网络中广播目标区块的实施过程;在实际应用中,广播目标区块的广播过程还可以发生变化,本申请实施例对广播过程的具体实施过程不作限定;例如,还可以根据识别类型不同,目标共识节点将目标区块发送至每个识别类型对应的节点集群中的任一个识别节点,以便于该任一个识别节点将目标区块广播至本集群内部的其他识别节点。为便于阐述,后续以目标共识节点将目标区块分别发送给每个区块链节点为例进行阐述,在此说明。
另外,在对目标交易数据打包生成目标区块之前,本申请实施例还支持先检测目标识别节点是否可用,只有在目标识别节点可用时,才执行对目标交易数据打包的过程;这样能够确保每次打包的目标区块均能够被目标识别节点进行识别,进而确保每个目标区块均是识别成功的区块。其中,目标识别节点可用时,可体现为目标共识节点能够与目标识别节点之间成功建立通信连接;换句话说,在目标共识节点对目标交易数据进行打包处理之前,需先检测目标共识节点和目标识别节点之间的通信连接,只有在通信连接成功后,才先检测目标共识节点和目标识别节点之间的通信连接,只有在通信连接成功后,才。其中,导致目标识别节点不可用的原因可包括但不限于:目标识别节点宕机、网络不可达、目标识别节点不可访问等,本申请实施例对目标识别节点不可用的具体原因不作限定。
具体实现中,在对目标交易数据进行打包处理之前,可先获取目标识别类型对应的目标识别节点的目标节点标识,其中,待打包的目标交易数据属于目标识别类型。若目标共识节点基于目标节点标识与目标识别节点之间成功建立通信连接,则目标共识节点开始执行对目标交易数据进行打包处理的实施过程。若目标共识节点基于目标节点标识与目标识别节点之间不能建立通信连接,则确定目标识别节点不可用,则先不执行对目标交易数据的打包处理,可以先执行对其他交易数据(除属于目标识别类型的目标交易数据之外的其他交易数据)的打包处理。进一步的,若目标共识节点在对目标交易数据进行打包处理的过程中,检测到与目标识别节点之间的通信连接断开,则表示此时目标识别节点不可用,则可以暂停对目标交易数据的打包处理(或出块打包);在后续检测到与目标识别节点之间的通信连接恢复时,可以继续对目标交易数据进行打包处理,生成目标区块。
由此可见,本申请实施例提供的这种在检测到目标识别节点为可用节点时,才执行对目标交易数据打包出块的方式,能够避免在出块成功的情况下,由于目标识别节点的不可用,导致对目标交易数据的识别失败或直接跳过对目标交易数据的识别,确保每次出块的目标区块均能被目标识别节点识别。
S203:接收目标区块的目标共识结果和目标识别结果。
S204:根据目标共识结果和目标识别结果,对目标区块进行上链处理。
步骤S203-S204中,目标共识节点在将目标区块广播至区块链网络中后,目标共识节点还可以接收各个区块链节点返回的投票结果。在本申请实施例中,投票结果可包括:①节点对目标区块进行共识验证生成的共识投票结果。任一共识节点对目标区块进行共识验证,生成的共识投票结果用于指示:该任一共识节点对目标区块共识验证通过,或者,该任一共识节点对目标区块共识验证不通过。其中:共识验证通过可用于表示,该任一共识节点确定该目标区块是目标共识节点发送的,即确定该目标区块在传输过程中未被篡改;共识验证不通过可用于表示:该任一共识节点确定该目标区块不是由目标共识节点发送的,该目标区块在传输过程中可能被篡改。②目标识别节点对目标区块中的目标交易数据进行识别处理生成的识别投票结果。识别投票结果用于指示:目标识别节点对目标交易数据识别成功,或者,目标识别节点对目标交易数据识别失败。其中:对目标交易数据识别成功可用于表示:目标识别节点确定该目标交易数据所包含的交易信息是正确的,如交易信息与目标识别节点对应的目标识别类型是匹配的,再如交易信息的具体内容是满足道德要求的。
具体实现中,目标共识节点生成目标共识结果和目标识别结果,并根据目标共识结果和目标识别结果对目标区块进行上链处理的过程可包括步骤s11-s13,其中:
s11:目标共识节点可接收区块链网络中的各个共识节点返回的对目标区块的共识投票结果;然后,统计指示对目标区块共识成功的共识投票结果的第一票数,并根据第一票数生成目标区块的目标共识节点。其中,若第一票数大于第一数量阈值,则确定目标共识结果指示目标区块共识成功;反之,若第一票数小于或等于第一数量阈值,则确定目标共识结果指示目标区块共识失败。举例来说,假设第一数量阈值为60,且区块链网络中除目标共识节点之外,还包括100个共识节点;那么目标共识节点在将目标区块广播至区块链网络后,可以接收到100个共识投票结果;若100个共识投票结果中共识投票结果指示对目标区块共识成功的第一票数为80,则根据第一票数生成目标共识结果,该目标共识结果指示目标区块共识成功。其中,任一共识节点可调用共识算法对目标区块进行共识验证,可调用共识算法来实现对预流转区块的共识校验;下面给出几种示例性的共识算法:
1)Pow(Proof-of-Work,工作量证明),是指系统(如前述的数据共享系统)为达到某一目标而设置的度量方法。简单理解就是一份证明,用来确认工作量。本质是谁做的工作多,谁就更有机会获得额外奖励。
2)Pos(proof-of-stake,权益证明),是Pow工作量证明的一种共识机制;具体地,谁持有电子资源的时间越长(持有电子资源的时间长度=持有电子资源的数量*持有电子资源的时间),谁更有机会获取区块的记账权,其中,电子资源可以是指以电子形式存储于电子账户中、且能够通过互联网进行流通的资源;根据每个节点所占电子资源的比例和时间;等比例的降低共识验证难度,从而加快找随机数的速度。Pos权益证明在一定程度上缩短了共识达成的时间,但仍然需要共识验证。
3)pbft(Practical Byzantine Fault Tolerance,拜占庭容错算法),是一种基于消息传递的一致性算法,算法经过三个阶段达成一致性,这些阶段可能因为失败而重复进行。具体地,假设节点总数为3f+1,f为拜赞庭错误节点,首先,当节点发现leader(如代表节点、记账节点或超级节点)作恶时,通过算法选举其他的replica(节点)为leader。其次,leader通过pre-prepare(预准备)消息把它选择的value(值)广播给其他replica节点,其他的replica节点如果接受则发送prepare(准备)消息,如果不接受则不发送。其次,一旦2f个节点接受prepare消息,则节点发送commit(确认)消息。最后,当2f+1个节点接受commit消息后,代表该value值被确定。上述过程使得pbft拜占庭容错算法能够共识各节点由业务的任一方组成,安全性与稳定性由业务相关方保证;并且,共识的时延大约在2~5秒钟,基本达到商用实时处理的要求,提高共识效率,可满足高频交易量的需求。
4)Paxos(一种分布式算法)算法,是一种两阶段算法,主要有三类角色,proposer(提议者)、acceptor(接受者)、learner(学习者)。proposer提出议案,acceptor同意或拒绝,learner则是获取达成共识后的最终值。Paxos算法包括两个阶段,分别为:①准备阶段:proposer选择一个提案编号n并将prepare(准备)请求发送给acceptors中的一个多数派;acceptor收到prepare请示后,如果提案的编号大于它已经回复的所有prepare请示,则acceptor将自己上次接受的提案回复给proposer,并承诺不再回复小于n的提案。②批准阶段:当一个proposer收到了多数acceptors对prepare请示的回复后,就进入批准阶段;它要向回复prepare请求的acceptors发送accept(接受)请求,包括编号n和value(如果没有已经接受的value,那么它可以自由决定value);在不违背自己向其他proposer的承诺的前提下,acceptor收到accept请求后即接受这个请求。
5)Raft(一种分布式共识算法)算法,包含三种角色,分别是:跟随者(follower),候选者(candidate)和领导者(leader)。一个节点在某一时刻只能是这三种状态的其中一种,这三种角色是可以随着时间和条件的变化而互相转换的。所有的节点初始状态都为follower,超时未收到心跳包的follower将变身candidate并广播投票请求,获得多数投票的节点将化身leader,这一轮投票的过程是谁先发出谁有利,每个节点只会给出一次投票。leader节点周期性给其他节点发送心跳包,leader节点失效将会引发新一轮的投票过程。
本申请实施例对具体采用哪一种或多种共识算法不作限定,在此说明。
s12:目标共识节点还接收目标识别节点返回的识别投票结果,并根据识别投票结果生成目标识别结果;该目标识别结果用于指示目标区块中的目标交易数据识别成功,或者,目标区块中的目标交易数据识别失败。其中,根据目标业务合约中记录的目标交易数据所属的识别类型的数量不同,目标共识节点接收到的识别投票结果,以及基于识别投票结果生成的目标识别结果的过程并不相同。下面分别以目标交易数据所属的目标识别类型的数量为1,以及目标识别类型的数量为2,如目标识别类型包括第一目标识别类型和第二目标识别类型为例,对基于识别投票结果生成目标识别结果的具体实施过程进行详细说明;其中:
在一种实现方式中,目标识别类型的数量为1。具体地,目标共识节点接收目标识别类型对应的各个目标识别结果返回的,对目标区块中的目标交易数据的识别投票结果;然后,统计指示对目标交易数据识别通过的识别投票结果的第二票数,并根据第二票数生成目标识别结果。其中,若第二票数大于第二数量阈值,则确定目标识别结果指示目标区块中的目标交易数据识别成功;反之,若第二票数小于或等于第二数量阈值,则确定目标识别结果指示目标区块中的目标交易数据识别失败。举例来说,如图4a所示,若第二数量阈值2,目标识别类型对应的目标识别节点的数量为5个;那么目标共识节点在广播目标区块后,可接收到5个识别投票结果;若5个识别投票结果中识别投票结果指示目标交易数据识别成功的第二票数为3个,则根据第二票数生成的目标识别结果指示目标交易数据识别成功。
其他实现方式中,目标识别类型的数量为2。具体地,假设目标识别类型包括第一目标识别类型和第二目标识别类型;那么目标共识节点在将目标区块广播至区块链网络后,可接收第一目标识别类型对应的各个目标识别节点返回的第一识别投票结果,然后,统计指示对目标交易数据识别通过的第一识别投票结果的第一识别票数,并根据第一识别票数生成第一识别结果;以及,可接收第二目标识别类型对应的各个目标识别节点返回的第二识别投票结果,然后,统计指示对目标交易数据识别通过的第二识别投票结果的第二识别票数,并根据第二识别票数生成第二识别结果;然后,基于第一识别结果和第二识别结果生成目标识别结果。
其中,若第一识别票数大于第三数量阈值,则确定根据第一识别票数生成的第一识别结果指示:目标区块中的目标交易数据识别成功;若第二识别票数大于第四数量阈值,则确定根据第一识别票数生成的第二识别结果指示:目标区块中的目标交易数据识别成功。进一步的,若第一识别结果指示目标交易数据识别成功,且第二识别结果指示目标交易数据识别成功,则确定根据第一识别结果和第二识别结果生成的目标识别结果指示:目标区块中的目标交易数据识别成功。
举例来说,如图4b所示的,若第三数量阈值为2,第四数量阈值2,第一目标识别类型对应的目标识别节点的数量为4个,且第二目标识别类型对应的目标识别节点的数量为3个。那么目标共识节点在广播目标区块后,可接收到第一目标识别类型对应的目标识别节点发送的4个第一识别投票结果;若4个第一识别投票结果中第一识别投票结果指示对目标交易数据识别成功的第一识别票数为3个,则确定根据第一识别票数生成的第一识别结果指示目标交易数据识别成功。然后,若接收到第二目标识别类型对应的目标识别结果发送的3个第二识别投票结果中,第二识别投票结果指示对目标交易数据识别成功的第二识别票数为3个,则确定根据第二识别票数生成的第二识别结果指示目标交易数据识别成功。进一步的,基于第一识别结果指示目标交易数据识别成功,且第二识别结果指示目标交易数据识别成功,确定生成的目标识别结果指示目标交易数识别成功。另外,若第一识别结果为目标交易数据识别失败,或,第二识别结果为目标交易数据识别失败,或,第一识别结果以及第二识别结果均为目标交易数据识别失败,则确定基于第一识别结果和第二识别结果生成的目标识别结果为目标交易数据识别失败,在此不作详细描述。
s13:根据目标共识结果和目标识别结果,对目标区块进行处理。具体地,若目标共识结果指示目标区块共识成功,且目标识别结果指示目标区块中的目标交易数据识别成功,则将目标区块存储至区块链网络中的区块链上,以实现在区块链网络中对目标交易数据的分布式存储。反之,若目标共识结果指示目标区块共识失败,或,目标识别结果指示目标区块中的目标交易数据识别失败,或者,目标共识结果以及目标识别结果均指示识别失败,则将目标交易数据剔除,并将目标区块中包含的除目标交易数据以外的交易数据返回至交易池中等待下次出块打包。
如图5所示的,目标共识节点在区块链网络中广播目标区块之后,可接收区块链网络中除目标共识节点以外的其他共识节点返回的共识投票结果,并根据共识投票结果确定目标共识结果;同理,接收目标识别节点返回的识别投票结果,并根据识别投票结果生成目标识别结果;其中,根据共识投票结果确定目标共识结果,以及,根据识别投票结果生成目标识别结果的具体实施过程可参见前述相关描述,在此不作赘述。进一步的,若目标共识结果指示目标区块共识成功,且目标识别结果指示目标交易数据识别成功,则目标共识节点将目标区块存储至区块链网络中的区块链上,具体是存储至目标共识节点维护的区块链上,并通过区块链网络中的其他共识节点同步存储目标区块,以实现对目标区块的分布式存储。反之,在目标共识结果指示目标区块共识失败,和/或,目标识别结果指示目标交易数据识别失败时,可删除该目标交易数据,并将目标区块中包括的其他交易数据返回至交易池等待下次出块。
本申请实施例中,在对基于目标交易数据打包生成的目标区块进行共识的环节中,通过引入目标交易数据所属目标识别类型对应的目标识别节点,来对目标区块中的目标交易数据进行识别处理,能够实现及时拦截不合法数据,从而确保能够上链的目标区块不仅是共识验证成功的,而且目标区块中的目标交易数据是识别成功的,进而能够提高上链的目标交易数据的合法性,进而提高区块链网络中存储的数据的安全性。
图6示出了本申请一个示例性实施例提供的一种基于区块链网络的共识处理方法的流程示意图;该共识处理方法可以由目标识别节点来执行;该共识处理方法可包括但不限于步骤S601-S603:
S601:接收目标共识节点在区块链网络中广播的目标区块。
S602:对目标区块中的目标交易数据进行识别处理,得到识别投票结果。
步骤S601-S602中,目标识别节点在接收到目标共识节点广播的目标区块后,可获取目标区块中的目标交易数据对应的识别规则;然后,目标识别节点根据识别规则对目标交易数据进行识别处理,得到识别投票结果,该识别投票结果用于指示根据识别规则对目标交易数据识别通过,此时表示目标交易数据是满足识别规则的,或者,该识别投票结果用于指示根据识别规则对目标交易数据识别不通过,此时表示目标交易数据是不满足识别规则的。其中,目标识别节点获取到的识别规则是由识别方提供的,用于对目标交易数据包含的交易信息的正确性进行识别的规则,当识别投票结果指示目标交易数据识别通过时,确定目标交易数据包含的交易信息是正确的。
特别值得说明的是,根据目标识别节点对应的识别方的不同,目标识别节点获取到的识别规则并不相同;这样不同的目标识别节点是对目标交易数据进行不同的类型的识别,不仅满足不同识别方同时对目标交易数据进行识别处理的需求,而且能够实现对目标交易数据的多维度识别,确保目标交易数据的合法性。举例来说,如图7a所示的,假设目标交易数据属于财务识别类型以及交通识别类型,且财务识别类型对应的目标识别节点a包括财务部门所使用的计算机设备,交通识别类型对应的目标识别节点b包括娱乐公司所使用的计算机设备;则目标识别节点a在接收到目标区块后,可获取财务部门制定的第一识别规则,并采用该第一识别规则对目标区块中的目标交易数据进行识别处理;同理,目标识别节点b在接收到目标区块后,可获取娱乐公司制定的第二识别规则,并采用该第二识别规则对目标区块中的目标交易数据进行识别处理。
还需特别说明的是,同一识别方在不同时间所提供的识别规则可能并不相同;这样满足识别方根据业务需求自定义识别规则的需求,提高目标识别节点的识别能力。举例来说,如图7b所示的,假设目标交易数据属于财务识别类型,且财务识别类型对应的目标识别节点包括财务部分使用的计算机设备;若目标识别节点在第一时刻接收到目标区块时,财务部门提供了第三识别规则,则此时目标识别节点根据第三识别规则对目标区块中包含的交易数据进行识别处理;若目标识别节点在第二时刻接收到目标区块时,财务部分提供了第四识别规则,则此时目标识别节点可根据第四识别规则对目标区块中包含的交易数据进行识别处理;其中,第一时刻与第二时刻不同,第一识别规则和第二识别规则不同。
S603:将识别投票结果返回至目标共识节点。
目标识别节点在对目标交易数据识别结束后,可根据目标共识节点的节点标识,将识别投票结果返回至目标共识节点,以使目标共识节点根据识别投票结果得到目标区块的目标识别结果,并根据目标识别结果和目标共识结果对目标区块进行上链处理;目标共识结果是目标共识节点基于共识投票结果生成的,共识投票结果是区块链网络中的共识节点对目标区块进行共识得到的。其中,目标共识节点确定目标识别结果和目标共识节点,以及对目标区块上链的具体实施过程,可参见图2所示的具体实施过程的相关描述,在此不作赘述。
进一步的,若目标识别节点对目标区块中的目标交易数据识别失败,本申请实施例还支持目标识别节点将识别失败的原因返回至目标共识节点,以便于目标共识节点将识别失败的原因反馈到目标交易数据的提交方,有利于提交方了解目标交易数据识别失败原因,及时进行调整。具体实现中,若识别投票结果指示目标交易数据识别不通过,则生成目标反馈信息,该目标反馈信息用于指示:目标交易数据识别不通过的原因。例如:目标交易数据为发票数据,该发票数据所包含的发票信息不正确可包括:发票开具方不正确、发票开具时间不正确或发票金额不正确等等,本申请实施例对此不作限定;那么根据发票信息不正确的原因,可以生成对应的目标反馈信息,如发票信息不正确的原因包括发票开具方不正确,则生成的目标反馈信息可表现为“发票数据上链失败,原因为:发票开具方错误!”。然后,目标识别节点将生成的目标反馈信息发送至目标共识节点;这样目标共识节点在检测到目标识别结果指示目标区块识别失败时,可接收将目标反馈信息;并将目标反馈信息发送至目标交易数据的提交方。一种向提交方反馈目标反馈信息的示意图可参见图8。
应当理解的是,在对目标交易数据识别失败的目标识别节点的数量为两个或两个以上的情况下,每个识别失败的目标识别节点均可以将各自生成的目标反馈信息返回至目标共识节点,此时目标共识节点可以直接将接收到的多个目标反馈信息转发至目标交易数据的提交方。可选的,目标共识节点还可以对接收到的多个目标反馈信息进行整合,然后将整合后的反馈信息发送至目标交易数据的提交方,本申请实施例对此不作限制。
本申请实施例中,在对目标区块进行共识的环节中,目标识别节点可以对广播得到的目标区块中的目标交易数据进行识别处理,如识别目标交易数据是否满足业务要求(如目标交易数据所属数据类型与目标识别节点对应的目标识别类型是否匹配),以实现对目标交易数据的合法性的检测;并将识别投票结果发送至目标共识节点,以便于目标共识节点在确定对目标区块共识成功,以及对目标交易数据识别成功的情况下,才对目标区块进行上链处理;不仅能够通过共识节点的共识验证确保目标区块的安全性,还能通过目标识别节点的识别确保目标交易数据的合法性。
值得注意的是,本申请实施例涉及的区块链网络可以包括单层、双层或多层网络,此处的“层”是指区块链网络所包含的子网络的数量;子网络的划分可以是出于业务需求、通信连接、安全性等方面的考虑;属于同一子网络中的区块链节点之间的互相访问有共识机制保证安全,而不同子网络中的区块链节点之间的互相访问需要额外加入身份管理和/或网络控制。例如,图1a所示的区块链网络是一个单层区块链网络,该单层区块链网络中的各个区块链节点之间可通过共识机制实现安全访问和数据同步。在一种实现方式中,本申请实施例提出的跨区块链处理方法是应用于图1a所示的单层区块链网络中的,此实现方式下,本申请实施例提及的共识节点和识别节点属于该单层区块链网络中的区块链节点。
在其他实现方式中,本申请实施例提出的共识处理方法除应用于前述实施例描述的单层区块链网络(如只包含一个区块链网络)外,还可以应用于较为复杂的双层或多层区块链网络。举例来说,当区块链被应用于一些场景中时,例如:票据业务场景,政府或者商业机构等的数据存储场景等等;在这些场景下,区块链网络中并非所有的节点都有足够的资源和必要性成为具有区块共识能力的节点。而出于对数据的安全性考虑,在区块链体系中涉及安全性要求较高的相关数据时,也不适用普遍的数据对等的区块链部署方式。为了适应业务需求(如内外网,业务网,办公网分隔等),并进一步提高数据的安全性和保密性,本申请实施例提供了一种双层链,通过P2P(Peer to Peer,点对点)网络形成“见证子网络-共识子网络”的双层网络架构,其中,P2P网络是一种点对点连接的网络,点对点连接的各个节点称为对等节点。P2P网络基于一类特定的网络协议,使得对等节点之间不需要一个中心节点来维护网络状态,每个节点通过和相邻节点之间的广播交互,来维护全网的节点状态及其与相邻节点的连接状态。
图9示出了本申请一个示例性实施例提供的一种双层区块链网络的架构图;如图9所示,该区块链网络包括见证子网络和共识子网络。其中:①见证子网络中包括一个或多个业务节点,即业务节点部署在处于公网的见证子网络中。见证子网络中的业务节点主要进行业务执行,不进行记账共识,并通过身份认证的方式从共识子网络中获得区块头数据和部分授权可见的区块数据。②共识子网络是区块链网络中的核心网络,用于对区块链网络进行记账共识。共识子网络中包括一个或多个共识节点(或称为记账节点),或者如前述图1c所示的共识子网络中包含一个或多个节点集群,节点集群中部署运行区块链共识协议的共识节点或审核节点;基于此,前述提及的共识节点的共识验证,以及识别节点的识别处理均是在双层网络架构中的共识子网络中进行的。通常来说,见证子网络和共识子网络处在不同网络环境下,见证子网络处于公有网络中,而共识子网络处于私有网络中。由于共识子网络处于相对安全的私有网络中,其互相访问本就有共识机制保证安全,不需要额外加入身份管理和网络控制。而业务节点处于公共网络中,可能会被其它不确定的网络终端访问,因此业务节点以及其它可能的节点接入共识子网络中的操作需要被严格控制。
进一步地,上述提及的见证子网络和共识子网络可以通过二者中间的路由代理网络(或称为路由边界网络)进行交互。具体地,路由代理网络属于区块链网络,路由代理网络用于对见证子网络和共识子网络进行网络隔离;路由代理网络中包含一个或多个路由代理节点,这样可以通过路由代理节点将见证子网络中业务节点发送的交易数据转发给共识子网络中的共识节点,可提高共识子网络中交易数据的安全性。在此实现方式下,本申请实施例提供的双层区块链网络的更为详细的架构示意图可参见图10。
如图10所示,区块链网络包括:业务层、路由代理层以及核心共识网络层,业务层、路由代理层以及核心共识网络层组成了整个完整区块链业务体系;其中,①业务层处于见证子网络中,业务层包括至少一个业务节点,该业务节点具体可以是SPV节点,SPV节点维持正常的无结构P2P网络,业务节点可以处理(地方税局)税务、票据(企业开票)、支付(企业资金流动)等业务。②核心共识网络层处于共识子网络中,核心共识网络层包括多个具有共识功能的共识节点,如共识节点1001、共识节点1002、共识节点1003、……;该核心共识网络层中还包括本申请实施例新增的属于不同或相同识别类型的识别节点。③路由代理层中包括至少一个代理节点,代理节点可以提供路由服务、认证服务、证书缓存服务、点对点(P2P)服务等。业务层和核心共识网络层之间通过路由代理层进行信息交互,即业务层通过路由代理层向核心共识网络层提交业务操作交互,这样路由代理层对于业务层和核心共识网络层起到了隔离的作用。
下面结合图11a对双层网络架构进行简单描述;如图11a所示,区块链网络中包括见证子网络、路由代理网络以及共识子网络;其中,①见证子网络中的业务节点(如SPV节点)可接收链下的数据提交方提交的待上链的交易数据,以及,从核心共识子网络中同步所需要的数据。②共识子网络中包括的共识节点和识别节点,用于对待上链的交易数据进行共识和识别。③路由代理网络记录了共识子网络中共识节点的节点信息,节点信息可包括节点标识、存储的区块链(如业务主链或业务分支链)的链标识等信息;当路由代理网络中的路由代理节点遇到要向共识节点发送交易数据时,可根据节点标识将交易数据转发至对应的共识节点,以实现将见识子网络中的交易数据传递至共识子网络中。
基于图11a所示的对双层网络架构的描述,下面结合图11a和图11b对双层网络架构下本申请实施例提出的共识处理方法的具体实现方式进行简单介绍,其中共识处理方法可包括步骤s20-s29:
s20:提交方可将目标交易数据提交至见证子网络中的业务节点,以便于见证子网络中的业务节点基于目标交易数据生成数据提交请求,该数据提交请求中携带有提交方提交的目标交易数据;然后,业务节点可以将该数据提交请求发送至路由代理网络。
s21:路由代理网络将数据提交请求转发至共识子网络中。在一种实现方式中,若见证子网络中业务节点发送数据提交请求给路由代理网络时,已指定接收该数据提交请求的共识节点,则路由代理节点可以根据指定的接收对象,将数据提交请求直接发送至共识子网络中指定的共识节点(即目标共识节点)。一种指定接收数据提交请求的共识节点的方式为:数据提交请求中携带共识节点的节点标识。另一种实现方式中,路由代理节点还可以将数据提交请求随机转发至共识子网络中的任一共识节点,或,将数据提交请求转发至距离最近的共识节点。
需要说明的是,本申请实施例对路由代理网络具体采用哪种发送方式来转发数据提交请求不作限定,在此说明。另外,基于共识子网络的安全考虑,本申请实施例引入路由代理网络来对见证子网络和共识子网络进行网络隔离,但在实际应用中,见证子网络和共识子网络之间还可以直接进行通信,即不需要由路由代理网络来实现见证子网络和共识子网络之间的通信。
s22:目标共识节点接收路由代理网络发送的数据提交请求,并根据数据提交请求中携带的目标交易数据进行出块处理,生成目标区块。
s23:目标共识节点将目标区块在区块链网络中进行广播,以使区块链网络中的每个区块链节点均接收到广播的目标区块。其中,区块链节点可包括:共识节点以及识别节点。
s24:共识子网络中的其他共识节点接收到目标区块后,对该目标区块进行共识验证,生成共识投票结果;该共识投票结果指示对目标区块共识验证通过,或对目标区块共识验证不通过。然后,该其他共识节点可以将共识投票结果返回给目标共识节点。
s25:目标交易数据所属的目标识别类型对应的目标识别节点对目标交易数据进行识别,生成识别投票结果;该识别投票结果指示对目标交易数据识别通过,或对目标交易数据识别不通过。然后,该目标识别节点可以将识别投票结果返回给目标共识节点。
本申请实施例并不限定步骤s24和步骤s25的执行先后顺序,在此说明。
s26:目标共识节点接收共识节点返回的共识投票结果,以及,目标识别节点返回的识别投票结果;并根据共识投票结果生成目标共识结果,根据识别投票结果生成目标识别结果;然后,在判断目标共识结果指示目标区块共识成功,且目标识别结果指示目标交易数据识别成功时,将目标区块存储至区块链上,以实现对目标交易数据的分布式存储。反之,若目标共识结果指示目标区块共识失败,和/或,目标识别结果指示目标交易数据识别失败,则将目标交易数据剔除,并将目标区块中包括的其他交易数据返回至交易池等待下次出块。进一步的,还可以执行步骤s27。
s27:在目标识别结果指示目标交易数据识别失败的情况下,识别投票结果指示目标交易数据识别不通过的目标识别节点,还可以生成目标反馈信息,并将目标反馈信息发送至目标共识节点;该目标反馈信息用于指示目标识别节点对目标交易数据识别不通过的原因。
s28:目标共识节点接收识别投票结果指示目标交易数据识别不通过的,各个目标识别节点发送的目标反馈信息;并将该目标反馈信息发送至路由代理网络。
s29:路由代理网络接收共识子网络中的目标共识节点发送的目标反馈信息,并将该目标反馈信息转发至见证子网络中的业务节点,以便于业务节点可以将该目标反馈信息返回至目标交易数据的提交方,有利于提交方了解目标交易数据识别不通过的原因,及时对目标交易数据进行调整。
需要说明的是,上述步骤s20-s29所示的具体实施过程,可参见前述图2以及图6所示实施例中的具体实施过程的相关描述,在此不作赘述。
综上所述,一方面,本申请实施例提出的双层网络架构,通过路由代理网络将见证子网络和共识子网络进行网络隔离,在一定程度上提高共识子网络中存储的业务数据的安全性。另一方面,在对基于目标交易数据打包生成的目标区块进行共识的环节中,不仅支持区块链网络中的共识节点对目标区块进行共识,而且支持目标交易数据所属目标识别类型对应的目标识别节点,对目标交易数据本身的内容进行识别处理;并且,只有在对目标区块共识成功,以及对目标交易数据识别成功的情况下,才将目标区块进行上链处理。通过上述方案,不仅能够通过共识节点的共识验证确保目标区块的安全性,还能通过目标识别节点的识别确保目标交易数据的合法性,以实现对不合法数据的及时拦截。
上述详细阐述了本申请实施例的方法,为了便于更好地实施本申请实施例的上述方法,相应地,下面提供了本申请实施例的装置。
图12示出了本申请一个示例性实施例提供的一种基于区块链网络的共识处理装置的结构示意图,该基于区块链网络的共识处理装置可以是运行于目标共识节点(如任一共识节点)中的一个计算机程序(包括程序代码);该基于区块链网络的共识处理装置可以用于执行图2以及图11b所示的方法实施例中的部分或全部步骤。其中,区块链网络包括至少一个共识节点和至少一个识别节点,每个识别节点对应一种或多种识别类型,且每个识别节点用于对相应识别类型下的交易数据进行识别处理;该装置搭载于目标共识节点上,目标共识节点是至少一个共识节点中的任一个;该装置包括如下单元:
获取单元1201,用于获取目标交易数据,目标交易数据属于目标识别类型;
处理单元1202,用于对目标交易数据进行打包处理,生成目标区块;
处理单元1202,还用于将目标区块在区块链网络中进行广播,使区块链网络中的共识节点对目标区块进行共识,以及,使目标识别类型对应的目标识别节点对目标区块中的目标交易数据进行识别处理;
处理单元1202,还用于接收目标区块的目标共识结果和目标识别结果;以及,
处理单元1202,还用于根据目标共识结果和目标识别结果,对目标区块进行上链处理。
在一种实现方式中,区块链网络中的每个节点中部署有目标配置合约,目标配置合约中包括:每个识别节点对应的识别类型以及交易数据所属的识别类型。
在一种实现方式中,处理单元1202用于根据目标共识结果和目标识别结果,对目标区块进行上链处理时,具体用于:
若目标共识结果指示目标区块共识成功,且目标识别结果指示目标区块中的目标交易数据识别成功,则将目标区块存储至区块链网络中的区块链上。
在一种实现方式中,处理单元1202用于接收目标区块的目标共识结果时,具体用于:
接收区块链网络中的各个共识节点返回的对目标区块的共识投票结果;
统计指示对目标区块共识成功的共识投票结果的第一票数,并根据第一票数生成目标共识结果;
其中,若第一票数大于第一数量阈值,则确定目标共识结果指示目标区块共识成功。
在一种实现方式中,目标识别类型的数量为1,处理单元1202用于接收目标区块的目标识别结果时,具体用于:
接收目标识别类型对应的各个目标识别节点返回的,对目标区块中的目标交易数据的识别投票结果;
统计指示对目标交易数据识别通过的识别投票结果的第二票数,并根据第二票数生成目标识别结果;
其中,若第二票数大于第二数量阈值,则确定目标识别结果指示目标区块中的目标交易数据识别成功。
在一种实现方式中,标识别类型包括第一目标识别类型和第二目标识别类型,处理单元1202用于接收目标区块的目标识别结果时,具体用于:
接收第一目标识别类型对应的各个目标识别节点返回的第一识别投票结果;
统计指示对目标交易数据识别通过的第一识别投票结果的第一识别票数,并根据第一识别票数生成第一识别结果;以及,
接收第二目标识别类型对应的各个目标识别节点返回的第二识别投票结果;
统计指示对目标交易数据识别通过的第二识别投票结果的第二识别票数,并根据第二识别票数生成第二识别结果;
基于第一识别结果和第二识别结果生成目标识别结果;
其中,若第一识别票数大于第三数量阈值,则确定第一识别结果指示目标区块中的目标交易数据识别成功;若第二识别票数大于第四数量阈值,则确定第二识别结果指示目标区块中的目标交易数据识别成功;若第一识别结果指示识别成功,且第二识别结果指示识别成功,则确定目标识别结果指示目标区块中的目标交易数据识别成功。
一种实现方式中,处理单元1202,还用于:
若目标识别结果指示目标区块中的目标交易数据识别失败,则接收识别投票结果指示目标交易数据识别不通过的,各个目标识别节点发送的目标反馈信息;目标反馈信息用于指示:目标识别节点对目标交易数据识别不通过的原因;
将目标反馈信息发送至目标交易数据的提交方。
一种实现方式中,目标配置合约中还包括每个识别节点的节点标识,处理单元1202,还用于:
获取目标识别类型对应的目标识别节点的目标节点标识;
若基于目标节点标识与目标识别节点之间成功建立通信连接,则触发执行对目标交易数据进行打包处理,生成目标区块的步骤。
一种实现方式中,处理单元1202,还用于:
在对目标交易数据进行打包处理的过程中,若检测到与目标识别节点之间的通信连接断开,则暂停对目标交易数据的打包处理;
在检测到与目标识别节点之间的通信连接恢复时,继续对目标交易数据进行打包处理。
根据本申请的一个实施例,图12所示的基于区块链网络的共识处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,该基于区块链网络的共识处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2以及图11b所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图12中所示的基于区块链网络的共识处理装置,以及来实现本申请实施例的基于区块链网络的共识处理方法。计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请实施例中,在对基于目标交易数据打包生成的目标区块进行共识的环节中,不仅支持区块链网络中的共识节点对目标区块进行共识,而且支持目标交易数据所属目标识别类型对应的目标识别节点,对目标交易数据本身的内容进行识别处理;并且,只有在对目标区块共识成功,以及对目标交易数据识别成功的情况下,才将目标区块进行上链处理。通过上述方案,不仅能够通过共识节点的共识验证确保目标区块的安全性,还能通过目标识别节点的识别确保目标交易数据的合法性。
图13示出了本申请一个示例性实施例提供的一种基于区块链网络的共识处理装置的结构示意图,该基于区块链网络的共识处理装置可以是运行于目标审核节点(如任一审核节点)中的一个计算机程序(包括程序代码);该基于区块链网络的共识处理装置可以用于执行图6以及图11b所示的方法实施例中的部分或全部步骤。其中,区块链网络中包括至少一个共识节点和至少一个识别节点,每个识别节点对应一种或多种识别类型,且每个识别节点用于对相应识别类型下的交易数据进行识别;该装置搭载于目标识别类型对应的目标识别节点上;该装置包括如下单元:
接收单元1301,用于接收目标共识节点在区块链网络中广播的目标区块;目标共识节点是区块链网络包括的至少一个共识节点中的任一个;目标区块是目标共识节点基于目标交易数据打包处理得到的;目标交易数据属于目标识别类型;
处理单元1302,用于对目标区块中的目标交易数据进行识别处理,得到识别投票结果;
处理单元1302,还用于将识别投票结果返回至目标共识节点,以使目标共识节点根据识别投票结果投票得到目标区块的目标识别结果,并根据目标识别结果和目标共识结果对目标区块进行上链处理;目标共识结果是目标共识节点基于共识投票生成的,共识投票是区块链网络中的共识节点对目标区块进行共识得到的。
在一种实现方式中,处理单元1302用于对目标区块中的目标交易数据进行识别处理,得到识别投票结果时,具体用于:
获取目标交易数据对应的识别规则,识别规则是由识别方提供的;
根据识别规则对所述目标交易数据进行识别处理,得到识别投票结果;
其中,识别规则用于对目标交易数据包含的交易信息的正确性进行识别处理;识别投票结果指示目标交易数据识别通过时,确定目标交易数据包含的交易信息是正确的。
在一种实现方式中,处理单元1302,还用于:
若识别投票结果指示目标交易数据识别不通过,则生成目标反馈信息,目标反馈信息用于指示:目标交易数据识别不通过的原因;
将目标反馈信息发送至目标共识节点,以使目标共识节点在检测到目标识别结果指示目标区块识别失败时,将目标反馈信息发送至目标交易数据的提交方。
根据本申请的一个实施例,图13所示的基于区块链网络的共识处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,该基于区块链网络的共识处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图6以及图11b所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图13中所示的基于区块链网络的共识处理装置,以及来实现本申请实施例的基于区块链网络的共识处理方法。计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请实施例中,在对目标区块进行共识的环节中,目标识别节点可以对广播得到的目标区块中的目标交易数据进行识别处理,如识别目标交易数据是否满足业务要求(如目标交易数据所属数据类型与目标识别节点对应的目标识别类型是否匹配),以实现对目标交易数据的合法性的检测;并将识别投票结果发送至目标共识节点,以便于目标共识节点在确定对目标区块共识成功,以及对目标交易数据识别成功的情况下,才对目标区块进行上链处理;不仅能够通过共识节点的共识验证确保目标区块的安全性,还能通过目标识别节点的识别确保目标交易数据的合法性。
图14示出了本申请一个示例性实施例提供的一种区块链节点设备的结构示意图;请参见图14,该区块链节点设备至少包括处理器1401、通信接口1402和计算机可读存储介质1403。该终端包括处理器1401、通信接口1402以及计算机可读存储介质1203。其中,处理器1401、通信接口1402以及计算机可读存储介质1403可通过总线或者其它方式连接。其中,通信接口1402用于接收和发送数据。计算机可读存储介质1403可以存储在区块链节点设备的存储器中,计算机可读存储介质1403用于存储计算机程序,计算机程序包括程序指令,处理器1401用于执行计算机可读存储介质1403存储的程序指令。处理器1401(或称CPU(Central Processing Unit,中央处理器))是区块链节点设备的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能。
本申请实施例还提供了一种计算机可读存储介质(Memory),计算机可读存储介质是区块链节点设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括区块链节点设备中的内置存储介质,当然也可以包括区块链节点设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了区块链节点设备的处理系统。并且,在该存储空间中还存放了适于被处理器1401加载并执行的一条或多条的指令,这些指令可以是一个或多个的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器的计算机可读存储介质。
在一个实施例中,该计算机可读存储介质中存储有一条或多条指令;由处理器1401加载并执行计算机可读存储介质中存放的一条或多条指令,以实现上述共识处理方法实施例中的相应步骤;具体实现中,区块链网络包括至少一个共识节点和至少一个识别节点,每个识别节点对应一种或多种识别类型,且每个识别节点用于对相应识别类型下的交易数据进行识别处理;该设备装置搭载于目标共识节点上,目标共识节点是至少一个共识节点中的任一个;计算机可读存储介质中的一条或多条指令由处理器1401加载并执行如下步骤:
获取目标交易数据,目标交易数据属于目标识别类型;
对目标交易数据进行打包处理,生成目标区块;
将目标区块在区块链网络中进行广播,使区块链网络中的共识节点对目标区块进行共识,以及,使目标识别类型对应的目标识别节点对目标区块中的目标交易数据进行识别处理;
接收目标区块的目标共识结果和目标识别结果;以及,
根据目标共识结果和目标识别结果,对目标区块进行上链处理。
在一种实现方式中,区块链网络中的每个节点中部署有目标配置合约,目标配置合约中包括:每个识别节点对应的识别类型以及交易数据所属的识别类型。
在一种实现方式中,计算机可读存储介质中的一条或多条指令由处理器1401加载并在执行根据目标共识结果和目标识别结果,对目标区块进行上链处理时,具体执行如下步骤:
若目标共识结果指示目标区块共识成功,且目标识别结果指示目标区块中的目标交易数据识别成功,则将目标区块存储至区块链网络中的区块链上。
在一种实现方式中,计算机可读存储介质中的一条或多条指令由处理器1401加载并在执行接收目标区块的目标共识结果时,具体执行如下步骤:
接收区块链网络中的各个共识节点返回的对目标区块的共识投票结果;
统计指示对目标区块共识成功的共识投票结果的第一票数,并根据第一票数生成目标共识结果;
其中,若第一票数大于第一数量阈值,则确定目标共识结果指示目标区块共识成功。
在一种实现方式中,目标识别类型的数量为1,计算机可读存储介质中的一条或多条指令由处理器1401加载并在执行接收目标区块的目标识别结果时,具体执行如下步骤:
接收目标识别类型对应的各个目标识别节点返回的,对目标区块中的目标交易数据的识别投票结果;
统计指示对目标交易数据识别通过的识别投票结果的第二票数,并根据第二票数生成目标识别结果;
其中,若第二票数大于第二数量阈值,则确定目标识别结果指示目标区块中的目标交易数据识别成功。
在一种实现方式中,目标识别类型包括第一目标识别类型和第二目标识别类型,计算机可读存储介质中的一条或多条指令由处理器1401加载并在执行接收目标区块的目标识别结果时,具体执行如下步骤:
接收第一目标识别类型对应的各个目标识别节点返回的第一识别投票结果;
统计指示对目标交易数据识别通过的第一识别投票结果的第一识别票数,并根据第一识别票数生成第一识别结果;以及,
接收第二目标识别类型对应的各个目标识别节点返回的第二识别投票结果;
统计指示对目标交易数据识别通过的第二识别投票结果的第二识别票数,并根据第二识别票数生成第二识别结果;
基于第一识别结果和第二识别结果生成目标识别结果;
其中,若第一识别票数大于第三数量阈值,则确定第一识别结果指示目标区块中的目标交易数据识别成功;若第二识别票数大于第四数量阈值,则确定第二识别结果指示目标区块中的目标交易数据识别成功;若第一识别结果指示识别成功,且第二识别结果指示识别成功,则确定目标识别结果指示目标区块中的目标交易数据识别成功。
一种实现方式中,处理单元,还用于计算机可读存储介质中的一条或多条指令由处理器1401加载并还执行如下步骤:
若目标识别结果指示目标区块中的目标交易数据识别失败,则接收识别投票结果指示目标交易数据识别不通过的,各个目标识别节点发送的目标反馈信息;目标反馈信息用于指示:目标识别节点对目标交易数据识别不通过的原因;
将目标反馈信息发送至目标交易数据的提交方。
一种实现方式中,目标配置合约中还包括每个识别节点的节点标识,计算机可读存储介质中的一条或多条指令由处理器1401加载并还执行如下步骤:
获取目标识别类型对应的目标识别节点的目标节点标识;
若基于目标节点标识与目标识别节点之间成功建立通信连接,则触发执行对目标交易数据进行打包处理,生成目标区块的步骤。
一种实现方式中,计算机可读存储介质中的一条或多条指令由处理器1401加载并还执行如下步骤:
在对目标交易数据进行打包处理的过程中,若检测到与目标识别节点之间的通信连接断开,则暂停对目标交易数据的打包处理;
在检测到与目标识别节点之间的通信连接恢复时,继续对目标交易数据进行打包处理。
在另一个实施例中,该计算机可读存储介质中存储有一条或多条指令;由处理器1401加载并执行计算机可读存储介质中存放的一条或多条指令,以实现上述共识处理方法实施例中的相应步骤;具体实现中,区块链网络包括至少一个共识节点和至少一个识别节点,每个识别节点对应一种或多种识别类型,且每个识别节点用于对相应识别类型下的交易数据进行识别处理;该设备装置搭载于目标识别类型对应的目标识别节点上;计算机可读存储介质中的一条或多条指令由处理器1401加载并执行如下步骤:
接收目标共识节点在区块链网络中广播的目标区块;目标共识节点是区块链网络包括的至少一个共识节点中的任一个;目标区块是目标共识节点基于目标交易数据打包处理得到的;目标交易数据属于目标识别类型;
对目标区块中的目标交易数据进行识别处理,得到识别投票结果;
将识别投票结果返回至目标共识节点,以使目标共识节点根据识别投票结果得到目标区块的目标识别结果,并根据目标识别结果和目标共识结果对目标区块进行上链处理;目标共识结果是目标共识节点基于共识投票生成的,共识投票是区块链网络中的共识节点对目标区块进行共识得到的。
在一种实现方式中,计算机可读存储介质中的一条或多条指令由处理器1401加载并在执行对目标区块中的目标交易数据进行识别处理,得到识别投票结果时,具体执行如下步骤:
获取目标交易数据对应的识别规则,识别规则是由识别方提供的;
根据识别规则对所述目标交易数据进行识别处理,得到识别投票结果;
其中,识别规则用于对目标交易数据包含的交易信息的正确性进行识别识别;识别投票结果指示目标交易数据识别通过时,确定目标交易数据包含的交易信息是正确的。
在一种实现方式中,计算机可读存储介质中的一条或多条指令由处理器1401加载并还执行如下步骤:
若识别投票结果指示目标交易数据识别不通过,则生成目标反馈信息,目标反馈信息用于指示:目标交易数据识别不通过的原因;
将目标反馈信息发送至目标共识节点,以使目标共识节点在检测到目标识别结果指示目标区块识别失败时,将目标反馈信息发送至目标交易数据的提交方。
基于同一发明构思,本申请实施例中提供的区块链节点设备解决问题的原理与有益效果与本申请方法实施例中基于区块链网络的共识处理方法解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,为简洁描述,在这里不再赘述。
本申请实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。区块链节点设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该区块链节点设备执行上述基于区块链网络的共识处理方法。
本领域普通技术人员可以意识到,结合本申请中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用,使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程设备。计算机指令可以存储在计算机可读存储介质中,或者通过计算机可读存储介质进行传输。计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如,同轴电缆、光纤、数字线(DSL))或无线(例如,红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(Solid State Disk,SSD))等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (17)
1.一种基于区块链网络的共识处理方法,其特征在于,所述区块链网络包括至少一个共识节点和至少一个识别节点,每个识别节点对应一种或多种识别类型,且每个识别节点用于对相应识别类型下的交易数据进行识别处理;所述方法由目标共识节点执行,所述目标共识节点是所述至少一个共识节点中的任一个;所述方法包括:
获取目标交易数据,所述目标交易数据属于目标识别类型;
对所述目标交易数据进行打包处理,生成目标区块;
将所述目标区块在所述区块链网络中进行广播,使所述区块链网络中的共识节点对所述目标区块进行共识,以及,使所述目标识别类型对应的目标识别节点对所述目标区块中的目标交易数据进行识别处理;
接收所述目标区块的目标共识结果和目标识别结果;以及,
根据所述目标共识结果和所述目标识别结果,对所述目标区块进行上链处理。
2.如权利要求1所述的方法,其特征在于,所述区块链网络中的每个节点中部署有目标配置合约,所述目标配置合约中包括:每个识别节点对应的识别类型以及交易数据所属的识别类型。
3.如权利要求1或2所述的方法,其特征在于,所述根据所述目标共识结果和所述目标识别结果,对所述目标区块进行上链处理,包括:
若所述目标共识结果指示所述目标区块共识成功,且所述目标识别结果指示所述目标区块中的目标交易数据识别成功,则将所述目标区块存储至所述区块链网络中的区块链上。
4.如权利要求3所述的方法,其特征在于,所述接收所述目标区块的目标共识结果,包括:
接收所述区块链网络中的各个共识节点返回的对所述目标区块的共识投票结果;
统计指示对所述目标区块共识成功的共识投票结果的第一票数,并根据所述第一票数生成目标共识结果;
其中,若所述第一票数大于第一数量阈值,则确定所述目标共识结果指示所述目标区块共识成功。
5.如权利要求3所述的方法,其特征在于,所述目标识别类型的数量为1,所述接收所述目标区块的目标识别结果,包括:
接收所述目标识别类型对应的各个目标识别节点返回的,对所述目标区块中的目标交易数据的识别投票结果;
统计指示对所述目标交易数据识别通过的识别投票结果的第二票数,并根据所述第二票数生成目标识别结果;
其中,若所述第二票数大于第二数量阈值,则确定所述目标识别结果指示所述目标区块中的目标交易数据识别成功。
6.如权利要求3所述的方法,其特征在于,所述目标识别类型包括第一目标识别类型和第二目标识别类型,所述接收所述目标区块的目标识别结果,包括:
接收所述第一目标识别类型对应的各个目标识别节点返回的第一识别投票结果;
统计指示对所述目标交易数据识别通过的第一识别投票结果的第一识别票数,并根据所述第一识别票数生成第一识别结果;以及,
接收所述第二目标识别类型对应的各个目标识别节点返回的第二识别投票结果;
统计指示对所述目标交易数据识别通过的第二识别投票结果的第二识别票数,并根据所述第二识别票数生成第二识别结果;
基于所述第一识别结果和所述第二识别结果生成目标识别结果;
其中,若所述第一识别票数大于第三数量阈值,则确定所述第一识别结果指示所述目标区块中的目标交易数据识别成功;若所述第二识别票数大于第四数量阈值,则确定所述第二识别结果指示所述目标区块中的目标交易数据识别成功;若所述第一识别结果指示识别成功,且所述第二识别结果指示识别成功,则确定所述目标识别结果指示所述目标区块中的目标交易数据识别成功。
7.如权利要求5或6所述的方法,其特征在于,所述方法还包括:
若所述目标识别结果指示所述目标区块中的目标交易数据识别失败,则接收识别投票结果指示所述目标交易数据识别不通过的,各个目标识别节点发送的目标反馈信息;目标反馈信息用于指示:目标识别节点对目标交易数据识别不通过的原因;
将目标反馈信息发送至所述目标交易数据的提交方。
8.如权利要求2所述的方法,其特征在于,所述目标配置合约中还包括每个识别节点的节点标识,所述对所述目标交易数据进行打包处理,生成目标区块之前,还包括:
获取所述目标识别类型对应的目标识别节点的目标节点标识;
若基于所述目标节点标识与所述目标识别节点之间成功建立通信连接,则触发执行对所述目标交易数据进行打包处理,生成目标区块的步骤。
9.如权利要求8所述的方法,其特征在于,所述方法还包括:
在对所述目标交易数据进行打包处理的过程中,若检测到与所述目标识别节点之间的通信连接断开,则暂停对所述目标交易数据的打包处理;
在检测到与所述目标识别节点之间的通信连接恢复时,继续对所述目标交易数据进行打包处理。
10.一种基于区块链网络的共识处理方法,其特征在于,所述区块链网络中包括至少一个共识节点和至少一个识别节点,每个识别节点对应一种或多种识别类型,且每个识别节点用于对相应识别类型下的交易数据进行识别处理;所述方法由目标识别类型对应的目标识别节点执行;所述方法包括:
接收目标共识节点在所述区块链网络中广播的目标区块;所述目标共识节点是所述区块链网络包括的至少一个共识节点中的任一个;所述目标区块是所述目标共识节点基于目标交易数据打包处理得到的;所述目标交易数据属于所述目标识别类型;
对所述目标区块中的目标交易数据进行识别处理,得到识别投票结果;
将所述识别投票结果返回至所述目标共识节点,以使所述目标共识节点根据所述识别投票结果得到所述目标区块的目标识别结果,并根据所述目标识别结果和目标共识结果对所述目标区块进行上链处理;所述目标共识结果是所述目标共识节点基于共识投票结果生成的,所述共识投票结果是所述区块链网络中的共识节点对所述目标区块进行共识得到的。
11.如权利要求10所述的方法,其特征在于,所述对所述目标区块中的目标交易数据进行识别处理,得到识别投票结果,包括:
获取所述目标交易数据对应的识别规则,所述识别规则是由识别方提供的;
根据所述识别规则对所述目标交易数据进行识别处理,得到识别投票结果;
其中,所述识别规则用于对所述目标交易数据包含的交易信息的正确性进行识别;所述识别投票结果指示所述目标交易数据识别通过时,确定所述目标交易数据包含的交易信息是正确的。
12.如权利要求10所述的方法,其特征在于,所述方法还包括:
若所述识别投票结果指示所述目标交易数据识别不通过,则生成目标反馈信息,所述目标反馈信息用于指示:所述目标交易数据识别不通过的原因;
将所述目标反馈信息发送至所述目标共识节点,以使所述目标共识节点在检测到目标识别结果指示所述目标区块识别失败时,将所述目标反馈信息发送至所述目标交易数据的提交方。
13.一种基于区块链网络的共识处理装置,其特征在于,所述区块链网络包括至少一个共识节点和至少一个识别节点,每个识别节点对应一种或多种识别类型,且每个识别节点用于对相应识别类型下的交易数据进行识别处理;所述共识装置搭载于目标共识节点上,所述目标共识节点是所述至少一个共识节点中的任一个;所述共识处理装置包括:
获取单元,用于获取目标交易数据,所述目标交易数据属于目标识别类型;
处理单元,用于对所述目标交易数据进行打包处理,生成目标区块;
所述处理单元,还用于将所述目标区块在所述区块链网络中进行广播,使所述区块链网络中的共识节点对所述目标区块进行共识,以及,使所述目标识别类型对应的目标识别节点对所述目标区块中的目标交易数据进行识别处理;
所述处理单元,还用于接收所述目标区块的目标共识结果和目标识别结果;以及,
所述处理单元,还用于根据所述目标共识结果和所述目标识别结果,对所述目标区块进行上链处理。
14.一种基于区块链网络的共识处理装置,其特征在于,所述区块链网络中包括至少一个共识节点和至少一个识别节点,每个识别节点对应一种或多种识别类型,且每个识别节点用于对相应识别类型下的交易数据进行识别处理;所述共识处理装置搭载于目标识别类型对应的目标识别节点上;所述共识处理装置包括:
接收单元,用于接收目标共识节点在所述区块链网络中广播的目标区块;所述目标共识节点是所述区块链网络包括的至少一个共识节点中的任一个;所述目标区块是所述目标共识节点基于目标交易数据打包处理得到的;所述目标交易数据属于所述目标识别类型;
处理单元,用于对所述目标区块中的目标交易数据进行识别处理,得到识别投票结果;
所述处理单元,还用于将所述识别投票结果返回至所述目标共识节点,以使所述目标共识节点根据所述识别投票结果得到所述目标区块的目标识别结果,并根据所述目标识别结果和目标共识结果对所述目标区块进行上链处理;所述目标共识结果是所述目标共识节点基于共识投票生成的,所述共识投票是所述区块链网络中的共识节点对所述目标区块进行共识得到的。
15.一种区块链设备,其特征在于,包括:
处理器,适于执行计算机程序;
计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被所述处理器执行时,实现如权利要求1-9任一项所述的基于区块链网络的共识处理方法,或者实现如权利要求10-12任一项所述的基于区块链网络的共识处理方法。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于被处理器加载并执行如权利要求1-9任一项所述的基于区块链网络的共识处理方法,或者实现如权利要求10-12任一项所述的基于区块链网络的共识处理方法。
17.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,所述计算机指令被处理器执行时实现如权利要求1-9任一项所述的基于区块链网络的共识处理方法,或者实现如权利要求10-12任一项所述的基于区块链网络的共识处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210480672.1A CN117061538A (zh) | 2022-05-05 | 2022-05-05 | 一种基于区块链网络的共识处理方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210480672.1A CN117061538A (zh) | 2022-05-05 | 2022-05-05 | 一种基于区块链网络的共识处理方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117061538A true CN117061538A (zh) | 2023-11-14 |
Family
ID=88664999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210480672.1A Pending CN117061538A (zh) | 2022-05-05 | 2022-05-05 | 一种基于区块链网络的共识处理方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117061538A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117235804B (zh) * | 2023-11-15 | 2024-02-23 | 浪潮(北京)电子信息产业有限公司 | 一种数据集确权方法、系统、装置及介质 |
-
2022
- 2022-05-05 CN CN202210480672.1A patent/CN117061538A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117235804B (zh) * | 2023-11-15 | 2024-02-23 | 浪潮(北京)电子信息产业有限公司 | 一种数据集确权方法、系统、装置及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11411721B2 (en) | Systems and methods for selecting and utilizing a committee of validator nodes in a distributed system | |
CN113395363B (zh) | 基于区块链的数据处理方法、装置、设备及存储介质 | |
US11551216B2 (en) | Transaction security on distributed-ledger based MaaS platform | |
CN112541758A (zh) | 基于区块链的多轮投票式容错排序共识机制与方法 | |
CN112883114A (zh) | 应用于区块链的交易处理方法和装置 | |
CN112202564B (zh) | 交易传递方法、装置、电子设备及可读存储介质 | |
CN114651424B (zh) | 用于安全接入maas网络的发布者节点的接入管理 | |
CN117061538A (zh) | 一种基于区块链网络的共识处理方法及相关装置 | |
CN116827957B (zh) | 基于多区块链的信息处理方法、装置、设备以及介质 | |
US20230360046A1 (en) | Blockchain-based block processing method and apparatus, device, storage medium, and program product | |
WO2023082883A1 (zh) | 跨区块链处理事务的方法、装置、计算机设备、计算机存储介质及计算机程序产品 | |
CN117221337A (zh) | 区块链共识方法、装置、介质及电子设备 | |
CN116186786A (zh) | 基于区块链的业务处理方法、装置、电子设备和可读介质 | |
CN116233139A (zh) | 区块链系统的数据处理方法、装置、介质及电子设备 | |
CN116186749A (zh) | 基于区块链的业务处理方法、装置、电子设备和可读介质 | |
US20240137208A1 (en) | Asset transferring method and apparatus based on multiple blockchains, device, medium, and product | |
CN117036038B (zh) | 一种基于联盟链的交易处理方法、装置、设备及存储介质 | |
CN117056084B (zh) | 基于分层区块链网络的数据处理方法、装置、设备及介质 | |
CN116226827A (zh) | 基于区块链网络的数据处理方法、装置、设备及存储介质 | |
CN116112496A (zh) | 一种基于区块链网络的跨链交互方法及相关设备 | |
CN116112501A (zh) | 基于区块链网络的业务处理方法、装置、设备及存储介质 | |
CN116186725A (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN115455460A (zh) | 一种基于区块链的数据存储方法、装置、设备及介质 | |
CN116483915A (zh) | 一种区块同步方法、相关装置、介质及程序产品 | |
CN116366254A (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 |