WO2022205960A1 - Procédé et appareil de traitement de données interchaînes - Google Patents

Procédé et appareil de traitement de données interchaînes Download PDF

Info

Publication number
WO2022205960A1
WO2022205960A1 PCT/CN2021/133068 CN2021133068W WO2022205960A1 WO 2022205960 A1 WO2022205960 A1 WO 2022205960A1 CN 2021133068 W CN2021133068 W CN 2021133068W WO 2022205960 A1 WO2022205960 A1 WO 2022205960A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
type
blockchain
chain
certification
Prior art date
Application number
PCT/CN2021/133068
Other languages
English (en)
Chinese (zh)
Inventor
邱鸿霖
余逸荣
Original Assignee
蚂蚁区块链科技(上海)有限公司
支付宝(杭州)信息技术有限公司
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 蚂蚁区块链科技(上海)有限公司, 支付宝(杭州)信息技术有限公司 filed Critical 蚂蚁区块链科技(上海)有限公司
Publication of WO2022205960A1 publication Critical patent/WO2022205960A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing

Definitions

  • the embodiments of this specification relate to the field of blockchain technology, and more particularly, to a method and apparatus for processing cross-chain data.
  • Blockchain technology also known as distributed ledger technology, is a decentralized distributed database technology characterized by decentralization, openness, transparency, immutability, and trustworthiness. Each data of the blockchain will be broadcast to the blockchain nodes of the entire network, and each full node has a full amount of consistent data.
  • many different types of chains have emerged, which are applied in the fields of finance, health care, supply chain, asset management and traceability.
  • most on-chain applications encrypted currencies or smart contracts
  • How to make different types of chains cooperate to realize the circulation of value has become the direction of exploration.
  • the data structure, data format, data semantics, on-chain proof and verification root of trust of the ledger data of different types of blockchains are different.
  • the data format of the Ethereum chain type blockchain is rlp encoding
  • the data format of the Fabric chain type blockchain is protobuf encoding
  • the proof data of the Ethereum chain is Spv proof data
  • the proof data of the Fabric chain is more
  • the signature of each endorsing node, the verification root of the Ethereum chain is the genesis block data
  • the verification root of the Fabric chain is the respective public keys of multiple endorsing nodes. Therefore, it faces the problem of processing differentiated data in cross-chain and multi-chain applications.
  • one aspect of this specification provides a cross-chain data processing method.
  • the method is executed by a data provider device, and includes: acquiring first data from a first blockchain; generating second data, the second The data has a predetermined data structure, and the second data includes: a chain identifier of the first blockchain, first data, and related information of the first data, wherein the related information of the first data includes the first data.
  • a chain type of blockchain providing the second data to the data recipient device.
  • the related information of the first data further includes a data structure type of the first data.
  • the data structure type of the first data is one of the following types: block header type, transaction type, account status type, and receipt type.
  • acquiring the first data from the first blockchain includes acquiring the first data and its certification data from the first blockchain, and the second data further includes the certification data.
  • the second data further includes related information of the certification data
  • the related information of the certification data includes at least one of the following: the type of the certification data, the data structure of the certification data Type, hash value of the attestation data, verification root of the attestation data.
  • the type of the certification data is one of the following types: Spv certification data type, multi-issue certification data type.
  • the type of the first blockchain is one of the following types: a Bitcoin chain type, an Ethereum chain type, and a Hyperledger Fabric chain type.
  • Another aspect of the present specification provides a cross-chain data processing method, the method being performed by a data receiver device, comprising: receiving second data from a data provider device, the second data having a predetermined data structure, and the first
  • the second data includes: the chain identifier of the first blockchain, the first data, and the related information of the first data, wherein the related information of the first data includes the chain type of the first blockchain;
  • the relevant information of the first data determines a data parser corresponding to the first data;
  • the first data is parsed by a data parser.
  • the related information of the first data further includes a data structure type of the first data, wherein the data analysis corresponding to the first data is determined based on the related information of the first data
  • the parser includes, based on the type of the first blockchain and the data structure type of the first data, determining a data parser corresponding to the first data.
  • the data receiver device is preset with a corresponding relationship between the chain identifier of the first blockchain and the first verification root of the first blockchain, and the second data contains It also includes certification data of the first data, and the method further includes: determining a certification data parser and a verifier corresponding to the certification data; parsing the certification data through the certification data parser; passing the verification The device verifies the first data based on the first verification root and the certification data.
  • determining the attestation data parser and verifier corresponding to the attestation data includes, based on the type of the first blockchain and the data structure type of the first data, determining the attestation data with the attestation data Corresponding proof data parser and validator.
  • the second data further includes the type of the certification data and the data structure type of the certification data
  • determining the certification data parser and verifier corresponding to the certification data includes: The attestation data parser and verifier corresponding to the attestation data are determined based on the type of attestation data and the data structure type of the attestation data.
  • the second data further includes a second verification root of the first blockchain, wherein the verification is performed by the verifier based on the first verification root and the certification data.
  • the first data is verified, and the second verification root is verified by the verifier based on the first verification root, and after the verification is passed, the verification is performed by the verifier based on the second verification root and the certification data. Verify the first data.
  • the related information includes the chain type of the first blockchain; the providing unit is configured to provide the second data to the data receiver device.
  • the obtaining unit is further configured to obtain the first data and its certification data from the first blockchain, and the second data further includes the certification data.
  • the first determining unit is configured to determine a data parser corresponding to the first data based on the relevant information of the first data; the first parsing unit is configured to analyze the first data parser through the data parser. a data.
  • the related information of the first data further includes a data structure type of the first data, wherein the first determining unit is further configured to be based on the type of the first blockchain and the data structure type of the first data to determine a data parser corresponding to the first data.
  • the data receiver device is preset with a corresponding relationship between the chain identifier of the first blockchain and the first verification root of the first blockchain, and the second data contains It also includes certification data of the first data, and the device further includes: a second determination unit, configured to determine a certification data parser and a validator corresponding to the certification data; a second parsing unit, configured to pass The certification data parser parses the certification data; the verification unit is configured to verify the first data based on the first verification root and the certification data through the verifier.
  • the second determining unit is further configured to determine, based on the type of the first blockchain and the data structure type of the first data, a certification data parser and a certification data parser corresponding to the certification data. validator.
  • the second data further includes the type of the certification data and the data structure type of the certification data, wherein the second determining unit is further configured to, based on the type of the certification data .
  • the data structure type of the attestation data determines the attestation data parser and verifier corresponding to the attestation data.
  • the second data further includes a second verification root of the first blockchain, wherein the verification unit includes a first verification sub-unit configured to pass the validator The second verification root is verified based on the first verification root, and the second verification subunit is configured to, after the verification is passed, the verification device based on the second verification root and the certification data. The first data is verified.
  • Another aspect of the present specification provides a computer-readable storage medium on which a computer program or instruction is stored, and when the computer program or instruction is executed in a computer, causes the computer to execute any one of the above methods.
  • Another aspect of the present specification provides a computing device, including a memory and a processor, where a computer program or instruction is stored in the memory, and the processor implements any one of the above methods when executing the computer program or instruction.
  • different cross-chain data can be converted into a unified data structure, so that the data receiver only needs to preset less data locally to realize the
  • the analysis and proof process of different cross-chain data can realize multi-chain clients with a small amount of data, or multi-chain data processing smart contracts, etc., which improves the convenience of cross-chain communication.
  • FIG. 1 shows a schematic diagram of a cross-chain system according to an embodiment of the present specification
  • FIG. 2 shows a flowchart of a method for processing cross-chain data according to an embodiment of the present specification
  • Figure 3 schematically shows a data structure of self-describing cross-chain data
  • Figure 4 schematically shows a data structure of self-describing cross-chain data
  • Figure 5 schematically shows a data structure of self-describing cross-chain data
  • FIG. 6 schematically shows a data structure of self-describing cross-chain data
  • FIG. 7 schematically shows a data structure of self-describing cross-chain data
  • FIG. 8 shows a flowchart of a method for processing cross-chain data according to an embodiment of the present specification
  • FIG. 9 shows a cross-chain data processing apparatus 900 according to an embodiment of the present specification.
  • FIG. 10 shows a cross-chain data processing apparatus 1000 according to an embodiment of the present specification.
  • FIG. 1 shows a schematic diagram of a cross-chain system according to an embodiment of the present specification.
  • the cross-chain system includes a first blockchain 11 , an off-chain network 12 and a second blockchain 13 .
  • the first blockchain 11 and the second blockchain 13 are, for example, different types of blockchains, for example, the first blockchain 11 is an Ethereum chain, and the second blockchain 13 is a Fabric chain.
  • the first blockchain 11 includes node 1
  • the second blockchain 13 includes node 2
  • the off-chain network 12 includes a first relay device 121 and a second relay device 122.
  • node 1, node 2, the first relay device 121 and the second relay device 122 can all correspond to specific computing devices, each of which has its own connection address, so that they can pass The connection addresses are connected to each other, and send and receive data to each other.
  • node 1 and node 2 can be connected to each other, node 1 can be connected to the first relay device 121, and node 2 can be connected to the second relay device.
  • the device 122 is connected, and the first relay device 121 and the second relay device 122 can be directly or indirectly connected.
  • node 1 can locally read the ledger data in the first blockchain 11 and provide the data to the first relay device 121 or node 2, or the second relay device 122 can connect to node 2 And read the ledger data in the second blockchain 13 from the ledger data of the node 2, and provide the data to the first relay device 121 or the node 1, and so on.
  • the first blockchain 11 and the second blockchain 13 are different blockchains
  • the data will be parsed using different parsing methods and validated using different validation methods.
  • a multi-chain client is installed in the first relay device 121, and the multi-chain client is preset with the domain name and verification root of each blockchain, as well as the parsing algorithm and verification algorithm corresponding to various chain types, etc. .
  • the data provider needs to configure the self-describing data based on the blockchain ledger data in advance, and provide the self-describing data to the data receiver (for example, the first relay device 121).
  • the multi-chain client can read the blockchain domain name and data structure type corresponding to the ledger data included in the self-describing data from the self-describing data. and so on, so that the corresponding parsing algorithm and verification algorithm can be determined based on the read content, and finally the verified ledger data can be obtained.
  • the data provider can also It can be a blockchain proxy node.
  • the data receiver can be a blockchain proxy node in addition to a blockchain node and a relay device.
  • the data receiver is not limited to processing the received blocks through a multi-chain client.
  • the data receiver can also process the received blockchain data by executing a predetermined smart contract.
  • the domain name and verification root of each blockchain can be preset in the predetermined smart contract.
  • Each chain type corresponds to the parsing algorithm, verification algorithm, etc.
  • step S202 obtaining first data from a first blockchain
  • step S204 generating second data
  • the second data has a predetermined data structure
  • the second data includes: a chain identifier of the first blockchain, first data, and related information of the first data, wherein the first data
  • the relevant information of the first blockchain includes the chain type of the first blockchain
  • step S206 the second data is provided to the data receiver device.
  • the data provider here can be a blockchain node, a proxy node, an off-chain relay device, and so on.
  • the data receiver can be a blockchain node, an agent node, an off-chain relay device, etc., which can receive data through a multi-chain client, or a blockchain node can receive data through a predetermined smart contract.
  • description will be given by taking the node 1 as the data provider and the first relay device 121 as the data receiver by way of example.
  • step S202 the first data is obtained from the first blockchain.
  • the first data can be any data in the first blockchain 11, and the node 1 can directly read the first data from the locally stored ledger data.
  • the first data can be read locally in the node 1 by the client of the first blockchain 11 set therein.
  • the node 1 can read the first data and its Spv proof data locally through its client.
  • the first data can be block header data, transaction data, receipt data, and account status data, all of which can be verified by simple payment verification (Spv) proof data that they are indeed stored in the blockchain ledger data Consensus data.
  • Spv simple payment verification
  • the corresponding Spv proof data includes: the block header hash value of block 1, the receipt tree root hash value included in block 1 Hash value, the hash value of each other node in the tree path from receipt 1 to the root node in the receipt tree.
  • the proof data of the first data is Spv data.
  • Different types of blockchains have different types of proof data. For example, if the first data is the data in the second blockchain 13 and the second blockchain 13 is the Fabric chain, the proof data of the first data is the second The digital signature of the first data by each of the predetermined number of endorsing nodes in the blockchain 13 .
  • step S204 second data is generated, the second data has a predetermined data structure, and the second data includes: the chain identifier of the first blockchain, the first data, and the related information of the first data, wherein, The relevant information of the first data includes the chain type of the first blockchain.
  • node 1 After node 1 reads the data locally, in order to facilitate cross-chain communication, it can configure self-describing cross-chain data based on the read data.
  • the self-describing cross-chain data has a predetermined data structure, that is, it includes a predetermined field arrangement. , so that it can be read by the data receiver device.
  • FIG. 3 schematically shows a data structure of self-describing cross-chain data.
  • the data structure includes three fields: chain identification, data element and data element information.
  • the chain identifier is an identifier that uniquely identifies the blockchain instance, and uniquely corresponds to the blockchain instance.
  • the chain identifier is, for example, the domain name of the blockchain.
  • each blockchain can be assigned a unique chain domain name, which is readable and easy to identify, similar to a website domain name. , so as to have stronger operability.
  • the chain identifier is not limited to the chain domain name, but can also be other unique identifiers of the blockchain instance, such as the verification root of the blockchain.
  • the data element field is the cross-chain data to be transmitted across the chain, such as the first data.
  • the data element information is information used for parsing the first data.
  • the data metadata includes a chain type, and the chain type refers to the blockchain type of the blockchain instance, such as the Ethereum chain type, the Bitcoin chain type, the Hyperledger Fabric chain type, and so on.
  • the data element information includes a chain type and a data structure type of the data element.
  • the first data may be block header data, transaction data, receipt data, and account data in the blockchain. Status data, etc.
  • the first data has different data structure types when it is different data. Therefore, the data structure types of the data elements include, for example, block header type, transaction type, account status type, receipt type, etc. .
  • FIG. 4 schematically shows a data structure of self-describing cross-chain data.
  • the metadata information includes the three fields shown in FIG. 4: chain type, data structure type, and hash value.
  • the hash value field is the hash value of the cross-chain data, which is used to verify the hash value of the cross-chain data.
  • Figure 5 schematically shows a data structure of self-describing cross-chain data.
  • the data structure in Figure 5 also includes a proof meta field, which is the proof data used to verify the cross-chain data.
  • the proof data has different forms according to the type of the specific chain.
  • the proof data is Spv proof data
  • the proof data is the endorsement node pair data element digital signature.
  • the provable data includes block header data, receipt data, transaction data and account status data.
  • the data metadata should include at least the chain type and the data structure type, so as to determine which provable data the self-describing cross-chain data corresponds to, so as to facilitate the parsing of the provable data by the data receiver.
  • FIG. 6 schematically shows a data structure of self-describing cross-chain data.
  • the data structure in FIG. 6 further includes a certification meta-information field, and the certification meta-information field includes information for parsing and verifying the certification data.
  • the attestation meta-information field may include an attestation type field.
  • the certification meta information field may include a certification type field and a data structure type field, where the data structure type field is the data structure type of the certification data, such as the data structure type corresponding to the Spv certification data, and the multiple The type of data structure corresponding to the data is indicated.
  • FIG. 7 schematically shows a data structure of self-describing cross-chain data.
  • the certification meta information field includes: a certification type field, a data structure type field, a hash value field, and a verification root field.
  • the hash value field is the hash value of the proof data, which is used to verify the proof data
  • the verification root field is the verification root of the proof data, that is, the verification root in the corresponding blockchain instance, and the verification root is used for combining
  • the proof data is used to verify the cross-chain data.
  • node 1 may configure self-describing cross-chain data based on the first data according to the data structure of FIG. 3 or FIG. 4 to obtain the second data.
  • Node 1 configures self-describing cross-chain data with the data structure shown in ”) and the chain type of the first blockchain 11 (ie, the Ethereum chain type), so that “Chain1” is filled in the chain identification field in FIG. 3 in the client, and the first data is filled in the data in FIG. 3 Meta field, fill in "Ethereum chain type" into the neuron information field in Figure 3, so as to obtain the self-describing cross-chain data corresponding to the first data.
  • the first data is, for example, receipt 1.
  • node 1 can configure the corresponding self-describing cross-section according to any of the predetermined data structures in FIG. 5-FIG. 7 .
  • chain data as the second data.
  • the client of node 1 is pre-set with the chain identifier of the blockchain 11, the chain type, and the four data structure types in the first blockchain 11 (that is, the block header data type, transaction data type, receipt data type, Account status data type), proof type (that is, Spv proof type), data structure type of proof data (that is, the data structure type of Spv proof), and verification root, and the calculation unit of the hash value is also set in the client.
  • the client of node 1 After reading receipt 1 and its certificate, the client of node 1 determines that the data structure type of receipt 1 is the receipt data type, calculates the respective hash values of receipt 1 and its certificate through the hash value calculation unit, and combines the above items. , Receipt 1, its proof and their respective hash values are filled into the data structure shown in Figure 7, thereby obtaining self-describing cross-chain data corresponding to Receipt 1 and its proof data.
  • the client of the node 1 in the first blockchain 11 only needs to preset various parameters related to the first blockchain 11 as described above.
  • the relay device 121 acts as a data provider, it is connected to multiple blockchains, for example, it may read data from the respective blockchains to which it is connected and convert it into self-describing cross-chain data, in this case
  • the parameters related to each blockchain need to be preset.
  • parameters related to the first blockchain 11 and parameters related to the second blockchain 12 need to be preset in the multi-chain client of the first relay device 121, so that the first The relay device 121 may read data from the first blockchain 11 and the second blockchain 12 and convert them into self-describing cross-chain data, respectively.
  • step S206 the second data is provided to the data recipient device.
  • the node 1 may directly send the second data to the device of the first relay device 121 .
  • the first relay device 121 can provide the second data to the node 2 by sending a transaction to the node 2, in which the transaction starts with The second data is used as an incoming parameter to invoke a predetermined contract in the second blockchain 13 , thereby providing the second data to the node 2 .
  • step S802 receiving second data from a data provider device, the second data It has a predetermined data structure, and the second data includes: a chain identifier of the first blockchain, first data, and related information of the first data, wherein the related information of the first data includes the first data.
  • the chain type of the blockchain Step S804, determine a data parser corresponding to the first data based on the relevant information of the first data; Step S806, parse the first data through the data parser.
  • the data recipient can be a blockchain node, proxy node, off-chain relay device, etc., which can receive data through a multi-chain client, or a blockchain node can receive data through a predetermined smart contract.
  • a blockchain node can receive data through a predetermined smart contract.
  • step S802 second data is received from the data provider device, the second data has a predetermined data structure, and the second data includes: the chain identifier of the first blockchain, the first data, the first data The related information, wherein the related information of the first data includes the chain type of the first blockchain.
  • the second data may have a data structure as shown in any one of FIGS. 3-7 .
  • the data meta-information and the certification meta-information may also include different field configurations as described above.
  • the second data may include the following fields: chain identifier, data element, chain type, or the second data may include the following fields: chain identifier, data element, chain type, data structure type, or, in the second data
  • the following fields may be included: chain ID, data element, chain type, data structure type, hash value, etc.
  • step S804 a data parser corresponding to the first data is determined based on the relevant information of the first data. Step S806, parsing the first data through a data parser.
  • the first relay device 121 can parse the self-describing data based on the data structure, so as to read from it.
  • the data of each field in the self-describing data can obtain relevant information of the first data therein, and a parser for parsing the first data can be determined based on the relevant information, where the parser refers to a parsing algorithm.
  • the parser corresponding to each blockchain type can be preset in the multi-chain client in the first relay device 121, since each blockchain type adopts different data formats, for example, as mentioned above, the Ethereum chain type
  • the data format of the blockchain is rlp encoding
  • the data format of the Fabric chain type blockchain is protobuf encoding. Therefore, the parser corresponding to each blockchain type is used to decode different data formats.
  • the multi-chain client in the first relay device 121 may also preset parsers corresponding to different data structures in the blockchain, and the parsers corresponding to different data structures are used to perform data processing based on different data structures. Parse. For example, in an Ethereum chain type blockchain, assuming that the type of the first data is a receipt, after the first data is decoded by the above parser, the parser corresponding to the receipt is also used to parse the first data to obtain Obtain the content of the first data.
  • the multi-chain client of the first relay device 121 can select a corresponding parser to parse the first data based on the relevant information of the first data.
  • the related information of the first data includes the Ethereum chain type, so that the multi-chain client in the first relay device 121 selects a parser for decoding the rlp code to parse the first data.
  • the relevant information of the first data includes: Ethereum chain type, receipt type, so the multi-chain client in the first relay device 121 first selects a parser for decoding the rlp code to parse the first data, Then, a parser for reading the receipt is selected to further read the first data, so that the content of the first data can be obtained.
  • the data element information further includes a hash value of the first data, so that before parsing the first data, the hash value of the first data can be calculated and combined with the data The hash value in the meta information is compared to determine whether the first data is the original data provided by the data provider.
  • the second data further includes certification data of the first data
  • the data recipient may further perform the following steps to verify the first data included in the second data Verify the data: Step S808, determine the certification data parser and verifier corresponding to the certification data; Step S810, parse the certification data through the certification data parser; Step S812, use the verifier to use the certification data
  • the proof data verifies the first data.
  • step S808 the certification data parser and verifier corresponding to the certification data are determined.
  • the multi-chain client includes an Spv proof corresponding to the Ethereum chain type.
  • a data parser that is, a parsing algorithm
  • a validator that is, a verification algorithm
  • the multi-chain client also includes a multi-state certification data parser corresponding to the type of Fabric chain , and a validator for authenticating with multi-signature proof data.
  • the second data has the data structure shown in FIG. 5
  • the multi-chain client is based on the chain type (Ethereum chain type) in the data metadata and the data structure in the data metadata Type (receipt type), which determines the parser that parses the Spv proof data of the receipt in the Ethereum chain type blockchain, and determines the validator that uses the Spv proof data for verification.
  • the second data has the data structure shown in FIG. 6 or FIG. 7 , and the multi-chain client can directly determine the corresponding parser based on the proof type and data structure type in the second data and validator.
  • Step S810 Parse the certification data through the certification data parser.
  • the parsing process is similar to the parsing process for the first data above, including the decoding process of the data format and the reading process of the data structure, which will not be repeated here.
  • step S812 the first data is verified by the verifier using the certification data.
  • the validator refers to a preset validation algorithm in the multi-chain client.
  • the chain identifier and minimum verification root of each blockchain are preset in the multi-chain client. Based on the chain identifier of the first blockchain 11 in the second data, the multi-chain client can obtain the preset minimum verification root corresponding to the first blockchain 11, and the minimum verification root is, for example, the first blockchain The hash of the genesis block of 11.
  • the first data is receipt 1
  • the certification data is correspondingly the Spv certification data of receipt 1
  • the multi-chain client can verify receipt 1 through the following steps: calculate the hash value of receipt 1; calculate the receipt tree in block 1 based on the hash values of other nodes in the tree path included in the Spv proof data the root hash value of ; compare the calculated root hash value to the root hash value of the receipt tree of block 1 included in the Spv proof data to determine whether receipt 1 is receipt 1 in block 1; and, Based on the Spv proof data including the block header hash value of block 1 and the minimum verification root of the first block chain 11 preset in the multi-chain client, determine whether block 1 is in the first block chain 11 block.
  • the certification meta information further includes a verification root.
  • the verification root may include more verification root information than the minimum verification root preset in the multi-chain client. , for example, can include the block information of the genesis block, the longest chain information of block 1 in the blockchain, etc., so that the multi-chain client can use the minimum verification root to verify the verification root in the second data. , after the verification is passed, the receipt 1 can be verified based on the verification root and the Spv proof data.
  • the verification root included in the certification meta information may also be the minimum verification root.
  • the proof meta information further includes a hash value of the proof data, so that before using the proof data for verification, the hash value of the proof data can be calculated and compared with the proof data.
  • the hash value in the meta information is compared to determine whether the proof data is the original data provided by the data provider.
  • FIG. 9 shows a cross-chain data processing apparatus 900 according to an embodiment of the present specification.
  • the apparatus is deployed in a data provider device, and includes: an obtaining unit 91 configured to obtain first data from a first blockchain;
  • the unit 92 is configured to generate second data, the second data has a predetermined data structure, and the second data includes: the chain identifier of the first blockchain, the first data, and the related information of the first data, Wherein, the relevant information of the first data includes the chain type of the first blockchain;
  • the providing unit 93 is configured to provide the second data to the data receiver device.
  • the obtaining unit 91 is further configured to obtain first data and its certification data from the first blockchain, and the second data further includes the certification data.
  • FIG. 10 shows a cross-chain data processing apparatus 1000 according to an embodiment of the present specification.
  • the apparatus is deployed in a data receiver device, and includes: a receiving unit 101 configured to receive second data from a data provider device, the The second data has a predetermined data structure, and the second data includes: a chain identifier of the first blockchain, first data, and related information of the first data, wherein the related information of the first data includes all the chain type of the first blockchain; the first determining unit 102 is configured to determine a data parser corresponding to the first data based on the relevant information of the first data; the first parsing unit 103 is configured to: The first data is parsed by a data parser.
  • the related information of the first data further includes a data structure type of the first data
  • the first determining unit 102 is further configured to: The type and the data structure type of the first data determine the data parser corresponding to the first data.
  • the data receiver device is preset with a corresponding relationship between the chain identifier of the first blockchain and the first verification root of the first blockchain, and the second data contains It also includes certification data of the first data
  • the apparatus 1000 further includes: a second determination unit 104, configured to determine a certification data parser and a validator corresponding to the certification data; a second parsing unit 105, configured to In order to parse the certification data through the certification data parser; the verification unit 106 is configured to verify the first data based on the first verification root and the certification data through the verifier.
  • the second determining unit 104 is further configured to determine a certification data parser corresponding to the certification data based on the type of the first blockchain and the data structure type of the first data and validator.
  • the second data further includes the type of the certification data and the data structure type of the certification data
  • the second determining unit 104 is further configured to: The type, the data structure type of the attestation data, determines the attestation data parser and verifier corresponding to the attestation data.
  • the second data further includes a second verification root of the first blockchain
  • the verification unit 106 includes a first verification sub-unit 1061 configured to pass the The verifier verifies the second verification root based on the first verification root
  • the second verification subunit 1062 is configured to, after the verification passes, pass the verifier based on the second verification root and the proof The data validates the first data.
  • Another aspect of the present specification provides a computer-readable storage medium on which a computer program or instruction is stored, and when the computer program or instruction is executed in a computer, causes the computer to execute any one of the above methods.
  • Another aspect of the present specification provides a computing device, including a memory and a processor, where a computer program or instruction is stored in the memory, and the processor implements any one of the above methods when executing the computer program or instruction.
  • different cross-chain data can be converted into a unified data structure, so that the data receiver only needs to preset less data locally to realize the
  • the analysis and proof process of different cross-chain data can realize multi-chain clients with a small amount of data, or multi-chain data processing smart contracts, etc., which improves the convenience of cross-chain communication.
  • a software module can be placed in random access memory (RAM), internal memory, read only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other in the technical field. in any other known form of storage medium.
  • RAM random access memory
  • ROM read only memory
  • electrically programmable ROM electrically erasable programmable ROM
  • registers hard disk, removable disk, CD-ROM, or any other in the technical field. in any other known form of storage medium.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Un procédé et un appareil de traitement de données interchaînes. Le procédé est exécuté par un dispositif fournisseur de données, et consiste : à obtenir de premières données à partir d'une première chaîne de blocs ; à générer des secondes données, les secondes données ayant une structure de données prédéfinie, et les secondes données comprenant : un identifiant de chaîne de la première chaîne de blocs, des premières données et des informations associées des premières données, les informations associées des premières données comprenant un type de chaîne de la première chaîne de blocs ; et à fournir des secondes données à un dispositif récepteur de données.
