CN112822181A - 跨链交易的验证方法、终端设备及可读存储介质 - Google Patents

跨链交易的验证方法、终端设备及可读存储介质 Download PDF

Info

Publication number
CN112822181A
CN112822181A CN202011630475.0A CN202011630475A CN112822181A CN 112822181 A CN112822181 A CN 112822181A CN 202011630475 A CN202011630475 A CN 202011630475A CN 112822181 A CN112822181 A CN 112822181A
Authority
CN
China
Prior art keywords
cross
chain
transaction
link
verification
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011630475.0A
Other languages
English (en)
Other versions
CN112822181B (zh
Inventor
李伟
邱炜伟
蔡亮
汪小益
匡立中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Qulian Technology Co Ltd
Original Assignee
Hangzhou Qulian Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Qulian Technology Co Ltd filed Critical Hangzhou Qulian Technology Co Ltd
Priority to CN202011630475.0A priority Critical patent/CN112822181B/zh
Publication of CN112822181A publication Critical patent/CN112822181A/zh
Priority to PCT/CN2021/142626 priority patent/WO2022143798A1/zh
Application granted granted Critical
Publication of CN112822181B publication Critical patent/CN112822181B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0478Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3218Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请适用于计算机应用技术领域,提供了一种跨链交易的验证方法、终端设备及可读存储介质,所述方法包括:获取源链提交的跨链事件;基于所述跨链事件生成跨链交易,所述跨链交易包括验证协议;将所述跨链交易发送至中继链,指示所述中继链对所述验证协议验证通过后向目的链跨链网关发送所述跨链交易。通过本申请实施例,通过向中继链发送跨链交易,指示中继链仅对跨链交易中的验证协议进行验证,在保证隐私的前提下可以解决目前由目的链的跨链网关对跨链交易进行验证,增加了跨链网关的处理负担的问题。

Description

跨链交易的验证方法、终端设备及可读存储介质
技术领域
本申请属于计算机应用技术领域,尤其涉及一种跨链交易的验证方法、终端设备及可读存储介质。
背景技术
随着区块链应用技术的发展,不同的区块链之间可以通过跨链技术进行互相通信,跨链技术主要包括基于公证人机制、哈希锁定以及中继链等。其中,基于中继链的跨链交易为,不同的应用链通过跨链网关接入中继链,通过中继链进行跨链操作。
由于在跨链交易中涉及到交易双方机构的业务敏感信息,而通过中继链存储的跨链交易可以被其它机构获取,因此容易造成交易双方的隐私泄露。目前,为了避免跨链交易过程中的隐私泄露,将跨链交易中的信息以密文形式发送至中继链,通过中继链出块后不对跨链交易进行验证,而是由目的链的跨链网关进行验证,增加了跨链网关的处理负担。
发明内容
本申请实施例提供了一种跨链交易的验证方法、终端设备及可读存储介质,可以解决目前由目的链的跨链网关对跨链交易进行验证,增加了跨链网关的处理负担的问题。
第一方面,本申请实施例提供了一种跨链交易的验证方法,应用于源链跨链网关,所述方法包括:
获取源链提交的跨链事件;基于所述跨链事件生成跨链交易,所述跨链交易包括验证协议;将所述跨链交易发送至中继链,指示所述中继链对所述验证协议验证通过后向目的链跨链网关发送所述跨链交易。
在第一方面的一种可能的实现方式中,所述基于所述跨链事件生成跨链交易之前,所述方法还包括:
生成第一非对称密钥和对称密钥;向所述中继链注册所述第一非对称密钥的第一公钥、所述源链的地址信息及所述源链的验证规则,并获取所述中继链中存储的所述目的链跨链网关的第二非对称密钥的第二公钥;其中,所述对称密钥用于对所述跨链事件的交易明文进行加密,所述验证规则为验证所述验证协议的验证代码。
在第一方面的一种可能的实现方式中,所述跨链交易包括交易密文、加密的对称密钥以及零知识证明;所述基于所述跨链事件生成跨链交易,包括:
通过所述对称密钥对所述跨链事件的交易明文进行加密,得到所述交易密文;以所述交易密文为公开输入,以所述交易明文和所述对称密钥为隐私输入,运行预设的零知识证明生成代码,生成所述零知识证明,将所述零知识证明作为所述验证协议;利用所述目的链跨链网关的第二非对称密钥的第二公钥对所述对称密钥进行加密,得到所述加密的对称密钥。
在第一方面的一种可能的实现方式中,所述方法包括:
向所述中继链发送所述交易密文、所述加密的对称密钥以及所述零知识证明,指示所述中继链运行所述验证规则对应的所述验证代码对所述零知识证明进行验证。
在第一方面的一种可能的实现方式中,所述方法包括:
向所述中继链发送跨链交易,指示所述中继链对所述验证协议验证通过后,通过所述中继链向所述目的链跨链网关发送所述交易密文和所述加密的对称密钥;
其中,所述加密的对称密钥用于指示所述目的链跨链网关使用所述第二非对称密钥的第二私钥解密所述加密的对称密钥,得到所述对称密钥;所述交易密文用于指示所述目的链跨链网关使用所述对称密钥解密所述交易密文,得到所述交易明文;所述交易明文用于指示所述目的链跨链网关根据所述交易明文中的跨链调用信息向所述目的链发起调用。
第二方面,本申请实施例提供了一种跨链交易的验证方法,应用于中继链,所述方法包括:
接收源链跨链网关发送的跨链交易,所述跨链交易包括验证协议;根据预设的验证规则对所述验证协议进行验证;若验证通过,则向目的链跨链网关发送所述跨链交易。
在第二方面的一种可能的实现方式中,所述根据预设的验证规则对所述验证协议进行验证,包括:
获取所述源链跨链网关注册的所述验证规则,所述验证规则为验证零知识证明的验证代码;运行所述验证代码,对所述零知识证明进行验证;其中,所述跨链交易包括交易密文、加密的对称密钥以及零知识证明;所述交易密文为源链跨链网关利用对称密钥对跨链事件中的交易明文加密得到的;所述对称密钥为跨链网关生成的密钥对;所述零知识证明为源链跨链网关以所述交易密文为公开输入、以所述交易明文和所述对称密钥为隐私输入,并运行预设的零知识证明生成代码生成的所述验证协议;所述加密的对称密钥为源链跨链网关利用目的链跨链网关的第二非对称密钥的第二公钥对所述对称密钥加密得到的。
示例性的,所述运行所述验证代码,对所述零知识证明进行验证,包括:
以所述交易密文为输入,通过所述零知识证明中的对称密钥解密所述交易密文,得到待验证的交易明文;将所述待验证的交易明文与所述零知识证明中的交易明文进行对比;若一致,则验证交易明文中的跨链交易有效性证明和跨链调用信息;若所述跨链交易验证为有效且所述跨链调用信息验证为正确,则验证通过。
示例性的,所述方法还包括:
若验证通过,则向所述目的链跨链网关发送所述交易密文和所述加密的对称密钥;其中,所述加密的对称密钥用于指示所述目的链跨链网关使用所述第二非对称密钥的第二私钥解密所述加密的对称密钥,得到所述对称密钥;所述交易密文用于指示所述目的链跨链网关使用所述对称密钥解密所述交易密文,得到所述交易明文;所述交易明文用于指示所述目的链跨链网关根据所述交易明文中的跨链调用信息向所述目的链发起调用。
第三方面,本申请实施例提供了一种跨链交易的验证方法,应用于目的链跨链网关,所述方法包括:
接收中继链发送的跨链交易,所述跨链交易包括交易密文和加密的对称密钥;利用第二非对称密钥的第二私钥对所述加密的对称密钥进行解密,得到对称密钥;利用所述对称密钥解密所述交易密文,得到所述跨链交易的交易明文;根据所述交易明文中的跨链调用信息,向目的链发起调用。
第四方面,本申请实施例提供了一种跨链交易的验证系统,包括:
源链跨链网关,用于根据源链的跨链事件生成跨链交易,并向中继链发送所述跨链交易;
中继链,用于接收源链跨链网关发送的所述跨链交易,并通过验证规则对所述跨链交易的验证协议进行验证,验证通过后向目的链跨链网关发送所述跨链交易;
目的链跨链网关,用于接收所述中继链发送的跨链交易,并对所述跨链交易进行解析,得到交易明文,根据所述交易明文调用目的链。
第五方面,本申请实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述的方法。
第七方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述所述的方法。
可以理解的是,上述第二方面至第七方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
本申请实施例与现有技术相比存在的有益效果是:通过本申请实施例,源链跨链网关获取源链提交的跨链事件;基于跨链事件生成跨链交易,跨链交易包括验证协议;将跨链交易发送至中继链,指示中继链对所述验证协议验证通过后向目的链跨链网关发送跨链交易;通过跨链网关生成的跨链交易,跨链交易中包括验证协议,可以由中继链仅对验证协议验证通过后,即可将跨链交易发送至目的链跨链网关,无需目的链的跨链网关再次进行验证,使得跨链网关保持轻量级;同时由中继链进行跨链交易的验证更加可靠;具有较强的易用性与实用性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的应用场景的系统架构示意图;
图2是本申请一实施例提供的跨链交易的验证方法的流程示意图;
图3是本申请另一实施例提供的跨链交易的验证方法的流程示意图;
图4是本申请另一实施例提供的跨链交易的验证方法的流程示意图;
图5是本申请一实施例提供的交互流程示意图;
图6是本申请一实施例提供的源链的跨链网关的结构示意图;
图7是本申请一实施例提供的中继链的结构示意图;
图8是本申请一实施例提供的目的链的跨链网关的结构示例图;
图9是本申请实施例提供的跨链交易的验证系统的结构示意图;
图10是本申请实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
随着区块链技术的发展和创新,针对不同领域出现了具有不同特点及适应不同场景需求的大量区块链网络,每个区块链网络之间形成了诸多价值孤岛,通过区块链跨链技术实现了不同区块链之间的互联互通和价值转移。
其中一种跨链技术是基于中继链实现的跨链。如图1所示的,本申请一实施例提供的应用场景的系统架构示意图,区块链A和区块链B通过中继链R进行跨链交易。区块链A由机构a1、机构a2、机构a3等组成,区块链B由机构b1、机构b2、机构b3等组成。区块链A的机构a1和区块链B的机构b1之间通过跨链进行业务合作时,机构a1在区块链A的节点通过跨链网关Pa接入中继链R,机构b1在区块链B的节点通过跨链网关Pb接入中继链R。跨链网关Pa和跨链网关Pb均提前向中继链R注册应用链(区块链)A和应用链(区块链)B的信息,并注册各自应用链的验证规则。
机构a1从区块链A抛出跨链事件,跨链网关Pa监听到该跨链事件,将其转换生成跨链交易T,并提交到中继链R;其中,跨链交易T中包含了源链A(区块链A)和目的链B(区块链B)的地址信息、源链A(区块链A)对目的链B(区块链B)的调用信息(合约、方法、参数等),以及源链A(区块链A)的跨链交易有效性证明等。中继链R经过共识机制后,将跨链交易打包出块,并由内置的跨链交易验证引擎调用提前注册的区块链A的验证规则,验证区块链A的跨链交易T,通过验证后,才能将跨链交易路由到目的链B(区块链B)。目的链B(区块链B)的跨链网关Pb同步到跨链交易T之后将其中的调用信息转换成区块链B的交易,并对区块链B的合约进行调用,跨链网关Pb收到区块链B的回执后再将回执以跨链交易的形式提交到中继链R,中继链R以同样的方式出块、执行验证过程并路由给源链A(区块链A)。
由于跨链交易中的信息涉及了跨链双方机构a1和机构b1的业务敏感信息,不希望被其他机构看到,而在中继链上存储的跨链交易可以被其他机构获取,因此造成了交易双方的隐私泄露。
为了避免跨链交易隐私泄露的问题,通过采用将跨链交易中的调用信息和证明信息以密文形式发送至中继链,中继链出块后不对跨链交易进行验证,而是由目的链的跨链网关进行验证的互通方式。例如:应用链A的跨链网关Pa向应用链B的跨链网关Pb进行应用链注册,同时部署一个验证规则,用于跨链交易的验证;应用链A的跨链网关Pa与应用链B的跨链网关Pb进行密钥协商得到一个对称密钥key;当应用链A向应用链B发起跨链交易时,跨链网关Pa利用对称密钥key对跨链交易调用信息和证明信息进行加密,再发送给中继链。由于中继链收到的是交易密文,故无法泄露交易信息。中继链将交易密文路由至目的链B,目的链B的跨链网关Pb接收到跨链交易后,用key解密交易密文;并使用验证引擎调用应用链A的验证规则,对跨链交易进行有效性验证。通过验证后,跨链网关Pb将跨链交易中的调用信息转换成目的应用链B的交易,并提交至应用链B(目的链B)。
通过上述实施例方式,增加了跨链网关的负担。跨链网关本质上为一个连接不同区块链系统的交互组件,属于较轻量级的节点。将交易有效性的验证转移到跨链网关上后,跨链网关的负担会随着与不同应用链的跨链交易的增多而增加。其次,交易验证的可靠性较差。跨链网关是一个单点组件的架构,单点的架构容易出现错误,故由跨链网关执行交易验证可靠性较差。然后,通过跨链网关进行交易验证的扩展性较差。应用链每次和一个其他应用链进行跨链交易时,跨链网关都需和对方跨链网关进行相互注册,并相互部署一个对方应用链的验证规则,因此使得交易的可扩展性较差。
本申请通过零知识证明的方式将跨链交易中的业务敏感信息隐藏起来,通过中继链依然可以验证跨链交易的有效性,同时又保护了跨链交易的双方的隐私信息不被泄露。
下面通过交互过程中的每个单侧节点对跨链交易过程中的验证流程进行介绍。
参见图2,是本申请一实施例提供的跨链交易的验证方法的流程示意图。该方法应用于源链的跨链网关,执行主体为如图1中所示的跨链网关Pa。所述方法包括以下步骤:
步骤S201,获取源链提交的跨链事件。
在一些实施例中,以图1所示的应用场景的架构为例,区块链A和区块链B通过中继链R进行跨链交易,区块链A由机构a1、a2、a3等组成,区块链B由机构b1、b2、b3等组成。区块链A为源链,区块链B为目的链。区块链A的机构a1和区块链B的机构b1之间通过跨链进行业务合作。
其中,机构a1部署了区块链A的节点、跨链网关Pa和中继链R的节点,机构b1部署了区块链B的节点、跨链网关Pb和中继链R的节点,每个跨链网关都有一对非对称密钥,即公钥和私钥对。
示例性的,机构a1通过调用区块链A的业务合约,并从区块链A抛出跨链事件。跨链网关Pa监听机构a1抛出跨链事件的动作。跨链网关Pa监听到该跨链事件并获取该跨链事件。
其中,跨链事件包括源链A(区块链A)和目的链B(区块链B)的地址信息、交易明文;其中交易明文包括源链A(区块链A)对目的链B(区块链B)的跨链调用信息(合约、方法、参数等),以及源链A(区块链A)的跨链交易有效性证明等。
在一些实施例中,所述方法还包括:
生成第一非对称密钥和对称密钥;向中继链注册第一非对称密钥的第一公钥、源链的地址信息及源链的验证规则,并获取中继链中存储的目的链跨链网关的第二非对称密钥的第二公钥;其中,对称密钥用于对跨链事件的交易明文进行加密,验证规则为验证所述验证协议的验证代码。
示例性的,由跨链网关Pa生成第一非对称密钥,第一非对称密钥包括第一公钥和第一私钥。跨链网关Pa向中继链R注册区块链A的机构a1的信息和第一公钥,并向中继链R注册区块链A的验证规则。源链跨链网关利用生成的对称密钥对跨链事件的交易明文进行加密。其中,跨链事件的交易明文包括跨链调用信息和跨链交易有效性证明;跨链调用信息包括目的链合约地址、目的链合约方法和参数。
步骤S202,基于所述跨链事件生成跨链交易,所述跨链交易包括验证协议。
在一些实施例中,跨链网关Pa监听到跨链事件后,基于该跨链事件生成跨链交易。验证协议可以为零知识证明,验证规则为一段零知识证明的验证代码,中继链R的验证引擎可以调用该验证代码对区块链A发出的跨链交易进行验证。
示例性的,跨链交易包括交易密文、加密的对称密钥以及零知识证明。
在一些实施例中,基于跨链事件生成跨链交易,包括:
通过对称密钥对跨链事件的交易明文进行加密,得到交易密文;以交易密文为公开输入,以交易明文和对称密钥为隐私输入,运行预设的零知识证明生成代码,生成零知识证明,将零知识证明作为验证协议;利用目的链跨链网关的第二非对称密钥的第二公钥对对称密钥进行加密,得到加密的对称密钥。
其中,交易明文为跨链事件中的交易信息,包括跨链调用信息Payload和跨链交易有效性证明Proof。交易密文为利用对称密钥对交易明文进行加密处理得到;加密的对称密钥为通过跨链网关Pb的第二非对称密钥的第二公钥对跨链网关Pa的对称密钥进行加密得到的;验证协议为基于交易明文、交易密文和对称密钥生成的零知识证明。
示例性的,跨链网关Pa使用对称密钥K加密跨链事件中的交易明文(包括跨链调用信息和跨链交易有效性证明);其中,跨链调用信息包括目的链合约地址、目的链合约方法和参数。跨链调用信息经过加密后记为E(Payload,K),并将加密后的跨链调用信息E(Payload,K)作为生成验证协议的公开输入。跨链网关Pa使用对称密钥K加密跨链交易有效性证明,加密后的跨链交易有效性证明记为E(Proof,K),并将加密后的跨链交易有效性证明E(Proof,K)作为生成验证协议的公开输入。将对称密钥K和交易明文(跨链调用信息和跨链交易有效性证明)作为生成验证协议的隐私输入。
在一些实施例中,跨链网关Pa监听到跨链事件后,通过运行一段预设的零知识证明生成代码,生成零知识证明,以上述E(Payload,K)、E(Proof,K)作为公开输入、以对称密钥K、跨链调用信息Payload和跨链交易有效性证明Proof作为隐私输入,生成零知识证明。其中,预设的零知识证明生成代码可以为zkSNARK。
另外,跨链网关Pa还使用目的链跨链网关的第二非对称密钥的第二公钥对对称密钥进行加密。跨链网关Pb随机生成第二非对称密钥,第二非对称密钥包括第二公钥和第二私钥。跨链网关Pb向中继链R注册区块链B的机构b1的信息和第二公钥,并向中继链注册区块链B的验证规则。其中,验证规则可以为一段零知识证明的验证代码,中继链R的验证引擎可以调用该验证代码对区块链B发出的跨链交易进行验证。
步骤S203,将所述跨链交易发送至中继链,指示所述中继链对所述验证协议验证通过后向目的链跨链网关发送所述跨链交易。
在一些实施例中,跨链网关Pa将跨链交易提交至中继链R,中继链R将跨链交易打包出块,向目的链跨链网关发送跨链交易。跨链交易包括交易密文、加密的对称密钥以及零知识证明。
在一些实施例中,所述方法包括:向中继链发送交易密文、加密的对称密钥以及零知识证明,指示中继链运行验证规则对应的验证代码,对零知识证明进行验证。由于中继链收到的是交易密文,故无法泄露交易信息。
在一些实施例中,所述方法包括:
向中继链发送跨链交易,指示中继链对验证协议验证通过后,通过中继链向目的链跨链网关发送交易密文和加密的对称密钥。
其中,加密的对称密钥用于指示目的链跨链网关使用第二非对称密钥的第二私钥解密加密的对称密钥,得到对称密钥;交易密文用于指示目的链跨链网关使用对称密钥解密交易密文,得到交易明文;交易明文用于指示目的链跨链网关根据交易明文中的调用信息向目的链发起调用。
通过本申请实施例,在进行跨链交易过程中,跨链网关对跨链事件的交易明文进行加密以及将交易明文作为生成零知识证明的隐私输入,并指示中继链对跨链交易的零知识证明进行验证,其中对零知识证明进行验证的逻辑包含了对跨链交易的有效性和跨链调用信息的正确性的验证,且中继链收到的是交易密文,故无法泄露交易信息;保护了跨链交易的隐私;同时由中继链进行验证,降低了跨链网关处理数据的负载,保证了跨链交易验证的可靠性。
参见图3,是本申请另一实施例提供的跨链交易的验证方法的流程示意图。该方法应用于中继链,执行主体为如图1中所示的中继链R。所述方法包括以下步骤:
步骤S301,接收源链跨链网关发送的跨链交易,跨链交易包括验证协议。
在一些实施例中,以图1中所示的架构为例,跨链网关Pa为源链跨链网关,中继链R接收跨链网关Pa提交的跨链交易。
其中,验证协议可以为零知识证明,验证规则为一段零知识证明的验证代码,中继链R的验证引擎可以调用该验证代码对区块链A发出的跨链交易进行验证。跨链交易可以包括交易密文、加密的对称密钥以及零知识证明。加密的对称密钥为源链跨链网关利用目的链跨链网关的第二非对称密钥的第二公钥对自身的对称密钥进行加密得到的。交易明文包括跨链调用信息和跨链交易有效性证明;跨链调用信息包括目的链合约地址、目的链合约方法和参数。交易密文为源链跨链网关利用自身的对称密钥对交易明文进行加密得到的。零知识证明为源链跨链网关以交易明文和对称密钥为隐私输入、以交易密文为公开输入,生成的用于对跨链交易进行验证的验证协议。
步骤S302,根据预设的验证规则对所述验证协议进行验证。
在一些实施例中,预设的验证规则为源链跨链网关向中继链注册的源链的验证规则,为验证协议的验证代码。不同的区块链在进行跨链交易时,都可以提前通过跨链网关向中继链注册该验证规则。
在一些实施例中,根据预设的验证规则对验证协议进行验证,包括:获取源链跨链网关注册的验证规则,验证规则为验证零知识证明的验证代码;运行验证代码,对零知识证明进行验证。
其中,跨链交易包括交易密文、加密的对称密钥以及零知识证明;交易密文为源链跨链网关利用对称密钥对跨链事件中的交易明文加密得到的;对称密钥为跨链网关生成的密钥对;零知识证明为源链跨链网关以交易密文为公开输入、以交易明文和对称密钥为隐私输入,并运行预设的零知识证明生成代码,生成的验证协议;加密的对称密钥为源链跨链网关利用目的链跨链网关的第二非对称密钥的第二公钥对对称密钥加密得到的。
示例性的,由源链向源链跨链网关提交的跨链事件包括交易明文,交易明文包括跨链调用信息和跨链交易有效性证明。在源链跨链网关生成跨链交易过程中,跨链网关Pa使用对称密钥K加密跨链事件中需要调用的信息,即跨链调用信息;其中,跨链调用信息包括目的合约地址、目的链合约方法和参数。跨链调用信息经过加密后记为E(Payload,K),并将加密后的跨链调用信息E(Payload,K),作为生成验证协议(零知识证明)的公开输入。跨链网关Pa使用对称密钥K加密跨链交易有效性证明,加密后的跨链交易有效性证明记为E(Proof,K),并将加密后的跨链交易有效性证明E(Proof,K),作为生成验证协议(零知识证明)的公开输入。在对跨链交易验证过程中,中继链R使用验证引擎调用跨链网关Pa事先注册的验证规则,即一段zkSNARK零知识证明的验证代码,以E(payload,K)和E(Proof,K)为输入,验证跨链交易中的零知识证明。
在一些实施例中,运行验证代码,对零知识证明进行验证,包括:
以交易密文为输入,通过零知识证明中的对称密钥解密交易密文,得到待验证的交易明文;将待验证的交易明文与零知识证明中的交易明文进行对比;若一致,则验证交易明文中的跨链交易有效性证明和跨链调用信息;若跨链交易验证为有效且跨链调用信息验证为正确,则验证通过。
示例性的,在生成零知识证明过程中,以交易密文为公开输入,以交易明文和对称密钥为隐私输入;在验证过程中,以交易密文为输入,即以E(payload,K)和E(Proof,K)为输入,通过对称密钥对输入的交易密文进行解密,得到交易明文,将该交易明文与作为隐私输入的交易明文进行对比,若对比结果一致,则通过零知识证明的内部逻辑对交易明文中的跨链交易有效性证明和跨链调用信息进行验证,若验证的结果为跨链交易有效且跨链调用信息正确,则验证通过。
需要说明的是,利用零知识证明对跨链交易进行验证,在验证上述交易明文的同时,零知识证明会对其作为隐私输入的交易明文的自身逻辑完成有效性验证,得出验证结果,证明验证通过,无需向中继链提供任何与跨链交易相关的隐私数据,从而使中继链相信拥有该跨链交易的交易信息且验证结果证明该跨链交易有效、跨链调用信息准确,其交易信息实现逻辑的证明过程不向中继链泄漏任何关于被证明消息的信息;从而保护了交易双方的隐私不被泄露的同时,完成对跨链交易有效性的验证。
需要说明的是,跨链交易有效性证明记载了跨链交易的合法性和存在性证明信息,在中继链对跨链交易的零知识证明验证的过程中,无需为中继链跨链验证引擎提供具体的验证信息,保证了跨链交易的隐私不被泄露。跨链交易有效性证明的字段内容根据具体应用链的特性和结构的不同,存在差异性。具体的验证规则及方式可以通过灵活的验证规则加载到零知识证明的验证过程中。
示例性的,不同的区块链对应不同的有效性验证的验证规则,即交易明文的自身有效性证明的验证逻辑;例如对于fabric应用链(Fabric是一个高度模块化和可配置架构的区块链统称),跨链网关进行注册时需要将fabric的验证逻辑validator和背书策略信息注册到中继链,产生的有效性证明信息proof需包含交易的背书响应。对于以太坊应用链,跨链网关生成有效性证明信息proof时需要携带源链交易的简单支付验证(SimplifiedPayment Verification,SPV)证明和交易内容,以及该交易所在区块的后n(该n值为以太坊交易大概率确认所需的区块数)个区块头信息。
步骤S303,若验证通过,则向目的链跨链网关发送所述跨链交易。
在一些实施例中,跨链交易由中继链验证引擎验证通过以后,路由至目的链,由目的链跨链网关Pb接收。
在一些实施例中,若验证通过,则向目的链跨链网关发送交易密文和加密的对称密钥。
其中,加密的对称密钥用于指示目的链跨链网关使用第二非对称密钥的第二私钥解密所述加密的对称密钥,得到对称密钥;交易密文用于指示目的链跨链网关使用对称密钥解密交易密文,得到交易明文;交易明文用于指示目的链跨链网关根据交易明文中的跨链调用信息向目的链发起调用。
示例性的,由目的链的跨链网关Pb接收后,跨链网关Pb使用第二非对称密钥的第二私钥解密加密的对称密钥,得到对称密钥K,然后使用对称密钥K解密加密的跨链调用信息E(payload,K),得到跨链调用信息payload,其中包含目的链合约地址、方法和参数。跨链网关Pb将解密后的payload转换成目的链的交易,对目的链发起调用。
需要说明的是,跨链网关Pb得到目的链的回执以后使用相同的方法加密,并生成零知识证明,生成新的跨链交易,并将新的跨链交易提交到中继链。
参见图4,是本申请另一实施例提供的跨链交易的验证方法的流程示意图。该方法应用于目的链的跨链网关,执行主体为如图1中所示的跨链网关Pb,该方法流程在上述实施例中已进行相应的说明,基于相同的处理原理,在此不再赘述。所述方法包括以下步骤:
步骤S401,接收中继链发送的跨链交易,跨链交易包括交易密文和加密的对称密钥。
步骤S402,利用第二非对称密钥的第二私钥对加密的对称密钥进行解密,得到对称密钥。
步骤S403,利用对称密钥解密交易密文,得到跨链交易的交易明文。
步骤S404,根据交易明文中的跨链调用信息,向目的链发起调用。
参见图5,是本申请一实施例提供的交互流程示意图,该实施例交互过程中,各个步骤的实现原理与图2、图3和图4分别描述的实施过程相同,在此不再赘述。以区块链A的机构a1与区块链B的机构b1进行业务交互为例,如图5所示,该交互过程包括注册阶段和跨链交易阶段。
其中,注册阶段包括:跨链网关Pa生成对称密钥K1和第一非对称密钥,并向中继链R注册机构a1的信息、跨链网关Pa的第一非对称密钥的公钥信息Kpuba,以及机构a1的验证规则1;跨链网关Pb生成对称密钥K2和第二非对称密钥,并向中继链R注册机构b1的信息、跨链网关Pb的第二非对称密钥的公钥信息Kpubb,以及机构b1的验证规则2。同时,跨链网关Pa获取中继链R中存储的跨链网关Pb的公钥信息Kpubb;跨链网关Pb获取中继链R中存储的跨链网关Pa的公钥信息Kpuba
如图5所示,跨链交易阶段包括:
1.机构a1调用区块链A的业务合约,向跨链网关Pa抛出跨链事件;
2.跨链网关Pa使用对称密钥K1对交易明文中的跨链调用信息和跨链有效证明信息分别进行加密,得到交易密文;使用公钥信息Kpubb对对称密钥K1加密;以交易明文、交易密文、和对称密钥K1为输入,运行预设的零知识证明生成代码,生成零知识证明,得到第一跨链交易;
3.跨链网关Pa将交易密文、加密的对称密钥K1和零知识证明打包,并提交至中继链R;
4.中继链R的验证引擎调用跨链网关Pa注册的机构a1的验证规则,对零知识证明进行验证;
5.验证通过后,中继链R将交易密文和加密的对称密钥K1发送至跨链网关Pb;
6.跨链网关Pb使用第二非对称密钥的私钥信息解密加密的对称密钥K1,得到对称密钥K1;使用K1解密交易密文,得到交易明文;
7.跨链网关Pb根据交易明文中的调用信息调用机构b1;
8.跨链网关Pb获取机构b1的回执信息;
9.跨链网关Pb基于回执信息生成第二跨链交易;
10.将第二跨链交易发送至中继链R。
后续处理流程,采用与上述相同的处理方式,进行交易验证并将第二跨链交易路由至区块链A。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
通过本申请实施例,跨链网关依旧保持轻量级,不需要验证跨链交易的有效性;由中继链进行跨链交易的验证更加可靠;扩展性好,如果有新的应用链加入,只需要向中继链注册应用链信息和验证规则即可。
对应于上文实施例所述的跨链交易的验证方法,图6示出了本申请实施例提供的跨链交易的验证装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图6,该装置包括:
获取单元61,用于获取源链提交的跨链事件;
处理单元62,用于基于所述跨链事件生成跨链交易,所述跨链交易包括验证协议;
发送单元63,用于将所述跨链交易发送至中继链,指示所述中继链对所述验证协议验证通过后向目的链跨链网关发送所述跨链交易。
图7示出了本申请实施例提供的跨链交易的验证装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图7,该装置包括:
接收单元71,用于接收源链跨链网关发送的跨链交易,所述跨链交易包括验证协议;
验证单元72,用于根据预设的验证规则对所述验证协议进行验证;
路由单元73,用于若验证通过,则向目的链跨链网关发送所述跨链交易。
图8示出了本申请实施例提供的跨链交易的验证装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图8,该装置包括:
接收单元81,用于接收中继链发送的跨链交易,所述跨链交易包括交易密文和加密的对称密钥;
第一解密单元82,用于利用第二非对称密钥的第二私钥对所述加密的对称密钥进行解密,得到对称密钥;
第二解密单元83,用于利用所述对称密钥解密所述交易密文,得到所述跨链交易的交易明文;
调用单元84,用于根据所述交易明文中的跨链调用信息,向目的链发起调用。
对应于上文实施例所述的跨链交易的验证方法,图9示出了本申请实施例提供的跨链交易的验证系统的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
源链跨链网关91,用于用于根据源链的跨链事件生成跨链交易,并向中继链发送所述跨链交易;
中继链92,用于接收源链跨链网关发送的所述跨链交易,并通过验证规则对所述跨链交易的验证协议进行验证,验证通过后向目的链跨链网关发送所述跨链交易;
目的链跨链网关93,用于接收所述中继链发送的跨链交易,并对所述跨链交易进行解析,得到交易明文,根据所述交易明文调用目的链。
通过本申请实施例,在进行跨链交易过程中,跨链网关对跨链事件的交易明文进行加密以及将交易明文作为生成零知识证明的隐私输入,并指示中继链对跨链交易的零知识证明进行验证,无需对交易明文的逻辑及有效性进行验证,保护了跨链交易的隐私;同时由中继链进行验证,降低了跨链网关处理数据的负载,保证了跨链交易验证的可靠性;跨链网关依旧保持轻量级,不需要验证跨链交易的有效性;由中继链进行跨链交易的验证更加可靠;扩展性好,如果有新的应用链加入,只需要向中继链注册应用链信息和验证规则即可。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
图10为本申请一实施例提供的终端设备10的结构示意图。如图10所示,该实施例的终端设备10包括:至少一个处理器100(图10中仅示出一个)处理器、存储器101以及存储在所述存储器101中并可在所述至少一个处理器100上运行的计算机程序102,所述处理器100执行所述计算机程序102时实现上述任意各个跨链交易的验证方法的实施例中的步骤。
所述终端设备10可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备10可包括,但不仅限于,处理器100、存储器101。本领域技术人员可以理解,图10仅仅是终端设备10的举例,并不构成对终端设备10的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器100可以是中央处理单元(Central Processing Unit,CPU),该处理器100还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器101在一些实施例中可以是所述终端设备10的内部存储单元,例如终端设备10的硬盘或内存。所述存储器101在另一些实施例中也可以是所述终端设备10的外部存储设备,例如所述终端设备10上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器101还可以既包括所述终端设备10的内部存储单元也包括外部存储设备。所述存储器101用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器101还可以用于暂时地存储已经输出或者将要输出的数据。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

1.一种跨链交易的验证方法,其特征在于,应用于源链跨链网关,所述方法包括:
获取源链提交的跨链事件;
基于所述跨链事件生成跨链交易,所述跨链交易包括验证协议;
将所述跨链交易发送至中继链,指示所述中继链对所述验证协议验证通过后向目的链跨链网关发送所述跨链交易。
2.如权利要求1所述的方法,其特征在于,所述基于所述跨链事件生成跨链交易之前,所述方法还包括:
生成第一非对称密钥和对称密钥;
向所述中继链注册所述第一非对称密钥的第一公钥、所述源链的地址信息及所述源链的验证规则,并获取所述中继链中存储的所述目的链跨链网关的第二非对称密钥的第二公钥;
其中,所述对称密钥用于对所述跨链事件的交易明文进行加密,所述验证规则为验证所述验证协议的验证代码。
3.如权利要求2所述的方法,其特征在于,所述跨链交易包括交易密文、加密的对称密钥以及零知识证明;
所述基于所述跨链事件生成跨链交易,包括:
通过所述对称密钥对所述跨链事件的交易明文进行加密,得到所述交易密文;
以所述交易密文为公开输入,以所述交易明文和所述对称密钥为隐私输入,运行预设的零知识证明生成代码,生成所述零知识证明,将所述零知识证明作为所述验证协议;
利用所述目的链跨链网关的第二非对称密钥的第二公钥对所述对称密钥进行加密,得到所述加密的对称密钥。
4.如权利要求3所述的方法,其特征在于,所述方法包括:
向所述中继链发送所述交易密文、所述加密的对称密钥以及所述零知识证明,指示所述中继链运行所述验证规则对应的所述验证代码,对所述零知识证明进行验证。
5.如权利要求3所述的方法,其特征在于,所述方法包括:
向所述中继链发送跨链交易,指示所述中继链对所述验证协议验证通过后,通过所述中继链向所述目的链跨链网关发送所述交易密文和所述加密的对称密钥;
其中,所述加密的对称密钥用于指示所述目的链跨链网关使用所述第二非对称密钥的第二私钥解密所述加密的对称密钥,得到所述对称密钥;所述交易密文用于指示所述目的链跨链网关使用所述对称密钥解密所述交易密文,得到所述交易明文;所述交易明文用于指示所述目的链跨链网关根据所述交易明文中的跨链调用信息向所述目的链发起调用。
6.一种跨链交易的验证方法,其特征在于,应用于中继链,所述方法包括:
接收源链跨链网关发送的跨链交易,所述跨链交易包括验证协议;
根据预设的验证规则对所述验证协议进行验证;
若验证通过,则向目的链跨链网关发送所述跨链交易。
7.如权利要求6所述的方法,其特征在于,所述根据预设的验证规则对所述验证协议进行验证,包括:
获取所述源链跨链网关注册的所述验证规则,所述验证规则为验证零知识证明的验证代码;
运行所述验证代码,对所述零知识证明进行验证;
其中,所述跨链交易包括交易密文、加密的对称密钥以及零知识证明;所述交易密文为源链跨链网关利用对称密钥对跨链事件中的交易明文加密得到的;所述对称密钥为跨链网关生成的密钥对;所述零知识证明为源链跨链网关以所述交易密文为公开输入、以所述交易明文和所述对称密钥为隐私输入,并运行预设的零知识证明生成代码生成的所述验证协议;所述加密的对称密钥为源链跨链网关利用目的链跨链网关的第二非对称密钥的第二公钥对所述对称密钥加密得到的。
8.一种跨链交易的验证方法,其特征在于,应用于目的链跨链网关,所述方法包括:
接收中继链发送的跨链交易,所述跨链交易包括交易密文和加密的对称密钥;
利用第二非对称密钥的第二私钥对所述加密的对称密钥进行解密,得到对称密钥;
利用所述对称密钥解密所述交易密文,得到所述跨链交易的交易明文;
根据所述交易明文中的跨链调用信息,向目的链发起调用。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5或权利要求6至7或权利要求8任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5或权利要求6至7或权利要求8任一项所述的方法。
CN202011630475.0A 2020-12-30 2020-12-30 跨链交易的验证方法、终端设备及可读存储介质 Active CN112822181B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011630475.0A CN112822181B (zh) 2020-12-30 2020-12-30 跨链交易的验证方法、终端设备及可读存储介质
PCT/CN2021/142626 WO2022143798A1 (zh) 2020-12-30 2021-12-29 跨链交易的验证方法、终端设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011630475.0A CN112822181B (zh) 2020-12-30 2020-12-30 跨链交易的验证方法、终端设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN112822181A true CN112822181A (zh) 2021-05-18
CN112822181B CN112822181B (zh) 2022-08-16

Family

ID=75855186

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011630475.0A Active CN112822181B (zh) 2020-12-30 2020-12-30 跨链交易的验证方法、终端设备及可读存储介质

Country Status (2)

Country Link
CN (1) CN112822181B (zh)
WO (1) WO2022143798A1 (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113360547A (zh) * 2021-06-29 2021-09-07 北京百度网讯科技有限公司 跨链查询方法、装置、电子设备及可读存储介质
CN113420090A (zh) * 2021-06-29 2021-09-21 北京百度网讯科技有限公司 跨链处理方法、装置、电子设备及可读存储介质
CN113434883A (zh) * 2021-06-29 2021-09-24 北京百度网讯科技有限公司 跨链处理方法、装置、电子设备及可读存储介质
CN113469689A (zh) * 2021-07-23 2021-10-01 永旗(北京)科技有限公司 一种区块链跨链交易方法及系统
CN114006911A (zh) * 2021-12-31 2022-02-01 杭州趣链科技有限公司 数据处理方法、装置、终端设备及存储介质
CN114298700A (zh) * 2021-12-29 2022-04-08 杭州趣链科技有限公司 区块链交易方法、装置、终端设备及计算机可读存储介质
CN114363416A (zh) * 2021-12-29 2022-04-15 杭州趣链科技有限公司 基于区块链的跨链处理方法、装置、存储介质及服务器
CN114493862A (zh) * 2021-12-29 2022-05-13 杭州趣链科技有限公司 跨链交易的验证方法、装置、电子设备、系统及存储介质
WO2022143798A1 (zh) * 2020-12-30 2022-07-07 杭州趣链科技有限公司 跨链交易的验证方法、终端设备及可读存储介质
CN115204871A (zh) * 2022-06-30 2022-10-18 中国电信股份有限公司 一种区块链跨链交易方法及系统
CN115460142A (zh) * 2021-06-07 2022-12-09 京东科技控股股份有限公司 一种基于跨链交易的路由寻址方法和装置
WO2023116098A1 (zh) * 2021-12-23 2023-06-29 杭州趣链科技有限公司 一种跨链事务处理方法、装置、计算设备和介质

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115051815B (zh) * 2022-08-15 2022-12-02 江苏通付盾区块链科技有限公司 用于区块链异构链之间的跨链数据交互方法、装置
CN115459921B (zh) * 2022-08-25 2024-04-30 浪潮云信息技术股份公司 一种基于代理重加密和有向无环图的跨链方法及系统
CN115499454B (zh) * 2022-09-20 2024-03-22 广西师范大学 基于联盟中继链的农产品数据跨链共享方法
CN115378942B (zh) * 2022-10-10 2022-12-20 北京理工大学 一种区块链的信息跨链交互方法和交互装置
CN115567311B (zh) * 2022-10-12 2023-05-05 贵州电网有限责任公司 一种基于数据信息加密的加密系统及加密方法
CN116562874B (zh) * 2023-04-27 2024-01-02 北京交通大学 一种基于零知识证明的隐私保护跨链交易验证方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107862216A (zh) * 2017-10-13 2018-03-30 布比(北京)网络技术有限公司 用于匿名跨链交易的隐私保护方法、装置和存储介质
CN108288159A (zh) * 2018-03-07 2018-07-17 物数(上海)信息科技有限公司 基于多区块链的跨链交易方法、系统、设备及存储介质
CN110035046A (zh) * 2018-11-16 2019-07-19 阿里巴巴集团控股有限公司 跨区块链的交互系统
CN110288345A (zh) * 2019-06-26 2019-09-27 深圳市网心科技有限公司 跨链通信方法、装置、主链节点及存储介质
US20190340266A1 (en) * 2018-05-01 2019-11-07 International Business Machines Corporation Blockchain implementing cross-chain transactions
CN110766408A (zh) * 2019-10-24 2020-02-07 杭州趣链科技有限公司 异构区块链的跨链交易验证方法、引擎、设备和存储介质
CN110855631A (zh) * 2019-10-24 2020-02-28 南京可信区块链与算法经济研究院有限公司 一种区块链中可监管的零知识验证方法、系统及存储介质
CN111211909A (zh) * 2019-12-30 2020-05-29 深圳大学 一种基于零知识证明的分布式认证方法
CN111666325A (zh) * 2020-05-18 2020-09-15 国网浙江省电力有限公司信息通信分公司 一种跨链接口调用的有效性验证方法
CN112003889A (zh) * 2020-07-10 2020-11-27 南京邮电大学 分布式跨链系统及跨链信息交互与系统访问控制机制

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107248076A (zh) * 2017-06-24 2017-10-13 北京天德科技有限公司 一种双链式跨链交易的区块链互联网模型的核心算法
CN110266655B (zh) * 2019-05-30 2021-11-12 中国工商银行股份有限公司 一种基于区块链的跨链互联方法、设备以及系统
CN110751475A (zh) * 2019-10-24 2020-02-04 杭州趣链科技有限公司 一种区块链交易的跨链方法及系统、设备和存储介质
CN112822181B (zh) * 2020-12-30 2022-08-16 杭州趣链科技有限公司 跨链交易的验证方法、终端设备及可读存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107862216A (zh) * 2017-10-13 2018-03-30 布比(北京)网络技术有限公司 用于匿名跨链交易的隐私保护方法、装置和存储介质
CN108288159A (zh) * 2018-03-07 2018-07-17 物数(上海)信息科技有限公司 基于多区块链的跨链交易方法、系统、设备及存储介质
US20190340266A1 (en) * 2018-05-01 2019-11-07 International Business Machines Corporation Blockchain implementing cross-chain transactions
CN110035046A (zh) * 2018-11-16 2019-07-19 阿里巴巴集团控股有限公司 跨区块链的交互系统
CN110288345A (zh) * 2019-06-26 2019-09-27 深圳市网心科技有限公司 跨链通信方法、装置、主链节点及存储介质
CN110766408A (zh) * 2019-10-24 2020-02-07 杭州趣链科技有限公司 异构区块链的跨链交易验证方法、引擎、设备和存储介质
CN110855631A (zh) * 2019-10-24 2020-02-28 南京可信区块链与算法经济研究院有限公司 一种区块链中可监管的零知识验证方法、系统及存储介质
CN111211909A (zh) * 2019-12-30 2020-05-29 深圳大学 一种基于零知识证明的分布式认证方法
CN111666325A (zh) * 2020-05-18 2020-09-15 国网浙江省电力有限公司信息通信分公司 一种跨链接口调用的有效性验证方法
CN112003889A (zh) * 2020-07-10 2020-11-27 南京邮电大学 分布式跨链系统及跨链信息交互与系统访问控制机制

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李康等: "零知识证明应用到区块链中的技术挑战", 《大数据》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022143798A1 (zh) * 2020-12-30 2022-07-07 杭州趣链科技有限公司 跨链交易的验证方法、终端设备及可读存储介质
CN115460142A (zh) * 2021-06-07 2022-12-09 京东科技控股股份有限公司 一种基于跨链交易的路由寻址方法和装置
CN113420090A (zh) * 2021-06-29 2021-09-21 北京百度网讯科技有限公司 跨链处理方法、装置、电子设备及可读存储介质
CN113434883A (zh) * 2021-06-29 2021-09-24 北京百度网讯科技有限公司 跨链处理方法、装置、电子设备及可读存储介质
CN113360547B (zh) * 2021-06-29 2024-08-06 北京百度网讯科技有限公司 跨链查询方法、装置、电子设备及可读存储介质
CN113434883B (zh) * 2021-06-29 2024-08-06 北京百度网讯科技有限公司 跨链处理方法、装置、电子设备及可读存储介质
CN113420090B (zh) * 2021-06-29 2024-07-19 北京百度网讯科技有限公司 跨链处理方法、装置、电子设备及可读存储介质
CN113360547A (zh) * 2021-06-29 2021-09-07 北京百度网讯科技有限公司 跨链查询方法、装置、电子设备及可读存储介质
CN113469689A (zh) * 2021-07-23 2021-10-01 永旗(北京)科技有限公司 一种区块链跨链交易方法及系统
WO2023116098A1 (zh) * 2021-12-23 2023-06-29 杭州趣链科技有限公司 一种跨链事务处理方法、装置、计算设备和介质
CN114363416B (zh) * 2021-12-29 2024-01-23 杭州趣链科技有限公司 基于区块链的跨链处理方法、装置、存储介质及服务器
CN114493862A (zh) * 2021-12-29 2022-05-13 杭州趣链科技有限公司 跨链交易的验证方法、装置、电子设备、系统及存储介质
CN114363416A (zh) * 2021-12-29 2022-04-15 杭州趣链科技有限公司 基于区块链的跨链处理方法、装置、存储介质及服务器
CN114298700A (zh) * 2021-12-29 2022-04-08 杭州趣链科技有限公司 区块链交易方法、装置、终端设备及计算机可读存储介质
CN114006911A (zh) * 2021-12-31 2022-02-01 杭州趣链科技有限公司 数据处理方法、装置、终端设备及存储介质
CN115204871A (zh) * 2022-06-30 2022-10-18 中国电信股份有限公司 一种区块链跨链交易方法及系统

Also Published As

Publication number Publication date
WO2022143798A1 (zh) 2022-07-07
CN112822181B (zh) 2022-08-16

Similar Documents

Publication Publication Date Title
CN112822181B (zh) 跨链交易的验证方法、终端设备及可读存储介质
CN112446785B (zh) 跨链交易方法、系统、装置、设备和存储介质
CN112737779B (zh) 一种密码机服务方法、装置、密码机及存储介质
EP3025226B1 (en) Media client device authentication using hardware root of trust
CN113285802B (zh) 基于fpga的密钥协商方法及装置
CN113923044A (zh) 一种基于可信执行环境的跨链系统及方法
US8145917B2 (en) Security bootstrapping for distributed architecture devices
CN110570196A (zh) 交易数据处理方法、装置、终端设备以及存储介质
Luong et al. Privacy-preserving blockchain-based healthcare system for IoT devices using zk-SNARK
CN110096894B (zh) 一种基于区块链的数据匿名共享系统及方法
CN107634946A (zh) 一种微服务节点合法性验证方法和装置
CN113420886B (zh) 纵向联邦学习模型的训练方法、装置、设备及存储介质
CN112734423A (zh) 一种基于区块链的交易方法及终端设备
CN116308776A (zh) 基于区块链的交易监管方法、装置、电子设备和存储介质
CN114868359A (zh) 多区块链间轻量通讯协定装置及方法
CN111510462A (zh) 通信方法、系统、装置、电子设备和可读存储介质
CN112910641A (zh) 用于跨链交易监管的验证方法、装置、中继链节点及介质
CN113159767A (zh) 基于区块链的转账处理方法、装置和系统
US20230379146A1 (en) Securing network communications using dynamically and locally generated secret keys
Dörre et al. Practically Efficient Private Set Intersection from Trusted Hardware with Side-Channels
CN115409511B (zh) 一种基于区块链的个人信息保护系统
CN112906061A (zh) 基于区块链的信息处理方法和装置
CN113067822A (zh) 基于区块链的信息处理方法、装置、设备、介质和产品
CN112053159A (zh) 交易数据验证方法、装置、风险控制服务器及业务服务器
CN115549984A (zh) 跨链交易方法、装置、设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant