CN113935835A - 一种交易数据处理方法、装置、设备及存储介质 - Google Patents
一种交易数据处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113935835A CN113935835A CN202111215409.1A CN202111215409A CN113935835A CN 113935835 A CN113935835 A CN 113935835A CN 202111215409 A CN202111215409 A CN 202111215409A CN 113935835 A CN113935835 A CN 113935835A
- Authority
- CN
- China
- Prior art keywords
- transaction
- node
- block
- auction
- consensus
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/08—Auctions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Economics (AREA)
- Physics & Mathematics (AREA)
- Development Economics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Technology Law (AREA)
- Entrepreneurship & Innovation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请实施例公开了一种交易数据处理方法、装置、设备及存储介质,包括:第一共识节点从核心共识网络的区块链上获取区块Ni,对区块Ni中的交易进行交易识别;若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为第一竞拍交易,且基于第一竞拍交易中的第一节点标识,将待打包的区块Ni+1确定为与第一节点标识相关联的第一类型区块;基于第一竞拍交易所指定的交易打包数量,获取第一业务节点的关联业务交易;根据关联业务交易生成区块Ni+1,将区块Ni+1广播至核心共识网络中的第二共识节点,以使第二共识节点对区块Ni+1进行区块共识。采用本申请实施例,可以提高数据存储的安全性以及同一业务节点的交易处理效率。
Description
本申请为在2021年06月15日提交中国专利局、申请号为2021106579183、申请名称为“一种交易数据处理方法、装置、设备及存储介质”的中国专利申请的分案申请,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及区块链技术领域,尤其涉及一种交易数据处理方法、装置、设备及存储介质。
背景技术
在传统区块链网络中,区块链网络中的每个业务节点均可以将生成的交易广播至共识节点,以使共识节点将其存储至节点交易池中,并打包至该区块链网络的区块链上。其中,由于节点交易池中的交易是由区块链网络中的多个业务节点发送的,因此,具备出块功能的共识节点(例如,共识节点A)在打包得到新区块的过程中,会无差别地从节点交易池中获取到这些业务节点的交易,且会按照获取到的这些交易的交易顺序,将这些业务节点的交易打包到同一区块,以至于生成的新区块会存在不同业务节点的交易,基于此,发明人认为一旦非法节点获取到该新区块时,将导致该新区块中存储的这些不同业务节点的交易存在被非法泄露的风险,进而会降低数据存储的安全性。
此外,由于该区块所能容纳的交易数量是有限的,一旦将这些不同业务节点的交易打包至同一区块,将存在同一业务节点的交易可能被分散存储在不同区块的现象。所以,共识节点在对这些区块中的某个业务节点的交易进行上链的过程中,该共识节点需要花费较长的共识时间,从而降低了同一业务节点的交易处理效率。
发明内容
本申请实施例提供一种交易数据处理方法、装置、设备及存储介质,可以提高数据存储的安全性,以及提高同一业务节点的交易处理效率。
本申请实施例一方面提供一种交易数据处理方法,该方法由核心共识网络中的第一共识节点执行,包括:
从核心共识网络的区块链上获取区块Ni,对区块Ni中的交易进行交易识别;区块Ni为区块链上具有最大生成时间戳的区块;i为正整数;
若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为第一竞拍交易,且基于第一竞拍交易中的第一节点标识,将待打包的区块Ni+1确定为与第一节点标识相关联的第一类型区块;第一竞拍交易是由第一节点标识对应的第一业务节点通过代理节点所转发的;代理节点用于对核心共识网络和第一业务节点所在的业务网络进行网络隔离;
基于第一竞拍交易所指定的交易打包数量,获取第一业务节点的关联业务交易;
根据关联业务交易生成区块Ni+1,将区块Ni+1广播至核心共识网络中的第二共识节点,以使第二共识节点对区块Ni+1进行区块共识。
本申请实施例一方面提供一种交易数据处理方法,该方法由核心共识网络中的第二共识节点执行,包括:
接收核心共识网络中的第一共识节点广播的区块Ni+1;区块Ni+1为第一共识节点在识别到核心共识网络的区块链上的区块Ni中存在第一竞拍交易时,基于第一竞拍交易中的第一节点标识以及交易打包数量生成的第一类型区块;区块Ni为区块链上具有最大生成时间戳的区块;i为正整数;第一竞拍交易是第一共识节点接收到的由第一节点标识对应的第一业务节点通过代理节点转发的竞拍交易;代理节点用于对核心共识网络和第一业务节点所在的业务网络进行网络隔离;
从区块链上获取区块Ni,对区块Ni中的交易进行交易识别;
若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为目标竞拍交易,基于目标竞拍交易对区块Ni+1进行区块共识,得到用于向第一共识节点返回的区块共识结果;区块共识结果用于指示第一共识节点将区块Ni+1写入区块链。
本申请实施例一方面提供一种交易数据处理装置,包括:
交易识别模块,用于从核心共识网络的区块链上获取区块Ni,对区块Ni中的交易进行交易识别;区块Ni为区块链上具有最大生成时间戳的区块;i为正整数;
第一类型区块确定模块,用于若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为第一竞拍交易,且基于第一竞拍交易中的第一节点标识,将待打包的区块Ni+1确定为与第一节点标识相关联的第一类型区块;第一竞拍交易是由第一节点标识对应的第一业务节点通过代理节点所转发的;代理节点用于对核心共识网络和第一业务节点所在的业务网络进行网络隔离;
关联业务交易获取模块,用于基于第一竞拍交易所指定的交易打包数量,获取第一业务节点的关联业务交易;
第一区块广播模块,用于根据关联业务交易生成区块Ni+1,将区块Ni+1广播至核心共识网络中的第二共识节点,以使第二共识节点对区块Ni+1进行区块共识。
其中,该第一类型区块确定模块包括:
节点标识获取单元,用于若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为第一竞拍交易,且获取第一竞拍交易中的第一节点标识;
业务节点查找单元,用于获取核心共识网络所在的区块链网络所维护的节点标识列表,基于节点标识列表,查找与第一节点标识相匹配的业务节点,将查找到的业务节点作为第一业务节点;
区块类型确定单元,用于将待打包的区块Ni+1确定为与第一业务节点相关联的第一类型区块。
其中,第一共识节点的节点交易池中包括第一业务节点的第一类交易以及第一业务节点的第二类交易;第一类交易的打包优先级高于第二类交易的打包优先级;
该关联业务交易获取模块包括:
交易打包数量获取单元,用于获取第一竞拍交易所指定的交易打包数量;交易打包数量用于指示区块Ni+1所容纳的第一业务节点的业务交易的最大交易数量;
关键交易数量统计单元,用于在节点交易池中,基于第一类交易的打包优先级,统计第一业务节点的第一类交易的第一关键交易数量;
第一类交易获取单元,用于若统计到的第一关键交易数量小于交易打包数量,则从节点交易池中,获取与统计到的第一关键交易数量相符的第一业务节点的第一类交易;
第二类交易获取单元,用于确定交易打包数量与统计到的第一关键交易数量之间的数量差值,将数量差值确定为待添加数量,且在节点交易池中统计第一业务节点的第二类交易的第二关键交易数量;
关联业务交易确定单元,用于在统计到的第二关键交易数量大于待添加数量时,从节点交易池中,获取与待添加数量相符的第一业务节点的第二类交易,且将获取到的第一类交易以及获取到的第二类交易作为第一业务节点的关联业务交易。
其中,第一区块广播模块包括:
资产转移交易生成单元,用于在获取到关联业务交易之后,基于区块链上的智能合约,针对第一竞拍交易生成竞拍资产转移交易;
待处理交易确定单元,用于获取与核心共识网络相关联的竞拍交易打包条件,基于关联业务交易、竞拍资产转移交易以及竞拍交易打包条件,确定用于打包至区块Ni+1中的待处理交易;
区块广播单元,用于对待处理交易进行打包处理得到区块Ni+1,将区块Ni+1广播至核心共识网络中的第二共识节点。
其中,该待处理交易确定单元包括:
打包条件获取子单元,用于获取与核心共识网络相关联的竞拍交易打包条件;竞拍交易打包条件包括与第一类型区块相关联的连续区块数量阈值;
区块数量统计子单元,用于将区块Ni作为遍历起始区块,基于区块链所指示的遍历索引方向以及遍历起始区块,统计区块链上连续出现第一类型区块的区块数量;
第一确定子单元,用于若统计到的区块数量达到连续区块数量阈值,则确定区块Ni+1不满足竞拍交易打包条件,且将关联业务交易以及竞拍资产转移交易作为用于打包至区块Ni+1中的待处理交易。
其中,该待处理交易确定单元还包括:
条件满足确定子单元,用于若统计到的区块数量未达到连续区块数量阈值,则确定区块Ni+1满足竞拍交易打包条件;
竞拍交易筛选子单元,用于基于第一共识节点的节点交易池中的竞拍交易,筛选用于打包至区块Ni+1的第二竞拍交易;第二竞拍交易用于指示区块Ni+1的下一区块为与业务网络中的第二业务节点相关联的第一类型区块;第二业务节点为第二竞拍交易中的第二节点标识对应的业务节点;
第二确定子单元,用于将关联业务交易、竞拍资产转移交易以及第二竞拍交易作为用于打包至区块Ni+1中的待处理交易。
其中,该竞拍交易筛选子单元包括:
竞拍资产确定子单元,用于获取第一共识节点的节点交易池中存储的X个竞拍交易,确定X个竞拍交易中的每个竞拍交易的竞拍资产;X个竞拍交易是由业务网络中的业务节点通过代理节点所转发的;X为正整数;
筛选子单元,用于基于每个竞拍交易的竞拍资产,从X个竞拍交易中筛选出具有最大竞拍资产的竞拍交易,将筛选出的竞拍交易作为待验证竞拍交易;
交易验证子单元,用于对待验证竞拍交易进行交易验证,得到交易验证结果;
竞拍交易确定子单元,用于在交易验证结果指示验证成功时,将待验证竞拍交易作为用于打包至区块Ni+1的第二竞拍交易。
其中,该交易验证子单元还用于:
获取待验证竞拍交易携带的交易签名信息;交易签名信息为待验证竞拍交易中的第二节点标识对应的第二业务节点,基于第二业务节点的节点私钥,对待验证竞拍交易进行签名处理后得到的;
获取第二业务节点的节点公钥,基于节点公钥对交易签名信息进行验证,得到签名验证结果;
在签名验证结果指示验证成功时,基于智能合约以及与业务网络相关联的非法节点列表,确定第二业务节点的合法性;
基于第二业务节点的合法性,确定待验证竞拍交易的交易验证结果。
其中,该装置还包括:
第二类型区块确定模块,用于若识别到区块Ni中不存在竞拍交易,则将待打包的区块Ni+1确定为第二类型区块;第二类型区块与第一类型区块不同;
交易获取模块,用于从第一共识节点的节点交易池中,获取业务网络中的业务节点通过代理节点发送的第二类交易;
第二区块广播模块,用于根据获取到的第二类交易,生成区块Ni+1,将区块Ni+1广播至核心共识网络中的第二共识节点,以使第二共识节点对区块Ni+1进行区块共识。
本申请实施例一方面提供一种交易数据处理装置,包括:
区块接收模块,用于接收核心共识网络中的第一共识节点广播的区块Ni+1;区块Ni+1为第一共识节点在识别到核心共识网络的区块链上的区块Ni中存在第一竞拍交易时,基于第一竞拍交易中的第一节点标识以及交易打包数量生成的第一类型区块;区块Ni为区块链上具有最大生成时间戳的区块;i为正整数;第一竞拍交易是第一共识节点接收到的由第一节点标识对应的第一业务节点通过代理节点转发的竞拍交易;代理节点用于对核心共识网络和第一业务节点所在的业务网络进行网络隔离;
区块获取模块,用于从区块链上获取区块Ni,对区块Ni中的交易进行交易识别;
区块共识模块,用于若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为目标竞拍交易,基于目标竞拍交易对区块Ni+1进行区块共识,得到用于向第一共识节点返回的区块共识结果;区块共识结果用于指示第一共识节点将区块Ni+1写入区块链。
其中,该区块共识模块包括:
目标竞拍交易确定单元,用于若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为目标竞拍交易;目标竞拍交易包括目标节点标识以及目标打包数量;
比对单元,用于统计区块Ni+1中的目标节点标识对应的关联业务交易的业务交易数量,且将统计到的业务交易数量与目标打包数量进行比对,得到比对结果;
匹配单元,用于将目标节点标识与区块Ni+1的关联业务交易中的每个交易分别进行匹配,得到匹配结果;
共识结果确定单元,用于基于比对结果以及匹配结果,确定用于向第一共识节点返回的区块共识结果。
本申请实施例一方面提供了一种计算机设备,包括:处理器和存储器;
处理器与存储器相连,其中,存储器用于存储计算机程序,计算机程序被处理器执行时,使得该计算机设备执行本申请实施例提供的方法。
本申请实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序适于由处理器加载并执行,以使得具有该处理器的计算机设备执行本申请实施例提供的方法。
本申请实施例一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例提供的方法。
在本申请实施例中,核心共识网络中的第一共识节点在生成区块Ni+1这一新区块之前,需要从核心共识网络的区块链上,获取具有最大生成时间戳的区块Ni,这里的i为正整数。进一步地,该第一共识节点可以识别区块Ni中是否存在竞拍交易。若第一共识节点识别到区块Ni中存在竞拍交易,则该第一共识节点可以根据识别到的竞拍交易(即第一竞拍交易)中的节点标识(即第一节点标识),确定待生成的区块Ni+1为与第一节点标识相关联的第一类型区块(例如,独占区块),进而可以基于第一竞拍交易所指定的交易打包数量,获取第一业务节点的关联业务交易,以生成用于广播至核心共识网络中的第二共识节点的区块Ni+1。其中,由于区块Ni+1中的交易是与第一竞拍交易中的第一节点标识对应的第一业务节点相关,而不存在与其他业务节点相关联的交易,从而可以提高数据存储的安全性。此外,由于第一共识节点可以基于第一竞拍交易所指定的交易打包数量,快速将第一业务节点的关联业务交易批量性地打包至区块Ni+1,以至于减少了第一共识节点对同一业务节点的交易的共识时间,从而提高了同一业务节点的交易处理效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种区块链网络分层结构的示意图;
图2是本申请实施例提供的一种进行数据交互的场景示意图;
图3是本申请实施例提供的一种交易数据处理方法的流程示意图;
图4是本申请实施例提供的一种获取关联业务交易的场景示意图;
图5是本申请实施例提供的一种确定第二竞拍交易的场景示意图;
图6是本申请实施例提供的一种第二共识节点对新区块进行区块共识的场景示意图;
图7是本申请实施例提供的一种交易数据处理方法的流程示意图;
图8是本申请实施例提供的一种区块链电子票据场景下的系统架构图;
图9是本申请实施例提供的一种交易数据处理装置的结构示意图;
图10是本申请实施例提供的一种交易数据处理装置的结构示意图;
图11是本申请实施例提供的一种计算机设备的示意图;
图12是本申请实施例提供的一种数据处理系统的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图1,图1是本申请实施例提供的一种区块链网络分层结构的示意图。本申请实施例中的区块链网络分层结构可以为图1所示的区块链网络1W,该区块链网络1W对应的完整区块链业务体系可以由图1所示的业务网络、核心共识网络以及路由代理网络所组成。
应当理解,图1所示的路由代理网络中的代理节点的节点数量可以为一个或者多个,在此不做限定。本申请实施例以图1所示的代理节点10D为例,该代理节点10D可以用于对业务网络和核心共识网络进行网络隔离。该代理节点10D可以是独立的一个物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,在此不做限定。该代理节点10D可以将点对点(Peer To Peer,简称P2P)网络进行网络分层,以形成“业务网络—核心共识网络”这样的分层结构,进而能够提高区块链上数据的保密性和安全性。
其中,图1所示的业务网络(即见证网络)对应的区块链节点系统(即第一区块链节点系统)中可以包括一个或者多个区块链节点,这里将不对第一区块链节点系统中的节点数量进行限制。比如,第一区块链节点系统具体可以包括节点110a、节点110b、节点110c、…、节点110n。应当理解,本申请实施例可以将处于业务网络中的区块链节点称之为业务节点,该业务节点不需要参与记账共识,主要用于执行交易业务,以得到与该交易业务相关联的交易。其中,这里的业务节点可以为包含完整的区块链数据库的全量节点,也可以为存储区块链数据库中的部分数据的轻量节点,这里将不对其进行限定。为了减少业务节点的存储空间的浪费,本申请实施例中的业务节点可以以轻量节点(Simplified PaymentVerification,简称SPV)为例,该业务节点不需要存储完整的交易数据,而是通过代理节点10D,从图1所示的核心共识网络中,获得区块头数据和部分授权可见的区块数据(例如,与业务节点自身相关联的交易)。
其中,图1所示的核心共识网络对应的区块链节点系统(即第二区块链节点系统)中也可以包括一个或者多个区块链节点,这里将不对第二区块链节点系统中的节点数量进行限制。比如,第二区块链节点系统具体可以包括节点120a、节点120b、节点120c、…、节点120m。应当理解,本申请实施例可以将处于该核心共识网络中的节点称之为共识节点(即记账节点),该共识节点可以运行有区块链共识协议。
应当理解,本申请实施例可以将代理节点、业务节点以及共识节点统称为区块链网络1W中的区块链节点。其中,该区块链节点可以为接入该区块链网络1W中的服务器,也可以为接入该区块链网络1W中的用户终端,这里对区块链节点的具体形式不做限定。可以理解的是,图1所示的业务网络和核心共识网络可以处于不同的网络环境,例如,通常来说,业务节点部署在处于公网的业务网络中,而运行区块链共识协议的共识节点则部署在私有的核心共识网络中,二者可以通过路由边界进行交互。
其中,本申请实施例可以将核心共识网络中的具备出块功能的一类共识节点称之为第一共识节点,将核心共识网络中的对生成的新区块进行区块共识的一类节点统称为第二共识节点。该第一共识节点可以接收业务网络中的业务节点通过代理节点10D转发的交易,且将接收到的交易存储在该第一共识节点的节点交易池中,以等待后续基于区块链上的具有最大生成时间戳的区块,对该节点交易池中的交易进行打包处理,从而生成新区块。其中,业务网络中的业务节点可以发送三种类型的交易,具体可以包括第一类交易(例如,独占交易)、第二类交易(例如,普通交易)以及竞拍交易。这里的第一类交易是由业务网络中的业务节点生成的携带独占标识的业务交易,该第一类交易可以存储至携带独占标识的第一类型区块(例如,独占区块)。这里的第二类交易是由业务网络中的业务节点生成的未携带独占标识的业务交易,该第二类交易可以存储至携带独占标识的第一类型区块,也可以存储至未携带独占标识的第二类型区块(例如,普通区块)。这里的竞拍交易是指业务网络中的业务节点在积累了一定数量的待上链交易时,生成的用于竞拍新区块的交易。其中,同一业务节点的第一类交易的打包优先级高于第二类交易的打包优先级。
为便于理解,本申请实施例可以在图1所示的核心共识网络中选择一个共识节点(图1所示的节点120a),作为核心共识网络中的第一共识节点。该节点120a可以从核心共识网络的区块链上,获取具有最大生成时间戳的区块(例如,区块Ni),并对该区块Ni中的交易进行交易识别,以得到交易识别结果,此时,该节点120a可以根据该区块Ni的交易识别结果,生成该区块Ni的下一区块(例如,区块Ni+1),进而可以将该区块Ni+1广播至核心共识网络中的第二共识节点(例如,图1所示的节点120b),以使该节点120b对该区块Ni+1进行区块共识。
其中,若节点120a得到的交易识别结果指示区块Ni中不存在竞拍交易,则节点120a可以将待生成的区块Ni+1确定为第二类型区块(例如,普通区块),且在生成区块Ni+1时,将该区块Ni+1广播至节点120b。可选的,若节点120a所得到的交易识别结果指示区块Ni中存在竞拍交易,则节点120a可以基于识别到的竞拍交易(即第一竞拍交易)的第一节点标识,将待生成的区块Ni+1确定为与第一节点标识相关联的第一类型区块(例如,独占区块)。也就是说,该区块Ni+1为第一节点标识对应的第一业务节点竞拍到的独占区块,因此,该区块Ni+1中将会用于放置第一业务节点(例如,图1所示的业务网络中的节点110a)的关联业务交易,而并不放置业务网络中除第一业务节点之外的其他业务节点的关联业务交易,从而提高了数据存储的安全性。此外,由于节点120a可以基于第一竞拍交易所指定的交易打包数量,快速将第一业务节点的关联业务交易批量性的打包至区块Ni+1中,以至于减少了节点120a对同一业务节点的交易的共识时间,从而提高了同一业务节点的交易处理效率。
为便于理解,进一步地,请参见图2,图2是本申请实施例提供的一种进行数据交互的场景示意图。如图2所示,本申请实施例中的共识节点220A可以为核心共识网络中的具备出块功能的第一共识节点,该共识节点220A可以为上述图1所示的核心共识网络中的任意一个共识节点,例如,节点120a。本申请实施例中的共识节点220B可以为核心共识网络中的第二共识节点,该共识节点220B可以为上述图1所示的核心共识网络中的另一个共识节点,例如,节点120b。
应当理解,业务网络中的每一个业务节点均可以执行交易业务,进而可以根据交易业务的交易执行结果,生成用于广播至核心共识网络中的交易(即待广播交易)。例如,这里的交易业务可以为资产转移业务,其中,该资产转移业务可以用于转移游戏金币、游戏钻石、电子票据等虚拟资产。核心共识网络中的共识节点(例如,共识节点220A)在通过代理节点接收到业务节点发送的待广播交易(第一类交易、第二类交易或者竞拍交易)时,可以对接收到的待广播交易进行验证,进而在验证成功时,将接收到的待广播交易存储至共识节点220A的节点交易池。其中,代理节点可以用于对核心共识网络和业务网络进行网络隔离,以提高区块链上数据的保密性和安全性。
可以理解的是,业务网络中的业务节点的节点数量可以为N个,N为正整数,为便于阐述,在本申请实施例中,业务网络中的业务节点的节点数量可以以4个为例,具体可以包括业务节点210A、业务节点210B、业务节点210C以及业务节点210D。基于此,该共识节点220A的节点交易池(例如,图2所示的节点交易池2000)可以存储由这4个业务节点分别通过代理节点转发的交易。如图2所示,节点交易池2000中可以包括4个交易集合,且一个交易集合对应业务网络中的一个业务节点。例如,交易集合10g可以包括由业务网络中的业务节点210A生成的多个(例如,20个)交易,具体可以包括交易1a、交易2a、…、交易20a。交易集合20g可以包括由业务网络中的业务节点210B生成的多个(例如,30个)交易,具体可以包括交易1b、交易2b、…、交易30b。交易集合30g可以包括由业务网络中的业务节点210C生成的多个(例如,15个)交易,具体可以包括交易1c、交易2c、…、交易15c。交易集合40g可以包括由业务网络中的业务节点210D生成的多个(例如,25个)交易,具体可以包括交易1d、交易2d、…、交易25d。
其中,图2所示的区块链2q可以为共识节点220A所在核心共识网络中的每个共识节点均共享的一条相同的区块链,每个共识节点均可以在该区块链2q中获取该区块链上存储的数据信息。应当理解,该区块链2q中可以包括多个区块(以100个区块为例),具体可以包括区块1、区块2、…、区块100。
如图2所示,共识节点220A在生成新区块时,可以从图2所示的区块链2q上,获取具有最大生成时间戳的区块(例如,图2所示的区块100),进而可以对区块100中的交易进行交易识别,以确定该区块100的下一区块是否为第一类型区块(例如,携带独占标识的独占区块)。若共识节点220A识别到区块100中存在竞拍交易(例如,图2所示的竞拍交易2j),则该共识节点220A可以将区块100中的竞拍交易2j作为第一竞拍交易。进一步地,该共识节点220A可以获取竞拍交易2j中的节点标识(即第一节点标识,例如,图2所示的节点标识2s),进而可以基于该节点标识2s,将待打包的区块100的下一区块(例如,区块101)确定为与节点标识2s相关联的第一类型区块(例如,独占区块)。其中,竞拍交易2j是由节点标识2s对应的业务节点(例如,业务网络中的业务节点210A)通过代理节点转发的,这意味着待打包的区块101是业务节点210A通过位置竞拍方式竞拍到的独占区块,即共识节点220A可以快速从节点交易池2000中获取业务节点210A的关联业务交易,以批量性的打包至区块101中。
可以理解的是,该共识节点220A可以基于竞拍交易2j所指定的交易打包数量(例如,4个),从节点交易池2000中确定与业务节点210A相关联的交易集合(例如,交易集合10g)。由于交易集合10g中可以存储有由业务节点210A发送的第一类交易(例如,独占交易,即携带独占标识的业务交易)和第二类交易(例如,普通交易,即未携带独占标识的业务交易),且第一类交易的打包优先级高于第二类交易的打包优先级,因此该共识节点220A可以根据交易集合10g中的每个交易的交易打包优先级,从交易集合10g中获取该业务节点210A的关联业务交易。例如,业务节点210A获取到的业务节点210A的关联业务交易可以为从交易集合10g中筛选的交易1a、交易5a、交易8a以及交易16a。
进一步地,该共识节点220A可以根据业务节点210A的关联业务交易生成区块101,进而可以将该区块101发送至图2所示的共识节点220B,以使共识节点220B对区块101进行区块共识。其中,该区块101中可以携带独占标识,该独占标识可以标明区块101为业务节点210A竞拍到的独占区块。可以理解的是,共识节点220B在接收到携带独占标识的区块101时,可以从图2所示的区块链2q中获取区块100,进而可以对区块100中的交易进行交易识别。若共识节点220B识别到区块100中存在竞拍交易,则共识节点220B可以将该区块100中的竞拍交易(例如,竞拍交易2j)作为目标竞拍交易,且基于目标竞拍交易对接收到的区块101进行区块共识,以得到用于返回至共识节点220A的区块共识结果。可以理解的是,共识节点220A可以基于接收到的区块共识结果,将区块101作为区块100的下一区块,以写入至图2所示的区块链2q。
由此可见,核心共识网络中的共识节点220A在生成区块101这一新区块时,需要根据区块链2q上的区块100存在的竞拍交易2j,确定待生成的区块101为与竞拍交易中的节点标识2s相关联的第一类型区块。这意味着区块101为节点标识2s对应的业务节点(例如,业务节点210A)竞拍到的独占区块,那么,该区块101中的交易是指业务节点210A的关联业务交易,而不存在其他业务节点的关联业务交易,从而可以提高数据存储的安全性。进一步地,共识节点220A可以基于竞拍交易2j所指定的交易打包数量,快速从节点交易池2000中,批量性获取业务节点210A的关联业务交易,以将获取到的关联业务交易快速打包至区块101,以至于提高了同一业务节点的交易处理效率。
其中,核心共识网络中的第一共识节点根据在区块链上的区块Ni(具有最大生成时间戳的区块)中识别到的竞拍交易,生成区块Ni的下一区块(区块Ni+1,即与竞拍交易中的节点标识相关联的第一类型区块)的具体实现方式可以参见下述图3-图8所对应的实施例。
进一步地,请参见图3,图3是本申请实施例提供的一种交易数据处理方法的流程示意图。如图3所示,该方法可以由核心共识网络中的第一共识节点执行,该第一共识节点可以为接入至该核心共识网络中的服务器,也可以为接入至该核心共识网络中的用户终端,这里对第一共识节点的具体形式不做限定。其中,该第一共识节点可以为上述图1所示的核心共识网络中的任意一个共识节点,例如,节点120a。该方法至少可以包括以下步骤S101-步骤S104:
步骤S101,从核心共识网络的区块链上获取区块Ni,对区块Ni中的交易进行交易识别。
具体地,第一共识节点在生成新区块时,可以从核心共识网络的区块链上获取具有最大生成时间戳的区块(例如,区块Ni),进而可以对该区块Ni中的交易进行交易识别,以确定区块Ni是否存在竞拍交易,从而确定区块Ni下一区块(例如,区块Ni+1)为携带独占标识的区块(即第一类型区块,例如,独占区块)还是未携带独占标识的区块(即第二类型区块,例如,普通区块)。
其中,核心共识网络的区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次由业务网络中的业务节点所生成的交易,用于验证其信息的有效性(防伪)和生成下一个区块。
应当理解,处于业务网络中的每个业务节点均可以执行交易业务,以根据交易执行结果生成业务交易。这里可以以第一业务节点为例,其中,若第一业务节点需要将生成的业务交易(例如,交易1)单独存放至该第一业务节点通过位置(slot)竞拍方式竞拍到的第一类型区块,则该第一业务节点需要为该交易1赋予独占标识,此时,本申请实施例可以将赋予独占标识的交易1称之为第一业务节点的第一类交易,也就是该第一业务节点的独占交易。可选的,若第一业务节点不关注生成的业务交易(例如,交易2)被写入至区块链上的存放位置,则该第一业务节点无需为该交易2赋予独占标识,此时,本申请实施例可以将未赋予独占标识的交易2称之为第一业务节点的第二类交易,也就是该第一业务节点的普通交易。这意味着该交易2可以被写入至该第一业务节点竞拍到的独占区块,也可以被写入至该区块链上的普通区块。其中,对于同一业务节点的业务交易而言,携带独占标识的业务交易的交易打包优先级高于未携带独占标识的业务交易的打包优先级,即该第一类交易的交易打包优先级高于该第二类交易的打包优先级。
可以理解的是,业务网络中的每个业务节点均可以统计自己生成的且未被写入区块链的业务交易(即待上链交易)的交易累计数量,进而可以将该交易累计数量存储至自己的节点缓存中。应当理解,每个业务节点均可以获取与业务网络相关联的竞拍交易生成条件,进而在检测到交易累计数量达到竞拍交易生成条件中的交易累计数量阈值(例如,1000个)时,可以基于自己的节点标识、所指定的交易打包数量以及竞拍资产,生成用于竞拍第一类型区块的竞拍交易。
例如,业务网络的第一业务节点在检测到自己的节点缓存中的交易累计数量为1001时,第一业务节点可以确定交易累计数量达到该交易累计数量阈值(例如,1000个),即满足竞拍交易生成条件。此时,该第一业务节点可以基于第一业务节点的节点标识、第一业务节点指定的交易打包数量(例如,500个)以及第一业务节点确定的竞拍资产,生成用于竞拍第一类型区块的竞拍交易。其中,竞拍交易中的竞拍资产是由第一业务节点的待上链交易的等待时长所确定的,也就是说,待上链交易的等待时长越长,该第一业务节点确定的竞拍资产越小,反之,待上链交易的等待时长越短,该第一业务节点确定的竞拍资产越大。
其中,本申请实施例可以将第一业务节点生成的第一类交易、第二类交易以及竞拍交易均称之为第一业务节点的待广播交易。为了有效保证第一业务节点的待广播交易的真实性和安全性,第一业务节点在生成待广播交易后,可以基于第一业务节点的节点私钥,对待广播交易进行签名处理,以得到签名信息。进一步地,该第一业务节点可以将生成的待广播交易以及签名信息一并发送至具有路由服务的代理节点,以使代理节点可以对第一业务节点进行权限验证(例如,签名信息的验证、第一业务节点的合法性验证以及待广播交易的交易格式验证等),以得到权限验证结果。若权限验证结果为非法验证结果,则代理节点可以确定该第一业务节点为非法节点,此时,代理节点无需将第一业务节点的待广播交易转发至核心共识网络。可选的,若权限验证结果为合法验证结果,则代理节点可以确定该第一业务节点为合法节点,此时,代理节点可以将携带签名信息的待广播交易广播至核心共识网络,以等待核心共识网络中的共识节点将其进行上链。其中,为了提高待广播交易在转发至核心共识网络时的数据安全性,该代理节点还可以获取核心共识网络的系统公钥,对待广播交易以及签名信息一并进行加密处理,以得到加密数据信息,进而可以将加密数据信息广播至核心共识网络中的共识节点(例如,第一共识节点),以使第一共识节点基于核心共识网络的系统私钥,对加密数据信息进行解密处理,从而得到第一业务节点的待广播交易,以及待广播交易的签名信息。
第一共识节点在获取到待广播交易以及待广播交易的签名信息时,可以对待广播交易进行验证。这里的交易验证可以包括余额验证、双重支付判断等。例如,在电子票据场景下,该待广播交易可以为业务节点A(即第一业务节点)在向业务节点B(即业务网络中的第二业务节点)转移一张电子票据时所生成的。那么,该第一共识节点需要在核心共识网络中的区块链中查找该电子票据的历史交易信息,如,判断业务节点A的账户是否存在这一张电子票据、业务节点A和业务节点B的账户是否有误、业务节点A所拥有的这张电子票据的来源等等。
在验证失败时,该第一共识节点可以确定该待广播交易为非法交易,进而可以向该第一业务节点发送上链失败通知,以通知第一业务节点该待广播交易未能成功写入区块链。在验证成功时,第一共识节点可以将携带签名信息的待广播交易添加至该第一共识节点的节点交易池(例如,图2所示的节点交易池2000),以便后续进行打包处理得到新区块。
步骤S102,若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为第一竞拍交易,且基于第一竞拍交易中的第一节点标识,将待打包的区块Ni+1确定为与第一节点标识相关联的第一类型区块。
具体地,若第一共识节点识别到区块Ni中存在竞拍交易,则该第一共识节点可以将区块Ni中的竞拍交易作为第一竞拍交易,进而可以获取第一竞拍交易中的节点标识。其中,本申请实施例可以将第一共识节点在区块Ni中识别到的竞拍交易的节点标识称之为第一节点标识。进一步地,该第一共识节点可以获取核心共识网络所在的区块链网络所维护的节点标识列表,进而可以基于该节点标识列表,查找与第一节点标识相匹配的业务节点,且将查找到的业务节点作为第一业务节点。此时,该第一共识节点可以将待打包的区块Ni+1确定为与第一业务节点相关联的第一类型区块(即携带独占标识的区块,且该独占标识可以表明区块Ni+1为第一业务节点竞拍到的独占区块)。
其中,核心共识网络所在的区块链网络(例如,图1所示的区块链网络1W)中的每个区块链节点均具有与其对应的节点标识,而且每个区块链节点均可以存储有区块链节点系统中的其他区块链节点的节点标识,以便后续根据其他区块链节点的节点标识,将生成的区块广播至区块链网络中的其他区块链节点。其中,每个区块链节点可以维护一个如下表所示的节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为IP(Internet Protocol,网络之间互联的协议)地址以及其他任一种能够用于标识该节点的信息,表1中的节点标识可以以IP地址为例进行说明。为便于理解,进一步地,请参见表1,表1是本申请实施例提供的一种节点标识列表。如表1所示:
表1
其中,表1所示的节点标识列表可以为图1所示的区块链网络所维护的节点标识列表。该表1中可以包括三种类型的区块链节点,具体可以包括处于业务网络中的业务节点、处于核心共识网络中的共识节点、以及处于路由代理网络的代理节点。其中,业务网络、核心共识网络以及路由代理网络这三个子网络包括的节点数量可以为一个或者多个,这里不对其进行限定。
比如,核心共识网络中的第一共识节点从区块Ni中的第一竞拍交易中获取到的第一节点标识可以为节点标识s(例如,该节点标识s可以为“117.114.161.174”),此时,该第一共识节点可以在上述表1所示的节点标识列表中,查找与节点标识s相匹配的业务节点。当第一共识节点在表1中查找到与节点标识s相匹配的业务节点(例如,业务节点110a)时,该第一共识节点可以将查找到的业务节点110a作为第一业务节点。进一步地,该第一共识节点可以将待打包的区块Ni+1确定为与业务节点110a相关联的第一类型区块,即区块Ni+1为业务节点110a竞拍到的独占区块。
步骤S103,基于第一竞拍交易所指定的交易打包数量,获取第一业务节点的关联业务交易。
其中,第一共识节点的节点交易池中可以包括第一业务节点的第一类交易以及第一业务节点的第二类交易。具体地,第一共识节点可以获取第一竞拍交易所指定的交易打包数量,这里的交易打包数量用于指示区块Ni+1所容纳的第一业务节点的业务交易的最大交易数量。进一步地,由于第一业务节点的第一类交易的打包优先级高于第一业务节点的第二类交易的打包优先级,因此,该第一共识节点可以在节点交易池中,基于第一类交易的打包优先级,优先统计第一业务节点的第一类交易的第一关键交易数量。应当理解,若统计到的第一关键交易数量大于或者等于该交易打包数量,则该第一共识节点可以从节点交易池中,获取与交易打包数量相符的第一业务节点的第一类交易,进而可以将获取到的第一类交易作为该第一业务节点的关联业务交易。可选的,若统计到的第一关键交易数量小于该交易打包数量,则该第一共识节点可以从节点交易池中,获取与统计到的第一关键交易数量相符的第一业务节点的第一类交易。进一步地,该第一共识节点可以确定交易打包数量与统计到的第一关键交易数量之间的数量差值,进而可以将数量差值确定为待添加数量,且在节点交易池中,再次统计第一业务节点的第二类交易的第二关键交易数量。在统计到的第二关键交易数量大于或者等于待添加数量时,该第一共识节点可以从节点交易池中,获取与待添加数量相符的第一业务节点的第二类交易。此时,该第一共识节点可以将获取到的第一类交易以及获取到的第二类交易作为第一业务节点的关联业务交易。
为便于理解,进一步地,请参见图4,图4是本申请实施例提供的一种获取关联业务交易的场景示意图。如图4所示,本申请实施例中的节点交易池4000可以为核心共识网络中的第一共识节点的节点交易池,该节点交易池4000中可以包括业务网络中的每个业务节点的业务交易。例如,该节点交易池4000中可以包括第一业务节点的第一类交易(例如,独占交易)以及第一业务节点的第二类交易(例如,普通交易),其中,该第一业务节点可以为第一竞拍交易中的第一节点标识对应的业务节点。在电子票据场景中,该第一业务节点可以为区域A对应的税局节点,例如,该税局节点可以为XX省税局对应的计算机设备。
其中,图4所示的区域41L可以包括第一业务节点的独占交易,具体可以包括独占交易1、独占交易2、…、独占交易x。图4所示的区域42L可以包括该第一业务节点的普通交易,具体可以包括普通交易1、普通交易2、…、普通交易y。
可以理解的是,第一共识节点在获取第一业务节点的关联业务交易之前,需要从识别到的第一竞拍交易中,获取第一竞拍交易所指定的交易打包数量K(例如,1000个),其中,这里的交易打包数量K可以用于指示第一共识节点从节点交易池4000中能够获取到的第一业务节点的业务交易的最大交易数量。
其中,由于第一业务节点的第一类交易的打包优先级高于第一业务节点的第二类交易的打包优先级。换言之,第一业务节点的独占交易的打包优先级高于第一业务节点的普通交易的打包优先级,因此,该第一共识节点需要在节点交易池4000中,先统计第一业务节点的独占交易的第一关键交易数量(例如,图4所示的第一关键交易数量H1),进而可以判断第一关键交易数量H1是否小于第一竞拍交易所指定的交易打包数量K,再根据判断后得到的判断结果,来确定第一共识节点是否需要获取第一业务节点的普通交易。
应当理解,若第一共识节点统计到的第一关键交易数量H1(例如,1500个)大于或者等于该交易打包数量K(例如,1000个),则该第一共识节点可以从节点交易池4000中,获取与交易打包数量K相符的第一业务节点的独占交易,即从1500个独占交易中获取1000个的第一业务节点的独占交易。进一步地,该第一共识节点可以将获取到的所有独占交易作为该第一业务节点的关联业务交易。
可选的,若第一共识节点统计到的第一关键交易数量H1(例如,800个)小于该交易打包数量K(例如,1000个),则该第一共识节点可以从节点交易池4000中,获取与统计到的第一关键交易数量H1相符的第一业务节点的独占交易,即从节点交易池4000中获取800个第一业务节点的独占交易,也就是说第一共识节点能够从节点交易池4000中获取到第一业务节点的所有独占交易。进一步地,该第一共识节点需要确定交易打包数量K与统计到的第一关键交易数量H1之间的数量差值,进而可以将数量差值确定为待添加数量(例如,200)。此时,该第一共识节点可以在节点交易池4000中,统计第一业务节点的普通交易的第二关键交易数量(例如,H2)。
应当理解,在统计到的第二关键交易数量H2(例如,500个)大于或者等于待添加数量(例如,200个)时,该第一共识节点可以从节点交易池4000中,获取与待添加数量相符的第一业务节点的普通交易,即该第一共识节点可以从节点交易池4000中的500个第一业务节点的普通交易中,筛选出200个第一业务节点的普通交易。可选的,在统计到的第二关键交易数量H2(例如,50个)小于待添加数量(例如,200个)时,该第一共识节点可以从节点交易池4000中,获取与统计到的第二关键交易数量H2相符的第一业务节点的普通交易,即该第一共识节点可以从节点交易池4000中获取50个第一业务节点的普通交易,也就是说第一共识节点能够从节点交易池4000中获取到第一业务节点的所有普通交易。此时,该第一共识节点可以将获取到的独占交易以及获取到的普通交易作为第一业务节点的关联业务交易。
步骤S104,根据关联业务交易生成区块Ni+1,将区块Ni+1广播至核心共识网络中的第二共识节点,以使第二共识节点对区块Ni+1进行区块共识。
具体地,该第一共识节点在获取到关联业务交易之后,可以基于区块链上的智能合约,针对第一竞拍交易生成竞拍资产转移交易。进一步地,该第一共识节点可以获取与核心共识网络相关联的竞拍交易打包条件,进而可以基于关联业务交易、竞拍资产转移交易以及竞拍交易打包条件,确定用于打包至区块Ni+1中的待处理交易。此时,该第一共识节点可以对待处理交易进行打包处理得到区块Ni+1,并将区块Ni+1广播至核心共识网络中的第二共识节点。
应当理解,该第一共识节点在获取到关联业务交易之后,可以获取第一竞拍交易中的竞拍资产,进而需要获取区块链上的智能合约,以根据该智能合约,确定第一业务节点是否具有大于或者等于该竞拍资产的账户余额。若该第一业务节点具有大于或者等于该竞拍资产的账户余额,则该第一共识节点可以针对第一竞拍交易生成竞拍资产转移交易,以便后续打包至区块Ni+1。
可以理解的是,由于合约变更、全局链上配置更新等交易,需要存储至区块链上的第二类型区块(例如,未携带独占标识的普通区块),因此,本申请实施例可以设定一个竞拍交易打包条件,以解决由于节点交易池中竞拍交易的存在,使得区块链上的合约变更、全局链上配置更新等交易无法及时写入区块链的问题。其中,本申请实施例中的该竞拍交易打包条件,可以指示在连续出现一定区块数量阈值(例如,20)的第一类型区块(即携带独占标识的区块)时,限定下一个区块为第二类型区块(例如,未携带独占标识的区块)。基于此,该第一共识节点在基于第一业务节点的关联业务交易生成区块Ni+1时,不仅需要增加一个针对第一竞拍交易的竞拍资产转移交易,还需确定是否需要打包新的竞拍交易,以指示区块Ni+1的下一区块是否为携带独占标识的区块。
应当理解,该第一共识节点可以在区块链上,获取与核心共识网络相关联的竞拍交易打包条件。其中,该竞拍交易打包条件包括与第一类型区块相关联的连续区块数量阈值(例如,20)。应当理解,该第一共识节点可以将区块Ni作为遍历起始区块,进而可以基于区块链所指示的遍历索引方向以及遍历起始区块,统计区块链上连续出现第一类型区块的区块数量。
若统计到的区块数量(例如,20)达到连续区块数量阈值,则该第一共识节点可以确定区块Ni+1不满足竞拍交易打包条件,此时,该第一共识节点可以将关联业务交易以及竞拍资产转移交易作为用于打包至区块Ni+1中的待处理交易。
可选的,若统计到的区块数量(例如,15)未达到连续区块数量阈值,则该第一共识节点可以确定区块Ni+1满足竞拍交易打包条件,此时,该第一共识节点可以基于第一共识节点的节点交易池中的竞拍交易,筛选用于打包至区块Ni+1的第二竞拍交易,进而可以将第一业务节点的关联业务交易、针对第一竞拍交易生成的竞拍资产转移交易以及筛选出的第二竞拍交易作为用于打包至区块Ni+1中的待处理交易。其中,该第二竞拍交易可以用于指示区块Ni+1的下一区块为与业务网络中的第二业务节点相关联的第一类型区块;该第二业务节点可以为第二竞拍交易中的第二节点标识对应的业务节点。其中,这里的第二业务节点可以与第一业务节点相同,也可以与第一业务节点不同,在此不做限定。换言之,在某一业务节点的业务交易急需上链,写入全网账本时,该核心共识网络的区块链上可以连续出现同一业务节点竞拍到的第一类型区块(例如,独占区块)。
其中,第一共识节点在筛选第二竞拍交易时,可以获取第一共识节点的节点交易池中存储的X个竞拍交易,进而可以确定X个竞拍交易中的每个竞拍交易的竞拍资产。其中,这里的X个竞拍交易是由业务网络中的业务节点通过代理节点转发的,X为正整数。进一步地,该第一共识节点可以基于每个竞拍交易的竞拍资产,从X个竞拍交易中筛选出具有最大竞拍资产的竞拍交易,进而可以将筛选出的竞拍交易作为待验证竞拍交易。此时,该第一共识节点可以对待验证竞拍交易进行交易验证,以得到交易验证结果。
可以理解的是,第一共识节点对待验证竞拍交易进行交易验证的过程中,可以验证待验证竞拍交易的交易签名信息以及与该待验证竞拍交易相关联的第二业务节点是否具有竞拍资格。应当理解,待验证竞拍交易中的第二节点标识对应的第二业务节点在生成该待验证竞拍交易之后,为了确保待验证竞拍交易在数据传输的真实性和安全性,该第二业务节点可以基于第二业务节点的节点私钥,对待验证竞拍交易进行签名处理,以得到待验证竞拍交易对应的交易签名信息。在第一共识节点对待验证竞拍交易进行交易验证时,可以先获取待验证竞拍交易对应的交易签名信息,进而可以获取第二业务节点的节点公钥,基于节点公钥对交易签名信息进行验证,以得到签名验证结果。在签名验证结果指示验证成功时,该第一共识节点可以基于智能合约以及与业务网络相关联的非法节点列表,确定第二业务节点的合法性,进而可以基于第二业务节点的合法性,确定待验证竞拍交易的交易验证结果。
在待验证竞拍交易的交易验证结果指示验证成功时,该第一共识节点可以将待验证竞拍交易作为用于打包至区块Ni+1的第二竞拍交易。可选的,在待验证竞拍交易的交易验证结果指示验证失败时,该第一共识节点可以重新在节点交易池中筛选另一竞拍交易,以作为新的待验证竞拍交易,直到新的待验证竞拍交易的交易验证结果指示验证成功时,可以将新的待验证竞拍交易作为用于打包至区块Ni+1的第二竞拍交易。
为便于理解,进一步地,请参见图5,图5是本申请实施例提供的一种确定第二竞拍交易的场景示意图。如图5所示,本申请实施例中的业务节点510B可以为业务网络中的第二业务节点,该业务节点510B可以为上述图1所示的业务网络中的任意一个业务节点,例如,节点110b。本申请实施例中的共识节点520A可以为核心共识网络中的第一共识节点,该共识节点520A可以为上述图1所示的核心共识网络中的任意一个共识节点,例如,节点120a。本申请实施例中的代理节点50D可以用于对业务网络和核心共识网络进行网络隔离,该代理节点50D可以为上述图1所示的代理节点10D。
应当理解,业务网络中的业务节点510B在检测到自己的节点缓存中的交易累计数量满足竞拍交易生成条件时,可以生成图5所示的竞拍交易52j。其中,业务节点510B生成竞拍交易52j的具体实施方式可以参见上述业务网络中的业务节点生成竞拍交易的具体实施方式,这里将不再继续进行赘述。为了有效确保竞拍交易52j在数据传输的真实性和安全性,该业务节点510B可以基于业务节点510B的节点私钥,对竞拍交易52j进行签名处理,以得到交易签名信息,进而可以将携带交易签名信息的竞拍交易52j发送至图5所示的代理节点50D。其中,可以理解的是,该业务节点510B可以获取针对竞拍交易52j的哈希计算规则,该哈希计算规则可以为该业务节点510B与业务网络所在的区块链网络中的其他区块链节点提前约定好的摘要算法。因此,该业务节点510B可以基于该哈希计算规则对该竞拍交易52j进行哈希计算,以得到竞拍交易52j的摘要信息。其中,本申请实施例可以将业务节点510B确定的竞拍交易52j的摘要信息称之为第一摘要信息。进一步地,该业务节点510B可以基于该业务节点510B的节点私钥,对该第一摘要信息进行签名处理,从而可以得到图5所示的交易签名信息。
可以理解的是,该代理节点50D可以对接收到的携带交易签名信息的竞拍交易52j进行验证,在验证成功时,可以将携带交易签名信息的竞拍交易52j转发至核心共识网络中的共识节点520A。在共识节点520A成功验证该携带交易签名信息的竞拍交易52j时,该共识节点520A可以将携带交易签名信息的竞拍交易52j存储至图5所示的节点交易池5000。
其中,图5所示的节点交易池5000中可以包括业务网络中的多个业务节点发送的竞拍交易。为便于阐述,本申请实施例中的业务节点510B所在业务网络中的业务节点的节点数量可以以4个为例,具体可以包括业务节点510A、业务节点510B、业务节点510C以及业务节点510D。比如,竞拍交易51j可以为业务网络中的业务节点510A所生成的,竞拍交易53j可以为业务网络中的业务节点510C所生成的,竞拍交易54j可以为业务网络中的业务节点510D所生成的。
可以理解的是,在共识节点520A统计到区块链上的连续出现第一类型区块的区块数量(例如,18)未达到连续区块数量阈值(例如,20)时,共识节点520A可以确定待生成的区块Ni+1满足竞拍交易打包条件。此时,该共识节点520A可以获取节点交易池5000存储的这4个竞拍交易,并确定每个竞拍交易的竞拍资产。例如,图5所示的竞拍交易51j的竞拍资产51z可以为10个游戏币,竞拍交易52j的竞拍资产52z可以为30个游戏币,竞拍交易53j的竞拍资产53z可以为19个游戏币,竞拍交易54j的竞拍资产54z可以为21个游戏币。
进一步地,该共识节点520A可以基于每个竞拍交易的竞拍资产,从这4个竞拍交易中筛选出具有最大竞拍资产的竞拍交易,进而可以将筛选出的竞拍交易作为待验证竞拍交易(例如,图5所示的竞拍交易52j)。此时,该共识节点520A可以对筛选出的竞拍交易52j进行交易验证,以得到竞拍交易52j的交易验证结果。
其中,该共识节点520A可以先获取竞拍交易52j对应的交易签名信息,进而可以获取业务节点510B的节点公钥,基于业务节点510B的节点公钥对交易签名信息进行验证,以得到签名验证结果。其中,可以理解的是,共识节点520A可以获取业务节点510B的节点公钥,进而可以基于该业务节点510B的节点公钥对交易签名信息进行验证,以得到竞拍交易52j的第一摘要信息。与此同时,该共识节点520A还可以获取与业务节点510B相同的哈希计算规则,对竞拍交易52j进行哈希计算,从而可以得到该竞拍交易52j的摘要信息。其中,本申请实施例可以将共识节点520A确定的竞拍交易52j的摘要信息称之为第二摘要信息。
此时,该共识节点520A可以将第一摘要信息与第二摘要信息进行比对,得到签名验签结果,以确定该竞拍交易52j是否被篡改。可以理解的是,若第一摘要信息与第二摘要信息不相同,则该共识节点520A可以确定签名验证指示验证失败,这意味着竞拍交易52j可能被篡改。此时,该共识节点520A可以重新在节点交易池5000中筛选另一竞拍交易,以作为新的待验证竞拍交易,直到新的待验证竞拍交易的交易验证结果指示验证成功时,可以将新的待验证竞拍交易作为用于打包至区块Ni+1的第二竞拍交易。
可选的,若第一摘要信息与第二摘要信息相同,则该共识节点520A可以确定签名验证结果指示验证成功,这意味着竞拍交易52j未发生篡改,且该竞拍交易52j确实是由业务节点510B发送的。此时,该共识节点520A可以基于区块链上的智能合约,确定业务节点520B是否具有竞拍资格。比如,在电子票据场景中,该智能合约可以规定具有管理权限的业务节点具备竞拍资格。其中,这里的管理权限可以是指具有省、市、区等区域属性的业务节点所具备的权限,也可以是游戏场景中某一游戏阵营中的团长所具备的权限,这里将不对其进行限定。此外,该共识节点520A还可以获取与业务网络相关联的非法节点列表,确定业务节点510B的合法性,进而可以基于业务节点510B的合法性,确定竞拍交易52j的交易验证结果。这里的非法节点列表可以是指代理节点50D存储的黑名单列表,该非法节点列表中的非法节点标识所对应的非法节点可以包括检测到的恶意节点、被他人举报的节点,在某一时间段发送交易频率异常的节点等。
其中,在交易验证结果指示业务节点510B具备竞拍资格,且业务节点510B具备合法性时,该共识节点520A可以确定交易验证交易指示验证成功,此时,该共识节点520A可以将竞拍交易52j作为用于打包至区块Ni+1的第二竞拍交易。可选的,在交易验证结果指示业务节点510B不具备竞拍资格,或者业务节点510B不具备合法性时,该共识节点520A可以确定交易验证交易指示验证失败,此时,该共识节点520A可以重新在节点交易池5000中筛选另一竞拍交易,以作为新的待验证竞拍交易,直到新的待验证竞拍交易的交易验证结果指示验证成功时,可以将新的待验证竞拍交易作为用于打包至区块Ni+1的第二竞拍交易。
应当理解,第一共识节点确定的用于打包至区块Ni+1中的待处理交易可以包括第一共识节点在节点交易池中确定的第一业务节点的关联业务交易、针对区块Ni中的第一竞拍交易生成的竞拍资产转移交易、以及第一共识节点从节点交易池中筛选出的第二竞拍交易。可以理解的是,该第一共识节点可以对确定的待处理交易进行打包处理,以得到用于广播至核心共识网络中的第二共识节点的区块Ni+1(例如,图2所示的区块101),以使第二共识节点对接收到的区块Ni+1进行区块共识,进而可以得到区块共识结果。
其中,第二共识节点在对接收到区块Ni+1进行区块共识时,可以确定区块Ni+1是否携带独占标识。当该第二共识节点接收到的区块Ni+1为第一类型区块(例如,携带独占标识的区块)时,该第二共识节点可以从核心共识网络中的区块链上获取具有最大生成时间戳的区块Ni,进而可以对区块Ni中的交易进行交易识别。若第二共识节点识别到区块Ni中存在竞拍交易,则第二共识节点可以将区块Ni中的竞拍交易作为目标竞拍交易,进而可以基于该目标竞拍交易,对区块Ni+1进行区块共识,以得到用于向第一共识节点返回的区块共识结果。
其中,可以理解的是,若第二共识节点识别到区块Ni中存在竞拍交易,则第二共识节点可以将区块Ni中的竞拍交易作为目标竞拍交易。其中,该目标竞拍交易可以包括目标节点标识以及目标打包数量。进一步地,该第二共识节点可以统计区块Ni+1中的目标节点标识对应的关联业务交易的业务交易数量,且将统计到的业务交易数量与目标打包数量进行比对,以得到比对结果。与此同时,该第二共识节点还可以将目标节点标识与区块Ni+1的关联业务交易中的每个交易分别进行匹配,以得到匹配结果。进一步地,该第二共识节点可以基于比对结果以及匹配结果,确定用于向第一共识节点返回的区块共识结果。
为便于理解,进一步地,请参见图6,图6是本申请实施例提供的一种第二共识节点对新区块进行区块共识的场景示意图。如图6所示,本申请实施例中的共识节点620A可以为核心共识网络中的具备出块功能的第一共识节点,该共识节点620A可以为上述图1所示的核心共识网络中的任意一个共识节点,例如,节点120a。本申请实施例中的共识节点620B可以为核心共识网络中的第二共识节点,该共识节点620B可以为上述图1所示的核心共识网络中的另一共识节点,例如,节点120b。
如图6所示,共识节点620A在从共识节点620A的节点交易池中确定出待处理交易之后,可以对该待处理交易进行打包处理,以得到区块Ni的下一区块(例如,图6所示的区块101)。其中,该区块101可以携带有独占标识,该独占标识可以表明区块101为业务网络中的第一业务节点竞拍到的独占区块。进一步地,该共识节点620A可以将该携带独占标识的区块101广播至图6所示的共识节点620B。
共识节点620B在接收到携带独占标识的区块101时,可以确定该区块101为第一业务节点竞拍到的独占区块,此时,该共识节点620B可以从核心共识网络中的区块链(例如,区块链6q)中获取具有最大生成时间戳的区块(例如,区块100)。进一步地,该共识节点620B可以对区块100中的交易进行交易识别,以确定区块100中是否存在竞拍交易。
若共识节点620B识别到区块100中不存在竞拍交易,此时该第二共识节点可以确定区块101共识失败,即得到区块101的共识失败结果,进而可以将该共识失败结果作为用于返回至图6所示的共识节点620A的区块共识结果。
可选的,若共识节点620B识别到区块100中存在竞拍交易,则共识节点620B可以获取区块100中的竞拍交易(例如,图6所示的竞拍交易6j),进而可以将获取到的竞拍交易6j作为目标竞拍交易。其中,该竞拍交易6j可以包括目标节点标识(例如,节点标识“117.114.161.174”)以及目标打包数量(例如,1000个)。进一步地,该共识节点620B可以统计区块101中的目标节点标识对应的关联业务交易的业务交易数量,且将统计到的业务交易数量与目标打包数量进行比对,以得到比对结果。与此同时,该共识节点620B还可以将目标节点标识与区块101的关联业务交易中的每个交易分别进行匹配,以得到匹配结果。
若比对结果指示统计到的业务交易数量(例如,900个)小于或者等于目标打包数量(例如,1000),且匹配结果指示区块101中的每个交易均是该目标节点标识对应的交易,则该共识节点620B可以确定区块101共识成功,即得到区块101的共识成功结果,进而可以将该共识成功结果作为用于返回至图6所示的共识节点620A的区块共识结果。可选的,若比对结果指示统计到的业务交易数量(例如,1010个)大于目标打包数量(例如,1000个),或者匹配结果指示区块101中存在除目标节点标识之外的其他节点标识对应的交易,则该共识节点620B可以确定区块101共识失败,即得到区块101的共识失败结果,进而可以将该共识失败结果作为用于返回至图6所示的共识节点620A的区块共识结果。
应当理解,该第一共识节点可以接收第二共识节点返回的区块共识结果,进而可以对接收到的区块共识结果进行结果分析,若区块共识结果中存在超过共识阈值(例如,1/2或者2/3)的区块共识结果指示共识成功,则第一共识节点可以确定核心共识网络中的共识节点达成共识,进而可以将区块Ni+1写入核心共识网络中的区块链(例如,图6所示的区块链6q),也就是将Ni+1作为区块Ni的下一区块,从而可以快速将第一业务节点的关联业务交易批量性的写入区块链,以至于提高第一业务节点的交易处理效率。此外,由于区块Ni+1并不存在业务网络中的其他业务节点的业务交易,进而可以提高数据存储的安全性。
进一步地,请参见图7,图7是本申请实施例提供的一种交易数据处理方法的流程示意图。如图7所示,该方法可以由核心共识网络中的第一共识节点执行,该第一共识节点可以为接入至该核心共识网络中的服务器,也可以为接入至该核心共识网络中的用户终端,这里对第一共识节点的具体形式不做限定。其中,该第一共识节点可以为上述图1所示的核心共识网络中的任意一个共识节点,例如,节点120a。该方法至少可以包括以下步骤S201-步骤S207:
步骤S201,从核心共识网络的区块链上获取区块Ni,对区块Ni中的交易进行交易识别。
步骤S202,若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为第一竞拍交易,且基于第一竞拍交易中的第一节点标识,将待打包的区块Ni+1确定为与第一节点标识相关联的第一类型区块。
步骤S203,基于第一竞拍交易所指定的交易打包数量,获取第一业务节点的关联业务交易。
步骤S204,根据关联业务交易生成区块Ni+1,将区块Ni+1广播至核心共识网络中的第二共识节点,以使第二共识节点对区块Ni+1进行区块共识。
其中,该第一共识节点根据关联业务交易生成的区块Ni+1可以携带独占标识,且该独占标识可以用于标明该区块Ni+1为第一业务节点竞拍到的独占区块。本申请实施例可以将第二共识节点对携带独占标识的区块Ni+1进行区块共识后得到的区块共识结果称之为第一区块共识结果。
其中,该步骤S201-步骤S204的具体实施方式可参见上述图3所对应实施例中对步骤S101-步骤S104的描述,这里将不再赘述。
步骤S205,若识别到区块Ni中不存在竞拍交易,则将待打包的区块Ni+1确定为第二类型区块。
具体地,若第一共识节点识别到区块Ni中不存在竞拍交易,则第一共识节点可以将待打包的区块Ni+1确定为第二类型区块(即未携带独占标识的区块,例如,普通区块)。
步骤S206,从第一共识节点的节点交易池中,获取业务网络中的业务节点通过代理节点发送的第二类交易。
具体地,该第一共识节点可以从第一共识节点的节点交易池中,获取每个属于第二类交易(例如,普通交易)的交易打包资产,进而可以基于获取到的交易打包资产,从节点交易池中获取用于打包至区块Ni+1的交易。
步骤S207,根据获取到的第二类交易,生成区块Ni+1,将区块Ni+1广播至核心共识网络中的第二共识节点,以使第二共识节点对区块Ni+1进行区块共识。
具体地,该第一共识节点可以从节点交易池中筛选出用于打包至区块Ni+1的竞拍交易(即第三竞拍交易)。其中,第一共识节点筛选第三竞拍交易的具体实施方式可以参见上述第一共识节点筛选出第二竞拍交易的具体实施方式,这里将不对其进行赘述。进一步地,该第一共识节点可以将获取到的第二类交易以及筛选出的第三竞拍交易,确定为待处理交易,进而可以对确定出的待处理交易进行打包处理,以得到区块Ni+1,进一步地,该第一共识节点可以将生成的未携带独占标识的区块Ni+1广播至核心共识网络中的第二共识节点,以使该第二共识节点对未携带独占标识的区块Ni+1进行区块共识,以得到用于返回至第一共识节点的区块共识结果。其中,本申请实施例可以将第二共识节点对未携带独占标识的区块Ni+1进行区块共识后得到的区块共识结果称之为第二区块共识结果。
应当理解,该第二共识节点对未携带独占标识的区块Ni+1进行区块共识时,可以采用共识算法(例如,Paxos算法)对未携带独占标识的区块Ni+1进行区块验证,以得到投票结果,并将该投票结果广播至核心共识网络中的其他共识节点。此时,该核心共识网络中的每个共识节点均可以收集到第二共识节点对未携带独占标识的区块Ni+1进行区块验证后所得到的投票结果,且在收集到一定数量(例如,2/3)的投票结果时,可以确定未携带独占标识的区块Ni+1被确认,进而可以生成第二区块共识结果。例如,在第一共识节点收集到第二区块共识结果指示存在2/3个第二区块共识结果指示共识成功时,该第一共识节点可以确定核心共识网络中的共识节点达成共识,进而可以将未携带独占标识的区块Ni+1作为区块Ni的下一区块,以写入至核心共识网络中的区块链。
其中,该Paxos算法是一种两阶段算法,主要有三类角色,具体可以包括用于提起议案的提议发起者(proposer)、用于确定同意或者拒绝的提议接收者(acceptor)、用于被动接收已达成共识的学习者(learner)。其中,该核心共识网络中的每一个共识节点均可以同时担任着三个角色中的多个角色,这里将不对其进行详细阐述。
为便于理解,进一步地,请参见图8,图8是本申请实施例提供的一种区块链电子票据场景下的系统架构图。如图8所示,本申请实施例中的业务网络、路由代理网络以及核心共识网络组成了整个完整区块链业务体系。图8所示的核心链可以为核心共识网络所维护的包括完整区块数据的区块链。
可以理解的是,当区块链被用于政府(例如,税务系统)或者商业机构的一些场景中,为了提高数据的保密性和安全性,在区块链体系中涉及个人隐私或者国家安全等相关数据时,可以采用本申请实施例中的“业务网络—核心共识网络”这一分层区块链结构。
其中,该系统架构图可以应用于电子票据的流转过程,具体可以包括电子票据的申领、电子票据的开具、电子票据的报销、电子票据的报税等过程。其中,电子票据的开具也叫电子票据的生成过程。由于整个电子票据的流转过程将涉及到监管机构、开票方、报销方和报税方。因此,图8所示的业务网络中的业务节点可以包括电子税局对应的终端设备、企业用户对应的终端设备以及消费用户对应的终端设备。其中,电子税局可以是指监管专网中的监管机构(例如,省、市、区等税局对应的计算机设备),企业用户可以为公有云中的开票服务商、报销服务商或者零售企业(例如,KA企业,即大型零售客户和重点零售客户企业)等,消费用户可以为私有云中的支付服务商、流转服务商或者零售企业等。其中,业务网络中的业务节点可在执行交易业务的过程中,生成三种类型的待广播交易,具体可以包括携带独占标识的业务交易(即第一类交易)、未携带独占标识的业务交易(即第二类交易)以及用于竞拍第一类型区块(例如,独占区块)的竞拍交易。
其中,路由代理网络中的代理节点可以用于对业务网络和核心共识网络进行网络隔离,代理节点可以具有点对点服务(即P2P服务)、路由服务、证书缓存、认证服务。可以理解的是,点对点服务是指在P2P网络中的服务,基于一类特定的网络协议,P2P网络中的网络节点之间不需要一个中心节点来维护网络状态,而是每个节点通过和相邻节点的广播交互来维护全网的节点状态或者是其相邻节点连接状态。路由服务是节点的基本功能,可以用于节点之间的通信,以对业务网络和核心共识网络进行网络隔离。证书缓存用于缓存各节点的身份证书,其中,这里的证书可以指公钥证书体系(Public Key Infrastructure,PKI),在证书体系中,证书是一个公钥拥有者的身份证明,由权威机构进行颁发(CA)。基于公钥证书体系可以实现非对称加密和对于信息的数字签名。这里的公钥证书体系可以包括公私钥密码,x509证书,CA证书签发中心等等。认证服务可以用于对业务网络中的业务节点进行身份验证等。可以理解的是,在本申请实施例中,该代理节点可以将业务网络中的业务节点发送的交易转发至核心共识网络,以使核心共识网络中的共识节点将其写入区块链。
其中,核心共识网络中的共识节点(即记账节点)可以为税务专网中的可信节点,可以通过调用权限合约(例如,智能合约),以确定生成竞拍交易的业务节点是否具备竞拍资格。这里的权限合约还存储了关于电子票据的整个生命周期的流转逻辑,比如电子票据的票据状态、流转流程、数据的访问权限、电子票据申领条件、电子票据开具条件等等。可以理解的是,每个共识节点均可以接收由代理节点转发的待广播交易,且对该待广播交易进行验证,在验证成功时,可以将待广播交易存储至共识节点的节点交易池(即图8所示的缓存)中。该核心共识网络中的共识节点(例如,第一共识节点)可以对区块链上具有最大生成时间戳的区块Ni中的交易进行交易识别,以确定区块Ni中是否存在用于竞拍第一类型区块的竞拍交易。若区块Ni中存在竞拍交易(即第一竞拍交易),则第一共识节点可以基于第一竞拍交易中的第一节点标识,确定待生成的区块Ni+1为第一节点标识对应的第一业务节点竞拍到的第一类型区块(例如,携带独占标识的区块),进而可以基于第一竞拍交易中的交易打包数量,从第一共识节点的节点交易池中,快速获取第一业务节点的关联业务交易,以批量性的打包至区块Ni+1,从而提升对同一业务节点的交易处理效率。此外,由于新生成的区块Ni+1中并不存在其他业务节点的关联业务交易,进而可以更好的隔离不同业务节点的交易,实现更好的隐私保护,以至于提高了数据存储的安全性。此外,通过位置竞拍来生成新区块的机制,不仅可以让单个业务节点有限地控制关联业务交易存在于单个区块中,便于后续针对同一业务节点的交易审计和校验,还能够根据竞拍交易中的竞拍资产,有效的让区块链尽可能的满足有紧急批量开票需求的业务节点,进而可以有效提高业务处理的效率和公平性。
进一步地,请参见图9,图9是本申请实施例提供的一种交易数据处理装置的结构示意图。该交易数据处理装置1可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如,该交易数据处理装置1为一个应用软件;该交易数据处理装置1可以用于执行本申请实施例提供的方法中的相应步骤。如图9所示,该交易数据处理装置1可以运行于核心共识网络中的第一共识节点,该第一共识节点可以为上述图2所对应实施例中的共识节点220A。该交易数据处理装置1可以包括:交易识别模块10,第一类型区块确定模块20,关联业务交易获取模块30,第一区块广播模块40,第二类型区块确定模块50,交易获取模块60以及第二区块广播模块70。
该交易识别模块10,用于从核心共识网络的区块链上获取区块Ni,对区块Ni中的交易进行交易识别;区块Ni为区块链上具有最大生成时间戳的区块;i为正整数;
该第一类型区块确定模块20,用于若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为第一竞拍交易,且基于第一竞拍交易中的第一节点标识,将待打包的区块Ni+1确定为与第一节点标识相关联的第一类型区块;第一竞拍交易是由第一节点标识对应的第一业务节点通过代理节点所转发的;代理节点用于对核心共识网络和第一业务节点所在的业务网络进行网络隔离。
其中,该第一类型区块确定模块20包括:节点标识获取单元201,业务节点查找单元202以及区块类型确定单元203。
该节点标识获取单元201,用于若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为第一竞拍交易,且获取第一竞拍交易中的第一节点标识;
该业务节点查找单元202,用于获取核心共识网络所在的区块链网络所维护的节点标识列表,基于节点标识列表,查找与第一节点标识相匹配的业务节点,将查找到的业务节点作为第一业务节点;
该区块类型确定单元203,用于将待打包的区块Ni+1确定为与第一业务节点相关联的第一类型区块。
其中,该节点标识获取单元201,业务节点查找单元202以及区块类型确定单元203的具体实现方式可以参见上述图3所对应实施例中对步骤S102的描述,这里将不再继续进行赘述。
该关联业务交易获取模块30,用于基于第一竞拍交易所指定的交易打包数量,获取第一业务节点的关联业务交易。
其中,第一共识节点的节点交易池中包括第一业务节点的第一类交易以及第一业务节点的第二类交易;第一类交易的打包优先级高于第二类交易的打包优先级;
该关联业务交易获取模块30包括:交易打包数量获取单元301,关键交易数量统计单元302,第一类交易获取单元303,第二类交易获取单元304以及关联业务交易确定单元305。
该交易打包数量获取单元301,用于获取第一竞拍交易所指定的交易打包数量;交易打包数量用于指示区块Ni+1所容纳的第一业务节点的业务交易的最大交易数量;
该关键交易数量统计单元302,用于在节点交易池中,基于第一类交易的打包优先级,统计第一业务节点的第一类交易的第一关键交易数量;
该第一类交易获取单元303,用于若统计到的第一关键交易数量小于交易打包数量,则从节点交易池中,获取与统计到的第一关键交易数量相符的第一业务节点的第一类交易;
该第二类交易获取单元304,用于确定交易打包数量与统计到的第一关键交易数量之间的数量差值,将数量差值确定为待添加数量,且在节点交易池中统计第一业务节点的第二类交易;
该关联业务交易确定单元305,用于在统计到的第二关键交易数量大于待添加数量时,从节点交易池中,获取与待添加数量相符的第一业务节点的第二类交易,且将获取到的第一类交易以及获取到的第二类交易作为第一业务节点的关联业务交易。
其中,该交易打包数量获取单元301,关键交易数量统计单元302,第一类交易获取单元303,第二类交易获取单元304以及关联业务交易确定单元305的具体实现方式可以参见上述图3所对应实施例中对步骤S103的描述,这里将不再继续进行赘述。
该第一区块广播模块40,用于根据关联业务交易生成区块Ni+1,将区块Ni+1广播至核心共识网络中的第二共识节点,以使第二共识节点对区块Ni+1进行区块共识。
其中,第一区块广播模块40包括:资产转移交易生成单元401,待处理交易确定单元402以及区块广播单元403。
该资产转移交易生成单元401,用于在获取到关联业务交易之后,基于区块链上的智能合约,针对第一竞拍交易生成竞拍资产转移交易;
该待处理交易确定单元402,用于获取与核心共识网络相关联的竞拍交易打包条件,基于关联业务交易、竞拍资产转移交易以及竞拍交易打包条件,确定用于打包至区块Ni+1中的待处理交易。
其中,该待处理交易确定单元402包括:打包条件获取子单元4021,区块数量统计子单元4022,第一确定子单元4023,条件满足确定子单元4024,竞拍交易筛选子单元4025以及第二确定子单元4026。
该打包条件获取子单元4021,用于获取与核心共识网络相关联的竞拍交易打包条件;竞拍交易打包条件包括与第一类型区块相关联的连续区块数量阈值;
该区块数量统计子单元4022,用于将区块Ni作为遍历起始区块,基于区块链所指示的遍历索引方向以及遍历起始区块,统计区块链上连续出现第一类型区块的区块数量;
该第一确定子单元4023,用于若统计到的区块数量达到连续区块数量阈值,则确定区块Ni+1不满足竞拍交易打包条件,且将关联业务交易以及竞拍资产转移交易作为用于打包至区块Ni+1中的待处理交易。
该条件满足确定子单元4024,用于若统计到的区块数量未达到连续区块数量阈值,则确定区块Ni+1满足竞拍交易打包条件;
该竞拍交易筛选子单元4025,用于基于第一共识节点的节点交易池中的竞拍交易,筛选用于打包至区块Ni+1的第二竞拍交易;第二竞拍交易用于指示区块Ni+1的下一区块为与业务网络中的第二业务节点相关联的第一类型区块;第二业务节点为第二竞拍交易中的第二节点标识对应的业务节点。
其中,该竞拍交易筛选子单元4025包括:竞拍资产确定子单元40251,筛选子单元40252,交易验证子单元40253以及竞拍交易确定子单元40254。
该竞拍资产确定子单元40251,用于获取第一共识节点的节点交易池中存储的X个竞拍交易,确定X个竞拍交易中的每个竞拍交易的竞拍资产;X个竞拍交易是由业务网络中的业务节点通过代理节点所转发的;X为正整数;
该筛选子单元40252,用于基于每个竞拍交易的竞拍资产,从X个竞拍交易中筛选出具有最大竞拍资产的竞拍交易,将筛选出的竞拍交易作为待验证竞拍交易;
该交易验证子单元40253,用于对待验证竞拍交易进行交易验证,得到交易验证结果;
其中,该交易验证子单元40253还用于:
获取待验证竞拍交易携带的交易签名信息;交易签名信息为待验证竞拍交易中的第二节点标识对应的第二业务节点,基于第二业务节点的节点私钥,对待验证竞拍交易进行签名处理后得到的;
获取第二业务节点的节点公钥,基于节点公钥对交易签名信息进行验证,得到签名验证结果;
在签名验证结果指示验证成功时,基于智能合约以及与业务网络相关联的非法节点列表,确定第二业务节点的合法性;
基于第二业务节点的合法性,确定待验证竞拍交易的交易验证结果。
该竞拍交易确定子单元40254,用于在交易验证结果指示验证成功时,将待验证竞拍交易作为用于打包至区块Ni+1的第二竞拍交易。
其中,该竞拍资产确定子单元40251,筛选子单元40252,交易验证子单元40253以及竞拍交易确定子单元40254的具体实现方式可以参见上述图5所对应实施例中对第二竞拍交易的描述,这里将不再继续进行赘述。
该第二确定子单元4026,用于将关联业务交易、竞拍资产转移交易以及第二竞拍交易作为用于打包至区块Ni+1中的待处理交易。
其中,该打包条件获取子单元4021,区块数量统计子单元4022,第一确定子单元4023,条件满足确定子单元4024,竞拍交易筛选子单元4025以及第二确定子单元4026的具体实现方式可以参见上述图3所对应实施例中对用于打包至区块Ni+1的待处理交易的描述,这里将不再继续进行赘述。
该区块广播单元403,用于对待处理交易进行打包处理得到区块Ni+1,将区块Ni+1广播至核心共识网络中的第二共识节点。
其中,该资产转移交易生成单元401,待处理交易确定单元402以及区块广播单元403的具体实现方式可以参见上述图3所对应实施例中对步骤S104的描述,这里将不再继续进行赘述。
该第二类型区块确定模块50,用于若识别到区块Ni中不存在竞拍交易,则将待打包的区块Ni+1确定为第二类型区块;第二类型区块与第一类型区块不同;
该交易获取模块60,用于从第一共识节点的节点交易池中,获取业务网络中的业务节点通过代理节点发送的第二类交易;
该第二区块广播模块70,用于根据获取到的第二类交易,生成区块Ni+1,将区块Ni+1广播至核心共识网络中的第二共识节点,以使第二共识节点对区块Ni+1进行区块共识。
其中,该交易识别模块10,第一类型区块确定模块20,关联业务交易获取模块30,第一区块广播模块40,第二类型区块确定模块50,交易获取模块60以及第二区块广播模块70的具体实现方式可以参见上述图3所对应实施例中对步骤S101-步骤S104的描述,这里将不再继续进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
进一步地,请参见图10,图10是本申请实施例提供的一种交易数据处理装置的结构示意图。该交易数据处理装置2可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如,该交易数据处理装置2为一个应用软件;该交易数据处理装置2可以用于执行本申请实施例提供的方法中的相应步骤。如图10所示,该交易数据处理装置2可以运行于核心共识网络中的第二共识节点,该第二共识节点可以为上述图2所对应实施例中的共识节点220B。该交易数据处理装置2可以包括:区块接收模块100,区块获取模块200以及区块共识模块300。
该区块接收模块100,用于接收核心共识网络中的第一共识节点广播的区块Ni+1;区块Ni+1为第一共识节点在识别到核心共识网络的区块链上的区块Ni中存在第一竞拍交易时,基于第一竞拍交易中的第一节点标识以及交易打包数量生成的第一类型区块;区块Ni为区块链上具有最大生成时间戳的区块;i为正整数;第一竞拍交易是第一共识节点接收到的由第一节点标识对应的第一业务节点通过代理节点转发的竞拍交易;代理节点用于对核心共识网络和第一业务节点所在的业务网络进行网络隔离;
该区块获取模块200,用于从区块链上获取区块Ni,对区块Ni中的交易进行交易识别;
该区块共识模块300,用于若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为目标竞拍交易,基于目标竞拍交易对区块Ni+1进行区块共识,得到用于向第一共识节点返回的区块共识结果;区块共识结果用于指示第一共识节点将区块Ni+1写入区块链。
其中,该区块共识模块300包括:目标竞拍交易确定单元3010,比对单元3020,匹配单元3030以及共识结果确定单元3040。
该目标竞拍交易确定单元3010,用于若识别到区块Ni中存在竞拍交易,则将区块Ni中的竞拍交易作为目标竞拍交易;目标竞拍交易包括目标节点标识以及目标打包数量;
该比对单元3020,用于统计区块Ni+1中的目标节点标识对应的关联业务交易的业务交易数量,且将统计到的业务交易数量与目标打包数量进行比对,得到比对结果;
该匹配单元3030,用于将目标节点标识与区块Ni+1的关联业务交易中的每个交易分别进行匹配,得到匹配结果;
该共识结果确定单元3040,用于基于比对结果以及匹配结果,确定用于向第一共识节点返回的区块共识结果。
其中,该目标竞拍交易确定单元3010,比对单元3020,匹配单元3030以及共识结果确定单元3040的具体实现方式可以参见上述图6所对应实施例中对区块Ni+1进行区块共识的描述,这里将不再继续进行赘述。
其中,该区块接收模块100,区块获取模块200以及区块共识模块300的具体实现方式可以参见上述图7所对应实施例中对步骤S201-步骤S207的描述,这里将不再继续进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
进一步地,请参见图11,图11是本申请实施例提供的一种计算机设备的示意图。如图11所示,该计算机设备3000可以为上述图2对应实施例中的共识节点220A,该计算机设备3000可以包括:至少一个处理器3001,例如,CPU,至少一个网络接口3004,用户接口3003,存储器3005,至少一个通信总线3002。其中,通信总线3002用于实现这些组件之间的连接通信。其中,用户接口3003可以包括显示屏(Display)、键盘(Keyboard),网络接口3004可选地可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器3005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储3005可选地还可以是至少一个位于远离前述处理器3001的存储装置。如图11所示,作为一种计算机存储介质的存储器3005可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图11所示的计算机设备3000中,网络接口3004主要用于与核心共识网络中的第二共识节点和路由代理网络中的代理节点进行网络通信;而用户接口3003主要用于为用户提供输入的接口;而处理器3001可以用于调用存储器3005中存储的设备控制应用程序。
应当理解,本申请实施例中所描述的计算机设备3000可执行前文图3或者图7所对应实施例中对该交易数据处理方法的描述,也可执行前文图9所对应实施例中对该交易数据处理装置1或者图10所对应实施例中对该交易数据处理装置2的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且该计算机可读存储介质中存储有前文提及的交易数据处理装置1或者交易数据处理装置2所执行的计算机程序,且该计算机程序包括程序指令,当该处理器执行该程序指令时,能够执行前文图3或者图7所对应实施例中对该交易数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行,分布在多个地点且通过通信网络互连的多个计算设备可以组成区块链节点系统。
本申请一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备可执行前文图3或者图7所对应实施例中对交易数据处理方法的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
进一步的,请参见图12,图12是本申请实施例提供的一种数据处理系统的结构示意图。该数据处理系统3可以包含数据处理装置1a和数据处理装置2a。其中,数据处理装置1a可以为上述图9所对应实施例中的交易数据处理装置1,可以理解的是,该数据处理装置1a可以集成在上述图2所对应实施例中的共识节点220A,因此,这里将不再进行赘述。其中,数据处理装置2a可以为上述图10所对应实施例中的交易数据处理装置2,可以理解的是,该数据处理装置2a可以集成在上述图2所对应实施例中的共识节点220B,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的数据处理系统实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (16)
1.一种交易数据处理方法,其特征在于,包括:
核心共识网络中的第一共识节点从所述核心共识网络的区块链上获取区块Ni,对所述区块Ni中的交易进行交易识别;所述区块Ni为所述区块链上具有最大生成时间戳的区块;所述i为正整数;
若识别到所述区块Ni中存在竞拍交易,则所述第一共识节点将所述区块Ni中的竞拍交易作为第一竞拍交易,且基于所述第一竞拍交易中的第一节点标识,将待打包的区块Ni+1确定为与所述第一节点标识相关联的第一类型区块;所述第一竞拍交易是由所述第一节点标识对应的第一业务节点通过代理节点所转发的;所述第一竞拍交易是所述第一业务节点在满足交易竞拍生成条件时,生成的用于竞拍所述第一类型区块的交易;所述代理节点用于对所述核心共识网络和所述第一业务节点所在的业务网络进行网络隔离;
所述第一共识节点基于所述第一竞拍交易所指定的交易打包数量,获取所述第一业务节点的关联业务交易;
所述第一共识节点根据所述关联业务交易以及与所述核心共识网络相关联的竞拍交易打包条件,生成用于广播至所述核心共识网络中的第二共识节点的所述区块Ni+1;
所述第二共识节点在接收到所述区块Ni+1时,从所述区块链上获取所述区块Ni,对所述区块Ni中的交易进行交易识别;
若识别到所述区块Ni中存在竞拍交易,则所述第二共识节点将所述区块Ni中的竞拍交易作为目标竞拍交易,基于所述目标竞拍交易对所述区块Ni+1进行区块共识,得到用于向所述第一共识节点返回的区块共识结果;所述区块共识结果用于指示所述第一共识节点将所述区块Ni+1写入所述区块链。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一业务节点获取与所述业务网络相关联的竞拍交易生成条件;所述竞拍交易生成条件包括交易累计数量阈值;
当所述第一业务节点在所述第一业务节点的节点缓存中,检测到待上链交易的交易累计数量达到所述交易累计数量阈值时,所述第一业务节点基于所述第一业务节点的节点标识、所述第一业务节点指定的交易打包数量以及所述第一业务节点确定的竞拍资产,生成用于竞拍所述第一类型区块的竞拍交易;所述第一业务节点确定的竞拍资产是由所述第一业务节点的待上链交易的等待时长所确定的。
3.根据权利要求2所述的方法,其特征在于,所述第一业务节点用于生成携带独占标识的第一类交易和未携带所述独占标识的第二类交易;
所述方法还包括:
所述第一业务节点基于所述第一类交易、所述第二类型交易以及所述第一业务节点生成的竞拍交易,确定所述第一业务节点的待广播交易;
所述第一业务节点基于所述第一业务节点的节点私钥,对所述待广播交易进行签名处理,得到签名信息,且将所述待广播交易以及所述签名信息发送至所述代理节点,以使所述代理节点对所述第一业务节点进行权限验证,得到权限验证结果;
若权限验证结果为合法验证结果,则所述代理节点将所述待广播交易广播至所述核心共识网络;
所述第一共识节点在获取到所述待广播交易以及所述签名信息时,对所述待广播交易进行验证,且在验证成功时,将所述待广播交易添加至所述第一共识节点的节点交易池。
4.根据权利要求1所述的方法,其特征在于,所述第一共识节点的节点交易池中包括所述第一业务节点的第一类交易以及所述第一业务节点的第二类交易;所述第一类交易的打包优先级高于所述第二类交易的打包优先级;
所述第一共识节点基于所述第一竞拍交易所指定的交易打包数量,获取所述第一业务节点的关联业务交易,包括:
所述第一共识节点获取所述第一竞拍交易所指定的交易打包数量;所述交易打包数量用于指示所述区块Ni+1所容纳的所述第一业务节点的业务交易的最大交易数量;
所述第一共识节点在所述节点交易池中,基于所述第一类交易的打包优先级,统计所述第一业务节点的所述第一类交易的第一关键交易数量;
若统计到的第一关键交易数量大于或者等于所述交易打包数量,则所述第一共识节点从所述节点交易池中,获取与所述交易打包数量相符的所述第一业务节点的所述第一类交易,且将获取到的所述第一类交易作为所述第一业务节点的关联业务交易。
5.根据权利要求1所述的方法,其特征在于,所述第一共识节点根据所述关联业务交易以及与所述核心共识网络相关联的竞拍交易打包条件,生成用于广播至所述核心共识网络中的第二共识节点的所述区块Ni+1,包括:
所述第一共识节点在获取到所述关联业务交易之后,基于所述区块链上的智能合约,针对所述第一竞拍交易生成竞拍资产转移交易;
所述第一共识节点获取与所述核心共识网络相关联的竞拍交易打包条件,基于所述关联业务交易、所述竞拍资产转移交易以及所述竞拍交易打包条件,确定用于打包至所述区块Ni+1中的待处理交易;
所述第一共识节点对所述待处理交易进行打包处理得到所述区块Ni+1,将所述区块Ni+1广播至所述核心共识网络中的第二共识节点。
6.根据权利要求5所述的方法,其特征在于,所述第一共识节点在获取到所述关联业务交易之后,基于所述区块链上的智能合约,针对所述第一竞拍交易生成竞拍资产转移交易,包括:
所述第一共识节点在获取到所述关联业务交易之后,获取所述第一竞拍交易中的竞拍资产;
所述第一共识节点获取所述区块链上的智能合约,根据所述智能合约,确定所述第一业务节点的账户余额;
若所述第一业务节点的账户余额大于或者等于所述第一竞拍交易中的竞拍资产,则所述第一共识节点针对所述第一竞拍交易生成竞拍资产转移交易。
7.根据权利要求5所述的方法,其特征在于,所述第一共识节点获取与所述核心共识网络相关联的竞拍交易打包条件,基于所述关联业务交易、所述竞拍资产转移交易以及所述竞拍交易打包条件,确定用于打包至所述区块Ni+1中的待处理交易,包括:
所述第一共识节点获取与所述核心共识网络相关联的竞拍交易打包条件;所述竞拍交易打包条件包括与所述第一类型区块相关联的连续区块数量阈值;
所述第一共识节点将所述区块Ni作为遍历起始区块,基于所述区块链所指示的遍历索引方向以及所述遍历起始区块,统计所述区块链上连续出现所述第一类型区块的区块数量;
若统计到的区块数量未达到所述连续区块数量阈值,则所述第一共识节点确定所述区块Ni+1满足所述竞拍交易打包条件;
所述第一共识节点基于所述第一共识节点的节点交易池中的竞拍交易,筛选用于打包至所述区块Ni+1的第二竞拍交易;所述第二竞拍交易用于指示所述区块Ni+1的下一区块为与所述业务网络中的第二业务节点相关联的所述第一类型区块;所述第二业务节点为所述第二竞拍交易中的第二节点标识对应的业务节点;
所述第一共识节点将所述关联业务交易、所述竞拍资产转移交易以及所述第二竞拍交易作为用于打包至所述区块Ni+1中的待处理交易。
8.根据权利要求7所述的方法,其特征在于,所述第一共识节点基于所述第一共识节点的节点交易池中的竞拍交易,筛选用于打包至所述区块Ni+1的第二竞拍交易,包括:
所述第一共识节点获取所述第一共识节点的节点交易池中存储的X个竞拍交易,确定所述X个竞拍交易中的每个竞拍交易的竞拍资产;所述X个竞拍交易是由所述业务网络中的业务节点通过所述代理节点所转发的;所述X为正整数;
所述第一共识节点基于所述每个竞拍交易的竞拍资产,从所述X个竞拍交易中筛选出具有最大竞拍资产的竞拍交易,将筛选出的竞拍交易作为待验证竞拍交易;
所述第一共识节点对所述待验证竞拍交易携带的交易签名信息进行验证,得到签名验证结果;
所述第一共识节点在所述签名验证结果指示验证成功,基于所述智能合约以及与所述业务网络相关联的非法节点列表,确定所述第二业务节点的合法性,且基于所述第二业务节点的合法性,确定所述待验证竞拍交易的交易验证结果;
所述第一共识节点在所述交易验证结果指示验证成功时,将所述待验证竞拍交易作为用于打包至所述区块Ni+1的第二竞拍交易。
9.根据权利要求8所述的方法,其特征在于,所述第一共识节点对所述待验证竞拍交易携带的交易签名信息进行验证,得到签名验证结果,包括:
所述第一共识节点获取所述待验证竞拍交易携带的交易签名信息;所述交易签名信息为所述待验证竞拍交易中的第二节点标识对应的第二业务节点,基于所述第二业务节点的节点私钥,对所述待验证竞拍交易的第一摘要信息进行签名处理后得到的;所述第一摘要信息为所述第二业务节点根据获取到的哈希计算规则对所述待验证竞拍交易进行哈希计算后所得到的;
所述第一共识节点获取所述第二业务节点的节点公钥,基于所述第二业务节点的节点公钥对所述交易签名信息进行验证,得到所述第一摘要信息,且获取所述哈希计算规则,对所述待验证竞拍交易进行哈希计算,得到所述待验证竞拍交易的第二摘要信息;
所述第一共识节点将所述第一摘要信息与所述第二摘要信息比对,得到签名验证结果。
10.根据权利要求9所述的方法,其特征在于,所述第一共识节点将所述第一摘要信息与所述第二摘要信息比对,得到签名验证结果,包括:
所述第一共识节点将所述第一摘要信息与所述第二摘要信息进行比对;
若所述第一摘要信息与所述第二摘要信息不相同,则所述第一共识节点得到用于指示验证失败的签名验证结果;
若所述第一摘要信息与所述第二摘要信息相同,则所述第一共识节点得到用于指示验证成功的签名验证结果。
11.根据权利要求1所述的方法,其特征在于,所述若识别到所述区块Ni中存在竞拍交易,则所述第二共识节点将所述区块Ni中的竞拍交易作为目标竞拍交易,基于所述目标竞拍交易对所述区块Ni+1进行区块共识,得到用于向所述第一共识节点返回的区块共识结果,包括:
若识别到所述区块Ni中存在竞拍交易,则所述第二共识节点将所述区块Ni中的竞拍交易作为目标竞拍交易;所述目标竞拍交易包括目标节点标识以及目标打包数量;
所述第二共识节点统计所述区块Ni+1中的所述目标节点标识对应的关联业务交易的业务交易数量,且将统计到的业务交易数量与所述目标打包数量进行比对,得到比对结果;
所述第二共识节点将所述目标节点标识与所述区块Ni+1的关联业务交易中的每个交易分别进行匹配,得到匹配结果;
所述第二共识节点基于所述比对结果以及所述匹配结果,确定用于向所述第一共识节点返回的区块共识结果。
12.根据权利要求11所述的方法,其特征在于,所述第二共识节点基于所述比对结果以及所述匹配结果,确定用于向所述第一共识节点返回的区块共识结果,包括:
若所述比对结果指示所述统计到的业务交易数量小于或者等于所述目标打包数量,且所述匹配结果指示所述区块Ni+1的关联业务交易中的每个交易均是所述目标节点标识对应的交易,则所述第二共识节点得到所述区块Ni+1的共识成功结果,且将所述区块Ni+1的共识成功结果作为用于向所述第一共识节点返回的区块共识结果;
若所述比对结果指示所述统计到的业务交易数量大于所述目标打包数量,或者所述匹配结果指示所述区块Ni+1的关联业务交易中存在除所述目标节点标识之外的其他节点标识对应的交易,则所述第二共识节点得到所述区块Ni+1的共识失败结果,且将所述区块Ni+1的共识失败结果作为用于向所述第一共识节点返回的区块共识结果。
13.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一共识节点在接收到所述第二共识节点返回的区块共识结果时,对所述区块共识节点进行结果分析;
若所述区块共识结果中存在超过共识阈值的区块共识结果指示共识成功,则所述第一共识节点确定所述核心共识网络中的共识节点达成共识,且将所述区块Ni+1写入所述区块链。
14.一种计算机设备,其特征在于,包括:处理器和存储器;
所述处理器与存储器相连,其中,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使得所述计算机设备执行权利要求1-13任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1-13任一项所述的方法。
16.一种计算机程序产品或计算机程序,其特征在于,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中,所述计算机指令适于由处理器读取并执行,以使得具有所述处理器的计算机设备执行权利要求1-13任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111215409.1A CN113935835B (zh) | 2021-06-15 | 2021-06-15 | 一种交易数据处理方法、装置、设备及存储介质 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111215409.1A CN113935835B (zh) | 2021-06-15 | 2021-06-15 | 一种交易数据处理方法、装置、设备及存储介质 |
CN202110657918.3A CN113256424B (zh) | 2021-06-15 | 2021-06-15 | 一种交易数据处理方法、装置、设备及存储介质 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110657918.3A Division CN113256424B (zh) | 2021-06-15 | 2021-06-15 | 一种交易数据处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113935835A true CN113935835A (zh) | 2022-01-14 |
CN113935835B CN113935835B (zh) | 2022-08-26 |
Family
ID=77188019
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110657918.3A Active CN113256424B (zh) | 2021-06-15 | 2021-06-15 | 一种交易数据处理方法、装置、设备及存储介质 |
CN202111215409.1A Active CN113935835B (zh) | 2021-06-15 | 2021-06-15 | 一种交易数据处理方法、装置、设备及存储介质 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110657918.3A Active CN113256424B (zh) | 2021-06-15 | 2021-06-15 | 一种交易数据处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN113256424B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117579633A (zh) * | 2024-01-17 | 2024-02-20 | 腾讯科技(深圳)有限公司 | 区块竞选方法、装置、设备及存储介质 |
WO2024099224A1 (zh) * | 2022-11-10 | 2024-05-16 | 中移(上海)信息通信科技有限公司 | 工业区块链网络的优化方法及装置、节点和存储介质 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113395363B (zh) * | 2021-08-18 | 2021-10-29 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置、设备及存储介质 |
CN113568981B (zh) * | 2021-09-24 | 2022-01-07 | 腾讯科技(深圳)有限公司 | 一种交易数据处理方法、装置、设备以及介质 |
CN113902559A (zh) * | 2021-10-20 | 2022-01-07 | 华青融天(北京)软件股份有限公司 | 一种交易关联方法、装置、电子设备及存储介质 |
CN116192881B (zh) * | 2023-04-27 | 2023-06-30 | 天津市城市规划设计研究总院有限公司 | 城市规划领域区块链数据的访问控制方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190361917A1 (en) * | 2018-05-25 | 2019-11-28 | Bao Tran | Smart device |
CN112396423A (zh) * | 2021-01-20 | 2021-02-23 | 腾讯科技(深圳)有限公司 | 一种交易数据处理方法、装置、设备及存储介质 |
CN112667749A (zh) * | 2021-03-16 | 2021-04-16 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备及存储介质 |
CN112685505A (zh) * | 2021-01-07 | 2021-04-20 | 腾讯科技(深圳)有限公司 | 一种交易数据处理方法、装置、计算机设备及存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7987491B2 (en) * | 2002-05-10 | 2011-07-26 | Richard Reisman | Method and apparatus for browsing using alternative linkbases |
CN107800795A (zh) * | 2017-10-30 | 2018-03-13 | 中国联合网络通信集团有限公司 | 区块信息的处理方法及装置 |
CN107766540A (zh) * | 2017-10-31 | 2018-03-06 | 上海分布信息科技有限公司 | 一种分区的区块链网络及其实现分区存储的方法 |
CN108711006B (zh) * | 2018-05-15 | 2021-05-07 | 腾讯科技(深圳)有限公司 | 收入管理方法、管理节点、系统及存储设备 |
CN109670321A (zh) * | 2018-11-30 | 2019-04-23 | 深圳灵图慧视科技有限公司 | 数据存储方法、数据查询方法及装置 |
CN109544344B (zh) * | 2018-12-24 | 2021-07-02 | 众安信息技术服务有限公司 | 基于dag的区块链的交易处理方法及设备 |
CN109685488A (zh) * | 2018-12-24 | 2019-04-26 | 杭州复杂美科技有限公司 | 转账交易分片处理方法、设备和存储介质 |
CN110717762B (zh) * | 2019-12-16 | 2020-03-17 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、节点设备及存储介质 |
CN112232823B (zh) * | 2020-12-10 | 2021-04-23 | 腾讯科技(深圳)有限公司 | 区块链系统的交易处理方法、装置、介质及电子设备 |
-
2021
- 2021-06-15 CN CN202110657918.3A patent/CN113256424B/zh active Active
- 2021-06-15 CN CN202111215409.1A patent/CN113935835B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190361917A1 (en) * | 2018-05-25 | 2019-11-28 | Bao Tran | Smart device |
CN112685505A (zh) * | 2021-01-07 | 2021-04-20 | 腾讯科技(深圳)有限公司 | 一种交易数据处理方法、装置、计算机设备及存储介质 |
CN112396423A (zh) * | 2021-01-20 | 2021-02-23 | 腾讯科技(深圳)有限公司 | 一种交易数据处理方法、装置、设备及存储介质 |
CN112926982A (zh) * | 2021-01-20 | 2021-06-08 | 腾讯科技(深圳)有限公司 | 一种交易数据处理方法、装置、设备及存储介质 |
CN112667749A (zh) * | 2021-03-16 | 2021-04-16 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备及存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024099224A1 (zh) * | 2022-11-10 | 2024-05-16 | 中移(上海)信息通信科技有限公司 | 工业区块链网络的优化方法及装置、节点和存储介质 |
CN117579633A (zh) * | 2024-01-17 | 2024-02-20 | 腾讯科技(深圳)有限公司 | 区块竞选方法、装置、设备及存储介质 |
CN117579633B (zh) * | 2024-01-17 | 2024-04-09 | 腾讯科技(深圳)有限公司 | 区块竞选方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113935835B (zh) | 2022-08-26 |
CN113256424A (zh) | 2021-08-13 |
CN113256424B (zh) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113935835B (zh) | 一种交易数据处理方法、装置、设备及存储介质 | |
Baird et al. | Hedera: A public hashgraph network & governing council | |
CN112396423B (zh) | 一种交易数据处理方法、装置、设备及存储介质 | |
CN112685505B (zh) | 一种交易数据处理方法、装置、计算机设备及存储介质 | |
CN113421097B (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
KR20190075771A (ko) | 블록체인을 이용한 개인정보 분리 후 분산저장을 통한 인증 시스템 | |
CN110599147A (zh) | 一种基于区块链的密文检索公平支付方法及系统 | |
KR20200032086A (ko) | 안전한 액세스 제한 관리를 통해 분산된 블록 체인 데이터 구조 배포 | |
CN113518005B (zh) | 一种区块共识方法、装置、设备及存储介质 | |
CN111383021A (zh) | 基于区块链网络的节点管理方法、装置、设备及介质 | |
CN111416709B (zh) | 基于区块链系统的投票方法、装置、设备及存储介质 | |
CN113256297B (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN113495920A (zh) | 一种基于区块链的内容审核系统、方法、装置和存储介质 | |
CN111476572A (zh) | 基于区块链的数据处理方法、装置、存储介质及设备 | |
WO2021233109A1 (zh) | 基于区块链的消息处理方法、装置、设备以及存储介质 | |
CN113326516A (zh) | 区块链共识方法、区块链系统及计算机设备 | |
CN113259130B (zh) | 一种交易数据处理方法、装置、设备以及介质 | |
Wang et al. | Exploring unfairness on proof of authority: Order manipulation attacks and remedies | |
CN112801778A (zh) | 联盟式不良资产区块链 | |
CN113726913A (zh) | 骨干节点接入方法和区块链系统 | |
Li et al. | EdgeWatch: Collaborative investigation of data integrity at the edge based on blockchain | |
CN113037824B (zh) | 一种面向云计算的高性能区块链的构建方法 | |
Wang et al. | A fast and secured peer-to-peer energy trading using blockchain consensus | |
Fredriksson | A distributed public key infrastructure for the web backed by a blockchain | |
Xu et al. | A review of the technology and application of deposit and traceability based on blockchain |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40064947 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |