Blockchain cross-chain transaction trusted verification method

By using cross-chain Merkle trees and verification rules, combined with adapters and cross-chain gateways, the reliability verification problem of heterogeneous blockchains in cross-chain transactions is solved, achieving end-to-end verifiability and data reliability of cross-chain transactions.

CN116739774BActive Publication Date: 2026-05-01UNIV OF ELECTRONICS SCI & TECH OF CHINA
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
UNIV OF ELECTRONICS SCI & TECH OF CHINA
Filing Date
2023-06-13
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

Existing cross-chain transaction verification schemes are mainly based on homogeneous blockchains, making it difficult to verify the reliability of cross-chain transactions, especially in interactions between heterogeneous blockchain platforms, where a universal and trusted verification mechanism is lacking.

Method used

Based on cross-chain Merkle trees, combined with verification rules and verification links, the system configures adapters and cross-chain gateways for each blockchain, utilizes Docker containers to run verification rule compilation services, and performs data verification through identity credential signing and cross-chain Merkle trees to ensure the reliability of the transaction process.

Benefits of technology

It achieves end-to-end verifiability of cross-chain transactions, shields the underlying structural differences between blockchain platforms, ensures the reliability of cross-chain transactions and data, and realizes the reliability of cross-chain transactions throughout their entire lifecycle.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116739774B_ABST
    Figure CN116739774B_ABST
Patent Text Reader

Abstract

The application discloses a blockchain cross-chain transaction credible verification method, an adapter of an access cross-chain gateway is configured for each blockchain, the blockchain sends self verification rules and corresponding verification functions to the adapter and the cross-chain gateway through registration, the adapter saves the verification functions, the cross-chain gateway converts executable files of the verification rules into verification services, each blockchain, the adapter and the cross-chain gateway obtain identity credentials through a cross-chain alliance; the blockchain initiates a cross-chain transaction request to the corresponding adapter, an origin blockchain adapter generates a cross-chain Merkle tree and packs the cross-chain Merkle tree into cross-chain transaction data to forward to a target blockchain through the cross-chain gateway and an adapter of the target blockchain, in the process, each component verifies identity through the identity credentials, and verifies data through the cross-chain Merkle tree, until the transaction is completed. The application realizes the reliability of a complete life cycle of cross-chain transaction based on a cross-chain Merkle tree, in combination with verification rules and a verification link.
Need to check novelty before this filing date? Find Prior Art

Description

Trustworthy verification methods for cross-chain blockchain transactions Technical Field

[0001] This invention belongs to the field of blockchain technology, and more specifically, relates to a trusted verification method for cross-chain transactions in blockchain. Background Technology

[0002] Blockchain technology, as a key component of national digital development, has become an indispensable infrastructure in the construction of a modern digital economy. However, the booming blockchain ecosystem and the growing user base will inevitably lead to interactions between different blockchain platform applications. Simultaneously, the expanding on-chain applications need to build greater network effects based on the value of existing users. Undoubtedly, on-chain application interaction is an unavoidable future trend. Therefore, the entire blockchain ecosystem needs a more universal, convenient, and collaborative interaction method. Building a multi-chain ecosystem with compatibility, flexibility, and usability, and achieving trusted, reliable, and secure cross-chain technology, has become a key focus for the entire industry. Achieving "interconnectivity of all chains" and solving the "data silo" problem has also become one of the hottest development directions for blockchain technology.

[0003] Currently, the reliability of blockchains is limited to the platform itself. However, cross-chain transactions involve interactions between multiple blockchains, which inevitably exceed existing reliability boundaries. How to verify the reliability of data leaving the blockchain is a challenging problem that needs to be solved. Existing cross-chain solutions offer various implementations for transaction verification, but they all presuppose a homogeneous blockchain platform. Therefore, it is necessary to propose a more universal reliable verification mechanism for both homogeneous and heterogeneous blockchains. Summary of the Invention

[0004] The purpose of this invention is to overcome the shortcomings of the prior art and provide a trusted verification method for cross-chain transactions. Based on the cross-chain Merkle tree, the method combines verification rules and verification links to ensure the reliability of transactions during the cross-chain process, thereby achieving the reliability of the entire lifecycle of cross-chain transactions.

[0005] To achieve the above-mentioned objectives, the blockchain cross-chain transaction trusted verification method of the present invention includes the following steps:

[0006] S1: Configure one adapter for each blockchain, and each adapter connects to a cross-chain gateway, where:

[0007] An adapter is an independent process running on the blockchain platform side. It acts as a bridge between the cross-chain gateway and the blockchain, and is used to capture cross-chain requests, convert formats, and collect request execution results.

[0008] Cross-chain gateways are used for inter-chain interactions, including cross-chain information routing and transaction control.

[0009] S2: The blockchain generates a registration request and sends it to the adapter. The registration request includes the verification rules and corresponding verification functions set by the blockchain according to the actual situation.

[0010] The adapter parses the verification function from the registration request and saves it, then forwards the registration request to the cross-chain gateway; it generates the corresponding verification function according to the preset cross-chain Merkle tree generation method and saves it.

[0011] The cross-chain gateway registers the blockchain based on the registration request, parses the verification rules, allocates a Docker container for each blockchain, and then uses the verification rule compilation service to compile the verification rules into several executable files. These executable files then run as services in the Docker containers of the corresponding blockchains. The cross-chain gateway compiles the corresponding verification rules into executable files according to the preset cross-chain Merkle tree generation method and runs them as services in separate Docker containers.

[0012] S3: All blockchains that have successfully registered with the cross-chain gateway constitute a cross-chain alliance, which issues identity credentials to each blockchain, adapter, and cross-chain gateway.

[0013] S4: When the blockchain needs to conduct cross-chain transactions, it generates a cross-chain transaction request, signs it with its own identity credentials, and sends it to the adapter;

[0014] S5: Upon receiving a cross-chain transaction request, the Origin Blockchain Adapter first parses and verifies the identity credential signature of the Origin Blockchain. If the verification fails, it sends an authentication failure message to the blockchain. If the verification succeeds, it verifies the existence and correctness of the cross-chain transaction on the business chain according to the corresponding blockchain's verification function. If the verification fails, it sends a verification failure message to the blockchain. If the verification succeeds, it generates a cross-chain Merkle tree, specifically as follows:

[0015] If the blockchain itself has a transaction Merkle tree and a receipt Merkle tree, a cross-chain Merkle tree root is generated as the parent node of the two root nodes of the transaction Merkle tree and the receipt Merkle tree, thereby merging the transaction Merkle tree and the receipt Merkle tree into one, forming a cross-chain Merkle tree.

[0016] If the blockchain does not have a transaction Merkle tree and a receipt Merkle tree, the adapter generates a transaction Merkle tree and a receipt Merkle tree respectively according to the transaction information in the blockchain using a preset method, and then merges them to obtain a cross-chain Merkle tree;

[0017] Then the Origin Blockchain Adapter packages the cross-chain transaction request and cross-chain Merkle tree of the Origin Blockchain to obtain cross-chain transaction data, signs it with its own identity credentials, and sends it to the cross-chain gateway.

[0018] S6: After receiving cross-chain transaction data, the cross-chain gateway first parses and verifies the identity credential signature of the adapter. If the verification fails, it sends an authentication failure message to the adapter. If the verification passes, it parses the cross-chain transaction request and the cross-chain Merkle tree, and sends the cross-chain Merkle tree to the Origin Blockchain's Docker container for verification. If the verification fails, it sends a data verification failure message to the Origin Blockchain through the Origin Blockchain adapter. If the verification passes, it forwards the cross-chain transaction data to the adapter corresponding to the target blockchain of the request after signing it with the identity credential of the cross-chain gateway.

[0019] S7: After receiving cross-chain transaction data, the target blockchain adapter first parses and verifies the identity credential signature of the cross-chain gateway. If the verification fails, it sends an identity verification failure message to the cross-chain gateway. If the verification passes, it parses the cross-chain transaction request and the cross-chain Merkle tree, and verifies the cross-chain Merkle tree. If the verification fails, it sends a data verification failure message to the origin blockchain through the cross-chain gateway and the origin blockchain adapter. If the verification passes, it forwards the cross-chain transaction request to the target blockchain after signing it with its own identity credential.

[0020] S8: After receiving a cross-chain transaction request, the target blockchain first parses and verifies the identity credential signature of the target blockchain adapter. If the verification fails, it sends a message indicating that the identity verification failed to the target blockchain adapter. If the verification passes, it executes the cross-chain transaction request. After successfully writing a block, it generates an execution result receipt and sends it back to the target blockchain adapter after signing it with its own identity credential.

[0021] S9: After receiving the execution result receipt, the target blockchain adapter first parses and verifies the identity credential signature of the target blockchain. If the verification fails, it sends a message indicating that the identity verification failed to the target blockchain. If the verification passes, it merges the execution result receipt into the cross-chain Merkle tree corresponding to the cross-chain transaction request, packages the execution result receipt and the updated cross-chain Merkle tree to obtain the cross-chain transaction receipt data, signs it with its own identity credential, and sends it back to the cross-chain gateway.

[0022] S10: After receiving the cross-chain transaction receipt data, the cross-chain gateway first parses and verifies the identity credential signature of the target blockchain adapter. If the verification fails, it sends an identity verification failure message to the target blockchain adapter. If the verification succeeds, it parses the execution result receipt and the updated cross-chain Merkle tree, verifies the updated cross-chain Merkle tree, and sends a data verification failure message to the target blockchain through the target blockchain adapter if the verification fails. If the verification succeeds, it saves the execution result receipt and ends the cross-chain transaction.

[0023] This invention discloses a trusted verification method for cross-chain transactions in blockchain. Each blockchain is configured with an adapter, and each adapter connects to a cross-chain gateway. The blockchain registers and sends its verification rules and corresponding verification functions to the adapter and the cross-chain gateway. The adapter stores the verification functions. The cross-chain gateway allocates a Docker container for each blockchain to convert the executable file of the verification rules into a verification service. Each blockchain, adapter, and cross-chain gateway obtains identity credentials through a cross-chain consortium. The blockchain initiates a cross-chain transaction request to the corresponding adapter. The originating blockchain adapter generates a cross-chain Merkle tree and packages the originating blockchain's cross-chain transaction request and the cross-chain Merkle tree to obtain cross-chain transaction data, which is then sent to the cross-chain gateway. The cross-chain gateway forwards the cross-chain transaction data to the target blockchain through the target blockchain's adapter. During this process, each component verifies its identity using identity credentials and performs data verification using the cross-chain Merkle tree until the transaction is completed.

[0024] The present invention has the following beneficial effects:

[0025] 1) This invention uses cross-chain Merkle trees, a universal verification data result, to shield the differences between blockchain platforms caused by different underlying structures, enabling cross-chain parties to verify transactions in a unified way without modifying the underlying implementation.

[0026] 2) This invention ensures the reliability and verifiability of data flowing out of the business chain by verifying rules from the perspective of the periphery of the business chain;

[0027] 3) In the process of cross-chain transactions, each step of data flow is verified for reliability, thus realizing the full-link verifiability of cross-chain requests. Attached Figure Description

[0028] Figure 1 is a flowchart of a specific implementation of the blockchain cross-chain transaction trusted verification method of the present invention;

[0029] Figure 2 is a diagram of the cross-chain architecture based on adapters and cross-chain gateways in this invention;

[0030] Figure 3 is a schematic diagram of the verification service of the cross-chain gateway;

[0031] Figure 4 is a schematic diagram of the process of the adapter generating and verifying identity credentials in this embodiment;

[0032] Figure 5 is an example diagram of merging the transaction Merkle tree and the receipt Merkle tree;

[0033] Figure 6 is an example diagram of the cross-chain Merkle tree of the Fabric blockchain in this embodiment;

[0034] Figure 7 is a flowchart of the process from initiating a cross-chain transaction to the end of the transaction in this invention. Detailed Implementation

[0035] The specific embodiments of the present invention will now be described with reference to the accompanying drawings to enable those skilled in the art to better understand the invention. It should be particularly noted that in the following description, detailed descriptions of known functions and designs that might obscure the main content of the invention will be omitted here.

[0036] Example

[0037] Figure 1 is a flowchart illustrating a specific implementation of the blockchain cross-chain transaction trusted verification method of the present invention. As shown in Figure 1, the specific steps of the blockchain cross-chain transaction trusted verification method of the present invention include:

[0038] S101: Configure the adapter and cross-chain gateway:

[0039] To better verify cross-chain transactions, this invention configures adapters and cross-chain gateways between different blockchains. Figure 2 is a cross-chain architecture diagram based on adapters and cross-chain gateways in this invention. As shown in Figure 2, this invention configures one adapter for each blockchain, and each adapter connects to a cross-chain gateway, wherein:

[0040] An adapter is a separate process running on the blockchain platform side. It acts as a bridge between the cross-chain gateway and the blockchain, and is used to capture cross-chain requests, convert their formats, and collect the results of request execution.

[0041] Cross-chain gateways are used for inter-chain interactions, including cross-chain information routing and transaction control.

[0042] S102: Blockchain Registration

[0043] The blockchain generates a registration request and sends it to the adapter. The registration request includes the verification rules and corresponding verification functions set by the blockchain according to the actual situation. Generally, the verification rules not only need to declare how to verify signatures or check trust endorsements, but also need to provide specific verification functions for transactions and receipts on this chain.

[0044] The adapter parses and saves the verification function from the registration request, and then forwards the registration request to the cross-chain gateway. In addition, the adapter needs to generate and save the corresponding verification function according to the preset cross-chain Merkle tree generation method.

[0045] The cross-chain gateway registers the blockchains based on registration requests, parses the verification rules, allocates a Docker container to each blockchain, and then uses a verification rule compilation service (a specific Docker container that supports multi-language compilation) to compile the verification rules into several executable files. These executable files then run as services within the corresponding blockchain's Docker container. The cross-chain gateway compiles the corresponding verification rules into executable files according to a pre-defined cross-chain Merkle tree generation method and runs them as services in separate Docker containers. In other words, each blockchain connected to the cross-chain gateway corresponds to a transaction verification container; when a transaction occurs on the blockchain, it is verified by the corresponding container. Figure 3 illustrates the verification service of the cross-chain gateway.

[0046] S103: Issuance of Identity Certificates:

[0047] All blockchains that have successfully registered with the cross-chain gateway constitute a cross-chain consortium, which issues identity credentials to each blockchain, adapter, and cross-chain gateway.

[0048] In this invention, any component participating in cross-chain transactions needs to obtain an identity credential. All subsequent cross-chain transaction-related data needs to be signed by the certificate to which that identity belongs. All cross-chain participants within the cross-chain alliance can verify the signature as needed.

[0049] From a role perspective, a blockchain acts as a user within the overall cross-chain architecture. Especially for certain blockchains, the identity attributes and on-chain data have strict confidentiality requirements, making blockchain privacy protection a crucial consideration. Therefore, in this embodiment, based on the zero-knowledge proof protocol library zk-SNARK (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge), an identity authentication scheme that protects user privacy is designed. The specific method is as follows:

[0050] The cross-chain consortium acts as a Third Trust Party (TTP) because it inherently possesses mutual trust due to the participation of various cross-chain parties. The consortium generates a key pair based on the agreed-upon secret data: a proving key (pk) and a verification key (vk). The proving key (pk) is used during the generation of identity credentials, while the verification key (vk) is used during the verification of those credentials. The blockchain, adapter, and cross-chain gateway each generate a zero-knowledge credential based on the proving key (pk) as their identity credentials. When sending data, they sign the credential using their respective private keys and package it together. Other components verify the identity credential upon receiving data. Once verification is successful, they use the public key and verification key (vk) to complete the identity verification process.

[0051] Figure 4 is a schematic diagram of the adapter generating and verifying identity credentials in this embodiment. As shown in Figure 4, the specific process of the adapter generating and verifying identity credentials is as follows:

[0052] 1) The cross-chain consortium transforms the identity verification problem into R1CS (Rank-1 Constraint Systems) constraints, and passes the security parameters negotiated by each business chain in the cross-chain architecture into the GenKey function to generate a public proof key pk and verification key vk. The adapter can obtain pk and vk when registering identity.

[0053] 2) The adapter uses the proof generation function in zk-SNARK to generate a proof. During proof generation, the following assertions are made: 1) The private key in the private data and the public key in the public data are paired; 2) The identity attribute information corresponds to the publicly available hash value. Furthermore, the proof generation function is completely open source and compiled by the user. The proof generation process is also performed locally, so there is no need to worry about the adapter's or the corresponding blockchain's identity being leaked during this stage. After successful proof generation, it can serve as the adapter's identity credential. The adapter can then use its private key when signing data, and when forwarding data signatures, the proof must be forwarded simultaneously to verify the integrity and correctness of the signature.

[0054] 3) The cross-chain gateway or blockchain that receives the adapter data acts as a validator and can use the verification function and verification key vk to verify the validity of the proof. Once the verification is successful, the adapter public key can be used for signature verification.

[0055] S104: Origin Blockchain Initiates Cross-Chain Transactions:

[0056] When a blockchain needs to conduct cross-chain transactions, it generates a cross-chain transaction request, signs it with its own identity credentials, and sends it to the adapter.

[0057] S105: Origin Blockchain Adapter Generates Cross-Chain Merkle Tree:

[0058] For a blockchain transaction, verification includes two dimensions: transaction existence and transaction execution correctness. Transaction existence refers to a transaction being recorded in the world state on the blockchain where the transaction took place, successfully added to a block, and successfully retrieved within the block. This dimension ensures that the assets or data declared by the cross-chain parties truly exist within their respective business chains. Transaction execution correctness means that the transaction, based on its existence, was successfully executed; that is, the cross-chain parties reached a consensus on the required business operations on their blockchain and successfully added the transaction to the block. Specifically, transaction existence can be verified through the Merkle root of transactions within a block, while transaction execution correctness can be verified through the Merkle root of the transaction receipt.

[0059] In this invention, upon receiving a cross-chain transaction request, the Origin Blockchain Adapter first parses and verifies the identity credential signature of the Origin Blockchain. If the verification fails, it sends an authentication failure message to the blockchain. If the verification succeeds, it verifies the existence and correctness of the cross-chain transaction on the business chain according to the verification function of the corresponding blockchain. If the verification fails, it sends a verification failure message to the blockchain. If the verification succeeds, it generates a cross-chain Merkle tree. The specific method is as follows:

[0060] If the blockchain itself has a transaction Merkle tree and a receipt Merkle tree, a cross-chain Merkle tree root is generated as the parent node of the two root nodes of the transaction Merkle tree and the receipt Merkle tree, thereby merging the transaction Merkle tree and the receipt Merkle tree into one, forming a cross-chain Merkle tree.

[0061] If the blockchain does not have a transaction Merkle tree and a receipt Merkle tree, the adapter generates a transaction Merkle tree and a receipt Merkle tree respectively according to the transaction information in the blockchain using a preset method, and then merges them to obtain a cross-chain Merkle tree.

[0062] Then, the Origin Blockchain Adapter packages the cross-chain transaction request and cross-chain Merkle tree of the Origin Blockchain to obtain cross-chain transaction data, signs it with its own identity credentials, and sends it to the cross-chain gateway.

[0063] Figure 5 is an example diagram of merging the transaction Merkle tree and the receipt Merkle tree. As shown in Figure 5, the root node of the transaction Merkle tree and the receipt Merkle tree can be used as a child node of the cross-chain Merkle tree root to generate the cross-chain Merkle tree root. In this embodiment, taking the Fabric blockchain as an example, the specific method of the adapter generating the transaction Merkle tree and the receipt Merkle tree is explained: The adapter obtains a block from the blockchain and finds the corresponding transaction information TransactionAction and the corresponding proposal response ProposalResponsePayload in the payload field of the block through the transaction identifier TxId. Then, it verifies the signature to ensure the correctness of the data, calculates the corresponding Hash value respectively, and generates the transaction Merkle tree and the receipt Merkle tree. Finally, it generates the cross-chain Merkle tree together with the DataHash field in the block header. Figure 6 is an example diagram of the cross-chain Merkle tree of the Fabric blockchain in this embodiment.

[0064] S106: Cross-chain gateway verification:

[0065] After receiving cross-chain transaction data, the cross-chain gateway first parses and verifies the identity credential signature of the adapter. If the verification fails, it sends an authentication failure message to the adapter. If the verification succeeds, it parses the cross-chain transaction request and the cross-chain Merkle tree, and sends the cross-chain Merkle tree to the corresponding Docker container for verification. If the verification fails, it sends a data verification failure message to the Origin Blockchain through the Origin Blockchain adapter. If the verification succeeds, it forwards the cross-chain transaction data to the adapter corresponding to the target blockchain of the request after signing it with the identity credential of the cross-chain gateway.

[0066] S107: Target Blockchain Adapter Verification:

[0067] Upon receiving cross-chain transaction data, the target blockchain adapter first parses and verifies the identity credential signature of the cross-chain gateway. If the verification fails, it sends an authentication failure message to the cross-chain gateway. If the verification succeeds, it parses the cross-chain transaction request and the cross-chain Merkle tree, and verifies the cross-chain Merkle tree. If the verification fails, it sends a data verification failure message to the origin blockchain through the cross-chain gateway and the origin blockchain adapter. If the verification succeeds, it forwards the cross-chain transaction request to the target blockchain after signing it with its own identity credential.

[0068] S108: The target blockchain executes a cross-chain transaction request.

[0069] After receiving a cross-chain transaction request, the target blockchain first parses and verifies the identity credential signature of the target blockchain adapter. If the verification fails, it sends a message indicating that the identity verification failed to the target blockchain adapter. If the verification succeeds, it executes the cross-chain transaction request, generates an execution result receipt after successfully writing a block, and sends it back to the target blockchain adapter after signing it with its own identity credential.

[0070] S109: Target blockchain adapter returns execution results:

[0071] After receiving the execution result receipt, the target blockchain adapter first parses and verifies the identity credential signature of the target blockchain. If the verification fails, it sends a message indicating that the identity verification failed to the target blockchain. If the verification succeeds, it merges the execution result receipt into the cross-chain Merkle tree corresponding to the cross-chain transaction request, packages the execution result receipt and the updated cross-chain Merkle tree to obtain the cross-chain transaction receipt data, signs it with its own identity credential, and sends it back to the cross-chain gateway.

[0072] S110: Cross-chain gateway verification receipt:

[0073] After receiving the cross-chain transaction receipt data, the cross-chain gateway first parses and verifies the identity credential signature of the target blockchain adapter. If the verification fails, it sends an authentication failure message to the target blockchain adapter. If the verification succeeds, it parses the execution result receipt and the updated cross-chain Merkle tree, verifies the updated cross-chain Merkle tree, and if the verification fails, it sends a data verification failure message to the target blockchain through the target blockchain adapter. If the verification succeeds, it saves the execution result receipt and ends the cross-chain transaction.

[0074] Figure 7 is a flowchart of the process from initiating a cross-chain transaction to the completion of the transaction in this invention. As shown in Figure 7, this invention, based on verification rules and Merkle trees, ensures the reliability and verifiability of data flowing out of the business chain. Furthermore, through the verification modules of each component, a complete link is formed and connected to verify the full-link verifiability of the cross-chain request, thus achieving a closed loop of reliability verification.

[0075] Although the illustrative specific embodiments of the present invention have been described above to enable those skilled in the art to understand the invention, it should be understood that the invention is not limited to the scope of the specific embodiments. For those skilled in the art, various changes are obvious as long as they are within the spirit and scope of the invention as defined and determined by the appended claims, and all inventions utilizing the concept of the present invention are protected.

Claims

