CN116366254A - 跨链信息生成方法、跨链信息验证方法及跨链信息验证系统 - Google Patents
跨链信息生成方法、跨链信息验证方法及跨链信息验证系统 Download PDFInfo
- Publication number
- CN116366254A CN116366254A CN202111619783.8A CN202111619783A CN116366254A CN 116366254 A CN116366254 A CN 116366254A CN 202111619783 A CN202111619783 A CN 202111619783A CN 116366254 A CN116366254 A CN 116366254A
- Authority
- CN
- China
- Prior art keywords
- chain
- cross
- information
- verification
- conversion component
- 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
- 238000012795 verification Methods 0.000 title claims abstract description 332
- 238000000034 method Methods 0.000 title claims abstract description 127
- 238000012545 processing Methods 0.000 claims abstract description 460
- 238000006243 chemical reaction Methods 0.000 claims abstract description 295
- 238000003860 storage Methods 0.000 claims abstract description 23
- 230000008569 process Effects 0.000 claims description 38
- 238000004590 computer program Methods 0.000 claims description 28
- 230000004044 response Effects 0.000 claims description 19
- 230000005540 biological transmission Effects 0.000 claims description 14
- 238000010200 validation analysis Methods 0.000 claims description 3
- 238000012546 transfer Methods 0.000 description 42
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 9
- 230000007246 mechanism Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 239000000463 material Substances 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000013175 transesophageal echocardiography Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
Images
Classifications
-
- 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/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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本申请涉及跨链信息的生成和验证,具体涉及一种跨链信息生成方法、装置、计算机设备和存储介质。所述方法包括响应于数据处理请求,在第一链的第一区块链网络中进行第一处理,得到第一处理结果,并基于第一处理结果进行上链操作,得到第一事件信息;通过运行于可信执行环境中的、且与第一链对应的第一跨链证明转换组件,对第一事件信息进行第一验证,得到第一认证信息,根据第一事件信息和第一认证信息,生成第一跨链信息;将第一跨链信息传输至运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件。采用本方法能够去中心化。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种跨链信息生成方法、跨链信息验证方法及跨链信息验证系统。
背景技术
区块链本质上是一种分布式的、多中心化的链式数据存储系统,但是在区块链生态系统中,由于存在越来越多的区块链网络,因此也产生了越来越多的“数据孤岛”。区块链跨链技术就是为了解决两个或多个不同区块链网络之间数据传递、转移、交换的问题。不同的区块链网络之间可通过跨链信息来进行数据传递、转移、交换,数据跨链不仅可以增加区块链网络的可拓展性,同时也可以降低区块链网络间数据共享的成本。
确保跨链信息真实可信是跨链过程中的技术难点,目前,主要是引入一个权威的第三方机构作为不同区块链网络之间的中间人,通过这个中间人来进行跨链信息的转发以及确认。然而,第三方机构为一个中心化的中介,使得跨链信息的原子性与安全性由中心化的中介来保证,具有中心化风险。
发明内容
基于此,有必要针对上述技术问题,提供一种能够去中心化的跨链信息生成方法、装置、计算机设备和存储介质。
一种跨链信息生成方法,所述方法包括:
响应于数据处理请求,在第一链的第一区块链网络中进行第一处理,得到第一处理结果,并基于所述第一处理结果进行上链操作,得到第一事件信息;
通过运行于可信执行环境中的、且与所述第一链对应的第一跨链证明转换组件,对所述第一事件信息进行第一验证,得到第一认证信息,根据所述第一事件信息和所述第一认证信息,生成第一跨链信息;
将所述第一跨链信息传输至运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件;所述第一跨链信息用于指示所述第二跨链证明转换组件对所述第一跨链信息进行第二验证,并在第二验证通过时,通过第二链的第二区块链网络根据所述第一跨链信息对所述数据处理请求进行第二处理。
一种跨链信息生成装置,所述装置包括:
数据处理模块,用于响应于数据处理请求,在第一链的第一区块链网络中进行第一处理,得到第一处理结果,并基于所述第一处理结果进行上链操作,得到第一事件信息;
信息生成模块,用于通过运行于可信执行环境中的、且与所述第一链对应的第一跨链证明转换组件,对所述第一事件信息进行第一验证,得到第一认证信息,根据所述第一事件信息和所述第一认证信息,生成第一跨链信息;
跨链传输模块,用于将所述第一跨链信息传输至运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件;所述第一跨链信息用于指示所述第二跨链证明转换组件对所述第一跨链信息进行第二验证,并在第二验证通过时,通过第二链的第二区块链网络根据所述第一跨链信息对所述数据处理请求进行第二处理。
在一个实施例中,所述数据处理模块还包括第一处理模块,用于若接收到数据处理请求,则调用第一链的第一区块链网络中的第一智能合约,通过所述第一智能合约对所述数据处理请求进行第一处理,得到第一处理结果。
在一个实施例中,所述数据处理模块还用于将所述第一处理结果广播至所述第一区块链网络中的区块链节点;通过所述区块链节点,并基于所述第一处理结果进行共识操作,将包括有第一处理结果的新区块添加至所述第一区块链网络;通过所述第一区块链网络中的第一事件节点,并根据所述新区块中存储的区块信息,得到第一事件信息。
在一个实施例中,所述信息生成模块还包括验证模块,用于通过所述第一链的第一跨链证明转换组件,对所述第一事件信息进行解析,得到数据读写集和消息签名;通过所述第一跨链证明转换组件,确定与所述第一区块链网络对应的网络公钥,并根据所述网络公钥,对所述消息签名进行验证;通过所述第一跨链证明转换组件,根据所述数据读写集中的合约信息、参数信息以及账户信息中的至少一种,对所述数据读写集进行验证;综合对所述消息签名进行验证后得到的消息签名验证结果、和对所述数据读写集进行验证后得到的数据读写集验证结果,得到第一验证的验证结果;通过所述第一验证的验证结果得到相应的第一认证信息。
在一个实施例中,所述第一区块链网络包括背书节点和共识节点,所述消息签名包括与所述背书节点对应的背书签名和与所述共识节点对应的共识签名,所述网络公钥包括与所述背书节点相对应的背书公钥、和与所述共识节点相对应的共识公钥;所述验证模块还用于通过所述背书公钥,对与所述背书节点对应的背书签名进行验证;通过所述共识公钥,对与所述共识节点对应的共识签名进行验证。
在一个实施例中,所述信息生成模块还用于当获取得到所述第一验证的验证结果时,确定与所述第一链的第一跨链证明转换组件相对应的第一组件私钥;通过所述第一组件私钥,并基于所述第一验证的验证结果进行签名处理,得到相应的第一认证信息。
在一个实施例中,所述跨链信息生成装置还包括跨链模块,用于接收所述第二链的第二区块链网络传输的第二跨链信息;所述第二跨链信息为对所述数据处理请求进行第二处理后得到的信息;在所述第二跨链信息验证后,获取与所述数据处理相对应的数据处理标识,并基于所述数据处理标识进行上链操作。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本申请实施例提供的任一种跨链信息生成方法中的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例提供的任一种跨链信息生成方法中的步骤。
一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例提供的任一种跨链信息生成方法中的步骤。
上述跨链信息生成方法、装置、计算机设备、存储介质和计算机程序,通过响应于数据处理请求,可对数据处理请求进行第一处理,得到第一处理结果,并基于第一处理结果进行上链操作,得到第一事件信息。通过生成第一事件信息,可通过运行于可信环境中的第一跨链证明转换组件对第一事件信息进行第一验证,从而通过第一验证提升第一事件信息的可信赖性。通过对第一事件信息进行第一验证,可生成包括有第一认证信息的第一跨链信息。由于第一跨链信息中包括有通过运行于可信执行环境中的第一跨链证明转换组件生成的第一认证信息,因此,可使得第一跨链信息真实可信。通过生成真实可信的第一跨链信息,可将第一跨链信息传输至第二链的第二跨链证明转换组件,从而第二跨链证明转换组件便可通过第一认证信息对第一跨链信息的真实可信性进行进一步验证,并在进一步验证通过后,对数据处理请求进行第二处理。由于是在验证通过之后,才对数据处理请求进行第二处理,因此提升了第二处理的安全性。相比于传统的通过中心化的第三方机构来保证跨链信息的可信性,由于本申请的每个链均对应于一个运行于可信执行环境中的跨链证明转换组件,因此,每个链均可通过各自对应的跨链证明转换组件生成相应的跨链信息,或者对相应的跨链信息进行验证,从而使得本申请不具有中心化风险。
此外,当需要新增链时,新加入的链只需根据本链的特性增加跨链证明转换组件即可,而无需进行复杂的配置过程,从而大大降低了加入新链的门槛,进而提升了跨链信息生成的通用性。由于本申请只需在跨链证明转换组件中编写对应的验证方案,即可基于相应验证方案对跨链信息的真实性进行验证,如此,便提升了对跨链信息验证的通用性。
一种跨链信息验证方法,所述方法包括:
接收第一跨链信息;所述第一跨链信息是通过运行于可信执行环境中的、且与第一链对应的第一跨链证明转换组件,对第一链的第一区块链网络响应数据处理请求的响应过程进行第一验证和认证生成;
通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,对所述第一跨链信息进行第二验证;
若所述第二验证通过,则在第二链的第二区块链网络中对所述数据处理请求进行第二处理,得到第二处理结果,并基于所述第二处理结果进行上链操作;
通过所述第二跨链证明转换组件,对基于第二处理结果的上链操作所得到的第二事件信息进行第三验证,得到第二认证信息;
根据所述第二事件信息和所述第二认证信息生成第二跨链信息;
将所述第二跨链信息返回至第一链的第一跨链证明转换组件;其中,所述第二跨链信息用于指示所述第一跨链证明转换组件对所述第二跨链信息进行第四验证,并在第四验证通过时,通过所述第一区块链网络基于所述第二跨链信息进行上链操作。
一种跨链信息验证系统,所述系统包括与第一链对应的第一区块链网络和运行于可信执行环境中的第一跨链证明转换组件,以及与第二链对应的第二区块链网络和运行于可信执行环境中的第二跨链证明转换组件,其中:
所述第一区块链网络,用于响应于数据处理请求进行第一处理,得到第一处理结果,并基于所述第一处理结果进行上链操作,得到第一事件信息;
所述第一跨链证明转换组件,用于对所述第一事件信息进行第一验证,得到第一认证信息,并根据所述第一事件信息和所述第一认证信息生成第一跨链信息,将所述第一跨链信息传输至所述第二跨链证明转换组件;
所述第二跨链证明转换组件,用于对所述第一跨链信息中的第一认证信息进行第二验证,并在第二验证通过时,对所述第一跨链信息进行解析,得到第二智能合约的合约参数;
所述第二区块链网络,用于根据所述第二智能合约的合约参数对所述数据处理请求进行第二处理,得到第二处理结果;
所述第二区块链网络,用于基于所述第二处理结果进行上链操作,并根据所述第二处理结果的上链操作生成第二事件信息;
所述第二跨链证明转换组件,用于对所述第二事件信息进行第三验证,得到包括有第二认证信息的第二跨链信息;
所述第一跨链证明转换组件,用于对所述第二跨链信息中的第二认证信息进行第四验证,并在第四验证通过时,触发所述第一区块链网络基于所述第二跨链信息进行上链操作。
一种跨链信息验证装置,所述装置包括:
接收模块,用于接收第一跨链信息;通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,对所述第一跨链信息进行第二验证;所述第一跨链信息是通过运行于可信执行环境中的、且与第一链对应的第一跨链证明转换组件,对第一链的第一区块链网络响应数据处理请求的响应过程进行第一验证和认证生成;
上链模块,用于若所述第二验证通过,则在第二链的第二区块链网络中对所述数据处理请求进行第二处理,得到第二处理结果,并基于所述第二处理结果进行上链操作;
信息返回模块:通过所述第二跨链证明转换组件,对基于第二处理结果的上链操作所得到的第二事件信息进行第三验证,得到第二认证信息;根据所述第二事件信息和所述第二认证信息生成第二跨链信息;将所述第二跨链信息返回至第一链的第一跨链证明转换组件;其中,所述第二跨链信息用于指示所述第一跨链证明转换组件对所述第二跨链信息进行第四验证,并在第四验证通过时,通过所述第一区块链网络基于所述第二跨链信息进行上链操作。
在一个实施例中,所述接收模块还用于确定与第一链的第一跨链证明转换组件相对应的第一组件公钥;通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,根据所述第一组件公钥对所述第一跨链信息中的第一认证信息进行第二验证。
在一个实施例中,所述上链模块还包括第二验证模块,用于当所述第二验证通过时,对所述第一跨链信息进行解析,得到第二智能合约和所述第二智能合约的合约参数;在第二链的第二区块链网络中,通过所述第二智能合约和所述合约参数,对所述数据处理请求进行第二处理,得到第二处理结果。
在一个实施例中,所述第二验证模块还用于通过所述第二跨链证明转换组件,并根据与所述第二跨链证明转换组件对应的第二组件私钥,对所述第二智能合约的合约参数进行签名,得到输入参数;通过所述第二区块链网络中的第二智能合约,并根据与所述第二跨链证明转换组件相对应的第二组件公钥,对所述输入参数进行第五验证;当第五验证通过时,通过所述第二智能合约和所述输入参数,对所述数据处理请求进行第二处理,得到第二处理结果。
在一个实施例中,所述信息返回模块还用于对基于第二处理结果的上链操作所得到的第二事件信息进行第三验证,得到第三验证的验证结果;确定与所述第二链的第二跨链证明转换组件相对应的第二组件私钥;通过所述第二组件私钥对所述第三验证的验证结果进行签名,得到相应的第二认证信息。
在一个实施例中,所述跨链信息验证装置还用于确定与所述第二跨链证明转换组件对应的第二组件公钥,并通过所述第二组件公钥对所述第二跨链信息中的第二认证信息进行第四验证;当第四验证通过时,获取与所述数据处理相对应的数据处理标识,并基于所述数据处理标识执行上链操作。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本申请实施例提供的任一种跨链信息验证方法中的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例提供的任一种跨链信息验证方法中的步骤。
一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例提供的任一种跨链信息验证方法中的步骤。
上述跨链信息验证方法、系统、装置、计算机设备、存储介质和计算机程序,通过接收第一跨链信息,可基于运行于可信执行环境中的第二跨链证明转换组件对第一跨链信息进行第二验证,以确定第一链是否已正确对数据处理请求进行第一处理。通过在确定第一链已正确对数据处理请求进行第一处理后,再对数据处理请求进行第二处理,可提升第二处理的安全性。通过将第二处理的处理结果进行上链,可得到第二事件信息,并基于第二跨链证明转换组件对该第二事件信息进行第三验证,可得到包括有第二认证信息的第二跨链信息。由于第二跨链证明转换组件运行于可信执行环境中,因此使得通过第二跨链证明转换组件生成的第二跨链信息真实可信。通过生成真实可信的第二跨链信息,可将第二跨链信息传输至第一链的第一跨链证明转换组件,从使得第一跨链证明转换组件可通过第二认证信息对第二跨链信息进行进一步验证,以确定第二链是否已成功对数据处理请求进行第二处理。通过判断第二链是否已成功对数据处理请求进行第二处理,可在确定已成功进行第二处理后,再基于第二跨链信息进行上链操作,如此,便提升了上链操作的安全性。由于本申请的每个链分别对应于一个运行于可信执行环境中的跨链证明转换组件,因此,每个链均可通过各自对应的跨链证明转换组件生成相应跨链信息,或者对相应的跨链信息进行验证,从而使得本申请不具有中心化风险。
此外,当需要新增链时,新加入的链只需根据本链的特性增加跨链证明转换组件即可,而无需进行复杂的配置过程,从而大大降低了加入新链的门槛,进而提升了跨链信息生成的通用性。由于本申请只需在跨链证明转换组件中编写对应的验证方案,即可基于相应验证方案对跨链信息的真实性进行验证,如此,便提升了对跨链信息验证的通用性。
附图说明
图1为一个实施例中跨链信息生成方法的应用环境图;
图2为一个实施例中分布式区块链系统的结构示意图;
图3为一个实施例区块结构的示意图;
图4为一个实施例中跨链信息生成方法的流程示意图;
图5为一个实施例中跨链信息验证方法的流程示意图;
图6为一个实施例中跨链信息验证系统的结构示意图;
图7为一个具体实施例中跨链信息生成方法的流程示意图;
图8为一个实施例中跨链信息生成装置的结构框图;
图9为一个实施例中跨链信息验证装置的结构框图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中跨链信息生成方法的应用环境图。参照图1,该跨链信息生成方法应用于跨链信息生成系统100。该跨链信息生成系统100包括第一链102和第二链104。第一链102中包括有第一区块链网络102-1、第一网关102-2、第一跨链证明转换组件102-3,第二链104包括第二区块链网络104-1、第二网关104-2和第二跨链证明转换组件104-3。第一区块链网络102-1和第二区块链网络104-1中均由共享账本、智能合约、事件节点、背书节点、共识节点等构成。用户可通过第一网关102-2发起数据处理请求,从而第一网关102-2可调用第一区块链网络102-1中的第一智能合约执行该数据处理请求,得到第一处理结果。第一区块链网络102-1可基于第一处理结果进行上链操作,第一区块链网络102-1中的第一事件节点可根据该上链操作得到第一事件信息,并将第一事件信息发送至第一链102的第一跨链证明转换组件102-3。第一跨链证明转换组件102-3可对第一事件信息进行第一验证,并在第一验证通过后,生成第一跨链信息,通过第一网关102-2将第一跨链信息发送至第二链104中的第二网关104-2。第二网关104-2将第一跨链信息转发至第二链104中的第二跨链证明转换组件104-3,并通过第二跨链证明转换组件104-3对第一跨链信息进行第二验证,在第二验证通过后,通过第二链104的第二区块链网络104-1根据第一跨链信息对数据处理请求进行第二处理,得到第二处理结果,并将第二处理结果进行上链处理。
其中,第一链102中的第一区块链网络102-1、第一网关102-2、第一跨链证明转换组件102-3可通过有线或者无线通信的方式进行直接或间接地连接,第二链104中的第二区块链网络104-1、第二网关104-2和第二跨链证明转换组件104-3也可通过有线或者无线通信的方式进行直接或间接地连接。第一区块链网络102-1和第二区块链网络104-1中可包括有多个区块链节点,各区块链节点、第一跨链证明转换组件102-3和第二跨链证明转换组件104-3均可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。本申请在此不做限制。
本发明实施例涉及的区块链网络可以为基于分布式系统而生成的区块链。以分布式系统为区块链系统为例,参见图2,图2是本发明实施例提供的分布式系统200应用于区块链系统的一个可选的结构示意图,由多个区块链节点(接入网络中的任意形式的计算设备,如服务器、用户终端)和客户端形成,节点之间形成组成的点对点(P2P,Peer To Peer)网络,P2P协议是一个运行在传输控制协议(TCP,Transmission Control Protocol)协议之上的应用层协议。在分布式系统中,任何机器如服务器、终端都可以加入而成为区块链节点,区块链节点包括硬件层、中间层、操作系统层和应用层。
参见图1示出的区块链系统中各区块链节点的功能,涉及的功能包括:
1)路由,节点具有的基本功能,用于支持节点之间的通信。
节点除具有路由功能外,还可以具有以下功能:
2)应用,用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链系统中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。
例如,应用实现的业务包括:
2.1)钱包,用于提供进行电子货币的交易的功能,包括发起交易(即,将当前交易的交易记录发送给区块链系统中的其他节点,其他节点验证成功后,作为承认交易有效的响应,将交易的记录数据存入区块链的临时区块中;当然,钱包还支持查询电子货币地址中剩余的电子货币;
2.2)共享账本,用于提供账目数据的存储、查询和修改等操作的功能,将对账目数据的操作的记录数据发送到区块链系统中的其他节点,其他节点验证有效后,作为承认账目数据有效的响应,将记录数据存入临时区块中,还可以向发起操作的节点发送确认。
2.3)智能合约,计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易,例如查询买家所购买商品的物流状态,在买家签收货物后将买家的电子货币转移到商户的地址;当然,智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。
3)区块链,包括一系列按照产生的先后时间顺序相互接续的区块(Block),新区块一旦加入到区块链中就不会再被移除,区块中记录了区块链系统中节点提交的记录数据。
参见图3,图3是本发明实施例提供的区块结构(Block Structure)一个可选的示意图,每个区块中包括本区块存储交易记录的哈希值(本区块的哈希值)、以及前一区块的哈希值,各区块通过哈希值连接形成区块链。另外,区块中还可以包括有区块生成时的时间戳等信息。区块链网络(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性和生成下一个区块。
值得注意的是,本申请还涉及云技术,比如,本申请中的区块链节点可以为提供云计算服务的云服务器。云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
在一个实施例中,如图4所示,提供了一种跨链信息生成方法,以该方法应用于图1中的第一链为例进行说明,包括以下步骤:
步骤S402,响应于数据处理请求,在第一链的第一区块链网络中进行第一处理,得到第一处理结果,并基于第一处理结果进行上链操作,得到第一事件信息。
其中,数据处理请求指的是对数据进行处理的请求,在区块链领域中,该数据处理请求具体可以为对区块链所提供的共享账本进行存储、查询和修改等。第一链包括第一区块链网络,其中,第一区块链网络指的是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。第一区块链网络中包括有多个区块链节点,区块链节点之间可以存在信息连接,区块链节点之间可以通过上述信息连接进行信息传输。第一区块链网络中的每个区块链节点均存储一条相同的区块链。区块链由多个区块组成,区块包括区块头和区块主体,区块头中存储有输入信息特征值、版本号、时间戳和难度值,区块主体中存储有输入信息。
具体地,当第一链的第一区块链网络获取得到数据处理请求时,第一区块链连网络可响应该数据处理请求,根据数据处理请求所包括的处理信息对该数据处理请求进行第一处理,得到第一处理结果,并基于该第一处理结果进行上链操作,以将第一处理结果存储至第一区块链网络的各区块链节点中。当基于第一处理结果进行上链操作时,第一区块链网络可根据该上链操作生成第一事件信息。其中,第一事件信息指的是记录有区块内容的信息。区块内容指的区块所存储的信息。第一事件信息具体可以为一个区块包含的所有信息,比如第一事件信息具体可包括有区块头消息、数据读写集等信息等。
在一个实施例中,用户可通过第一网关发起数据处理请求,从而在第一网关接收到数据处理请求时,通过调用第一区块链网络来对数据处理请求进行第一处理。其中,第一链除包括第一区块链网络之外,还包括有第一网关,第一网关又称跨链网关,跨链网关是一个对接具体类型区块链以及转发跨链信息的重要组成部分,其主要提供了应用链适配、跨链交易监听、跨链交易执行、跨链交易路由等核心功能。比如,当第一链的用户A期望向第二链的用户B转移部分资源时,用户A即可通过第一链的第一网关发起数据处理请求,以使第一区块链对该数据处理请求进行第一处理,从用户A的账户中扣除需转移至用户B的资源数量。
在一个实施例中,第一事件信息具体可以为一个区块包含的所有信息,也可以是对区块包含的所有信息进行过滤之后的信息。比如,订阅者可以订阅自身所关心的内容,从而第一区块链网络可根据订阅者所订阅的内容,对区块包含的所有信息进行过滤,将过滤后的信息作为第一事件信息。
在一个实施例中,响应于数据处理请求,在第一链的第一区块链网络中进行第一处理,得到第一处理结果,包括:若接收到数据处理请求,则调用第一链的第一区块链网络中的第一智能合约,通过第一智能合约对数据处理请求进行第一处理,得到第一处理结果。
其中,第一区块链网络中的区块链节点还可提供有应用功能,其中,应用实现的业务具体可以为智能合约。智能合约是指计算机化的协议,是可用以执行某个合约的条款。智能合约可通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易。在本申请中,第一区块链网络所提供的智能合约即为第一智能合约。
具体地,数据处理请求中包括有第一链需要调用的第一智能合约、以及合约参数,第一链可响应于数据处理请求,对数据处理请求进行第一处理,例如,第一链可将合约参数输入至第一智能合约中,通过第一智能合约得到第一处理结果。比如,当第一链的用户A期望向第二链的用户B转移10个资源时,数据处理请求中即可包括有第一智能合约的合约信息以及第一智能合约的合约入参,其中,第一智能合约的合约信息具体可以为第一智能合约的名称,比如,合约名:PAY。合约入参指的是输入至智能合约中的参数,在上述举例中,第一智能合约的合约入参具体可以为:(账户A,-10),其中,“账户A”为用户A的账户名称,“-10”代表从用户A的账户中扣除10资源。从而第一链可以将(账户A,-10)输入至合约名为PAY的第一智能合约中,通过第一智能合约执行从用户A的账户中扣除10个资源的逻辑,并输出该逻辑的执行结果,将该逻辑的执行结果作为第一处理结果。其中,资源一般是指与现实世界中的实体资源相对应的虚拟资源,例如存储空间、计算能力、电子图书、银行账户存款余额、电子钱包账户存款余额、虚拟货币存款余额等。
在其中一个实施例中,在上述举例中,第一处理结果具体可以为资源转移成功,用户A的账户已成功扣除10个资源,或者为资源转移失败,用户A账户中的资源总量不变。
上述实施例中,由于第一智能合约是通过在满足一定条件时而执行的代码实现的,因此,可减少在不满足条件的情况下,依旧执行相应代码,得到第一处理结果的情况,从而提升了通过第一智能合约得到第一处理结果的准确性。
在一个实施例中,基于第一处理结果进行上链操作,得到第一事件信息,包括:将第一处理结果广播至第一区块链网络中的区块链节点;通过区块链节点,并基于第一处理结果进行共识操作,将包括有第一处理结果的新区块添加至所述第一区块链网络;通过第一区块链网络中的第一事件节点,并根据新区块中存储的区块信息,得到第一事件信息。
其中,第一区块链网络中可包括第一事件节点。事件节点又可称作事件中心。事件中心指的是当区块链网络有新区块产生时,依据新区块中的内容生成事件信息的节点。在本申请中,第一区块链网络中的事件中心即称作第一事件节点,第一事件节点所生成的事件信息即可称作第一事件信息。共识操作指的是通过共识机制进行区块链共识的过程。在区块链世界中,由于其去中心化的区块链设计,节点是各处分散且平行的,因此可基于共识机制,来维护区块链网络的运作顺序与公平性,统一区块链网络的版本,并奖励提供资源维护区块链的使用者,以及惩罚恶意的危害者。在其中一个实施例中,可通过共识算法来实现共识机制,比如,可通过工作量证明算法(Proof-of-Work,PoW)、权益证明算法(Proof ofStake,PoS)或者委托权益证明(Delegated Proof of Stake,DPoS)来实现共识机制。
具体地,当通过第一智能合约生成第一处理结果时,第一区块链网络可将第一处理结果广播至各区块链节点,以使各区块链节点并基于第一处理结果进行共识操作,以实现将包括有第一处理结果的新区块添加至第一区块链网络中,也即基于第一处理结果进行上链操作。当基于第一处理结果进行上链操作时,第一区块链网络中的第一事件节点即可获取新区块中存储的区块信息,并根据新区块中存储的区块信息生成第一事件信息。
在其中一个实施例中,当生成第一处理结果,并将第一处理结果进行广播时,第一链中的各区块链节点可将第一处理结果分别缓存至新区块中,各区块链节点进行工作量证明的计算来决定哪个区块链节点可来对第一处理结果进行验证。最先完成工作量证明的区块链节点可取得验证权,取得验证权的区块链节点可将自身的新区块进行广播,以使其余区块链节点在验证该新区块后,将该新区块拼接至区块链中。一旦区块链节点将新区块拼接至区块链时,先前未完成工作量证明的区块则会失效,各区块链节点会重新建立一个新区块,继续下一回的工作量证明的计算工作。
在其中一个实施例中,当将新区块拼接至区块链时,第一事件节点将新区块中存储的区块信息作为第一事件信息。
上述实施例中,通过对上链操作进行实时检测,可及时基检测信息生成第一事件信息,使得后续可基于及时生成第一事件信息及时生成第一跨链信息,如此,便提升了第一跨链信息的时效性。
步骤S404,通过运行于可信执行环境中的、且与第一链对应的第一跨链证明转换组件,对第一事件信息进行第一验证,得到第一认证信息,并根据第一事件信息和第一认证信息,生成第一跨链信息。
其中,第一链除包括有第一区块链网络、第一网关之外,还包括有第一跨链证明转换组件。跨链证明转换包括了资源转移认证与证明转换功能,可以对区块链上产生的资源转移进行认证,同时对资源转移的内容进行转换,输出带认证结果的通用跨链信息。在本申请中,第一链中的跨链证明转换组件可称作第一跨链证明转换组件。
具体地,当获取得到第一事件信息时,第一链可通过运行于可信执行环境中的第一跨链证明转换组件来对第一事件信息进行第一验证,得到第一认证信息。其中,第一认证信息可为携带有第一跨链证明转换组件签名的信息。其中,第一验证包括上链验证和执行验证。通过第一验证中的上链验证,可确定是否已将第一处理结果进行上链,通过第一验证中的执行验证,可确定是否已正确通过第一智能合约对数据处理请求进行第一处理。
在一个实施例中,本申请实施例以TEE(Trusted Execution Environment,受硬件芯片保护的可信执行环境)为硬件基础,将区块资源转移验证逻辑与资源转移内容转换逻辑运行于TEE中,构成跨链证明转换组件,对链上发生的资源转移进行认证与转换,输出带认证结果的通用跨链信息,该跨链信息可被其他TEE中的证明转换组件验证。其中,TEE:受硬件芯片保护的可信执行环境称之为TEE(Trusted Execution Environment)。TEE具有固有的签注密钥用于保护数据隐私和认证数据完整性、来源可靠性等;与外部有内存访问控制和内存加密机制,即外部包括操作系统也没有可信计算域内内存空间的访问权限;TEE具有远程认证机制,用于向远端证明一个可信计算环境内运行的逻辑等没有受到篡改。使用可信计算达到的效果是,可信计算域内的数据、程序逻辑在没有主动输出的情况下无法被外部环境窥探。
在一个实施例中,第一网关实时对第一事件节点进行监听,当监听得到第一事件节点生成第一事件信息时,第一网关可将第一事件信息传输至第一跨链证明转换组件,以使第一跨链证明转换组件对第一事件信息进行第一验证。
在一个实施例中,通过第一跨链证明转换组件,并根据第一事件信息和第一认证信息,生成第一跨链信息。
其中,跨链是指在两个或多个不同区块链网络之间进行数据传递、转移、交换等。跨链信息又称跨链消息,是指用以实现数据在两个或多个不同区块链网络之间进行传递、转移、交换的信息。在一个具体实施例中,跨链信息可包括数据处理标识、目标区块链网络信息、资源转移信息(又称交易信息)、资源转移证明(又称交易证明)、资源转移时间(又称交易时间)等。其中,数据处理标识指的是唯一标识整个数据处理过程的标识,比如,当数据处理过程具体为资源转移过程时,该数据处理标识即可为跨链资源转移标识(又称跨链交易的唯一ID),从而通过跨链资源转移标识唯一标识一个完整的资源转移过程。目标区块链信息指的是需要访问的目标区块链,在本申请中,目标区块链信息指的是第二链的第二区块链网络信息。资源转移信息具体可包括第一区块链网络需调用的第一智能合约的合约信息、以及第二区块链网络需要调用的第二智能合约的合约信息等。
具体地,第一跨链证明转换组件可根据对第一事件信息进行第一验证所得到的验证结果进行签名,得到第一认证信息,并根据第一事件信息和第一认证信息,生成第一跨链信息。其中,第一验证的验证结果可包括已将第一处理结果进行上链,和/或,已正确通过第一智能合约对数据处理请求进行第一处理;第一验证的验证结果还可包括未将第一处理结果进行上链,和/或,未正确通过第一智能合约对数据处理请求进行第一处理。相应的,第一认证信息可以为对“已将第一处理结果进行上链,和/或,已正确通过第一智能合约对数据处理请求进行第一处理”进行签名后的信息,或者可以为对“未成功将第一处理结果进行上链,和/或,未正确通过第一智能合约对数据处理请求进行第一处理”进行签名后的信息。
在一个实施例中,第一跨链证明转换组件也可在第一验证通过时,生成第一认证信息;在第一验证失败时,暂停生成第一认证信息。比如,第一跨链证明转换组件可在基于第一验证的验证结果确定“已将第一处理结果进行上链,和/或,已正确通过第一智能合约对数据处理请求进行第一处理”时,生成表征“已正确对数据处理请求进行第一处理”的第一认证信息。
在一个实施例中,第一跨链证明转换组件可根据第一事件信息中的数据读写集和第一认证信息生成第一跨链信息。其中,数据读写集中的读集是指在智能合约中执行一个资源转移逻辑时需要从状态数据库中读取的数据,写集是指执行完这个智能合约之后需要向状态数据库里写入的数据。状态数据库记录了链上所有数据的当前状态,比如,状态数据库记录了用户A的账户中剩余的资源量为20。
步骤S406,将第一跨链信息传输至运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件;第一跨链信息用于指示第二跨链证明转换组件对第一跨链信息进行第二验证,并在第二验证通过时,通过第二链的第二区块链网络根据第一跨链信息对数据处理请求进行第二处理。
具体地,当生成第一跨链信息时,第一链可将第一跨链信息发送至第二链,以使第二链的第二跨链证明转换组件对第一跨链信息中的第一认证信息进行第二验证,以确定第一跨链信息是否为一个可信赖的信息,以及确定第一链是否已正确地对数据处理请求进行第一处理。其中,处于第二链中的跨链证明转换组件称作第二跨链证明转换组件。进一步地,当第二验证的验证结果表征第二验证通过时,也即,当第二验证结果表征第一跨链信息为一个可信赖的信息、且确定第一链已正确地对数据处理请求进行第一处理时,第二链根据接收到的第一跨链信息进行对数据处理请求进行第二处理,得到第二处理结果。
比如,以第一链的用户A向第二链的用户B转移10个资源为例进行说明,当用户A期望向用户B进行资源转移时,用户A可通过第一链的第一网关发起数据处理请求,以使第一链调用第一区块链网络中的第一智能合约执行从用户A的账户中扣除10个资源的逻辑,得到第一处理结果。第一链可基于第一处理结果执行上链操作,从而第一事件节点可生成第一事件信息,并将第一事件信息传输至第一跨链证明转换组件。第一跨链证明转换组件可对第一事件信息进行第一验证,并根据第一验证的验证结果生成第一跨链消息,将第一跨链消息通过第一网关传输至第二链的第二网关。第二网关接收第一跨链消息,将第一跨链消息传输至第二跨链证明转换组件,以使第二跨链证明转换组件对第一跨链消息进行第二验证,并在第二验证通过后,通过第二链中的第二智能合约执行从用户B的账户中增加10个资源的逻辑,得到第二处理结果,基于第二处理结果执行上链操作。如此,便实现了用户A向第二链的用户B转移10个资源。
上述跨链信息生成方法中,通过响应于数据处理请求,可对数据处理请求进行第一处理,得到第一处理结果,并基于第一处理结果进行上链操作,得到第一事件信息。通过生成第一事件信息,可通过运行于可信环境中的第一跨链证明转换组件对第一事件信息进行第一验证,从而通过第一验证提升第一事件信息的可信赖性。通过对第一事件信息进行第一验证,可生成包括有第一认证信息的第一跨链信息。由于第一跨链信息中包括有通过运行于可信执行环境中的第一跨链证明转换组件生成的第一认证信息,因此,可使得第一跨链信息真实可信。通过生成真实可信的第一跨链信息,可将第一跨链信息传输至第二链的第二跨链证明转换组件,从而第二跨链证明转换组件便可通过第一认证信息对第一跨链信息的真实可信性进行进一步验证,并在进一步验证通过后,对数据处理请求进行第二处理。由于是在验证通过之后,才对数据处理请求进行第二处理,因此提升了第二处理的安全性。相比于传统的通过中心化的第三方机构来保证跨链信息的可信性,由于本申请的每个链均对应于一个运行于可信执行环境中的跨链证明转换组件,因此,每个链均可通过各自对应的跨链证明转换组件生成相应的跨链信息,或者对相应的跨链信息进行验证,从而使得本申请不具有中心化风险。
此外,当需要新增链时,新加入的链只需根据本链的特性增加跨链证明转换组件即可,而无需进行复杂的配置过程,从而大大降低了加入新链的门槛,进而提升了跨链信息生成的通用性。由于本申请只需在跨链证明转换组件中编写对应的验证方案,即可基于相应验证方案对跨链信息的真实性进行验证,如此,便提升了对跨链信息验证的通用性。
在一个实施例中,通过运行于可信执行环境中的、且与第一链对应的第一跨链证明转换组件,对第一事件信息进行第一验证,得到第一认证信息,包括:通过第一链的第一跨链证明转换组件,对第一事件信息进行解析,得到数据读写集和消息签名;通过第一跨链证明转换组件,确定与第一区块链网络对应的网络公钥,并根据网络公钥,对消息签名进行验证;通过第一跨链证明转换组件,根据数据读写集中的合约信息、参数信息以及账户信息中的至少一种,对数据读写集进行验证;综合对消息签名进行验证后得到的消息签名验证结果、和对数据读写集进行验证后得到的数据读写集验证结果,得到第一验证的验证结果;通过第一验证的验证结果得到相应的第一认证信息。
具体地,当第一跨链证明转换组件获取得到第一事件信息时,第一跨链证明转换组件可对第一事件信息进行解析,得到第一事件信息所包括的数据读写集和消息签名。其中,消息签名指的是区块头中包括的消息签名。比如,该消息签名具体可以为背书节点生成的签名(可称作背书签名)以及共识节点生成的签名(可称作共识签名)。
当获取得到第一事件信息中的消息签名时,第一跨链证明转换组件可确定与第一区块链网络相对应的网络公钥,并通过网络公钥对消息签名进行验证,得到消息签名验证结果。其中,网络公钥具体可以为与背书节点相对应的公钥(可称作背书公钥)、和与共识节点相对应的公钥(可称作共识公钥)。当获取得到第一事件信息中的数据读写集时,第一跨链证明转换组件可根据数据读写集中的合约信息、参数信息以及账户信息中的至少一种,对该数据读写集进行验证,得到数据读写集验证结果。进一步地,第一跨链证明转换组件将消息签名验证结果和数据读写集验证结果共同作为第一验证的验证结果,并根据第一验证的验证结果生成第一认证信息。
在其中一个实施例中,合约信息具体可以为智能合约的合约名,参数信息具体可以为智能合约的合约参数,账户信息可以为与链相对应的用户的账户信息。以在第一链上扣除A账户10个资源为例,在数据读写集中有本次资源转移涉及的账户信息(账户A)、合约信息(合约名pay)、以及合约入参(扣除10个资源),第一跨链证明转换组件通过这些信息可以判断第一链是否已正确执行了扣除A账户10个资源的逻辑。
在其中一个实施例中,第一区块链网络中的背书节点可通过自身的私钥(可称作背书私钥)来生成背书签名。第一区块链网络中的共识节点可通过自身的私钥(可称作共识私钥)来生成共识签名。其中,在区块链网络中承担背书任务的区块链节点即是背书节点。背书节点必须通过有效证书的预期信息的有效签名来证明其合法性。共识节点指的是除了需要完成一个普通时间节点的工作之外,还需要达成共识以实现账本的更新的节点。
上述实施例中,通过对消息签名进行验证,可基于消息签名验证结果确定是否已基于第一处理结果进行上链操作;通过对数据读写集进行验证,可基于数据读写集验证结果确定是否已通过第一智能合约正确执行数据处理的逻辑。通过验证是否已基于第一处理结果进行上链操作、及验证是否已通过第一智能合约正确执行数据处理的逻辑,可生成表征是否已正确进行第一处理的第一认证信息,使得后续第二链可基于第一认证信息确定是否需要进行第二处理。
在一个实施例中,第一区块链网络包括背书节点和共识节点,消息签名包括与背书节点对应的背书签名和与共识节点对应的共识签名,网络公钥包括与背书节点相对应的背书公钥、和与共识节点相对应的共识公钥;根据网络公钥,对消息签名进行验证,包括:通过背书公钥,对与背书节点对应的背书签名进行验证;通过共识公钥,对与共识节点对应的共识签名进行验证。
具体地,第一跨链证明转换组件中预先存储有第一区块链网络中的背书节点的背书公钥和共识节点的共识公钥,通过背书公钥可对消息签名中的背书签名进行验证,通过共识公钥可对消息签名中的共识公钥进行验证。通过对背书签名和共识签名进行验证,可确定是否已基于第一处理结果执行上链操作。
本实施例中,通过对背书签名和共识签名均进行验证,可提升第一验证的全面性,从而基于全面验证进一步提升第一认证信息的真实可信性。
在一个实施例中,通过第一验证的验证结果得到相应的第一认证信息,包括:当获取得到第一验证的验证结果时,确定与第一链的第一跨链证明转换组件相对应的第一组件私钥;通过第一组件私钥,并基于第一验证的验证结果进行签名处理,得到相应的第一认证信息。
具体地,当获取得到第一验证的验证结果时,第一跨链证明组件可确定本地存储的与自身相关联的第一组件私钥,并通过第一组件私钥,对第一验证的验证结果进行签名处理,得到第一认证信息。
在其中一个实施例中,第一跨链证明转换组件可通过第一组件私钥对第一验证的验证结果进行签名,得到第一认证信息,也即,第一跨链证明转换组件可通过第一组件私钥对第一验证的验证结果进行加密,得到加密后的验证结果,并将加密后的验证结果作为第一认证信息。比如,以在第一链上扣除A账户10个资源为例,第一认证信息具体可以为加密后的“已成功扣除A账户中的10个资源”或“未成功扣除A账户中的10个资源”。
在其中一个实施例中,在部署第一跨链证明转换组件时,可生成一对与该第一跨链证明转换组件相对应的公私钥,并将私钥(又称第一组件私钥)进行存储,将公钥(又称第一组件公钥)发送至第二链的第二跨链证明转换组件,以使第二跨链证明转换组件通过第一组件公钥对第一跨链消息进行第二验证。
上述实施例中,由于是通过运行于可信执行环境中的第一跨链证明转换组件来生成第一认证信息,使得所生成的第一认证信息真实可信。
在其中一个实施例中,将第一跨链信息传输至第二链之后,上述跨链信息生成方法还包括:接收第二链的第二区块链网络传输的第二跨链信息;第二跨链信息为对数据处理请求进行第二处理后得到的信息;获取与数据处理相对应的数据处理标识,并基于数据处理标识进行上链操作。
具体地,当第二链对数据处理请求进行第二处理,得到第二处理结果后,第二链可基于第二处理结果执行上链操作,得到第二事件信息。第二链的第二跨链证明转换组件可按照上述对第一事件信息进行验证的方式对第二事件信息进行第三验证,得到第二认证信息,并基于第二认证信息生成第二跨链信息。第二链将第二跨链信息传输至第一链,从而第一链可对第二跨链信息中的第二认证信息进行第四验证,并在验证通过后,确定第二链已成功对数据处理请求进行第二处理。当第一跨链证明转换组件确定第二链已成功对数据处理请求进行第二处理时,第一跨链证明转换组件输出携带有第三认证信息的数据处理完成信息,并将数据处理完成信息发送给第一网关,第一网关调用第一智能合约将数据处理标识写到区块链中。其中,当数据处理请求具体为跨链资源转移请求时,该数据处理标识具体可为跨链资源转移标识。其中,第一链可按照第二链对第一跨链信息进行验证的方式,对第二跨链信息进行验证,以及可按照对第一处理结果进行上链的方式,对数据处理标识进行上链。
在其中一个实施例中,当第二链的第二跨链证明转换组件接收到第一跨链信息时,第二跨链证明转换组件可根据第一跨链证明转换组件的第一组件公钥对第一跨链信息中的第一认证信息进行验证,也即通过第一组件公钥对第一认证信息进行解密处理。当通过第一组件公钥成功对第一认证信息进行解密时,第二链可确定第二验证通过,从而通过第一认证信息对数据处理请求进行第二处理。比如,当第一认证信息表征已成功从用户A账户中扣除10个资源时,第二链可执行在用户B账户中增加10个资源的逻辑;当第一认证信表征未成功从用户A账户中扣除10个资源时,第二链不在用户B账户中增加10个资源。
在其中一个实施例中,可为第二跨链证明转换组件配置一对公私钥,其中,将私钥(又称第二组件私钥)存储于本地,将公钥(又称第二组件公钥)发送至第一跨链证明转换组件,从而当第一跨链证明转换组件接收到第二跨链信息时,第一跨链证明转换组件可通过第二组件公钥对第二认证信息进行解码处理。当通过第二组件公钥成功对第二认证信息进行解码时,第二链可确定第四验证通过,从而第一链可对第二跨链信息进行解析得到第二处理结果,并基于第二处理结果进行上链操作。比如,当第二认证信息表征已成功从用户B账户中增加10个资源时,第一链即可将表征“A向用户B转移10资源这一资源转移任务已执行完毕”的信息进行上链。
上述实施例中,由于是在对第二跨链信息进行验证之后,才执行上链操作,可提升上链操作的安全性。
在一个实施例中,如图5所示,提供了一种跨链信息验证方法,以该方法应用于图1中的第二链为例进行说明,包括以下步骤:
步骤S502,接收第一跨链信息;第一跨链信息是通过运行于可信执行环境中的、且与第一链对应的第一跨链证明转换组件,对第一链的第一区块链网络响应数据处理请求的响应过程进行第一验证和认证生成。
具体地,当第一链生成第一跨链信息时,第一链的第一网关可将该第一跨链信息传输至第二链的第二网关,从而第二网关可将该第一跨链信息发送至第二链的第二跨链证明转换组件。
步骤S504,通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,对第一跨链信息进行第二验证。
具体地,当第二跨链证明转换组件获取得到第一跨链信息时,第二跨链证明转换组件可提取第一跨链信息中的第一认证信息,并通过第一跨链证明转换组件的第一组件公钥对第一认证信息进行第二验证,得到第二验证的验证结果。
在一个实施例中,由于第一认证信息是基于第一跨链证明转换组件的第一组件私钥生成得到的,因此,第二跨链证明转换组件可通过与第一组件私钥相配套的第一组件公钥,对第一认证信息进行解密处理,得到解密结果,并将该解密结果作为第二验证的验证结果。
步骤S506,若第二验证通过,则在第二链的第二区块链网络中对数据处理请求进行第二处理,得到第二处理结果,并基于第二处理结果进行上链操作。
具体地,若第二验证通过时,也即若通过第一组件公钥对第一认证信息进行解密成功时,第二链可对第一跨链消息进行解析,得到第二链需要调用的第二智能合约,以及第二智能合约的合约参数,并将该合约参数输入至第二智能合约中,以实现对数据处理请求进行第二处理,得到第二处理结果。容易理解地,本申请将第二链中的智能合约称作第二智能合约。
进一步地,当获取得到第二处理结果时,第二链可基于第二处理结果执行上链操作,将包括有第二处理结果的新区块拼接至区块链中。其中,第二链可按照第一链对第一处理结果进行上链的方式,对第二处理结果进行上链操作。
步骤S508,通过第二跨链证明转换组件,对基于第二处理结果的上链操作得到的第二事件信息进行第三验证,得到第二认证信息。
具体地,当得到第二处理结果时,第二链可将第二处理结果添加至新区块中,并将新区块连接至第二链的区块链中,以实现基于第二处理结果进行上链操作。当第二链的第二事件节点监听到有新区块产生时,第二事件节点可获取新区块的区块内容,并根据新区块的区块内容生成第二事件信息。在本申请中,第二链中的事件中心即称作第二事件节点。进一步地,第二链的第二网关获取第二事件信息,并将第二事件信息发送至第二跨链证明转换组件,以使第二跨链证明转换组件对第二事件信息进行第三验证,得到第二认证信息。其中,第三验证包括消息签名验证和数据读写集验证。第二跨链证明转换组件可通过第三验证中的消息签名验证,确定是否已针对第二处理结果执行上链操作;以及可通过数据读写集验证,确定是否已正确通过第二智能合约对数据处理请求进行第二处理。其中,通过第二跨链证明转换组件对第二事件信息进行第三验证的具体过程,可参考上述通过第一跨链证明转换组件对第一事件信息进行第一验证的具体过程。本申请实施例在此不再赘述。
在一个实施例中,第二跨链证明转换组件可通过第二组件私钥,对第三验证的验证结果进行签名,得到第二认证信息。比如,当第一链的用户A向第二链的用户B转移10个资源时,第二认证信息即可为“用户B的账户已增加10个资源”或者“用户B的账户未成功增加10个资源”等。
在一个实施例中,第二跨链证明转换组件可在第三验证通过时生成第二认证信息;在第三验证失败时,暂停生成第二认证信息。
步骤S510,根据第二事件信息和第二认证信息生成第二跨链信息。
具体地,第二跨链证明转换组件可根据第二事件信息和第二认证信息生成第二跨链信息。比如,第二跨链证明转换组件可根据第二事件信息中的数据读写集和携带有第二组件私钥签名的第二认证信息,生成第二跨链信息。
步骤S512,将第二跨链信息返回至第一链的第一跨链证明转换组件;其中,第二跨链信息用于指示第一跨链证明转换组件对第二跨链信息进行第四验证,在第四验证通过时,通过第一区块链网络基于第二跨链信息进行上链操作。
具体地,当生成第二跨链信息时,第二链的第二网关将该第二跨链信息发送至第一链的第一网关,以使第一网关将第二跨链信息传输至第一跨链证明转换组件。第一跨链证明转换组件提取第二跨链信息中的第二认证信息,并通过第二组件公钥对第二认证信息进行第四验证。当第二组件公钥成功解密第二认证信息时,可认为第四验证通过,此时第二链已正确对数据处理请求进行第二处理,从而,此时第一链可认为数据处理请求已执行完毕,并基于第二跨链信息进行上链操作。
比如,以第一链的用户A向第二链的用户B转移10个资源为例进行说明,当用户A期望向用户B进行资源转移时,用户A可通过第一链的第一网关发起数据处理请求,以使第一链执行从用户A的账户中扣除10个资源的逻辑,并生成包括有第一认证信息的第一跨链信息。当第二链接收到第一跨链信息,并基于第一认证信息确定第一链已从用户A的账户中扣除10个资源时,第二链即可执行从用户B的账户中增加10个资源的逻辑,并生成包括有第二认证信息的第二跨链信息,将第二跨链信息发送至第一链。第一链可基于第二跨链信息中的第二认证信息确定第二链是否已成功从用户B的账户中增加10个资源,当确定第二链是否已成功从用户B的账户中增加10个资源时,即可认为“用户A向第二链的用户B转移10个资源”这一跨链资源转移任务已执行完毕,此时,第一链从第二跨链信息中提取出用以唯一标识整个资源转移过程的资源转移标识,并将该资源转移标识添加至新区块,将该新区块添加至区块链中。当第一网关监听到添加有资源转移标识的新区块已成功上链时,第一网关可向用户A发送资源转移成功信息,以使用户A根据该信息确定资源已转移成功。
本实施例中,通过接收第一跨链信息,可基于运行于可信执行环境中的第二跨链证明转换组件对第一跨链信息进行第二验证,以确定第一链是否已正确对数据处理请求进行第一处理。通过在确定第一链已正确对数据处理请求进行第一处理后,再对数据处理请求进行第二处理,可提升第二处理的安全性。通过将第二处理的处理结果进行上链,可得到第二事件信息,并基于第二跨链证明转换组件对该第二事件信息进行第三验证,可得到包括有第二认证信息的第二跨链信息。由于第二跨链证明转换组件运行于可信执行环境中,因此使得通过第二跨链证明转换组件生成的第二跨链信息真实可信。通过生成真实可信的第二跨链信息,可将第二跨链信息传输至第一链的第一跨链证明转换组件,从使得第一跨链证明转换组件可通过第二认证信息对第二跨链信息进行进一步验证,以确定第二链是否已成功对数据处理请求进行第二处理。通过判断第二链是否已成功对数据处理请求进行第二处理,可在确定已成功进行第二处理后,再基于第二跨链信息进行上链操作,如此,便提升了上链操作的安全性。由于本申请的每个链分别对应于一个运行于可信执行环境中的跨链证明转换组件,因此,每个链均可通过各自对应的跨链证明转换组件生成相应跨链信息,或者对相应的跨链信息进行验证,从而使得本申请不具有中心化风险。
此外,当需要新增链时,新加入的链只需根据本链的特性增加跨链证明转换组件即可,而无需进行复杂的配置过程,从而大大降低了加入新链的门槛,进而提升了跨链信息生成的通用性。由于本申请只需在跨链证明转换组件中编写对应的验证方案,即可基于相应验证方案对跨链信息的真实性进行验证,如此,便提升了对跨链信息验证的通用性。
在一个实施例中,通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,对第一跨链信息进行第二验证,包括:确定与第一链的第一跨链证明转换组件相对应的第一组件公钥;通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,根据第一组件公钥对第一跨链信息中的第一认证信息进行第二验证。
具体地,当获取得到第一跨链信息时,第二链的第二跨链证明转换组件可根据第一链的第一跨链证明转换组件的组件标识,确定与第一跨链证明转换组件相对应的第一组件公钥,并通过第一组件公钥对第一跨链信息中的第一认证信息进行第二验证。比如,通过第一组件公钥对第一认证信息进行解码,得到第二验证的验证结果。
本实施例中,由于第一组件公钥和第一组件私钥为一对相配对的公私钥,且第一认证信息是通过第一组件私钥生成的信息,因此,第二跨链证明转换组件只需通过第一组件公钥对第一跨链信息进行验证,即可确认第一跨链信息的真实可信性,从而提升了确认第一跨链信息真实可信的效率。
在一个实施例中,若第二验证通过,则在第二链的第二区块链网络中对数据处理请求进行第二处理,得到第二处理结果,包括:当第二验证通过时,对第一跨链信息进行解析,得到第二智能合约和第二智能合约的合约参数;在第二链的第二区块链网络中,通过第二智能合约和合约参数,对数据处理请求进行第二处理,得到第二处理结果。
具体地,当第二验证通过时,也即当第一组件公钥成功解码第一认证信息时,第二链可对第一跨链信息进行解析,得到第二智能合约和第一处理结果,并根据第一处理结果确定第二智能合约的合约参数。进一步地,第二链的第二区块链网络将提取得到的合约参数输入至第二智能合约中,通过第二智能合约基于输入的合约参数对数据处理请求进行第二处理,得到第二处理结果。比如,第二智能合约的合约名可为:SAVE。第二智能合约的合约入参具体可以为:(账户B,+10),其中,“账户B”为用户B的账户名称,“+10”代表往用户B的账户中增加10资源。从而第二区块链网络可以将(账户B,+10)输入至合约名为SAVE的第二智能合约中,通过第二智能合约执行往用户B的账户中增加10个资源的逻辑,并输出该逻辑的执行结果,将该逻辑的执行结果作为第二处理结果。
本实施例中,由于第二智能合约是通过在满足一定条件时而执行的代码实现的,因此,可减少在不满足条件的情况下,依旧执行相应代码,得到第二处理结果的情况,如此,便提升了通过第二智能合约得到第二处理结果的准确性。
在一个实施例中,当第二验证通过时,对第一跨链信息进行解析,得到第二智能合约和第二智能合约的合约参数之后,上述方法还包括:通过第二跨链证明转换组件,并根据与第二跨链证明转换组件对应的第二组件私钥,对第二智能合约的合约参数进行签名,得到输入参数;在第二链的第二区块链网络中,通过第二智能合约和合约参数,对数据处理请求进行第二处理,得到第二处理结果,包括:通过第二区块链网络中的第二智能合约,并根据与第二跨链证明转换组件相对应的第二组件公钥,对输入参数进行第五验证;当第五验证通过时,通过第二智能合约和输入参数,对数据处理请求进行第二处理,得到第二处理结果。
具体地,当第二跨链证明转换组件对第一跨链信息进行第二验证,并在第二验证通过后,得到第二智能合约的合约参数时,第二跨链证明转换组件可通过第二组件私钥对合约参数进行签名,得到输入参数。比如,第二跨链证明转换组件可通过第二组件私钥对合约参数进行加密处理,得到加密后的合约参数,并将加密后的合约参数作为输入参数。进一步地,第二跨链证明转换组件将输入参数发送至第二网关,以使第二网关调用第二智能合约,通过第二智能合约对输入参数进行第五验证。比如,第二智能合约可通过第二组件公钥对输入参数进行解密处理,得到解密后的输入参数。当确定第五验证通过时,也即当确定第二组件公钥对输入参数解密成功时,第二链将解密后的输入参数输入至第二智能合约,以通过第二智能合约对数据处理请求进行第二处理,得到第二处理结果。
本实施例中,通过在对合约参数进行签名后再传递至第二网关,可减少合约参数在传递过程中被恶意篡改的概率。通过在第二智能合约处对合约参数进行验证后,再基于该合约参数进行第二处理,可减少该合约参数已被篡改,却依旧基于该合约参数进行第二处理的情况,从而提升了第二处理的安全性。
在一个实施例中,对基于第二处理结果的上链操作所得到的第二事件信息进行第三验证,得到第二认证信息,包括:对基于第二处理结果的上链操作所得到的第二事件信息进行第三验证,得到第三验证的验证结果;确定与第二链的第二跨链证明转换组件相对应的第二组件私钥;通过第二组件私钥对第三验证的验证结果进行签名,得到相应的第二认证信息。
具体地,当第二跨链证明转换组件对第二事件信息进行第三验证,得到第三验证的验证结果时,第二跨链证明转换组件获取第二组件私钥,并通过第二组件私钥对第三验证的验证结果进行签名,得到第二认证信息。在其中一个实施例中,第二跨链证明转换组件可在第三验证通过时,再生成第二认证信息。
上述实施例中,通过第二组件私钥生成第二认证信息,可使得基于第二认证信息生成的第二跨链信息真实可信。
在一个实施例中,将第二跨链信息返回至第一链的第一跨链证明转换组件之后,上述方法还包括:确定与第二跨链证明转换组件对应的第二组件公钥,并通过第二组件公钥对第二跨链信息中的第二认证信息进行第四验证;当第四验证通过时,获取与数据处理相对应的数据处理标识,并基于数据处理标识执行上链操作。
具体地,当第一跨链证明转换组件接收到第二链发送的第二跨链信息时,为了确定该第二跨链信息的真实性,第一跨链证明转换组件可通过第二组件公钥对第二跨链信息中的第二认证信息进行第四验证,也即,可通过第二组件公钥对第二认证信息进行解密处理。当通过第二组件公钥成功解密第二认证信息时,可认为第四验证通过,此时,第一跨链证明转换组件输出携带有第三认证信息的数据处理完成信息,并将数据处理完成信息发送给第一网关,第一网关调用第一智能合约将数据处理标识写到区块链中。
本实施例中,由于是在第四验证通过后,再基于数据处理标识执行上链操作,可提升上链操作的安全性。
在一个实施例中,如图6所示,提供了一种跨链信息验证系统,跨链信息验证系统包括与第一链对应的第一区块链网络和运行于可信执行环境中的第一跨链证明转换组件,以及与第二链对应的第二区块链网络和运行于可信执行环境中的第二跨链证明转换组件,其中:第一区块链网络,用于响应于数据处理请求进行第一处理,得到第一处理结果,并基于第一处理结果进行上链操作,得到第一事件信息;第一跨链证明转换组件,用于对第一事件信息进行第一验证,得到第一认证信息,并根据第一事件信息和第一认证信息生成第一跨链信息,将第一跨链信息传输至第二跨链证明转换组件;第二跨链证明转换组件,用于对第一跨链信息中的第一认证信息进行第二验证,并在第二验证通过时,对第一跨链信息进行解析,得到第二智能合约的合约参数;第二区块链网络,用于根据第二智能合约的合约参数对数据处理请求进行第二处理,得到第二处理结果;第二区块链网络,用于基于第二处理结果进行上链操作,并根据第二处理结果的上链操作生成第二事件信息;第二跨链证明转换组件,用于对第二事件信息进行第三验证,得到包括有第二认证信息的第二跨链信息;第一跨链证明转换组件,用于对第二跨链信息中的第二认证信息进行第四验证,并在第四验证通过时,触发第一区块链网络基于第二跨链信息进行上链操作。
具体地,参考图6,跨链信息验证系统可包括有第一链和第二链,其中,第一链包括有第一区块链网络601和运行于可信执行环境中的第一跨链证明转换组件602,第二链包括有第二区块链网络603和运行于可信执行环境中的第二跨链证明转换组件604。第一区块链网络601可响应于数据处理请求,生成第一事件信息。第一跨链证明转换组件可对第一事件信息进行第一验证,得到第一认证信息,并通过第一认证信息生成第一跨链信息。第二跨链证明转换组件可通过第一认证信息确定第一跨链信息的真实可信性,以及确定第一链是否已针对数据处理请求正确执行第一处理,从而在确定第一跨链信息真实可信、且第一链已正确执行第一处理时,触发第二区块链网络对该数据处理请求执行第二处理,得到第二处理结果,并基于该第二处理结果进行上链操作,得到第二事件信息。第二跨链证明转换组件对第二事件信息进行第三验证,并基于第三验证的验证结果生成第二跨链信息,将第二跨链信息发送至第一跨链证明转换组件,以使第一跨链证明转换组件基于第二认证信息,确定第二跨链信息的真实可信性,以及确定第二链是否已针对数据处理请求正确执行第二处理。当第一跨链证明转换组件确定第二跨链信息的真实可信,以及确定第二链已针对数据处理请求正确执行第二处理时,第一链可确定数据处理请求已执行完毕,并基于第二跨链信息,将用以表征数据处理请求已执行完毕的标识添加至区块链中。
上述跨链信息验证系统,通过获取数据处理请求,可通过第一区块链网络对数据处理请求进行第一处理,得到第一处理结果,并将第一处理结果进行上链操作,得到第一事件信息。通过得到第一事件信息,可通过运行于可信执行环境中的第一跨链证明转换组件对该第一事件信息进行第一验证,得到可信赖的第一认证信息,并基于第一认证信息生成真实可信的第一跨链信息。通过生成第一跨链信息,可通过第二跨链证明转换组件验证第一跨链信息的真实性,从而在确定第一跨链信息真实可信时,才基于第一跨链信息进行第二处理,如此,便提升了第二处理的安全性。通过进行第二处理,可得到第二事件信息,通过得到第二事件信息,可基于运行于可信执行环境中的第二跨链证明转换组件对该第二事件信息进行第三验证,得到可信赖的第二认证信息,并基于第二认证信息生成真实可信的第二跨链信息。通过生成第二跨链信息,可通过第一跨链证明转换组件验证第二跨链信息的真实性,从而在确定第二跨链信息真实可信时,才基于第二跨链信息进行上链操作,如此,便提升了上链操作的安全性。由于本申请的每个链均对应于一个运行于可信执行环境中的跨链证明转换组件,因此,每个链均可通过各自对应的跨链证明转换组件生成相应的跨链信息,从而使得本申请不具有中心化风险。
在其中一个实施例中,跨链信息验证系统包括与第一链对应的第一网关,以及与第二链对应的第二网关;第一网关,用于获取数据处理请求,并调用第一智能合约,通过第一智能合约对数据处理请求进行第一处理,得到第一处理结果;第一网关,还用于将第一跨链信息转发至第二网关;第二网关,用于将第一跨链信息发送至第二跨链证明转换组件;第二网关,还用于将第二跨链证明转换组件生成的第二跨链信息发送至第一网关,以使第一网关将第二跨链信息转发至第一跨链证明转换组件。
具体地,参考图6,跨链信息验证系统还包括与第一链相对应的第一网关605、以及与第二链相对应的第二网关606。第一网关和第二网关中均封装了相应区块链网络中的SDK(Software Development Kit,软件开发工具包),用于向相应区块链网络发起请求以及接收相应区块链网络上发出的事件信息。比如,当用户通过第一网关发起数据处理请求时,第一网关可通过预先部署的SDK调用第一智能合约,通过第一智能合约对数据处理请求进行第一处理,得到第一处理结果。进一步地,当第一跨链证明转换组件生成第一跨链信息时,第一网关可将该第一跨链信息发送至第二网关,以使第二网关将其转发至第二跨链证明转换组件。当第二跨链证明转换组件生成第二跨链信息时,第二网关还可将其发送至第一证明转换组件,以使第一证明转换组件对第二跨链信息进行验证。
本实施例中,通过在系统中设置第一网关和第二网关,可将第一网关和第二网关作为中介,对生成的信息进行内部传输和外部传输,如此,便能实现通过传输的信息进行跨链资源转移。此外,由于本申请是以跨链网关以及运行于TEE中的跨链证明转换组件来进行跨链消息的转发以及链间信任的传递,相比于通过中继链的共识进行消息同步,本申请还可降低部署成本的同时提高了消息传递的速度。
本申请还提供一种应用场景,该应用场景应用上述的跨链信息生成方法。具体地,该跨链信息生成方法在该应用场景的应用如下:
当用户A期望购买B物料时,用户A可通过第一链发起数据处理请求,从而第一链可对数据处理请求进行第一处理,以从用户A的账户中扣除购买B物料所需的资源量。第一链中的第一跨链证明转换组件可对上述第一处理过程进行验证,得到第一认证信息,并根据第一认证信息生成第一跨链信息,将第一跨链信息传输至第二链。第二链的第二跨链证明转换组件可对第一跨链信息进行验证,以确定第一链是否已从用户A的账户中扣除购买B物料所需的资源量,并在确定第一链已从用户A的账户中扣除购买B物料所需的资源量时,触发第二链对数据处理请求进行第二处理,以将B物料的库存进行修改,将B物料的总库存减去用户A购买的物料数量。
本申请还另外提供一种应用场景,该应用场景应用上述的跨链信息验证方法。具体地,该跨链信息验证方法在该应用场景的应用如下:
在游戏领域中,当用户A期望购买B虚拟道具时,用户A可通过第一链触发数据处理请求,并通过第一链对该数据处理请求进行第一处理,以从用户A的账户中扣除购买B虚拟道具所需的资源量。第一链中的第一跨链证明转换组件可对上述第一处理过程进行验证,得到第一认证信息,并根据第一认证信息生成第一跨链信息,将第一跨链信息传输至第二链。第二链的第二跨链证明转换组件可对第一跨链信息进行验证,以确定第一链是否已从用户A的账户中扣除购买B虚拟道具所需的资源量。当第二跨链证明转换组件确定第一链已从用户A的账户中扣除购买B虚拟道具所需的资源量时,第二跨链证明转换组件触发第二链对数据处理请求进行第二处理,以将B虚拟道具的总库存减去用户A购买的虚拟道具数量,得到第二处理结果,并基于该第二处理结果进行上链操作,得到第二事件信息。第二跨链证明转换组件基于该第二事件信息生成第二跨链信息,将第二跨链信息传输至第一链,从而第一链可在基于第二跨链信息确定已正确对数据处理请求进行第二处理后,在用户A的账户中增加用户A所购买的B虚拟道具的道具数量。
上述应用场景仅为示意性的说明,可以理解,本申请各实施例所提供的业务相关数据上报方法的应用不局限于上述场景。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
在一个具体实施例中,参考图7,上述跨链信息生成方法包括:
S702,若接收到数据处理请求,调用第一链的第一区块链网络中的第一智能合约,通过第一智能合约对数据处理请求进行第一处理,得到第一处理结果。
S704,通过第一区块链网络将第一处理结果广播至各区块链节点;通过区块链节点,并基于第一处理结果进行共识操作,将包括有第一处理结果的新区块添加至第一区块链网络。
S706,通过第一区块链网络中的第一事件节点,并根据新区块中存储的区块信息,得到第一事件信息。
S708,第一区块链网络包括背书节点和共识节点,消息签名包括与背书节点对应的背书签名和与共识节点对应的共识签名,网络公钥包括与背书节点相对应的背书公钥、和与共识节点相对应的共识公钥;通过第一跨链证明转换组件,并基于背书公钥,对与背书节点对应的背书签名进行验证;基于共识公钥,对与共识节点对应的共识签名进行验证。
S710,通过第一跨链证明转换组件,根据数据读写集中的合约信息、参数信息以及账户信息中的至少一种,对数据读写集进行验证;综合对消息签名进行验证后得到的消息签名验证结果、和对数据读写集进行验证后得到的数据读写集验证结果,得到第一验证的验证结果。
S712,当获取得到第一验证的验证结果时,确定与第一链的第一跨链证明转换组件相对应的第一组件私钥;通过第一跨链证明转换组件,并基于第一组件私钥对第一验证的验证结果进行签名处理,得到相应的第一认证信息。
S714,通过第一跨链证明转换组件根据第一事件信息和第一认证信息,生成第一跨链信息,将第一跨链信息发送至第二链的第二跨链证明组件。
S716,通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,对第一跨链信息进行第二验证;若第二验证通过,则在第二链的第二区块链网络中对数据处理请求进行第二处理,得到第二处理结果,并基于第二处理结果进行上链操作。
S718,通过第二跨链证明转换组件,对基于第二处理结果的上链操作所得到的第二事件信息进行第三验证,并根据第三验证的验结果生成第二认证信息;根据第二事件信息和第二认证信息生成第二跨链信息。
S720,通过第一链的第一跨链证明转换组件接收第二链的第二区块链网络传输的第二跨链信息,并在第二跨链信息验证后,通过第一区块链网络对第二跨链信息进行解析得到数据处理标识,并基于数据处理标识进行上链操作。
由于本申请的每个链均对应于一个运行于可信执行环境中的跨链证明转换组件,因此,每个链均可通过各自对应的跨链证明转换组件生成相应的跨链信息,或者对相应的跨链信息进行验证,从而使得本申请不具有中心化风险。此外,当需要新增链时,新加入的链只需根据本链的特性增加跨链证明转换组件即可,而无需进行复杂的配置过程,从而大大降低了加入新链的门槛,进而提升了跨链信息生成的通用性。由于本申请只需在跨链证明转换组件中编写对应的验证方案,即可基于相应验证方案对跨链信息的真实性进行验证,如此,便提升了对跨链信息验证的通用性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图8所示,提供了一种跨链信息生成装置800,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:数据处理模块802、信息生成模块804和跨链传输模块806,其中:
数据处理模块802,用于响应于数据处理请求,在第一链的第一区块链网络中进行第一处理,得到第一处理结果,并基于第一处理结果进行上链操作,得到第一事件信息。
信息生成模块804,用于通过运行于可信执行环境中的、且与第一链对应的第一跨链证明转换组件,对第一事件信息进行第一验证,得到第一认证信息,并根据第一事件信息和第一认证信息,生成第一跨链信息。
跨链传输模块806,用于将第一跨链信息传输至运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件;第一跨链信息用于指示第二跨链证明转换组件对第一跨链信息进行第二验证,并在第二验证通过时,通过第二链的第二区块链网络根据第一跨链信息对数据处理请求进行第二处理。
由于本装置的每个链均对应于一个运行于可信执行环境中的跨链证明转换组件,因此,每个链均可通过各自对应的跨链证明转换组件生成相应的跨链信息,或者对相应的跨链信息进行验证,从而使得本申请不具有中心化风险。
在一个实施例中,数据处理模块802还包括第一处理模块8021,用于若接收到数据处理请求,则调用第一链的第一区块链网络中的第一智能合约,通过第一智能合约对数据处理请求进行第一处理,得到第一处理结果。
在一个实施例中,数据处理模块802还用于将第一处理结果广播至第一区块链网络中的区块链节点;通过区块链节点,并基于第一处理结果进行共识操作,将包括有第一处理结果的新区块添加至第一区块链网络;通过第一区块链网络中的第一事件节点,并根据新区块中存储的区块信息,得到第一事件信息。
在一个实施例中,信息生成模块804还包括消息验证模块8041,用于通过第一链的第一跨链证明转换组件,对第一事件信息进行解析,得到数据读写集和消息签名;通过第一跨链证明转换组件,确定与第一区块链网络对应的网络公钥,并根据网络公钥,对消息签名进行验证;通过第一跨链证明转换组件,根据数据读写集中的合约信息、参数信息以及账户信息中的至少一种,对数据读写集进行验证;综合对消息签名进行验证后得到的消息签名验证结果、和对数据读写集进行验证后得到的数据读写集验证结果,得到第一验证的验证结果;通过所述第一验证的验证结果得到相应的第一认证信息。
在一个实施例中,第一区块链网络包括背书节点和共识节点,消息签名包括与背书节点对应的背书签名和与共识节点对应的共识签名,网络公钥包括与背书节点相对应的背书公钥、和与共识节点相对应的共识公钥;消息验证模块8041还用于通过背书公钥,对与背书节点对应的背书签名进行验证;通过共识公钥,对与共识节点对应的共识签名进行验证。
在一个实施例中,信息生成模块804还用于当获取得到第一验证的验证结果时,确定与第一链的第一跨链证明转换组件相对应的第一组件私钥;通过第一组件私钥,并基于第一验证的验证结果进行签名处理,得到相应的第一认证信息。
在一个实施例中,跨链信息生成装置800还包括信息跨链模块808,用于接收第二链的第二区块链网络传输的第二跨链信息;第二跨链信息为对数据处理请求进行第二处理后得到的信息;在第二跨链信息验证后,获取与数据处理相对应的数据处理标识,并基于数据处理标识进行上链操作。
在一个实施例中,如图9所示,提供了一种跨链信息验证装置900,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:接收模块902、上链模块904和信息返回模块906,其中:
接收模块902,用于接收第一跨链信息;通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,对第一跨链信息进行第二验证;第一跨链信息是通过运行于可信执行环境中的、且与第一链对应的第一跨链证明转换组件,对第一链的第一区块链网络响应数据处理请求的响应过程进行第一验证和认证生成。
上链模块904,用于若第二验证通过,则在第二链的第二区块链网络中对数据处理请求进行第二处理,得到第二处理结果,并基于第二处理结果进行上链操作。
信息返回模块906:通过第二跨链证明转换组件,对基于第二处理结果的上链操作所得到的第二事件信息进行第三验证,得到第二认证信息;根据第二事件信息和第二认证信息生成第二跨链信息;将第二跨链信息返回至第一链的第一跨链证明转换组件;其中,第二跨链信息用于指示第一跨链证明转换组件对第二跨链信息进行第四验证,并在第四验证通过时,通过第一区块链网络基于第二跨链信息进行上链操作。
由于本装置的每个链均对应于一个运行于可信执行环境中的跨链证明转换组件,因此,每个链均可通过各自对应的跨链证明转换组件生成相应的跨链信息,或者对相应的跨链信息进行验证,从而使得本申请不具有中心化风险。
在一个实施例中,接收模块902还用于确定与第一链的第一跨链证明转换组件相对应的第一组件公钥;通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,根据第一组件公钥对第一跨链信息中的第一认证信息进行第二验证。
在一个实施例中,上链模块904还包括第二验证模块9041,用于当第二验证通过时,对第一跨链信息进行解析,得到第二智能合约和第二智能合约的合约参数;在第二链的第二区块链网络中,通过第二智能合约和合约参数,对数据处理请求进行第二处理,得到第二处理结果。
在一个实施例中,第二验证模块9041还用于通过第二跨链证明转换组件,并根据与第二跨链证明转换组件对应的第二组件私钥,对第二智能合约的合约参数进行签名,得到输入参数;通过第二区块链网络中的第二智能合约,并根据与第二跨链证明转换组件相对应的第二组件公钥,对输入参数进行第五验证;当第五验证通过时,通过第二智能合约和输入参数,对数据处理请求进行第二处理,得到第二处理结果。
在一个实施例中,信息返回模块906还用于对基于第二处理结果的上链操作所得到的第二事件信息进行第三验证,得到第三验证的验证结果;确定与第二链的第二跨链证明转换组件相对应的第二组件私钥;通过第二组件私钥对第三验证的验证结果进行签名,得到相应的第二认证信息。
在一个实施例中,跨链信息验证装置900还用于确定与第二跨链证明转换组件对应的第二组件公钥,并通过第二组件公钥对第二跨链信息中的第二认证信息进行第四验证;当第四验证通过时,获取与数据处理相对应的数据处理标识,并基于数据处理标识执行上链操作。
关于跨链信息生成、跨链信息验证装置的具体限定可以参见上文中对于跨链信息生成、跨链信息验证方法的限定,在此不再赘述。上述跨链信息生成、跨链信息验证装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储跨链信息生成、跨链信息验证数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种跨链信息生成方法、跨链信息验证方法。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (20)
1.一种跨链信息生成方法,其特征在于,所述方法包括:
响应于数据处理请求,在第一链的第一区块链网络中进行第一处理,得到第一处理结果,并基于所述第一处理结果进行上链操作,得到第一事件信息;
通过运行于可信执行环境中的、且与所述第一链对应的第一跨链证明转换组件,对所述第一事件信息进行第一验证,得到第一认证信息,并根据所述第一事件信息和所述第一认证信息,生成第一跨链信息;
将所述第一跨链信息传输至运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件;所述第一跨链信息用于指示所述第二跨链证明转换组件对所述第一跨链信息进行第二验证,并在第二验证通过时,通过所述第二链的第二区块链网络根据所述第一跨链信息对所述数据处理请求进行第二处理。
2.根据权利要求1所述的方法,其特征在于,所述响应于数据处理请求,在第一链的第一区块链网络中进行第一处理,得到第一处理结果,包括:
若接收到数据处理请求,则调用第一链的第一区块链网络中的第一智能合约,通过所述第一智能合约对所述数据处理请求进行第一处理,得到第一处理结果。
3.根据权利要求1所述的方法,其特征在于,所述基于所述第一处理结果进行上链操作,得到第一事件信息,包括:
将所述第一处理结果广播至所述第一区块链网络中的区块链节点;
通过所述区块链节点,并基于所述第一处理结果进行共识操作,将包括有第一处理结果的新区块添加至所述第一区块链网络;
通过所述第一区块链网络中的第一事件节点,并根据所述新区块中存储的区块信息,得到第一事件信息。
4.根据权利要求1所述的方法,其特征在于,所述通过运行于可信执行环境中的、且与所述第一链对应的第一跨链证明转换组件,对所述第一事件信息进行第一验证,得到第一认证信息,包括:
通过所述第一链的第一跨链证明转换组件,对所述第一事件信息进行解析,得到数据读写集和消息签名;
通过所述第一跨链证明转换组件,确定与所述第一区块链网络对应的网络公钥,并根据所述网络公钥,对所述消息签名进行验证;
通过所述第一跨链证明转换组件,根据所述数据读写集中的合约信息、参数信息以及账户信息中的至少一种,对所述数据读写集进行验证;
综合对所述消息签名进行验证后得到的消息签名验证结果、和对所述数据读写集进行验证后得到的数据读写集验证结果,得到第一验证的验证结果;
通过所述第一验证的验证结果得到相应的第一认证信息。
5.根据权利要求4所述的方法,其特征在于,所述第一区块链网络包括背书节点和共识节点,所述消息签名包括与所述背书节点对应的背书签名和与所述共识节点对应的共识签名,所述网络公钥包括与所述背书节点相对应的背书公钥、和与所述共识节点相对应的共识公钥;
所述根据所述网络公钥,对所述消息签名进行验证,包括:
通过所述背书公钥,对与所述背书节点对应的背书签名进行验证;
通过所述共识公钥,对与所述共识节点对应的共识签名进行验证。
6.根据权利要求4所述的方法,其特征在于,所述通过所述第一验证的验证结果得到相应的第一认证信息,包括:
当获取得到所述第一验证的验证结果时,确定与所述第一链的第一跨链证明转换组件相对应的第一组件私钥;
通过所述第一组件私钥,并基于所述第一验证的验证结果进行签名处理,得到相应的第一认证信息。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:
接收所述第二链的第二区块链网络传输的第二跨链信息;所述第二跨链信息为对所述数据处理请求进行第二处理后得到的信息;
在所述第二跨链信息验证后,获取与所述数据处理相对应的数据处理标识,并基于所述数据处理标识进行上链操作。
8.一种跨链信息验证方法,其特征在于,所述方法包括:
接收第一跨链信息;所述第一跨链信息是通过运行于可信执行环境中的、且与第一链对应的第一跨链证明转换组件,对第一链的第一区块链网络响应数据处理请求的响应过程进行第一验证和认证生成;
通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,对所述第一跨链信息进行第二验证;
若所述第二验证通过,则在第二链的第二区块链网络中对所述数据处理请求进行第二处理,得到第二处理结果,并基于所述第二处理结果进行上链操作;
通过所述第二跨链证明转换组件,对基于第二处理结果的上链操作所得到的第二事件信息进行第三验证,得到第二认证信息;
根据所述第二事件信息和所述第二认证信息生成第二跨链信息;
将所述第二跨链信息返回至第一链的第一跨链证明转换组件;其中,所述第二跨链信息用于指示所述第一跨链证明转换组件对所述第二跨链信息进行第四验证,并在第四验证通过时,通过所述第一区块链网络基于所述第二跨链信息进行上链操作。
9.根据权利要求8所述的方法,其特征在于,所述通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,对所述第一跨链信息进行第二验证,包括:
确定与第一链的第一跨链证明转换组件相对应的第一组件公钥;
通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,根据所述第一组件公钥对所述第一跨链信息中的第一认证信息进行第二验证。
10.根据权利要求8所述的方法,其特征在于,所述若所述第二验证通过,则在第二链的第二区块链网络中对所述数据处理请求进行第二处理,得到第二处理结果,包括:
当所述第二验证通过时,对所述第一跨链信息进行解析,得到第二智能合约和所述第二智能合约的合约参数;
在第二链的第二区块链网络中,通过所述第二智能合约和所述合约参数,对所述数据处理请求进行第二处理,得到第二处理结果。
11.根据权利要求10所述的方法,其特征在于,所述当所述第二验证通过时,对所述第一跨链信息进行解析,得到第二智能合约和所述第二智能合约的合约参数之后,所述方法还包括:
通过所述第二跨链证明转换组件,并根据与所述第二跨链证明转换组件对应的第二组件私钥,对所述第二智能合约的合约参数进行签名,得到输入参数;
所述在第二链的第二区块链网络中,通过所述第二智能合约和所述合约参数,对所述数据处理请求进行第二处理,得到第二处理结果,包括:
通过所述第二区块链网络中的第二智能合约,并根据与所述第二跨链证明转换组件相对应的第二组件公钥,对所述输入参数进行第五验证;
当第五验证通过时,通过所述第二智能合约和所述输入参数,对所述数据处理请求进行第二处理,得到第二处理结果。
12.根据权利要求8所述的方法,其特征在于,所述对基于第二处理结果的上链操作所得到的第二事件信息进行第三验证,得到第二认证信息,包括:
对基于第二处理结果的上链操作所得到的第二事件信息进行第三验证,得到第三验证的验证结果;
确定与所述第二链的第二跨链证明转换组件相对应的第二组件私钥;
通过所述第二组件私钥对所述第三验证的验证结果进行签名,得到相应的第二认证信息。
13.根据权利要求8至12中任一项所述的方法,其特征在于,所述将所述第二跨链信息返回至第一链的第一跨链证明转换组件之后,所述方法还包括:
确定与所述第二跨链证明转换组件对应的第二组件公钥,并通过所述第二组件公钥对所述第二跨链信息中的第二认证信息进行第四验证;
当第四验证通过时,获取与所述数据处理相对应的数据处理标识,并基于所述数据处理标识执行上链操作。
14.一种跨链信息验证系统,其特征在于,所述系统包括与第一链对应的第一区块链网络和运行于可信执行环境中的第一跨链证明转换组件,以及与第二链对应的第二区块链网络和运行于可信执行环境中的第二跨链证明转换组件,其中:
所述第一区块链网络,用于响应于数据处理请求进行第一处理,得到第一处理结果,并基于所述第一处理结果进行上链操作,得到第一事件信息;
所述第一跨链证明转换组件,用于对所述第一事件信息进行第一验证,得到第一认证信息,并根据所述第一事件信息和所述第一认证信息生成第一跨链信息,将所述第一跨链信息传输至所述第二跨链证明转换组件;
所述第二跨链证明转换组件,用于对所述第一跨链信息中的第一认证信息进行第二验证,并在第二验证通过时,对所述第一跨链信息进行解析,得到第二智能合约的合约参数;
所述第二区块链网络,用于根据所述第二智能合约的合约参数对所述数据处理请求进行第二处理,得到第二处理结果;
所述第二区块链网络,用于基于所述第二处理结果进行上链操作,并根据所述第二处理结果的上链操作生成第二事件信息;
所述第二跨链证明转换组件,用于对所述第二事件信息进行第三验证,得到包括有第二认证信息的第二跨链信息;
所述第一跨链证明转换组件,用于对所述第二跨链信息中的第二认证信息进行第四验证,并在第四验证通过时,触发所述第一区块链网络基于所述第二跨链信息进行上链操作。
15.根据权利要求14所述的系统,其特征在于,所述系统包括与第一链对应的第一网关,以及与第二链对应的第二网关;
所述第一网关,用于获取数据处理请求,并调用第一智能合约,通过所述第一智能合约对所述数据处理请求进行第一处理,得到第一处理结果;
所述第一网关,还用于将所述第一跨链信息转发至所述第二网关;
所述第二网关,用于将所述第一跨链信息发送至第二跨链证明转换组件;
所述第二网关,还用于将所述第二跨链证明转换组件生成的第二跨链信息发送至所述第一网关,以使所述第一网关将所述第二跨链信息转发至所述第一跨链证明转换组件。
16.一种跨链信息生成装置,其特征在于,所述装置包括:
数据处理模块,用于响应于数据处理请求,在第一链的第一区块链网络中进行第一处理,得到第一处理结果,并基于所述第一处理结果进行上链操作,得到第一事件信息;
信息生成模块,用于通过运行于可信执行环境中的、且与所述第一链对应的第一跨链证明转换组件,对所述第一事件信息进行第一验证,得到第一认证信息,并根据所述第一事件信息和所述第一认证信息,生成第一跨链信息;
跨链传输模块,用于将所述第一跨链信息传输至运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件;所述第一跨链信息用于指示所述第二跨链证明转换组件对所述第一跨链信息进行第二验证,并在第二验证通过时,通过第二链的第二区块链网络根据所述第一跨链信息对所述数据处理请求进行第二处理。
17.一种跨链信息验证装置,其特征在于,所述装置包括:
接收模块,用于接收第一跨链信息;通过运行于可信执行环境中的、且与第二链对应的第二跨链证明转换组件,对所述第一跨链信息进行第二验证;所述第一跨链信息是通过运行于可信执行环境中的、且与第一链对应的第一跨链证明转换组件,对第一链的第一区块链网络响应数据处理请求的响应过程进行第一验证和认证生成;
上链模块,用于若所述第二验证通过,则在第二链的第二区块链网络中对所述数据处理请求进行第二处理,得到第二处理结果,并基于所述第二处理结果进行上链操作;
信息返回模块,用于通过所述第二跨链证明转换组件,对基于第二处理结果的上链操作所得到的第二事件信息进行第三验证,得到第二认证信息;根据所述第二事件信息和所述第二认证信息生成第二跨链信息;将所述第二跨链信息返回至第一链的第一跨链证明转换组件;其中,所述第二跨链信息用于指示所述第一跨链证明转换组件对所述第二跨链信息进行第四验证,并在第四验证通过时,通过所述第一区块链网络基于所述第二跨链信息进行上链操作。
18.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至13中任一项所述的方法的步骤。
19.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至13中任一项所述的方法的步骤。
20.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至13中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111619783.8A CN116366254A (zh) | 2021-12-27 | 2021-12-27 | 跨链信息生成方法、跨链信息验证方法及跨链信息验证系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111619783.8A CN116366254A (zh) | 2021-12-27 | 2021-12-27 | 跨链信息生成方法、跨链信息验证方法及跨链信息验证系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116366254A true CN116366254A (zh) | 2023-06-30 |
Family
ID=86925583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111619783.8A Pending CN116366254A (zh) | 2021-12-27 | 2021-12-27 | 跨链信息生成方法、跨链信息验证方法及跨链信息验证系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116366254A (zh) |
-
2021
- 2021-12-27 CN CN202111619783.8A patent/CN116366254A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112214780B (zh) | 一种数据处理方法、装置、智能设备及存储介质 | |
CN112926982B (zh) | 一种交易数据处理方法、装置、设备及存储介质 | |
EP3788522B1 (en) | System and method for mapping decentralized identifiers to real-world entities | |
CN111970129B (zh) | 一种基于区块链的数据处理方法、设备以及可读存储介质 | |
CN110535872B (zh) | 在区块链网络中处理数据请求的方法和装置 | |
CN112685505B (zh) | 一种交易数据处理方法、装置、计算机设备及存储介质 | |
CN110839029B (zh) | 一种微服务注册方法和装置 | |
CN111740966B (zh) | 一种基于区块链网络的数据处理方法及相关设备 | |
CN109245894B (zh) | 一种基于智能合约的分布式云存储系统 | |
CN110096894B (zh) | 一种基于区块链的数据匿名共享系统及方法 | |
CN113255014B (zh) | 一种基于区块链的数据处理方法以及相关设备 | |
JP2024505692A (ja) | ブロックチェーンネットワークに基づくデータ処理方法、装置及びコンピュータ機器 | |
CN112804354B (zh) | 跨链进行数据传输的方法、装置、计算机设备和存储介质 | |
CN111460457A (zh) | 不动产权登记监管方法、装置、电子设备及存储介质 | |
CN114567643B (zh) | 跨区块链的数据流转方法、装置及相关设备 | |
CN112448946A (zh) | 基于区块链的日志审计方法及装置 | |
Kumar et al. | Ultra-lightweight blockchain-enabled RFID authentication protocol for supply chain in the domain of 5G mobile edge computing | |
CN115705601A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN116975901A (zh) | 基于区块链的身份验证方法、装置、设备、介质及产品 | |
CN115409511A (zh) | 一种基于区块链的个人信息保护系统 | |
CN115941282A (zh) | 一种基于nft的区块链跨链交互系统及方法 | |
CN117675216A (zh) | 一种数据处理方法及相关设备 | |
CN111756743B (zh) | 基于区块链的资源转移方法、装置、计算机设备和存储介质 | |
CN116366254A (zh) | 跨链信息生成方法、跨链信息验证方法及跨链信息验证系统 | |
Paavolainen et al. | Decentralized beacons: Attesting the ground truth of blockchain state for constrained IoT devices |
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 |