NL2026568B1 - Non-repudiation cross-chain transaction method and blockchain system - Google Patents

Non-repudiation cross-chain transaction method and blockchain system Download PDF

Info

Publication number
NL2026568B1
NL2026568B1 NL2026568A NL2026568A NL2026568B1 NL 2026568 B1 NL2026568 B1 NL 2026568B1 NL 2026568 A NL2026568 A NL 2026568A NL 2026568 A NL2026568 A NL 2026568A NL 2026568 B1 NL2026568 B1 NL 2026568B1
Authority
NL
Netherlands
Prior art keywords
transaction
chain
initiating
target
public
Prior art date
Application number
NL2026568A
Other languages
Dutch (nl)
Other versions
NL2026568A (en
Inventor
Li Dongyun
Bai Jie
Wu Xianfeng
Original Assignee
Jiangsu Aowei Holdings Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jiangsu Aowei Holdings Co Ltd filed Critical Jiangsu Aowei Holdings Co Ltd
Priority to NL2026568A priority Critical patent/NL2026568B1/en
Publication of NL2026568A publication Critical patent/NL2026568A/en
Application granted granted Critical
Publication of NL2026568B1 publication Critical patent/NL2026568B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

A non-repudiation cross-chain transaction method and a blockchain system are provided. The method includes: creating a cross-chain transaction by a public chain; forwarding, by an initiating parallel chain, a first locking request to a transaction initiating chain; performing, by the transaction initiating chain, a service transaction based on the first locking request, and locking transaction content of the service transaction; forwarding, by a target parallel chain, a second locking request to a transaction target chain; performing, by the transaction target chain, the returning transaction based on the second locking request, and locking transaction content of the returning transaction; and when it is determined that both the service transaction and the returning transaction have been performed, instructing, by the public chain, the transaction initiating chain to unlock the transaction content of the service transaction, and instructing the transaction target chain to unlock the transaction content of the returning transaction. In the present application, the public chain instructs the transaction initiating chain and the transaction target chain to lock and unlock respective transaction contents, respectively, when the transactions are performed by both parties . In this way, it is possible to avoid losses of the other party caused by that one party does not perform the transaction, thus achieving non-repudiation effects, thereby ensuring that the cross- chain transaction can be safely completed.

Description

P128490NL00 Title: Non-repudiation cross-chain transaction method and blockchain system
FIELD OF THE INVENTION The present application relates to a technical field of blockchain, and in particular, to a non-repudiation cross-chain transaction method and a blockchain system.
BACKGROUND OF THE INVENTION A blockchain provides decentralized system thinking whose most basic principle is creating a relatively objective non-repudiation digital environment in a manner of consensus. The blockchain technology may enable that network information cannot be modified once being issued. For example, if a transaction occurs in a blockchain network, a node in the blockchain network may record the transaction in a generated block, and then adds the block to a blockchain, and broadcasts the block in the whole network, to form an unchangeable blockchain. Therefore, the blockchain essentially is a distributed public ledger, comprises a plurality of data blocks, and is maintained by various nodes together. The nodes that maintain a same blockchain form a physical chain, such as a public chain, a private chain, a federated chain or the like. These nodes together form a peer-to-peer blockchain network. The foregoing transaction not only refers to a conventional transaction, such as a commodity sale or objective exchange, but also includes a data operation result or data exchange. For example, a node A in a public chain initiates a transaction request, transaction content of which 1s that the node A pays 10 tokens to query a weather condition. A node B in the public chain provides a weather query service. If the node A pays 10 tokens to a corresponding account of the node B, and the node B sends the queried weather condition to the node A, the node A and the node B together perform the transaction request initiated by the node A. Paying 10 tokens and sending the weather condition may be considered as transaction information of the transaction to be recorded in a blockchain of the public chain.
With continuous development of the blockchain technology, more blockchain networks for different fields appear. Cross-chain transactions need to be performed between different blockchain networks. For example, tokens are exchanged between different blockchain networks. However, because a general blockchain network cannot support a cross-chain transaction, that is, there is no unified and effective communication mechanism between existing blockchain networks, the cross-chain transaction cannot be achieved. For example, a node A in a public chain initiates a transaction request, transaction content of which is that the node A pays 10 tokens to query a weather condition. A node B in another public chain provides a weather query service. In this case, the node A intends to transact with the node B. However, because the node A cannot pay 10 tokens to the node B, the node B cannot perform a query operation and send a queried weather condition to the node A. Therefore, a cross- chain transaction between the node A and the node B is difficult to be performed.
SUMMARY OF THE INVENTION The present application provides a non-repudiation cross-chain transaction method and a blockchain system, for resolving a problem occurring in the prior art that transaction safety cannot be ensured because there is no unified and effective communication mechanism between blockchain networks, and thus a cross-chain transaction cannot be implemented.
According to a first aspect, the present application provides a non-
repudiation cross-chain transaction method, where the method includes: creating a cross-chain transaction by a public chain, where the cross-chain transaction includes: a service transaction to be performed by a transaction initiating chain and a returning transaction to be performed by a transaction target chain; forwarding, by an initiating parallel chain, a first locking request sent by the public chain, to the transaction initiating chain, where the first locking request includes transaction information of the service transaction; performing, by the transaction initiating chain, the service transaction based on the first locking request, and locking transaction content of the service transaction; forwarding, by a target parallel chain, a second locking request sent by the public chain, to the transaction target chain, where the second locking request includes transaction information of the returning transaction; performing, by the transaction target chain, the returning transaction based on the second locking request, and locking transaction content of the returning transaction; and when it is determined that both the service transaction and the returning transaction have been performed, instructing, by the public chain, the transaction initiating chain to unlock the transaction content of the service transaction, and instructing the transaction target chain to unlock the transaction content of the returning transaction.
Optionally, the forwarding, by an initiating parallel chain, a first locking request sent by the public chain to the transaction initiating chain includes: receiving the first locking request that is sent by the public chain based on the cross-chain transaction; detecting, by the initiating parallel chain based on the transaction information of the service transaction, whether the transaction initiating chain supports the service transaction; and when it is determined that the transaction initiating chain supports the service transaction, forwarding, by the initiating parallel chain, the first locking request to the transaction initiating chain; and the forwarding, by a target parallel chain, a second locking request sent by the public chain to the transaction target chain includes: receiving the second locking request that is sent by the public chain based on the cross-chain transaction; detecting, by the target parallel chain based on the transaction information of the returning transaction, whether the transaction target chain supports the returning transaction; and when it is determined that the transaction target chain supports the returning transaction, forwarding, by the target parallel chain, the second locking request to the transaction target chain.
Optionally, after the detecting whether the transaction initiating chain supports the service transaction, the following 1s further included: when it is determined that the transaction initiating chain does not support the service transaction, the imitiating parallel chain sends failure information to the public chain, where the failure information is used to inform the public chain that the cross-chain transaction fails; and after the detecting whether the transaction target chain supports the returning transaction, the following is further included: when it is determined that the transaction target chain does not support the returning transaction, the target parallel chain sends the failure information to the public chain.
Optionally, the method further includes: sending, by the transaction initiating chain, a service completion response to the initiating parallel chain when the service transaction is performed; forwarding, by the initiating parallel chain, the service completion response to the public chain;
when the returning transaction is performed, sending, by the transaction target chain, a returning completion response to the target parallel chain; forwarding, by the target parallel chain, the returning completion 5 response to the public chain; and if the public chain receives the service completion response and the returning completion response, it is determined that both the service transaction and the returning transaction have been performed.
Optionally, the method further includes: performing a first transferring transaction by the public chain based on the cross-chain transaction, and locking public-chain tokens in the first transferring transaction, where the first transferring transaction is that the transaction target chain pays public-chain tokens that are in equal value to the service transaction to the transaction initiating chain; receiving, by the initiating parallel chain, a service transaction request sent by the public chain, and initiating the service transaction to the transaction initiating chain based on the service transaction request; performing the service transaction by the transaction initiating chain; when the initiating parallel chain determines that the service transaction has been performed, instructing the public chain to unlock the public-chain tokens in the first transferring transaction; initiating a second transferring transaction by the public chain based on the cross-chain transaction, and locking public-chain tokens in the second transferring transaction, where the second transferring transaction is that the transaction initiating chain pays public-chain tokens that are in equal value to the returning transaction to the transaction target chain; receiving, by the target parallel chain, a returning transaction request sent by the public chain, and initiating the returning transaction to the transaction target chain based on the returning transaction request;
performing the returning transaction by the transaction target chain; and when the target parallel chain determines that the returning transaction has been performed, instructing the public chain to unlock the public-chain tokens in the second transferring transaction.
Optionally, before the instructing the public chain to unlock the public-chain tokens in the first transferring transaction, the following are further included: detecting, by the initiating parallel chain, whether the service transaction is recorded in an own blockchain; and if it is detected that the service transaction is recorded in the own blockchain, it is determined that the service transaction has been performed; and before the instructing the public chain to unlock the public-chain tokens in the second transferring transaction, the following are further included: detecting, by the target parallel chain, whether the returning transaction 1s recorded in an own blockchain; and if it is detected that the returning transaction is recorded in the own blockchain, it is determined that the returning transaction has been performed.
Optionally, the creating a cross-chain transaction by a public chain includes: receiving, by the public chain, a cross-chain transaction request sent by the transaction initiating chain, where the cross-chain transaction request includes: transaction content of the cross-chain transaction, and address information of the transaction initiating chain and the transaction target chain; and creating the cross-chain transaction based on the cross-chain transaction request.
According to a second aspect, the present application provides a blockchain system, where the blockchain system includes a transaction initiating chain, an initiating parallel chain, a transaction target chain, a target parallel chain, and a public chain; the initiating parallel chain comprises common nodes of the transaction initiating chain and the public chain, and the target parallel chain comprises common nodes shared by the transaction target chain and the public chain; the public chain is configured to create a cross-chain transaction, where the cross-chain transaction includes: a service transaction to be performed by the transaction initiating chain and a returning transaction to be performed by the transaction target chain; the initiating parallel chain is configured to forward a first locking request sent by the public chain to the transaction initiating chain, where the first locking request includes transaction information of the service transaction; the transaction initiating chain is configured to perform the service transaction based on the first locking request, and lock transaction content of the service transaction; the target parallel chain is configured to forward a second locking request sent by the public chain to the transaction target chain, where the second locking request includes transaction information of the returning transaction; the transaction target chain is configured to perform the returning transaction based on the second locking request, and lock transaction content of the returning transaction; and the public chain is further configured to instruct the transaction initiating chain to unlock the transaction content of the service transaction, and instruct the transaction target chain to unlock the transaction content of the returning transaction, when it is determined that both the service transaction and the returning transaction have been performed.
In solutions provided in the present application, a unified and effective communication channel is formed between the transaction initiating chain and the transaction target chain through the public chain, the initiating parallel chain, and the target parallel chain. Through such a communication channel, when the transaction initiating chain and the transaction target chain perform a cross-chain transaction, it may be determined whether the other party performs content agreed in the cross- chain transaction. Moreover, the transaction initiating chain and the transaction target chain respectively lock the transaction content of the service transaction and the returning transaction, and further unlock respective transaction content when 1t is determined that the other party completes the transaction. In this way, it is possible to avoid losses caused by that the other party does not complete the transaction, thus achieving non-repudiation effects, thereby ensuring that the cross-chain transaction can be safely completed.
BRIEF DESCRIPTION OF THE DRAWINGS To more clearly describe the technical solutions of the embodiments of the present application, the accompanying drawings required in the description of the embodiments are briefly illustrated below. Apparently, the accompanying drawings in the description below are merely some embodiments of the present application, and other accompanying drawings may also be obtained by one of ordinary skills in the art according to these accompanying drawings without an effective effort. FIG. 1 is a schematic flowchart of a non-repudiation cross-chain transaction method according to an exemplary embodiment; FIG. 2 is a flowchart of forwarding a first locking request by an initiating parallel chain according to an exemplary embodiment; FIG. 3 is a flowchart of forwarding a second locking request by a target parallel chain according to an exemplary embodiment; and FIG. 4 is a schematic flowchart of a non-repudiation cross-chain transaction method according to another exemplary embodiment.
DETAILED DESCRIPTION OF THE EMBODIMENTS Embodiments are described below in detail, and examples thereof are shown in the accompanying drawings. When the descriptions below relate to the accompanying drawings, unless otherwise stated, same numbers in different accompanying drawings indicate same or similar elements. Implementations described in the following embodiments do not represent all implementations consistent with the present application. Merely examples of a system and a method that are described in detail in the claims and in accordance with some aspects of the present application are provided. In technical solutions provided in the present application, a blockchain network refers to a peer-to-peer network composed of blockchain nodes. Data information in the blockchain or in a blockchain block is a transaction recorded by the node of the blockchain when the transaction occurs in the blockchain network. One block includes a plurality of transactions, and a plurality of blocks further form a blockchain. A node in the blockchain network may be a physical node, such as terminal or a server, or may be a virtual node. On the basis of a same consensus mechanism, nodes in the same blockchain network communicate with each other and maintain running of the blockchain network. In the present application, referred public chain, transaction initiating chain, transaction target chain, initiating parallel chain, and target parallel chain all refer to different blockchain networks that conform to a blockchain technology. In the technical solutions provided in the present application, the public chain serves as a basic platform provided for a whole network, and may access various blockchain networks, such as an industry chain, a federated chain, and a private chain that are established based on an interface specification of the public chain. Each blockchain network may serve as a development platform, and provides corresponding services for interior of the network. A standard interface manner is defined and specified for the public chain, thus facilitating a network connection to other blockchains, such as the transaction initiating chain and the transaction target chain. In the present application, the public chain is capable of supporting cross-chain brokering, and further is capable of providing decentralized applications and a smart contract.
The transaction initiating chain refers to a blockchain network that initiates a cross-chain transaction, and the transaction target chain is a blockchain network where a transaction object for the cross-chain transaction is located. In the present application, the public chain provides a basic platform, and the transaction initiating chain and the transaction target chain, as accessed networks, provide respective functions and services. The transaction initiating chain and the transaction target chain are independent blockchain networks, such as bitcoin and Ethereum, or an industry chain and a federated chain developed in different industries, or even different private chains or public chains. These independent blockchain networks cannot communicate or transact with each other due to differences therebetween such as having different consensus mechanisms. Therefore, in the technical solutions provided in the present application, the transaction initiating chain and the transaction target chain are connected to the public chain through parallel chains.
For a blockchain network that accesses the public chain through a parallel chain, the parallel chain may be composed of common nodes shared by the public chain and the blockchain network. Because the nodes in the parallel chain are the common nodes shared by the public chain and the blockchain network, the parallel chain has functions of both the public chain and the blockchain network, and stores blockchains of both the public chain and the blockchain network. Therefore, the parallel chain may convert information in the blockchain network at one side, and transmits the information to the blockchain network at another side. Through a bridging function of the parallel chain, the different blockchain networks may communicate or transact with each other. In the present application, the initiating parallel chain refers to a parallel chain that connects the public chain and the transaction initiating chain, and the target parallel chain refers to a parallel chain that connects the public chain and the transaction target chain.
On the basis of the foregoing components, in actual applications, the public chain may provide cross-chain relay, to perform tasks such as a transaction verification, data proof, asset transfer, implementations of a smart contract, and the like. The public chain further provides capabilities of a basic blockchain platform, that is, to quickly achieve solution deployment and verifications, to achieve a distributed storage process and a ledger recording process in a public chain network.
In addition to recording own blockchain information, the publie chain may further be configured to store information abstract, that is, transaction abstract, of a corresponding cross-chain transaction. Relevant content of the cross-chain transaction is recorded through formatted transaction data. Meanwhile, to occupy less distributed storage space on the public chain, when recording some information, the public chain may further record information about a third-party blockchain through a particular compression algorithm. In addition, for the blockchain network that accesses the public chain, the public chain further stores registration information that is provided when the blockchain network accesses. The registration information includes: a service type that can be provided, a type of tokens that can be exchanged, a transaction manner, a transaction condition, address information of each node, and the like.
Refer to FIG. 1, which exemplarily shows a schematic flowchart of a non-repudiation cross-chain transaction method according to the present application.
The method includes the following steps.
S10: A public chain creates a cross-chain transaction.
In a solution provided in an embodiment of the present application, the public chain needs to serve as an intermediate bridge to communicate a transaction initiating chain and a transaction target chain, and perform a cross-chain transaction between the transaction initiating chain and the transaction target chain.
Therefore, when a cross-chain transaction needs to be performed between the transaction initiating chain and the transaction target chain, the public chain creates a cross-chain transaction.
One cross-chain transaction includes two sub-transactions: a service transaction to be performed by the transaction initiating chain and a returning transaction to be performed by the transaction target chain.
The service transaction is that the transaction initiating chain pays, to the transaction target chain, transaction content required by the transaction target chain.
The returning transaction is that the transaction target chain pays, to the transaction initiating chain, transaction content required by the transaction initiating chain.
Therefore, in order to achieve the cross- chain transaction, the service transaction and the returning transaction in the cross-chain transaction need to be performed.
For example, a cross-chain transaction between a transaction initiating chain A and a transaction target chain B is exchanging 50 tokens a of the transaction initiating chain A for one token b of the transaction target chain B.
In this case, in the cross-chain transaction, the service transaction is that the transaction initiating chain pays 50 tokens a to the transaction target chain; and the returning transaction is that the transaction target chain pays one token b to the transaction initiating chain.
When the transaction initiating chain intends to perform a cross- chain transaction with the transaction target chain, the transaction initiating chain may invoke a public smart contract to send a cross-chain transaction request to the public chain. The cross-chain transaction request includes: transaction content that needs to be paid by both parties of the transaction, and address information of the transaction initiating chain and the transaction target chain. A transaction node in the transaction initiating chain broadcasts the foregoing cross-chain transaction request over the transaction initiating chain. A node in an initiating parallel chain obtains and broadcasts the transaction request over the public chain, so that the public chain obtains the cross-chain transaction request. After obtaining the cross-chain transaction request, the public chain verifies, based on the stored registration information, whether the transaction initiating chain and the transaction target chain can pay the transaction content in the request. Specifically, the public chain verifies whether the transaction node can pay the transaction content that needs to be paid by the transaction initiating chain, and verifies whether a target node can pay the transaction content that needs to be paid by the transaction target chain. The transaction node refers to a node that is in the transaction initiating chain and initiates the cross-chain transaction request, and the target node refers to a node that is in the transaction target chain and performs a cross-chain transaction with the transaction node.
After the cross-chain transaction request passes a verification by the public chain, the public chain creates a cross-chain transaction based on the cross-chain transaction request. If the cross-chain transaction request does not pass the verification by the public chain, for example, the transaction node cannot pay the transaction content of the service transaction, the public chain informs the transaction initiating chain that the cross-chain transaction fails.
In another embodiment, before the transaction initiating chain sends the cross-chain transaction request, a query transaction is first initiated to the public chain through the initiating parallel chain. The query transaction includes the transaction content required by the transaction initiating chain and transaction content that can be paid by the transaction initiating chain. The public chain determines, based on the query transaction and registration information of the assessing blockchain network, whether there is a transaction target chain in the accessing blockchain network that can transact with the transaction initiating chain. If the transaction target chain exists, the public chain sends the address information of the transaction target chain to the transaction initiating chain through the initiating parallel chain. If the transaction target chain does not exist, the public chain informs the transaction initiating chain that the cross-chain transaction fails. In addition, in the present application, the address information of the transaction initiating chain is used to indicate corresponding account addresses, of the transaction node and the target node, that are in a network of the transaction initiating chain. The address information of the transaction target chain is used to indicate corresponding account addresses, of the transaction node and the target node, that are in a network of the transaction target chain. For example, a transaction node A7 hopes to exchange 50 tokens a of the transaction initiating chain A for one token b of the transaction target chain B. Therefore, the transaction node Al initiates a query transaction to a public chain C. Based on the query transaction, the public chain determines that the transaction node Al requires one token b and may pay 50 tokens a. Based on content of the query transaction, the public chain queries whether there 1s a node in other blockchain networks that may transact with the transaction node AI. One node in the transaction target chain B requires 50 tokens a, and is willing to pay at most five tokens b. In this case, the public chain C takes this node as a target node BL, and sends address information of the transaction target chain B to the transaction initiating chain A.
S11: An initiating parallel chain forwards, to the transaction initiating chain, a first locking request sent by the public chain.
After creating the cross-chain transaction, the public chain needs to inform the transaction initiating chain of performing the service transaction. Therefore, the public chain sends the first locking request to the transaction initiating chain through the initiating parallel chain. The first locking request is used to instruct the transaction initiating chain to perform the service transaction, and lock the transaction content of the service transaction. Therefore, the first locking request includes transaction information of the service transaction. Transaction information of a transaction includes address information of both parties of the transaction, a transaction manner, and a transaction condition. The transaction manner includes transaction time, a format (template) of blockchain information, a type of tokens supporting transactions, or the like. The transaction condition includes transaction content that needs to be paid by both parties of the transaction.
Further, as shown in FIG. 2, the step of forwarding, by the initiating parallel chain, the first locking request sent by the public chain to the transaction initiating chain includes the following steps.
S111: The initiating parallel chain receives the first locking request sent by the public chain.
S112: The initiating parallel chain detects whether the transaction initiating chain supports a service transaction.
S113: If the transaction initiating chain supports the service transaction, the initiating parallel chain forwards the first locking request to the transaction initiating chain.
S114: If the transaction initiating chain does not support the service transaction, the initiating parallel chain sends failure information to the public chain.
After creating the cross-chain transaction, the public cham determines the service transaction to be performed by the transaction initiating chain, and generates the first locking request based on the service transaction.
To send the first locking request to the transaction initiating chain, the public chain broadcasts the first locking request over its nodes.
Because a node in the initiating parallel chain is also a node in the public chain, the initiating parallel chain may receive the first locking request.
After receiving the first locking request, the initiating parallel chain detects whether the transaction initiating chain supports the service transaction, so as to further make sure that the cross-chain transaction can be completed.
Based on transaction information in the first locking request, the initiating parallel chain detects whether the transaction node supports the transaction manner and the transaction condition in the transaction information.
If the transaction node supports the transaction manner and the transaction condition in the transaction information, it is determined by the initiating parallel chain that the transaction initiating chain supports the service transaction.
If the transaction node does not support the transaction manner and the transaction condition in the transaction information, it is determined by the initiating parallel chain that the transaction initiating chain does not support the service transaction.
For example, the cross-chain transaction is exchanging tokens a of the transaction initiating chain A for tokens b of the transaction target chain B, with an exchange rate of 50:1, and it is specified that 100 tokens a are exchanged for two tokens b.
In this case, the transaction manner of the service transaction is paying tokens a, and the transaction condition is that a number of paid tokens a is 100. If the transaction node AI of the transaction initiating chain A has only 98 tokens a, and the transaction condition is not satisfied, it is determined by the initiating parallel chain AC that the transaction initiating chain A does not support the service transaction.
If the transaction initiating chain supports the service transaction, the initiating parallel chain forwards the first locking request to the transaction initiating chain. Specifically, the initiating parallel chain broadcasts the first locking request over the transaction initiating chain. Correspondingly, the transaction initiating chain receives the first locking request.
If the transaction initiating chain does not support the service transaction, the initiating parallel chain sends the failure information to the public chain. The failure information is used to inform the public chain that the cross-chain transaction fails. Specifically, the initiating parallel chain broadcasts the failure information over the public chain.
Correspondingly, the public chain receives the failure information, and it is determined that the cross-chain transaction fails and the cross-chain transaction ends. The failure information includes the transaction information of the service transaction.
S12: The transaction initiating chain performs the service transaction, and locks transaction content of the service transaction.
The transaction initiating chain receives the first locking request, and determines, based on the transaction information in the first locking request, the service transaction that needs to be performed. Specifically, a maintainer node in the transaction initiating chain performs the service transaction, and locks the transaction content of the service transaction. The maintainer node 15 a node in the blockchain network that is responsible for maintaining the blockchain, and has a right of accounting. The initiating parallel chain broadcasts the first locking request over the transaction initiating chain, the maintainer node in the transaction initiating chain may pay the transaction content that needs to be paid by the transaction initiating chain for the cross-chain transaction after receiving the first locking request, and lock the transaction content.
In a technical solution provided in the present application, generally there are two types of cross-chain transactions: token exchange and information service. The token exchange refers to exchanging tokens of the transaction initiating chain for tokens of the transaction target chain. The information service refers to that the transaction initiating chain pays a certain number of tokens to the transaction target chain, to purchase corresponding information data that is sent to the transaction initiating chain by the transaction target chain; or the transaction initiating chain sends information data to the transaction target chain, to exchange for a certain number of tokens. However, both the token exchange and the information service are data operations and or data operation results. For example, the service transaction is paying a certain number of tokens of the transaction initiating chain. In this case, when performing the service transaction, the maintainer node actually transfers a certain number of tokens from a corresponding account of the transaction node to a corresponding account of the target node. Because the paid tokens comes from the transaction initiating chain, the transfer operation is performed in the transaction initiating chain, without involving a cross-chain operation between the transaction initiating chain and the transaction target chain. Therefore, after the maintainer node determines the accounts of the transaction node and the target node that are indicated by the address information of the transaction initiating chain, payment of the transaction content between the transaction node and the target node may be performed.
As an example, the cross-chain transaction is an information service. The transaction initiating chain A pays 50 tokens a of the transaction initiating chain A to the transaction target chain B, to purchase weather information provided by the transaction target chain B. The service transaction is that the transaction initiating chain A pays 50 tokens a to the transaction target chain B. Based on the first locking request sent by the public chain C, a maintainer node A2 in the transaction initiating chain A pays 50 tokens a from a corresponding account of the transaction node Al in the transaction initiating chain to a corresponding account of the target node BI in the transaction initiating chain A, and locks the 50 tokens a.
S13: The target parallel chain forwards, a second locking request sent by the public chain, to the transaction target chain.
After creating the cross-chain transaction, the public chain needs to inform the transaction target chain of performing the returning transaction. The public chain sends the second locking request to the transaction target chain through the target parallel chain, which is same to the manner in the foregoing step S11 that the initiating parallel chain forwards the first locking request sent by the public chain to the transaction initiating chain. The second locking request is used to instruct the transaction target chain to perform the returning transaction, and lock transaction content of the returning transaction. Therefore, the second locking request includes transaction information of the returning transaction.
Further, as shown in FIG. 3, the step of forwarding, by the target parallel chain, the second locking request sent by the public chain to the transaction target chain includes the following steps.
S131: The target parallel chain receives the second locking request sent by the public chain.
S132: The target parallel chain detects whether the transaction target chain supports the returning transaction.
S133: If the transaction target chain supports the returning transaction, the target parallel chain forwards the second locking request to the transaction target chain.
S134: If the transaction target chain does not support the returning transaction, the target parallel chain sends failure information to the public chain.
After creating the cross-chain transaction, the public chain determines the returning transaction to be performed by the transaction target chain, and generates the second locking request based on the returning transaction. To send the second locking request to the transaction target chain, the public chain broadcasts the second locking request over its nodes. Because a node in the target parallel chain is also a node in the public chain, the target parallel chain may receive the second locking request.
After receiving the second locking request, the target parallel chain detects whether the transaction target chain supports the returning transaction, so as to further make sure that the cross-chain transaction can be completed. Based on transaction information in the second locking request, the target parallel chain detects whether the target node supports the transaction manner and the transaction condition in the transaction information. If the target node supports the transaction manner and the transaction condition in the transaction information, it is determined by the target parallel chain that the transaction target chain supports the returning transaction. If the transaction node does not support the transaction manner and the transaction condition in the transaction information, it is determined by the target parallel chain that the transaction target chain does not support the returning transaction.
For example, the cross-chain transaction is exchanging tokens a of the transaction initiating chain A for tokens b of the transaction target chain B, with an exchange rate of 50:1, and it is specified that 100 tokens «a are exchanged for two tokens b. In this case, the transaction manner of the returning transaction is paying tokens b, and the transaction condition is that a number of paid tokens b is 2. If the target node BI of the transaction target chain B has five tokens b, and the transaction condition is satisfied, it 1s determined by a target parallel chain BC that the transaction target chain B supports the returning transaction.
If the transaction target chain supports the returning transaction, the target parallel chain forwards the second locking request to the transaction target chain. Specifically, the target parallel chain broadcasts the second locking request over the transaction target chain. Correspondingly, the transaction target chain receives the second locking request.
If the transaction target chain does not support the returning transaction, the target parallel chain sends failure information to the public chain. The failure information is used to inform the public chain that the cross-chain transaction fails. Specifically, the target parallel chain broadcasts the failure information over the public chain. Correspondingly, the public chain receives the failure information, to determine that the cross-chain transaction fails and end the cross-chain transaction. The failure information includes the transaction information of the returning transaction.
S14: The transaction target chain performs the returning transaction, and locks transaction content of the returning transaction.
This 1s similar to the manner in the foregoing step S12 that the transaction initiating chain performs the service transaction, and locks the transaction content of the service transaction. The transaction target chain receives the second locking request, and determines, based on the transaction information in the second locking request, the returning transaction that needs to be performed. Specifically, a maintainer node in the transaction target chain performs the returning transaction, and locks the transaction content of the returning transaction. The target parallel chain broadcasts the second locking request over the transaction target chain, the maintainer node in the transaction target chain may pay the transaction content that needs to be paid by the transaction target chain for the cross-chain transaction after receiving the second locking request, and the transaction content is locked.
As an example, the cross-chain transaction is an information service. The transaction initiating chain A pays 50 tokens a of the transaction initiating chain A to the transaction target chain B, to purchase the weather information provided by the transaction target chain B.
The returning transaction is that the transaction target chain B provides the weather information for the transaction initiating chain A.
Based on the second locking request sent by the public chain C, a maintainer node B2 in the transaction target chain B sends weather information provided by the target node BI to a corresponding account of the transaction node Al in the transaction target chain B, and locks data of the weather information.
It should be noted that the foregoing steps S11 and S12 may be performed before the foregoing steps S13 and S14, may be performed after the steps S13 and S14, or may be performed simultaneously with the steps S13 and S14, which are not limited in this embodiment of the present application.
S15: When it is determined that both the service transaction and the returning transaction are performed, the public chain instructs the transaction initiating chain to unlock the transaction content of the service transaction, and instructs the transaction target chain to unlock the transaction content of the returning transaction.
Only after both the service transaction and the returning transaction are completed, the transaction initiating chain and the transaction target chain can unlock the corresponding transaction content, to achieve non-repudiation transaction effects.
However, the transaction initiating chain and the transaction target chain cannot communicate directly with each other to determine a transaction condition of the other party of themselves, and transaction conditions of both parties need to be determined by the public chain, and unlocking is instructed by the public chain.
The public chain is connected to the transaction initiating chain and the transaction target chain through the initiating parallel chain and the target parallel chain, respectively.
When it is determined that both the service transaction and the returning transaction are performed, the public chain may instruct, respectively through the initiating parallel chain and the target parallel chain, the transaction initiating chain and the transaction target chain to unlock respective transaction content, so as to complete the cross-chain transaction.
Specifically, for the transaction initiating chain, the public chain broadcasts a first unlocking instruction, and then the initiating parallel chain receives and broadcasts the first unlocking instruction over the transaction initiating chain.
After receiving the first unlocking instruction, the maintainer node in the transaction initiating chain may unlock the transaction content of the service transaction.
For the transaction target chain, the public chain broadcasts a second unlocking instruction, and then the target parallel chain receives and broadcasts the second unlocking instruction over the transaction target chain.
After receiving the second unlocking instruction, the maintainer node in the transaction target chain may unlock the transaction content of the returning transaction.
The cross-chain transaction is completed when the transaction contents of both the service transaction and the returning transaction are unlocked.
In a possible implementation, after performing the service transaction, the transaction initiating chain sends a service completion response to the initiating parallel chain.
The initiating parallel chain forwards the service completion response to the public chain, and thus it is determined by the public chain that the service transaction is completed.
In a same manner, after performing the returning transaction, the transaction target chain sends a returning completion response to the target parallel chain.
The target parallel chain forwards the returning completion response to the public chain, and thus it is determined by the public chain that the returning transaction is completed.
After the public chain receives the service completion response and the returning completion response, it is determined that both the service transaction and the returning transaction have been completed.
In solutions provided in an embodiment of the present application, a unified and effective communication channel is formed between the transaction initiating chain and the transaction target chain through the public chain, the initiating parallel chain, and the target parallel chain. By using such a communication channel, when the transaction initiating chain and the transaction target chain perform a cross-chain transaction, it may be determined whether the other party performs content agreed in the cross-chain transaction. Moreover, the transaction initiating chain and the transaction target chain lock the respective transaction contents of the service transaction and the returning transaction, respectively, and further unlock respective transaction contents when it 1s determined that the other party completes the transaction. In this way, it is possible to avoid losses caused by that the other party does not complete the transaction, thus achieving non-repudiation effects, thereby ensuring that the cross-chain transaction can be safely completed.
In the foregoing embodiments, both the transaction initiating chain and the transaction target chain support locking of the transaction content. However, in actual applications, there is a blockchain network that does not support locking of the transaction content. For a case in which the transaction initiating chain and/or the transaction target chain are blockchain networks that do not support locking of the transaction content, the present application further provides a non-repudiation cross-chain transaction method.
Refer to FIG. 4, and FIG. 4 exemplarily shows a schematic flowchart of a non-repudiation cross-chain transaction method according to an embodiment of the present application. The method includes the following steps.
S40: A public chain performs a first transferring transaction, and locks public-chain tokens in the first transferring transaction.
In the embodiment of the present application, a process for the public chain to create a cross-chain transaction is same to the process for the public chain to create a cross-chain transaction in the embodiments of the foregoing FIG. 2, which is not described again in this embodiment of the present application.
After creating the cross-chain transaction, the public chain detects whether corresponding accounts, in the public chain, of a transaction node in a transaction initiating chain and a target node in a transaction target chain have sufficient public-chain tokens. The sufficient public-chain tokens means that value of the public-chain tokens is greater than value of a transaction content of a service transaction or a returning transaction. If ves, the public chain continues to perform the cross-chain transaction; and if no, it is determined by the public chain that the cross-chain transaction fails, the cross-chain transaction ending.
For example, the cross-chain transaction is that a transaction initiating chain A exchanges 50 tokens a of the transaction initiating chain A for tokens b of a transaction target chain B, with an exchange rate of 50:1. An exchange rate between tokens c of a public chain C and tokens A is 1:25. An exchange rate between the tokens c and tokens B is 2:1. In this case, the public chain C detects whether a corresponding account of a transaction node AI in the public chain C has no less than two tokens c, and whether a corresponding account of a target node BI in the public chain C has no less than two tokens c.
After it is detected and determined that the cross-chain transaction can be performed, the public chain initiates and performs the first transferring transaction. The first transferring transaction is that the transaction target chain pays public-chain tokens in equal value to the service transaction to the transaction initiating chain. Specifically, a maintainer node in the public chain transfers the public-chain tokens in equal value to the service transaction from the corresponding account of the target node in the public chain to the corresponding account of the transaction node in the public chain. After performing the first transferring transaction, the public chain locks the public-chain tokens in the first transferring transaction.
As an example, the cross-chain transaction is that the transaction initiating chain A exchanges 50 tokens a of the transaction initiating chain A for tokens b of the transaction target chain B, with an exchange rate of 50:1. The exchange rate between the tokens c of the public chain C and the tokens a is 1:25. In this case, after the cross-chain transaction is created, the maintainer node in the public chain C transfers two tokens c from the corresponding account of the target node BI in the public chain C to the corresponding account of the transaction node AJ in the public chain C, and locks the two tokens c.
S41: An initiating parallel chain receives a service transaction request sent by the public chain, and initiates a service transaction based on the service transaction request.
After performing the first transferring transaction, the public chain sends the service transaction request to the initiating parallel chain, to request the initiating parallel chain to initiate the service transaction. Therefore, the service transaction request includes transaction information of the service transaction. The initiating parallel chain initiates the service transaction to the transaction initiating chain based on the service transaction request. Specifically, the public chain broadcasts the service transaction request over an own node. Correspondingly, the initiating parallel chain receives the service transaction request. The initiating parallel chain initiates the service transaction based on the transaction information of the service transaction, that is, broadcasts the service transaction over the transaction initiating chain.
S42: A transaction initiating chain performs the service transaction.
The transaction initiating chain receives the service transaction initiated by the initiating parallel chain, and performs the service transaction. Specifically, a maintainer node in the transaction initiating chain receives the service transaction that is broadcasted over the transaction initiating chain by the initiating parallel chain, and pays transaction content that needs to be paid by the transaction initiating chain during the cross-chain transaction, to perform the service transaction, and record in a generated block.
S43: When it is determined by the initiating parallel chain that the service transaction has been completed, instruct the public chain to unlock public-chain tokens in the first transferring transaction.
After performing the service transaction, the transaction initiating chain may record the completed service transaction in the generated block, and adds the block to a blockchain. Because a node in the initiating parallel chain is also a node in the transaction initiating chain, when the transaction initiating chain synchronizes the blockchain, the initiating parallel chain may also obtain and synchronize the blockchain in which the service transaction is recorded to a blockchain of the parallel chain itself. The initiating parallel chain detects whether the service transaction is recorded in its own blockchain. If it is detected that the service transaction 1s recorded in the own blockchain, it is determined that the service transaction has been completed; and if it is detected that the service transaction 1s not recorded in the own blockchain, it is determined that the service transaction has not been completed.
The initiating parallel chain may send a third unlocking instruction to the public chain, to instruct the public chain to unlock the public-chain tokens in the first transferring transaction. Specifically, the initiating parallel chain broadcasts the third unlocking instruction over the public chain. Correspondingly, the maintainer node in the public chain receives the third unlocking instruction and it is determined that the service transaction has been completed, so as to unlock the public-chain tokens in the first transferring transaction.
S44: The public chain performs a second transferring transaction, and locks public-chain tokens in the second transferring transaction.
After it is detected and determined that the cross-chain transaction can be performed, the public chain initiates and performs the second transferring transaction. The second transferring transaction is that the transaction initiating chain pays public-chain tokens in equal value to the returning transaction to the transaction target chain. Specifically, the maintainer node in the public chain transfers the public-chain tokens in equal value to the returning transaction from the corresponding account of the transaction node in the public chain to the corresponding account of the target node in the public chain. After performing the second transferring transaction, the public chain locks the public-chain tokens in the second transferring transaction.
For example, the cross-chain transaction is that the transaction initiating chain A exchanges 50 tokens a of the transaction initiating chain A for tokens b of the transaction target chain B, with an exchange rate of 50:1. An exchange rate between the tokens c of the public chain C and the tokens b 1s 2:1. In this case, after the cross-chain transaction is created, the maintainer node in the public chain C transfers two tokens c from the corresponding account of the transaction node AZ in the public chain C to the corresponding account of the target node BI in the public chain C, and locks the two tokens c.
S45: The target parallel chain receives a returning transaction request sent by the public chain, and initiates a returning transaction based on the service transaction request.
After performing the second transferring transaction, the public chain sends the returning transaction request to the target parallel chain, to request the target parallel chain to initiate the returning transaction.
Therefore, the returning transaction request includes transaction information of the returning transaction. The target parallel chain initiates the returning transaction to the transaction target chain based on the returning transaction request. Specifically, the public chain broadcasts the returning transaction request over an own node. Correspondingly, the target parallel chain receives the returning transaction request. The target parallel chain initiates the returning transaction based on the transaction information of the returning transaction, that is, broadcasts the returning transaction over the transaction target chain. S46: The transaction target chain performs the returning transaction.
The transaction target chain receives the returning transaction initiated by the target parallel chain, and performs the returning transaction. Specifically, a maintainer node in the transaction target chain receives the returning transaction that is broadcasted over the transaction target chain by the target parallel chain, and pays transaction content that needs to be paid by the transaction target chain during the cross-chain transaction, to perform the returning transaction, and record in a generated block.
S47: When it is determined by the target parallel chain that the returning transaction has been performed, instruct the public chain to unlock the public-chain tokens in the second transferring transaction.
After performing the returning transaction, the transaction target chain may record the completed returning transaction in the generated block, and adds the block to a blockchain. Because a node in the target parallel chain is also a node in the transaction target chain, when the transaction target chain synchronizes the blockchain, the target parallel chain may also obtain the blockchain in which the returning transaction is recorded, and synchronize the blockchain to a blockchain of a parallel chain itself. The target parallel chain detects whether the returning transaction is recorded in its own blockchain. If it is detected that the returning transaction is recorded in the own blockchain, it is determined that the returning transaction has been performed; and if it is not detected that the returning transaction is recorded in the own blockchain, it is determined that the returning transaction has not been performed.
The target parallel chain may send a fourth unlocking instruction to the public chain, to instruct the public chain to unlock the public-chain tokens in the second transferring transaction. Specifically, the target parallel chain broadcasts the fourth unlocking instruction over the public chain. Correspondingly, the maintainer node in the public chain receives the fourth unlocking instruction and it is determined that the returning transaction has been performed, so as to unlock the public-chain tokens in the second transferring transaction.
It should be noted that the foregoing steps S40 to S43 may be performed before the steps S44 to S47, may be performed after the steps S44 to S47, or may be performed simultaneously with the steps S44 to S47, which is not limited in this embodiment of the present application.
If the public-chain tokens in the first transferring transaction and the second transferring transaction are all unlocked by the public chain, it indicates that the cross-chain transaction between the transaction target chain and the transaction initiating chain has been completed.
In the embodiment of the present application, the public chain performs the first transferring transaction and locks the public-chain tokens in the transaction. A condition for unlocking the public-chain tokens 1s that the service transaction has been completed. On this basis, it may be ensured by the public chain that the transaction initiating chain may obtain tokens in equal value to the service transaction when the service transaction is completed. Even if the transaction target chain does not perform the returning transaction, the transaction initiating chain has no losses. Similarly, corresponding to the transaction target chain, the public chain performs the second transferring transaction, locks the public-chain tokens in the transaction, and unlocks after the service transaction is performed, so as to ensure that the transaction target chain may obtain tokens in equal value to the returning transaction when the returning transaction is completed. Therefore, the transaction initiating chain and the transaction target chain can avoid losses caused by that the other party does not complete the transaction, thus achieving non-repudiation effects, thereby ensuring that the cross-chain transaction can be safely completed.
The present application further provides a blockchain system. The blockchain system is configured to implement the cross-chain transaction method in the foregoing method examples. The blockchain system includes a transaction initiating chain, an initiating parallel chain, a transaction target chain, a target parallel chain, and a public chain;. The initiating parallel chain comprises common nodes shared by the transaction initiating chain and the public chain, and the target parallel chain comprises common nodes shared by the transaction target chain and the public chain.
The public chain is configured to create a cross-chain transaction, where the cross-chain transaction includes: a service transaction to be performed by the transaction initiating chain and a returning transaction to be performed by the transaction target chain.
The initiating parallel chain is configured to forward a first locking request sent by the public chain to the transaction initiating chain, where the first locking request includes transaction information of the service transaction.
The transaction initiating chain is configured to perform the service transaction based on the first locking request, and lock transaction content of the service transaction.
The target parallel chain is configured to forward a second locking request sent by the public chain to the transaction target chain, where the second locking request includes transaction information of the returning transaction.
The transaction target chain is configured to perform the returning transaction based on the second locking request, and lock transaction content of the returning transaction.
When it is determined that both the service transaction and the returning transaction are performed, the public chain is further configured to instruct the transaction initiating chain to unlock the transaction content of the service transaction, and instruct the transaction target chain to unlock the transaction content of the returning transaction.
In the blockchain system provided in the present application, a unified and effective communication channel is formed between the transaction initiating chain and the transaction target chain through the public chain, the initiating parallel chain, and the target parallel chain.
By using such a communication channel, when the transaction initiating chain and the transaction target chain perform a cross-chain transaction, it may be determined whether the other party performs content agreed in the cross-chain transaction.
Moreover, the transaction initiating chain and the transaction target chain respectively lock the transaction content of the service transaction and the returning transaction, and further unlock respective transaction content when it is determined that the other party performs the transaction.
In this way, it is possible to avoid losses caused by that the other party does not complete the transaction, thus achieving non-repudiation effects, thereby ensuring that the cross-chain transaction can be safely completed.
A person skilled in the art may clearly learn that the technology in the embodiments of the present invention can be implemented through software in combination with a necessary general hardware platform.
On the basis of such understanding, the technical solutions in the embodiments of the present invention essentially or parts of the technical solutions in the embodiments of the present invention that attribute to the prior art can be represented in software products.
A computer software product can be stored in the storage medium, such as a ROM/RAM, a magnetic disk, a compact disc, or the like, and includes a plurality of instructions to enable a computer device (may be a personal computer, a server, a network device, or the like) to perform the method in all embodiments or in some embodiments of the present invention.
For same or similar parts between the embodiments in this specification, reference may be made to each other. In addition, in the description of the present application, unless otherwise stated, "a plurality of" means two or more than two. In addition, for ease of clearly describing the technical solutions in the embodiments of the present application, in the embodiments of the present application, words such as "first" and "second" are used to distinguish same or similar items with basically the same functions. A person skilled in the art may understand that the words such as "first" and "second" do not limit a number and an execution order, and the words such as "first" and "second" do not necessarily mean that the items are different.
The foregoing implementations of the present application do not constitute any limitation on the protection scope of the present application.

Claims (8)

1. Een onweerlegbare cross-chain transactiewerkwijze omvattende: het creéren van een cross-chain transactie door een openbare keten, waarbij de cross-chain transactie omvat: een servicetransactie welke uitgevoerd dient te worden door een transactie initiërende keten en een terugkerende transactie welke uitgevoerd dient te worden door een transactie doelketen; het doorsturen, door een initiërende parallel keten, van een eerste vergrendelingsverzoek verzonden door de openbare keten naar de transactie initiërende keten, waarbij de eerste vergrendelingsverzoek transactie informatie van de servicetransactie omvat; het uitvoeren, door de transactie initiërende keten, van de servicetransactie op basis van het eerste vergrendelingsverzoek, en het vergrendelen van transactie inhoud van de servicetransactie; het doorsturen, door een doel parallel keten, een tweede vergrendelingsverzoek verzonden door de openbare keten, naar de transactie doelketen, waarbij het tweede vergrendelingsverzoek transactie informatie omvat van de terugkerende transactie; het utvoeren, door de transactie doelketen, de terugkerende transactie op basis van het tweede vergrendelingsverzoek, en het vergrendelen van transactie inhoud van de terugkerende transactie; en het instrueren, door de openbare keten, van de transactie initiërende keten om de transactie inhoud van de servicetransactie te ontgrendelen, en het instrueren van de transactie doelketen om de transactie inhoud van de terugkerende transactie te ontgrendelen, wanneer is vastgesteld dat zowel de servicetransactie en de terugkerende transactie is uitgevoerd.An irrefutable cross-chain transaction method comprising: creating a cross-chain transaction by a public chain, the cross-chain transaction comprising: a service transaction to be executed by a transaction initiating chain and a recurring transaction to be executed to be through a transaction target chain; forwarding, by an initiating parallel chain, a first lock request sent by the public chain to the transaction initiating chain, the first lock request comprising transaction information of the service transaction; executing, by the transaction initiating chain, the service transaction based on the first lock request, and locking transaction contents of the service transaction; forwarding, by a target parallel chain, a second lock request sent by the public chain to the transaction target chain, the second lock request including transaction information of the recurring transaction; executing, by the transaction target chain, the recurring transaction based on the second lock request, and locking transaction contents of the recurring transaction; and instructing, by the public chain, the transaction initiating chain to unlock the transaction content of the service transaction, and instructing the transaction target chain to unlock the transaction content of the recurring transaction, when it is determined that both the service transaction and the recurring transaction has been executed. 2. Werkwijze volgens conclusie 1, waarbij het doorsturen, door een initiërende parallel keten, van een eerste vergrendelingsverzoek verzonden door de openbare keten naar de transactie initiërende keten omvat: het ontvangen van het eerste vergrendelingsverzoek dat door de openbare keten is verzonden op basis van de cross-chain transactie;The method of claim 1, wherein forwarding, by an initiating parallel chain, a first lock request sent by the public chain to the transaction initiating chain comprises: receiving the first lock request sent by the public chain based on the cross-chain transaction; het detecteren, door de initiërende parallel keten op basis van de transactie informatie van de servicetransactie, of de transactie initiërende keten de servicetransactie ondersteunt; en het doorsturen, door de initiërende parallel keten, van het eerste vergrendelingsverzoek naar de transactie initiërende keten, wanneer is bepaald dat de transactie initiërende keten de servicetransactie ondersteunt; en het doorsturen, door een doel parallel keten, van een tweede vergrendelingsverzoek verzonden door de openbare keten naar de transactie doelketen omvat: het ontvangen van het tweede vergrendelingsverzoek dat wordt verzonden door de openbare keten op basis van de cross-chain transactie; het detecteren, door de doel parallel keten op basis van de transactie informatie van de terugkerende transactie, of de transactie doelketen de terugkerende transactie ondersteunt; en het doorsturen, door de doel parallel keten, van het tweede vergrendelingsverzoek naar de transactie doelketen, wanneer is vastgesteld dat de transactie doelketen de terugkerende transactie ondersteunt.detecting, by the initiating parallel chain, based on the transaction information of the service transaction, whether the transaction initiating chain supports the service transaction; and forwarding, by the initiating parallel chain, the first lock request to the transaction initiating chain when it is determined that the transaction initiating chain supports the service transaction; and forwarding, by a target parallel chain, a second locking request sent by the public chain to the transaction target chain comprising: receiving the second locking request sent by the public chain based on the cross-chain transaction; detecting, by the target parallel chain, based on the transaction information of the recurring transaction, whether the transaction target chain supports the recurring transaction; and forwarding, by the target parallel chain, the second lock request to the transaction target chain when it is determined that the transaction target chain supports the recurring transaction. 3. De werkwijze volgens conclusie 2, waarbij na het detecteren of de transactie initiërende keten de servicetransactie ondersteunt, de werkwijze verder omvat: het verzenden, door de initiërende parallel keten, van een foutinformatie om de openbare keten te informeren dat de cross-chain transactie mislukt, naar de openbare keten, wanneer wordt vastgesteld dat de transactie initiërende keten de servicetransactie niet ondersteunt; en na het detecteren of de transactie doelketen de terugkerende transactie ondersteunt, de werkwijze verder omvat: het verzenden, door de doel parallel keten, van de foutinformatie naar de openbare keten wanneer wordt vastgesteld dat de transactie doelketen de terugkerende transactie niet ondersteunt. 80 4. De werkwijze volgens conclusie 1, waarbij de werkwijze verder omvat:The method of claim 2, wherein after detecting whether the transaction initiating chain supports the service transaction, the method further comprises: sending, by the initiating parallel chain, an error information to inform the public chain that the cross-chain transaction fails, to the public chain, when it is determined that the transaction initiating chain does not support the service transaction; and after detecting whether the transaction target chain supports the recurring transaction, the method further comprises: sending, by the target parallel chain, the error information to the public chain when it is determined that the transaction target chain does not support the recurring transaction. The method of claim 1, wherein the method further comprises: het verzenden, door de transactie initiérende keten, van een servicevoltooiingsrespons op de initiërende parallel keten, wanneer de servicetransactie wordt uitgevoerd; het doorsturen, door de initiërende parallel keten, van de servicevoltooiingsrespons naar de openbare keten; het verzenden, door de transactie doelketen, van een terugkerende voltooiingsrespons naar de doel parallel keten, wanneer de terugkerende transactie wordt uitgevoerd; het doorsturen, door de doel parallel keten, van de terugkerende voltooungsrespons naar de openbare keten; en waarbij wordt bepaald dat zowel de servicetransactie als de terugkerende transactie zijn uitgevoerd wanneer de servicevoltooiingsrespons en de terugkerende voltooiingsrespons zijn ontvangen door de openbare keten.sending, by the transaction initiating chain, a service completion response to the initiating parallel chain when the service transaction is executed; forwarding, by the initiating parallel chain, the service completion response to the public chain; sending, by the transaction target chain, a recurring completion response to the target parallel chain when the recurring transaction is executed; forwarding, by the target parallel chain, the return completion response to the public chain; and determining that both the service transaction and the recurring transaction have been executed when the service completion response and the recurring completion response are received by the public chain. 5. De werkwijze volgens conclusie 1, waarbij wanneer de transactie initiërende keten en/of de transactie doelketen een functie van het vergrendelen van de transactie inhoud niet ondersteunt, de werkwijze verder omvat: het uitvoeren van een eerste overdrachtstransactie door de openbare keten op basis van de cross-chain transactie, en het vergrendelen van openbare keten tokens in de eerste overdrachtstransactie, waarbij de eerste overdrachtstransactie is dat de transactie doelketen openbare keten tokens betaalt die gelijk zijn aan de servicetransactie aan de transactie initiërende keten; het ontvangen, door de initiërende parallel keten, van een servicetransactieverzoek verzonden door de openbare keten, en het initiëren van de servicetransactie naar de transactie initiërende keten gebaseerd op het servicetransactieverzoek; het uitvoeren van de servicetransactie door de transactie initiérende keten; het instrueren van de publieke keten om de publieke keten tokens te ontgrendelen in de eerste overdrachtstransactie wanneer door de initiërende parallel keten wordt bepaald dat de service transactie is uitgevoerd;The method of claim 1, wherein when the transaction initiating chain and/or the transaction target chain does not support a function of locking the transaction contents, the method further comprises: performing a first transfer transaction by the public chain based on the cross-chain transaction, and locking public chain tokens in the first transfer transaction, the first transfer transaction being that the target transaction chain pays public chain tokens equal to the service transaction to the transaction initiating chain; receiving, by the initiating parallel chain, a service transaction request sent by the public chain, and initiating the service transaction to the transaction initiating chain based on the service transaction request; executing the service transaction through the transaction initiating chain; instructing the public chain to unlock the public chain tokens in the first transfer transaction when it is determined by the initiating parallel chain that the service transaction has been executed; het initiéren van een tweede overdrachtstransactie door de openbare keten op basis van de cross-chain transactie, en het vergrendelen van openbare keten tokens in de tweede overdrachtstransactie, waarbij de tweede overdrachtstransactie is dat de transactie initiërende keten openbare keten tokens betaalt die in gelijke waarde zijn als de terugkerende transactie naar de transactie doelketen; het ontvangen, door de doel parallel keten, een terugkerende transactie verzoek verzonden door de openbare keten, en het initiëren van de terugkerende transactie naar de transactie doelketen gebaseerd op het terugkerende transactie verzoek; het uitvoeren van de terugkerende transactie door de transactie doelketen; en het instrueren van de openbare keten om de openbare keten tokens in de tweede overdrachtstransactie te ontgrendelen wanneer door de doel parallel keten wordt bepaald dat de terugkerende transactie is uitgevoerd.initiating a second transfer transaction by the public chain based on the cross-chain transaction, and locking public chain tokens in the second transfer transaction, the second transfer transaction being that the transaction initiating chain pays public chain tokens of equal value as the return transaction to the transaction target chain; receiving, by the target parallel chain, a recurring transaction request sent by the public chain, and initiating the recurring transaction to the transaction target chain based on the recurring transaction request; executing the recurring transaction through the transaction target chain; and instructing the public chain to unlock the public chain tokens in the second transfer transaction when the target parallel chain determines that the recurring transaction has been performed. 6. De werkwijze volgens conclusie 5, waarbij voorafgaand aan het instrueren van de openbare keten om de openbare keten tokens te ontgrendelen in de eerste overdrachtstransactie, de werkwijze verder omvat: het detecteren, door de initiérende parallel keten, of de servicetransactie 1s geregistreerd in een eigen blokketen, waarbij wordt bepaald dat de servicetransactie is uitgevoerd wanneer wordt gedetecteerd dat de servicetransactie is geregistreerd in de eigen blokketen; en voorafgaand aan het instrueren van openbare keten om de openbare keten tokens te ontgrendelen in de tweede overdrachtstransactie, de werkwijze verder omvat: het detecteren, door de doel parallel keten, of de terugkerende transactie is geregistreerd in een eigen blokketen, waarbij wordt bepaald dat de terugkerende transactie is uitgevoerd wanneer wordt gedetecteerd dat de terugkerende transactie is vastgelegd in de eigen blokketen.The method of claim 5, wherein prior to instructing the public chain to unlock the public chain tokens in the first transfer transaction, the method further comprises: detecting, by the initiating parallel chain, whether the service transaction is registered in a own blockchain, determining that the service transaction has been executed when it is detected that the service transaction has been registered in the own blockchain; and prior to instructing the public chain to unlock the public chain tokens in the second transfer transaction, the method further comprises: detecting, by the target parallel chain, whether the recurring transaction is registered in its own block chain, determining that the recurring transaction has been executed when it detects that the recurring transaction is recorded in its own blockchain. 7. De werkwijze volgens een van de conclusies 1 tot en met 6, waarbij het creëren van een cross-chain transactie door een openbare keten omvat: het ontvangen, door de openbare keten, van een cross-chain transactieverzoek verzonden door de transactie initiërende keten, waarbij het cross-chain transactieverzoek omvat: transactie inhoud van de cross-chain transactie, en adresinformatie van de transactie initiërende keten en de transactie doelketen; en het creëren van de cross-chain transactie op basis van het cross-chain transactieverzoek.The method of any one of claims 1 to 6, wherein creating a cross-chain transaction by a public chain comprises: receiving, by the public chain, a cross-chain transaction request sent by the transaction initiating chain wherein the cross-chain transaction request includes: transaction content of the cross-chain transaction, and address information of the transaction initiating chain and the transaction target chain; and creating the cross-chain transaction based on the cross-chain transaction request. 8. Een blokketen systeem, omvattende een transactie initiërende keten, een initiërende parallel keten, een transactie doelketen, een doel parallel keten en een openbare keten, waarbij de initiërende parallel keten gemeenschappelijke knooppunten omvat die worden gedeeld door de transactie initiërende keten en de openbare keten, en de doel parallel keten gemeenschappelijke knooppunten omvat die worden gedeeld door de transactie doelketen en de openbare keten; waarbij de openbare keten is geconfigureerd om een cross-chain transactie te creëren, waarbij de cross-chain transactie omvat: een servicetransactie welke dient te worden uitgevoerd door de transactie initiërende keten en een terugkerende transactie welke dient te worden uitgevoerd door de transactie doelketen; waarbij de initiërende parallel keten is geconfigureerd om een eerste vergrendelingsverzoek, verzonden door de openbare keten, door te sturen naar de transactie initiërende keten, waarbij het eerste vergrendelingsverzoek transactie informatie van de service-transactie omvat; waarbij de transactie initiërende keten is geconfigureerd om de servicetransactie uit te voeren op basis van het eerste vergrendelingsverzoek, en de transactie inhoud van de servicetransactie te vergrendelen; waarbij de doel parallel keten is geconfigureerd om een tweede vergrendelingsverzoek door te sturen dat is verzonden door de openbare keten 80 naar de transactie doelketen, waarbij het tweede vergrendelingsverzoek transactie informatie van de terugkerende transactie omvat;A block chain system comprising a transaction initiating chain, an initiating parallel chain, a transaction target chain, a target parallel chain and a public chain, wherein the initiating parallel chain includes common nodes shared by the transaction initiating chain and the public chain , and the target parallel chain includes common nodes shared by the target transaction chain and the public chain; wherein the public chain is configured to create a cross-chain transaction, the cross-chain transaction comprising: a service transaction to be performed by the transaction initiating chain and a recurring transaction to be performed by the transaction target chain; wherein the initiating parallel chain is configured to forward a first lock request sent by the public chain to the transaction initiating chain, the first lock request including transaction information of the service transaction; wherein the transaction initiating chain is configured to execute the service transaction based on the first lock request, and lock the transaction contents of the service transaction; wherein the target parallel chain is configured to forward a second lock request sent by the public chain 80 to the transaction target chain, the second lock request comprising transaction information of the recurring transaction; waarbij de transactie doelketen is geconfigureerd om de terugkerende transactie uit te voeren op basis van het tweede vergrendelingsverzoek, en de transactie inhoud van de terugkerende transactie te vergrendelen; en waarbij de openbare keten is verder geconfigureerd om de transactie initiërende keten te instrueren om de transactie inhoud van de servicetransactie te ontgrendelen, en om de transactie doelketen te instrueren om de transactie inhoud van de terugkerende transactie te ontgrendelen, wanneer is vastgesteld dat zowel de service transactie en de terugkerende transactie zijn uitgevoerd.wherein the transaction target chain is configured to execute the recurring transaction based on the second lock request, and lock the transaction contents of the recurring transaction; and wherein the public chain is further configured to instruct the transaction initiating chain to unlock the transaction content of the service transaction, and to instruct the transaction target chain to unlock the transaction content of the recurring transaction, when it is determined that both the service transaction and the recurring transaction have been executed.
NL2026568A 2020-09-29 2020-09-29 Non-repudiation cross-chain transaction method and blockchain system NL2026568B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
NL2026568A NL2026568B1 (en) 2020-09-29 2020-09-29 Non-repudiation cross-chain transaction method and blockchain system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
NL2026568A NL2026568B1 (en) 2020-09-29 2020-09-29 Non-repudiation cross-chain transaction method and blockchain system

Publications (2)

Publication Number Publication Date
NL2026568A NL2026568A (en) 2020-11-27
NL2026568B1 true NL2026568B1 (en) 2021-12-01

Family

ID=73598254

Family Applications (1)

Application Number Title Priority Date Filing Date
NL2026568A NL2026568B1 (en) 2020-09-29 2020-09-29 Non-repudiation cross-chain transaction method and blockchain system

Country Status (1)

Country Link
NL (1) NL2026568B1 (en)

Also Published As

Publication number Publication date
NL2026568A (en) 2020-11-27

Similar Documents

Publication Publication Date Title
CN110866750B (en) Anti-repudiation cross-chain transaction method and block chain system
WO2020042934A1 (en) Non-repudiation cross-chain transaction method and blockchain system
CN109325762B (en) Parallel chain cross-chain transaction method, equipment and storage medium
WO2020258848A1 (en) Method and apparatus for cross-chain transmission of resources
RU2744496C2 (en) System and method for increasing safety of a smart contract in a chain of units
CN112837048B (en) Cross-block-chain data processing method, device, equipment and computer storage medium
CN110046998B (en) Cross-chain right using system, method, device, electronic equipment and storage medium
CN108876606B (en) Asset transfer method and device and electronic equipment
US20170221022A1 (en) Information transaction infrastructure
WO2022161181A1 (en) Data processing method and apparatus based on blockchain, and electronic device
CN111488291B (en) Pressure testing method, device and system for block chain network
US11526875B1 (en) Bank-driven model for preventing double spending of digital currency coexisting on multiple DLT networks
NL2024367B1 (en) Public chain-based token exchange method and blockchain system
NL2026568B1 (en) Non-repudiation cross-chain transaction method and blockchain system
NL2026796B1 (en) Parallel chain-based cross-chain transaction method, device, and blockchain system
WO2020042936A1 (en) Parallel chain-based cross-chain transaction method and apparatus, and block chain system
WO2020042930A1 (en) Parallel-chain-based transaction method and blockchain system
CN114445218A (en) Logistics financing method, device, equipment and medium based on block chain
US20200358597A1 (en) Blockchain-based data processing
CN113095821A (en) Method and device for interaction of property rights
CN111369243B (en) Distributed accounting method and device
KR20230006535A (en) A privacy-preserving decentralized payment network
NL2026376B1 (en) Public chain-based transaction method and blockchain system
WO2020042931A1 (en) Public chain-based transaction method and blockchain system
NL2026362B1 (en) Parallel chain-based transaction method and blockchain system

Legal Events

Date Code Title Description
MM Lapsed because of non-payment of the annual fee

Effective date: 20231001