CN113377875A - Cross-link data processing method and device, electronic equipment and readable storage medium - Google Patents

Cross-link data processing method and device, electronic equipment and readable storage medium Download PDF

Info

Publication number
CN113377875A
CN113377875A CN202110730252.XA CN202110730252A CN113377875A CN 113377875 A CN113377875 A CN 113377875A CN 202110730252 A CN202110730252 A CN 202110730252A CN 113377875 A CN113377875 A CN 113377875A
Authority
CN
China
Prior art keywords
cross
event
chain
resource
relay
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110730252.XA
Other languages
Chinese (zh)
Other versions
CN113377875B (en
Inventor
刘晓赫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202110730252.XA priority Critical patent/CN113377875B/en
Publication of CN113377875A publication Critical patent/CN113377875A/en
Application granted granted Critical
Publication of CN113377875B publication Critical patent/CN113377875B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The disclosure provides a method and a device for processing cross-chain data, electronic equipment and a readable storage medium, and relates to the technical field of block chains, in particular to the technical field of cross-chain of block chains. The method comprises the following steps: when a node of a first block chain receives a resource locking request aiming at a first resource on the first block chain, the first resource is locked, and a first resource locking event is triggered, a first cross-link relay acquires first resource locking information in response to the first resource locking event and sends the first resource locking information to a relay block chain node, and the relay block chain node triggers a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period, and carries out corresponding processing based on the cross-link event. In the scheme, the timing task in the cross-chain transaction is realized through the relay block chain and the relay together, so that the cross-chain transaction does not depend on the timing task capability of the block chain any more, and the universality of the cross-chain transaction scheme is improved.

Description

Cross-link data processing method and device, electronic equipment and readable storage medium
Technical Field
The present disclosure relates to the field of blockchain technologies, and in particular, to a method and an apparatus for processing cross-chain data, an electronic device, and a readable storage medium.
Background
The block chain technology is developed to date, a plurality of different block chains are produced, and data on the chains of the block chains are isolated, so that the block chains become a data isolated island, and the different block chains cannot be interconnected and intercommunicated.
The cross-chain technology is a technology for solving data interaction between two or more blockchains, so that data can cross the barriers of the chains and the price value can be circulated among different blockchains.
Currently, cross-chain transactions generally require that a participating blockchain has a capability of a timing task, so as to rollback a locked resource after a transaction is overtime, but most blockchains currently do not have the capability of the timing task, and therefore, when a blockchain without the capability of the timing task performs cross-chain transactions, the locked resource cannot be rolled back after the transaction is overtime, and the cross-chain transactions cannot be completed, which results in poor universality of a current cross-chain transaction scheme.
Disclosure of Invention
In order to solve at least one of the above defects, the present disclosure provides a method and an apparatus for processing cross-link data, an electronic device, and a readable storage medium.
According to a first aspect of the present disclosure, a method for processing cross-link data is provided, which is applied to a relay block link node, and the method includes:
receiving first resource locking information sent by a first cross-link relay, wherein the first resource locking information is acquired by the first cross-link relay to a first block chain in response to a first resource locking event in the first block chain;
and triggering a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period or not so as to enable the first block chain and the second block chain to respectively perform corresponding processing based on the cross-link event, wherein the second resource locking information is acquired from the second block chain by the second cross-link relay in response to the second resource locking event in the second block chain.
According to a second aspect of the present disclosure, there is provided another method for processing cross-link data, which is applied to a first cross-link relay, the method including:
responding to a first resource locking event in a first block chain, and acquiring first resource locking information from the first block chain;
and sending first resource locking information to the relay block chain node, so that the relay block chain link node triggers a corresponding chain crossing event based on whether second resource locking information sent by a second chain crossing relay is received or not within a specified time period, so that the first block chain and the second block chain are correspondingly processed based on the chain crossing event, and the second resource locking information is acquired by the second chain crossing relay from the second block chain in response to the second resource locking event in the second block chain.
According to a third aspect of the present disclosure, there is provided a method for processing data across chains, applied to a first node in a first blockchain, the method including:
when a resource locking request aiming at a first resource on a first block chain is received, locking the first resource, and triggering a first resource locking event, so that a first cross-link relay acquires first resource locking information from the first block chain in response to the first resource locking event, and sends the first resource locking information to a relay block chain node, so that the relay block chain node triggers a corresponding cross-link event based on whether second resource locking information transmitted by a second cross-link relay is received in a specified time period, wherein the second resource locking information is acquired from the second cross-link relay to a second block chain in response to a second resource locking event in the second block chain;
and performing corresponding processing based on the cross-chain event.
According to a fourth aspect of the present disclosure, there is provided a cross-chain data processing apparatus comprising:
a first resource locking information receiving module, configured to receive first resource locking information sent by a first cross-link relay, where the first resource locking information is obtained by the first cross-link relay to a first block chain in response to a first resource locking event in the first block chain;
and the data processing module is used for triggering a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period or not so as to enable the first block chain and the second block chain to be correspondingly processed based on the cross-link event respectively, wherein the second resource locking information is acquired from the second block chain by the second cross-link relay in response to the second resource locking event in the second block chain.
According to a fifth aspect of the present disclosure, there is provided another cross-chain data processing apparatus, comprising:
a first resource locking information obtaining module, configured to obtain first resource locking information from a first block chain in response to a first resource locking event in the first block chain;
the data processing module is configured to send first resource locking information to the relay block chain node, so that the relay block chain node triggers a corresponding chain crossing event based on whether second resource locking information sent by a second chain crossing relay is received within a specified time period, so that the first block chain and the second block chain perform corresponding processing based on the chain crossing event, and the second resource locking information is acquired by the second chain crossing relay to the second block chain in response to the second resource locking event in the second block chain.
According to a sixth aspect of the present disclosure, there is provided yet another cross-chain data processing apparatus, the apparatus comprising:
the system comprises a locking event triggering module, a first block chain and a second block chain, wherein the locking event triggering module is used for locking a first resource and triggering the first resource locking event when receiving a resource locking request aiming at the first resource on the first block chain, so that a first cross-link relay acquires first resource locking information from the first block chain in response to the first resource locking event, and the first resource locking information is sent to a relay block chain node, so that the relay block chain node triggers a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period, and the second resource locking information is acquired from the second cross-link relay to the second block chain in response to the second resource locking event in the second block chain;
and the data processing module is used for carrying out corresponding processing based on the cross-chain event.
According to a seventh aspect of the present disclosure, there is provided an electronic apparatus comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the cross-chain data processing method.
According to an eighth aspect of the present disclosure, there is provided a non-transitory computer readable storage medium storing computer instructions for causing a computer to execute the above-described cross-chain data processing method.
According to a ninth aspect of the present disclosure, there is provided a computer program product comprising a computer program which, when executed by a processor, implements the above-described cross-chain data processing method.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present disclosure, nor do they limit the scope of the present disclosure. Other features of the present disclosure will become apparent from the following description.
The technical scheme provided by the disclosure has the following beneficial effects:
according to the scheme provided by the embodiment of the disclosure, when a node of a first block chain receives a resource locking request aiming at a first resource on the first block chain, the first resource is locked, and a first resource locking event is triggered, a first cross-chain relay acquires first resource locking information from the first block chain in response to the first resource locking event, and sends the first resource locking information to a relay block chain node, and the relay block chain node triggers a corresponding cross-chain event based on whether second resource locking information sent by a second cross-chain relay is received or not in a specified time period, and performs corresponding processing based on the cross-chain event. In the scheme, the timing task in the cross-chain transaction is realized through the relay block chain and the relay, so that the cross-chain transaction does not depend on the timing task capacity of the block chain any more, and the universality of the cross-chain transaction scheme is improved.
Drawings
FIG. 1 is a schematic structural diagram of a cross-chain system provided by an embodiment of the present disclosure;
FIG. 2 is a flowchart illustrating a method for processing cross-chain data according to an embodiment of the present disclosure;
FIG. 3 is a schematic flowchart of another cross-chain data processing method provided in the embodiments of the present disclosure;
FIG. 4 is a schematic flowchart illustrating a further cross-link data processing method according to an embodiment of the disclosure;
FIG. 5 is a flowchart illustrating a specific implementation of a cross-chain data processing method according to an embodiment of the disclosure;
FIG. 6 is a flowchart illustrating another specific implementation of a cross-chain data processing method according to an embodiment of the disclosure;
FIG. 7 is a schematic structural diagram of a cross-chain data processing apparatus according to an embodiment of the present disclosure;
FIG. 8 is a schematic structural diagram of another cross-chain data processing apparatus provided in the embodiments of the present disclosure;
FIG. 9 is a schematic structural diagram of another cross-chain data processing apparatus provided in an embodiment of the present disclosure;
fig. 10 is a block diagram of an electronic device for implementing the cross-chain data processing method provided by the embodiment of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, in which various details of the embodiments of the disclosure are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
Solving the transactional nature of cross-chain transactions is a difficult problem faced in cross-chain technology. A complete cross-chain transaction can be split into a plurality of sub-transactions belonging to respective blockchain systems, and the sub-transactions form a transaction which should have the ACID characteristics including atomicity, consistency, isolation and persistence.
Atomic (atomic): operations in a cross-chain transaction either all occur or none occur;
identity (uniformity): a cross-chain transaction must transition all block chains from one coherency state to another;
isolation (isolation): the concurrent execution of each cross-chain transaction cannot interfere with each other;
durability (durabilty): once a cross-chain transaction is committed, its changes to the data in the blockchain are permanent and do not roll back without reason.
For a cross-chain transaction scene of asset exchange, a Hash locking scheme is mainly adopted at present, and fair transaction is realized by asset locking and setting corresponding timeout duration and unlocking conditions. The basic flow of hash locking is as follows:
(1) and generating a random number s by the account A on the block chain X, generating a hash value hash(s) of the random number s, and sending the hash(s) to the account B on the block chain Y.
(2) Account A locks money on blockchain X, transfers to account B if blockchain X receives s within time TA (current time +2X), and returns to account A otherwise. Where x is the timeout duration.
(3) And (5) the account B receives the hash(s), after the locking currency of the account A is determined and the preset time is determined, the currency is locked on the block chain Y, if the block chain Y receives s in the time TA-x, the currency is transferred to the account A, otherwise, the currency is returned to the account B.
(4) After determining the locking currency of the account B, the account A sends s to the block chain Y within the time TA-x to obtain the currency of the block chain Y.
(5) And after receiving s, the account B sends s to the block chain X within the time TA to obtain the coins of the block chain X.
In the hash locking scheme, a blockchain participating in cross-chain transaction needs to have the capability of a timing task, but most blockchains do not have the capability of the timing task at present, so that when the blockchain without the capability of the timing task performs cross-chain transaction, the locked resource cannot be rolled back after the transaction is over time, and the universality of the existing cross-chain transaction scheme is poor.
The cross-chain data processing method, device, electronic device and readable storage medium provided by the embodiments of the present disclosure aim to solve at least one of the above technical problems in the prior art.
Fig. 1 shows a schematic structural diagram of a cross-chain system provided by an embodiment of the present disclosure, and the method provided by the embodiment of the present disclosure is applied to the cross-chain system shown in fig. 1, where the cross-chain system includes a relay blockchain, a first cross-chain relay, a second blockchain, and a second cross-chain relay.
The deployment of the relay block chain is provided with a cross-chain management contract which is used for application chain management, verification of application chain certification information, triggering of cross-chain events, storage query of cross-chain transactions and the like. By abstracting the behavior of the heterogeneous chain, the relay block chain standardizes the realization interface of the parallel chain, and the cross-chain management contract can be updated by realizing the block chain abstract class so as to adapt to the new heterogeneous chain type. The interfaces defined in the relay block chain may be as shown in table 1.
TABLE 1
Figure BDA0003139022730000061
The function realized by the interface named as register Block is used for registering application chain information, the function realized by the interface named as unregisterBlock is used for canceling application chain information, and the function realized by the interface named as DataVertification is used for verifying the validity of a message sent by an application chain.
The first block chain and the second block chain, namely the application block chain, are parallel chains participating in cross-chain transactions, and are deployed with a cross-chain contract and a service contract, the cross-chain contract and the service contract can be communicated through cross-contract calling, and unified validity checking, data serialization and security authentication can be performed on cross-chain messages of the service contract based on the cross-chain contract.
The first cross-link relay and the second cross-link relay, namely the relay, are interaction components for connecting different blockchain systems, and are used for connecting the application blockchain and the relay blockchain. The relay can listen for cross-link events occurring in the application chain and the relay block chain. By abstracting the behavior of the heterogeneous chain, the cross-chain relay can define the interface shown in table 2, and different heterogeneous chains only need to realize the interface according to the characteristics of the heterogeneous chains.
TABLE 2
Figure BDA0003139022730000071
The function realized by the interface named as 'Init' is initialization application chain configuration, the function realized by the interface named as 'Stop' is Stop operation, the function realized by the interface named as 'ListeningEvents' is monitoring cross-link events and transmitting the events to a core module for processing, and the function realized by the interface named as 'InvokeProxContract' calls a cross-link contract and is used for transmitting the information of the relay block chain to the parallel chain.
The cross-chain system provided by the embodiment of the present disclosure may further include a cross-chain client, that is, a user may initiate a request to different types of application blockchains and relay blockchains using an entry of the cross-chain system.
The chain-crossing system provided by the embodiment of the disclosure does not limit the number of application block chains, can be expanded according to actual needs, and supports access of heterogeneous block chains.
The initialization process of the cross-chain system provided by the embodiment of the disclosure is specifically as follows:
the application chains respectively start the network and deploy a cross-link contract (a relay block chain is designated during initialization) and a service contract;
a relay block chain deploys a cross-chain management contract;
information of each application chain is registered with a cross-link management contract of the relay block chain. The registered information depends on the trust model of the application chain, and can be a starting block or a certifier certificate;
the configuration and initiation of the relay is used to connect the application blockchain with the relay blockchain.
When the inter-chain system provided by the embodiment of the present disclosure wants to support a new blockchain a of a blockchain type, the following modifications need to be made:
(1) upgrading a cross-link management contract of the relay block chain, and supporting registration, management and verification of the block chain A;
(2) compiling a cross-link contract of an intelligent contract language facing to a block chain A;
(3) and compiling a plug-in of the cross-link relay based on the SDK of the block chain A to realize a corresponding interface, so that the relay has the capability of communicating with the block chain A.
It becomes very simple for a running application blockchain to want to access a cross-chain system, as follows:
(1) the application block chain deploys a cross-chain contract facing to the intelligent contract language of the application block chain;
(2) upgrading the existing service contract, and communicating with the cross-chain contract through cross-contract calling;
(3) authorizing a cross-link right of the business contract through a cross-link contract;
(4) registering information of the application chain to the relay chain, such as registering a root of trust of the application chain, and verifying the validity of the message based on the root of trust when subsequently performing cross-chain message verification;
(5) cross-link relays are configured and initiated to connect the relay blockchain with the application blockchain.
At this time, the application blockchain can access the cross-chain system, and cross-chain connection is established with other application chains.
In the prior art, the interoperation of two heterogeneous or homogeneous block chains is generally realized through a relay mode, and the two chains need to establish a light client for maintaining the state of the block chain of the other side. In this way, since the two blockchains need to directly verify the messages of the other side, the codes of the blockchains need to be modified, the implementation difficulty is high, and hot plugging of the blockchains cannot be realized, i.e., the functions of accessing, exiting and updating the application chains cannot be performed under the condition that the operation of the cross-chain system is not affected. In addition, in this way, when one blockchain wants to cross chains with heterogeneous blockchains of different types, an adaptation is needed to be performed on one blockchain, which results in high adaptation complexity.
The cross-chain system provided by the embodiment of the disclosure can realize the access of the application chain by deploying the cross-chain contract and the service intelligent contract and registering the application block chain to the cross-chain management contract of the relay block chain, does not need complex code modification work, reduces the realization difficulty of the cross-chain system, and supports the hot plug of the application block chain, namely, the functions of accessing, exiting and updating the application block chain can be performed on the condition that the operation of the cross-chain system is not influenced. In addition, in the chain crossing system provided by the embodiment of the disclosure, when the application block chain needs to cross the chain with heterogeneous block chains of different types, two-by-two adaptation of the block chain is not needed, and only the relay block chain needs to be adapted, so that the adaptation complexity is reduced.
Fig. 2 shows a schematic flowchart of a cross-link data processing method provided by an embodiment of the present disclosure, where the method is applied to a relay block link node, and as shown in fig. 2, the method mainly includes:
step S210: and receiving first resource locking information sent by the first cross-link relay, wherein the first resource locking information is acquired by the first cross-link relay to the first block chain in response to a first resource locking event in the first block chain.
Step S220: and triggering a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period or not so as to enable the first block chain and the second block chain to respectively perform corresponding processing based on the cross-link event, wherein the second resource locking information is acquired from the second block chain by the second cross-link relay in response to the second resource locking event in the second block chain.
The first blockchain and the second blockchain may be two application blockchains participating in a cross-chain transaction in the cross-chain system shown in fig. 1, where the first cross-chain relay communicates with the first blockchain and the relay blockchain respectively, and the second cross-chain relay communicates with the second blockchain and the relay blockchain respectively. A relay block chain node is a node in a relay block chain.
The first resource and the second resource may be resources involved in a cross-chain transaction, and for example, in an asset exchange scenario, both the first resource and the second resource may be blockchain currency.
A resource locking request for a first resource and a resource locking request for a second resource may be respectively initiated, so that the first resource and the second resource are respectively locked, the steps of respectively locking the first resource and the second resource may not be in sequence, and a block chain that triggers a resource locking event earlier is regarded as a first block chain.
The service contracts of the first block chain and the second block chain have an asset management function, and cross-link contracts can be called through the service contracts to trigger resource locking events.
The first cross-link relay may monitor the first resource locking event, and obtain the first resource locking information when the first resource locking event is monitored. The first resource lock information may be included in event information of the first resource lock event.
The specified time interval is the maximum time length between the triggering of the first resource locking event and the triggering of the second resource locking event under the condition that the cross-link transaction is not overtime, and it can be considered that when the second resource locking information sent by the second cross-link relay is received in the specified time interval, the current cross-link transaction is not overtime, and when the second resource locking information sent by the second cross-link relay is not received in the specified time interval, the current cross-link transaction is overtime.
The specified duration may be determined by event information of the first resource locking event, for example, the event information of the first resource locking event may include a timeout timestamp, and the specified time period may be determined according to the timeout timestamp. In actual use, the event information of the first resource locking event may also include a block height, and the specified time period may also be determined according to the block height. Accordingly, the event information of the second resource lock event may also include a timeout timestamp, or a block height.
The relay blockchain may generate a corresponding cross-chain event based on whether the cross-chain transaction is timed out, so that the first blockchain and the second blockchain perform corresponding processing based on the cross-chain event respectively. Due to the fact that the timing task in the cross-chain transaction is achieved through the relay block chain and the relay, the cross-chain transaction is achieved, and the cross-chain transaction is not dependent on the timing task capacity of the block chain.
According to the method provided by the embodiment of the disclosure, when a node of a first block chain receives a resource locking request for a first resource on the first block chain, the first resource is locked, and a first resource locking event is triggered, a first cross-link relay acquires first resource locking information from the first block chain in response to the first resource locking event, and sends the first resource locking information to a relay block chain node, and the relay block chain node triggers a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period, and performs corresponding processing based on the cross-link event. In the scheme, the timing task in the cross-chain transaction is realized through the relay block chain and the relay, so that the cross-chain transaction does not depend on the timing task capacity of the block chain any more, and the universality of the cross-chain transaction scheme is improved.
In an optional manner of the embodiment of the present disclosure, the triggering a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period includes:
if second resource locking information sent by a second cross-link relay is received in a specified time period, triggering a resource transfer event;
and if the second resource locking information sent by the second cross-link relay is not received in the designated time period, triggering a resource rollback event.
The first blockchain and the second blockchain can monitor the cross-chain event through the relay, so that the locked resource is processed correspondingly.
If second resource locking information sent by a second cross-link relay is received within a specified time period, that is, under the condition that cross-link transaction is not overtime, a relay blockchain node may generate a resource transfer event, where the resource transfer event is used to enable the first blockchain and the second blockchain to perform asset transfer operation on a locked resource.
If the second resource locking information sent by the second cross-chain relay is not received within the specified time period, that is, under the condition that the cross-chain transaction is overtime, the relay block chain node may generate a resource rollback event, where the resource rollback event is used to enable the first block chain and the second block chain to perform asset rollback operations on the locked resource.
In an optional manner of the embodiment of the present disclosure, the method further includes:
receiving first to-be-verified data of a first resource locking event sent by a first cross-link relay, and performing first verification on the validity of the first resource locking event based on the first to-be-verified data;
triggering a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received within a specified time period, wherein the corresponding cross-link event comprises the following steps:
and if the first verification passes, triggering a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period.
The first to-be-verified data may be a presence certificate of a first resource locking event, and may be used to verify validity of the first resource locking event, and is generated by the first cross-link relay in response to the first resource locking event.
When the first verification fails, i.e., the first resource lock event is verified as invalid, the current cross-chain transaction may be considered to be untrusted and the cross-chain transaction may be terminated.
When the first verification passes, that is, the first resource locking event is verified to be valid, the current cross-link transaction may be continued, and second resource locking information sent by the second cross-link relay is waited for.
By verifying the validity of the first resource locking event, the credibility of the cross-chain transaction can be ensured, so that the safety of the cross-chain transaction is ensured, and the cross-chain system has higher reliability.
In actual use, the first to-be-verified data and the first resource locking information may be packaged into a first cross-link transaction by a first cross-link relay, the first cross-link transaction is sent to the relay block chain by the first cross-link relay, and the relay block chain obtains the first to-be-verified data and the first resource locking information by analyzing the first cross-link transaction.
In an optional manner of the embodiment of the present disclosure, if second resource locking information sent by a second cross-link relay is received within a specified time period, the method further includes:
receiving second to-be-verified data of a second resource locking event sent by a second cross-link relay, and performing second verification on the validity of the second resource locking event based on the second to-be-verified data;
triggering a corresponding cross-chain event, comprising:
and if the second verification passes, triggering a corresponding cross-chain event.
The second to-be-verified data may be a presence certificate of a second resource locking event, and may be used to perform validity verification on the second resource locking event, and the second cross-link relay generates the second to-be-verified data in response to the second resource locking event.
And verifying the validity of the second resource locking event on the basis that the cross-chain transaction is not overtime after the second resource locking information sent by the second cross-chain relay is received in a specified time period.
When the second verification fails, i.e., the second resource lock event is verified as invalid, the current cross-chain transaction may be considered to be untrusted, and the cross-chain transaction may be terminated.
When the second verification passes, that is, the second resource locking event is verified to be valid, the current cross-chain transaction can be considered to be trusted, the current cross-chain transaction is continued, and a resource transfer event is triggered.
By verifying the validity of the second resource locking event, the credibility of the cross-chain transaction can be ensured, so that the safety of the cross-chain transaction is ensured, and the cross-chain system has higher reliability.
In actual use, the second data to be verified and the second resource locking information may be packaged into a second cross-link transaction by a second cross-link relay, the second cross-link transaction is sent to the relay block chain by the first cross-link relay, and the relay block chain obtains the second data to be verified and the second resource locking information by analyzing the second cross-link transaction.
Fig. 3 is a schematic flowchart illustrating another cross-link data processing method provided in the embodiment of the present disclosure, where the method is applied to a first cross-link relay, and as shown in fig. 2, the method mainly includes:
step S310: responding to a first resource locking event in a first block chain, and acquiring first resource locking information from the first block chain;
step S320: and sending first resource locking information to the relay block chain node, so that the relay block chain link node triggers a corresponding chain crossing event based on whether second resource locking information sent by a second chain crossing relay is received or not within a specified time period, so that the first block chain and the second block chain are correspondingly processed based on the chain crossing event, and the second resource locking information is acquired by the second chain crossing relay from the second block chain in response to the second resource locking event in the second block chain.
The first blockchain and the second blockchain may be two application blockchains participating in a cross-chain transaction in the cross-chain system shown in fig. 1, where the first cross-chain relay communicates with the first blockchain and the relay blockchain respectively, and the second cross-chain relay communicates with the second blockchain and the relay blockchain respectively. A relay block chain node is a node in a relay block chain.
The first resource and the second resource may be resources involved in a cross-chain transaction, and for example, in an asset exchange scenario, both the first resource and the second resource may be blockchain currency.
A resource locking request for a first resource and a resource locking request for a second resource may be respectively initiated, so that the first resource and the second resource are respectively locked, the steps of respectively locking the first resource and the second resource may not be in sequence, and a block chain that triggers a resource locking event earlier is regarded as a first block chain.
The service contracts of the first block chain and the second block chain have an asset management function, and cross-link contracts can be called through the service contracts to trigger resource locking events.
The first cross-link relay may monitor the first resource locking event, and obtain the first resource locking information when the first resource locking event is monitored. The first resource lock information may be included in event information of the first resource lock event.
The specified time interval is the maximum time length between the triggering of the first resource locking event and the triggering of the second resource locking event under the condition that the cross-link transaction is not overtime, and it can be considered that when the second resource locking information sent by the second cross-link relay is received in the specified time interval, the current cross-link transaction is not overtime, and when the second resource locking information sent by the second cross-link relay is not received in the specified time interval, the current cross-link transaction is overtime.
The specified duration may be determined by event information of the first resource locking event, for example, the event information of the first resource locking event may include a timeout timestamp, and the specified time period may be determined according to the timeout timestamp. In actual use, the event information of the first resource locking event may also include a block height, and the specified time period may also be determined according to the block height. Accordingly, the event information of the second resource lock event may also include a timeout timestamp, or a block height.
The relay blockchain may generate a corresponding cross-chain event based on whether the cross-chain transaction is timed out, so that the first blockchain and the second blockchain perform corresponding processing based on the cross-chain event respectively. Due to the fact that the timing task in the cross-chain transaction is achieved through the relay block chain and the relay, the cross-chain transaction is achieved, and the cross-chain transaction is not dependent on the timing task capacity of the block chain.
According to the method provided by the embodiment of the disclosure, when a node of a first block chain receives a resource locking request for a first resource on the first block chain, the first resource is locked, and a first resource locking event is triggered, a first cross-link relay acquires first resource locking information from the first block chain in response to the first resource locking event, and sends the first resource locking information to a relay block chain node, and the relay block chain node triggers a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period, and performs corresponding processing based on the cross-link event. In the scheme, the timing task in the cross-chain transaction is realized through the relay block chain and the relay, so that the cross-chain transaction does not depend on the timing task capacity of the block chain any more, and the universality of the cross-chain transaction scheme is improved.
In an optional manner of the embodiment of the present disclosure, the method further includes:
generating first to-be-verified data for a first resource lock event in response to the first resource lock event;
and sending the first to-be-verified data to the relay block chain node so that the relay block chain node performs first verification on the validity of the first resource locking event based on the first to-be-verified data.
The first to-be-verified data may be a presence certificate of a first resource locking event, and may be used to verify validity of the first resource locking event, and is generated by the first cross-link relay in response to the first resource locking event.
When the first verification fails, i.e., the first resource lock event is verified as invalid, the current cross-chain transaction may be considered to be untrusted and the cross-chain transaction may be terminated.
When the first verification passes, that is, the first resource locking event is verified to be valid, the current cross-link transaction may be continued, and second resource locking information sent by the second cross-link relay is waited for.
By verifying the validity of the first resource locking event, the credibility of the cross-chain transaction can be ensured, so that the safety of the cross-chain transaction is ensured, and the cross-chain system has higher reliability.
In actual use, the first to-be-verified data and the first resource locking information may be packaged into a first cross-link transaction by a first cross-link relay, the first cross-link transaction is sent to the relay block chain by the first cross-link relay, and the relay block chain obtains the first to-be-verified data and the first resource locking information by analyzing the first cross-link transaction.
In an optional manner of the embodiment of the present disclosure, the method further includes:
generating third data to be verified of the cross-chain event in response to the cross-chain event;
and sending the third data to be verified to the first node in the first block chain, so that the first node performs third verification on the validity of the cross-chain event based on the third data to be verified.
The third data to be verified can be existence proof of a cross-chain event, can be used for validity verification of the cross-chain event, and is generated by the first cross-chain relay in response to the cross-chain event.
When the third verification fails, that is, the cross-chain event is verified as invalid, the current cross-chain transaction may be considered to be untrusted, and the cross-chain transaction may be terminated.
When the third verification passes, namely the cross-chain event is verified to be valid, the current cross-chain transaction can be considered to be credible, the current cross-chain transaction is continued, and the locked first resource is correspondingly processed.
By verifying the effectiveness of the cross-chain event, the credibility of the cross-chain transaction can be ensured, so that the safety of the cross-chain transaction is ensured, and the cross-chain system has higher reliability.
In actual use, the third data to be verified can be packaged into a third cross-link transaction by the first cross-link relay, the third cross-link transaction is sent to the first node in the first block chain by the first cross-link relay, and the first node obtains the third data to be verified by analyzing the third cross-link transaction.
Correspondingly, the second cross-chain relay may generate third data to be verified in response to the cross-chain event, in actual use, the third data to be verified generated by the second cross-chain relay may be packaged into a fourth cross-chain transaction by the second cross-chain relay, the fourth cross-chain transaction is sent to a second node in the second blockchain by the second cross-chain relay, and the second node obtains the third data to be verified by analyzing the fourth cross-chain transaction.
Fig. 4 is a flowchart illustrating a further cross-chain data processing method provided by an embodiment of the present disclosure, where the method is applied to a first node in a first blockchain, and as shown in fig. 4, the method mainly includes:
step S410: when a resource locking request aiming at a first resource on a first block chain is received, locking the first resource, and triggering a first resource locking event, so that a first cross-link relay acquires first resource locking information from the first block chain in response to the first resource locking event, and sends the first resource locking information to a relay block chain node, so that the relay block chain node triggers a corresponding cross-link event based on whether second resource locking information transmitted by a second cross-link relay is received in a specified time period, wherein the second resource locking information is acquired from the second cross-link relay to a second block chain in response to a second resource locking event in the second block chain;
step S420: and performing corresponding processing based on the cross-chain event.
The first blockchain and the second blockchain may be two application blockchains participating in a cross-chain transaction in the cross-chain system shown in fig. 1, where the first cross-chain relay communicates with the first blockchain and the relay blockchain respectively, and the second cross-chain relay communicates with the second blockchain and the relay blockchain respectively. A relay block chain node is a node in a relay block chain. The first node may be a node in the first blockchain that communicates with the first cross-link relay.
The first resource and the second resource may be resources involved in a cross-chain transaction, and for example, in an asset exchange scenario, both the first resource and the second resource may be blockchain currency.
A resource locking request for a first resource and a resource locking request for a second resource may be respectively initiated, so that the first resource and the second resource are respectively locked, the steps of respectively locking the first resource and the second resource may not be in sequence, and a block chain that triggers a resource locking event earlier is regarded as a first block chain.
The service contracts of the first block chain and the second block chain have an asset management function, and cross-link contracts can be called through the service contracts to trigger resource locking events.
The first cross-link relay may monitor the first resource locking event, and obtain the first resource locking information when the first resource locking event is monitored. The first resource lock information may be included in event information of the first resource lock event.
The specified time interval is the maximum time length between the triggering of the first resource locking event and the triggering of the second resource locking event under the condition that the cross-link transaction is not overtime, and it can be considered that when the second resource locking information sent by the second cross-link relay is received in the specified time interval, the current cross-link transaction is not overtime, and when the second resource locking information sent by the second cross-link relay is not received in the specified time interval, the current cross-link transaction is overtime.
The specified duration may be determined by event information of the first resource locking event, for example, the event information of the first resource locking event may include a timeout timestamp, and the specified time period may be determined according to the timeout timestamp. In actual use, the event information of the first resource locking event may also include a block height, and the specified time period may also be determined according to the block height. Accordingly, the event information of the second resource lock event may also include a timeout timestamp, or a block height.
The relay blockchain may generate a corresponding cross-chain event based on whether the cross-chain transaction is timed out, so that the first blockchain and the second blockchain perform corresponding processing based on the cross-chain event respectively. Due to the fact that the timing task in the cross-chain transaction is achieved through the relay block chain and the relay, the cross-chain transaction is achieved, and the cross-chain transaction is not dependent on the timing task capacity of the block chain.
According to the method provided by the embodiment of the disclosure, when a node of a first block chain receives a resource locking request for a first resource on the first block chain, the first resource is locked, and a first resource locking event is triggered, a first cross-link relay acquires first resource locking information from the first block chain in response to the first resource locking event, and sends the first resource locking information to a relay block chain node, and the relay block chain node triggers a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period, and performs corresponding processing based on the cross-link event. In the scheme, the timing task in the cross-chain transaction is realized through the relay block chain and the relay, so that the cross-chain transaction does not depend on the timing task capacity of the block chain any more, and the universality of the cross-chain transaction scheme is improved.
In an optional manner of the embodiment of the present disclosure, the cross-chain event includes a resource rollback event and a resource transfer event, and if the cross-chain event is the resource rollback event, corresponding processing is performed based on the cross-chain event, including:
rolling back the first resource;
if the cross-chain event is a resource transfer event, performing corresponding processing based on the cross-chain event, including:
the first resource is transferred.
The first blockchain and the second blockchain can monitor the cross-chain event through the relay, so that the locked resource is processed correspondingly.
If second resource locking information sent by a second cross-link relay is received within a specified time period, that is, under the condition that cross-link transaction is not overtime, a relay blockchain node may generate a resource transfer event, where the resource transfer event is used to enable the first blockchain and the second blockchain to perform asset transfer operation on a locked resource.
If the second resource locking information sent by the second cross-chain relay is not received within the specified time period, that is, under the condition that the cross-chain transaction is overtime, the relay block chain node may generate a resource rollback event, where the resource rollback event is used to enable the first block chain and the second block chain to perform asset rollback operations on the locked resource.
In an optional manner of the embodiment of the present disclosure, the method further includes:
receiving third data to be verified of a cross-link event sent by the first cross-link relay, wherein the third data to be verified is generated by the first cross-link relay in response to the cross-link event;
performing third verification on the effectiveness of the cross-chain event based on third data to be verified;
performing corresponding processing based on the cross-chain event, wherein the processing comprises the following steps:
and if the third verification passes, performing corresponding processing based on the cross-chain event.
The third data to be verified can be existence proof of a cross-chain event, can be used for validity verification of the cross-chain event, and is generated by the first cross-chain relay in response to the cross-chain event.
When the third verification fails, that is, the cross-chain event is verified as invalid, the current cross-chain transaction may be considered to be untrusted, and the cross-chain transaction may be terminated.
When the third verification passes, namely the cross-chain event is verified to be valid, the current cross-chain transaction can be considered to be credible, the current cross-chain transaction is continued, and the locked first resource is correspondingly processed.
By verifying the effectiveness of the cross-chain event, the credibility of the cross-chain transaction can be ensured, so that the safety of the cross-chain transaction is ensured, and the cross-chain system has higher reliability.
In actual use, the third data to be verified can be packaged into a third cross-link transaction by the first cross-link relay, the third cross-link transaction is sent to the first node in the first block chain by the first cross-link relay, and the first node obtains the third data to be verified by analyzing the third cross-link transaction.
Fig. 5 is a schematic flowchart illustrating a specific implementation of a cross-link data processing method according to an embodiment of the present disclosure, and as shown in fig. 5, an application chain a is a first block chain, a relay in communication with the application chain a is a first cross-link relay, an application chain B is a second block chain, and a relay in communication with the application chain B is a second cross-link relay, which is a relay block chain.
The specific processing flow of the cross-chain data processing method shown in fig. 5 is as follows:
step 1. a: calling a service contract 1 on an application chain A by the user Alice, wherein the service contract 1 has the asset management function;
step 2. a: the service contract 1 calls a cross-link contract through a cross-contract call;
step 3. a: cross-chain contract out cross-chain event E1 (i.e., first resource lock event), E1 contains information for an asset lock (i.e., first resource lock event information);
step 4. a: the first cross-link relay hears E1 through event listening;
step 5. a: the validity proof that the first cross-chain relay generates the presence of E1, P1 (i.e., the first presence proof), P1 may prove that E1 is valid, i.e., has occurred on the chain;
step 6. a: the first inter-chain relay packages a transaction T1 (i.e., a first inter-chain transaction) sent to the relay blockchain, and P1 is contained in T1;
step 1. b: a user Bob calls a service contract 1 on the application chain B, and the service contract 1 has the asset management function;
step 2. b: the service contract 1 calls a cross-link contract through a cross-contract call;
step 3. b: cross-chain contract out cross-chain event E2 (i.e., second resource lock event), E2 contains information for an asset lock (i.e., second resource lock event information);
step 4. b: the second inter-link relay hears E2 through event listening;
step 5. b: the validity of the second cross-chain relay generating the presence of E2 proves P2 (i.e., the second presence proof), P2 may prove that E2 is valid, i.e., has occurred on the chain;
step 6. b: the second inter-chain relay packages transaction T2 (i.e., the second inter-chain transaction) to the relay blockchain, which contains P2 in T2;
and 7: and performing T1 and T2 respectively across the chain joint, and verifying the validity of P1 and P2. The relay block chain enters different flows according to different conditions at the moment:
if P2 is not received within the specified period of time (i.e., the second proof of presence of the second resource lock event), then begin waiting, and if not received beyond the specified period of time, then invoke a cross-link management contract to trigger a Rollback event (i.e., an asset Rollback event);
if P2 is received for a specified period of time, then wait is started, and the cross-chain management contract is invoked to trigger a Commit event (i.e., an asset transfer event).
Fig. 6 is a schematic flowchart illustrating another specific implementation of a cross-chain data processing method according to an embodiment of the present disclosure, and as shown in fig. 6, an application chain a is a first block chain, a relay in communication with the application chain a is a first cross-chain relay, an application chain B is a second block chain, and a relay in communication with the application chain B is a second cross-chain relay, which is a relay block chain.
The specific processing flow of the cross-chain data processing method shown in fig. 6 is as follows:
and 8: relay chain trigger event E3 (asset rollback event or asset transfer event);
step 9. a: the first relay hears E3;
step 10. a: the first relay generates presence proving information P3 of E3 (for proving validity of E3);
step 11. a: the first relay sends the transaction T3 to the application chain a, containing P3 (i.e., the third presence certificate) within T3;
step 12. a: the validity of P3 is verified by cross-chain contract.
Step 13. a: the cross-chain contract tells the business contract whether an asset transfer operation or an asset rollback operation is required by the cross-contract call. If it is an asset transfer, the already locked asset is destroyed. If the asset rolls back, the locked asset is returned to the user Alice.
Step 9. b: the second relay hears E3;
step 10. b: the second relay generates presence proving information P3 of E3 (for proving validity of E3);
step 11.b the first relay sends the transaction T3 to the application chain a, containing P3 (i.e. the third presence certificate) within T3;
step 12. b: verifying the validity of P3 across the chain contract;
step 13. b: the cross-chain contract tells the business contract whether an asset transfer operation or an asset rollback operation is required by the cross-contract call. If it is an asset transfer, the already locked asset is destroyed. If it is an asset rollback, the locked asset is returned to user Bob.
Based on the same principle as the method shown in fig. 2, fig. 7 shows a schematic structural diagram of a cross-chain data processing apparatus provided by the embodiment of the present disclosure, as shown in fig. 7, the cross-chain data processing apparatus 70 may include:
a first resource locking information receiving module 710, configured to receive first resource locking information sent by a first cross-link relay, where the first resource locking information is obtained by the first cross-link relay to a first block chain in response to a first resource locking event in the first block chain;
the data processing module 720 is configured to trigger a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received within a specified time period, so that the first blockchain and the second blockchain are respectively processed based on the cross-link event, where the second resource locking information is obtained from the second blockchain by the second cross-link relay in response to the second resource locking event in the second blockchain.
According to the device provided by the embodiment of the disclosure, when a node of a first block chain receives a resource locking request for a first resource on the first block chain, the first resource is locked, and a first resource locking event is triggered, a first cross-link relay acquires first resource locking information from the first block chain in response to the first resource locking event, and sends the first resource locking information to a relay block chain node, and the relay block chain node triggers a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period, and performs corresponding processing based on the cross-link event. In the scheme, the timing task in the cross-chain transaction is realized through the relay block chain and the relay, so that the cross-chain transaction does not depend on the timing task capacity of the block chain any more, and the universality of the cross-chain transaction scheme is improved.
Optionally, the cross-link event includes a resource rollback event and a resource transfer event, and when the data processing module triggers a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received within a specified time period, the data processing module is specifically configured to:
if second resource locking information sent by a second cross-link relay is received in a specified time period, triggering a resource transfer event;
and if the second resource locking information sent by the second cross-link relay is not received in the designated time period, triggering a resource rollback event.
Optionally, the apparatus further comprises:
the first verification module is used for receiving first to-be-verified data of a first resource locking event sent by a first cross-link relay and performing first verification on the validity of the first resource locking event based on the first to-be-verified data;
the data processing module is specifically configured to, when a corresponding cross-link event is triggered based on whether second resource locking information sent by a second cross-link relay is received within a specified time period:
and if the first verification passes, triggering a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period.
Optionally, the apparatus further comprises:
the second verification module is used for receiving second to-be-verified data of a second resource locking event sent by the second cross-link relay when receiving second resource locking information sent by the second cross-link relay in a specified time period, and performing second verification on the validity of the second resource locking event based on the second to-be-verified data;
when triggering a corresponding cross-chain event, the data processing module is specifically configured to:
and if the second verification passes, triggering a corresponding cross-chain event.
It is understood that the above modules of the cross-chain data processing apparatus in the embodiment of the present disclosure have functions of implementing the corresponding steps of the cross-chain data processing method in the embodiment shown in fig. 2. The function can be realized by hardware, and can also be realized by executing corresponding software by hardware. The hardware or software includes one or more modules corresponding to the functions described above. The modules can be software and/or hardware, and each module can be implemented independently or by integrating a plurality of modules. For the functional description of each module of the test apparatus, reference may be specifically made to the corresponding description of the cross-chain data processing method in the embodiment shown in fig. 2, and details are not repeated here.
Based on the same principle as the method shown in fig. 3, fig. 8 shows a schematic structural diagram of a cross-chain data processing apparatus provided by the embodiment of the present disclosure, as shown in fig. 8, the cross-chain data processing apparatus 80 may include:
a first resource locking information obtaining module 810, configured to obtain first resource locking information from a first blockchain in response to a first resource locking event in the first blockchain;
a data processing module 820, configured to send first resource locking information to the relay block chain node, so that the relay block chain node triggers a corresponding chain crossing event based on whether second resource locking information sent by a second chain crossing relay is received within a specified time period, so that the first block chain and the second block chain perform corresponding processing based on the chain crossing event, where the second resource locking information is obtained by the second chain crossing relay to the second block chain in response to a second resource locking event in the second block chain.
According to the device provided by the embodiment of the disclosure, when a node of a first block chain receives a resource locking request for a first resource on the first block chain, the first resource is locked, and a first resource locking event is triggered, a first cross-link relay acquires first resource locking information from the first block chain in response to the first resource locking event, and sends the first resource locking information to a relay block chain node, and the relay block chain node triggers a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period, and performs corresponding processing based on the cross-link event. In the scheme, the timing task in the cross-chain transaction is realized through the relay block chain and the relay, so that the cross-chain transaction does not depend on the timing task capacity of the block chain any more, and the universality of the cross-chain transaction scheme is improved.
Optionally, the apparatus further includes a first module to be verified, configured to:
generating first to-be-verified data for a first resource lock event in response to the first resource lock event;
and sending the first to-be-verified data to the relay block chain node so that the relay block chain node performs first verification on the validity of the first resource locking event based on the first to-be-verified data.
Optionally, the apparatus further includes a third to-be-verified data module, configured to:
generating third data to be verified of the cross-chain event in response to the cross-chain event;
and sending the third data to be verified to the first node in the first block chain, so that the first node performs third verification on the validity of the cross-chain event based on the third data to be verified.
It is understood that the above modules of the cross-chain data processing apparatus in the embodiment of the present disclosure have functions of implementing the corresponding steps of the cross-chain data processing method in the embodiment shown in fig. 3. The function can be realized by hardware, and can also be realized by executing corresponding software by hardware. The hardware or software includes one or more modules corresponding to the functions described above. The modules can be software and/or hardware, and each module can be implemented independently or by integrating a plurality of modules. For the functional description of each module of the test apparatus, reference may be specifically made to the corresponding description of the cross-chain data processing method in the embodiment shown in fig. 3, and details are not repeated here.
Based on the same principle as the method shown in fig. 4, fig. 9 shows a schematic structural diagram of a cross-chain data processing apparatus provided by the embodiment of the present disclosure, as shown in fig. 9, the cross-chain data processing apparatus 90 may include:
a locking event triggering module 910, configured to, when a resource locking request for a first resource on a first blockchain is received, lock the first resource and trigger the first resource locking event, so that a first inter-link relay acquires first resource locking information from the first blockchain in response to the first resource locking event, and send the first resource locking information to a relay blockchain node, so that the relay blockchain node triggers a corresponding inter-link event based on whether second resource locking information sent by a second inter-link relay is received within a specified time period, where the second resource locking information is acquired from the second inter-link relay to a second blockchain in response to a second resource locking event in the second blockchain;
and the data processing module 920 is configured to perform corresponding processing based on the cross-chain event.
According to the device provided by the embodiment of the disclosure, when a node of a first block chain receives a resource locking request for a first resource on the first block chain, the first resource is locked, and a first resource locking event is triggered, a first cross-link relay acquires first resource locking information from the first block chain in response to the first resource locking event, and sends the first resource locking information to a relay block chain node, and the relay block chain node triggers a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period, and performs corresponding processing based on the cross-link event. In the scheme, the timing task in the cross-chain transaction is realized through the relay block chain and the relay, so that the cross-chain transaction does not depend on the timing task capacity of the block chain any more, and the universality of the cross-chain transaction scheme is improved.
Optionally, the cross-chain event includes a resource rollback event and a resource transfer event, and if the cross-chain event is the resource rollback event, the data processing module is specifically configured to:
rolling back the first resource;
if the cross-link event is a resource transfer event, the data processing module is specifically configured to, when performing corresponding processing based on the cross-link event:
the first resource is transferred.
Optionally, the apparatus further includes a third verification module, configured to:
receiving third data to be verified of a cross-link event sent by the first cross-link relay, wherein the third data to be verified is generated by the first cross-link relay in response to the cross-link event;
performing third verification on the effectiveness of the cross-chain event based on third data to be verified;
when the data processing module performs corresponding processing based on the cross-chain event, the data processing module is specifically configured to:
and if the third verification passes, performing corresponding processing based on the cross-chain event.
It is understood that the above modules of the cross-chain data processing apparatus in the embodiment of the present disclosure have functions of implementing the corresponding steps of the cross-chain data processing method in the embodiment shown in fig. 4. The function can be realized by hardware, and can also be realized by executing corresponding software by hardware. The hardware or software includes one or more modules corresponding to the functions described above. The modules can be software and/or hardware, and each module can be implemented independently or by integrating a plurality of modules. For the functional description of each module of the test apparatus, reference may be specifically made to the corresponding description of the cross-chain data processing method in the embodiment shown in fig. 4, and details are not repeated here.
The present disclosure also provides an electronic device, a readable storage medium, and a computer program product according to embodiments of the present disclosure.
The electronic device includes: at least one processor; and a memory communicatively coupled to the at least one processor; the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the cross-chain data processing method provided by the embodiment of the disclosure.
Compared with the prior art, when a node of a first block chain receives a resource locking request aiming at a first resource on the first block chain, the first resource is locked, and a first resource locking event is triggered, a first cross-chain relay responds to the first resource locking event to acquire first resource locking information from the first block chain and sends the first resource locking information to a relay block chain node, and the relay block chain node triggers a corresponding cross-chain event based on whether second resource locking information sent by a second cross-chain relay is received or not in a specified time period, and carries out corresponding processing based on the cross-chain event. In the scheme, the timing task in the cross-chain transaction is realized through the relay block chain and the relay, so that the cross-chain transaction does not depend on the timing task capacity of the block chain any more, and the universality of the cross-chain transaction scheme is improved.
The readable storage medium is a non-transitory computer readable storage medium storing computer instructions for causing a computer to execute the cross-chain data processing method provided by the embodiment of the disclosure.
Compared with the prior art, when a node of a first blockchain receives a resource locking request aiming at a first resource on the first blockchain, the first resource is locked, and a first resource locking event is triggered, a first cross-chain relay acquires first resource locking information from the first blockchain in response to the first resource locking event and sends the first resource locking information to a relay blockchain node, and the relay blockchain node triggers a corresponding cross-chain event based on whether second resource locking information sent by a second cross-chain relay is received or not within a specified time period, and performs corresponding processing based on the cross-chain event. In the scheme, the timing task in the cross-chain transaction is realized through the relay block chain and the relay, so that the cross-chain transaction does not depend on the timing task capacity of the block chain any more, and the universality of the cross-chain transaction scheme is improved.
The computer program product comprises a computer program which, when executed by a processor, implements the cross-chain data processing method as provided by the embodiments of the present disclosure.
Compared with the prior art, when a node of a first block chain receives a resource locking request aiming at a first resource on the first block chain, the first resource is locked, and a first resource locking event is triggered, a first cross-chain relay acquires first resource locking information from the first block chain in response to the first resource locking event, the first resource locking information is sent to the relay block chain node, the relay block chain node triggers a corresponding cross-chain event based on whether second resource locking information sent by a second cross-chain relay is received in a specified time period, and corresponding processing is carried out based on the cross-chain event. In the scheme, the timing task in the cross-chain transaction is realized through the relay block chain and the relay, so that the cross-chain transaction does not depend on the timing task capacity of the block chain any more, and the universality of the cross-chain transaction scheme is improved.
FIG. 10 illustrates a schematic block diagram of an example electronic device 2000 that can be used to implement embodiments of the present disclosure. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 10, the device 2000 includes a computing unit 2010, which may perform various appropriate actions and processes in accordance with a computer program stored in a Read Only Memory (ROM)2020 or a computer program loaded from a storage unit 2080 into a Random Access Memory (RAM) 2030. In the RAM 2030, various programs and data required for the operation of the device 2000 can also be stored. The computing unit 2010, ROM 2020, and RAM 2030 are coupled to each other via bus 2040. An input/output (I/O) interface 2050 is also connected to bus 2040.
Various components in device 2000 are connected to I/O interface 2050, including: an input unit 2060 such as a keyboard, a mouse, or the like; an output unit 2070 such as various types of displays, speakers, and the like; a storage unit 2080 such as a magnetic disk, an optical disk, and the like; and a communication unit 2090, such as a network card, modem, wireless communication transceiver, etc. The communication unit 2090 allows the device 2000 to exchange information/data with other devices over a computer network, such as the internet, and/or various telecommunication networks.
Computing unit 2010 may be a variety of general purpose and/or special purpose processing components having processing and computing capabilities. Some examples of computing unit 2010 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, or the like. The computing unit 2010 executes the cross-chain data processing method provided in the embodiments of the present disclosure. For example, in some embodiments, the cross-chain data processing methods provided in embodiments of the present disclosure may be implemented as a computer software program tangibly embodied in a machine-readable medium, such as storage unit 2080. In some embodiments, some or all of the computer program may be loaded onto and/or installed onto the device 2000 via the ROM 2020 and/or the communication unit 2090. When loaded into RAM 2030 and executed by computing unit 2010, may perform one or more steps of the cross-chain data processing method provided in embodiments of the disclosure. Alternatively, in other embodiments, the computing unit 2010 may be configured in any other suitable manner (e.g., by way of firmware) to perform the cross-chain data processing methods provided in embodiments of the present disclosure.
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), system on a chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes, when executed by the processor or controller, cause the functions/operations specified in the flowchart and/or block diagram to be performed. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), and the Internet.
The computer system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server may be a cloud server, a server of a distributed system, or a server with a combined blockchain.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present disclosure may be executed in parallel or sequentially or in different orders, and are not limited herein as long as the desired results of the technical solutions disclosed in the present disclosure can be achieved.
The above detailed description should not be construed as limiting the scope of the disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made in accordance with design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present disclosure should be included in the scope of protection of the present disclosure.

