CN111741026B - Cross-chain transaction request processing method, device, equipment and storage medium - Google Patents

Cross-chain transaction request processing method, device, equipment and storage medium Download PDF

Info

Publication number
CN111741026B
CN111741026B CN202010789291.2A CN202010789291A CN111741026B CN 111741026 B CN111741026 B CN 111741026B CN 202010789291 A CN202010789291 A CN 202010789291A CN 111741026 B CN111741026 B CN 111741026B
Authority
CN
China
Prior art keywords
cross
chain
target
access
network
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.)
Active
Application number
CN202010789291.2A
Other languages
Chinese (zh)
Other versions
CN111741026A (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 CN202010789291.2A priority Critical patent/CN111741026B/en
Publication of CN111741026A publication Critical patent/CN111741026A/en
Application granted granted Critical
Publication of CN111741026B publication Critical patent/CN111741026B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/26Special purpose or proprietary protocols or architectures

Abstract

The application discloses a cross-chain transaction request processing method, device, equipment and storage medium, relates to the technical field of block chains, and can be used for cloud computing and cloud services. The specific implementation scheme is as follows: acquiring a cross-chain access request which is initiated by a requester and comprises an access address; the access address is generated according to the network information of the target block chain to be accessed based on a public access protocol; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed; inquiring available cross-link endorsement node information in the target block link network from the home block link network according to the type of the target block link network and the name of the target block link network in the access address; according to the available cross-chain endorsement node information, sending a cross-chain transaction request comprising description information of the data to be accessed to a target cross-chain endorsement node; and sending the cross-chain access result to the requester. So as to realize data intercommunication between different block chain networks.

Description

Cross-chain transaction request processing method, device, equipment and storage medium
Technical Field
The present application relates to the field of computer technologies, and in particular, to a method, an apparatus, a device, and a storage medium for processing a cross-chain transaction request.
Background
As blockchains are brought into the domain of new infrastructure, the movement of fierce blockchain modification is more active, and new blockchain networks are being formed. No matter whether these blockchain networks are based on the same underlying system or different underlying systems, it is difficult to perform data interworking, and therefore, a method for solving interworking between different blockchain networks is needed.
Disclosure of Invention
The disclosure provides a method, a device, equipment and a storage medium for processing a cross-chain transaction request, so as to realize data intercommunication between different block chain networks.
According to an aspect of the present disclosure, there is provided a cross-chain transaction request processing method, performed by a node in a blockchain network to which a requester belongs, the method including:
acquiring a cross-chain access request which is initiated by a requester and comprises an access address; the access address is generated according to the network information of the target block chain to be accessed based on a public access protocol; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed;
inquiring available cross-link endorsement node information in the target block chain network from the home block chain network according to the type of the target block chain network and the name of the target block chain network in the access address;
according to the available cross-chain endorsement node information, sending a cross-chain transaction request comprising description information of data to be accessed to a target cross-chain endorsement node, wherein the cross-chain transaction request is used for requesting the target cross-chain endorsement node to feed back a cross-chain access result according to the description information of the data to be accessed;
and sending the cross-chain access result to the requester.
According to another aspect of the present disclosure, there is provided a cross-chain transaction request processing method, performed by a requester, the method including:
when the data cross-link access requirement exists, based on a public access protocol, generating an access address according to the network information of a target block chain to be accessed; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed;
initiating a cross-link access request comprising an access address to the attributive blockchain network, wherein the cross-link access request is used for requesting the attributive blockchain network to interact with a target cross-link endorsement node in the target blockchain network according to the target blockchain network information, and acquiring and feeding back a cross-link access result;
and receiving a cross-chain access result sent by the home blockchain network.
According to another aspect of the present disclosure, there is provided a cross-chain transaction request processing method performed by a cross-chain endorsement node in a target blockchain network, the method comprising:
acquiring a cross-chain transaction request which is sent by other blockchain networks and comprises description information of data to be accessed; the cross-chain transaction request is sent by other blockchain networks according to an access address in a cross-chain access request sent by a requester, wherein the access address is generated according to target blockchain network information to be accessed based on a public access protocol; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed;
acquiring a cross-chain access result according to the description information of the data to be accessed;
and feeding back the cross-chain access result to the other blockchain networks, and sending the cross-chain access result to a requester by the other blockchain networks.
According to another aspect of the present disclosure, there is provided a cross-chain transaction request processing apparatus configured in a node in a blockchain network to which a requester belongs, the apparatus including:
the access request acquisition module is used for acquiring a cross-chain access request which is initiated by a requester and comprises an access address; the access address is generated according to the network information of the target block chain to be accessed based on a public access protocol; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed;
the information query module is used for querying the available cross-link endorsement node information in the target block chain network from the home block chain network according to the type of the target block chain network and the name of the target block chain network in the access address;
a transaction request sending module, configured to send a cross-chain transaction request including description information of data to be accessed to a target cross-chain endorsement node according to the available cross-chain endorsement node information, and to request the target cross-chain endorsement node to feed back a cross-chain access result according to the description information of the data to be accessed;
and the access result sending module is used for sending the cross-chain access result to the requester.
According to another aspect of the present disclosure, there is provided a cross-chain transaction request processing apparatus configured in a device to which a requester belongs, the apparatus including:
the access address generation module is used for generating an access address according to the network information of a target block chain to be accessed based on a public access protocol when the data cross-chain access requirement exists; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed;
the access request initiating module is used for initiating a cross-link access request comprising an access address to the affiliated blockchain network, and is used for requesting the affiliated blockchain network to interact with a target cross-link endorsement node in the target blockchain network according to the target blockchain network information, and acquiring and feeding back a cross-link access result;
and the access result receiving module is used for receiving the cross-chain access result sent by the affiliated blockchain network.
According to another aspect of the present disclosure, there is provided a cross-chain transaction request processing apparatus configured in a cross-chain endorsement node in a target block chain network, the apparatus comprising:
the transaction request acquisition module is used for acquiring cross-chain transaction requests which are sent by other blockchain networks and comprise description information of data to be accessed; the cross-chain transaction request is sent by other blockchain networks according to an access address in a cross-chain access request sent by a requester, wherein the access address is generated according to target blockchain network information to be accessed based on a public access protocol; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed;
the access result acquisition module is used for acquiring a cross-chain access result according to the description information of the data to be accessed;
and the access result feedback module is used for feeding back the cross-chain access result to the other blockchain networks, and the other blockchain networks send the cross-chain access result to the requester.
According to another aspect of the present disclosure, there is provided an electronic device including:
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 a cross-chain transaction request processing method as described in any of the embodiments herein.
According to another aspect of the present disclosure, there is provided a non-transitory computer readable storage medium storing computer instructions for causing a computer to perform the cross-chain transaction request processing method according to any one of the embodiments of the present application.
According to the technology of the application, the problem that data intercommunication cannot be carried out between different block chain networks at present is solved, data intercommunication between different block chain networks is realized, and a new thought is provided for mutual chain crossing among multiple chains.
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.
Drawings
The drawings are included to provide a better understanding of the present solution and are not intended to limit the present application. Wherein:
FIG. 1 is a flowchart of a cross-chain transaction request processing method according to an embodiment of the present application;
FIG. 2 is a flow chart of another cross-chain transaction request processing method provided in accordance with an embodiment of the present application;
FIG. 3 is a flow chart of another cross-chain transaction request processing method provided in accordance with an embodiment of the present application;
FIG. 4 is a flowchart of another cross-chain transaction request processing method provided in accordance with an embodiment of the present application;
FIG. 5 is a schematic cross-chain transaction request processing flow provided according to an embodiment of the present application;
FIG. 6 is a schematic structural diagram of a cross-chain transaction request processing apparatus according to an embodiment of the present application;
FIG. 7 is a schematic structural diagram of another cross-chain transaction request processing apparatus provided in an embodiment of the present application;
FIG. 8 is a schematic structural diagram of another cross-chain transaction request processing apparatus provided in an embodiment of the present application;
FIG. 9 is a block diagram of an electronic device for implementing a cross-chain transaction request processing method according to an embodiment of the present application.
Detailed Description
The following description of the exemplary embodiments of the present application, taken in conjunction with the accompanying drawings, includes various details of the embodiments of the application for the understanding of the same, which are to be considered exemplary only. 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 application. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
Fig. 1 is a flowchart of a cross-chain transaction request processing method according to an embodiment of the present application. The embodiment of the application is suitable for the situation of how to realize data intercommunication among a plurality of block chain networks. The whole cross-chain transaction request processing method can be executed by the requester, the node in the blockchain network to which the requester belongs, the cross-chain endorsement node in the target blockchain network and the like in a matching way. The device to which the requester belongs is a node device in the blockchain network; or the device to which the requester belongs may not be a node device in the blockchain network, but may interact with a blockchain node device in the blockchain network through an interface provided by the blockchain node device to participate in the blockchain network. The target blockchain network may be a network to which the requester wants to perform cross-chain access by using the blockchain network to which the requester belongs, and optionally, the underlying architecture of the target blockchain network may be the same as or different from that of the blockchain network to which the requester belongs. The cross-chain endorsement node in the target blockchain network can be a full node externally providing a trust endorsement service for the target blockchain network, and is specially used for processing cross-chain transaction requests from other blockchain networks.
The cross-chain transaction request processing method in this embodiment may be performed by a node in the blockchain network to which the requestor belongs. The method may be performed by a cross-chain transaction request processing apparatus, which may be implemented in software and/or hardware, and may be integrated in a computing device carrying the blockchain nodes. As shown in fig. 1, the method for processing a cross-chain transaction request provided in this embodiment may include:
s101, acquiring a cross-chain access request which is initiated by a requester and comprises an access address.
In the embodiment, the access address is generated by a requester according to the network information of a target block chain to be accessed based on a public access protocol; the public access protocol is a preset request access protocol of data resources, and through the protocol, a requesting party can uniformly describe the data resources of different chains, so that a requested party (namely a local node) can accurately position the requested data resources. Alternatively, the format of the public access protocol may be expressed as: [ blockchain network type:][// blockchain network name][
Figure DEST_PATH_IMAGE002
Description information of data]Or may also be expressed as: [ blockchain network type:][// blockchain network name][/daughter strand/side chain/parallel chain][
Figure DEST_PATH_IMAGE003
Description information of data]And the like. Wherein, the block chain network type can be represented by the bottom layer structure name of the block chain network; the description information of the data may be determined by the form of the transaction request in the target blockchain network to be accessed.
Optionally, the target blockchain network information may include, but is not limited to: the network type of the target block chain, the network name of the target block chain and the description information of the data to be accessed; further, when the target blockchain network includes one or more sub-chains, side chains, or parallel chains, the target blockchain network information may further include a target parallel chain name in the target blockchain network or a target sub-chain name in the target blockchain network. In this embodiment, the target blockchain network type may be represented by an underlying architecture name of the target blockchain network; optionally, if the transaction request in the target block chain network is a transaction request based on a field format, the description information of the data to be accessed may include, but is not limited to, a target field name and a target transaction data identifier; if the transaction request in the target blockchain network is a transaction request based on an intelligent contract, the description information of the data to be accessed may include, but is not limited to, a target virtual machine name, a target contract name, a target method name, parameters in a target method, and the like.
For example, a target blockchain network named hello _ chain is built by using an underlying architecture named frame-chain, and the target blockchain network includes a child chain named child _ chain. A counting intelligent contract counter which can be executed only by using an evm contract virtual machine is deployed on the child chain child _ chain. In addition, the count smart contract provides a method called getNumber, which is invoked to return the current value. If the name of the block chain network to which the requester belongs is world _ chain, and the requester wants to access a counter intelligent contract named counter on a child chain _ chain on the hello _ chain network through the world _ chain, and obtain a current value, the requester may generate an access address, based on a public access protocol, according to a target block chain network type (frame-chain), a target block chain network name (hello _ chain), a target child chain name (child _ chain) in the target block chain network, and description information (including evm, counter, and getNumber) of data to be accessed, as follows: framework-chain:// hello _ chain/child _ chain
Figure DEST_PATH_IMAGE002A
module=evm&contract_name=counter&method_name=getNumber。
Optionally, if the device to which the requester belongs is a node device in a local block chain network (i.e., a block chain network to which the requester belongs), and further the requester has a data cross-chain access requirement, an access address may be generated according to target block chain network information to be accessed based on a public access protocol; the requester can then initiate a cross-link access request including an access address to the local blockchain network through the device to which the requester belongs; and the local node can further acquire a cross-chain access request which is initiated by a requester and comprises an access address from the local block chain network.
If the equipment to which the requester belongs is not node equipment in the local blockchain network and the requester has a data cross-chain access requirement, an access address can be generated according to target blockchain network information to be accessed based on a public access protocol; and then the requester can transmit the access address to a certain blockchain node in the local blockchain network through the device to which the requester belongs through an interface so as to request the blockchain node to initiate a cross-chain access request comprising the access address, and then the local node can acquire the cross-chain access request comprising the access address, which is initiated by the requester, from the local blockchain network.
And S102, inquiring available cross-link endorsement node information in the target block link network from the home block link network according to the target block link network type and the target block link network name in the access address.
In this embodiment, the local blockchain network may store the information of the available inter-chain endorsement node in one or more other blockchain networks following the common access protocol, and may dynamically update the information according to the actual situation. Optionally, for each other blockchain network, the type of the other blockchain network and the name of the other blockchain network may be used as index words, and the available inter-chain endorsement node information in the other blockchain network may be used as index content for storage. The number of the available cross-chain endorsement nodes in each other blockchain network may be multiple, and the stored information about the available cross-chain endorsement nodes in each other blockchain network may include, but is not limited to, node identification, resource status of the node (i.e., transaction capability of the node), trustworthiness of the node (which may be determined jointly by authority of the node, transaction reputation, and the like), stability of the node, and the like.
Furthermore, after acquiring a cross-link access request comprising an access address, the local node can analyze the access address and acquire target block chain network information from the access address; and then, the type of the target block chain network and the name of the target block chain network in the target block chain network information are used as index words to inquire from the local block chain network so as to obtain the available cross-chain endorsement node information in the target block chain network. In this embodiment, the target blockchain network may be one or more of other blockchain networks stored by the local blockchain network.
Further, in order to ensure the security of data in the target blockchain network, after acquiring the cross-chain access request, the local node may also perform validity verification on the identity of the requester, and perform subsequent operations if the verification is valid (i.e., S102 to S104).
And S103, sending a cross-chain transaction request including description information of the data to be accessed to the target cross-chain endorsement node according to the available cross-chain endorsement node information, and feeding back a cross-chain access result by the target cross-chain endorsement node according to the description information of the data to be accessed.
In this embodiment, the cross-link transaction request is a transaction request sent by the local node to a target cross-link endorsement node in the target block-link network, and is used to request the target cross-link endorsement node to obtain and feed back a cross-link access result from the target block-link network according to the description information of the data to be accessed. Further, in order to ensure the correctness of the cross-chain access result, the target cross-chain endorsement node may be requested to perform signature endorsement feedback on the correctness of the cross-chain access result after acquiring the cross-chain access result according to the description information of the data to be accessed.
The cross-chain access result may include data acquired according to description information of the data to be accessed (for example, an execution result obtained by executing a target method under a target intelligent contract), and may further include signature endorsement of a target cross-chain endorsement node, and the like.
Optionally, after obtaining the information of the available cross-link endorsement nodes in the target block chain network, the local node may select one or more nodes from the available cross-link endorsement nodes as target cross-link endorsement nodes according to the information of the available cross-link endorsement nodes; then, the local node may generate a cross-chain transaction request including description information of the data to be accessed based on the blockchain deployment protocol, and send the cross-chain transaction request to the target cross-chain endorsement node to request the target cross-chain endorsement node to obtain and feed back a cross-chain access result according to the description information of the data to be accessed. Further, in order to ensure the correctness of the cross-chain access result, after the target cross-chain endorsement node acquires the cross-chain access result according to the description information of the data to be accessed, the target cross-chain endorsement node can perform signature endorsement feedback on the correctness of the cross-chain access result. When the cross-chain transaction request is generated based on the blockchain deployment protocol, the description information of the data to be accessed can be added into the relevant fields of the transaction, so that the cross-chain transaction request including the description information of the data to be accessed is generated; the method can also be used for calling a cross-chain intelligent contract, using the description information of the data to be accessed as input data, running the cross-chain intelligent contract and further generating a cross-chain transaction request comprising the description information of the data to be accessed.
Optionally, if the transaction request in the target block chain network is a transaction request based on a field format, the description information of the data to be accessed may include, but is not limited to, a target field name, a target transaction data identifier, and the like, and is used to request the target inter-link endorsement node to obtain an inter-link access result from the target block chain network according to the target field name or the target transaction data identifier, and may perform feedback after signing the inter-link access result for correctness of the inter-link access result.
If the transaction request in the target block chain network is based on the transaction request of the intelligent contract, the description information of the data to be accessed may include, but is not limited to, information such as a target contract name, a target method name, and parameters in a target method, and is used to request the target cross-chain endorsement node to call the local virtual machine, execute the target method in the target intelligent contract, obtain a cross-chain access result, and perform feedback after signing the endorsement for the correctness of the cross-chain access result.
It should be noted that, in this embodiment, the requester may not only directly access the data across the chain, but also indirectly access the data through a target contract, a target method, and the like across the chain, which increases the flexibility of the scheme and further meets the requirement of data intercommunication between different blockchain networks.
Further, the native node may pay certain incentive elements to the target cross-chain endorsement node, where the incentive elements may be points or digital dogs or the like that can circulate in the target blockchain network. For example, according to the available cross-chain endorsement node information, sending a cross-chain transaction request including description information of data to be accessed to a target cross-chain endorsement node may further include: a transfer transaction request is determined and added to the cross-chain transaction request. The transfer transaction request is the transfer transaction request comprising the incentive element and account addresses of both transfer parties.
Specifically, after acquiring available cross-chain endorsement node information in a target block chain network, a local node can determine an excitation element of description information of data to be accessed, determine a transfer transaction request according to the excitation element, add the transfer transaction request to the cross-chain transaction request, and send the cross-chain transaction request including the description information of the data to be accessed to a target cross-chain endorsement node; and then when the target cross-chain endorsement node acquires a cross-chain access result according to the description information of the data to be accessed, the target cross-chain endorsement node can acquire an incentive element by executing a transfer transaction request.
In this embodiment, a certain incentive element is paid for the inter-chain endorsement node, so that the inter-chain endorsement node can be incentivized to actively process the inter-chain transaction request, and the correctness of the inter-chain access result is ensured, thereby forming a virtuous circle and enabling data intercommunication between different block chain networks to be more consistent.
And S104, sending the cross-chain access result to the requester.
Specifically, after obtaining the cross-link access result, the local node may feed back the cross-link access result to the requester.
It should be noted that, with this embodiment, the requester can cross-link access the target blockchain network by using the local blockchain network to obtain a cross-link access result. Further, if the requester needs to use data in two or more block chain networks for calculation at the same time, and the block chain networks all follow a common access protocol, the requester can obtain information of a plurality of target block chain networks according to actual data calculation requirements; based on public access protocol, generating access address corresponding to each target block chain network according to each target block chain network information; thereafter, a cross-chain access request including multiple access addresses may be initiated to the local blockchain network. After obtaining a cross-chain access request which is initiated by a requester and comprises a plurality of access addresses, the local node may process each access address in parallel or in a certain order (i.e., execute S120 and S130), and feed back a cross-chain access result to the requester, so that the requester performs some function calculation.
It can be understood that, under the condition that the number of the target blockchain networks is at least two, the requesting party can achieve the requirement of accessing a plurality of blockchain networks simultaneously through the scheme of the embodiment, and further can meet the requirement of performing certain function calculation by using different blockchain network data.
According to the technical scheme of the embodiment of the application, by introducing the public access protocol, the uniform description of the data resources of different chains by a requester can be realized, and a foundation is laid for realizing data intercommunication among different block chain networks; meanwhile, cross-chain endorsement nodes in a target block chain network are introduced, and nodes in the block chain network to which the requester belongs interact with the cross-chain endorsement nodes in the target block chain network, so that data intercommunication among different block chain networks is realized, the problem that data intercommunication cannot be carried out among different block chain networks at present is solved, and a new thought is provided for mutual cross-chain among multiple chains.
Fig. 2 is a flowchart of another cross-chain transaction request processing method provided in an embodiment of the present application. On the basis of the above embodiment, the embodiment adds an endorsement policy-related operation. As shown in fig. 2, the method for processing a cross-chain transaction request provided in this embodiment may include:
s201, acquiring a cross-chain access request which is initiated by a requester and comprises an access address.
S202, calling a cross-chain intelligent contract, analyzing the access address, and acquiring the network information of the target block chain to be accessed.
In this embodiment, the cross-link intelligent contract is deployed in the local block link network, and may be used to analyze an access address, query information of an available cross-link endorsement node in the target block link network, and initiate a cross-link transaction request.
Specifically, after acquiring a cross-link access request including an access address initiated by a requester, the local node may call a cross-link intelligent contract to analyze the access address, thereby acquiring network information of a target block chain to be accessed.
It should be noted that, in this embodiment, by introducing a public access protocol, a requester can perform unified description on data resources of different chains; in conjunction with a cross-chain intelligent contract, uniform resource addressing for all blockchain networks that follow a common access protocol can be achieved.
S203, according to the type of the target block chain network and the name of the target block chain network in the target block chain network information, inquiring available cross-chain endorsement node information and an endorsement strategy in the target block chain network from the home block chain network.
In this embodiment, the endorsement policy may be a policy specified by the local blockchain network and used to determine whether the cross-chain access is successful or not, may also be used to indirectly protect data security in the target blockchain network, and may be dynamically adjusted according to an actual scene. Optionally, the endorsement policy may specify the number of requesting cross-chain endorsement nodes and conditions for success of cross-chain access. For example, the condition that the cross-chain access is successful may be that if the cross-chain access results of the requested cross-chain endorsement nodes have a preset number of nodes are consistent (or the requested cross-chain endorsement nodes have a preset number of nodes for signature endorsement), or that the cross-chain access results include signature endorsements and the like of the specified cross-chain endorsement nodes.
Optionally, in this embodiment, the available cross-link endorsement node information and endorsement policy stored in the target blockchain network in the local blockchain network are stored by calling a cross-link intelligent contract. Further, after the target blockchain network information is obtained through S202, a cross-chain intelligent contract may be called, the target blockchain network type and the target blockchain network name in the target blockchain network information are used as input data, the cross-chain intelligent contract is run, and then the available cross-chain endorsement node information and the endorsement policy in the target blockchain network stored in the local blockchain network may be queried.
Furthermore, the local node can update the information of the available cross-chain endorsement node and the endorsement strategy in the target block chain network by calling a cross-chain intelligent contract.
And S204, selecting a target cross-chain endorsement node from the available cross-chain endorsement nodes according to the information of the available cross-chain endorsement nodes and the endorsement strategy.
Specifically, according to the information of the available cross-chain endorsement nodes, the nodes, which specify the number of the request cross-chain endorsement nodes in the endorsement policy, are selected from the available cross-chain endorsement nodes as the target cross-chain endorsement nodes, or the cross-chain endorsement nodes specified in the endorsement policy are selected from the available cross-chain endorsement nodes as the target cross-chain endorsement nodes, and the like.
And S205, sending a cross-chain transaction request including the description information of the data to be accessed to the target cross-chain endorsement node, wherein the cross-chain transaction request is used for requesting the target cross-chain endorsement node to acquire a cross-chain access result according to the description information of the data to be accessed, and feeding back the cross-chain access result after signing the endorsement.
Specifically, the local node may invoke a cross-chain intelligent contract to generate a cross-chain transaction request including description information of the data to be accessed, and send the cross-chain transaction request to the target cross-chain endorsement node to request the target cross-chain endorsement node to obtain a cross-chain access result according to the description information of the data to be accessed, and perform signature endorsement and feedback on the cross-chain access result.
S206, if the endorsement strategy is satisfied is identified from the cross-chain access result, the cross-chain access result is sent to the requester.
To ensure the security of data in the target blockchain network, it may be determined whether the cross-chain access result satisfies an endorsement policy before sending the cross-chain access result to the requestor.
Optionally, if the number of the target cross-chain endorsement nodes is one, identifying that the endorsement policy is satisfied from the cross-chain access result may be to identify a signature endorsement of the target cross-chain endorsement node from the cross-chain access result, and determining that the endorsement policy is satisfied.
If the number of the target cross-chain endorsement nodes is multiple, identifying that the endorsement policy is satisfied from the cross-chain access result may be to determine whether the endorsement policy is satisfied according to the number or the proportion of the signature endorsement accounts in the cross-chain access result. The signature endorsement account is a target cross-chain endorsement node account for signing the cross-chain access result.
Under the condition that the number of the target cross-chain endorsement nodes is multiple, the local node can acquire signature endorsement accounts from the cross-chain access result and count the number or the proportion of the signature endorsement accounts; and if the counted number or proportion of the signature endorsement accounts reaches a preset number threshold or proportion threshold, determining that an endorsement strategy is met, and further triggering the operation of sending a cross-chain access result to the requesting party. It should be noted that, by setting the endorsement policy, the present embodiment can further ensure that the data sent to the requestor is safe and reliable.
According to the technical scheme of the embodiment of the application, through introducing the public access protocol, the uniform description of the data resources of different chains by a requester can be realized; the uniform resource addressing of all the blockchain networks following the public access protocol can be realized by combining a cross-chain intelligent contract; meanwhile, cross-chain endorsement nodes in a target block chain network are introduced, and nodes in the block chain network to which the requester belongs interact with the cross-chain endorsement nodes in the target block chain network, so that data intercommunication among different block chain networks is realized, the problem that data intercommunication cannot be carried out among different block chain networks at present is solved, and a new thought is provided for mutual cross-chain among multiple chains. In addition, by setting the endorsement policy and triggering and executing the operation of sending the cross-chain access result to the requester only under the condition that the endorsement policy is identified to be satisfied from the cross-chain endorsement result, the safety and the controllability of the data sent to the requester are further ensured.
Fig. 3 is a flowchart of a cross-chain transaction request processing method according to an embodiment of the present application. The embodiment of the application is suitable for the situation of how to realize data intercommunication among a plurality of block chain networks. The whole cross-chain transaction request processing method can be executed by the requester, the node in the blockchain network to which the requester belongs, the cross-chain endorsement node in the target blockchain network and the like in a matching way. The method can be executed by a cross-chain transaction request processing device, which can be implemented in a software and/or hardware manner and can be integrated in a device to which a bearer requester belongs. As shown in fig. 3, the method for processing a cross-chain transaction request provided in this embodiment may include:
s301, when the data cross-chain access requirement exists, based on a public access protocol, according to the target block chain network information to be accessed, an access address is generated.
Optionally, the target blockchain network information may include, but is not limited to: the network type of the target block chain, the network name of the target block chain and the description information of the data to be accessed; further, when the target blockchain network includes one or more sub-chains, side chains, or parallel chains, the target blockchain network information may further include a target parallel chain name in the target blockchain network or a target sub-chain name in the target blockchain network. In this embodiment, the target blockchain network type may be represented by an underlying architecture name of the target blockchain network; optionally, if the transaction request in the target block chain network is a transaction request based on a field format, the description information of the data to be accessed may include, but is not limited to, a target field name and a target transaction data identifier; if the transaction request in the target blockchain network is a transaction request based on an intelligent contract, the description information of the data to be accessed may include, but is not limited to, a target virtual machine name, a target contract name, a target method name, parameters in a target method, and the like.
S302, a cross-chain access request including an access address is sent to the home blockchain network.
Optionally, if the device to which the requester belongs is a node device in a block chain network to which the requester belongs, and further the requester has a data cross-chain access requirement, an access address may be generated according to target block chain network information to be accessed based on a public access protocol; the requestor may then initiate a cross-chain access request including the access address to the blockchain network to which the requestor belongs through the device to which it belongs.
If the equipment to which the requester belongs is not node equipment in the block chain network to which the requester belongs, and the requester has a data cross-chain access requirement, an access address can be generated according to target block chain network information to be accessed based on a public access protocol; the requester can then transmit the access address to a blockchain node in the blockchain network to which the requester belongs through the interface by the device to which the requester belongs, so as to request the blockchain node to initiate a cross-chain access request comprising the access address.
A node in a block chain network to which a requester belongs obtains a cross-chain access request initiated by the requester, and inquires available cross-chain endorsement node information and an endorsement strategy in a target block chain network from the home block chain network according to the type of the target block chain network and the name of the target block chain network in an access address; selecting a target cross-chain endorsement node from the available cross-chain endorsement nodes according to the available cross-chain endorsement node information and the endorsement strategy; and then, sending a cross-chain transaction request comprising the description information of the data to be accessed to the target cross-chain endorsement node, wherein the cross-chain transaction request is used for requesting the target cross-chain endorsement node to acquire a cross-chain access result according to the description information of the data to be accessed, and performing signature endorsement feedback on the cross-chain access result. And then sends the cross-chain access result to the requester.
Further, the requester may receive the cross-chain access result sent by the home blockchain network, i.e., execute S303.
Further, if the transaction request in the target block chain network is a transaction request based on an intelligent contract, the description information of the data to be accessed may include, but is not limited to, a target contract name, a target method name, parameters in a target method, and the like, and is used to request the target cross-chain endorsement node in the target block chain network to invoke the local virtual machine, execute the target method in the target intelligent contract, obtain a cross-chain access result, and perform feedback after signing the endorsement for the correctness of the cross-chain access result.
It should be noted that, in this embodiment, the requesting party may access the data indirectly through a cross-link access target contract, a target method, and the like, so that the flexibility of the scheme is increased, and the requirement of data intercommunication between different blockchain networks is further satisfied.
S303, receiving the cross-chain access result sent by the belonged block chain network.
According to the technical scheme of the embodiment of the application, when a requester has a data cross-link access requirement, an access address can be generated according to target block chain network information based on a public access protocol, and a cross-link access request including the access address is initiated to a home block chain network; and the block chain network to which the request belongs interacts with a target cross-chain endorsement node in the target block chain network according to the target block chain network information in the access address to acquire and feed back a cross-chain access result, so that the requester can acquire the cross-chain access result. In the embodiment, by introducing the public access protocol, the uniform description of the data resources of different chains by the requester can be realized, and a foundation is laid for realizing data intercommunication among different block chain networks; meanwhile, cross-chain endorsement nodes in the target block chain network are introduced, and the nodes in the block chain network to which the requester belongs interact with the cross-chain endorsement nodes in the target block chain network, so that data intercommunication among different block chain networks is realized.
Fig. 4 is a flowchart of a cross-chain transaction request processing method according to an embodiment of the present application. The embodiment of the application is suitable for the situation of how to realize data intercommunication among a plurality of block chain networks. The whole cross-chain transaction request processing method can be executed by the requester, the node in the blockchain network to which the requester belongs, the cross-chain endorsement node in the target blockchain network and the like in a matching way. The method may be performed by a cross-chain transaction request processing apparatus, which may be implemented in software and/or hardware, and may be integrated in a computing device carrying a node in a target blockchain network (further, a target cross-chain endorsement node). As shown in fig. 4, the method for processing a cross-chain transaction request provided in this embodiment may include:
s401, acquiring a cross-chain transaction request which is sent by other blockchain networks and comprises description information of data to be accessed.
In this embodiment, the inter-chain transaction request is a transaction request sent by a node in another blockchain network to a target inter-chain endorsement node in a target blockchain network, and is specifically sent by the other blockchain network according to an access address in the inter-chain access request sent by a requester, where the access address is generated according to target blockchain network information to be accessed based on a common access protocol; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed. And the cross-chain transaction request is used for requesting the target cross-chain endorsement node to acquire and feed back a cross-chain access result from the target block chain network according to the description information of the data to be accessed.
S402, acquiring a cross-chain access result according to the description information of the data to be accessed.
Optionally, if the transaction request in the target blockchain network is a transaction request based on an intelligent contract, the description information of the data to be accessed may include, but is not limited to, a target contract name, a target method name, parameters in a target method, and the like. Further, according to the description information of the data to be accessed, the obtaining of the cross-chain access result may be: and calling a local virtual machine according to the target contract name and the target method name in the description information of the data to be accessed, executing the target method in the target intelligent contract, and acquiring a cross-chain access result.
It should be noted that, in this embodiment, data may be indirectly accessed through accessing a target contract, a target method, and the like, so that flexibility of a scheme is increased, and a requirement for data intercommunication between different blockchain networks is further satisfied.
And S403, feeding back the cross-chain access result to other blockchain networks, and sending the cross-chain access result to the requester by the other blockchain networks.
Optionally, feeding back the cross-chain access result to other blockchain networks may be: signing endorsements are carried out on the cross-chain access results; cross-chain access results including signature endorsements are fed back to other blockchain networks. The embodiment signs and endorses the cross-chain access result, and can ensure the correctness of the cross-chain access result.
According to the technical scheme of the embodiment of the application, the cross-link endorsement node in the target block chain network is introduced to interact with the nodes in other block chain networks, so that a foundation is laid for realizing data intercommunication among different block chain networks.
Fig. 5 is a schematic diagram illustrating a cross-chain transaction request processing flow according to an embodiment of the present application. This embodiment provides a preferred example of the basic mountain of the above embodiment. The block chain network to which the requester belongs is an a chain, and the target block chain network to which the requester wants to access across chains is a B chain. As shown in fig. 5, the cross-chain transaction request processing flow of this embodiment is specifically as follows:
when the requester has the data cross-chain access requirement, the requester can generate an access address according to the type of the B chain, the name of a parallel chain in the B chain, a contract name, a method name and the like, and initiate a cross-chain access request comprising the access address to the A chain.
A node in the chain A acquires a cross-chain access request initiated by a requester; then, calling a cross-chain intelligent contract, analyzing the access address, and acquiring B chain information (namely a B chain type, a B chain name, a parallel chain name in the B chain, a contract name, a method name and the like); and calling a cross-chain intelligent contract, taking the B-chain type and the B-chain name (further, the B-chain type, the B-chain name and the parallel chain name in the B-chain) as input data, and running the cross-chain intelligent contract to inquire the available cross-chain endorsement node information and the endorsement strategy in the B-chain from the A-chain.
The nodes in the chain A can also select one or more nodes from the available cross-chain endorsement nodes in the chain B as target cross-chain endorsement nodes according to the available cross-chain endorsement node information and the endorsement strategy in the chain B; then, a cross-chain intelligent contract can be called, and a cross-chain transaction request comprising a contract name and a method name is initiated to the target cross-chain endorsement node.
And the target cross-chain endorsement node in the B chain acquires a cross-chain transaction request sent by the node in the A chain, calls a local virtual machine according to a contract name and a method name in the cross-chain transaction request, executes a target method under a target intelligent contract to acquire a cross-chain access result, signs the correctness of the cross-chain access result, and feeds back the cross-chain access result to the A chain.
The chain A obtains a cross-chain access result fed back by a target cross-chain endorsement node in the chain B, and sends the cross-chain access result to a requesting party under the condition that the cross-chain access result identifies that an endorsement strategy is met.
Further, the requestor may obtain the cross-chain access result.
According to the technical scheme of the embodiment of the application, through introducing the public access protocol, the uniform description of the data resources of different chains by a requester can be realized; the uniform resource addressing of all the blockchain networks following the public access protocol can be realized by combining a cross-chain intelligent contract; meanwhile, cross-chain endorsement nodes in a target block chain network are introduced, and nodes in the block chain network to which the requester belongs interact with the cross-chain endorsement nodes in the target block chain network, so that data intercommunication among different block chain networks is realized, the problem that data intercommunication cannot be carried out among different block chain networks at present is solved, and a new thought is provided for mutual cross-chain among multiple chains. In addition, by setting the endorsement policy and triggering and executing the operation of sending the cross-chain access result to the requester only under the condition that the endorsement policy is identified to be satisfied from the cross-chain endorsement result, the safety and the controllability of the data sent to the requester are further ensured.
Fig. 6 is a schematic structural diagram of a cross-chain transaction request processing apparatus according to an embodiment of the present application. The device can realize the cross-chain transaction request processing method in the embodiment of the application. The apparatus may be integrated in a node device configured in a blockchain network to which the requestor belongs. The cross-chain transaction request processing apparatus 600 specifically includes:
an access request obtaining module 601, configured to obtain a cross-chain access request that includes an access address and is initiated by a requestor; the access address is generated according to the network information of the target block chain to be accessed based on a public access protocol; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed;
the information query module 602 is configured to query, according to the type of the target block chain network in the visited address and the name of the target block chain network, information of available inter-link endorsement nodes in the target block chain network from the home block chain network;
a transaction request sending module 603, configured to send, according to the available cross-link endorsement node information, a cross-link transaction request including description information of the data to be accessed to a target cross-link endorsement node, and to request the target cross-link endorsement node to feed back a cross-link access result according to the description information of the data to be accessed;
and an access result sending module 604, configured to send the cross-chain access result to the requester.
According to the technical scheme of the embodiment of the application, by introducing the public access protocol, the uniform description of the data resources of different chains by a requester can be realized, and a foundation is laid for realizing data intercommunication among different block chain networks; meanwhile, cross-chain endorsement nodes in a target block chain network are introduced, and nodes in the block chain network to which the requester belongs interact with the cross-chain endorsement nodes in the target block chain network, so that data intercommunication among different block chain networks is realized, the problem that data intercommunication cannot be carried out among different block chain networks at present is solved, and a new thought is provided for mutual cross-chain among multiple chains.
Illustratively, the description information of the data to be accessed in this embodiment includes a target contract name and a target method name, and is used to request the target cross-link endorsement node to invoke the local virtual machine, execute a target method in the target intelligent contract, and obtain a cross-link access result.
Illustratively, the information query module 602 is specifically configured to:
calling a cross-chain intelligent contract, analyzing the access address, and acquiring the network information of the target block chain to be accessed;
and inquiring the available cross-chain endorsement node information and the endorsement strategy in the target block chain network from the attributive block chain network according to the target block chain network type and the target block chain network name in the target block chain network information.
Illustratively, the transaction request sending module 603 is specifically configured to:
selecting a target cross-chain endorsement node from the available cross-chain endorsement nodes according to the available cross-chain endorsement node information and the endorsement strategy;
and sending a cross-chain transaction request comprising the description information of the data to be accessed to the target cross-chain endorsement node, wherein the cross-chain transaction request is used for requesting the target cross-chain endorsement node to acquire a cross-chain access result according to the description information of the data to be accessed, and feeding back the cross-chain access result after signing the endorsement.
Illustratively, the access result sending module 604 is specifically configured to:
and if the endorsement policy is satisfied is identified from the cross-chain access result, sending the cross-chain access result to the requester.
Illustratively, the apparatus may further include:
the identification module is used for determining whether the endorsement strategy is met according to the number or the proportion of the signature endorsement accounts in the cross-chain access result; the signature endorsement account is a target cross-chain endorsement node account for signing the cross-chain access result.
Illustratively, the apparatus may further include:
and the transfer transaction processing module is used for determining the transfer transaction request and adding the transfer transaction request to the cross-chain transaction request.
Illustratively, the number of target blockchain networks in this embodiment is at least two.
Fig. 7 is a schematic structural diagram of a cross-chain transaction request processing apparatus according to an embodiment of the present application. The device can realize the cross-chain transaction request processing method in the embodiment of the application. The apparatus may be integrated in a device configured at a requesting party. The cross-chain transaction request processing apparatus 700 specifically includes:
an access address generation module 701, configured to generate an access address according to target block chain network information to be accessed based on a public access protocol when there is a need for data cross-chain access; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed;
an access request initiating module 702, configured to initiate a cross-link access request including an access address to an affiliated blockchain network, and to request the affiliated blockchain network to interact with a target cross-link endorsement node in a target blockchain network according to target blockchain network information, so as to obtain and feed back a cross-link access result;
an access result receiving module 703 is configured to receive a cross-chain access result sent by the home blockchain network.
According to the technical scheme of the embodiment of the application, when a requester has a data cross-link access requirement, an access address can be generated according to target block chain network information based on a public access protocol, and a cross-link access request including the access address is initiated to a home block chain network; and the block chain network to which the request belongs interacts with a target cross-chain endorsement node in the target block chain network according to the target block chain network information in the access address to acquire and feed back a cross-chain access result, so that the requester can acquire the cross-chain access result. In the embodiment, by introducing the public access protocol, the uniform description of the data resources of different chains by the requester can be realized, and a foundation is laid for realizing data intercommunication among different block chain networks; meanwhile, cross-chain endorsement nodes in the target block chain network are introduced, and the nodes in the block chain network to which the requester belongs interact with the cross-chain endorsement nodes in the target block chain network, so that data intercommunication among different block chain networks is realized.
Illustratively, in this embodiment, the description information of the data to be accessed includes a target contract name and a target method name, and is used to request a target cross-link endorsement node in a target block link network to invoke a local virtual machine, execute a target method in a target intelligent contract, and obtain a cross-link access result.
Fig. 8 is a schematic structural diagram of a cross-chain transaction request processing apparatus according to an embodiment of the present application. The device can realize the cross-chain transaction request processing method in the embodiment of the application. The apparatus may be integrated in a cross-link endorsement node device configured in a target blockchain network. The cross-chain transaction request processing apparatus 800 specifically includes:
a transaction request obtaining module 801, configured to obtain a cross-chain transaction request that includes description information of data to be accessed and is sent by another blockchain network; the cross-chain transaction request is sent by other blockchain networks according to an access address in a cross-chain access request sent by a requester, wherein the access address is generated according to target blockchain network information to be accessed based on a public access protocol; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed;
an access result obtaining module 802, configured to obtain a cross-chain access result according to description information of data to be accessed;
and the access result feedback module 803 is configured to feed back the cross-chain access result to other blockchain networks, and send the cross-chain access result to the requester through the other blockchain networks.
According to the technical scheme, cross-link endorsement nodes in the target block chain network are introduced to interact with nodes in other block chain networks, and a foundation is laid for realizing data intercommunication among different block chain networks.
Illustratively, the access result obtaining module 802 is specifically configured to:
and calling a local virtual machine according to the target contract name and the target method name in the description information of the data to be accessed, executing the target method in the target intelligent contract, and acquiring a cross-chain access result.
Illustratively, the access result feedback module 803 is specifically configured to:
signing endorsements are carried out on the cross-chain access results;
cross-chain access results including signature endorsements are fed back to other blockchain networks.
According to an embodiment of the present application, an electronic device and a readable storage medium are also provided.
Fig. 9 is a block diagram of an electronic device according to an embodiment of the present application. 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 present application that are described and/or claimed herein.
As shown in fig. 9, the electronic apparatus includes: one or more processors 901, memory 902, and interfaces for connecting the various components, including a high-speed interface and a low-speed interface. The various components are interconnected using different buses and may be mounted on a common motherboard or in other manners as desired. The processor may process instructions for execution within the electronic device, including instructions stored in or on the memory to display graphical information of a GUI on an external input/output apparatus (such as a display device coupled to the interface). In other embodiments, multiple processors and/or multiple buses may be used, along with multiple memories and multiple memories, as desired. Also, multiple electronic devices may be connected, with each device providing portions of the necessary operations (e.g., as a server array, a group of blade servers, or a multi-processor system). Fig. 9 illustrates an example of a processor 901.
Memory 902 is a non-transitory computer readable storage medium as provided herein. Wherein the memory stores instructions executable by at least one processor to cause the at least one processor to perform the cross-chain transaction request processing method provided herein. The non-transitory computer readable storage medium of the present application stores computer instructions for causing a computer to perform the cross-chain transaction request processing method provided herein.
The memory 902 is used as a non-transitory computer readable storage medium, and can be used for storing non-transitory software programs, non-transitory computer executable programs, and modules, such as program instructions/modules corresponding to the cross-chain transaction request processing method in the embodiment of the present application (for example, the access request acquisition module 601, the information query module 602, the transaction request sending module 603, and the access result sending module 604 shown in fig. 6, or the access address generation module 701, the access request initiation module 702, and the access result receiving module 703 shown in fig. 7, or the transaction request acquisition module 801, the access result acquisition module 802, and the access result feedback module 803 shown in fig. 8). The processor 901 executes various functional applications of the server and data processing by executing non-transitory software programs, instructions and modules stored in the memory 902, that is, implements the cross-chain transaction request processing method in the above method embodiment.
The memory 902 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application program required for at least one function; the storage data area may store data created according to use of the electronic device of the cross-chain transaction request processing method, and the like. Further, the memory 902 may include high speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid state storage device. In some embodiments, the memory 902 may optionally include a memory remotely located from the processor 901, and such remote memory may be connected over a network to an electronic device of the cross-chain transaction request processing method. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, blockchain networks, mobile communication networks, and combinations thereof.
The electronic device of the cross-chain transaction request processing method may further include: an input device 903 and an output device 904. The processor 901, the memory 902, the input device 903 and the output device 904 may be connected by a bus or other means, and fig. 9 illustrates the connection by a bus as an example.
The input device 903 may receive input numeric or character information and generate key signal inputs related to user settings and function control of the electronic device of the cross-chain transaction request processing method, such as an input device such as a touch screen, a keypad, a mouse, a track pad, a touch pad, a pointer, one or more mouse buttons, a track ball, a joystick, or the like. The output devices 904 may include a display device, auxiliary lighting devices (e.g., LEDs), tactile feedback devices (e.g., vibrating motors), and the like. The display device may include, but is not limited to, a Liquid Crystal Display (LCD), a Light Emitting Diode (LED) display, and a plasma display. In some implementations, the display device can be a touch screen.
Various implementations of the systems and techniques described here can be realized in digital electronic circuitry, integrated circuitry, application specific ASICs (application specific integrated circuits), 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.
These computer programs (also known as programs, software applications, or code) include machine instructions for a programmable processor, and may be implemented using high-level procedural and/or object-oriented programming languages, and/or assembly/machine languages. As used herein, the terms "machine-readable medium" and "computer-readable medium" refer to any computer program product, apparatus, and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term "machine-readable signal" refers to any signal used to provide machine instructions and/or data to a programmable processor.
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), the internet, and blockchain networks.
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 can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical host and VPS service are overcome.
According to the technical scheme of the embodiment of the application, by introducing the public access protocol, the uniform description of the data resources of different chains by a requester can be realized, and a foundation is laid for realizing data intercommunication among different block chain networks; meanwhile, cross-chain endorsement nodes in a target block chain network are introduced, and nodes in the block chain network to which the requester belongs interact with the cross-chain endorsement nodes in the target block chain network, so that data intercommunication among different block chain networks is realized, the problem that data intercommunication cannot be carried out among different block chain networks at present is solved, and a new thought is provided for mutual cross-chain among multiple chains.
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 application may be executed in parallel, sequentially, or in different orders, and the present invention is not limited thereto as long as the desired results of the technical solutions disclosed in the present application can be achieved.
The above-described embodiments should not be construed as limiting the scope of the present application. 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 application shall be included in the protection scope of the present application.

Claims (28)

1. A cross-chain transaction request processing method performed by a node in a blockchain network to which a requestor belongs, the method comprising:
acquiring a cross-chain access request which is initiated by a requester and comprises an access address; the access address is generated according to the network information of the target block chain to be accessed based on a public access protocol; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed; the public access protocol is a preset request access protocol of a data resource, through the public access protocol, a requesting party performs unified description on data resources of different chains, and a requested party can accurately position the requested data resource;
inquiring available cross-link endorsement node information in the target block chain network from the home block chain network according to the type of the target block chain network and the name of the target block chain network in the access address;
according to the available cross-chain endorsement node information, sending a cross-chain transaction request comprising description information of data to be accessed to a target cross-chain endorsement node, wherein the cross-chain transaction request is used for requesting the target cross-chain endorsement node to feed back a cross-chain access result according to the description information of the data to be accessed;
and sending the cross-chain access result to the requester.
2. The method according to claim 1, wherein the description information of the data to be accessed includes a target contract name and a target method name, and is used for requesting the target cross-chain endorsement node to invoke a local virtual machine, execute a target method in a target intelligent contract, and obtain a cross-chain access result.
3. The method of claim 1, wherein querying the target blockchain network for available inter-chaining endorsement node information in the target blockchain network from the home blockchain network according to the target blockchain network type and the target blockchain network name in the access address comprises:
calling a cross-chain intelligent contract, analyzing the access address, and acquiring network information of a target block chain to be accessed;
and inquiring the available cross-chain endorsement node information and the endorsement strategy in the target block chain network from the attributive block chain network according to the target block chain network type and the target block chain network name in the target block chain network information.
4. The method of claim 3, wherein sending a cross-chain transaction request including description information of data to be accessed to a target cross-chain endorsement node according to the available cross-chain endorsement node information comprises:
selecting a target cross-chain endorsement node from the available cross-chain endorsement nodes according to the available cross-chain endorsement node information and the endorsement strategy;
and sending a cross-chain transaction request comprising the description information of the data to be accessed to the target cross-chain endorsement node, wherein the cross-chain transaction request is used for requesting the target cross-chain endorsement node to acquire a cross-chain access result according to the description information of the data to be accessed, and feeding back the cross-chain access result after signing the endorsement.
5. The method of claim 4, wherein sending the cross-chain access result to the requestor comprises:
and if the endorsement policy is satisfied is identified from the cross-chain access result, sending the cross-chain access result to the requester.
6. The method of claim 5, wherein identifying from the cross-chain access result that an endorsement policy is satisfied comprises:
determining whether an endorsement policy is met according to the number or the proportion of signature endorsement accounts in the cross-chain access result; and the signature endorsement account is a target cross-chain endorsement node account for signing the cross-chain access result.
7. The method of claim 1, before sending a cross-chain transaction request including description information of data to be accessed to a target cross-chain endorsement node according to the available cross-chain endorsement node information, further comprising:
a transfer transaction request is determined and added to the cross-chain transaction request.
8. The method of claim 1, the number of target blockchain networks being at least two.
9. A cross-chain transaction request processing method, performed by a requestor, the method comprising:
when the data cross-link access requirement exists, based on a public access protocol, generating an access address according to the network information of a target block chain to be accessed; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed; the public access protocol is a preset request access protocol of a data resource, through the public access protocol, a requesting party performs unified description on data resources of different chains, and a requested party can accurately position the requested data resource;
initiating a cross-link access request comprising an access address to the attributive blockchain network, wherein the cross-link access request is used for requesting the attributive blockchain network to interact with a target cross-link endorsement node in the target blockchain network according to the target blockchain network information, and acquiring and feeding back a cross-link access result;
and receiving a cross-chain access result sent by the home blockchain network.
10. The method according to claim 9, wherein the description information of the data to be accessed includes a target contract name and a target method name, and is used to request a target cross-link endorsement node in the target block link network to invoke a local virtual machine, execute a target method in a target intelligent contract, and obtain a cross-link access result.
11. A cross-chain transaction request processing method performed by a cross-chain endorsement node in a target blockchain network, the method comprising:
acquiring a cross-chain transaction request which is sent by other blockchain networks and comprises description information of data to be accessed; the cross-chain transaction request is sent by other blockchain networks according to an access address in a cross-chain access request sent by a requester, wherein the access address is generated according to target blockchain network information to be accessed based on a public access protocol; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed; the public access protocol is a preset request access protocol of a data resource, through the public access protocol, a requesting party performs unified description on data resources of different chains, and a requested party can accurately position the requested data resource;
acquiring a cross-chain access result according to the description information of the data to be accessed;
and feeding back the cross-chain access result to the other blockchain networks, and sending the cross-chain access result to a requester by the other blockchain networks.
12. The method of claim 11, wherein obtaining the cross-chain access result according to the description information of the data to be accessed comprises:
and calling a local virtual machine according to the target contract name and the target method name in the description information of the data to be accessed, executing the target method in the target intelligent contract, and acquiring a cross-chain access result.
13. The method of claim 11, wherein feeding back the cross-chain access result to the other blockchain network comprises:
signing endorsements on the cross-chain access results;
feeding back cross-chain access results including signature endorsements to the other blockchain networks.
14. A cross-chain transaction request processing apparatus configured in a node in a blockchain network to which a requestor belongs, the apparatus comprising:
the access request acquisition module is used for acquiring a cross-chain access request which is initiated by a requester and comprises an access address; the access address is generated according to the network information of the target block chain to be accessed based on a public access protocol; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed; the public access protocol is a preset request access protocol of a data resource, through the public access protocol, a requesting party performs unified description on data resources of different chains, and a requested party can accurately position the requested data resource;
the information query module is used for querying the available cross-link endorsement node information in the target block chain network from the home block chain network according to the type of the target block chain network and the name of the target block chain network in the access address;
a transaction request sending module, configured to send a cross-chain transaction request including description information of data to be accessed to a target cross-chain endorsement node according to the available cross-chain endorsement node information, and to request the target cross-chain endorsement node to feed back a cross-chain access result according to the description information of the data to be accessed;
and the access result sending module is used for sending the cross-chain access result to the requester.
15. The device of claim 14, wherein the description information of the data to be accessed includes a target contract name and a target method name, and is used to request the target cross-chain endorsement node to invoke a local virtual machine, execute a target method in a target intelligent contract, and obtain a cross-chain access result.
16. The apparatus of claim 14, wherein the information query module is specifically configured to:
calling a cross-chain intelligent contract, analyzing the access address, and acquiring network information of a target block chain to be accessed;
and inquiring the available cross-chain endorsement node information and the endorsement strategy in the target block chain network from the attributive block chain network according to the target block chain network type and the target block chain network name in the target block chain network information.
17. The apparatus according to claim 16, wherein the transaction request sending module is specifically configured to:
selecting a target cross-chain endorsement node from the available cross-chain endorsement nodes according to the available cross-chain endorsement node information and the endorsement strategy;
and sending a cross-chain transaction request comprising the description information of the data to be accessed to the target cross-chain endorsement node, wherein the cross-chain transaction request is used for requesting the target cross-chain endorsement node to acquire a cross-chain access result according to the description information of the data to be accessed, and feeding back the cross-chain access result after signing the endorsement.
18. The apparatus according to claim 17, wherein the access result sending module is specifically configured to:
and if the endorsement policy is satisfied is identified from the cross-chain access result, sending the cross-chain access result to the requester.
19. The apparatus of claim 18, further comprising:
the identification module is used for determining whether the endorsement strategy is met according to the number or the proportion of the signature endorsement accounts in the cross-chain access result; and the signature endorsement account is a target cross-chain endorsement node account for signing the cross-chain access result.
20. The apparatus of claim 14, further comprising:
and the transfer transaction processing module is used for determining a transfer transaction request and adding the transfer transaction request to the cross-chain transaction request.
21. The apparatus of claim 14, the number of target blockchain networks is at least two.
22. A cross-chain transaction request processing apparatus configured in a device to which a requester belongs, the apparatus comprising:
the access address generation module is used for generating an access address according to the network information of a target block chain to be accessed based on a public access protocol when the data cross-chain access requirement exists; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed; the public access protocol is a preset request access protocol of a data resource, through the public access protocol, a requesting party performs unified description on data resources of different chains, and a requested party can accurately position the requested data resource;
the access request initiating module is used for initiating a cross-link access request comprising an access address to the affiliated blockchain network, and is used for requesting the affiliated blockchain network to interact with a target cross-link endorsement node in the target blockchain network according to the target blockchain network information, and acquiring and feeding back a cross-link access result;
and the access result receiving module is used for receiving the cross-chain access result sent by the affiliated blockchain network.
23. The apparatus according to claim 22, wherein the description information of the data to be accessed includes a target contract name and a target method name, and is used to request a target inter-link endorsement node in the target block link network to invoke a local virtual machine, execute a target method in a target intelligent contract, and obtain an inter-link access result.
24. A cross-chain transaction request processing apparatus configured in a cross-chain endorsement node in a target blockchain network, the apparatus comprising:
the transaction request acquisition module is used for acquiring cross-chain transaction requests which are sent by other blockchain networks and comprise description information of data to be accessed; the cross-chain transaction request is sent by other blockchain networks according to an access address in a cross-chain access request sent by a requester, wherein the access address is generated according to target blockchain network information to be accessed based on a public access protocol; the target block chain network information comprises a target block chain network type, a target block chain network name and description information of data to be accessed; the public access protocol is a preset request access protocol of a data resource, through the public access protocol, a requesting party performs unified description on data resources of different chains, and a requested party can accurately position the requested data resource;
the access result acquisition module is used for acquiring a cross-chain access result according to the description information of the data to be accessed;
and the access result feedback module is used for feeding back the cross-chain access result to the other blockchain networks, and the other blockchain networks send the cross-chain access result to the requester.
25. The apparatus according to claim 24, wherein the access result obtaining module is specifically configured to:
and calling a local virtual machine according to the target contract name and the target method name in the description information of the data to be accessed, executing the target method in the target intelligent contract, and acquiring a cross-chain access result.
26. The apparatus of claim 24, wherein the access result feedback module is specifically configured to:
signing endorsements on the cross-chain access results;
feeding back cross-chain access results including signature endorsements to the other blockchain networks.
27. 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 cross-chain transaction request processing method of any one of claims 1-8, or to perform the cross-chain transaction request processing method of any one of claims 9-10, or to perform the cross-chain transaction request processing method of any one of claims 11-13.
28. A non-transitory computer readable storage medium storing computer instructions for causing a computer to perform the cross-chain transaction request processing method of any one of claims 1-8, or the cross-chain transaction request processing method of any one of claims 9-10, or the cross-chain transaction request processing method of any one of claims 11-13.
CN202010789291.2A 2020-08-07 2020-08-07 Cross-chain transaction request processing method, device, equipment and storage medium Active CN111741026B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010789291.2A CN111741026B (en) 2020-08-07 2020-08-07 Cross-chain transaction request processing method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010789291.2A CN111741026B (en) 2020-08-07 2020-08-07 Cross-chain transaction request processing method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN111741026A CN111741026A (en) 2020-10-02
CN111741026B true CN111741026B (en) 2020-12-01

