CN117931933A - 多区块链数据处理方法、装置、设备、系统以及介质 - Google Patents
多区块链数据处理方法、装置、设备、系统以及介质 Download PDFInfo
- Publication number
- CN117931933A CN117931933A CN202211260878.XA CN202211260878A CN117931933A CN 117931933 A CN117931933 A CN 117931933A CN 202211260878 A CN202211260878 A CN 202211260878A CN 117931933 A CN117931933 A CN 117931933A
- Authority
- CN
- China
- Prior art keywords
- service
- chain
- business
- consensus node
- contract
- 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 abstract description 20
- 238000012545 processing Methods 0.000 claims abstract description 230
- 238000000034 method Methods 0.000 claims abstract description 102
- 238000012795 verification Methods 0.000 claims description 109
- 238000009825 accumulation Methods 0.000 claims description 47
- 238000004080 punching Methods 0.000 claims description 29
- 230000008569 process Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 21
- 238000012546 transfer Methods 0.000 claims description 20
- 230000004044 response Effects 0.000 claims description 18
- 230000001360 synchronised effect Effects 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 9
- 238000007405 data analysis Methods 0.000 claims description 8
- 239000006228 supernatant Substances 0.000 claims description 5
- 238000007726 management method Methods 0.000 abstract description 174
- 238000013500 data storage Methods 0.000 abstract description 17
- 238000013475 authorization Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 17
- 238000004891 communication Methods 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 11
- 238000012797 qualification Methods 0.000 description 11
- 230000003993 interaction Effects 0.000 description 8
- 230000009286 beneficial effect Effects 0.000 description 7
- 238000011835 investigation Methods 0.000 description 6
- 230000001186 cumulative effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 241000098700 Sarcocheilichthys parvus Species 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/10—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
- G06Q20/102—Bill distribution or payments
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3823—Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
-
- 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/04—Billing or invoicing
-
- 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/12—Accounting
-
- 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
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/26—Government or public services
-
- 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/3247—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 digital signatures
-
- 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/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- 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
- G06Q2220/00—Business processing using cryptography
Abstract
本申请提供了一种多区块链数据处理方法、装置、设备、系统以及介质,该方法包括:在第一共识节点获取到第一业务时,调用第一链上的第一跨链读取合约,从管理链上读取与第一业务相关联的第一业务关联信息;在第一共识节点基于第一业务关联信息确定第一业务对象具备第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到第一业务执行结果;在第一共识节点获取到第二共识节点发送的跨链读取请求时,从第一链上读取第一业务执行结果中的业务数据,且将业务数据中的核心数据返回给第二共识节点,以使第二共识节点将基于核心数据执行第二业务后的第二业务执行结果写入第二链。采用本申请可以降低链上数据存储的混杂度。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种多区块链数据处理方法、装置、设备、系统以及介质。
背景技术
现有的区块链数据处理系统在用于处理相关业务(例如,业务A和该业务A的扩展业务B)时,依赖于架设在单链结构上的区块链网络。这样,对于通过终端或者服务器的形式接入该区块链网络中的各个业务处理方而言,均需要在该区块链网络对应的同一区块链上处理相关业务(例如,业务A和扩展业务B)。
发明人在实践中发现,基于单区块链而言,需要将各业务处理方所参与处理的各相关业务(例如,业务A和扩展业务B)所对应的业务执行结果无差别地写入同一区块链,比如,该区块链网络中的共识节点可能会将执行业务A所得到的业务执行结果1和执行扩展业务B所得到的业务执行结果作为两个交易执行结果,一并打包至同一区块,以上链至同一区块链,显然,通过将不同业务所对应的交易执行结果混合提交至同一区块链,势必会加剧该单区块链上所存储的区块链数据的混杂度,且难以确保该单区块链上所存储数据的安全性。
发明内容
本申请实施例提供一种多区块链数据处理方法、装置、设备以及介质,通过部署的多区块链来分别进行数据存储,可以降低各区块链上数据存储的混杂度,另外,通过多区块链之间的相互协作,还可以提升各链上所存储数据的安全性。
本申请实施例一方面提供了一种多区块链数据处理方法,方法由第一链网络中的第一共识节点执行,方法包括:
获取第一业务对象请求的第一业务,基于第一业务调用第一链上的第一跨链读取合约,从目标链上读取与第一业务相关联的第一业务关联信息;第一链为第一链网络中的区块链;目标链是独立于第一链网络的目标链网络中的区块链;第一链不同于目标链;
在基于第一业务关联信息确定第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到与第一业务相关联的第一业务执行结果,且将第一业务执行结果写入第一链;第一业务执行结果中包含第一业务所指示的业务数据;
在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,基于跨链读取请求中携带的第二业务从第一链上读取业务数据,且将业务数据中的核心数据返回给第二共识节点;第二共识节点用于在基于核心数据执行第二业务之后,将第二业务对应的第二业务执行结果写入第二链;第二链为第二共识节点所在的第二链网络中的区块链,第二链网络独立于第一链网络和目标链网络。
其中,与第一链网络对应的链入口为第一链入口;第一链入口存储有第一共识节点在第一跨链读取时间戳时通过第一跨链读取合约从目标链上所同步来的授权对象的注册数据信息;
获取第一业务对象请求的第一业务,基于第一业务调用第一链上的第一跨链读取合约,从目标链上读取与第一业务相关联的第一业务关联信息,包括:
通过第一链网络的第一链入口,获取第一业务对象对应的第一业务节点基于第一业务发送的第一业务处理请求;第一业务处理请求中携带第一业务对象针对第一业务提交的交易业务数据、以及第一业务对象的第一签名信息;第一签名信息是由与第一业务对象相关联的第一业务节点通过第一业务对象的第一私钥信息,对交易业务数据进行签名后所得到的;第一业务对象的第一私钥信息是第一业务对象通过目标链中的对象身份管理合约进行身份注册后得到的;
从第一业务处理请求中获取第一签名信息,基于第一链入口中存储的授权对象的注册数据信息对第一签名信息进行签名验证,得到第一业务对象的签名验证结果;
在第一业务对象的签名验证结果指示签名验证成功时,确定第一业务对象为授权对象,且基于交易业务数据确定与第一业务对象相关联的第一业务;
基于第一业务调用第一跨链读取合约,从目标链上读取与第一业务相关联的第一业务关联信息。
其中,授权对象的注册数据信息中包含授权对象的公钥证书;授权对象的公钥证书是由目标链网络中的目标共识节点调用目标链中的对象身份管理合约,对授权对象提交的对象数据信息进行身份注册后所得到的;
从第一业务处理请求中获取第一签名信息,基于第一链入口中存储的授权对象的注册数据信息对第一签名信息进行签名验证,得到第一业务对象的签名验证结果,包括:
从第一业务处理请求中获取第一签名信息,从第一链入口中存储的授权对象的注册数据信息中获取授权对象的公钥证书;一个授权对象的公钥证书中包含一个授权对象的公钥信息;
在授权对象的公钥证书中查找第一业务对象的公钥证书,且在查找到第一业务对象的公钥证书时,将查找到的第一业务对象的公钥证书作为第一公钥证书,且将第一公钥证书中的公钥信息作为第一业务对象的第一公钥信息;
基于第一公钥证书以及第一公钥信息对第一签名信息进行签名验证,得到第一业务对象的签名验证结果。
其中,基于第一公钥证书以及第一公钥信息对第一签名信息进行签名验证,得到第一业务对象的签名验证结果,包括:
将第一公钥证书的证书数据信息作为待处理证书信息,且在第二跨链读取时间戳时调用第一跨链读取合约中的证书数据读取方法,从目标链上读取第一业务对象的公钥证书;第二跨链读取时间戳为第一跨链读取时间戳的下一跨链读取时间戳;
将读取到的第一业务对象的公钥证书中的证书数据信息作为目标证书信息;
在待处理证书信息与目标证书信息保持一致时,基于第一公钥信息对第一签名信息进行签名验证,并将签名验证成功时的验证结果作为第一业务对象的签名验证结果。
其中,方法还包括:
在授权对象的公钥证书中未查找到第一业务对象的公钥证书时,将第一业务对象确定为非法业务对象,拒绝非法业务对象发送的第一业务处理请求。
其中,基于第一业务调用第一跨链读取合约,从目标链上读取与第一业务相关联的第一业务关联信息,包括:
基于第一业务调用第一跨链读取合约中的权限合约读取方法,生成用于发送给目标链网络中的目标共识节点的权限合约访问请求;权限合约访问请求用于指示目标共识节点调用目标链上的对象权限管理合约,获取与第一业务相关联的第一业务关联信息;
接收目标共识节点基于权限合约访问请求返回的第一业务关联信息。
其中,第一业务关联信息包含为第一业务对象配置的业务权限类型、具备业务权限类型的第一业务对象在业务时长内的业务累计量以及业务累计阈值;
在基于第一业务关联信息确定第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到与第一业务相关联的第一业务执行结果,且将第一业务执行结果写入第一链,包括:
在基于第一业务关联信息确定第一业务对象的业务权限类型为开票权限类型,且具备开票权限类型的第一业务对象在业务时长内的业务累积量未达到业务累计阈值时,确定第一业务对象具备第一业务对应的第一业务处理权限;
基于第一业务处理权限获取与开票权限类型相关联的合约调用地址和合约调用名称,通过合约调用地址和合约调用名称调用第一链上的电子票据开具合约,将第一业务对应的交易业务数据和与第一业务中的电子票据开具业务相关联的票据关键信息进行整合,基于整合后的票据关键信息为第一业务对象开具电子票据,将开具的电子票据作为第一业务所指示的业务数据;
将票据关键信息、业务数据以及电子票据开具合约作为执行第一业务中的电子票据开具业务的第一业务执行结果,将包含第一业务执行结果的第一区块发送至第一链上的校验共识节点,以使校验共识节点对第一区块进行区块校验,得到区块校验结果;校验共识节点为第一链网络中除第一共识节点之外剩余的共识节点;
接收校验共识节点返回的区块校验结果,若区块校验结果指示区块校验成功,则将第一区块写入第一链。
其中,票据关键信息包含从目标链上读取到的辅助元数据信息,且辅助元数据信息包含第一电子票据模板以及与第一电子票据模板相关联的目标计税规则;第一电子票据模板为目标链上的目标共识节点调用目标链上的元数据管理合约对第二电子票据模板进行变更上链后的电子票据模板;第二电子票据模板为第一电子票据模板的上一电子票据模板;元数据变更信息是由与目标共识节点相关联的业务管理对象所提交的。
其中,第一业务至少包含以下交易业务中的一种:电子票据开具业务、电子票据流转业务、电子票据红冲业务、电子票据归档业务;第一业务处理合约至少包含:用于执行电子票据开具业务的电子票据开具合约、用于执行电子票据流转业务的电子票据流转合约、用于执行电子票据红冲业务的电子票据红冲合约以及用于执行电子票据归档业务的电子票据归档合约;
其中,电子票据开具业务用于指示第一共识节点调用第一链上的电子票据开具合约,为第一业务对象开具电子发票;电子票据流转业务用于指示第一共识节点调用第一链上的电子票据流转合约,将电子发票由第一业务对象流转至第二业务对象;电子票据红冲业务用于指示第一共识节点调用第一链上的电子票据红冲合约,开具电子发票对应的红字发票,且红字发票用于更正电子发票中的相关票据信息;电子票据归档业务用于指示第一共识节点调用第一链上的电子票据归档合约,将第一链上满足票据归档条件的电子发票进行冷存储处理。
其中,在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,基于跨链读取请求中携带的第二业务从第一链上读取业务数据,且将业务数据中的核心数据返回给第二共识节点,包括:
在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,从跨链读取请求中获取第二业务对象通过与第二链相关联的第二业务入口提交的第二业务;第二业务入口用于在确定第二业务对象具备在第二链上处理第二业务的权限时,允许第二业务对象通过第二共识节点调用第二跨链读取合约;
基于第二业务所指示的跨链请求数据信息,从第一链上读取业务数据,将读取到的业务数据中的核心数据作为跨链读取请求对应的跨链请求响应信息,将跨链请求响应信息返回给第二共识节点,以使第二共识节点基于跨链请求响应信息调用第二链上的第二业务合约执行第二业务。
其中,方法还包括:
在将第一业务执行结果写入第一链时,在第一业务执行结果对应的目标交易中指定与业务数据相关联的业务数据处理终端的处理终端标识;处理终端标识用于表征业务数据处理终端具备从第一链上清分到业务数据的功能;
在获取到业务数据处理终端发送的交易清分请求时,基于交易清分请求中携带的处理终端标识从第一链上获取目标交易,且从目标交易所包含的第一业务执行结果中清分到业务数据,将业务数据返回给业务数据处理终端,以使业务数据处理终端对业务数据进行数据分析。
本申请实施例一方面提供了一种多区块链数据处理方法,方法由第二链网络中的第二共识节点执行,方法包括:
获取第二业务对象请求的第二业务,基于第二业务调用第二链上的第二跨链读取合约,从目标链上读取与第二业务相关联的第二业务关联信息;第二链为第二链网络中的区块链;目标链是独立于第二链网络的目标链网络中的区块链;第二链不同于目标链;
在基于第二业务关联信息确定第二业务对象具备第二业务对应的第二业务处理权限时,调用第二跨链读取合约生成与第二业务相关联的跨链读取请求,将跨链读取请求发送给第一链网络中的第一共识节点;跨链读取请求用于指示第一共识节点从第一链网络对应的第一链上读取与第二业务相关联的业务数据;第一链网络独立于第二链网络和目标链网络;业务数据是由第一共识节点在基于第一业务关联信息确定出第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约所确定的;第一业务关联信息是由第一共识节点基于第一业务调用第一链上的第一跨链读取合约从目标链上读取到的;
接收第一共识节点基于跨链读取请求返回的业务数据中的核心数据,基于核心数据执行第二业务,并将第二业务对应的第二业务执行结果写入第二链。
本申请实施例一方面提供了一种多区块链数据处理方法,方法由目标链网络中的目标共识节点执行,方法包括:
接收第一链网络中的第一共识节点发送的第一业务权限查询请求;第一业务权限查询请求是第一共识节点在获取到第一业务对象提交的第一业务时,调用第一链上的第一跨链读取合约所确定的;第一链为独立于目标链网络的第一链网络中的区块链;
基于第一业务查询请求从目标链网络对应的目标链上,读取与第一业务相关联的第一业务关联信息,将第一业务关联信息返回给第一共识节点,以使第一共识节点在基于第一业务关联信息确定第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到用于写入第一链的第一业务执行结果;第一业务执行结果中包含第一业务所指示的业务数据;
接收第二链网络中的第二共识节点发送的第二业务权限查询请求;第二业务权限查询请求是第二共识节点在获取到第二业务对象提交的第二业务时,调用第二链网络对应的第二链上的第二跨链读取合约所确定的;第二链网络独立于第一链网络和目标链网络;
基于第二业务查询请求从目标链上,读取与第二业务相关联的第二业务关联信息,将第二业务关联信息返回给第二共识节点,以使第二共识节点在基于第二业务关联信息确定第二业务对象具备第二业务对应的第二业务处理权限时,调用第二跨链读取合约生成用于发送给第一共识节点的与第二业务相关联的跨链读取请求;跨链读取请求用于指示第一共识节点从第一链上读取业务数据。
本申请实施例一方面提供了一种多区块链数据处理装置,装置运行在第一链网络中的第一共识节点上,装置包括:
第一业务获取模块,用于获取第一业务对象请求的第一业务,基于第一业务调用第一链上的第一跨链读取合约,从目标链上读取与第一业务相关联的第一业务关联信息;第一链为第一链网络中的区块链;目标链是独立于第一链网络的目标链网络中的区块链;第一链不同于目标链;
第一业务执行模块,用于在基于第一业务关联信息确定第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到与第一业务相关联的第一业务执行结果,且将第一业务执行结果写入第一链;第一业务执行结果中包含第一业务所指示的业务数据;
业务数据读取模块,用于在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,基于跨链读取请求中携带的第二业务从第一链上读取业务数据,且将业务数据中的核心数据返回给第二共识节点;第二共识节点用于在基于核心数据执行第二业务之后,将第二业务对应的第二业务执行结果写入第二链;第二链为第二共识节点所在的第二链网络中的区块链,第二链网络独立于第一链网络和目标链网络。
其中,与第一链网络对应的链入口为第一链入口;第一链入口存储有第一共识节点在第一跨链读取时间戳时通过第一跨链读取合约从目标链上所同步来的授权对象的注册数据信息;
第一业务获取模块包括:
第一业务请求单元,用于通过第一链网络的第一链入口,获取第一业务对象对应的第一业务节点基于第一业务发送的第一业务处理请求;第一业务处理请求中携带第一业务对象针对第一业务提交的交易业务数据、以及第一业务对象的第一签名信息;第一签名信息是由与第一业务对象相关联的第一业务节点通过第一业务对象的第一私钥信息,对交易业务数据进行签名后所得到的;第一业务对象的第一私钥信息是第一业务对象通过目标链中的对象身份管理合约进行身份注册后得到的;
签名验证单元,用于从第一业务处理请求中获取第一签名信息,基于第一链入口中存储的授权对象的注册数据信息对第一签名信息进行签名验证,得到第一业务对象的签名验证结果;
第一业务确定单元,用于在第一业务对象的签名验证结果指示签名验证成功时,确定第一业务对象为授权对象,且基于交易业务数据确定与第一业务对象相关联的第一业务;
跨链读取单元,用于基于第一业务调用第一跨链读取合约,从目标链上读取与第一业务相关联的第一业务关联信息。
其中,授权对象的注册数据信息中包含授权对象的公钥证书;授权对象的公钥证书是由目标链网络中的目标共识节点调用目标链中的对象身份管理合约,对授权对象提交的对象数据信息进行身份注册后所得到的;
签名验证单元包括:
证书获取子单元,用于从第一业务处理请求中获取第一签名信息,从第一链入口中存储的授权对象的注册数据信息中获取授权对象的公钥证书;一个授权对象的公钥证书中包含一个授权对象的公钥信息;
证书查找子单元,用于在授权对象的公钥证书中查找第一业务对象的公钥证书,且在查找到第一业务对象的公钥证书时,将查找到的第一业务对象的公钥证书作为第一公钥证书,且将第一公钥证书中的公钥信息作为第一业务对象的第一公钥信息;
签名验证子单元,用于基于第一公钥证书以及第一公钥信息对第一签名信息进行签名验证,得到第一业务对象的签名验证结果。
其中,签名验证子单元,具体用于将第一公钥证书的证书数据信息作为待处理证书信息,且在第二跨链读取时间戳时调用第一跨链读取合约中的证书数据读取方法,从目标链上读取第一业务对象的公钥证书;第二跨链读取时间戳为第一跨链读取时间戳的下一跨链读取时间戳;
签名验证子单元,还具体用于将读取到的第一业务对象的公钥证书中的证书数据信息作为目标证书信息;
签名验证子单元,还具体用于在待处理证书信息与目标证书信息保持一致时,基于第一公钥信息对第一签名信息进行签名验证,并将签名验证成功时的验证结果作为第一业务对象的签名验证结果。
其中,签名验证单元还包括:
请求拒绝子单元,用于在授权对象的公钥证书中未查找到第一业务对象的公钥证书时,将第一业务对象确定为非法业务对象,拒绝非法业务对象发送的第一业务处理请求。
其中,跨链读取单元包括:
访问请求生成子单元,用于基于第一业务调用第一跨链读取合约中的权限合约读取方法,生成用于发送给目标链网络中的目标共识节点的权限合约访问请求;权限合约访问请求用于指示目标共识节点调用目标链上的对象权限管理合约,获取与第一业务相关联的第一业务关联信息;
关联信息返回子单元,用于接收目标共识节点基于权限合约访问请求返回的第一业务关联信息。
其中,第一业务关联信息包含为第一业务对象配置的业务权限类型、具备业务权限类型的第一业务对象在业务时长内的业务累计量以及业务累计阈值;
第一业务执行模块包括:
处理权限确定单元,用于在基于第一业务关联信息确定第一业务对象的业务权限类型为开票权限类型,且具备开票权限类型的第一业务对象在业务时长内的业务累积量未达到业务累计阈值时,确定第一业务对象具备第一业务对应的第一业务处理权限;
票据合约调用单元,用于基于第一业务处理权限获取与开票权限类型相关联的合约调用地址和合约调用名称,通过合约调用地址和合约调用名称调用第一链上的电子票据开具合约,将第一业务对应的交易业务数据和与第一业务中的电子票据开具业务相关联的票据关键信息进行整合,基于整合后的票据关键信息为第一业务对象开具电子票据,将开具的电子票据作为第一业务所指示的业务数据;
区块校验单元,用于将票据关键信息、业务数据以及电子票据开具合约作为执行第一业务中的电子票据开具业务的第一业务执行结果,将包含第一业务执行结果的第一区块发送至第一链上的校验共识节点,以使校验共识节点对第一区块进行区块校验,得到区块校验结果;校验共识节点为第一链网络中除第一共识节点之外剩余的共识节点;
校验结果接收单元,用于接收校验共识节点返回的区块校验结果,若区块校验结果指示区块校验成功,则将第一区块写入第一链。
其中,票据关键信息包含从目标链上读取到的辅助元数据信息,且辅助元数据信息包含第一电子票据模板以及与第一电子票据模板相关联的目标计税规则;第一电子票据模板为目标链上的目标共识节点调用目标链上的元数据管理合约对第二电子票据模板进行变更上链后的电子票据模板;第二电子票据模板为第一电子票据模板的上一电子票据模板;元数据变更信息是由与目标共识节点相关联的业务管理对象所提交的。
其中,第一业务至少包含以下交易业务中的一种:电子票据开具业务、电子票据流转业务、电子票据红冲业务、电子票据归档业务;第一业务处理合约至少包含:用于执行电子票据开具业务的电子票据开具合约、用于执行电子票据流转业务的电子票据流转合约、用于执行电子票据红冲业务的电子票据红冲合约以及用于执行电子票据归档业务的电子票据归档合约;
其中,电子票据开具业务用于指示第一共识节点调用第一链上的电子票据开具合约,为第一业务对象开具电子发票;电子票据流转业务用于指示第一共识节点调用第一链上的电子票据流转合约,将电子发票由第一业务对象流转至第二业务对象;电子票据红冲业务用于指示第一共识节点调用第一链上的电子票据红冲合约,开具电子发票对应的红字发票,且红字发票用于更正电子发票中的相关票据信息;电子票据归档业务用于指示第一共识节点调用第一链上的电子票据归档合约,将第一链上满足票据归档条件的电子发票进行冷存储处理。
其中,业务数据读取模块包括:
票据读取请求发送单元,用于在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,从跨链读取请求中获取第二业务对象通过与第二链相关联的第二业务入口提交的第二业务;第二业务入口用于在确定第二业务对象具备在第二链上处理第二业务的权限时,允许第二业务对象通过第二共识节点调用第二跨链读取合约;
票据读取响应单元,用于基于第二业务所指示的跨链请求数据信息,从第一链上读取业务数据,将读取到的业务数据中的核心数据作为跨链读取请求对应的跨链请求响应信息,将跨链请求响应信息返回给第二共识节点,以使第二共识节点基于跨链请求响应信息调用第二链上的第二业务合约执行第二业务。
其中,第一业务执行模块,还用于在将第一业务执行结果写入第一链时,在第一业务执行结果对应的目标交易中指定与业务数据相关联的业务数据处理终端的处理终端标识;处理终端标识用于表征业务数据处理终端具备从第一链上清分到业务数据的功能;
第一业务执行模块,还用于在获取到业务数据处理终端发送的交易清分请求时,基于交易清分请求中携带的处理终端标识从第一链上获取目标交易,且从目标交易所包含的第一业务执行结果中清分到业务数据,将业务数据返回给业务数据处理终端,以使业务数据处理终端对业务数据进行数据分析。
本申请实施例一方面提供了一种多区块链数据处理装置,装置运行在第二链网络中的第二共识节点上,装置包括:
第二业务获取模块,用于获取第二业务对象请求的第二业务,基于第二业务调用第二链上的第二跨链读取合约,从目标链上读取与第二业务相关联的第二业务关联信息;第二链为第二链网络中的区块链;目标链是独立于第二链网络的目标链网络中的区块链;第二链不同于目标链;
跨链读取请求发送模块,用于在基于第二业务关联信息确定第二业务对象具备第二业务对应的第二业务处理权限时,调用第二跨链读取合约生成与第二业务相关联的跨链读取请求,将跨链读取请求发送给第一链网络中的第一共识节点;跨链读取请求用于指示第一共识节点从第一链网络对应的第一链上读取与第二业务相关联的业务数据;第一链网络独立于第二链网络和目标链网络;业务数据是由第一共识节点在基于第一业务关联信息确定出第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约所确定的;第一业务关联信息是由第一共识节点基于第一业务调用第一链上的第一跨链读取合约从目标链上读取到的;
第二业务执行模块,用于接收第一共识节点基于跨链读取请求返回的业务数据中的核心数据,基于核心数据执行第二业务,并将第二业务对应的第二业务执行结果写入第二链。
本申请实施例一方面提供了一种多区块链数据处理装置,装置运行在目标链网络中的目标共识节点上,装置包括:
第一查询请求接收模块,用于接收第一链网络中的第一共识节点发送的第一业务权限查询请求;第一业务权限查询请求是第一共识节点在获取到第一业务对象提交的第一业务时,调用第一链上的第一跨链读取合约所确定的;第一链为独立于目标链网络的第一链网络中的区块链;
第一关联信息返回模块,用于基于第一业务查询请求从目标链网络对应的目标链上,读取与第一业务相关联的第一业务关联信息,将第一业务关联信息返回给第一共识节点,以使第一共识节点在基于第一业务关联信息确定第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到用于写入第一链的第一业务执行结果;第一业务执行结果中包含第一业务所指示的业务数据;
第二查询请求接收模块,用于接收第二链网络中的第二共识节点发送的第二业务权限查询请求;第二业务权限查询请求是第二共识节点在获取到第二业务对象提交的第二业务时,调用第二链网络对应的第二链上的第二跨链读取合约所确定的;第二链网络独立于第一链网络和目标链网络;
第二关联信息返回模块,用于基于第二业务查询请求从目标链上,读取与第二业务相关联的第二业务关联信息,将第二业务关联信息返回给第二共识节点,以使第二共识节点在基于第二业务关联信息确定第二业务对象具备第二业务对应的第二业务处理权限时,调用第二跨链读取合约生成用于发送给第一共识节点的与第二业务相关联的跨链读取请求;跨链读取请求用于指示第一共识节点从第一链上读取业务数据。
本申请实施例一方面提供了一种多区块链数据处理系统,系统包括:第一链网络中的第一共识节点、目标链网络中的目标共识节点和第二链网络中的第二共识节点;第一链网络独立于目标链网络,且独立于第二链网络;
第一共识节点用于获取第一业务对象请求的第一业务,基于第一业务调用第一链上的第一跨链读取合约,生成第一业务权限查询请求;
目标共识节点用于在获取到第一共识节点发送的第一业务权限查询请求时,从目标链网络对应的目标链上读取与第一业务相关联的第一业务关联信息,将第一业务关联信息返回给第一共识节点;
第一共识节点还用于在基于第一业务关联信息确定第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到与第一业务相关联的第一业务执行结果,且将第一业务执行结果写入第一链;第一业务执行结果中包含第一业务所指示的业务数据;
第一共识节点还用于在获取到第二共识节点发送的跨链读取请求时,基于跨链读取请求中携带的第二业务从第一链上读取业务数据,且将业务数据中的核心数据返回给第二共识节点;跨链读取请求是第二共识节点在基于第二业务关联信息确定第二业务对象具备第二业务对应的第二业务处理权限时,调用第二跨链读取合约所生成的;第二业务关联信息时第二共识节点基于第二业务调用第二跨链读取合约从目标链上读取到的;
第二共识节点用于在基于核心数据执行第二业务之后,将第二业务对应的第二业务执行结果写入第二链。
本申请实施例一方面提供了一种计算机设备,包括存储器和处理器,存储器与处理器相连,存储器用于存储计算机程序,处理器用于调用计算机程序,以使得该计算机设备执行本申请实施例中上述一方面提供的方法。
本申请实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序适于由处理器加载并执行,以使得具有处理器的计算机设备执行本申请实施例中上述一方面提供的方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一方面提供的方法。
在本申请实施例中,第一链网络中的第一共识节点可以在获取到第一业务对象请求的第一业务时,基于第一业务调用第一链上的第一跨链读取合约,从目标链上读取与第一业务相关联的第一业务关联信息;第一链为第一链网络中的区块链;目标链是独立于第一链网络的目标链网络中的区块链;第一链不同于目标链;进一步的,该第一链网络中的第一共识节点可以在基于第一业务关联信息确定第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到与第一业务相关联的第一业务执行结果,且将第一业务执行结果写入第一链;第一业务执行结果中包含第一业务所指示的业务数据;进一步的,该第一链网络中的第一共识节点还可以在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,基于跨链读取请求中携带的第二业务从第一链上读取业务数据,且将业务数据中的核心数据返回给第二共识节点;应当理解,这里的第二共识节点用于在基于核心数据执行第二业务之后,将第二业务对应的第二业务执行结果写入第二链;第二链为第二共识节点所在的第二链网络中的区块链,第二链网络独立于第一链网络和目标链网络。由此可见,本申请实施例提供了一种全新的多区块链协作机制,该多区块链协作机制旨在强调可以在第一链、目标链和第二链这三链之间进行互相协作,以确保第一链网络中的共识节点(即前述第一共识节点)可以用于独立处理一些具有较大请求数据量的第一业务所构成的实时业务流。这样,在区块链的核心数据流转的业务场景下,第一共识节点可以参与维护该第一链网络中的第一链,且该第一链主要用于存储执行实时业务流中的各第一业务所得到的业务数据。此外,第二共识节点可以参与维护该第二链网络中的第二链,且该第二链主要用于存储第二业务执行结果,需要注意的是,这里的第二业务执行结果是基于从前述第一链上跨链流转至该第二链的业务数据中的核心数据(即业务数据中部分授权可见的数据)而开展的第二业务所确定的;此外,需要注意的是,这里的目标共识节点可以用于对接入第二链网络和第一链网络中的业务对象的权限(比如,身份权限和业务权限)进行集中管理。显然,通过部署的多区块链来分别进行数据存储,可以有效地降低各区块链上数据存储的混杂度,另外,通过多区块链之间的相互协作,还可以提升各链上所存储数据的安全性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种区块链网络的分层结构示意图;
图2是本申请实施例提供的一种基于多区块链的区块链电子票据平台的场景示意图;
图3是本申请实施例提供的一种多区块链数据处理方法;
图4是本申请实施例提供的一种通过链入口进行身份鉴权的场景示意图;
图5是本申请实施例通过的一种在三链之间进行跨链交互的场景示意图;
图6是本申请实施例提供的一种多区块链数据处理方法;
图7是本申请实施例提供的一种多区块链数据处理方法;
图8是本申请实施例提供的一种多区块链数据处理方法;
图9是本申请提供的一种多区块链数据处理装置的结构示意图;
图10是本申请提供的一种多区块链数据处理装置的结构示意图;
图11是本申请提供的一种多区块链数据处理装置的结构示意图;
图12是本申请实施例提供的一种计算机设备的结构示意图;
图13是本申请实施例提供的一种多区块链数据处理系统的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图1,图1是本申请实施例提供的一种区块链网络的分层结构示意图。如图1所示的分层结构应用于多业务协作处理平台所对应的区块链系统,在该区块链系统所对应的区块链网络中,包含部署在公网中的业务网络、和部署在私有云中的多个共识网络。如图1所示,这里的业务网络可以为图1所示的业务网络100a,且这里的多个共识网络具体可以包含图1所示的共识网络100a、共识网络200a和共识网络300a。
在如图1所示的业务网络400a中,部署有多个业务节点,这里的多个业务节点具体可以包含图1所示的业务节点110a、业务节点110b、业务节点110c、业务节点110d、业务节点110e、业务节点110f、业务节点110g、…、业务节点110n。其中,需要注意的是,这里将不对部署在该业务网络400a中的业务节点的数量进行限定。应当理解,处于业务网络400a中的业务节点不需要参与记账。此外,如图1所示,对于运行在该业务网络400a中的各个业务节点而言,均可以通过网络通信的形式访问上述多个共识网络中的一个或者多个,这里将不对各业务对象通过相应业务节点访问到的共识网络的数量进行限定。可以理解的是,各个共识网络之间也可以通过网络通信的形式进行数据交互。
应当理解,在如图1所示的共识网络100a中,部署有多个共识节点,这里的多个共识节点具体可以包含图1所示的共识节点10a、共识节点10b、共识节点10c和共识节点10d。需要注意的是,这里将不对部署在该共识网络100a中的共识节点的数量进行限定。此外,如图1所示,对于运行在该共识网络100a中的多个共识节点而言,共同维护的区块链具体为图1所示的区块链10e。
同理,在如图1所示的共识网络200a中,部署有多个共识节点,这里的多个共识节点具体可以包含图1所示的共识节点11a、共识节点11b、共识节点11c和共识节点11d。需要注意的是,这里将不对部署在该共识网络200a中的共识节点的数量进行限定。此外,如图1所示,对于运行在该共识网络200a中的多个共识节点而言,共同维护的区块链具体为图1所示的区块链11e。
以此类推,在如图1所示的共识网络300a中,部署有多个共识节点,这里的多个共识节点具体可以包含图1所示的共识节点12a、共识节点12b、共识节点12c和共识节点12d。需要注意的是,这里将不对部署在该共识网络300a中的共识节点的数量进行限定。此外,如图1所示,对于运行在该共识网络300a中的多个共识节点而言,共同维护的区块链具体为图1所示的区块链12e。
为便于理解,本申请实施例可以将位于上述区块链系统中的业务节点和共识节点统称为区块链节点(简称为节点),并可以将参与构成上述区块链系统的共识网络100a、共识网络100b和共识网络100c统称为核心共识网络,并可以将上述核心共识网络中的各个节点统称为核心节点。
应当理解,本申请实施例所涉及的区块链是一种分布式数据存储、点对点传输、共识机制以及加密算法等计算机技术的新型应用模式,主要用于对数据按时间顺序进行整理,并加密成账本,使其不可被篡改和伪造,同时可进行数据的验证、存储和更新。区块链本质上是一个去中心化的数据库,该数据库中的每个节点均存储一条相同的区块链。
为便于对上述多业务协作处理平台所对应区块链系统中的各个核心共识网络进行区分,本申请实施例可以结合该多业务协作处理平台的具体应用场景(例如,区块链电子票据平台下的电子票据核心数据流转场景),将上述共识网络100a统称为目标链网络,并将在该目标链网络中由各个共识节点所共同维护的区块链10e统称为目标链,还可以将在该目标链网络中所选取的用于执行管理业务(例如,注册业务和授权业务等)的共识节点作为该目标链网络中的目标共识节点。同理,可以理解的是,本申请实施例可以将上述共识网络200a统称为第一链网络,并将在该第一链网络中由各个共识节点所共同维护的区块链11e统称为第一链,还可以将在该第一链网络中所选取的用于执行第一业务(该第一业务具体可以为与电子票据相关联的票据业务,例如,电子票据开具业务等)的共识节点作为该目标链网络中的第一共识节点。以此类推,本申请实施例可以将上述共识网络300a统称为第二链网络,并将在该第二链网络中由各个共识节点所共同维护的区块链12e统称为第二链,还可以将在该第二链网络中所选取的用于执行第二业务(该第二业务具体可以为与电子票据相关联的衍生业务,例如,企业资质识别业务等)的共识节点作为该目标链网络中的第一共识节点。应当理解,对于各核心共识网络而言,这里的管理业务、票据业务以及衍生业务均可以视为由相应业务对象所发起的交易的交易业务。
比如,在上述区块链系统应用于区块链电子票据平台中时,可以基于上述目标链、第一链和第二链构建得到一个安全可靠的区块链电子票据三链网络,在该区块链电子票据三链网络中,当在上述三个共识网络中独立执行上述业务的情况,可以将独立执行上述业务所得到的业务执行结果分别存入对应的区块链的区块链账本,进而可以从根源上避免各链上数据存储的混杂度。
具体的,比如,在共识网络100a被用作目标链网络,且该目标链网络为前述区块链电子票据三链网络中的目标链网络时,该共识网络100a中的每个节点(比如,共识节点10a、共识节点10b、共识节点10c和共识节点10d等核心节点)上所存储的区块链10e为上述目标链,这里的目标链具体可以为上述目标链网络中的管理链,且从该管理链网络中的所确定的上述管理共识节点(或者目标核心节点)可以统称为目标共识节点。又比如,在共识网络200a被用作第一链网络,且该第一链网络为前述区块链电子票据三链网络中的票据链网络时,共识网络200a中的每个节点(比如,共识节点11a、共识节点11b、共识节点11c和共识节点11d等核心节点)上所存储的区块链11e为第一链,这里的第一链具体可以为上述区块链系统中的票据链,且从该票据链网络中所确定的票据共识节点(或者第一核心节点)可以统称为第一共识节点。即本申请实施例可以利用该票据链网络中的共识机制将在该票据链网络的共识节点中所选取的某个共识节点(即前述票据共识节点)作为第一共识节点,并可以将在该票据链网络的共识节点中,将除第一共识节点之外所剩余的共识节点统称为校验共识节点(此时,该校验共识节点具体为票据校验共识节点)。又比如,在共识网络300a被用作第二链网络,且该第二链网络为前述区块链电子票据三链网络中的应用合约链网络时,共识网络300a中的每个节点(比如,共识节点12a、共识节点12b、共识节点21c和共识节点12d等核心节点)上所存储的区块链12e为第二链,这里的第二链具体可以为上述区块链系统中的应用合约链,且从该应用合约链网络中所确定的应用共识节点(或者第二核心节点)可以统称为第二共识节点,即本申请实施例可以利用该第二链网络中的共识机制将在该应用合约链的共识节点中所选取的某个共识节点(即前述应用共识节点)作为第二共识节点,并可以将在该应用合约链网络的共识节点中,将除第二共识节点之外所剩余的共识节点也统称为校验共识节点(此时,该校验共识节点具体为应用校验共识节点)。
在上述区块链系统中,核心节点可以负责对应区块链所在的核心共识网络中的共识,也就是说核心节点可以为对应区块链所在核心共识网络中的共识节点。对于上述三个核心共识网络中的任意一个核心共识网络而言,将核心共识网络中的交易数据写入对应区块链账本(例如,分布式数据库)的具体过程可以为,用户客户端发送交易数据至某个业务节点,随后该交易数据以接力棒的方式在上述区块链网络内的业务网络中的业务节点之间传递,直到上述区块链网络内的相应核心共识网络中的共识节点(例如,共识网络200a中的共识节点11b)收到该交易数据,此时,共识节点(例如,共识网络200a中的共识节点11b)再将该交易数据打包进区块,以便于后续可以与其他共识节点之间进行共识,从而可以在共识通过后,将共识通过的区块写入自己所在核心共识网络(例如,共识网络200a)的分布式数据库。
可选的,可以理解的是,本申请实施例还可以在共识通过后,通过自己所在核心共识网络(例如,共识网络200a)的存储层将携带该交易数据的区块和与该区块关联的其他多个区块并行写入分布式数据库,这样可以从根源上突破区块链的区块链结构的限制,进而可以有效地提升数据存储的存储效率。
其中,可以理解的是,在上述区块链系统中,可以在相应核心共识网络的区块链上部署智能合约,该智能合约在区块链系统中可以理解为是一种由各区块链节点(即各共识节点)执行的代码,通过该智能合约可以执行任意逻辑并得到结果。比如,用户可以通过用户客户端发起一个交易业务请求的方式,调用相应核心共识网络(例如,上述共识网络200a)的区块链(例如,上述区块链11e)上已经部署的智能合约。
具体的,业务网络中的业务节点可以将该交易业务请求发送至相应核心共识网络中的共识节点(例如,图1所示的共识节点11a),以通过相应核心共识网络的链入口对该发送交易业务请求的用户进行身份鉴权,且在身份鉴权成功时允许将该用户所发送的交易业务请求发送至相应核心共识网络中的其他共识节点(例如,图1所示的共识节点11b),以调用这些共识节点(例如,图1所示的共识节点11a和共识节点11b)中运行的智能合约执行该用户所请求的交易业务。
应当理解,在上述核心共识网络(例如,上述共识网络200a)的区块链(例如,上述区块链11e)上可以部署一个或多个智能合约,这些智能合约可以通过合约调用地址、合约标识号(Identity document,ID)或合约名称来进行区分,而用户客户端发起的交易业务请求中,也可以携带智能合约的合约调用地址或者合约标识号或合约名称,以此指定需要运行的智能合约。而在上述区块链系统中,若用户客户端所指定的智能合约为需要跨链读取数据的智能合约(即跨链读取合约),则各个共识节点会通过该跨链读取合约所指定的链标识,请求从对应区块链上进行数据的读取,最后各个共识节点会互相验证基于跨链读取到的信息执行交易后所得到的各交易执行结果是否一致(也就是进行共识),若一致则可以将交易执行结果存入各自的本地缓存和本地存储中,并可以将上述交易业务的交易执行结果返回至客户端。注意,这里的本地缓存为在存储层中创建的系统内存,这里的本地存储为在存储层中所创建的用于进行数据存储的硬盘空间。这样,当核心共识网络中的某个共识节点出现宕机(即down机)或者系统故障时,并不会因为系统内存中的数据消失而造成无法进行数据读取的现象,即该共识节点还可以通过在该存储层中创建的本地存储来进行数据的读取。
应当理解,在上述区块链系统中,任意一个共识网络(例如,共识网络100a、共识网络200a或者共识网络300a)中的任意两个区块链节点之间可以形成点对点(P2P,Peer ToPeer)网络,该点对点网络可以采用P2P协议,其中,该P2P协议是一个运行在传输控制协议(TCP,Transmission Control Protocol)协议之上的应用层协议。在分布式系统中,任何设备如服务器、终端等都可以加入而成为区块链节点,其中,每个区块链节点均可以包括硬件层、中间层、操作系统层和应用层。
其中,可以理解的是,本申请实施例可以通过上述目标链网络中的目标共识节点为接入该区块链网络的任意一个角色(例如,任意一个个人用户、任意一个企业、任意一个机构等实体对象)配置一个区块链节点。所以,在如图1所示的业务网络400a中,业务节点110a、业务节点110b、业务节点110c、业务节点110d、…、业务节点110n可以分别与需要接入该区块链网络中的相应角色之间存在一一对应关系。
可以理解的是,在上述共识网络100a被作为上述目标链网络时,位于该目标链网络中的共识节点(例如,上述目标共识节点,该目标共识节点可以为图1所示的共识节点10a)可以为通过目标链网络入口而接入该目标链网络中的相应角色(或者相应对象)提供注册业务和授权业务,进而可以在该目标链网络中对需要接入上述区块链网络(例如,上述目标链网络、第一链网络或者第二链网络)中的相应角色(即相应对象)进行身份管理和权限管理。除此之外,位于该目标链网络中的目标共识节点还可以用于对上述区块链系统中的相关元数据信息进行数据管理,比如,可以管理更新目标链上的合约模板(应当理解,目标链上的合约模板具体可以包含部署在目标链上的智能合约的管理合约模板和部署在第二链上的智能合约的应用合约模板),管理更新记录在目标链上的票据模板,管理更新与该票据模板相关联的计税规则等、控制第一链所对应链入口处的访问流量、控制各链上参与共识的共识节点的数量等。
比如,当开发者和税务业务参与方需要在第二链上部署某个第二业务对应的智能合约时,可以在通过第二链对应的链入口(即第二链入口)接入该第二链网络的情况下,进一步通过第二链上的跨链读取合约中的合约模板读取方法,从该合约模板读取方法所指示的目标链上读取该第二业务对应的应用合约模板,以在该第二链上基于读取到的应用合约模板部署该第二业务对应的智能合约。这样,当后续税务业务参与方需要在该第二链上执行第二业务时,则可以利用已经部署好的第二业务对应的智能合约来执行相应第二业务。
应当理解,在上述共识网络200a被作为上述第一链网络时,位于第一链网络中的共识节点(例如,上述第一共识节点,该第一共识节点可以为图1所示的共识节点11b)可以用于提供第一业务。这里的第一业务可以包含但不限于与上述电子票据相关联的票据业务,这里的票据业务具体可以包含电子票据开具业务、电子票据流转业务、电子票据红冲业务、电子票据归档业务等与电子票据相关的业务。
此外,还可以理解的是,在上述共识网络300a被作为上述第二链网络时,位于第二链网络中的共识节点(例如,上述第二共识节点,该第二共识节点可以为图1所示的共识节点12b)可以用于提供与前述第一业务相关联的第二业务(例如,信贷业务、进出亏业务、企业资质业务、社交业务、赊购业务和退税业务、抽奖业务等)。
其中,可以理解的是,由于每个实体对象均可以对应一个区块链节点,所以,本申请实施例可以以实体对象为上述企业用户(即前述企业)为例,此时,与每个企业用户相关联的区块链节点可以为同一区块链节点(例如,上述图1所示的业务节点110c可以与多个企业用户所对应的用户终端进行数据交互)。比如,在上述区块链系统中,可以将每个企业用户所请求的第一业务(比如,电子票据开具业务、电子票据流转业务、电子票据红冲业务、电子票据归档业务等与电子票据相关的业务)统称为一笔交易业务。其中,在上述企业用户为请求通过第一链网络(例如,上述共识网络200a)进行开票的开票企业A时,可以通过图1所示的业务节点110c与上述共识网络200a中的共识节点(例如,共识节点11b)进行数据交互,以请求完成相应的交易;同理,开票企业B也可以通过图1所示的业务节点110c与上述共识网络200a中的共识节点(例如,共识节点11b)进行数据交互,以请求完成相应的交易;以此类推,开票企业C也可以通过图1所示的业务节点110c与上述共识网络200a中的共识节点(例如,共识节点11b)进行数据交互,以请求完成相应的交易。
其中,可以理解的是,本申请实施例可以将针对上述电子票据业务向第一链网络发送交易业务请求的实体对象(例如,开票企业A、开票企业B、...、开票企业C)统称为第一业务对象,并可以在业务网络(例如,上述业务网络400a)中,将与该第一业务对象(例如,开票企业A、开票企业B、...、开票企业C)相关联的区块链节点(例如,上述业务节点110c)统称为第一业务节点,还可以在核心共识网络(例如,上述作为第一链网络的共识网络200a)中,将获取该交易业务请求所指示的电子票据开具业务的区块链节点统称为上述第一共识节点。
可以理解的是,当与上述第一业务对象相关联的第一共识节点接收到与票据业务相关联的交易业务请求时,可以将该第一业务对象所发起的交易业务请求转发给第一共识节点,以通过第一共识节点对该第一业务对象所发起的交易业务请求进行合法性验证。这样,第一共识节点可以在合法性验证通过时,将该第一业务对象所请求的交易业务(比如,上述票据业务)添加至交易池,以便于后续可以将与该交易业务(比如,上述票据业务)相关联的交易数据打包成区块,以在共识网络200a中的共识节点之间进行区块共识,从而可以在区块共识通过后,将该区块的块数据写入至本地缓存和本地存储,以便于后续可以基于上述分布式存储实现多个区块的块数据的并行存储。
为便于理解,进一步的,请参见图2,图2是本申请实施例提供的一种基于多区块链的区块链电子票据平台的场景示意图。该区块链电子票据平台可以为上述多业务协作处理平台,即该区块链电子票据平台可以为上述区块链系统中的具体业务平台。应当理解,在该区块链电子票据平台中,为降低在链上数据存储的混杂度,提出了一种全新的基于区块链电子票据的多链体系,且该多链体系主要涉及图2所示的区块链电子票据三链网络。如图2所示,该区块链电子票据三链网络中部署有管理链、票据链和应用合约链。这里的管理链可以为上述目标链,这里的票据链可以为上述第一链,且这里的应用合约链可以为上述第二链。
其中,可以理解的是,在以区块链作为区块链电子票据核心数据流转的业务场景中,可以通过管理链、票据链和应用合约链之间的相互协作,为整个区块链电子票据平台提供独立执行不同业务的功能特性,从而可以在三链相互协作的前提下,构造一个安全且高效的业务流系统。应当理解,这里以多链系统为三链体系为例,在该三链系统下,管理链、票据链和应用合约链均是独立搭建的,即用于维护该管理链的共识节点不同于用于维护该票据链的共识节点,且不同于用于维护该应用合约链的共识节点。
如图2所示,部署在区块链电子票据三链网络中的管理链独立于票据链和应用合约链,即这三条独立搭建的区块链之间是彼此相互独立的,但是这三条独立搭建的区块链之间可以通过跨链的方式进行数据交互,即这三链之间可以进行跨链交互。比如,在如图2所示的票据链上部署有第一跨链读取合约的情况下,参与维护该票据链的共识节点(即上述第一共识节点)则可以通过该第一跨链读取合约,跨链读取管理链上的业务关联信息来进行业务权限的确认。又比如,在如图2所示的应用合约链上部署有第二跨链读取合约的情况下,参与维护该应用合约链的共识节点(即上述第二共识节点)可以通过该第二跨链读取合约,跨链读取管理链上的业务关联信息来进行业务权限的确认,还可以通过该第二跨链读取合约,跨链读取票据链上的核心数据(比如,票据链上的电子票据中的票据信息)来执行相应的衍生业务(即上述第二业务,比如,可以通过从票据链上所读取到的票据信息来执行上述征信业务,以得到某个企业的企业征信信息)。
比如,这里的管理链可以用于为整个区块链电子票据平台提供管理功能特性,这里的票据链可以为整个区块链电子票据平台提供不同业务权限类型的票据业务(即上述第一业务)的功能特性。应当理解,在本申请实施例中,为确保写入票据链中的电子票据的安全性和独立性,本申请实施例提出可以通过独立于管理链和票据链的另一区块链(即图2所示的应用合约链)来提供更加规范、灵活和功能完备的衍生业务(即上述第二业务),即这里的应用合约链则可以为整个区块链电子票据平台提供基于电子票据中核心数据来开展衍生业务的功能特性。
为便于理解,这里以管理链所在的核心共识网络(即上述管理链网络)为上述图1所示的共识网络100a为例,此时,参与维护该管理链的共识节点可以为上述管理共识节点。如图2所示,该管理链上部署有多个智能合约,这些智能合约可以运行在管理共识节点上。具体的,可以理解的是,这里的多个智能合约具体可以包含图2所示的对象权限管理合约、对象身份管理合约、元数据管理合约和内部管理合约。应当理解,该管理链上所部署的这些智能合约是由图2所示的内部参与方(即税务管理部门)分别通过自己链(即管理链)上部署的相应管理合约模板所确定的。
可以理解的是,前述税务管理部门可以通过该部署在管理链网络中的管理共识节点行使管理职责。比如,这里的管理职责具体可以包含对政务部门内部的信息(比如,税务管理部门内部人员的信息)进行管理、对整体业务的业务逻辑规则(例如,应用合约链上所运行的用于执行衍生业务的业务逻辑的衍生业务合约)进行管理、对整体业务的元数据信息(例如,三链体系下的各链入口处的访问流量)进行管理、对整体业务的参与者(比如,个人用户、企业用户、税务业务参与方等业务对象)进行身份管理和权限管理等。应当理解,在整体业务所对应的区块链网络中,由该管理共识节点所维护的管理链是相对更稳定、数据规模最小、但安全性最高的区块链。
此外,为便于理解,这里以图2所示的票据链所在的核心共识网络(即上述票据链网络)为上述图1所示的共识网络200a为例,此时,参与维护该票据链的共识节点可以为上述第一共识节点。如图2所示,该票据链上部署有多个智能合约,这些智能合约可以运行在第一共识节点上。具体的,可以理解的是,这里的多个智能合约具体可以包含图2所示的电子票据开具合约、电子票据流转合约、电子票据红冲合约、电子票据归档合约和第一跨链读取合约。同理,应当理解,该票据链上所部署的这些智能合约是由图2所示的内部参与方(例如,与电子票据数据中心相关联的税务部门)通过管理链上部署的相应票据业务合约模板所确定的。
可以理解的是,该部署在票据链网络中的第一共识节点可以通过票据链维护电子票据在全生命周期内的业务逻辑,比如,可以通过该票据链管理所有开具的电子票据的全生命周期。比如,这里的电子票据的全生命周期包含电子票据的开具、电子票据的流转和电子票据的报销等。应当理解,在整体业务所对应的区块链网络中,由该第一共识节点所维护的票据链具有高性能、低延迟的特点。
同理,为便于理解,这里以应用合约链所在的核心共识网络(即上述应用合约链网络)为上述图1所示的共识网络300a为例,此时,参与维护该应用合约链的共识节点可以为上述第二共识节点。如图2所示,该应用合约链上部署有多个智能合约,这些智能合约具体可以运行在第二共识节点上。具体的,可以理解的是,这里的多个智能合约具体可以包含图2所示的虚拟机兼容合约、开放合约部署合约、衍生业务合约和第二跨链读取合约。
可以理解的是,该部署在应用合约链网络中的第二共识节点可以通过应用合约链承载可变化的票据业务所对应的衍生业务,比如,这里的衍生业务可以具体可以包含上述征信业务、上述资质识别业务等。应当理解,在整体业务所对应的区块链网络中,由该第二共识节点所维护的应用合约链,可以支持图2所示的政务协作部门和联盟链伙伴(即图2所示的业务关联部门),通过图2所示的税务应用合约(开放合约部署合约)间接调用第二跨链读取合约,以利用跨链读取到的管理上的应用合约模板来开发与衍生业务相关的智能合约(例如,图2所示的衍生业务合约),并可以经过税务管理部门审核后将该衍生业务合约部署在应用合约链上。应当理解,部署在应用合约链上的智能合约可以通过虚拟机兼容合约实现智能合约的灵活升级和变化,应当理解,在整体业务所对应的区块链网络中,该第二共识节点可以通过应用合约链上的第二跨链读取合约实现跨链交互,比如,可以通过第二跨链读取合约从票据链上读取上述核心数据来执行衍生业务。这意味着由该第一共识节点所维护的应用合约链,相较于管理链和票据链而言,具有最高的开放度,且支持复杂的智能合约逻辑,参与方较多且不断动态变化,性能相对低于票据链。
其中,可以理解的是,在图2所示的区块链电子票据三链网络中,管理链所采用的共识算法,不同于票据链所采用的共识算法,也不同于应用合约链所采用的共识算法。
具体的,1.1)与管理链相关联的共识算法为一种即时确定性共识算法,比如,这里的即时确定性共识算法可以为PBFT(Practical Byzantine Fault Tolerance,实用拜占庭容错)共识算法,通过该PBFT共识算法可以立即确定某个待上链的提议区块的状态。应当理解,该管理链为上述管理链网络中的区块链,在该管理链网络中的共识节点(即上述管理共识节点)可以由图2所示的税务管理部门参与进行管理。
应当理解,与该管理链相关联的内部参与方可以为图2所示的税务管理部门,比如,该税务管理部门在作为内部参与方参接入该管理链时,可以通过管理链上的内部管理合约对该税务管理部门的一些内部状态进行管理,比如,可以对该税务管理部门中的各人员进行管理,比如,可以在税务管理部门的这些人员中配置特定的税务管理人员、税务开发人员、税务审计人员等。此外,该税务管理部门在作为内部参与方参接入该管理链时,还可以通过管理链上的内部管理合约对该三链体系中的一些参数进行管理,比如,通过该内部管理合约可以对图2所示的票据链入口处的访问流量所对应的访问流量参数进行限制,例如,可以通过分时访问机制控制票据链入口处的某些特定时间段内的访问流量不大于访问流量阈值。又比如,该税务管理部门在作为内部参与方参接入该管理链时,还可以通过管理链上的内部管理合约对参与共识的各链上的共识节点的数量所对应的节点数量参数进行限定。
1.2)与票据链相关联的共识算法为另一种即时确定性共识算法,比如,这里的即时确定性共识算法可以为TBFT(Tower Byzantine Fault Tolerance,塔式拜占庭容错)共识算法,该TBFT共识算法是一种拜占庭容错算法,可以在拜占庭节点数(即票据链网络中的作恶节点数)小于票据链网络的节点总数1/3的情况下,保证整个票据链网络系统的安全运行。应当理解,处于票据链网络中的共识节点可以由前述税务管理部门参与进行管理,比如,税务管理部门中的特定税务人员可以通过上述管理链中的内部管理合约控制该票据链网络中的共识节点的数量。又比如,税务管理部门中的特定税务人员所对应的税局终端可以参与构成该票据链网络。
应当理解,上述TBFT共识算法与PBFT共识算法的最大区别在于:PBFT共识算法有一个固定的leader节点(即主节点)用于打包交易池中的交易,当leader节点故障的时候会使用view-change子协议(即一种主节点切换子协议)更换leader节点;而在TBFT共识算法中,leader节点是基于轮换机制而轮换的,比如,在当前节点被作为leader节点时,每提交X个区块(X的值可以配置),则会自动将该leader节点轮换成下一个节点。这意味着在该票据链对应的票据链网络中的共识节点可以用于连续出块。
1.3)与应用合约链相关联的共识算法为又一种即时确定性共识算法,比如,这里的即时确定性共识算法可以为PoS(proof-of-stake,权益证明)共识算法,通过该权益证明共识算法可以维护该应用合约链所在应用合约链网络的网络安全性,且通过该权益证明共识算法可以立即确定某个待上链的提议区块的状态。可以理解的是,在该应用合约链网络中的共识节点可以由图2所示的税务管理部门和政务协作部门以及大型参与机构(即前述联盟链中的大型企业,该大型企业即为前述图2所示的业务关联部门)等共同参与进行管理。比如,税务管理部门中的税务人员(比如,图2所示的税务业务参与方)可以通过应用合约链网络中的共识节点跨链读取前述票据链上所写入的电子票据的票据信息,以通过跨链读取到的票据信息执行与前述票据业务相关联的衍生业务。比如,可以通过跨链读取到的票据信息对请求开票的开票企业进行资质识别或者征信识别,以得到该开票企业的资质数据或者征信数据。应当理解,如图2所示,这里的税务业务参与方在通过图2所示的应用合约链入口接入应用合约链网络时,可以调用该图2所示的应用合约链上的第二跨链读取合约,从图2所示的票据链上读取基于衍生业务所请求的电子票据中的核心数据,以利用读取到的核心数据在该应用合约链上开展相应的衍生业务。
应当理解,在本申请实施例中,无需将票据链上所产生的大量的电子票据直接跨链转移至应用合约链,而是将票据链上所产生的这些电子票据中的部分授权可见的票据信息(即前述核心数据)跨链转移至应用合约链,这样可以从根源上确保票据链上所记录的这些电子票据的隐私性和安全性。
由此可见,对于请求接入上述应用合约链中的税务业务参与方而言,可以根据所请求的衍生业务的不同,从票据链上跨链读取到不同的核心数据(即可以从上述电子票据中获取到不同数据内容的票据信息)。
应当理解,针对该区块链电子票据三链网络中的智能合约而言,存在以下区别:
2.1)应当理解,如图2所示的管理链上可支持特定语言智能合约引擎,上述管理共识节点通过该特定语言智能合约引擎可以在管理链上部署特定语言智能合约,比如,可以在管理链上部署上述图2所示的对象权限管理合约、对象身份管理合约、元数据管理合约和内部管理合约等。应当理解,这些智能合约可以由税务管理部门中的特定税务管理人员开发和管理。
2.2)如图2所示的票据链上内置有特定票据业务逻辑的智能合约,这些智能合约(例如,上述图2所示的电子票据开具合约、电子票据流转合约、电子票据红冲合约、电子票据归档合约和第一跨链读取合约)可以随着票据业务的更新而进行升级。比如,本申请实施例可以通过从管理链上所读取到的元数据信息更新电子票据开具合约中的票据业务逻辑,进而可以根据更新后的电子票据开具合约来更新处理上述票据业务。这意味着该票据链不支持独立的智能合约引擎,自然也就不支持在该票据链上部署与票据业务无关的其他合约。这样做的好处是让该票据链仅运行与电子票据相关的业务逻辑,且不受其他智能合约的影响,从而可以使该票据链的运行更加独立稳定,更抗攻击。
2.3)该应用合约链上支持多语言、图灵完备面向开发者的智能合约,比如,如图2所示,开发者在通过应用合约链入口接入该应用合约链时,可以通过虚拟机兼容合约兼容主流的EVM虚拟机,以便于可以在兼容的虚拟机上部署运行各种新的业务合约,比如,可以在应用合约链上部署与衍生业务(例如,上述抽奖业务)相关联的衍生业务合约。又比如,可以在应用合约链上部署与另一衍生业务(例如,上述退税业务)相关联的衍生应用合约。
应当理解,如上述图2所示,在区块链电子票据三链网络中,并未在管理链上部署跨链读取合约,故而此时,该管理链并不具备跨链能力。由于图2所示的票据链和应用合约链上均部署有跨链读取合约,故而具备跨链能力。
具体的,与票据链相关联的共识节点(例如,上述第一共识节点)可以通过图2所示的第一跨链读取合约从管理链读取部分管理链信息,比如,可以从管理链读取用于存入票据链入口处的授权对象的注册数据信息;又比如,可以从管理链上读取用于对第一业务对象的业务权限进行确认的第一业务关联信息,还可以从管理链上读取用于开具电子票据(例如,电子发票)时的票据关键信息。
其中,这里的票据关键信息是指在确定业务权限为开票权限类型时,基于该票据业务中的电子票据业务从管理链上所读取到的授权可见的辅助元数据信息(例如,管理上所记录的更新后的电子票据模板)。
此外,与应用合约链相关联的共识节点(例如,上述第二共识节点)可以通过图2所示的第二跨链读取合约从管理链读取部分管理链信息,比如,可以从管理链上读取用于存入图2所示的应用合约链入口的授权对象的业务参与许可凭证,也可以从管理链读取用于对请求执行衍生业务的业务对象进行业务鉴权的第二业务关联信息,还可以从票据链读取部分票据链信息(例如,从票据链读取与衍生业务相关联的电子票据中的部分授权可见的票据信息)。应当理解,第二共识节点从管理链读取到的部分管理链信息和部分票据链信息均可以用于开展上述衍生业务。
应当理解,如图2所示,在区块链电子票据三链网络中,与管理链相关联的公开网络参与方可以为图2所示的个人用户和企业用户。同理,如图2所示,与票据链相关联的公开网络参与方可以为图2所示的各地电子票据数据流系统。这里的各地电子票据数据流系统具体包含各地方电子票据业务开具系统(例如,各地方税局系统),电子票据开票服务商,大型企业财税相关系统等。同理,如图2所示,与应用合约链相关联的公开网络参与方可以为图2所示的税务业务参与方和开发者。
具体的,3.1)与管理链相关联的链入口可以为图2所示的管理链入口。当图2所示的个人用户(例如,用户A)和企业用户(例如,企业B)等作为公开网络参与方时,可以通过该管理链入口接入管理链,进而可以通过该管理链进行身份注册和身份授权等业务。3.2)与票据链相关联的链入口可以为图2所示的票据链入口。当图2所示的各地方电子票据数据流系统(例如,大型企业用户)等作为公开网络参与方时,可以通过该票据链入口接入票据链,进而可以通过该票据链执行电子票据开具业务、电子票据流转业务、电子票据红冲业务和电子票据归档业务。3.3)与应用合约链相关联的链入口可以为图2所示的应用合约链入口。当图2所示的税务业务参与方和开发者等作为公开网络参与方时,可以通过该应用合约链入口接入应用合约链,进而可以通过在应用合约链上部署衍生业务合约,以通过部署的衍生业务合约执行与电子票据相关的衍生业务。应当理解,图2所示的开发者还可以在接入应用合约链的情况下,在该应用合约链上部署其他衍生业务(或者探索业务)所对应的衍生业务合约,这里将不对部署在应用合约链上的衍生业务合约的合约数量进行限定。
其中,可以理解的是,图2所示的管理链入口具体可以为税务管理部门入口,通过该税务管理部门入口可以对需要接入管理链的个人、法人以及实体等进行身份识别和业务引导。
其中,可以理解的是,图2所示的票据链入口具体可以为电子票据业务入口,通过该电子票据业务入口可以接收某个业务对象(例如,第一业务对象,该第一业务对象可以为上述企业B)所请求开具的电子票据的交易业务数据(也可以称之为交易数据)。这样,在上述第一共识节点通过该电子票据业务入口接收到前述企业B提交的交易业务数据时,还可以通过该电子票据业务入口校验该交易业务数据的数据发送方(即作为第一业务对象的企业B)的接入身份和接入权限是否满足管理链中身份权限合约状态要求,进而可以在校验通过时,确定作为第一业务对象的企业B为授权对象,进而可以通过票据链上的第一跨链读取合约从管理链上读取前述第一业务关联信息确定该作为授权对象的企业B的业务权限。应当理解,通过第一业务关联信息可以进一步判断作为授权对象的企业B的业务权限是否满足管理链中对象权限管理合约的状态要求。
比如,上述第一共识节点通过该电子票据业务入口可以判断数据发送方(即企业B)的接入身份和接入权限是否满足管理链中的对象身份管理合约和内部管理合约的合约状态要求,进而可以在确定满足管理链中的对象身份管理合约和内部管理合约的合约状态要求时,确定完成对需要接入该票据链的数据发送方(即前述企业B)的身份鉴权。由此可见,上述图2所示的票据链入口处存储有从管理链同步来的各个授权对象的注册数据信息,这里的注册数据信息可以包含但不限于对象接入身份注册信息和对象接入权限注册信息。比如,这里的对象接入身份信息可以用于识别当前请求接入该票据链的第一业务对象(即前述企业B)是否为授权对象。这里的对象接入权限注册信息包含由管理共识节点通过内部管理合约为该票据链的电子票据业务入口所配置的请求累计阈值(例如,最大并发请求累积量)。上述第一业务关联信息则可以用于表征作为授权对象的该第一业务对象(即前述企业B)具体具备访问票据链上的哪些票据业务合约的权限。
其中,可以理解的是,图2所示的应用合约链入口具体可以为税务衍生业务入口,通过该税务衍生业务入口可以接收某个业务对象(例如,第二业务对象,该第二业务对象可以为图2所示的税务业务参与方)所请求参与的与票据业务相关联的衍生业务。应当理解,在图2所示的税务业务参与方和开发者可以在获得税务管理部门发放的授权对象的业务参与许可凭证后,可以通过该应用合约链入口对第二业务对象(例如,税务业务参与方或者开发者)提交的业务参与许可凭证进行验证,进而可以在验证成功时允许该第二业务对象接入该应用合约链,以在该应用合约链上执行与前述票据业务相关联的衍生业务。
其中,如图2所示,参与维护管理链的内部参与方可以为图2所示的税务管理部门,这里的税务管理部门主要用于在管理链上进行内部状态参数的配置与管理,还可以用于对上述元数据信息(例如,税务元数据)进行变更上链(如可以更新电子票据模板,更新计税规则等),以及可以对于该管理链上所维护的各类业务参与方的身份和权限进行管理(如冻结企业开票资质,限制企业开票额度等)。
其中,如图2所示,参与维护票据链的内部参与方可以为图2所示的电子票据数据中心,这里的电子票据数据中心具体可以为电子发票数据中心,该电子票据数据中心(比如,电子发票数据中心)可以用于对票据链上所记录的海量的账本数据(例如,基于上述实时票据业务流所产生的电子票据流等)进行链下备份、统计、数据分析和审查等工作。具体的,通过该电子票据数据中心可以统计分时开票数量,进而可以基于统计到的分时开票数量对风险票据(例如,风险发票)、风险企业进行判定,还可以对相关金融经济数据进行数据分析等。
其中,如图2所示,参与维护应用合约链的内部参与方可以为图2所示的政务协作部门和业务关联部门。应当理解,参与维护应用合约链的内部参与方除了税务管理部门之外,系统联盟链中的其他部门(即前述政务协作部门)和参与方(即前述业务关联部门)均可以在接入该应用合约链的情况下,进一步通过该应用合约链上的衍生业务合约执行相应的衍生业务。可以理解的是,图2所示的政务协作部门和业务关联部门等作为税务业务参与方,接入应用合约链的好处是可以在支持完备的智能合约声明周期中灵活运行各类可扩展的衍生业务,以确保业务变化的灵活性,同时不需要直接接触上述票据链上的电子票据的核心数据,从而保证了票据链上的数据隐私和核心数据安全。这意味着本申请实施例所涉及的第二共识节点可以在应用合约链上的第二跨链读取合约(具体的,可以通过第二跨链读取合约中的跨链读取方法),对票据链上针对当前衍生业务所部分授权可见的票据链数据进行读取,比如,可以从票据链上跨链读取与当前衍生业务相关的核心数据(这里的核心数据可以为上述电子票据流所涉及的各电子票据中的票据信息,对于电子票据为电子发票而言,这里的票据数据具体可以为部分授权可见的发票数据),以通过读取到的核心数据来确保上述第二业务对象所请求的衍生业务,可以在该应用合约链上进行有效的开展。
在一些可实现的其他实施例中,为增加位于票据链上的电子票据的数据隐私性,第二共识节点还可以通过第二跨链读取合约中的跨链授权方法所指示的目标链标识(比如,这里的目标链标识为票据链对应的链标识),请求该票据链所对应的第一共识节点在该票据链上读取与该衍生业务相关联的电子票据(例如,C企业所开具的电子票据),进而可以在读取到的电子票据的票据信息中,将与衍生业务相关联的票据信息作为前述授权可见的核心数据返回给第二共识节点。应当理解,此时,对于第二共识节点而言,无法得知该电子票据中与该衍生业务无关的其他票据信息,更无法触及到该票据链上与该衍生业务无关的其他电子票据(例如,D企业所开具的电子票据),这样,可以确保存储在该票据链上的所存储票据数据的隐私安全性和可靠性。
其中,可以理解的是,在图2所示的区块链电子票据三链网络中,均可以内置相应的智能合约。
其中,4.1)对于管理链上内置的智能合约而言,如图2所示,内置在管理链上的对象身份管理合约具体可以为用户管理合约,通过该用户管理合约可以管理整个三链体系下的接入者(比如,公开网络参与方)和参与者(比如,内部参与方)的身份。应当理解,这里的接入者和参与者具体可以包含税务管理人员(简称管理员)、政务协作部门、地方税局、开票服务商、报销服务商、税务审查部门等。此外,内置在管理链上的对象权限管理合约具体可以为企业身份管理合约,通过该企业身份管理合约可以对某些企业的业务权限和税务状态等进行管理。同理,内置在管理链上的元数据管理合约具体可以为税务元数据管理合约,通过该税务元数据管理合约可以对税务规则等元数据信息进行管理,如可以集中管理三链体系下的合约模块,计税逻辑,最新政策规则等。以此类推,内置在管理链上的内部管理合约则可以用于对税务管理部门的一些内部状态进行管理,并可以对三链体系下的各链上的一些内部参数进行管理,如,可以通过该内部管理合约对上述票据链入口(比如,电子发票业务入口)处的访问流量参数进行限制,以及对三链体系下的共识节点数量参数进行限制等。
其中,4.2)对于票据链上内置的智能合约而言,如图2所示,内置在票据链上的智能合约可以包含跨链读取合约和与电子票据生命周期相关联的票据业务合约。这里的跨链读取合约可以为图2所示的第一跨链读取合约,且这里的票据业务合约具体可以包含图2所示的用于提供电子票据开票业务的电子票据开具合约,用于提供电子票据流转业务的电子票据流转合约、用于提供电子票据红冲业务的电子票据红冲合约以及用于提供电子票据归档业务的电子票据归档合约。其中,第一跨链读取合约可以用于跨链读取管理链上的元数据信息,以更新该票据链上的一些业务参数。比如,具体可以在跨链读取到的元数据信息为更新后的电子票据模板的情况下,对该票据链上的电子票据模板的模板参数进行更新。由此可见,管理链上的部分管理链信息(比如,该管理链上的元数据信息)对运行有第一跨链读取合约的第一共识节点和运行有第二跨链读取合约的第二共识节点是授权可见的。
其中,4.3)对于应用合约链上内置的智能合约而言,如图2所示,内置在票据链上的智能合约可以包含另一跨链读取合约(即第二跨链读取合约),还可以包含由税务衍生业务参与方(即衍生业务对象,例如,图2所示的税务业务参与方)参与部署的各类合约(例如,图2所示的虚拟机兼容合约、税务应用合约和衍生业务合约等)。比如,这里的衍生业务合约具体可以为基于电子票据的征信业务合约,通过该征信业务合约可以分析得到某个企业的征信数据。又比如,这里的衍生业务合约具体还可以是为鼓励开票所部署的链上抽奖业务合约和人才激励合约以及退税业务合约等。其中,可以理解的是,这里的第二跨链读取合约,可以用于跨链读取管理链上的元数据信息(例如,与退税业务相关联的最新政策规则),以更新该应用合约链的一些业务参数(例如,可以更新该应用合约链上所部署的退税业务合约的合约参数),此外,这里的第二跨链读取合约,还可以用于跨链读取票据链上部分授权可见的票据信息,以通过跨链读取到的部分授权可见的票据信息来执行该应用合约链上的衍生业务的业务逻辑等。
应当理解,对于上述图2所示的管理链而言,主要用于处理数据量较小、状态较恒定的管理性业务流,整个管理链的开放性相对较低,可以用于对一些税务数据进行内部管理。而对于上述图2所示的票据链而言,可以用于处理一些数据量长期处于高频请求状态的实时票据业务流,该整个票据链的开放性相对较高,可以允许与电子票据本身生命周期中的相关权威机构参与相应的票据业务,比如,可以允许与代理服务商对应的共识节点为当前请求开票的某个用户开具电子票据。此外,对于图2所示的应用合约链而言,数据量的大小可以无需限定、业务变化的频率波动相对较大,主要是可以通过该应用合约链处理各类合作业务、衍生业务、探索性业务等。应当理解,该应用合约链具有最高的开放性,可以运行由管理链授权的参与者在该应用合约链上部署智能合约、运行探索性的衍生业务等。应当理解,在本申请实施例中,考虑到应用合约链具有较高的开放性和业务变更的灵活性,所以,内置在应用合约链上智能合约在执行时可以有更多的合约安全限制。比如,可以对合约执行步数进行限制(例如,对于上述图2所示的衍生业务合约而言,可以限定当前业务对象(即上述第二业务对象)具体能够访问衍生业务合约中哪些合约方法),并可以对访问该衍生业务合约所需要消耗的存储资源数据等进行限制(即应用合约上的智能合约的调用需要消耗一定数量的存储资源数据)。
其中,可以理解的是,本申请实施例所涉及的三链体系下的共识节点可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
需要说明的是,本申请实施例中的共识节点在跨链获取业务对象(例如,上述个人用户或者企业用户)的注册数据信息、业务参与许可凭证、电子票据中的票据信息等数据时,可以显示提示界面或者弹窗,该提示界面或者弹窗用于提示业务对象当前正在搜集注册数据信息、业务参与许可凭证、电子票据中的票据信息等数据,仅仅在获取到业务对象对该提示界面或者弹窗发出确认操作后,开始执行数据获取的相关的步骤,否则结束。
此外,可以理解的是,在本申请的具体实施方式中,可能涉及到用户、企业、机构等业务对象的业务数据(例如,用户的开票信息、征信信息、退税信息等,企业的进出亏、企业资质等信息),当本申请以上实施例运用到具体产品或技术中时,需要获得用户、企业、机构等业务对象的许可或同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
其中,在票据链上执行票据业务的具体过程和在应用合约链上执行与票据业务相关联的衍生业务的具体过程,可以参见如下图3至图8所对应的实施例。
进一步的,请参见图3,图3是本申请实施例提供的一种多区块链数据处理方法,如图3所示,方法可以由上述第一链网络中的第一共识节点执行,比如,该第一共识节点可以为上述图1所示的共识网络200a中任意一个共识节点。方法具体可以包括以下步骤S101-步骤S103。
步骤S101,获取第一业务对象请求的第一业务,基于第一业务调用第一链上的第一跨链读取合约,从目标链上读取与第一业务相关联的第一业务关联信息;第一链为第一链网络中的区块链;目标链是独立于第一链网络的目标链网络中的区块链;第一链不同于目标链;
其中,可以理解的是,本申请实施例所涉及的第一链网络为上述区块链电子票据三链网络中的一个共识网络。此外,可以理解的是,在本申请实施例中,该第一链网络部署在相对安全的私有云中,且处于该私有云中的第一链网络内的各共识节点上均运行有基于上述TBFT共识算法的区块链共识协议,这样,通过前述区块链共识协议所对应的共识机制,可以确保在该第一链网络中的各共识节点之间的访问安全性。
然而,对于处于公网中的公开网络参与方(例如,上述图2所示的个人用户和企业用户等业务对象)而言,若需要接入该第一链网络,则需要先通过上述图2所示的第一链入口对请求接入该第一链网络的公开网络参与方进行身份校验和权限校验,以确保接入该第一链网络的公开网络参与方的访问安全性。
为便于理解,本申请实施例可以将该请求接入该第一链网络的公开网络参与方统称为第一业务对象,进而可以通过前述第一链入口对该第一业务对象进行身份鉴权。
其中,可以理解的是,在本申请实施例中,与第一链网络对应的链入口可以为上述第一链入口(这里的第一链入口具体还可以为电子发票业务入口);该第一链入口存储有第一共识节点在第一跨链读取时间戳时通过第一跨链读取合约从目标链上所同步来的授权对象的注册数据信息;
具体的,第一共识节点可以通过第一链网络的第一链入口,获取第一业务对象对应的第一业务节点基于第一业务发送的第一业务处理请求;第一业务处理请求中携带第一业务对象针对第一业务提交的交易业务数据、以及第一业务对象的第一签名信息;第一签名信息是由与第一业务对象相关联的第一业务节点通过第一业务对象的第一私钥信息,对交易业务数据进行签名后所得到的;第一业务对象的第一私钥信息是第一业务对象通过目标链中的对象身份管理合约进行身份注册后得到的;进一步的,第一共识节点可以从第一业务处理请求中获取第一签名信息,基于第一链入口中存储的授权对象的注册数据信息对第一签名信息进行签名验证,得到第一业务对象的签名验证结果;进一步的,第一共识节点可以在第一业务对象的签名验证结果指示签名验证成功时,确定第一业务对象为授权对象,且基于交易业务数据确定与第一业务对象相关联的第一业务;进一步的,第一共识节点可以基于第一业务调用第一跨链读取合约,从目标链上读取与第一业务相关联的第一业务关联信息。其中,应当理解,这里的第一业务可以包含但不限于,与电子票据相关联的票据业务、与电子证书相关联的证书业务、与电子处方相关联的处方业务,即本申请实施例可以根据不同的业务应用场景,构建得到与不同业务场景相适配的三链体系。为便于理解,这里以第一业务为与电子票据相关联的票据业务为例,阐述在该第一链网络中执行该票据业务的具体过程。
为便于理解,进一步的,请参见图4,图4是本申请实施例提供的一种通过链入口进行身份鉴权的场景示意图。如图4的用户43b可以为上述第一业务对象,即此时,用户43b为上述请求接入第一链网络400a的公开网络参与方。应当理解,在本申请实施例中,该用户43b所使用的用户终端43a可以为该第一业务对象对应的第一业务节点。应当理解,这里的第一业务节点可以为上述图1所示业务网络400a中的业务节点,此时,这里的第一业务节点可以用于执行某个交易(例如,转账交易),以得到这笔转账交易所对应的交易业务数据,进而可以将该交易业务数据,该用户43a(即第一业务对象)的签名信息一并添加到图4所示的第一业务处理请求中,以将该第一业务处理请求发送至与图4所示的第一链网络400a对应的链入口42a。
其中,应当理解,这里的链入口42a即为上述第一链入口。如图4所示,该第一链入口可以用于存储图4所示的授权对象的注册数据信息,该授权对象的注册数据信息中具体可以包含图4所示的授权对象A的公钥证书A1、授权对象B的公钥证书B1、…、授权对象N的公钥证书N1。
其中,应当理解,链入口42a处所存储的授权对象的注册数据信息是由第一链网络400a中的共识节点从图4所示的目标链42e上所同步来的。由于该第一链网络中的共识节点中运行有上述TBFT共识算法,所以,在TBFT共识算法中,leader节点是轮换的前提下,假设上一轮用于连续出块的leader节点为图4所示的共识节点41c,且本轮用于连续出块的leader节点为图4所示的共识节点41d,那么,共识节点41c则可以在上一轮被作为第一共识节点,且共识节点41d则可以在本轮被作为新的第一共识节点。基于此,链入口42a处所存储的授权对象的注册数据信息具体可以包含历史作为第一共识节点的共识节点41c通过图4所示的第一跨链读取合约从目标链(例如,图4所示的目标链42e)上所同步来的第一类授权对象的注册数据信息(例如,授权对象A的公钥证书A1和授权对象B的公钥证书B1),还可以包含当前作为第一共识节点的共识节点41d通过图4所示的第一跨链读取合约从目标链(例如,图4所示的目标链42e)上所同步来的第二类授权对象的注册数据信息(例如,授权对象N的公钥证书N1)。应当理解,这里的第一类授权对象的注册数据信息和第二类授权对象的注册数据信息主要是用于区分哪些是由自己作为第一共识节点所同步的,哪些是由其他节点作为第一共识节点时所同步的。
应当理解,本申请实施例可以将第一链网络400a中的共识节点(例如,前述共识节点41c和共识节点41d)历史调用第一跨链读取合约的时间戳统称为第一跨链读取时间戳,并可以将第一链网络400a中的共识节点(例如,共识节点41d)当前调用第一跨链读取合约的时间戳统称为第二跨链读取时间戳,即这里的第二跨链读取时间戳为第一跨链读取时间戳之后的时间戳,这里将不对第二跨链读取时间戳和第一跨链读取时间戳之间的时间戳间隔进行限定。
为便于理解,这里以共识节点41d作为第一共识节点为例,阐述对该用户43b进行身份鉴权的具体过程。即该第一共识节点具体可以在前述第一跨链读取时间戳时通过第一跨链读取合约中的身份鉴权方法,将从目标链(例如,目标链42e)上所同步来的授权对象N的公钥证书N1添加至图4所示的授权对象的注册数据信息中,以便于后续可以基于该链入口42a本地所存储的授权对象的注册数据信息快速对当前请求执行第一业务的第一业务对象进行身份鉴权,进而可以在该第一链网络400a中提升实时业务流的处理效率。
比如,在上述区块链系统应用于区块链电子票据场景下,当第一业务为上述票据业务时,这里的实时业务流具体可以为实时电子票据流,即该实时电子票据流具体可以是指由第一共识节点通过前述第一链入口(比如,链入口42a)所确定的处于高频请求状态的大量票据业务所构成的票据业务流。
应当理解,可选地,本申请实施例所涉及的第一链入口(比如,链入口42a)还存储有从目标链同步来的请求累计阈值(这里的请求累计阈值用于表征该第一链入口处的访问流量,应当理解,这里的请求累计阈值包含但不限于最大并发请求累计量)。应当理解,该链入口42a所获取到的第一业务处理请求的最大并发请求累计量,具体是由目标链网络400b中的管理共识节点上所运行的内部管理合约所确定的。应当理解,在本申请实施例中,该目标共识节点(例如,图4所示的共识节点42a)上所运行的内部管理合约可以用于对三链体系下的各链入口处所获取到的最大并发请求累计量进行管理。应当理解,通过控制各链入口处的并发访问流量(即前述最大并发请求累计量),可以有效地确保在该第一链网络400a中的第一业务流的稳定执行,进而可以确保第一共识节点有足够的存储资源来存储由大量业务数据所构成的业务数据流。
其中,为便于理解,本申请实施例可以将该用户43a(即第一业务对象)的签名信息统称为第一签名信息,且该第一签名信息是该用户43a(即第一业务对象)通过自己的私钥信息(即第一业务对象的第一私钥信息)对前述交易业务数据进行签名后所得到的。这样,当图4所示的链入口42a获取到该第一业务处理请求时,可以统计得到该第一业务处理请求所对应的请求累积量,进而可以在该第一业务处理请求所对应的请求累积量未达到请求累计阈值(例如,上述最大并发请求累计量)时,初步完成对该用户43b的接入权限验证(也称之为访问权限验证),此时,该第一共识节点可以进一步从该第一业务处理请求中获取到该第一业务对象的第一签名信息,进而可以从链入口42a中存储的授权对象的注册数据信息中快速获取到授权对象的公钥证书(例如,图4所示的授权对象A的公钥证书A1、授权对象B的公钥证书B1、…、授权对象N的公钥证书N1),以通过这些获取到的公钥证书对该用户43b进行身份验证。应当理解,本申请实施例可以在该第一业务处理请求所对应的请求累积量达到请求累计阈值(例如,上述最大并发请求累计量)时,直接拒绝该用户43b发送的第一业务处理请求,并生成用于提示该用户43b进行接入等待的通知消息。
应当理解,这里的每个授权对象的公钥证书中均包含有对应授权对象的公钥信息。这样,该第一共识节点就可以进一步在这些授权对象的公钥证书中查找是否存在该用户43b的公钥证书。1)如果存在,则可以将该用户43b的公钥证书作为查找到的该第一业务对象的第一公钥证书,进而可以将该第一公钥证书中所记录的该用户43b的公钥信息作为第一公钥信息,以通过该第一公钥证书以及第一公钥信息对前述第一签名信息进行签名验证,从而可以得到第一业务对象的签名验证结果。2)如果不存在,即该第一共识节点并未在这些授权对象的公钥证书中查找是否存在该用户43b的公钥证书时,则确认该用户43b(即第一业务对象)为非法业务对象,进而可以拒绝该作为非法业务对象的用户43b所发送的第一业务处理请求。
其中,应当理解,本申请实施例还可以进一步结合链入口42a处所存储的公钥证书的证书数据信息(例如,证书的版本信息、证书的哈希值以及与该证书的哈希值相关联的根证书哈希值等)来对上述第一签名信息进行签名验证,以确保用于进行签名验证的公钥证书(即前述第一公钥证书)中的公钥信息(即前述第一公钥信息)的可靠性。
具体的,第一共识节点可以将第一公钥证书的证书数据信息作为待处理证书信息,且可以在第二跨链读取时间戳时调用第一跨链读取合约中的证书数据读取方法,从目标链上读取第一业务对象的公钥证书;第二跨链读取时间戳为第一跨链读取时间戳的下一跨链读取时间戳;进一步的,该第一共识节点可以将读取到的第一业务对象的公钥证书中的证书数据信息作为目标证书信息,进而可以在待处理证书信息与目标证书信息保持一致时,基于第一公钥信息对第一签名信息进行签名验证,并将签名验证成功时的验证结果作为第一业务对象的签名验证结果。
可选地,可以理解的是,在待处理证书信息与目标证书信息保持一致时,则需要用在第二跨链读取时间戳时从目标链上所读取到的该用户43b的公钥证书对前述第一公钥证书进行更新处理,进而可以通过更新处理后的第一公钥证书中的公钥信息对第一签名信息进行签名验证,以确保该用户43b所请求第一业务能够在该第一链网络中的顺利执行。
其中,应当理解,本申请实施例所涉及的授权对象的公钥证书是由目标链网络中的目标共识节点调用目标链中的对象身份管理合约(即上述图2所对应实施例中的对象身份管理合约),对请求注册相应交易业务(例如,前述第一业务)的业务对象所提交的对象数据信息(比如,这里的对象数据信息可以具体包含上述用户43b的基础用户数据信息、上述用户43b需要执行的交易业务、以及该交易业务的业务类型等)进行身份注册后所得到的;应当理解,在目标共识节点成功为该请求注册相应交易业务(例如,前述第一业务)的业务对象配置相应业务所对应的公钥证书的情况下,可以将该请求注册相应交易业务(例如,前述第一业务)的业务对象作为授权对象,并可以将为该授权对象所配置的公钥证书写入目标链(例如,图4所示的目标链41e),以便于后续该业务对象在请求在第一链网络中执行该第一业务时,该第一共识节点可以进一步用跨链读取到的该目标链上的公钥证书,对链入口(即前述第一链入口)处的该业务对象的公钥证书进行证书更新处理。由此可见,本申请实施例可以基于前述跨链读取时间戳,按需更新从目标链上所同步来的授权对象的注册数据信息。
此外,应当理解,目标共识节点在将为该授权对象(例如,图4所示的用户43b)所配置的公钥证书写入目标链(例如,图4所示的目标链41e)之后,还可以将为该授权对象(例如,图4所示的用户43b)所同步配置的私钥信息(即上述第一私钥信息)返回给该用户43b,以使该用户43b在作为上述第一业务对象时,可以通过该第一私钥信息对自己所提交的交易业务数据进行签名,以得到上述第一签名信息。由此可见,这里的第一业务对象的第一私钥信息是第一业务对象(例如,图4所示的用户43b)通过目标链中的对象身份管理合约进行身份注册后得到的。基于此,这里的第一签名信息是由与该第一业务对象(例如,图4所示的用户43b)相关联的第一业务节点通过第一业务对象(例如,图4所示的用户43b)的第一私钥信息,对前述交易业务数据进行签名后所得到的。
如图4所示,该第一共识节点可以通过从链入口42a处获取到的授权对象的注册数据信息对该用户43b进行身份验证,进而可以在身份验证成功时,确定该用户43b为授权对象,以允许该用户43b作为接入者接入该第一链网络400a。应当理解,此时,第一共识节点可以在该第一链网络中,对前述交易业务数据进行交易组装,以得到与该第一业务对象相关联的第一业务,并可以将该第一业务作为一笔新的交易在该第一链网络中进行交易广播,以在该第一链网络中对这笔新的交易进行交易验重,进而可以在交易验重成功(即确定该第一链网络中不存与该笔新的交易相同的第一业务)的情况下,将这笔新的交易添加至前述实时第一业务流所对应的交易池,进而可以基于交易池中的这些实时第一业务流中的第一业务,调用图4所示的第一跨链读取合约,跨链读取目标链42e上与这些第一业务相关联的第一业务关联信息,进而可以基于跨链读取到的第一业务关联信息进一步执行下述步骤S102。
具体的,第一共识节点可以基于第一业务调用第一跨链读取合约中的权限合约读取方法,生成用于发送给目标链网络(即图4所示的目标链网络400b)中的目标共识节点(例如,共识节点42a)的权限合约访问请求;权限合约访问请求用于指示目标共识节点(例如,共识节点42a)调用目标链上的对象权限管理合约,获取与第一业务相关联的第一业务关联信息;进一步的,第一共识节点可以接收目标共识节点基于权限合约访问请求返回的第一业务关联信息,以进一步执行下述步骤S102。
步骤S102,在基于第一业务关联信息确定第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到与第一业务相关联的第一业务执行结果,且将第一业务执行结果写入第一链;第一业务执行结果中包含第一业务所指示的业务数据;
其中,第一业务关联信息包含为第一业务对象配置的业务权限类型、具备业务权限类型的第一业务对象在业务时长内的业务累计量以及业务累计阈值;具体的,第一共识节点可以在基于第一业务关联信息确定第一业务对象的业务权限类型为开票权限类型,且具备开票权限类型的第一业务对象在业务时长内的业务累积量未达到业务累计阈值时,确定第一业务对象具备第一业务对应的第一业务处理权限;进一步的,第一共识节点可以基于第一业务处理权限获取与开票权限类型相关联的合约调用地址和合约调用名称,通过合约调用地址和合约调用名称调用第一链上的业务数据开具合约,将第一业务对应的交易业务数据和与第一业务中的业务数据开具业务相关联的票据关键信息进行整合,基于整合后的票据关键信息为第一业务对象开具电子票据,将开具的电子票据作为第一业务所指示的业务数据;进一步的,第一共识节点可以将票据关键信息、业务数据以及业务数据开具合约作为执行第一业务中的业务数据开具业务的第一业务执行结果,将包含第一业务执行结果的第一区块发送至第一链上的校验共识节点,以使校验共识节点对第一区块进行区块校验,得到区块校验结果;校验共识节点为第一链网络中除第一共识节点之外剩余的共识节点;应当理解,这里的校验共识节点(即上述票据校验共识节点)具体是指该第一链网络中除第一共识节点之外所剩余的共识节点。进一步的,第一共识节点可以接收目标共识节点返回的区块校验结果,若区块校验结果指示区块校验成功,则将第一区块写入第一链。
其中,可以理解的是,这里的票据关键信息可以包含从目标链上读取到的元数据信息中的辅助元数据信息,且辅助元数据信息包含第一业务数据模板以及与第一业务数据模板相关联的目标计税规则;第一业务数据模板为目标链上的目标共识节点调用目标链上的元数据管理合约对第二业务数据模板进行变更上链后的业务数据模板;第二业务数据模板为第一业务数据模板的上一业务数据模板;元数据变更信息是由与目标共识节点相关联的业务管理对象(这里的业务关联对象可以为上述图2所对应实施例中的税务关联部门)所提交的。
其中,应当理解,本申请实施例将不对在该第一链网络内所确定的实时业务流中的第一业务的具体业务数量和具体业务类型进行限定。为便于理解,本申请实施例以上述图4所示的用户43a所请求的第一业务的业务类型为上述票据业务内的电子票据开具业务为例,以阐述通过从目标链42e上读取到与该电子票据开具业务相关联的业务关联信息(即前述第一业务关联信息),来进一步进行确定该用户43b的业务权限为第一业务处理权限。应当理解,这里的第一业务处理权限可以用于表征该用户43b具备调用该第一链41e上的第一业务执行合约执行该第一业务(例如,前述电子票据开具业务)的权限。
其中,可以理解的是,这里的第一业务关联信息具体包含为上述图4所示的用户43b配置的业务权限类型、具备业务权限类型的用户43b在业务时长内的业务累计量以及业务累计阈值;这里的业务权限类型是由目标共识节点通过上述对象权限管理合约为请求第一业务的图4所示的用户43b(即上述第一业务对象)所配置的。在第一业务为前述票据业务时,这里的业务权限类型具体包含开票权限类型、转移权限类型、红冲权限类型和归档权限类型。应当理解,可选地,在第一业务为前述证书业务时,这里的业务权限类型具体可以包含证书开具权限类型、转移权限类型、归档权限类型。应当理解,可选地,在第一业务为前述处方业务时,这里的业务权限类型具体可以包含处方开具权限类型、转移权限类型、归档权限类型。应当理解,在不同业务场景下,可以结合对应的业务权限类型调整该第一链上所部署的第一业务执行合约中的具体合约。
基于此,在该用户43b向目标链网络中的目标共识节点所请求注册的第一业务为电子票据开具业务时,该目标共识节点可以通过对象权限管理合约为该用户43b配置对应业务权限的类型为上述业务权限类型(例如,配置用于调用第一链上的电子票据开具合约的开票权限类型)、以及配置具备该业务权限类型(例如,开票权限类型)的用户43b在业务时长(例如,1小时)内的业务累计量以及业务累计阈值,进而可以将为该用户43b所配置的业务权限类型(例如,开票权限类型)、具备该业务权限类型(例如,开票权限类型)的用户43b在业务时长(例如,1小时)内的业务累计量以及业务累计阈值等作为前述第一业务关联信息写入目标链(例如,图4所示的目标链42e)。
这样,在第一共识节点基于从目标链上所获取到的第一业务关联信息确定该用户43b的业务权限类型为前述开票权限类型时,可以进一步判断具备该开票权限类型的用户43b在前述业务时长内的业务累积量是否达到业务累计阈值(例如,该用户43b为开票企业时,则这里的业务累积量具体指该开票企业在1小时内的开票数量是否达到最大开票数量,且开票额度是否达到最大开票额度),如果未达到,则可以确定前述用户43b具备第一业务对应的第一业务处理权限,进而可以基于该第一业务对应的第一业务处理权限获取与开票权限类型相关联的合约调用地址和合约调用名称,以通过合约调用地址和合约调用名称调用该第一链上的电子票据开具合约,获取与该电子票据开具业务相关联的票据关键信息,进而可以将获取到的票据关键信息进行整合,以通过整合后的票据关键信息为该用户43b开具电子票据(这里的电子票据具体可以为电子发票)。应当理解,本申请实施例可以将该开具的电子票据统称为前述第一业务所指示的业务数据。
同理,可选地,在第一共识节点基于从目标链上所获取到的第一业务关联信息确定该用户43b的业务权限类型为前述转移权限类型时,可以进一步判断具备该转移权限类型的用户43b在前述业务时长内的业务累积量是否达到业务累计阈值(例如,该用户43b为报销用户时,则这里的业务累积量具体指该报销用户在1个月内的报销额度是否达到最大报销额度),如果未达到,则可以确定前述用户43b具备第一业务对应的第一业务处理权限,进而可以基于该第一业务对应的第一业务处理权限获取与转移权限类型相关联的合约调用地址和合约调用名称,以通过合约调用地址和合约调用名称调用该第一链上的电子票据转移合约,将为上述用户43b开具的电子票据(这里的电子票据具体可以为电子发票)转移给第二业务对象。应当理解,这里的第二业务对象可以为与该第一业务对象相关联的其他用户(例如,该用户43b所在归属地的地方税局用户)。
以此类推,可选地,在第一共识节点基于从目标链上所获取到的第一业务关联信息确定该用户43b的业务权限类型为前述红冲权限类型时,可以进一步判断具备该红冲权限类型的用户43b在前述业务时长内的业务累积量是否达到业务累计阈值(例如,该用户43b为红冲用户时,则这里的业务累积量具体指该报销用户在1个月内的红冲数量是否达到最大红冲数量),如果未达到,则可以确定前述用户43b具备第一业务对应的第一业务处理权限,进而可以基于该第一业务对应的第一业务处理权限获取与红冲权限类型相关联的合约调用地址和合约调用名称,以通过合约调用地址和合约调用名称调用该第一链上的电子票据红冲合约,将为上述用户43b开具的电子票据(这里的电子票据具体可以为电子发票)开具用于进行红冲的红字发票。应当理解,这里的红字发票可以用于更正电子发票中的相关票据信息。
同理,可选地,在第一共识节点基于从目标链上所获取到的第一业务关联信息确定该用户43b的业务权限类型为前述归档权限类型时,可以进一步判断具备该归档权限类型的用户43b在前述业务时长内的业务累积量是否达到业务累计阈值(例如,该用户43b为归档用户时,则这里的业务累积量具体指该归档用户在1个月内的归档票据数量是否达到最大归档票据数量),如果未达到,则可以确定前述用户43b具备第一业务对应的第一业务处理权限,进而可以基于该第一业务对应的第一业务处理权限获取与归档权限类型相关联的合约调用地址和合约调用名称,以通过合约调用地址和合约调用名称调用该第一链上的电子票据归档合约,将为上述用户43b开具的电子票据(这里的电子票据具体可以为电子发票)进行冷存储处理。应当理解,这里的第一共识节点可以调用电子票据归档合约将过期比较久(即不能再流转)的电子票据或者被跨链请求较少的电子票据进行冷存储处理,以释放该票据链所对应的区块链账本的账本存储资源。
由此可见,这里的第一业务至少包含以下交易业务中的一种:电子票据开具业务、电子票据流转业务、电子票据红冲业务、电子票据归档业务;票据业务处理合约至少包含:用于执行电子票据开具业务的电子票据开具合约、用于执行电子票据流转业务的电子票据流转合约、用于执行电子票据红冲业务的电子票据红冲合约以及用于执行电子票据归档业务的电子票据归档合约;其中,电子票据开具业务用于指示第一共识节点调用票据链上的电子票据开具合约,为第一业务对象开具电子发票;电子票据流转业务用于指示第一共识节点调用票据链上的电子票据流转合约,将电子发票由第一业务对象流转至第二业务对象;电子票据红冲业务用于指示第一共识节点调用票据链上的电子票据红冲合约,开具电子发票对应的红字发票,且红字发票用于更正电子发票中的相关票据信息;电子票据归档业务用于指示第一共识节点调用票据链上的电子票据归档合约,将票据链上满足票据归档条件的电子发票进行冷存储处理。
应当理解,可选地,在上述区块链系统应用于区块链电子处方场景下,当第一业务为与电子处方相关的处方业务(例如,在用户43b请求在该第一链网络中获取相应的电子处方等)时,上述实时业务流具体可以为实时电子处方流,即该实时电子处方流具体可以是指由第一共识节点通过前述第一链入口(比如,链入口42a)所确定的处于高频请求状态的大量处方业务所构成的处方业务流,此时,该第一链入口所对应的第一链网络具体可以为处方链网络。又比如,可选地,在上述区块链系统应用于区块链电子证书场景下,当第一业务为与电子证书相关的证书业务(例如,例如,用户43b请求在该第一链网络中获取相应的电子证书,这里的电子证书具体可以为电子技能证书等)时,这里的实时业务流具体可以为实时电子证书流,即该实时电子证书流具体可以是指由第一共识节点通过前述第一链入口(比如,链入口42a)所确定的处于高频请求状态的大量证书业务所构成的证书业务流,此时,该第一链入口所对应的第一链网络具体可以为证书链网络。其中,应当理解,在第一链网络中执行处方业务、证书业务的具体实现方式,可以参见上述对在该第一链网络中执行票据业务的具体过程的描述,这里将不再继续进行赘述。
可选地,第一共识节点在将第一业务执行结果写入第一链时,还可以在第一业务执行结果对应的目标交易中指定与业务数据相关联的业务数据处理终端的处理终端标识;处理终端标识用于表征业务数据处理终端具备从第一链上清分到业务数据的功能;其中,应当理解,这里的业务数据处理终端可以为上述图2所对应实施例中的电子票据数据中心所对应的终端。这样,该第一共识节点在获取到业务数据处理终端发送的交易清分请求时,可以基于交易清分请求中携带的处理终端标识从第一链上获取目标交易,且从目标交易所包含的第一业务执行结果中清分到业务数据,将业务数据返回给业务数据处理终端,以使业务数据处理终端对业务数据进行数据分析(例如,进行票据分析)。这里的票据分析具体是指上述电子票据数据中心可以通过业务数据处理终端对第一链上所记录的大量的电子票据进行链下统计(例如,统计上述作为开票企业的用户43a的分时开票数量)、数据分析(例如,分析上述作为开票企业的用户43a的开票额度、开票数量,以对该用户43a进行风险判定,比如,在确定该用户43a属于风险企业时,通知上述税务管理部门调用第一链上的对象权限管理合约冻结该用户43a的开票资质,或者限制该用户43a的开票额度)以及税务审查(审查上述用户43a的缴税情况)等。
步骤S103,在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,基于跨链读取请求中携带的第二业务从第一链上读取业务数据,且将业务数据中的核心数据返回给第二共识节点;第二共识节点用于在基于核心数据执行第二业务之后,将第二业务对应的第二业务执行结果写入第二链;第二链为第二共识节点所在的第二链网络中的区块链,第二链网络独立于第一链网络和目标链网络。
具体的,第一共识节点在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,从跨链读取请求中获取第二业务对象通过与第二链相关联的第二业务入口提交的第二业务;其中,第二业务入口用于在确定第二业务对象具备在第二链上处理第二业务的权限时,允许第二业务对象通过第二共识节点调用第二跨链读取合约;进一步的,第一共识节点可以基于第二业务所指示的跨链请求数据信息,从第一链上读取业务数据,将读取到的业务数据中的核心数据作为跨链读取请求对应的跨链请求响应信息,将跨链请求响应信息返回给第二共识节点,以使第二共识节点基于跨链请求响应信息调用第二链上的第二业务合约执行第二业务。应当理解,在本申请实施例中,若第二业务为第一业务的衍生业务,则该跨链请求数据信息具体可以为该衍生业务的衍生业务数据信息。
为便于理解,本申请实施例结合上述图4所示的第一链网络400a和目标链网络400b,阐述在区块链系统中如何实现三链之间的相互协作。进一步的,请参见图5,图5是本申请实施例通过的一种在三链之间进行跨链交互的场景示意图。如图5所示的用户53a可以为请求执行第二业务的第二业务对象,该用户53a所使用的用户终端53a可以为第二业务节点。这里的第二业务节点可以与上述第一业务节点相同,也可以与上述第一业务节点不同,这里将不对其进行限定。此外,图5所示的链入口52a为第二链入口,这里的第二链入口可以为上述图2所对应实施例中的税务衍生业务入口。应当理解,在本申请实施例中,税务衍生对象(例如,图5所示的用户53b)可以在获得税务管理部门通过上述管理共识节点发放的业务参与许可凭证后,通过该业务参与许可凭证接入图5所示的第二链网络500a。
其中,如图5所示的链入口52a处存储有从目标链42e上所同步来的授权对象的业务参与许可凭证。具体的,如图5所示,该授权对象的业务参与许可凭证可以包含授权对象A的许可凭证A2、授权对象B的许可凭证B2、…、授权对象N的许可凭证N2。这样,当图5所示的用户53b基于前述税务管理部门通过上述目标共识节点所配置的目标业务参与许可凭证的情况下,可以将该目标业务参与许可凭证添加至图5所示的第二业务处理请求,以将该第二业务处理请求发送给第二共识节点(例如,图5所示的共识节点51d),以使该第二共识节点可以通过链入口52a处所存储的授权对象的业务参与许可凭证判断该用户53b是否可以接入该第二链网络500a。比如,若该第二共识节点在该链入口52a处查找到与前述目标业务参与许可凭证相同的业务参与许可凭证,则允许该用户53b接入该第二链网络500a,反之,则可以拒绝该用户53b(即前述第二业务对象)发送的第二业务处理请求。
其中,可以理解的是,这里的业务参与许可凭证(简称为许可凭证)可以包含但不限于为该用户53b(即前述第二业务对象)配置的公钥证书的哈希值和为该用户53b(即前述第二业务对象)配置的访问令牌或者身份证书等,这里将不对管理共识节点为该用户53b所配置的许可凭证中的具体内容等进行限定。
如图5所示,该第二链网络中包含多个共识节点,这些共识节点具体可以包含共识节点51a、共识节点51b、共识节点51c和共识节点51d。应当理解,这里的这些共识节点上均运行有上述第二跨链读取合约。为便于理解,这里以共识节点51d作为第二共识节点,且该第二共识节点上运行有第二跨链读取合约为例,以阐述第二共识节点调用第二跨链读取合约从第一链网络400a所对应的第一链41e上读取与该第二业务相关联的业务数据中的核心数据。比如,这里的第二业务可以为上述资质识别业务。应当理解,该第一链41e是由第一链网络400a中这些共识节点(比如,图5所示的共识节点41a、共识节点41b、共识节点41c和共识节点41d)所共同维护的。
结合上述图4所描述的实施例可知,第一共识节点会将执行上述第一业务所得到的业务数据写入该目标链41e。这样,在第二共识节点(例如,图5所示的共识节点51d)在基于第二业务关联信息确定第二业务对象具备第二业务对应的第二业务处理权限时,可以调用第二跨链读取合约生成与第二业务相关联的跨链读取请求,以将该跨链读取请求发送给第一共识节点(例如,图5所示的共识节点41d)。
此时,第一共识节点(例如,图5所示的共识节点41d)可以根据接收到的跨链读取请求从该第一链网络400a对应的第一链41e上读取与该第二业务(例如,资质识别业务)相关联的业务数据,进而可以将读取到的业务数据中的核心数据返回给第二共识节点(例如,图5所示的共识节点51d)。应当理解,本申请实施例并不对跨链读取到的业务数据的数量进行限定。
比如,在该第一业务为票据业务的情况下,该第一共识节点从第一链41e上所读取到与该第二业务相关联业务数据,具体可以指在第一链网络中执行该票据业务中电子票据开具业务后所得到的一张或者多张电子票据,进而可以将读取到的这些电子票据中的核心数据返回给第二共识节点,以在图5所示的第二链网络中执行该用户53b所请求的第二业务(例如,可以通过批量性获取到的电子票据中的核心数据,对请求开具这些电子票据的开票企业的企业资质进行识别)。
换言之,该第二共识节点可以在跨链读取到的前述业务数据中的核心数据时,进一步基于这些核心数据执行第二业务,并可以将第二业务对应的第二业务执行结果写入第二链。
其中,应当理解,该第二共识节点调用第二跨链读取合约从目标链42e上读取与第二业务相关联的第二业务关联信息的具体实现方式,可以参见上述对第一共识节点调用第一跨链读取合约从目标链42e上读取与第一业务相关联的第一业务关联信息具体过程的描述,这里将不再继续进行赘述。
由此可见,本申请实施例提供了一种全新的多区块链协作机制,该多区块链协作机制旨在强调可以在第一链、目标链和第二链这三链之间进行互相协作,以确保第一链网络中的共识节点(即前述第一共识节点)可以用于独立处理一些具有较大请求数据量的实时业务流(即前述第一业务)。这样,在区块链电子票据的核心数据(即第一链上部分授权可见的票据信息)流转的业务场景下,第一共识节点(例如,上述票据共识节点)可以参与维护该第一链网络中的第一链,且该第一链主要用于存储上述第一业务执行结果,比如,该第一链可以用于存储执行实时业务流中各第一业务所分别得到的业务数据,此外,第二共识节点(例如,上述应用共识节点)可以参与维护该第二链网络中的第二链,且该第二链主要用于存储第二业务执行结果,需要注意的是,这里的第二业务执行结果是基于从前述第一链上跨链流转至该第二链的业务数据中的核心数据(即业务数据中部分授权可见的数据)而开展的第二业务所确定的;再者,需要注意的是,这里的目标共识节点(例如,上述图2所对应实施例中的管理共识节点)可以用于对接入第二链网络和第一链网络中的业务对象的权限进行集中管理。显然,通过部署的多区块链来分别进行数据存储,可以有效地降低各区块链上数据存储的混杂度,另外,通过多区块链之间的相互协作,还可以提升各链上所存储数据的安全性。
进一步的,请参见图6,图6是本申请实施例提供的一种多区块链数据处理方法,如图6所示,方法可以由上述第二链网络中的第二共识节点执行,比如,该第二共识节点可以为上述图1所示的共识网络300a中任意一个共识节点。方法具体可以包括以下步骤S201-步骤S203。
步骤S201,获取第二业务对象请求的第二业务,基于第二业务调用第二链上的第二跨链读取合约,从目标链上读取与第二业务相关联的第二业务关联信息;第二链为第二链网络中的区块链;目标链是独立于第二链网络的目标链网络中的区块链;第二链不同于目标链;
步骤S202,在基于第二业务关联信息确定第二业务对象具备第二业务对应的第二业务处理权限时,调用第二跨链读取合约生成与第二业务相关联的跨链读取请求,将跨链读取请求发送给第一链网络中的第一共识节点;跨链读取请求用于指示第一共识节点从第一链网络对应的第一链上读取与第二业务相关联的业务数据;第一链网络独立于第二链网络和目标链网络;业务数据是由第一共识节点在基于第一业务关联信息确定出第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约所确定的;第一业务关联信息是由第一共识节点基于第一业务调用第一链上的第一跨链读取合约从目标链上读取到的;
步骤S203,接收第一共识节点基于跨链读取请求返回的业务数据中的核心数据,基于核心数据执行第二业务,并将第二业务对应的第二业务执行结果写入第二链。
其中,可以理解的是,步骤S201-步骤S203的具体实现方式,可以参见上述图3所对应实施例中对第二共识节点的描述,这里将不再继续进行赘述。
由此可见,本申请实施例提供了一种全新的多区块链协作机制,该多区块链协作机制旨在强调可以在第一链、目标链和第二链这三链之间进行互相协作,以确保第一链网络中的共识节点(即前述第一共识节点)可以用于独立处理一些具有较大请求数据量的实时业务流(比如,前述票据业务所构成的票据业务流、前述处方业务所构成的处方业务流、前述证书业务所构成的证书业务流等)。这样,在区块链上的核心数据(即第一链上所存储的业务数据中部分授权可见的核心数据)流转的业务场景下,第一共识节点可以参与维护该第一链网络中的第一链,且该第一链主要用于存储执行前述第一业务后所得到的实时业务数据流中的业务数据,此外,第二共识节点可以参与维护该第二链网络中的第二链,且该第二链主要用于存储第二业务执行结果,需要注意的是,这里的第二业务执行结果是基于从前述第一链上跨链流转至该第二链的业务数据中的核心数据(即核心数据)而开展的第二业务所确定的;再者,需要注意的是,这里的目标共识节点可以用于对接入第二链网络和第一链网络中的业务对象的权限进行集中管理。显然,通过部署的多区块链来分别进行数据存储,可以有效地降低各区块链上数据存储的混杂度,另外,通过多区块链之间的相互协作,还可以提升各链上所存储数据的安全性。
进一步的,请参见图7,图7是本申请实施例提供的一种多区块链数据处理方法,如图7所示,方法可以由上述目标链网络中的目标共识节点执行,比如,该目标共识节点可以为上述图1所示的共识网络100a中任意一个共识节点。方法具体可以包括以下步骤S301-步骤S304。
步骤S301,接收第一链网络中的第一共识节点发送的第一业务权限查询请求;第一业务权限查询请求是第一共识节点在获取到第一业务对象提交的第一业务时,调用第一链上的第一跨链读取合约所确定的;第一链为独立于目标链网络的第一链网络中的区块链;
步骤S302,基于第一业务查询请求从目标链网络对应的目标链上,读取与第一业务相关联的第一业务关联信息,将第一业务关联信息返回给第一共识节点,以使第一共识节点在基于第一业务关联信息确定第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到用于写入第一链的第一业务执行结果;第一业务执行结果中包含第一业务所指示的业务数据;
步骤S303,接收第二链网络中的第二共识节点发送的第二业务权限查询请求;第二业务权限查询请求是第二共识节点在获取到第二业务对象提交的第二业务时,调用第二链网络对应的第二链上的第二跨链读取合约所确定的;第二链网络独立于第一链网络和目标链网络;
步骤S304,基于第二业务查询请求从目标链上,读取与第二业务相关联的第二业务关联信息,将第二业务关联信息返回给第二共识节点,以使第二共识节点在基于第二业务关联信息确定第二业务对象具备第二业务对应的第二业务处理权限时,调用第二跨链读取合约生成用于发送给第一共识节点的与第二业务相关联的跨链读取请求;跨链读取请求用于指示第一共识节点从第一链上读取业务数据。
其中,可以理解的是,步骤S301-步骤S304的具体实现方式,可以参见上述图3所对应实施例中对目标共识节点的描述,这里将不再继续进行赘述。
由此可见,本申请实施例提供了一种全新的多区块链协作机制,该多区块链协作机制旨在强调可以在第一链、目标链和第二链这三链之间进行互相协作,以确保第一链网络中的共识节点(即前述第一共识节点)可以用于独立处理一些具有较大请求数据量的实时业务流(即前述第一业务)。这样,在区块链的核心数据(即第一链上部分授权可见的核心数据)流转的业务场景下,第一共识节点可以参与维护该第一链网络中的第一链,且该第一链主要用于存储实时处理第一业务流后所得到的业务数据,此外,第二共识节点可以参与维护该第二链网络中的第二链,且该第二链主要用于存储第二业务执行结果,需要注意的是,这里的第二业务执行结果是基于从前述第一链上跨链流转至该第二链的业务数据中的核心数据而开展的第二业务所确定的;再者,需要注意的是,这里的目标共识节点可以用于对接入第二链网络和第一链网络中的业务对象的权限进行集中管理。显然,通过部署的多区块链来分别进行数据存储,可以有效地降低各区块链上数据存储的混杂度,另外,通过多区块链之间的相互协作,还可以提升各链上所存储数据的安全性。
进一步的,请参见图8,图8是本申请实施例提供的一种多区块链数据处理方法,如图8所示,方法可以由上述第一链网络中的第一共识节点、第二链网络中的第二共识节点、目标链网络中的目标共识节点共同执行。比如,这里的第一共识节点可以为上述图1所示的共识网络200a中任意一个共识节点,第二共识节点可以为上述图1所示的共识网络300a中任意一个共识节点,目标共识节点可以为上述图1所示的共识网络100a中任意一个共识节点。应当理解,这里的第一链网络独立于目标链网络,且独立于第二链网络;此时,该方法具体可以包括以下步骤S401-步骤S410。
步骤S401,第一共识节点用于获取第一业务对象请求的第一业务,基于第一业务调用第一链上的第一跨链读取合约,生成第一业务权限查询请求;
步骤S402,第一共识节点将第一业务权限查询请求发送给目标共识节点;
步骤S403,目标共识节点用于在获取到第一共识节点发送的第一业务权限查询请求时,从目标链网络对应的目标链上读取与第一业务相关联的第一业务关联信息,将第一业务关联信息返回给第一共识节点;
步骤S404,第一共识节点在基于第一业务关联信息确定第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到与第一业务相关联的第一业务执行结果,且将第一业务执行结果写入第一链;
其中,第一业务执行结果中包含第一业务所指示的业务数据;
步骤S405,目标共识节点接收第二链网络中的第二共识节点发送的第二业务权限查询请求;
其中,第二业务权限查询请求是第二共识节点在获取到第二业务对象提交的第二业务时,调用第二链网络对应的第二链上的第二跨链读取合约所确定的;第二链网络独立于第一链网络和目标链网络;
步骤S406,目标共识节点基于第二业务查询请求从目标链上,读取与第二业务相关联的第二业务关联信息,将第二业务关联信息返回给第二共识节点;
步骤S407,第二共识节点在基于第二业务关联信息确定第二业务对象具备第二业务对应的第二业务处理权限时,调用第二跨链读取合约生成用于发送给第一共识节点的与第二业务相关联的跨链读取请求;
其中,跨链读取请求用于指示第一共识节点从第一链上读取业务数据。
步骤S408,第二共识节点将跨链读取请求发送给第一共识节点;
应当理解,在步骤S408中所涉及的跨链读取请求是第二共识节点在基于第二业务关联信息确定第二业务对象具备第二业务对应的第二业务处理权限时,调用第二跨链读取合约所生成的;第二业务关联信息时第二共识节点基于第二业务调用第二跨链读取合约从目标链上读取到的。
步骤S409,第一共识节点在获取到第二共识节点发送的跨链读取请求时,基于跨链读取请求中携带的第二业务从第一链上读取业务数据,且将业务数据中的核心数据返回给第二共识节点;
步骤S410,第二共识节点在基于核心数据执行第二业务之后,将第二业务对应的第二业务执行结果写入第二链。
由此可见,本申请实施例提供了一种全新的多区块链协作机制,该多区块链协作机制旨在强调可以在第一链、目标链和第二链这三链之间进行互相协作,以确保第一链网络中的共识节点(即前述第一共识节点)可以用于独立处理一些具有较大请求数据量的实时业务流(即前述第一业务)。这样,在区块链的核心数据(即第一链上部分授权可见的核心数据)流转的业务场景下,第一共识节点可以参与维护该第一链网络中的第一链,且该第一链主要用于存储执行前述实时业务流后所得到的业务数据,此外,第二共识节点可以参与维护该第二链网络中的第二链,且该第二链主要用于存储第二业务执行结果,需要注意的是,这里的第二业务执行结果是基于从前述第一链上跨链流转至该第二链的业务数据中的核心数据而开展的第二业务所确定的;再者,需要注意的是,这里的目标共识节点可以用于对接入第二链网络和第一链网络中的业务对象的权限进行集中管理。显然,通过部署的多区块链来分别进行数据存储,可以有效地降低各区块链上数据存储的混杂度,另外,通过多区块链之间的相互协作,还可以提升各链上所存储数据的安全性。
进一步的,请参见图9,图9是本申请提供的一种多区块链数据处理装置的结构示意图。如图9所示,多区块链数据处理装置1可应用于第一共识节点中,该第一共识节点可以为第一链网络(例如,上述共识网络200a)中任意一个区块链节点,例如,该第一共识节点可以为上述图1所对应实施例中的共识节点11c。应当理解,该多区块链数据处理装置1可以是运行于区块链节点(比如,前述共识节点10c)中的一个计算机程序(包括程序代码),例如该多区块链数据处理装置1可以为一个应用软件;可以理解的是,该多区块链数据处理装置1可以用于执行本申请实施例提供的方法中的相应步骤。如图9所示,多区块链数据处理装置1可以包括:第一业务获取模块11、第一业务执行模块12和业务数据读取模块13;
第一业务获取模块11,用于获取第一业务对象请求的第一业务,基于第一业务调用第一链上的第一跨链读取合约,从目标链上读取与第一业务相关联的第一业务关联信息;第一链为第一链网络中的区块链;目标链是独立于第一链网络的目标链网络中的区块链;第一链不同于目标链;
第一业务执行模块12,用于在基于第一业务关联信息确定第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到与第一业务相关联的第一业务执行结果,且将第一业务执行结果写入第一链;第一业务执行结果中包含第一业务所指示的业务数据;
业务数据读取模块13,用于在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,基于跨链读取请求中携带的第二业务从第一链上读取业务数据,且将业务数据中的核心数据返回给第二共识节点;第二共识节点用于在基于核心数据执行第二业务之后,将第二业务对应的第二业务执行结果写入第二链;第二链为第二共识节点所在的第二链网络中的区块链,第二链网络独立于第一链网络和目标链网络。
其中,与第一链网络对应的链入口为第一链入口;第一链入口存储有第一共识节点在第一跨链读取时间戳时通过第一跨链读取合约从目标链上所同步来的授权对象的注册数据信息;
第一业务获取模块11包括:第一业务请求单元111、签名验证单元112、第一业务确定单元113和跨链读取单元114;
第一业务请求单111,用于通过第一链网络的第一链入口,获取第一业务对象对应的第一业务节点基于第一业务发送的第一业务处理请求;第一业务处理请求中携带第一业务对象针对第一业务提交的交易业务数据、以及第一业务对象的第一签名信息;第一签名信息是由与第一业务对象相关联的第一业务节点通过第一业务对象的第一私钥信息,对交易业务数据进行签名后所得到的;第一业务对象的第一私钥信息是第一业务对象通过目标链中的对象身份管理合约进行身份注册后得到的;
签名验证单元112,用于从第一业务处理请求中获取第一签名信息,基于第一链入口中存储的授权对象的注册数据信息对第一签名信息进行签名验证,得到第一业务对象的签名验证结果;
第一业务确定单元113,用于在第一业务对象的签名验证结果指示签名验证成功时,确定第一业务对象为授权对象,且基于交易业务数据确定与第一业务对象相关联的第一业务;
跨链读取单元114,用于基于第一业务调用第一跨链读取合约,从目标链上读取与第一业务相关联的第一业务关联信息。
其中,授权对象的注册数据信息中包含授权对象的公钥证书;授权对象的公钥证书是由目标链网络中的目标共识节点调用目标链中的对象身份管理合约,对授权对象提交的对象数据信息进行身份注册后所得到的;
其中,第一业务请求单元111、签名验证单元112、第一业务确定单元113和跨链读取单元114的具体实现方式,可以参见上述图3所对应实施例中对步骤S101的描述,这里将不再继续进行赘述。
签名验证单元112包括:证书获取子单元1121,证书查找子单元1122和签名验证子单元1123;
证书获取子单元1121,用于从第一业务处理请求中获取第一签名信息,从第一链入口中存储的授权对象的注册数据信息中获取授权对象的公钥证书;一个授权对象的公钥证书中包含一个授权对象的公钥信息;
证书查找子单元1122,用于在授权对象的公钥证书中查找第一业务对象的公钥证书,且在查找到第一业务对象的公钥证书时,将查找到的第一业务对象的公钥证书作为第一公钥证书,且将第一公钥证书中的公钥信息作为第一业务对象的第一公钥信息;
签名验证子单元1123,用于基于第一公钥证书以及第一公钥信息对第一签名信息进行签名验证,得到第一业务对象的签名验证结果。
其中,签名验证子单元1123,具体用于将第一公钥证书的证书数据信息作为待处理证书信息,且在第二跨链读取时间戳时调用第一跨链读取合约中的证书数据读取方法,从目标链上读取第一业务对象的公钥证书;第二跨链读取时间戳为第一跨链读取时间戳的下一跨链读取时间戳;
签名验证子单元1123,还具体用于将读取到的第一业务对象的公钥证书中的证书数据信息作为目标证书信息;
签名验证子单元1123,还具体用于在待处理证书信息与目标证书信息保持一致时,基于第一公钥信息对第一签名信息进行签名验证,并将签名验证成功时的验证结果作为第一业务对象的签名验证结果。
其中,证书获取子单元1121,证书查找子单元1122和签名验证子单元1123的具体实现方式,可以参见上述图3所对应实施例中对签名验证的具体过程的描述,这里将不再继续进行赘述。
其中,签名验证单元112还包括:请求拒绝子单元1124;
请求拒绝子单元1124,用于在授权对象的公钥证书中未查找到第一业务对象的公钥证书时,将第一业务对象确定为非法业务对象,拒绝非法业务对象发送的第一业务处理请求。
其中,请求拒绝子单元1124的具体实现方式,可以参见上述图3所对应实施例中对对签名验证的具体过程的描述,这里将不再继续进行赘述。
其中,跨链读取单元114包括:访问请求生成子单元1141和关联信息返回子单元1142;
访问请求生成子单元1141,用于基于第一业务调用第一跨链读取合约中的权限合约读取方法,生成用于发送给目标链网络中的目标共识节点的权限合约访问请求;权限合约访问请求用于指示目标共识节点调用目标链上的对象权限管理合约,获取与第一业务相关联的第一业务关联信息;
关联信息返回子单元1142,用于接收目标共识节点基于权限合约访问请求返回的第一业务关联信息。
其中,访问请求生成子单元1141和关联信息返回子单元1142的具体实现方式,可以参见上述图3所对应实施例中对通过第一跨链读取合约跨链读取第一业务关联信息的具体过程的描述,这里将不再继续进行赘述。
其中,第一业务关联信息包含为第一业务对象配置的业务权限类型、具备业务权限类型的第一业务对象在业务时长内的业务累计量以及业务累计阈值;
第一业务执行模块12包括:处理权限确定单元121,票据合约调用单元122,区块校验单元123和校验结果接收单元124;
处理权限确定单元121,用于在基于第一业务关联信息确定第一业务对象的业务权限类型为开票权限类型,且具备开票权限类型的第一业务对象在业务时长内的业务累积量未达到业务累计阈值时,确定第一业务对象具备第一业务对应的第一业务处理权限;
票据合约调用单元122,用于基于第一业务处理权限获取与开票权限类型相关联的合约调用地址和合约调用名称,通过合约调用地址和合约调用名称调用第一链上的电子票据开具合约,将第一业务对应的交易业务数据和与第一业务中的电子票据开具业务相关联的票据关键信息进行整合,基于整合后的票据关键信息为第一业务对象开具电子票据,将开具的电子票据作为第一业务所指示的业务数据;
区块校验单元123,用于将票据关键信息、业务数据以及电子票据开具合约作为执行第一业务中的电子票据开具业务的第一业务执行结果,将包含第一业务执行结果的第一区块发送至第一链上的校验共识节点,以使校验共识节点对第一区块进行区块校验,得到区块校验结果;校验共识节点为第一链网络中除第一共识节点之外剩余的共识节点;
校验结果接收单元124,用于接收校验共识节点返回的区块校验结果,若区块校验结果指示区块校验成功,则将第一区块写入第一链。
其中,处理权限确定单元121,票据合约调用单元122,区块校验单元123和校验结果接收单元124的具体实现方式,可以参见上述图3所对应实施例中对步骤S102的描述,这里将不再继续进行赘述。
其中,票据关键信息包含从目标链上读取到的辅助元数据信息,且辅助元数据信息包含第一电子票据模板以及与第一电子票据模板相关联的目标计税规则;第一电子票据模板为目标链上的目标共识节点调用目标链上的元数据管理合约对第二电子票据模板进行变更上链后的电子票据模板;第二电子票据模板为第一电子票据模板的上一电子票据模板;元数据变更信息是由与目标共识节点相关联的业务管理对象所提交的。
其中,第一业务至少包含以下交易业务中的一种:电子票据开具业务、电子票据流转业务、电子票据红冲业务、电子票据归档业务;第一业务处理合约至少包含:用于执行电子票据开具业务的电子票据开具合约、用于执行电子票据流转业务的电子票据流转合约、用于执行电子票据红冲业务的电子票据红冲合约以及用于执行电子票据归档业务的电子票据归档合约;
其中,电子票据开具业务用于指示第一共识节点调用第一链上的电子票据开具合约,为第一业务对象开具电子发票;电子票据流转业务用于指示第一共识节点调用第一链上的电子票据流转合约,将电子发票由第一业务对象流转至第二业务对象;电子票据红冲业务用于指示第一共识节点调用第一链上的电子票据红冲合约,开具电子发票对应的红字发票,且红字发票用于更正电子发票中的相关票据信息;电子票据归档业务用于指示第一共识节点调用第一链上的电子票据归档合约,将第一链上满足票据归档条件的电子发票进行冷存储处理。
其中,业务数据读取模块13包括:票据读取请求发送单元131和票据读取响应单元132;
票据读取请求发送单元131,用于在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,从跨链读取请求中获取第二业务对象通过与第二链相关联的第二业务入口提交的第二业务;第二业务入口用于在确定第二业务对象具备在第二链上处理第二业务的权限时,允许第二业务对象通过第二共识节点调用第二跨链读取合约;
票据读取响应单元132,用于基于第二业务所指示的跨链请求数据信息,从第一链上读取业务数据,将读取到的业务数据中的核心数据作为跨链读取请求对应的跨链请求响应信息,将跨链请求响应信息返回给第二共识节点,以使第二共识节点基于跨链请求响应信息调用第二链上的第二业务合约执行第二业务。
其中,票据读取请求发送单元131和票据读取响应单元132的具体实现方式,可以参见上述图3所对应时候了中对步骤S103的描述,这里将不再继续进行赘述。
其中,第一业务执行模块12,还用于在将第一业务执行结果写入第一链时,在第一业务执行结果对应的目标交易中指定与业务数据相关联的业务数据处理终端的处理终端标识;处理终端标识用于表征业务数据处理终端具备从第一链上清分到业务数据的功能;
第一业务执行模块12,还用于在获取到业务数据处理终端发送的交易清分请求时,基于交易清分请求中携带的处理终端标识从第一链上获取目标交易,且从目标交易所包含的第一业务执行结果中清分到业务数据,将业务数据返回给业务数据处理终端,以使业务数据处理终端对业务数据进行数据分析。
其中,第一业务获取模块11、第一业务执行模块12和业务数据读取模块13的具体实现方式,可以参见上述图3所对应实施例中对步骤S101-步骤S103的描述,这里将不再继续进行赘述。应当理解,对采用相同方法所得到的有益效果描述,也不再进行赘述。
进一步的,请参见图10,图10是本申请提供的一种多区块链数据处理装置的结构示意图。如图10所示,多区块链数据处理装置2可应用于第二共识节点中,该第二共识节点可以为第二链网络(例如,上述共识网络300a)中任意一个区块链节点,例如,该第二共识节点可以为上述图1所对应实施例中的共识节点12c。应当理解,该多区块链数据处理装置2可以是运行于区块链节点(比如,前述共识节点12c)中的一个计算机程序(包括程序代码),例如该多区块链数据处理装置2可以为一个应用软件;可以理解的是,该多区块链数据处理装置2可以用于执行本申请实施例提供的方法中的相应步骤。如图8所示,多区块链数据处理装置2可以包括:第二业务获取模块21,跨链读取请求发送模块22和第二业务执行模块23;
第二业务获取模块21,用于获取第二业务对象请求的第二业务,基于第二业务调用第二链上的第二跨链读取合约,从目标链上读取与第二业务相关联的第二业务关联信息;第二链为第二链网络中的区块链;目标链是独立于第二链网络的目标链网络中的区块链;第二链不同于目标链;
跨链读取请求发送模块22,用于在基于第二业务关联信息确定第二业务对象具备第二业务对应的第二业务处理权限时,调用第二跨链读取合约生成与第二业务相关联的跨链读取请求,将跨链读取请求发送给第一链网络中的第一共识节点;跨链读取请求用于指示第一共识节点从第一链网络对应的第一链上读取与第二业务相关联的业务数据;第一链网络独立于第二链网络和目标链网络;业务数据是由第一共识节点在基于第一业务关联信息确定出第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约所确定的;第一业务关联信息是由第一共识节点基于第一业务调用第一链上的第一跨链读取合约从目标链上读取到的;
第二业务执行模块23,用于接收第一共识节点基于跨链读取请求返回的业务数据中的核心数据,基于核心数据执行第二业务,并将第二业务对应的第二业务执行结果写入第二链。
其中,第二业务获取模块21,跨链读取请求发送模块22和第二业务执行模块23的具体实现方式,可以参见上述图4所实施例中对步骤S201-步骤S203的描述,这里将不再继续进行赘述。另外,对采用相同方法所得到的有益效果描述,也不再进行赘述。
进一步的,请参见图11,图11是本申请提供的一种多区块链数据处理装置的结构示意图。如图11所示,多区块链数据处理装置3可应用于目标共识节点中,该目标共识节点可以为目标链网络(例如,上述共识网络100a)中任意一个区块链节点,例如,该目标共识节点可以为上述图1所对应实施例中的共识节点10c。应当理解,该多区块链数据处理装置3可以是运行于区块链节点(比如,前述共识节点10c)中的一个计算机程序(包括程序代码),例如该多区块链数据处理装置3可以为一个应用软件;可以理解的是,该多区块链数据处理装置3可以用于执行本申请实施例提供的方法中的相应步骤。如图9所示,多区块链数据处理装置3可以包括:第一查询请求接收模块31,第一关联信息返回模块32,第二查询请求接收模块33和第二关联信息返回模块34;
第一查询请求接收模块31,用于接收第一链网络中的第一共识节点发送的第一业务权限查询请求;第一业务权限查询请求是第一共识节点在获取到第一业务对象提交的第一业务时,调用第一链上的第一跨链读取合约所确定的;第一链为独立于目标链网络的第一链网络中的区块链;
第一关联信息返回模块32,用于基于第一业务查询请求从目标链网络对应的目标链上,读取与第一业务相关联的第一业务关联信息,将第一业务关联信息返回给第一共识节点,以使第一共识节点在基于第一业务关联信息确定第一业务对象具备第一业务对应的第一业务处理权限时,调用第一链上的第一业务处理合约执行第一业务,得到用于写入第一链的第一业务执行结果;第一业务执行结果中包含第一业务所指示的业务数据;
第二查询请求接收模块33,用于接收第二链网络中的第二共识节点发送的第二业务权限查询请求;第二业务权限查询请求是第二共识节点在获取到第二业务对象提交的第二业务时,调用第二链网络对应的第二链上的第二跨链读取合约所确定的;第二链网络独立于第一链网络和目标链网络;
第二关联信息返回模块34,用于基于第二业务查询请求从目标链上,读取与第二业务相关联的第二业务关联信息,将第二业务关联信息返回给第二共识节点,以使第二共识节点在基于第二业务关联信息确定第二业务对象具备第二业务对应的第二业务处理权限时,调用第二跨链读取合约生成用于发送给第一共识节点的与第二业务相关联的跨链读取请求;跨链读取请求用于指示第一共识节点从第一链上读取业务数据。
其中,第一查询请求接收模块31,第一关联信息返回模块32,第二查询请求接收模块33和第二关联信息返回模块34的具体实现方式,可以参见上述图5所对应实施例中对步骤S301-步骤S304的描述,这里将不再继续进行赘述。另外,对于采用相同方法所得到的相同有益效果的描述,也不再进行赘述。
进一步地,请参见图12,图12是本申请实施例提供的一种计算机设备的结构示意图。如图12所示,该计算机设备1000可以为用户终端,还可以为服务器,这里将不对其进行限制。为便于理解,本申请以计算机设备为服务器为例,该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,该计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图12所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
其中,该计算机设备1000中的网络接口1004还可以提供网络通讯功能。在图12所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以执行上述图3、图6、图7或者图8所对应实施例中对多区块链数据方法的描述,还可以执行前文图9、图10或者图11所对应实施例中对多区块链数据处理装置(即上述多区块链数据处理装置1、多区块链数据处理装置2或者多区块链数据处理装置3)的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有前文提及的多区块链数据处理装置1、多区块链数据处理装置2或者多区块链数据处理装置3所执行的计算机程序,且计算机程序包括计算机指令,当处理器执行计算机指令时,能够执行前文图3、图6、图7或者图8所对应实施例中对多区块链数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,计算机指令可被部署在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行,分布在多个地点且通过通信网络互连的多个计算设备可以组成区块链系统。
此外,需要说明的是:本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或者计算机程序可以包括计算机指令,该计算机指令可以存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器可以执行该计算机指令,使得该计算机设备执行前文图3、图6、图7或者图8所对应实施例中对多区块链数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机程序产品或者计算机程序实施例中未披露的技术细节,请参照本申请方法实施例的描述。
进一步的,请参见图13,图13是本申请实施例提供的一种多区块链数据处理系统的示意图。该多区块链数据处理系统4可以包含共识节点4a、共识节点4b和共识节点4c;其中,共识节点4a可以为上述图7所对应实施例所描述的处于目标链网络中的目标共识节点,该目标共识节点可以为上述图1所示的共识网络100a中的任意一个区块链节点,这里将不再继续进行赘述。其中,共识节点4b可以为上述图3所对应实施例所描述的处于第一链网络中的第一共识节点,该第一共识节点可以为上述图1所示的共识网络200a中的任意一个区块链节点,这里将不再继续进行赘述。其中,共识节点4c可以为上述图6所对应实施例所描述的处于第二链网络中的第二共识节点,该第二共识节点可以为上述图1所示的共识网络300a中的任意一个区块链节点,这里将不再继续进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储器(Read-Only Memory,ROM)或随机存储器(Random Access Memory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (20)
1.一种多区块链数据处理方法,其特征在于,所述方法由第一链网络中的第一共识节点执行,所述方法包括:
获取第一业务对象请求的第一业务,基于所述第一业务调用第一链上的第一跨链读取合约,从目标链上读取与所述第一业务相关联的第一业务关联信息;所述第一链为所述第一链网络中的区块链;所述目标链是独立于所述第一链网络的目标链网络中的区块链;所述第一链不同于所述目标链;
在基于所述第一业务关联信息确定所述第一业务对象具备所述第一业务对应的第一业务处理权限时,调用所述第一链上的第一业务处理合约执行所述第一业务,得到与所述第一业务相关联的第一业务执行结果,且将所述第一业务执行结果写入所述第一链;所述第一业务执行结果中包含所述第一业务所指示的业务数据;
在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,基于所述跨链读取请求中携带的第二业务从所述第一链上读取所述业务数据,且将所述业务数据中的核心数据返回给所述第二共识节点;所述第二共识节点用于在基于所述核心数据执行所述第二业务之后,将所述第二业务对应的第二业务执行结果写入所述第二链;所述第二链为所述第二共识节点所在的第二链网络中的区块链,所述第二链网络独立于所述第一链网络和所述目标链网络。
2.根据权利要求1所述的方法,其特征在于,与所述第一链网络对应的链入口为第一链入口;所述第一链入口存储有所述第一共识节点在第一跨链读取时间戳时通过所述第一跨链读取合约从所述目标链上所同步来的授权对象的注册数据信息;
所述获取第一业务对象请求的第一业务,基于所述第一业务调用第一链上的第一跨链读取合约,从目标链上读取与所述第一业务相关联的第一业务关联信息,包括:
通过所述第一链网络的第一链入口,获取第一业务对象对应的第一业务节点基于第一业务发送的第一业务处理请求;所述第一业务处理请求中携带所述第一业务对象针对所述第一业务提交的交易业务数据、以及所述第一业务对象的第一签名信息;所述第一签名信息是由与所述第一业务对象相关联的第一业务节点通过所述第一业务对象的第一私钥信息,对所述交易业务数据进行签名后所得到的;所述第一业务对象的第一私钥信息是所述第一业务对象通过所述目标链中的对象身份管理合约进行身份注册后得到的;
从所述第一业务处理请求中获取所述第一签名信息,基于所述第一链入口中存储的所述授权对象的注册数据信息对所述第一签名信息进行签名验证,得到所述第一业务对象的签名验证结果;
在所述第一业务对象的签名验证结果指示签名验证成功时,确定所述第一业务对象为所述授权对象,且基于所述交易业务数据确定与所述第一业务对象相关联的第一业务;
基于所述第一业务调用所述第一跨链读取合约,从所述目标链上读取与所述第一业务相关联的第一业务关联信息。
3.根据权利要求2所述的方法,其特征在于,所述授权对象的注册数据信息中包含所述授权对象的公钥证书;所述授权对象的公钥证书是由所述目标链网络中的目标共识节点调用所述目标链中的对象身份管理合约,对所述授权对象提交的对象数据信息进行身份注册后所得到的;
所述从所述第一业务处理请求中获取所述第一签名信息,基于所述第一链入口中存储的所述授权对象的注册数据信息对所述第一签名信息进行签名验证,得到所述第一业务对象的签名验证结果,包括:
从所述第一业务处理请求中获取所述第一签名信息,从所述第一链入口中存储的所述授权对象的注册数据信息中获取所述授权对象的公钥证书;一个授权对象的公钥证书中包含一个授权对象的公钥信息;
在所述授权对象的公钥证书中查找所述第一业务对象的公钥证书,且在查找到所述第一业务对象的公钥证书时,将查找到的所述第一业务对象的公钥证书作为第一公钥证书,且将所述第一公钥证书中的公钥信息作为所述第一业务对象的第一公钥信息;
基于所述第一公钥证书以及所述第一公钥信息对所述第一签名信息进行签名验证,得到所述第一业务对象的签名验证结果。
4.根据权利要求3所述的方法,其特征在于,所述基于所述第一公钥证书以及所述第一公钥信息对所述第一签名信息进行签名验证,得到所述第一业务对象的签名验证结果,包括:
将所述第一公钥证书的证书数据信息作为待处理证书信息,且在第二跨链读取时间戳时调用所述第一跨链读取合约中的证书数据读取方法,从所述目标链上读取所述第一业务对象的公钥证书;所述第二跨链读取时间戳为所述第一跨链读取时间戳的下一跨链读取时间戳;
将读取到的所述第一业务对象的公钥证书中的证书数据信息作为目标证书信息;
在所述待处理证书信息与所述目标证书信息保持一致时,基于所述第一公钥信息对所述第一签名信息进行签名验证,并将签名验证成功时的验证结果作为所述第一业务对象的签名验证结果。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在所述授权对象的公钥证书中未查找到所述第一业务对象的公钥证书时,将所述第一业务对象确定为非法业务对象,拒绝所述非法业务对象发送的所述第一业务处理请求。
6.根据权利要求2所述的方法,其特征在于,所述基于所述第一业务调用所述第一跨链读取合约,从目标链上读取与所述第一业务相关联的第一业务关联信息,包括:
基于所述第一业务调用所述第一跨链读取合约中的权限合约读取方法,生成用于发送给所述目标链网络中的目标共识节点的权限合约访问请求;所述权限合约访问请求用于指示所述目标共识节点调用所述目标链上的对象权限管理合约,获取与所述第一业务相关联的第一业务关联信息;
接收所述目标共识节点基于所述权限合约访问请求返回的所述第一业务关联信息。
7.根据权利要求1所述的方法,其特征在于,所述第一业务关联信息包含为所述第一业务对象配置的业务权限类型、具备所述业务权限类型的所述第一业务对象在业务时长内的业务累计量以及业务累计阈值;
所述在基于所述第一业务关联信息确定所述第一业务对象具备所述第一业务对应的第一业务处理权限时,调用所述第一链上的第一业务处理合约执行所述第一业务,得到与所述第一业务相关联的第一业务执行结果,且将所述第一业务执行结果写入所述第一链,包括:
在基于所述第一业务关联信息确定所述第一业务对象的业务权限类型为开票权限类型,且具备所述开票权限类型的所述第一业务对象在所述业务时长内的业务累积量未达到所述业务累计阈值时,确定所述第一业务对象具备所述第一业务对应的第一业务处理权限;
基于所述第一业务处理权限获取与所述开票权限类型相关联的合约调用地址和合约调用名称,通过所述合约调用地址和所述合约调用名称调用所述第一链上的电子票据开具合约,将所述第一业务对应的交易业务数据和与所述第一业务中的电子票据开具业务相关联的票据关键信息进行整合,基于整合后的票据关键信息为所述第一业务对象开具电子票据,将开具的所述电子票据作为所述第一业务所指示的业务数据;
将所述票据关键信息、所述业务数据以及所述电子票据开具合约作为执行所述第一业务中的电子票据开具业务的第一业务执行结果,将包含所述第一业务执行结果的第一区块发送至所述第一链上的校验共识节点,以使所述校验共识节点对所述第一区块进行区块校验,得到区块校验结果;所述校验共识节点为所述第一链网络中除所述第一共识节点之外剩余的共识节点;
接收所述校验共识节点返回的所述区块校验结果,若所述区块校验结果指示区块校验成功,则将所述第一区块写入所述第一链。
8.根据权利要求7所述的方法,其特征在于,所述票据关键信息包含从所述目标链上读取到的辅助元数据信息,且所述辅助元数据信息包含第一电子票据模板以及与所述第一电子票据模板相关联的目标计税规则;所述第一电子票据模板为所述目标链上的目标共识节点调用所述目标链上的元数据管理合约对第二电子票据模板进行变更上链后的电子票据模板;所述第二电子票据模板为所述第一电子票据模板的上一电子票据模板;所述元数据变更信息是由与所述目标共识节点相关联的业务管理对象所提交的。
9.根据权利要求1所述的方法,其特征在于,所述第一业务至少包含以下交易业务中的一种:电子票据开具业务、电子票据流转业务、电子票据红冲业务、电子票据归档业务;所述第一业务处理合约至少包含:用于执行所述电子票据开具业务的电子票据开具合约、用于执行所述电子票据流转业务的电子票据流转合约、用于执行所述电子票据红冲业务的电子票据红冲合约以及用于执行所述电子票据归档业务的电子票据归档合约;
其中,所述电子票据开具业务用于指示所述第一共识节点调用所述第一链上的所述电子票据开具合约,为所述第一业务对象开具电子发票;所述电子票据流转业务用于指示所述第一共识节点调用所述第一链上的所述电子票据流转合约,将所述电子发票由所述第一业务对象流转至第二业务对象;所述电子票据红冲业务用于指示所述第一共识节点调用所述第一链上的所述电子票据红冲合约,开具所述电子发票对应的红字发票,且所述红字发票用于更正所述电子发票中的相关票据信息;所述电子票据归档业务用于指示所述第一共识节点调用所述第一链上的所述电子票据归档合约,将所述第一链上满足票据归档条件的电子发票进行冷存储处理。
10.根据权利要求1所述的方法,其特征在于,所述在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,基于所述跨链读取请求中携带的第二业务从所述第一链上读取所述业务数据,且将所述业务数据中的核心数据返回给所述第二共识节点,包括:
在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,从所述跨链读取请求中获取第二业务对象通过与所述第二链相关联的第二业务入口提交的第二业务;所述第二业务入口用于在确定所述第二业务对象具备在所述第二链上处理所述第二业务的权限时,允许所述第二业务对象通过所述第二共识节点调用所述第二跨链读取合约;
基于所述第二业务所指示的跨链请求数据信息,从所述第一链上读取所述业务数据,将读取到的所述业务数据中的核心数据作为所述跨链读取请求对应的跨链请求响应信息,将所述跨链请求响应信息返回给所述第二共识节点,以使所述第二共识节点基于所述跨链请求响应信息调用所述第二链上的第二业务合约执行所述第二业务。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在将所述第一业务执行结果写入所述第一链时,在所述第一业务执行结果对应的目标交易中指定与所述业务数据相关联的业务数据处理终端的处理终端标识;所述处理终端标识用于表征所述业务数据处理终端具备从所述第一链上清分到所述业务数据的功能;
在获取到所述业务数据处理终端发送的交易清分请求时,基于所述交易清分请求中携带的所述处理终端标识从所述第一链上获取所述目标交易,且从所述目标交易所包含的所述第一业务执行结果中清分到所述业务数据,将所述业务数据返回给所述业务数据处理终端,以使所述业务数据处理终端对所述业务数据进行数据分析。
12.一种多区块链数据处理方法,其特征在于,所述方法由第二链网络中的第二共识节点执行,所述方法包括:
获取第二业务对象请求的第二业务,基于所述第二业务调用第二链上的第二跨链读取合约,从目标链上读取与所述第二业务相关联的第二业务关联信息;所述第二链为所述第二链网络中的区块链;所述目标链是独立于所述第二链网络的目标链网络中的区块链;所述第二链不同于所述目标链;
在基于所述第二业务关联信息确定所述第二业务对象具备所述第二业务对应的第二业务处理权限时,调用所述第二跨链读取合约生成与所述第二业务相关联的跨链读取请求,将所述跨链读取请求发送给第一链网络中的第一共识节点;所述跨链读取请求用于指示所述第一共识节点从所述第一链网络对应的第一链上读取与所述第二业务相关联的业务数据;所述第一链网络独立于所述第二链网络和所述目标链网络;所述业务数据是由所述第一共识节点在基于第一业务关联信息确定出第一业务对象具备第一业务对应的第一业务处理权限时,调用所述第一链上的第一业务处理合约所确定的;所述第一业务关联信息是由所述第一共识节点基于所述第一业务调用所述第一链上的第一跨链读取合约从所述目标链上读取到的;
接收所述第一共识节点基于所述跨链读取请求返回的所述业务数据中的核心数据,基于所述核心数据执行所述第二业务,并将所述第二业务对应的第二业务执行结果写入所述第二链。
13.一种多区块链数据处理方法,其特征在于,所述方法由目标链网络中的目标共识节点执行,所述方法包括:
接收第一链网络中的第一共识节点发送的第一业务权限查询请求;所述第一业务权限查询请求是所述第一共识节点在获取到第一业务对象提交的第一业务时,调用第一链上的第一跨链读取合约所确定的;所述第一链为独立于所述目标链网络的所述第一链网络中的区块链;
基于所述第一业务查询请求从所述目标链网络对应的目标链上,读取与所述第一业务相关联的第一业务关联信息,将所述第一业务关联信息返回给所述第一共识节点,以使所述第一共识节点在基于所述第一业务关联信息确定所述第一业务对象具备所述第一业务对应的第一业务处理权限时,调用所述第一链上的第一业务处理合约执行所述第一业务,得到用于写入所述第一链的第一业务执行结果;所述第一业务执行结果中包含所述第一业务所指示的业务数据;
接收第二链网络中的第二共识节点发送的第二业务权限查询请求;所述第二业务权限查询请求是所述第二共识节点在获取到第二业务对象提交的第二业务时,调用所述第二链网络对应的第二链上的第二跨链读取合约所确定的;所述第二链网络独立于所述第一链网络和目标链网络;
基于所述第二业务查询请求从所述目标链上,读取与所述第二业务相关联的第二业务关联信息,将所述第二业务关联信息返回给所述第二共识节点,以使所述第二共识节点在基于所述第二业务关联信息确定所述第二业务对象具备所述第二业务对应的第二业务处理权限时,调用所述第二跨链读取合约生成用于发送给所述第一共识节点的与所述第二业务相关联的跨链读取请求;所述跨链读取请求用于指示所述第一共识节点从所述第一链上读取所述业务数据。
14.一种多区块链数据处理装置,其特征在于,所述装置运行在第一链网络中的第一共识节点上,所述装置包括:
第一业务获取模块,用于获取第一业务对象请求的第一业务,基于所述第一业务调用第一链上的第一跨链读取合约,从目标链上读取与所述第一业务相关联的第一业务关联信息;所述第一链为所述第一链网络中的区块链;所述目标链是独立于所述第一链网络的目标链网络中的区块链;所述第一链不同于所述目标链;
第一业务执行模块,用于在基于所述第一业务关联信息确定所述第一业务对象具备所述第一业务对应的第一业务处理权限时,调用所述第一链上的第一业务处理合约执行所述第一业务,得到与所述第一业务相关联的第一业务执行结果,且将所述第一业务执行结果写入所述第一链;所述第一业务执行结果中包含所述第一业务所指示的业务数据;
业务数据读取模块,用于在获取到第二共识节点基于第二链上的第二跨链读取合约发送的跨链读取请求时,基于所述跨链读取请求中携带的第二业务从所述第一链上读取所述业务数据,且将所述业务数据中的核心数据返回给所述第二共识节点;所述第二共识节点用于在基于所述核心数据执行所述第二业务之后,将所述第二业务对应的第二业务执行结果写入所述第二链;所述第二链为所述第二共识节点所在的第二链网络中的区块链,所述第二链网络独立于所述第一链网络和所述目标链网络。
15.一种多区块链数据处理装置,其特征在于,所述装置运行在第二链网络中的第二共识节点上,所述装置包括:
第二业务获取模块,用于获取第二业务对象请求的第二业务,基于所述第二业务调用第二链上的第二跨链读取合约,从目标链上读取与所述第二业务相关联的第二业务关联信息;所述第二链为所述第二链网络中的区块链;所述目标链是独立于所述第二链网络的目标链网络中的区块链;所述第二链不同于所述目标链;
跨链读取请求发送模块,用于在基于所述第二业务关联信息确定所述第二业务对象具备所述第二业务对应的第二业务处理权限时,调用所述第二跨链读取合约生成与所述第二业务相关联的跨链读取请求,将所述跨链读取请求发送给第一链网络中的第一共识节点;所述跨链读取请求用于指示所述第一共识节点从所述第一链网络对应的第一链上读取与所述第二业务相关联的业务数据;所述第一链网络独立于所述第二链网络和所述目标链网络;所述业务数据是由所述第一共识节点在基于第一业务关联信息确定出第一业务对象具备第一业务对应的第一业务处理权限时,调用所述第一链上的第一业务处理合约所确定的;所述第一业务关联信息是由所述第一共识节点基于所述第一业务调用所述第一链上的第一跨链读取合约从所述目标链上读取到的;
第二业务执行模块,用于接收所述第一共识节点基于所述跨链读取请求返回的所述业务数据中的核心数据,基于所述核心数据执行所述第二业务,并将所述第二业务对应的第二业务执行结果写入所述第二链。
16.一种多区块链数据处理装置,其特征在于,所述装置运行在目标链网络中的目标共识节点上,所述装置包括:
第一查询请求接收模块,用于接收第一链网络中的第一共识节点发送的第一业务权限查询请求;所述第一业务权限查询请求是所述第一共识节点在获取到第一业务对象提交的第一业务时,调用第一链上的第一跨链读取合约所确定的;所述第一链为独立于所述目标链网络的所述第一链网络中的区块链;
第一关联信息返回模块,用于基于所述第一业务查询请求从所述目标链网络对应的目标链上,读取与所述第一业务相关联的第一业务关联信息,将所述第一业务关联信息返回给所述第一共识节点,以使所述第一共识节点在基于所述第一业务关联信息确定所述第一业务对象具备所述第一业务对应的第一业务处理权限时,调用所述第一链上的第一业务处理合约执行所述第一业务,得到用于写入所述第一链的第一业务执行结果;所述第一业务执行结果中包含所述第一业务所指示的业务数据;
第二查询请求接收模块,用于接收第二链网络中的第二共识节点发送的第二业务权限查询请求;所述第二业务权限查询请求是所述第二共识节点在获取到第二业务对象提交的第二业务时,调用所述第二链网络对应的第二链上的第二跨链读取合约所确定的;所述第二链网络独立于所述第一链网络和目标链网络;
第二关联信息返回模块,用于基于所述第二业务查询请求从所述目标链上,读取与所述第二业务相关联的第二业务关联信息,将所述第二业务关联信息返回给所述第二共识节点,以使所述第二共识节点在基于所述第二业务关联信息确定所述第二业务对象具备所述第二业务对应的第二业务处理权限时,调用所述第二跨链读取合约生成用于发送给所述第一共识节点的与所述第二业务相关联的跨链读取请求;所述跨链读取请求用于指示所述第一共识节点从所述第一链上读取所述业务数据。
17.一种多区块链数据处理系统,其特征在于,所述系统包括:第一链网络中的第一共识节点、目标链网络中的目标共识节点和第二链网络中的第二共识节点;所述第一链网络独立于所述目标链网络,且独立于所述第二链网络;
所述第一共识节点用于获取第一业务对象请求的第一业务,基于所述第一业务调用第一链上的第一跨链读取合约,生成第一业务权限查询请求;
所述目标共识节点用于在获取到所述第一共识节点发送的所述第一业务权限查询请求时,从所述目标链网络对应的目标链上读取与所述第一业务相关联的第一业务关联信息,将所述第一业务关联信息返回给所述第一共识节点;
所述第一共识节点还用于在基于所述第一业务关联信息确定所述第一业务对象具备所述第一业务对应的第一业务处理权限时,调用所述第一链上的第一业务处理合约执行所述第一业务,得到与所述第一业务相关联的第一业务执行结果,且将所述第一业务执行结果写入所述第一链;所述第一业务执行结果中包含所述第一业务所指示的业务数据;
所述第一共识节点还用于在获取到所述第二共识节点发送的跨链读取请求时,基于所述跨链读取请求中携带的第二业务从所述第一链上读取所述业务数据,且将所述业务数据中的核心数据返回给所述第二共识节点;所述跨链读取请求是所述第二共识节点在基于第二业务关联信息确定所述第二业务对象具备所述第二业务对应的第二业务处理权限时,调用所述第二跨链读取合约所生成的;所述第二业务关联信息是所述第二共识节点基于所述第二业务调用所述第二跨链读取合约从目标链上读取到的;
所述第二共识节点用于在基于所述核心数据执行所述第二业务之后,将所述第二业务对应的第二业务执行结果写入所述第二链。
18.一种计算机设备,其特征在于,包括存储器和处理器;
所述存储器与所述处理器相连,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使得所述计算机设备执行权利要求1-13任一项所述的方法。
19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1-13任一项所述的方法。
20.一种计算机程序产品,其特征在于,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现权利要求1-13任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211260878.XA CN117931933A (zh) | 2022-10-14 | 2022-10-14 | 多区块链数据处理方法、装置、设备、系统以及介质 |
PCT/CN2023/112033 WO2024078109A1 (zh) | 2022-10-14 | 2023-08-09 | 多区块链数据处理方法、装置、设备、系统以及介质 |
US18/379,648 US20240129143A1 (en) | 2022-10-14 | 2023-10-12 | Dividing data storage and service operations among plural blockchains |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211260878.XA CN117931933A (zh) | 2022-10-14 | 2022-10-14 | 多区块链数据处理方法、装置、设备、系统以及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117931933A true CN117931933A (zh) | 2024-04-26 |
Family
ID=88511234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211260878.XA Pending CN117931933A (zh) | 2022-10-14 | 2022-10-14 | 多区块链数据处理方法、装置、设备、系统以及介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117931933A (zh) |
WO (1) | WO2024078109A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11194837B2 (en) * | 2018-05-01 | 2021-12-07 | International Business Machines Corporation | Blockchain implementing cross-chain transactions |
CN110266655B (zh) * | 2019-05-30 | 2021-11-12 | 中国工商银行股份有限公司 | 一种基于区块链的跨链互联方法、设备以及系统 |
CN112348672B (zh) * | 2019-08-07 | 2023-08-08 | 淘宝(中国)软件有限公司 | 跨链交易方法、装置、多区块链系统及计算设备 |
CN113379422B (zh) * | 2021-08-12 | 2021-10-15 | 腾讯科技(深圳)有限公司 | 基于智能合约的数据处理方法、设备以及可读存储介质 |
-
2022
- 2022-10-14 CN CN202211260878.XA patent/CN117931933A/zh active Pending
-
2023
- 2023-08-09 WO PCT/CN2023/112033 patent/WO2024078109A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024078109A1 (zh) | 2024-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110599181B (zh) | 基于区块链的数据处理方法、装置和设备及存储介质 | |
CN113395363B (zh) | 基于区块链的数据处理方法、装置、设备及存储介质 | |
CN113032490A (zh) | 一种合约数据处理方法、相关设备及介质 | |
US20220156837A1 (en) | Distributed ledger implementation for entity formation and monitoring system | |
CN112632629B (zh) | 基于区块链的投票管理方法、装置、介质及电子设备 | |
CN113256297B (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN113379422B (zh) | 基于智能合约的数据处理方法、设备以及可读存储介质 | |
CN111292174A (zh) | 一种纳税信息处理方法、装置及计算机可读存储介质 | |
CN111340628A (zh) | 基于区块链的资产信息管理方法和装置 | |
Kwame et al. | V-chain: A blockchain-based car lease platform | |
CN112822267B (zh) | 基于区块链的数据处理方法和装置 | |
CN113037824B (zh) | 一种面向云计算的高性能区块链的构建方法 | |
CN112202564B (zh) | 交易传递方法、装置、电子设备及可读存储介质 | |
KR102139551B1 (ko) | 유언장을 관리하는 서버 및 방법 | |
CN117931933A (zh) | 多区块链数据处理方法、装置、设备、系统以及介质 | |
US20240129143A1 (en) | Dividing data storage and service operations among plural blockchains | |
WO2024093593A1 (zh) | 基于多区块链的数据处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品 | |
US20240137208A1 (en) | Asset transferring method and apparatus based on multiple blockchains, device, medium, and product | |
WO2024099023A1 (zh) | 多区块链数据处理方法、装置、设备、计算机可读存储介质及计算机程序产品 | |
CN117992534A (zh) | 基于多区块链的数据跨链方法、相关设备、介质及产品 | |
WO2024082807A1 (zh) | 基于多区块链的资产转移方法、装置、设备、介质及产品 | |
CN118041839A (zh) | 一种多区块链数据处理方法、装置、设备、介质及产品 | |
CN117938867A (zh) | 一种多区块链数据处理方法、装置、设备、介质及产品 | |
US20230409400A1 (en) | System for resource allocation and monitoring | |
CN117951217A (zh) | 基于多区块链的跨链配置方法、装置、设备、系统及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |