Efficient and private digital asset transaction
A two-layer blockchain structure with rollup networks and a verification mechanism addresses scalability and privacy issues in digital asset transactions, ensuring secure and efficient execution and verification.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- MICROSOFT TECHNOLOGY LICENSING LLC
- Filing Date
- 2025-01-23
- Publication Date
- 2026-07-30
AI Technical Summary
Blockchain transaction processing efficiency issues hinder large-scale applications, particularly in fields like finance and healthcare, due to the need for improved scalability and privacy in digital asset transactions.
A two-layer structure is implemented, with multiple rollup networks on layer 2 and a blockchain network on layer 1, where transactions are divided into sub-transactions executed by participant-hosted rollup networks, generating proofs, and verified through two stages to ensure privacy and accuracy.
Enhances privacy protection by keeping transaction data private and ensures secure, comprehensive verification of transactions without exposing sensitive information, improving the security and efficiency of digital asset transactions.
Smart Images

Figure CN2025074137_30072026_PF_FP_ABST
Abstract
Description
EFFICIENT AND PRIVATE DIGITAL ASSET TRANSACTIONBACKGROUND
[0001] Blockchain is a distributed infrastructure and computing paradigm that utilizes chained-block data structures to verify and store data, distributed consensus algorithms to generate and update data, cryptographic techniques to ensure secure data transmission and access control, and smart contracts composed of automated script code to program and manipulate data. Blockchain can maintain a secure and decentralized record of transactions, and securely store records across a network of computers in a way that is transparent, immutable, and resistant to tampering.SUMMARY
[0002] This Summary is provided to introduce a selection of concepts that are further described below in the Detailed Description. It is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
[0003] Embodiments of the present disclosure propose a method, apparatus and computer program product for digital asset transaction. A transaction order for a transaction of digital asset may be received, the transaction order containing a set of initial transaction parameters. The transaction may be divided into multiple sub-transactions based on the set of initial transaction parameters. For each sub-transaction in the multiple sub-transactions, the sub-transaction may be executed, to obtain an execution result of the sub-transaction. A proof for the sub-transaction may be generated based on the execution result. The transaction may be verified with multiple execution results and multiple proofs corresponding to the multiple sub-transactions.
[0004] Furthermore, the embodiments of the present disclosure also propose a digital asset transaction system comprising multiple rollup networks on layer 2 and a blockchain network on layer 1. Each rollup network in the multiple rollup networks can be for: receiving a transaction order for a transaction of digital asset, the transaction order containing a set of initial transaction parameters; dividing the transaction into multiple sub-transactions based on the set of initial transaction parameters; executing a sub-transaction in the multiple sub-transactions, to obtain an execution result of the sub-transaction; and generating a proof for the sub-transaction based on the execution result. The blockchain network can be for: verifying the transaction with multiple execution results and multiple proofs corresponding to the multiple sub-transactions.
[0005] It should be noted that the above one or more aspects comprise the features hereinafter fully described and particularly pointed out in the claims. The following description and the drawings set forth in detail certain illustrative features of the one or more aspects. These features are only indicative of the various ways in which the principles of various aspects may be employed, and this disclosure is intended to include all such aspects and their equivalents.BRIEF DESCRIPTION OF THE DRAWINGS
[0006] The disclosed aspects will hereinafter be described in connection with the appended drawings that are provided to illustrate and not to limit the disclosed aspects.
[0007] FIG. 1 illustrates an exemplary digital asset transaction system according to an embodiment of the present disclosure.
[0008] FIG. 2 illustrates an exemplary process for digital asset transaction according to an embodiment of the present disclosure.
[0009] FIG. 3 illustrates an exemplary process for executing a sub-transaction according to an embodiment of the present disclosure.
[0010] FIG. 4 illustrates an exemplary process for verifying the execution conformance of a transaction according to an embodiment of the present disclosure.
[0011] FIG. 5 is a flowchart of an exemplary method for digital asset transaction according to an embodiment of the present disclosure.
[0012] FIG. 6 illustrates an exemplary digital asset transaction system according to an embodiment of the present disclosure.
[0013] FIG. 7 illustrates an exemplary apparatus for digital asset transaction according to an embodiment of the present disclosure.DETAILED DESCRIPTION
[0014] The present disclosure will now be discussed with reference to several example implementations. It is to be understood that these implementations are discussed only for enabling those skilled in the art to better understand and thus implement the embodiments of the present disclosure, rather than suggesting any limitations on the scope of the present disclosure.
[0015] Blockchain has been widely applied in various fields, e.g., finance, healthcare, supply chain, etc. However, due to the transaction processing efficiency issues of the blockchain, it is difficult to support large-scale applications. In recent years, some blockchain scaling solutions have been proposed. Zero-Knowledge Rollup (or simply ZK-rollup) is considered one of the most promising scaling solution for the blockchain. ZK-rollup is a layer 2 scaling solution that takes contract computation and transaction execution off-chain, thereby reducing the amount of data that has to be posted to the blockchain. In addition, zero-knowledge proofs are employed to prove the validity of the contract computation and the transaction execution.
[0016] Embodiments of the present disclosure propose efficient and private digital asset transaction. Herein, a digital asset refers to digitally stored content that comes with a distinct usage right or distinct permission for use. By way of example but not limitation, digital assets may include software, digital document, audio content, video content, digital currency, digital bond, intellectual property right, etc. The digital asset transactions can include, e.g., digital asset issuance, digital asset transfer, digital asset trading, etc. The proposed efficient and private digital asset transaction can be executed through a digital asset transaction system proposed by the embodiments of the present disclosure. The proposed digital asset transaction system may be built based on the ZK-rollup approach, and may have a two-layer structure. Multiple rollup networks may be located on layer 2, and a blockchain network may be located on layer 1.
[0017] Each rollup network in the multiple rollup networks can be hosted by a participant involved in digital asset transaction separately, and take charge of transaction execution and proof generation. The participant involved in the transaction may be an institution or entity, such as central bank, commercial bank, government regulator, etc. A transaction order for a transaction of digital asset may be sent to a rollup network. The transaction order may contain a set of initial transaction parameters of the transaction. The embodiments of the present disclosure propose to divide the transaction into multiple sub-transactions based on the set of initial transaction parameters. For example, multiple participants involved in the transaction may be determined based on the set of initial transaction parameters. The transaction may then be divided into multiple sub-transactions corresponding to the multiple participants. The transaction order may be forwarded to other rollup networks hosted by other participants. Each rollup network may execute a sub-transaction in the multiple sub-transactions, to obtain an execution result of the sub-transaction. The execution result may be a hash value calculated based on transaction parameters associated with the sub-transaction. The rollup network may also generate a proof for the sub-transaction based on the execution result of the sub-transaction. The multiple execution results and the multiple proofs corresponding to the multiple sub-transactions may be submitted to the blockchain network for verification.
[0018] In the above process, the transaction is divided into the multiple sub-transactions corresponding to the multiple participants involved in the transaction. Each sub-transaction is executed by a rollup network hosted by a participant corresponding to the sub-transaction. The technical effects of this approach lie in keeping private transaction data and private user data of each participant within this participant, avoiding leaking it to other participant. In this way, the privacy protection of the transaction can be enhanced.
[0019] The blockchain network can take charge of the consensus, correctness and security of the whole system. The blockchain network may verify the transaction with the multiple execution results and the multiple proofs corresponding to the multiple sub-transactions. The embodiments of the present disclosure propose to verify the transaction through two stages. At the first stage, the execution correctness of each sub-transaction in the multiple sub-transactions may be verified with an execution result and a proof corresponding to the sub-transaction. At the second stage, the execution conformance of the transaction may be verified based on a predefined execution result of the transaction and an actual execution result of the transaction. The predefined execution result of the transaction may be a hash value calculated based on the set of initial transaction parameters of the transaction. This hash value may be calculated by a rollup network in the multiple rollup networks. The actual execution result of the transaction may be a hash value of the multiple execution results of the multiple sub-transactions. The multiple execution results are provided by the multiple rollup networks. If the actual execution result is equal to the predefined execution result, it may be determined that the execution of the transaction conforms to the set of initial transaction parameters. In response to determining that all the sub-transactions were executed correctly, and determining that the execution of the transaction conforms to the set of initial transaction parameters, it may be determined that the transaction is executed successfully. In this case, the transaction may be marked as successful, and the execution result of the transaction may be recorded in the blockchain network. The execution result recorded in the blockchain network cannot be tampered.
[0020] In the above process, the transaction is verified through two stages, including the first stage of verifying whether each sub-transaction was executed correctly and the second stage of verifying whether the execution of the whole transaction conforms to the set of initial transaction parameters. The technical effects of this approach lie in accurately and comprehensively verifying the execution of transactions, and improving the security of the digital asset transaction system. Moreover, only the cryptographic proofs and the hash values such as the multiple execution results are submitted to the blockchain network, which avoids the public exposure of private data, while ensuring that the transactions can still be verified.
[0021] Various embodiments of the present disclosure will hereinafter be described in detail in connection with the appended drawings.
[0022] FIG. 1 illustrates an exemplary digital asset transaction system 100 according to an embodiment of the present disclosure. The digital asset transaction system 100 may have a two-layer structure. Multiple rollup networks, i.e., a rollup network 110-1 to a rollup network 110-N (N≥2) , may be located on layer 2. The rollup network can communicate with each other via a private network (not illustrated) . A blockchain network 120 may be located on layer 1.
[0023] Each rollup network 110-n (1≤n≤N) in the multiple rollup networks can be hosted by a participant involved in digital asset transaction, and take charge of transaction execution and proof generation. The participant involved in the transaction may be an institution or entity, such as central bank, commercial bank, government regulator, etc. A transaction order for a transaction of digital asset may be sent to a rollup network. The transaction order may contain a set of initial transaction parameters of the transaction. For example, when a user want to transfer digital currency between two banks, the transaction order may be sent to a rollup network corresponding to a sender bank with which the user is registered.
[0024] The rollup network 110-n may comprise a transaction executer 112-n, which may receive the transaction order of the transaction, and divide the transaction into multiple sub-transactions based on the set of initial transaction parameters. For example, multiple participants involved in the transaction may be determined based on the set of initial transaction parameters. The transaction may then be divided into multiple sub-transactions corresponding to the multiple participants. The transaction order may be forwarded to other rollup networks hosted by other participants. The transaction executer 112-n in each rollup network 110-n may execute a sub-transaction in the multiple sub-transactions, to obtain an execution result of the sub-transaction.
[0025] The rollup network 110-n may also comprise a proof generation circuit 114-n, which can generate a proof for the sub-transaction based on the execution result of the sub-transaction. The proof generation circuit 114-n may be a known zero-knowledge proof generation circuit, and the proof may be a zero-knowledge proof. The generated proof can be used later to verify whether the sub-transaction was executed correctly without revealing the private data of the sub-transaction or the transaction. Multiple execution results and multiple proofs corresponding to the multiple sub-transactions may be submitted to the blockchain network 120 for verification.
[0026] The blockchain network 120 can take charge of the consensus, correctness and security of the whole system. The blockchain network 120 may verify the transaction with multiple execution results and multiple proofs corresponding to the multiple sub-transactions. The blockchain network 120 may comprise multiple proof verifiers, i.e., a proof verifier 122-1 to a proof verifier 122-N, and a bundle verifier 124.
[0027] Each proof verifier 122-n in the multiple proof verifiers may correspond to a rollup network 110-n in the multiple rollup networks, and verify the execution correctness of a sub-transaction corresponding to the rollup network 110-n with an execution result and a proof corresponding to the sub-transaction. As an example, the proof verifier 122-n may be a zero-knowledge proof verifier that performs the verification with zero-knowledge proofs.
[0028] The bundle verifier 124 may verify the execution conformance of the transaction based on a predefined execution result of the transaction and an actual execution result of the transaction. The predefined execution result of the transaction may be a hash value calculated based on the set of initial transaction parameters of the transaction. This hash value may be calculated by a rollup network in the multiple rollup networks. The actual execution result of the transaction may be a hash value of the multiple execution results. The multiple execution results are provided by the multiple rollup networks. If the actual execution result is equal to the predefined execution result, it may be determined that the execution of the transaction conforms to the set of initial transaction parameters. The bundle verifier 124 may determine whether the transaction is executed successfully based on the verification results of the execution correctness of the multiple sub-transactions and the execution conformance of the transaction. In response to determining that all the sub-transactions were executed correctly, and determining that the execution of the transaction conforms to the set of initial transaction parameters, it may be determined that the transaction is executed successfully. In this case, the transaction may be marked as successful, and the execution result of the transaction may be recorded in the blockchain network. The execution result recorded in the blockchain network cannot be tampered.
[0029] It should be appreciated that the digital asset transaction system 100 illustrated in FIG. 1 is merely an example of the digital asset transaction system. Depending on actual application requirements, the digital asset transaction system may have any other structure and may comprise more or fewer components. Moreover, each component in the digital asset transaction system 100 may perform other operations in addition to the above operations. For example, in FIG. 1, only the rollup network 110-1 to the rollup network 110-N and the blockchain network 120 are illustrated, but the embodiments of the present disclosure are not limited to this. In some embodiments, the digital asset transaction system 100 may further comprise a central server which takes charge of transaction division and sub-transaction distribution. In this case, the transaction order for the transaction may be forwarded to the central server. The central server can divide the transaction into multiple sub-transactions corresponding to multiple participants involved in the transaction and distribute the multiple sub-transactions to multiple rollup networks corresponding to the multiple participants.
[0030] FIG. 2 illustrates an exemplary process 200 for digital asset transaction according to an embodiment of the present disclosure. The process 200 may be performed through the digital asset transaction system 100 illustrated in FIG. 1.
[0031] At 202, a transaction order for a transaction of digital asset may be received. The transaction of digital asset may be, e.g., one of digital asset issuance, digital asset transfer, digital asset trading, etc. The transaction order may contain a set of initial transaction parameters. Different types of transactions may have different initial transaction parameters. Taking digital currency transfer as an example, the set of initial transaction parameters may include, e.g., sender account, receiver account, transfer amount, etc. Taking digital bond trading as an example, the set of initial transaction parameters may include, e.g., seller account, buyer account, trading amount, bond identifier, bond quantity, etc.
[0032] At 204, the transaction may be divided into multiple sub-transactions based on the set of initial transaction parameters. For example, multiple participants involved in the transaction may be determined based on the set of initial transaction parameters. The transaction may then be divided into multiple sub-transactions corresponding to the multiple participants. Taking digital currency transfer as an example, multiple participants involved in this transaction may include, e.g., a sender bank associated with the sender account, a receiver bank associated with the receiver account, a central bank, etc. Accordingly, this transaction may be divided into a sub-transaction corresponding to the sender bank, a sub-transaction corresponding to the receiver bank, a sub-transaction corresponding to the central bank, etc.
[0033] At 206, each sub-transaction in the multiple sub-transactions may be executed, to obtain an execution result of the sub-transaction. FIG. 3 illustrates an exemplary process 300 for executing a sub-transaction according to an embodiment of the present disclosure. The process 300 may correspond to the step 206 in FIG. 2, and may be performed on a sub-transaction in a transaction.
[0034] At 302, a set of sub-transaction parameters of the sub-transaction may be determined based on a set of initial transaction parameters of the transaction and a participant corresponding to the sub-transaction. Taking digital currency transfer as an example, the set of sub-transaction parameters of the sub-transaction corresponding to the sender bank may include transaction identifier, sender account, transfer amount, etc. The set of sub-transaction parameters of the sub-transaction corresponding to the receiver bank may include transaction identifier, receiver account, transfer amount, etc. The set of sub-transaction parameters of the sub-transaction corresponding to the central bank may include transaction identifier, sender bank identifier, receiver bank identifier, transfer amount, reserve ratio, etc. Preferably, different sets of sub-transaction parameters associated with the same transaction may have the same transaction identifier which may be allocated by a central server.
[0035] At 304, the sub-transaction may be executed according to the set of sub-transaction parameters. Taking digital currency transfer as an example, the sub-transaction corresponding to the sender bank may be executed through subtracting the transfer amount from the sender account. The sub-transaction corresponding to the receiver bank may be executed through adding the transfer amount to the receiver account. The sub-transaction corresponding to the central bank may be executed through transferring the reserve calculated based on the transfer amount and the reserve ratio from the sender bank to the receiver bank.
[0036] At 306, a hash value of the set of sub-transaction parameters may be calculated as the execution result of the sub-transaction.
[0037] In the above process, the transaction is divided into the multiple sub-transactions corresponding to the multiple participants involved in the transaction. Each sub-transaction is executed by a rollup network hosted by a participant corresponding to the sub-transaction. The technical effects of this approach lie in keeping private transaction data and private user data of each participant within this participant, avoiding leaking it to other participant. In this way, the privacy protection of the transaction can be enhanced. For example, to execute the sub-transaction corresponding to the sender bank, it is necessary to know the balance of the sender account. Executing this sub-transaction through a rollup network hosted by the sender bank can keeping the balance of the sender account within the sender bank, avoiding leaking it to the receiver bank and the central bank.
[0038] Referring back to FIG. 2, after obtaining the execution result of each sub-transaction, at 208, a proof for each sub-transaction in the multiple sub-transactions may be generated based on the execution result of the sub-transaction. As an example, the proof may be a zero-knowledge proof. The generated proof can be used later to verify whether the sub-transaction was executed correctly without revealing the private data of the sub-transaction or the transaction.
[0039] Next, the transaction may be verified with multiple execution results and multiple proofs corresponding to the multiple sub-transactions. The transaction may be verified through two stages.
[0040] At the first stage, the execution correctness of each sub-transaction in the multiple sub-transactions may be verified with an execution result and a proof corresponding to the sub-transaction, as illustrated in a step 210. During the first stage, a proof for a sub-transaction is used to verify whether the sub-transaction is executed according to a set of sub-transaction parameters associated with the sub-transaction. If the verification passes, it indicates that the sub-transaction was executed correctly.
[0041] At the second stage, the execution conformance of the transaction may be verified based on a predefined execution result of the transaction and an actual execution result of the transaction, as illustrated in a step 212. FIG. 4 illustrates an exemplary process 400 for verifying the execution conformance of a transaction according to an embodiment of the present disclosure. The process 400 may correspond to the step 212 in FIG. 2.
[0042] At 402, a hash value may be calculated based on a set of initial transaction parameters of a transaction as a predefined execution result of the transaction. The step 402 may be performed by any rollup network. All the rollup networks know the set of initial transaction parameters of the transaction, and thus they can calculate this hash value based on the set of initial transaction parameters. For example, any one of the multiple rollup networks can determine a set of sub-transaction parameters of each sub-transaction based on the set of initial transaction parameters and a participant corresponding to the sub-transaction, and calculate a hash value of the set of sub-transaction parameters. The rollup network can obtain multiple hash values corresponding to the multiple sub-transactions. Accordingly, the rollup network can calculate a hash value of the multiple hash values as the predefined execution result of the transaction. Preferably, multiple predefined execution results calculated by the multiple rollup networks can be obtained and compared. The final predefined execution result can be determined only when the multiple predefined execution results are consistent.
[0043] At 404, a hash value of multiple execution results of multiple sub-transactions of the transaction may be calculated as an actual execution result of the transaction. The step 404 may be performed by the bundle verifier in the blockchain network. The bundle verifier can obtain multiple execution results of the multiple sub-transactions from the multiple rollup networks, and then calculate a hash value of the multiple execution results as the actual execution result of the transaction
[0044] At 406, it may be determined whether the actual execution result is equal to the predefined execution result.
[0045] If it is determined that the actual execution result is equal to the predefined execution result, the process 400 may proceed to a step 408. At 408, it may be determined that the execution of the transaction conforms to the set of initial transaction parameters.
[0046] If it is determined that the actual execution result is not equal to the predefined execution result, the process 400 may proceed to a step 410. At 410, it may be determined that the execution of the transaction does not conform to the set of initial transaction parameters.
[0047] Referring back to FIG. 2, after verifying the execution correctness of all the sub-transactions and verifying the execution conformance of the transaction, at 214, it may be determined whether the transaction is executed successfully based on the verification results of the execution correctness of the multiple sub-transactions and the execution conformance of the transaction. In response to determining that all the sub-transactions were executed correctly, and determining that the execution of the transaction conforms to the set of initial transaction parameters, it may be determined that the transaction is executed successfully. In this case, the transaction may be marked as successful, and the execution result of the transaction may be recorded in the blockchain network. The execution result recorded in the blockchain network cannot be tampered. Instead, in response to determining that not all the sub-transactions were executed correctly, or determining that the execution of the transaction does not conform to the set of initial transaction parameters, it may be determined that the transaction is executed unsuccessfully.
[0048] In the above process, the transaction is verified through two stages, including the first stage of verifying whether each sub-transaction was executed correctly and the second stage of verifying whether the execution of the whole transaction conforms to the set of initial transaction parameters. The technical effects of this approach lie in accurately and comprehensively verifying the execution of transactions, and improving the security of the digital asset transaction system. During the first stage, a proof for a sub-transaction is used to verify whether the sub-transaction is executed according to a set of sub-transaction parameters associated with the sub-transaction. If the verification passes, it indicates that the sub-transaction was executed correctly. However, sometimes, one or more sub-transaction parameters might be intentionally or accidentally changed to be inconsistent with the set of initial transaction parameters. In this case, it is still possible to be verified that the sub-transaction is executed according to the set of sub-transaction parameters by using the proof for the sub-transaction. But in the second stage, the actual execution result which is the hash value of the multiple execution results of the multiple sub-transactions may not be equal to the predefined execution result which is calculated based on the set of initial transaction parameters. Thus, employing the above two stages can accurately and comprehensively verify the transaction execution.
[0049] Moreover, only the cryptographic proofs and the hash values such as the multiple execution results are submitted to the blockchain network, which avoids the public exposure of private data, while ensuring that the transaction can still be verified.
[0050] It should be appreciated that the process 200 to the process 400 illustrated in FIG. 2 to FIG. 4 is merely an example of the process for digital asset transaction. Depending on actual application requirements, the steps in the process for digital asset transaction may be replaced or modified in any manner, and the process may comprise more or fewer steps. In addition, the specific order or hierarchy of the steps in the process 200 to the process 400 is merely exemplary, and the process for digital asset transaction may be performed in an order different from the described order.
[0051] FIG. 5 is a flowchart of an exemplary method 500 for digital asset transaction according to an embodiment of the present disclosure.
[0052] At 510, a transaction order for a transaction of digital asset may be received, the transaction order containing a set of initial transaction parameters.
[0053] At 520, the transaction may be divided into multiple sub-transactions based on the set of initial transaction parameters.
[0054] At 530, for each sub-transaction in the multiple sub-transactions, the sub-transaction may be executed, to obtain an execution result of the sub-transaction.
[0055] At 540, a proof for the sub-transaction may be generated based on the execution result.
[0056] At 550, the transaction may be verified with multiple execution results and multiple proofs corresponding to the multiple sub-transactions.
[0057] In an implementation, the dividing the transaction into multiple sub-transactions may comprise: determining multiple participants involved in the transaction based on the set of initial transaction parameters; and dividing the transaction into the multiple sub-transactions corresponding to the multiple participants.
[0058] In an implementation, the executing the sub-transaction may comprise: determining a set of sub-transaction parameters of the sub-transaction based on the set of initial transaction parameters and a participant corresponding to the sub-transaction; executing the sub-transaction according to the set of sub-transaction parameters; and calculating a hash value of the set of sub-transaction parameters as the execution result of the sub-transaction.
[0059] In an implementation, the verifying the transaction may comprise: verifying the execution correctness of each sub-transaction in the multiple sub-transactions with an execution result and a proof corresponding to the sub-transaction; verifying the execution conformance of the transaction based on a predefined execution result of the transaction and an actual execution result of the transaction; and determining whether the transaction is executed successfully based on the verification results of the execution correctness of the multiple sub-transactions and the execution conformance of the transaction.
[0060] The verifying the execution conformance of the transaction may comprise: calculating a hash value based on the set of initial transaction parameters as the predefined execution result of the transaction; calculating a hash value of the multiple execution results of the multiple sub-transactions as the actual execution result of the transaction; determining that the actual execution result is equal to the predefined execution result; and in response to determining that the actual execution result is equal to the predefined execution result, determining that the execution of the transaction conforms to the set of initial transaction parameters.
[0061] It should be appreciated that the method 500 may further comprise any other steps / processes for digital asset transaction according to the embodiments of the present disclosure as mentioned above.
[0062] FIG. 6 illustrates an exemplary digital asset transaction system 600 according to an embodiment of the present disclosure.
[0063] The digital asset transaction system 600 may comprise: multiple rollup networks including a rollup network 610-1 to a rollup network 610-N, each rollup network in the multiple rollup networks for: receiving a transaction order for a transaction of digital asset, the transaction order containing a set of initial transaction parameters; dividing the transaction into multiple sub-transactions based on the set of initial transaction parameters; executing a sub-transaction in the multiple sub-transactions, to obtain an execution result of the sub-transaction; and generating a proof for the sub-transaction based on the execution result; and a blockchain network 620, for verifying the transaction with multiple execution results and multiple proofs corresponding to the multiple sub-transactions.
[0064] In an implementation, the digital asset transaction system 600 may have a two-layer structure, the multiple rollup networks including the rollup network 610-1 to the rollup network 610-N may be on layer 2, and the blockchain network 620 may be on layer 1.
[0065] In an implementation, the dividing the transaction into multiple sub-transactions may comprise: determining multiple participants involved in the transaction based on the set of initial transaction parameters; and dividing the transaction into the multiple sub-transactions corresponding to the multiple participants.
[0066] In an implementation, the executing a sub-transaction in the multiple sub-transactions may comprise: determining a set of sub-transaction parameters of the sub-transaction based on the set of initial transaction parameters and a participant corresponding to the sub-transaction; executing the sub-transaction according to the set of sub-transaction parameters; and calculating a hash value of the set of sub-transaction parameters as the execution result of the sub-transaction.
[0067] In an implementation, the blockchain network 620 may comprise: multiple proof verifiers, each proof verifier in the multiple proof verifiers for: verifying the execution correctness of each sub-transaction in the multiple sub-transactions with an execution result and a proof corresponding to the sub-transaction; and a bundle verifier, for: verifying the execution conformance of the transaction based on a predefined execution result of the transaction and an actual execution result of the transaction; and determining whether the transaction is executed successfully based on the verification results of the execution correctness of the multiple sub-transactions and the execution conformance of the transaction.
[0068] The predefined execution result of the transaction may be a hash value calculated based the set of initial transaction parameters through a rollup network in the multiple rollup networks. The verifying the execution conformance of the transaction may comprise: calculating a hash value based on the set of initial transaction parameters as the predefined execution result of the transaction; calculating a hash value of the multiple execution results of the multiple sub-transactions as the actual execution result of the transaction; determining that the actual execution result is equal to the predefined execution result; and in response to determining that the actual execution result is equal to the predefined execution result, determining that the execution of the transaction conforms to the set of initial transaction parameters.
[0069] Furthermore, the digital asset transaction system 600 may further comprise any other components configured for digital asset transaction according to the embodiments of the present disclosure as mentioned above.
[0070] FIG. 7 illustrates an exemplary apparatus 700 for digital asset transaction according to an embodiment of the present disclosure.
[0071] The apparatus 700 may comprise a processor 710, and a memory 720 storing computer-executable instructions. The computer-executable instructions, when executed, may cause the processor 710 to: receive a transaction order for a transaction of digital asset, the transaction order containing a set of initial transaction parameters; divide the transaction into multiple sub-transactions based on the set of initial transaction parameters; for each sub-transaction in the multiple sub-transactions: execute the sub-transaction, to obtain an execution result of the sub-transaction; and generate a proof for the sub-transaction based on the execution result; and verify the transaction with multiple execution results and multiple proofs corresponding to the multiple sub-transactions.
[0072] In an implementation, the dividing the transaction into multiple sub-transactions may comprise: determining multiple participants involved in the transaction based on the set of initial transaction parameters; and dividing the transaction into the multiple sub-transactions corresponding to the multiple participants.
[0073] In an implementation, the executing the sub-transaction may comprise: determining a set of sub-transaction parameters of the sub-transaction based on the set of initial transaction parameters and a participant corresponding to the sub-transaction; executing the sub-transaction according to the set of sub-transaction parameters; and calculating a hash value of the set of sub-transaction parameters as the execution result of the sub-transaction.
[0074] In an implementation, the verifying the transaction may comprise: verifying the execution correctness of each sub-transaction in the multiple sub-transactions with an execution result and a proof corresponding to the sub-transaction; verifying the execution conformance of the transaction based on a predefined execution result of the transaction and an actual execution result of the transaction; and determining whether the transaction is executed successfully based on the verification results of the execution correctness of the multiple sub-transactions and the execution conformance of the transaction.
[0075] The verifying the execution conformance of the transaction may comprise: calculating a hash value based on the set of initial transaction parameters as the predefined execution result of the transaction; calculating a hash value of the multiple execution results of the multiple sub-transactions as the actual execution result of the transaction; determining that the actual execution result is equal to the predefined execution result; and in response to determining that the actual execution result is equal to the predefined execution result, determining that the execution of the transaction conforms to the set of initial transaction parameters.
[0076] It should be appreciated that the processor 710 may further perform any other steps / processes of the method for digital asset transaction according to the embodiments of the present disclosure as mentioned above.
[0077] The embodiments of the present disclosure propose a computer program product for digital asset transaction, comprising a computer program that is executed by a processor for: receiving a transaction order for a transaction of digital asset, the transaction order containing a set of initial transaction parameters; dividing the transaction into multiple sub-transactions based on the set of initial transaction parameters; for each sub-transaction in the multiple sub-transactions: executing the sub-transaction, to obtain an execution result of the sub-transaction; and generating a proof for the sub-transaction based on the execution result; and verifying the transaction with multiple execution results and multiple proofs corresponding to the multiple sub-transactions. Furthermore, the computer program may be further executed for implementing any other steps / processes of the method for digital asset transaction according to the embodiments of the present disclosure as mentioned above.
[0078] The embodiments of the present disclosure may be embodied in a computer-readable medium for digital asset transaction. The computer-readable medium may comprise instructions that, when executed, cause a processor to: receive a transaction order for a transaction of digital asset, the transaction order containing a set of initial transaction parameters; divide the transaction into multiple sub-transactions based on the set of initial transaction parameters; for each sub-transaction in the multiple sub-transactions: execute the sub-transaction, to obtain an execution result of the sub-transaction; and generate a proof for the sub-transaction based on the execution result; and verify the transaction with multiple execution results and multiple proofs corresponding to the multiple sub-transactions. Furthermore, the instructions, when executed, may further cause the processor to perform any other steps / processes of the method for digital asset transaction according to the embodiments of the present disclosure as mentioned above.
[0079] It should be appreciated that all the operations in the methods described above are merely exemplary, and the present disclosure is not limited to any operations in the methods or sequence orders of these operations, and should cover all other equivalents under the same or similar concepts. In addition, the articles “a” and “an” as used in this specification and the appended claims should generally be construed to mean “one” or “one or more” unless specified otherwise or clear from the context to be directed to a singular form.
[0080] It should also be appreciated that all the modules in the apparatuses described above may be implemented in various approaches. These modules may be implemented as hardware, software, or a combination thereof. Moreover, any of these modules may be further functionally divided into sub-modules or combined together.
[0081] Processors have been described in connection with various apparatuses and methods. These processors may be implemented using electronic hardware, computer software, or any combination thereof. Whether such processors are implemented as hardware or software will depend upon the particular application and overall design constraints imposed on the system. By way of example, a processor, any portion of a processor, or any combination of processors presented in the present disclosure may be implemented with a microprocessor, microcontroller, digital signal processor (DSP) , a field-programmable gate array (FPGA) , a programmable logic device (PLD) , a state machine, gated logic, discrete hardware circuits, and other suitable processing components configured for performing the various functions described throughout the present disclosure. The functionality of a processor, any portion of a processor, or any combination of processors presented in the present disclosure may be implemented with software being executed by a microprocessor, microcontroller, DSP, or other suitable platform.
[0082] Software shall be construed broadly to mean instructions, instruction sets, code, code segments, program code, programs, subprograms, software modules, applications, software applications, software packages, routines, subroutines, objects, threads of execution, procedures, functions, etc. The software may reside on a computer-readable medium. A computer-readable medium may include, by way of example, memory such as a magnetic storage device (e.g., hard disk, floppy disk, magnetic strip) , an optical disk, a smart card, a flash memory device, random access memory (RAM) , read only memory (ROM) , programmable ROM (PROM) , erasable PROM (EPROM) , electrically erasable PROM (EEPROM) , a register, a removable disk, solid state drive (e.g., Non-Volatile Memory Express (NVMe) , Serial Advanced Technology Attachment (SATA) ) , etc. Although memory is shown separate from the processors in the various aspects presented throughout the present disclosure, the memory may be internal to the processors, e.g., cache or register.
[0083] The previous description is provided to enable any person skilled in the art to practice the various aspects described herein. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects. Thus, the claims are not intended to be limited to the aspects shown herein. All structural and functional equivalents to the elements of the various aspects described throughout the present disclosure that are known or later come to be known to those of ordinary skilled in the art are expressly incorporated herein and intended to be encompassed by the claims.
Claims
1.A method for digital asset transaction, comprising:receiving a transaction order for a transaction of digital asset, the transaction order containing a set of initial transaction parameters;dividing the transaction into multiple sub-transactions based on the set of initial transaction parameters;for each sub-transaction in the multiple sub-transactions:executing the sub-transaction, to obtain an execution result of the sub-transaction; andgenerating a proof for the sub-transaction based on the execution result; andverifying the transaction with multiple execution results and multiple proofs corresponding to the multiple sub-transactions.2.The method of claim 1, wherein the dividing the transaction into multiple sub-transactions comprises:determining multiple participants involved in the transaction based on the set of initial transaction parameters; anddividing the transaction into the multiple sub-transactions corresponding to the multiple participants.3.The method of claim 1, wherein the executing the sub-transaction comprises:determining a set of sub-transaction parameters of the sub-transaction based on the set of initial transaction parameters and a participant corresponding to the sub-transaction;executing the sub-transaction according to the set of sub-transaction parameters; andcalculating a hash value of the set of sub-transaction parameters as the execution result of the sub-transaction.4.The method of claim 1, wherein the verifying the transaction comprises:verifying the execution correctness of each sub-transaction in the multiple sub-transactions with an execution result and a proof corresponding to the sub-transaction;verifying the execution conformance of the transaction based on a predefined execution result of the transaction and an actual execution result of the transaction; anddetermining whether the transaction is executed successfully based on the verification results of the execution correctness of the multiple sub-transactions and the execution conformance of the transaction.5.The method of claim 4, wherein the verifying the execution conformance of the transaction comprises:calculating a hash value based on the set of initial transaction parameters as the predefined execution result of the transaction;calculating a hash value of the multiple execution results of the multiple sub-transactions as the actual execution result of the transaction;determining that the actual execution result is equal to the predefined execution result; andin response to determining that the actual execution result is equal to the predefined execution result, determining that the execution of the transaction conforms to the set of initial transaction parameters.6.A digital asset transaction system, comprising:multiple rollup networks, each rollup network in the multiple rollup networks for:receiving a transaction order for a transaction of digital asset, the transaction order containing a set of initial transaction parameters;dividing the transaction into multiple sub-transactions based on the set of initial transaction parameters;executing a sub-transaction in the multiple sub-transactions, to obtain an execution result of the sub-transaction; andgenerating a proof for the sub-transaction based on the execution result; anda blockchain network, for verifying the transaction with multiple execution results and multiple proofs corresponding to the multiple sub-transactions.7.The digital asset transaction system of claim 6, wherein the digital asset transaction system has a two-layer structure, the multiple rollup networks are on layer 2, and the blockchain network is on layer 1.8.The digital asset transaction system of claim 6, wherein the dividing the transaction into multiple sub-transactions comprises:determining multiple participants involved in the transaction based on the set of initial transaction parameters; anddividing the transaction into the multiple sub-transactions corresponding to the multiple participants.9.The digital asset transaction system of claim 6, wherein the executing a sub-transaction in the multiple sub-transactions comprises:determining a set of sub-transaction parameters of the sub-transaction based on the set of initial transaction parameters and a participant corresponding to the sub-transaction;executing the sub-transaction according to the set of sub-transaction parameters; andcalculating a hash value of the set of sub-transaction parameters as the execution result of the sub-transaction.10.The digital asset transaction system of claim 6, wherein the blockchain network comprises:multiple proof verifiers, each proof verifier in the multiple proof verifiers for:verifying the execution correctness of each sub-transaction in the multiple sub-transactions with an execution result and a proof corresponding to the sub-transaction; anda bundle verifier, for:verifying the execution conformance of the transaction based on a predefined execution result of the transaction and an actual execution result of the transaction; anddetermining whether the transaction is executed successfully based on the verification results of the execution correctness of the multiple sub-transactions and the execution conformance of the transaction.11.The digital asset transaction system of claim 10, wherein the predefined execution result of the transaction is a hash value calculated based the set of initial transaction parameters through a rollup network in the multiple rollup networks, and the verifying the execution conformance of the transaction comprises:calculating a hash value of the multiple execution results of the multiple sub-transactions as the actual execution result of the transaction;determining that the actual execution result is equal to the predefined execution result; andin response to determining that the actual execution result is equal to the predefined execution result, determining that the execution of the transaction conforms to the set of initial transaction parameters.12.An apparatus for digital asset transaction, comprising:a processor; anda memory storing computer-executable instructions that, when executed, cause the processor to:receive a transaction order for a transaction of digital asset, the transaction order containing a set of initial transaction parameters;divide the transaction into multiple sub-transactions based on the set of initial transaction parameters;for each sub-transaction in the multiple sub-transactions:execute the sub-transaction, to obtain an execution result of the sub-transaction; andgenerate a proof for the sub-transaction based on the execution result; andverify the transaction with multiple execution results and multiple proofs corresponding to the multiple sub-transactions.13.The apparatus of claim 12, wherein the dividing the transaction into multiple sub-transactions comprises:determining multiple participants involved in the transaction based on the set of initial transaction parameters; anddividing the transaction into the multiple sub-transactions corresponding to the multiple participants.14.The apparatus of claim 12, wherein the executing the sub-transaction comprises:determining a set of sub-transaction parameters of the sub-transaction based on the set of initial transaction parameters and a participant corresponding to the sub-transaction;executing the sub-transaction according to the set of sub-transaction parameters; andcalculating a hash value of the set of sub-transaction parameters as the execution result of the sub-transaction.15.The apparatus of claim 12, wherein the verifying the transaction comprises:verifying the execution correctness of each sub-transaction in the multiple sub-transactions with an execution result and a proof corresponding to the sub-transaction;verifying the execution conformance of the transaction based on a predefined execution result of the transaction and an actual execution result of the transaction; anddetermining whether the transaction is executed successfully based on the verification results of the execution correctness of the multiple sub-transactions and the execution conformance of the transaction.16.The apparatus of claim 15, wherein the verifying the execution conformance of the transaction comprises:calculating a hash value based on the set of initial transaction parameters as the predefined execution result of the transaction;calculating a hash value of the multiple execution results of the multiple sub-transactions as the actual execution result of the transaction;determining that the actual execution result is equal to the predefined execution result; andin response to determining that the actual execution result is equal to the predefined execution result, determining that the execution of the transaction conforms to the set of initial transaction parameters.17.A computer program product for digital asset transaction, comprising a computer program that is executed by a processor for:receiving a transaction order for a transaction of digital asset, the transaction order containing a set of initial transaction parameters;dividing the transaction into multiple sub-transactions based on the set of initial transaction parameters;for each sub-transaction in the multiple sub-transactions:executing the sub-transaction, to obtain an execution result of the sub-transaction; andgenerating a proof for the sub-transaction based on the execution result; andverifying the transaction with multiple execution results and multiple proofs corresponding to the multiple sub-transactions.18.The computer program product of claim 17, wherein the executing the sub-transaction comprises:determining a set of sub-transaction parameters of the sub-transaction based on the set of initial transaction parameters and a participant corresponding to the sub-transaction;executing the sub-transaction according to the set of sub-transaction parameters; andcalculating a hash value of the set of sub-transaction parameters as the execution result of the sub-transaction.19.The computer program product of claim 17, wherein the verifying the transaction comprises:verifying the execution correctness of each sub-transaction in the multiple sub-transactions with an execution result and a proof corresponding to the sub-transaction;verifying the execution conformance of the transaction based on a predefined execution result of the transaction and an actual execution result of the transaction; anddetermining whether the transaction is executed successfully based on the verification results of the execution correctness of the multiple sub-transactions and the execution conformance of the transaction.20.The computer program product of claim 19, wherein the verifying the execution conformance of the transaction comprises:calculating a hash value based on the set of initial transaction parameters as the predefined execution result of the transaction;calculating a hash value of the multiple execution results of the multiple sub-transactions as the actual execution result of the transaction;determining that the actual execution result is equal to the predefined execution result; andin response to determining that the actual execution result is equal to the predefined execution result, determining that the execution of the transaction conforms to the set of initial transaction parameters.