Claims (16)

1.A cross-link data processing method is applied to a relay block link node and comprises the following steps:
receiving first resource locking information sent by a first cross-link relay, wherein the first resource locking information is acquired by the first cross-link relay to a first block chain in response to a first resource locking event in the first block chain;
triggering a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period or not, so that the first blockchain and the second blockchain are respectively processed correspondingly based on the cross-link event, wherein the second resource locking information is acquired by the second cross-link relay from the second blockchain in response to the second resource locking event in the second blockchain.
2. The method of claim 1, wherein the cross-chain event comprises a resource rollback event and a resource transfer event, and the triggering a corresponding cross-chain event based on whether second resource locking information sent by a second cross-chain relay is received within a specified time period comprises:
if second resource locking information sent by a second cross-link relay is received in a specified time period, triggering a resource transfer event;
and if the second resource locking information sent by the second cross-link relay is not received in the designated time period, triggering a resource rollback event.
3. The method of claim 1 or 2, further comprising:
receiving first to-be-verified data of a first resource locking event sent by the first cross-link relay, and performing first verification on the validity of the first resource locking event based on the first to-be-verified data;
the triggering of the corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received within a specified time period includes:
and if the first verification passes, triggering a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period.
4. The method of any of claims 1-3, wherein if second resource lock information sent by a second cross-link relay is received within a specified time period, the method further comprises:
receiving second to-be-verified data of a second resource locking event sent by the second cross-link relay, and performing second verification on the validity of the second resource locking event based on the second to-be-verified data;
the triggering of the corresponding cross-chain event comprises:
and if the second verification passes, triggering a corresponding cross-chain event.
5.A cross-link data processing method is applied to a first cross-link relay, and comprises the following steps:
responding to a first resource locking event in a first block chain, and acquiring first resource locking information from the first block chain;
and sending the first resource locking information to a relay block link point, so that the relay block link point triggers a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received in a specified time period, so that the first block link and a second block link perform corresponding processing based on the cross-link event, wherein the second resource locking information is acquired by the second cross-link relay to the second block link in response to the second resource locking event in the second block link.
6. The method of claim 5, further comprising:
generating first to-be-verified data for the first resource lock event in response to the first resource lock event;
and sending the first to-be-verified data to a relay block chain node so that the relay block chain node performs first verification on the validity of the first resource locking event based on the first to-be-verified data.
7. The method of claim 5 or 6, further comprising:
generating third data to be verified of the cross-chain event in response to the cross-chain event;
and sending the third data to be verified to a first node in a first block chain, so that the first node performs third verification on the validity of the cross-chain event based on the third data to be verified.
8. A cross-chain data processing method is applied to a first node in a first block chain and comprises the following steps:
when a resource locking request aiming at a first resource on the first blockchain is received, locking the first resource, and triggering a first resource locking event, so that a first cross-link relay acquires first resource locking information from the first blockchain in response to the first resource locking event, and sends the first resource locking information to a relay blockchain node, so that the relay blockchain node triggers a corresponding cross-link event based on whether second resource locking information transmitted by a second cross-link relay is received in a specified time period, wherein the second resource locking information is acquired from the second cross-link relay to a second blockchain in response to a second resource locking event in the second blockchain;
and performing corresponding processing based on the cross-chain event.
9. The method according to claim 8, wherein the cross-chain event includes a resource rollback event and a resource transfer event, and if the cross-chain event is the resource rollback event, the performing corresponding processing based on the cross-chain event includes:
rolling back the first resource;
if the cross-chain event is a resource transfer event, the corresponding processing based on the cross-chain event comprises the following steps:
and transferring the first resource.
10. The method of claim 8 or 9, wherein the method further comprises:
receiving third data to be verified of the cross-chain event sent by the first cross-chain relay, wherein the third data to be verified is generated by the first cross-chain relay in response to the cross-chain event;
performing third verification on the validity of the cross-chain event based on the third data to be verified;
the corresponding processing is carried out based on the cross-chain event, and the processing comprises the following steps:
and if the third verification passes, performing corresponding processing based on the cross-chain event.
11.A cross-chain data processing apparatus comprising:
a first resource locking information receiving module, configured to receive first resource locking information sent by a first cross-link relay, where the first resource locking information is obtained by the first cross-link relay to a first block chain in response to a first resource locking event in the first block chain;
the data processing module is configured to trigger a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received within a specified time period, so that the first blockchain and the second blockchain are respectively processed based on the cross-link event, where the second resource locking information is obtained by the second cross-link relay from the second blockchain in response to the second resource locking event in the second blockchain.
12.A cross-chain data processing apparatus comprising:
a first resource locking information obtaining module, configured to respond to a first resource locking event in a first block chain, and obtain first resource locking information from the first block chain;
a data processing module, configured to send the first resource locking information to a relay block link point, so that the relay block link point triggers a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received within a specified time period, so that the first block chain and the second block chain perform corresponding processing based on the cross-link event, where the second resource locking information is obtained by the second cross-link relay from the second block chain in response to the second resource locking event in the second block chain.
13.A cross-chain data processing apparatus comprising:
a locking event triggering module, configured to, when a resource locking request for a first resource on the first blockchain is received, lock the first resource and trigger the first resource locking event, so that a first cross-link relay acquires first resource locking information from the first blockchain in response to the first resource locking event, and send the first resource locking information to a relay blockchain node, so that the relay blockchain node triggers a corresponding cross-link event based on whether second resource locking information sent by a second cross-link relay is received within a specified time period, where the second resource locking information is acquired from the second cross-link relay to the second blockchain in response to a second resource locking event in the second blockchain;
and the data processing module is used for carrying out corresponding processing based on the cross-chain event.
14. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-10.
15. A non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method of any one of claims 1-10.
16. A computer program product comprising a computer program which, when executed by a processor, implements the method according to any one of claims 1-10.
CN202110730252.XA 2021-06-29 2021-06-29 Cross-chain data processing method and device, electronic equipment and readable storage medium Active CN113377875B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110730252.XA CN113377875B (en) 2021-06-29 2021-06-29 Cross-chain data processing method and device, electronic equipment and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110730252.XA CN113377875B (en) 2021-06-29 2021-06-29 Cross-chain data processing method and device, electronic equipment and readable storage medium

Publications (2)

Publication Number Publication Date
CN113377875A true CN113377875A (en) 2021-09-10
CN113377875B CN113377875B (en) 2024-03-22

Family

ID=77579972

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110730252.XA Active CN113377875B (en) 2021-06-29 2021-06-29 Cross-chain data processing method and device, electronic equipment and readable storage medium

Country Status (1)

Country Link
CN (1) CN113377875B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114185996A (en) * 2022-02-15 2022-03-15 北京溪塔科技有限公司 Cross-chain transaction processing method and device
CN116708463A (en) * 2023-08-04 2023-09-05 腾讯科技(深圳)有限公司 Information processing method, device, equipment and medium based on multi-block chain

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108269190A (en) * 2018-01-17 2018-07-10 深圳四方精创资讯股份有限公司 Across chain method and its system based on across chain relaying platform
CN110245517A (en) * 2019-05-29 2019-09-17 杭州秘猿科技有限公司 A kind of across chain method, apparatus, system and the electronic equipment of block chain
WO2020258848A1 (en) * 2019-06-28 2020-12-30 创新先进技术有限公司 Method and apparatus for cross-chain transmission of resources
CN112650764A (en) * 2020-12-30 2021-04-13 北京百度网讯科技有限公司 Cross-chain data processing method, device, equipment and storage medium
CN112927075A (en) * 2021-02-26 2021-06-08 北京百度网讯科技有限公司 Processing method and device for cross-chain transaction, electronic equipment and readable storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108269190A (en) * 2018-01-17 2018-07-10 深圳四方精创资讯股份有限公司 Across chain method and its system based on across chain relaying platform
CN110245517A (en) * 2019-05-29 2019-09-17 杭州秘猿科技有限公司 A kind of across chain method, apparatus, system and the electronic equipment of block chain
WO2020258848A1 (en) * 2019-06-28 2020-12-30 创新先进技术有限公司 Method and apparatus for cross-chain transmission of resources
CN112650764A (en) * 2020-12-30 2021-04-13 北京百度网讯科技有限公司 Cross-chain data processing method, device, equipment and storage medium
CN112927075A (en) * 2021-02-26 2021-06-08 北京百度网讯科技有限公司 Processing method and device for cross-chain transaction, electronic equipment and readable storage medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LING CAO; BO SONG: "Blockchain cross-chain protocol and platform research and development", 《2021 INTERNATIONAL CONFERENCE ON ELECTRONICS, CIRCUITS AND INFORMATION ENGINEERING (ECIE)》 *
叶少杰;汪小益;徐才巢;孙建伶;: "BitXHub:基于侧链中继的异构区块链互操作平台", 计算机科学, no. 06 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114185996A (en) * 2022-02-15 2022-03-15 北京溪塔科技有限公司 Cross-chain transaction processing method and device
CN114185996B (en) * 2022-02-15 2022-05-13 北京溪塔科技有限公司 Cross-chain transaction processing method and device
CN116708463A (en) * 2023-08-04 2023-09-05 腾讯科技(深圳)有限公司 Information processing method, device, equipment and medium based on multi-block chain
CN116708463B (en) * 2023-08-04 2023-10-03 腾讯科技(深圳)有限公司 Information processing method, device, equipment and medium based on multi-block chain

Also Published As

Publication number Publication date
CN113377875B (en) 2024-03-22

Similar Documents

Publication Publication Date Title
CN109087080B (en) Cross-chain transaction method, device and storage medium
CN108848119B (en) Cross-block-chain interaction method, device, system and electronic equipment
CN112783877B (en) Cross-chain data verification method, device, equipment and storage medium
CN109981646B (en) Resource transfer method and device based on block chain and electronic equipment
CN112650764A (en) Cross-chain data processing method, device, equipment and storage medium
CN113377875B (en) Cross-chain data processing method and device, electronic equipment and readable storage medium
US20130132458A1 (en) System and method for managing participant order in distributed transactions
CN111260474B (en) Asset transaction method, device, equipment, system and storage medium of cross-blockchain
CN113434881A (en) Credibility verification method and device for cross-chain transaction and electronic equipment
CN112817995B (en) Data processing method and device, electronic equipment and storage medium
US20220100777A1 (en) Transaction request construction method and apparatus, transaction request processing method and apparatus, device and storage medium
CN113420090A (en) Cross-chain processing method and device, electronic equipment and readable storage medium
CN114240409A (en) Cross-chain asset interaction method based on improved Hash time lock
CN107038025B (en) SOA architecture-based system calling method and device
CN109598603B (en) Account opening task processing method and account opening service system
CN114327799A (en) Distributed transaction processing method and device, electronic equipment and storage medium
CN113360547A (en) Cross-chain query method and device, electronic equipment and readable storage medium
CN111143040A (en) Transaction processing method, device, system and storage medium
WO2022206429A1 (en) Distributed transaction implementation method and distributed system
CN108924184B (en) Data processing method and server
CN115208834A (en) Service flow limiting method based on database storage process design
CN111866171B (en) Message processing method, device, electronic equipment and medium
CN115080449A (en) Test method, device, equipment, medium and program product
CN112927075A (en) Processing method and device for cross-chain transaction, electronic equipment and readable storage medium
CN113434883A (en) Cross-chain processing method and device, electronic equipment and readable storage medium

Legal Events

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