PCT/CN2021/133068 2021-03-30 2021-11-25 Procédé et appareil de traitement de données interchaînes WO2022205960A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110340165.3 2021-03-30
CN202110340165.3A CN112734432B (zh) 2021-03-30 2021-03-30 跨链数据处理方法和装置

Publications (1)

Publication Number Publication Date
WO2022205960A1 true WO2022205960A1 (fr) 2022-10-06

Family

ID=75596152

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/133068 WO2022205960A1 (fr) 2021-03-30 2021-11-25 Procédé et appareil de traitement de données interchaînes

Country Status (2)

Country Link
CN (2) CN113673991A (fr)
WO (1) WO2022205960A1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113673991A (zh) * 2021-03-30 2021-11-19 支付宝(杭州)信息技术有限公司 跨链数据处理方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109559227A (zh) * 2018-11-29 2019-04-02 咪咕文化科技有限公司 一种跨区块链网络的交易方法、装置及存储介质
US20190340267A1 (en) * 2018-05-01 2019-11-07 International Business Machines Corporation Blockchain implementing cross-chain transactions
CN111311209A (zh) * 2020-02-03 2020-06-19 腾讯科技(深圳)有限公司 跨区块链的数据处理方法、装置、设备及计算机存储介质
CN111416808A (zh) * 2020-03-13 2020-07-14 财付通支付科技有限公司 跨区块链的数据互存方法、装置、设备及存储介质
CN112734432A (zh) * 2021-03-30 2021-04-30 支付宝(杭州)信息技术有限公司 跨链数据处理方法和装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101701131B1 (ko) * 2016-04-28 2017-02-13 주식회사 라피 이종간 블록체인 연결을 이용한 데이터 기록/검증 방법 및 시스템
US11895223B2 (en) * 2019-02-06 2024-02-06 International Business Machines Corporation Cross-chain validation
CN110288345B (zh) * 2019-06-26 2022-04-05 深圳市迅雷网络技术有限公司 跨链通信方法、装置、主链节点及存储介质
CN112615871B (zh) * 2019-06-28 2023-08-22 创新先进技术有限公司 一种跨链发送可认证消息的方法和装置
CN110650189B (zh) * 2019-09-20 2022-01-18 深圳供电局有限公司 一种基于中继的区块链的交互系统及方法
CN110766408A (zh) * 2019-10-24 2020-02-07 杭州趣链科技有限公司 异构区块链的跨链交易验证方法、引擎、设备和存储介质
CN111431903B (zh) * 2020-03-25 2022-08-09 北京新创智链科技有限公司 一种跨链中继方法、装置以及计算机可读存储介质
CN111767484B (zh) * 2020-08-31 2020-12-04 中国信息通信研究院 工业互联网标识解析方法及相关装置
CN111769958B (zh) * 2020-09-02 2021-01-01 百度在线网络技术(北京)有限公司 区块链跨链处理方法、装置、设备和存储介质
CN112446785B (zh) * 2020-11-06 2023-09-22 杭州趣链科技有限公司 跨链交易方法、系统、装置、设备和存储介质
CN112488679B (zh) * 2020-12-03 2024-05-07 陈鹏 一种区块链的跨链合约解析方法、中继链及跨链系统
CN112200682B (zh) * 2020-12-04 2021-03-09 腾讯科技(深圳)有限公司 基于区块链的跨链交易方法、装置和计算机可读存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190340267A1 (en) * 2018-05-01 2019-11-07 International Business Machines Corporation Blockchain implementing cross-chain transactions
CN109559227A (zh) * 2018-11-29 2019-04-02 咪咕文化科技有限公司 一种跨区块链网络的交易方法、装置及存储介质
CN111311209A (zh) * 2020-02-03 2020-06-19 腾讯科技(深圳)有限公司 跨区块链的数据处理方法、装置、设备及计算机存储介质
CN111416808A (zh) * 2020-03-13 2020-07-14 财付通支付科技有限公司 跨区块链的数据互存方法、装置、设备及存储介质
CN112734432A (zh) * 2021-03-30 2021-04-30 支付宝(杭州)信息技术有限公司 跨链数据处理方法和装置
CN113673991A (zh) * 2021-03-30 2021-11-19 支付宝(杭州)信息技术有限公司 跨链数据处理方法和装置