Family

ID=72658233

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010789291.2A Active CN111741026B (en) 2020-08-07 2020-08-07 Cross-chain transaction request processing method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN111741026B (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112398918A (en) * 2020-10-30 2021-02-23 迅鳐成都科技有限公司 Data sharing method, device and system for across alliance chain and storage medium
CN112306645B (en) * 2020-12-24 2021-05-04 北京百度网讯科技有限公司 Transaction processing method, device, equipment and medium for Ether house virtual machine
CN112286643B (en) * 2020-12-24 2021-04-20 北京百度网讯科技有限公司 Transaction processing method, device, equipment and medium for Ether house virtual machine
CN112286641B (en) * 2020-12-24 2021-04-20 北京百度网讯科技有限公司 Transaction processing method, device, equipment and medium for Ether house virtual machine
CN112380294B (en) * 2020-12-31 2021-04-06 支付宝(杭州)信息技术有限公司 Block chain cross-chain access method and device
CN112764887B (en) * 2021-01-15 2023-10-13 北京百度网讯科技有限公司 Method, device, equipment and storage medium for constructing transaction request
CN113807960A (en) * 2021-03-04 2021-12-17 京东科技控股股份有限公司 Cross-link processing method, device and system between heterogeneous chains and electronic equipment
CN112732800B (en) * 2021-03-30 2021-07-13 支付宝(杭州)信息技术有限公司 Method and apparatus for providing cross-chain messages
CN115348262B (en) * 2021-04-27 2024-02-20 腾讯科技(深圳)有限公司 Cross-link operation execution method and network system based on cross-link protocol
CN113360504B (en) * 2021-06-22 2023-08-15 东北大学 Connection query optimization method based on multi-block chain environment
CN113452781B (en) * 2021-06-28 2023-02-14 上海计算机软件技术开发中心 Block chain cross-chain system and method
CN115174693B (en) * 2022-06-30 2023-04-21 国家信息中心 Hierarchical blockchain cross-chain interaction method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106899698A (en) * 2017-04-11 2017-06-27 张铮文 A kind of across chain mutual operation method between block chain

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108256864B (en) * 2018-02-13 2019-06-07 中链科技有限公司 Foundation across chain alliance and communication means, system between a kind of block chain
US11030217B2 (en) * 2018-05-01 2021-06-08 International Business Machines Corporation Blockchain implementing cross-chain transactions
CN109035012B (en) * 2018-06-11 2020-11-17 西安纸贵互联网科技有限公司 Cross-chain processing method of block chain system and computer readable storage medium
CN108810137B (en) * 2018-06-11 2021-10-01 西安纸贵互联网科技有限公司 Alliance block chain system
CN110766408A (en) * 2019-10-24 2020-02-07 杭州趣链科技有限公司 Cross-chain transaction verification method, engine, equipment and storage medium for heterogeneous block chain
CN111191283B (en) * 2019-12-27 2023-02-07 广西大学 Beidou positioning information security encryption method and device based on alliance block chain

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106899698A (en) * 2017-04-11 2017-06-27 张铮文 A kind of across chain mutual operation method between block chain

Also Published As

Publication number Publication date
CN111741026A (en) 2020-10-02

Similar Documents

Publication Publication Date Title
CN111741026B (en) Cross-chain transaction request processing method, device, equipment and storage medium
KR102611812B1 (en) Blockchain-based data processing method and apparatus, device, storage medium and program
CN111769958B (en) Block chain cross-chain processing method, device, equipment and storage medium
CN110503433B (en) Method, device, equipment and medium for implementing endorsement in block chain
CN111277647B (en) Block chain network member management method, device, equipment and medium
CN111866085B (en) Data storage method, system and device based on block chain
EP3852040A2 (en) Blockchain transfer processing method and apparatus, device, and medium
US20210092158A1 (en) Method, apparatus, device, terminal, and medium for defending against attacking behavior
CN111737365B (en) Storage certificate processing method, device, equipment and storage medium
CN111352705B (en) Transaction processing method, device, equipment and medium of block chain
CN111260474B (en) Asset transaction method, device, equipment, system and storage medium of cross-blockchain
CN112764887B (en) Method, device, equipment and storage medium for constructing transaction request
CN111090691B (en) Data processing method and device, electronic equipment and storage medium
CN112437006B (en) Request control method and device based on API gateway, electronic equipment and storage medium
CN111565204B (en) Block chain operation method, device, equipment and storage medium
CN110866740A (en) Processing method and device for block chain transaction request, electronic equipment and medium
EP3859575A2 (en) Method and apparatus for providing applet service capability, electronic device, and storage medium
CN111352706B (en) Data access method, device, equipment and storage medium
CN111324425B (en) Data access method, device, equipment and storage medium
CN111770176B (en) Traffic scheduling method and device
CN112000880B (en) Push message processing method and device, electronic equipment and readable storage medium
CN111770211A (en) SNAT method, SNAT device, electronic equipment and storage medium
CN111858089B (en) Method and device for calling Ethernet nodes
CN111353811B (en) Unified resource issuing method and system
CN111178863B (en) Transaction charging method, device, equipment and medium based on blockchain

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