1. A trusted verification method for cross-chain transactions in blockchain, characterized in that, Includes the following steps: S1: Configure an adapter for each blockchain, with each adapter connecting to a cross-chain gateway. The adapter is an independent process running on the blockchain platform, acting as a bridge between the cross-chain gateway and the blockchain, handling cross-chain request capture, format conversion, and request execution result collection. The cross-chain gateway performs inter-chain interaction, including cross-chain information routing and transaction control. S2: The blockchain generates a registration request and sends it to the adapter. The registration request includes verification rules and corresponding verification functions set by the blockchain based on actual conditions. The adapter parses the verification functions from the registration request, saves them, and then forwards the registration request to the cross-chain gateway. Based on the preset cross-chain Merkle tree... The generation method generates and saves the corresponding verification function; the cross-chain gateway registers the blockchain according to the registration request, parses the verification rules, allocates a Docker container for each blockchain, and then uses the verification rule compilation service to compile the verification rules into several executable files. These executable files then run as services in the corresponding blockchain's Docker container; the cross-chain gateway compiles the corresponding verification rules into executable files according to the preset cross-chain Merkle tree generation method and runs them as services in separate Docker containers; S3: All blockchains successfully registered with the cross-chain gateway constitute a cross-chain alliance, which then distributes data to each blockchain and appropriate... S4: When the blockchain needs to conduct a cross-chain transaction, it generates a cross-chain transaction request, signs it with its own identity credential, and sends it to the adapter; S5: Upon receiving the cross-chain transaction request, the origin blockchain adapter first parses and verifies the identity credential signature of the origin blockchain. If the verification fails, it sends an authentication failure message to the blockchain. If the verification passes, it verifies the existence and correctness of the cross-chain transaction request on the business chain according to the verification function of the corresponding blockchain. If the verification fails, it sends a verification failure message to the blockchain. If the verification passes, it generates a cross-chain Merkle tree. The specific method is: if the region... If the blockchain itself has a transaction Merkle tree and a receipt Merkle tree, a cross-chain Merkle tree root is generated, serving as the parent node of both the transaction Merkle tree and the receipt Merkle tree root nodes. This merges the transaction Merkle tree and the receipt Merkle tree into one, forming the cross-chain Merkle tree. If the blockchain does not have a transaction Merkle tree and a receipt Merkle tree, the adapter generates the transaction Merkle tree and the receipt Merkle tree respectively according to the transaction information in the blockchain using a preset method, and then merges them to obtain the cross-chain Merkle tree. Then, the origin blockchain adapter packages the cross-chain transaction request and the cross-chain Merkle tree from the origin blockchain to obtain cross-chain transaction data, signs it with its own identity credentials, and sends it to the cross-chain gateway.S6: After receiving cross-chain transaction data, the cross-chain gateway first parses and verifies the identity credential signature of the adapter. If the verification fails, it sends an authentication failure message to the adapter. If the verification succeeds, it parses the cross-chain transaction request and the cross-chain Merkle tree, and sends the cross-chain Merkle tree to the Origin Blockchain's Docker container for verification. If the verification fails, it sends a data verification failure message to the Origin Blockchain through the Origin Blockchain adapter. If the verification succeeds, it forwards the cross-chain transaction data, signed with the cross-chain gateway's identity credential, to the adapter corresponding to the target blockchain of the request. S7: Target Blockchain Adaptation Upon receiving cross-chain transaction data, the device first parses and verifies the identity credential signature of the cross-chain gateway. If the verification fails, it sends an authentication failure message to the cross-chain gateway. If the verification succeeds, it parses the cross-chain transaction request and the cross-chain Merkle tree, verifies the cross-chain Merkle tree, and if the verification fails, it sends a data verification failure message to the origin blockchain through the cross-chain gateway and the origin blockchain adapter. If the verification succeeds, it forwards the cross-chain transaction request to the target blockchain after signing it with its own identity credential. S8: Upon receiving the cross-chain transaction request, the target blockchain first parses and verifies the identity credential signature of the target blockchain adapter. If the verification fails, a message indicating identity verification failure is sent to the target blockchain adapter. If the verification succeeds, the cross-chain transaction request is executed. After successful block creation, an execution result receipt is generated, signed with its own identity credentials, and sent back to the target blockchain adapter. S9: Upon receiving the execution result receipt, the target blockchain adapter first parses and verifies the identity credential signature of the target blockchain. If the verification fails, a message indicating identity verification failure is sent to the target blockchain. If the verification succeeds, the execution result receipt is merged into the cross-chain Merkle tree corresponding to the cross-chain transaction request. The execution result receipt and the updated cross-chain Merkle tree are then linked together. The system receives the cross-chain transaction receipt data, signs it using its own identity credentials, and sends it back to the cross-chain gateway. S10: Upon receiving the cross-chain transaction receipt data, the cross-chain gateway first parses and verifies the identity credential signature of the target blockchain adapter. If the verification fails, it sends an authentication failure message to the target blockchain adapter. If the verification succeeds, it parses the execution result receipt and the updated cross-chain Merkle tree, verifies the updated Merkle tree, and if the verification fails, it sends a data verification failure message to the target blockchain through the target blockchain adapter. If the verification succeeds, it saves the execution result receipt and ends the cross-chain transaction.

2. The blockchain cross-chain transaction trusted verification method according to claim 1, characterized in that, In step S3, the identity credential is generated based on a zero-knowledge credential. Specifically, the cross-chain consortium generates a key pair based on the secret data agreed upon by all parties involved in the cross-chain process: a proof key pk and a verification key vk. The blockchain, adapter, and cross-chain gateway each generate a zero-knowledge credential based on the proof key pk as the identity credential. When sending data, the corresponding private key is used to sign the data, and the identity credential is packaged together with the data. When other components receive the data, they verify the identity credential. After successful verification, the corresponding public key and verification key vk are used to verify the signature, thus completing the identity verification.

Citation Information

Patent Citations

  • Block chain cross-chain system and method

    CN113452781A

  • Block chain cross-chain security access method and device

    CN114499898A