Also Published As

Publication number Publication date
CN112734432A (zh) 2021-04-30
CN112734432B (zh) 2021-07-23
CN113673991A (zh) 2021-11-19

Similar Documents

Publication Publication Date Title
CN110268678B (zh) 基于pki的认证代理用户的登录方法及利用其的服务器
US20220391831A1 (en) Blockchain-Based Authentication And Authorization
TWI770307B (zh) 用以使用調解方電腦系統來確保電腦程式正確執行的系統與方法
WO2020134942A1 (fr) Procédé de vérification d'identité et système à cet effet
US20200366489A1 (en) Blockchain-Enabled Computing
KR20230163971A (ko) 스마트 컨트랙트 기반의 인증서 서비스를 제공하는 방법 및 이를 이용한 서버
KR20230163970A (ko) 스마트 컨트랙트 기반의 인증서 서비스를 제공하는 방법 및 이를 이용한 서버
JP5513500B2 (ja) クレームを使用したセキュリティアイデンティティの表示
Kakei et al. Cross-certification towards distributed authentication infrastructure: A case of hyperledger fabric
Bhargavan et al. Verified implementations of the information card federated identity-management protocol
KR20220069020A (ko) 전송 계층 보안 및 기타 컨텍스트에서의 데이터 검증을 위한 분산 기술
WO2022205960A1 (fr) Procédé et appareil de traitement de données interchaînes
CN116599669A (zh) 数据处理方法、装置、计算机设备及存储介质
Alber et al. Adapting the TPL trust policy language for a self-sovereign identity world
Rowe et al. Measuring protocol strength with security goals
Weilbach et al. Applying distributed ledger technology to digital evidence integrity
CN115550060B (zh) 基于区块链的可信证书验证方法、装置、设备和介质
CN116975901A (zh) 基于区块链的身份验证方法、装置、设备、介质及产品
WO2022205961A1 (fr) Procédé et appareil pour mettre à jour une configuration de nom de domaine de chaîne de blocs
KR102494873B1 (ko) 일반 연산 검증용 영지식 증명 서킷 기반 가상머신을 구현하기 위한 거래 수행장치
Wanner et al. A formally verified protocol for log replication with byzantine fault tolerance
US20240031341A1 (en) Methods, devices and system related to a distributed ledger and user identity attribute
CN116488816A (zh) 一种基于区块链网络的数据处理方法、装置及存储介质
KR20180041052A (ko) m of n 다중 서명에 의한 인증서 서비스를 제공하는 방법 및 이를 이용한 서버
CN114026586A (zh) 用于授予对加密资产的访问权的零知识或有支付协议

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21934596

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21934596

Country of ref document: EP

Kind code of ref document: A1