WO2021082757A1 - 一种基于区块链系统的数据处理方法及装置 - Google Patents
一种基于区块链系统的数据处理方法及装置 Download PDFInfo
- Publication number
- WO2021082757A1 WO2021082757A1 PCT/CN2020/114568 CN2020114568W WO2021082757A1 WO 2021082757 A1 WO2021082757 A1 WO 2021082757A1 CN 2020114568 W CN2020114568 W CN 2020114568W WO 2021082757 A1 WO2021082757 A1 WO 2021082757A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- block
- consensus node
- data
- backed
- slicing
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
- H04L67/108—Resource delivery mechanisms characterised by resources being split in blocks or fragments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Definitions
- the present invention relates to the technical field of financial technology (Fintech), in particular to a data processing method and device based on a blockchain system.
- each consensus node in the blockchain system can usually back up the block to a remote location. End server. In this way, even if the block is trimmed during subsequent transactions, the consensus node can obtain the full amount of data of the block by accessing the remote server to ensure the integrity and security of the data in the blockchain system.
- the remote server first obtains the full data of the block from each consensus node, and then compares the full data of each part of the block in each consensus node, and then according to the full data of each part The result of the comparison completes the backup of the block.
- the full amount of data of a block usually has a relatively large amount of data, and this method requires the remote server to pull the full amount of data of the block from each consensus node, which will result in a large network communication overhead.
- the process of parsing the full amount of data of a block and comparing the full amount of data of each part of the block of different consensus nodes is usually relatively time-consuming, so the efficiency of block backup in this manner is usually low.
- the present invention provides a data processing method and device based on a blockchain system, which is used to solve the high network communication overhead and the efficiency of block backup caused by block backup based on the full data of the block in the consensus node in the prior art Low technical problems.
- the present invention provides a data processing method based on a blockchain system.
- the method is applied to a remote server.
- the method includes: the remote server obtains the waiting information stored by each consensus node in the blockchain system. Back up the slicing result of the block, and determine whether to back up the block to be backed up according to the slicing result of the block to be backed up by each consensus node.
- the slicing result of the block to be backed up by each consensus node is obtained by slicing the data file of the block to be backed up in the consensus node.
- the data file includes block data and signature data
- the slicing result includes the check value of multiple slices. And the positions of multiple slices in the data file, the block data is sliced using the first slice length, and the signature data is sliced using the second slice length.
- each consensus node and remote server realize the backup of the block to be backed up by transmitting the slicing result of the block to be backed up, and the slicing result of the block to be backed up by each consensus node includes the check value and the slice of the slice.
- the location in the data file it can be seen that the slicing result of the block to be backed up is smaller than the full amount of data in the block to be backed up. Therefore, this method can greatly reduce the amount of data transmission for network communication and is effective Reduce the cost of network communication and improve the efficiency of block backup.
- the remote server obtains the slicing result of the block to be backed up stored by each consensus node in the blockchain system, including: the remote server first obtains the slicing result of the block to be backed up by the first consensus node, and The first consensus node sends the slicing result of the block to be backed up to other consensus nodes in the blockchain system, and then receives the slicing result of the block to be backed up by other consensus nodes sent by other consensus nodes.
- the slicing result of the block to be backed up by the first consensus node is used by other consensus nodes to determine the slicing result of the backup block to be treated by other consensus nodes, and multiple slices in the slicing result of the backup block to be treated by other consensus nodes are corresponding first
- the consensus node treats multiple slices in the slicing result of the backup block, and the slicing result of the backup block of other consensus nodes also includes block data or signature data corresponding to the slices that do not have a corresponding relationship.
- the slicing result of the backup block to be treated by other consensus nodes is actually the comparison slicing result of the backup block to be treated by other consensus nodes relative to the first consensus node, that is, the slicing result of the backup block to be treated by other consensus nodes includes The slice information of the first consensus node corresponding to the corresponding slice (that is, the check value and position of the slice), and the full amount of data corresponding to the slice without the corresponding relationship (that is, block data or signature data).
- the remote The server can directly determine the consistency of the block to be backed up in each consensus node based on the slicing result of the block to be backed up by the first consensus node and the comparison slicing result of the block to be backed up by other consensus nodes relative to the first consensus node. In this way, other consensus nodes may not need to transmit the full amount of data of the same slice as the first consensus node, thereby reducing the amount of data transmission. Moreover, this method enables the remote server to quickly determine whether to back up the block to be backed up based on the concise and clear correspondence, which also helps to improve the efficiency of block backup.
- obtaining the slicing result of the block to be backed up by the first consensus node by the remote server includes: the remote server obtains the data file of the block to be backed up from the first consensus node, and uses the first slice length to compare the block data Perform slicing to obtain multiple slices of the block data by the first consensus node, and then calculate the check value of each slice, use the second slice length to slice the signature data, and obtain multiple slices of the signature data by the first consensus node , And calculate the check value of each slice, according to the check value of multiple slices of block data by the first consensus node, the position of multiple slices of block data in the data file, and the signature data of the first consensus node The check value of the multiple slices and the positions of the multiple slices of the signature data in the data file generate the slice result of the block to be backed up by the first consensus node.
- Block backup can effectively reduce the amount of data transmission. Compared with the way that the remote server obtains the full data of each consensus node and compares it, it can also reduce the pressure on the remote server and improve the efficiency of block backup.
- the remote server determines whether to back up the block to be backed up according to the slicing result of the block to be backed up by each consensus node, including: the remote server determines the block data according to the slicing result of the block data by each consensus node The number of consensus nodes with the same slicing result. If the number is greater than or equal to the preset threshold, the signature data set will be calculated according to the slicing results of the signature data of each consensus node, and the data file of the block to be backed up in the first consensus node The data file of the block is backed up with the signature data set, and if the number is determined to be less than the preset threshold, it is determined not to back up the block to be backed up.
- the first consensus node reports the full amount of signature data
- other consensus nodes report signature data different from the first consensus node.
- the signature data of all consensus nodes can be obtained while reducing the amount of data transmission, thereby ensuring Accuracy of data backup.
- by judging whether the slicing results of the block data by each consensus node are consistent it can be directly determined whether the block to be backed up has been tampered with. In this way, there is no need to perform block backup when it is determined that the block to be backed up has been tampered. Ensure the credibility and accuracy of backup results.
- the remote server obtains the slicing results of the blocks to be backed up stored by each consensus node pair in the blockchain system, including: the remote server sends a slicing rule to each consensus node, and the slicing rule is used for each consensus node pair
- the data files of the blocks to be backed up in each consensus node are sliced to obtain the slicing results of the blocks to be backed up by each consensus node.
- the slicing rule includes the first slice length and the second slice length. The second slice length is used to identify each consensus node. The length of the digital signature.
- the remote server sends the slicing rule to each consensus node, so that the slicing operation can be executed by each consensus node, thereby reducing the pressure on the remote server and improving the backup efficiency of the remote server.
- each slice of the signature data can correspond to a digital signature. In this way, the slice comparison process of the signature data can be facilitated and the comparison efficiency can be improved.
- the remote server determines whether to back up the block to be backed up according to the slicing result of the block to be backed up by each consensus node, including: the remote server determines the block data according to the slicing result of the block data by each consensus node If the number of consensus nodes with consistent slicing results is greater than or equal to the preset threshold, the first data request is sent to any consensus node, and the first data request is used to obtain block data of the consensus node.
- the remote server divides each consensus node into multiple consensus node sets according to the slicing result of the signature data by each consensus node, and sends a second data request to any consensus node in each consensus node set, each The consensus nodes in the consensus node set have public signature data, and the second data request is used to obtain the public signature data in the consensus node set.
- the remote server is based on the block data of the consensus node and the public signatures in the multiple consensus node sets. The data backs up the data file of the block.
- the remote server first determines whether the block data of each consensus node is consistent according to the results of each consensus node's slicing of the block data.
- the remote server does not need to execute The comparison process of the slicing results of the signature data can determine that no backup is required, thereby reducing unnecessary operation steps; accordingly, if they are consistent, it means that the block to be backed up can be backed up.
- the remote server obtains block data from any consensus node that has not been tampered with, and uses the least data transmission method to obtain the full amount of signature data from each consensus node, which can obtain the full amount of block data with the least amount of data transmission. And signature data, which can effectively reduce the pressure of network communication.
- the present invention provides a data processing device based on a blockchain system, the device including:
- the obtaining module is used to obtain the slicing results of the blocks to be backed up stored by each consensus node in the blockchain system.
- the slicing results of the blocks to be backed up by each consensus node are the data files of the blocks to be backed up in the consensus node
- the data file obtained by slicing includes block data and signature data; the slicing result includes the check values of multiple slices and the positions of the multiple slices in the data file; wherein, the block data is sliced using the first slice length; The signature data is sliced using the second slice length;
- the backup module is used to determine whether to back up the block to be backed up according to the slicing result of the block to be backed up by each consensus node.
- the obtaining module is specifically used to: obtain the slicing result of the block to be backed up by the first consensus node, send the slicing result of the block to be backed up by the first consensus node to other consensus nodes in the blockchain system, and receive other consensus The slicing result of the block to be backed up by other consensus nodes sent by the node.
- the slicing result of the block to be backed up by the first consensus node is used by other consensus nodes to determine the slicing result of the backup block to be treated by other consensus nodes, and multiple slices in the slicing result of the backup block to be treated by other consensus nodes are corresponding first
- the consensus node treats multiple slices in the slicing result of the backup block, and the slicing result of the backup block of other consensus nodes also includes block data or signature data corresponding to the slices that do not have a corresponding relationship.
- the obtaining module is specifically configured to: obtain the data file of the block to be backed up from the first consensus node, slice the block data using the first slice length, and obtain multiple slices of the block data by the first consensus node , And calculate the check value of each slice, use the second slice length to slice the signature data, get multiple slices of the signature data by the first consensus node, and calculate the check value of each slice, according to the first consensus node
- the check value of multiple slices of block data, the position of multiple slices of block data in the data file, the check value of multiple slices of signature data by the first consensus node, and the multiple slices of signature data are in The position in the data file generates the slicing result of the block to be backed up by the first consensus node.
- the backup module is specifically used to determine the number of consensus nodes that have the same slicing result of the block data according to the slicing result of each consensus node on the block data, and if the number is greater than or equal to a preset threshold, according to each consensus node
- the node performs statistics on the slicing result of the signature data to obtain the signature data set, and backs up the data file of the block according to the data file and the signature data set of the block to be backed up in the first consensus node. If the number is determined to be less than the preset threshold, it is determined Do not back up the block to be backed up.
- the obtaining module is specifically configured to: send a slicing rule to each consensus node.
- the slicing rule is used by each consensus node to slice the data file of the block to be backed up in each consensus node to obtain the slicing result of the block to be backed up by each consensus node.
- the slicing rule includes a first slice length and a second slice length. The second slice length is used to identify the length of the digital signature of each consensus node.
- the backup module is specifically configured to: first determine the number of consensus nodes that have consistent slicing results for the block data according to the slicing results of each consensus node on the block data, and if the number is greater than or equal to a preset threshold, A consensus node sends a first data request, and the first data request is used to obtain block data of the consensus node. Then, according to the slicing result of each consensus node on the signature data, each consensus node is divided into multiple consensus node sets, and a second data request is sent to any consensus node in each consensus node set. The consensus node of has public signature data, and the second data request is used to obtain the public signature data in the consensus node set. Finally, the data file of the block is backed up according to the block data of the consensus node and the public signature data in the set of multiple consensus nodes.
- the present invention provides a computing device, including at least one processor and at least one memory, wherein the memory stores a computer program, and when the program is executed by the processor, the processor executes The data processing method based on the blockchain system described in any of the above-mentioned first aspect.
- the present invention provides a computer-readable storage medium that stores a computer program executable by a computing device.
- the program runs on the computing device, the computing device executes any of the above-mentioned first aspects.
- the described data processing method based on the blockchain system.
- FIG. 1 is a schematic diagram of the architecture of a blockchain system to which an embodiment of the present invention is applicable;
- FIG. 2 is a schematic flowchart of a data processing method based on a blockchain system applicable to an embodiment of the present invention
- FIG. 3 is a schematic diagram of the interaction flow of a data processing method based on a blockchain system applicable to an embodiment of the present invention
- FIG. 4 is a schematic diagram of the interaction flow of another data processing method based on a blockchain system applicable to an embodiment of the present invention
- FIG. 5 is a schematic structural diagram of a data processing device based on a blockchain system provided by an embodiment of the present invention.
- Fig. 6 is a schematic structural diagram of a computing device provided by an embodiment of the present invention.
- the field of financial technology usually involves a variety of transactions, and accordingly a large amount of transaction data will be generated.
- the field of financial technology can also use blockchain technology to process transactions.
- bank transactions can include card sales transactions, deposit transactions, loan transactions, insurance transactions, and wealth management transactions.
- the daily transaction volume of banks can reach thousands or even tens of thousands.
- related transactions can be processed synchronously by setting up an alliance chain, or the courts, customers, etc. can also be connected to the chain at the same time to jointly maintain the security and stability of the alliance chain.
- the blockchain system can be a peer-to-peer (Peer To Peer, P2P) network composed of multiple nodes.
- P2P is an application layer protocol that runs on the transmission control protocol (TCP) protocol.
- TCP transmission control protocol
- the nodes in the blockchain system can be equal to each other. There is no central node in the system, so each node can Randomly connect other nodes.
- each node can be set up with a preset database, and each node jointly maintains the public ledger in the blockchain system through the preset database.
- the preset database inside the node can store the data in the blockchain system.
- Block data includes the block header and the block body.
- the block header can include the hash value of the previous block, the hash value of this block, the block height of this block, the timestamp, the hash value of the transaction, Information such as the hash value of the receipt and the hash value of the status data.
- the block body can include information such as transaction data, receipt, status data, and signature data.
- FIG. 1 is a schematic diagram of the architecture of a blockchain system to which an embodiment of the present invention is applicable.
- the blockchain system may include one or more consensus nodes, such as consensus node 101, consensus node 102, and consensus The node 103 and the consensus node 104. Any two consensus nodes in the blockchain system can be connected through wired communication or wirelessly, and the specifics are not limited.
- the consensus node in the blockchain system may have multiple functions, such as routing function, transaction function, blockchain function, and consensus function.
- any consensus node may also send the transaction reported by the client to other consensus nodes to realize the communication function between the consensus node and any other consensus node.
- any consensus node can be used to record all historical transactions or all historical blocks of the blockchain system.
- any consensus node can reach a consensus with other consensus nodes, thereby generating a new block based on a successful consensus transaction.
- routing function is a function that each consensus node in the blockchain system must have, and other functions can be set by those skilled in the art according to actual needs.
- the consensus node in the blockchain system may refer to a physical machine (server), or may also refer to a process or a series of processes running in the physical machine.
- the consensus node 101 may be a consensus server, or may also be a process running on the consensus server, which is not specifically limited.
- the system architecture may also include a remote server 110.
- the remote server 110 may refer to a client device, or may be other devices provided outside the blockchain system, such as a backup server.
- the remote server 110 may communicate with any consensus node in the blockchain system by accessing the network of the blockchain system, and the connection method may be a wired connection or a wireless connection. The details are not limited.
- FIG. 2 is a schematic flowchart of a data processing method provided by an embodiment of the present invention.
- the method is applicable to a remote server, such as the remote server 110 illustrated in FIG. 1.
- the method includes:
- Step 201 The remote server obtains the slicing results of the blocks to be backed up stored by each consensus node in the blockchain system.
- the slicing result of the block to be backed up by the consensus node refers to the data file of the block to be backed up stored by the consensus node, and the data file of the block to be backed up It can include block data and signature data.
- the block data can be sliced using the first slice length, and the signature data can be sliced using the second slice length. Therefore, the slice result of the block to be backed up by the consensus node may include the check values of multiple slices and the positions of the multiple slices in the data file.
- step 202 the remote server determines whether to back up the blocks to be backed up according to the slicing results of the blocks to be backed up stored by each consensus node.
- the remote server can first determine whether the block data of the block to be backed up in each consensus node is consistent according to the slicing results of each consensus node to the block to be backed up. If the block data is consistent with the consensus node If the number is greater than or equal to the preset number, it means that the blocks to be backed up in most consensus nodes of the blockchain system are the same, so the remote server can back up the blocks to be backed up. If the number of consensus nodes with consistent block data is less than the preset number, it means that most of the consensus nodes of the blockchain system have different blocks to be backed up, and most of the consensus nodes may all be tampered with. The remote server may not back up the block to be backed up.
- each consensus node and the remote server realize the backup of the block to be backed up by transmitting the slicing result of the block to be backed up, and the slicing result of the block to be backed up by each consensus node includes the checksum of the slice.
- the data processing method for backing up the block to be backed up in the slicing manner may have multiple implementation manners, and two possible implementation manners are mainly described below.
- Figure 3 is a schematic diagram of the interaction flow of a data processing method based on a blockchain system provided by an embodiment of the present invention.
- the method can be executed by a remote server, a first consensus node, and a second consensus node, as shown in Figure 1
- the remote server 110 and the consensus node 101 to the consensus node 104 are outputted.
- the method includes:
- Step 301 The remote server obtains the data file of the block to be backed up in the first consensus node from the first consensus node.
- the first consensus node may be any consensus node in the blockchain system, such as the consensus node 101, the consensus node 102, the consensus node 103, or the consensus node 104.
- the data file of the block to be backed up may include the block data and signature data of the block to be backed up.
- the block to be backed up may be one block or multiple blocks, so the area to be backed up
- the data file of the block may include the block data of each block and the signature data of each block in the block to be backed up.
- the block data of each block can include the transaction data, transaction receipt, status data, the hash value of the block, the hash value of the parent block, the hash value of the transaction data, and the transaction receipt.
- the hash value of the state data, the hash value of the state data, etc., the signature data of each block can include the digital signatures of other consensus nodes in the blockchain system collected by the consensus node when the block is agreed, or it can be Including the digital signature of the consensus node is not limited.
- the first consensus node can The block is stored in the database of the first consensus node, and the data file of the block can also be generated.
- the content included in the block data file can be set by those skilled in the art based on experience. For example, it can include only block data and signature data, or it can also include block data and signature data, as well as block height and block height. Any one or more of the length of the data, the check value of the data file, and the slice length of the signature data (that is, the second slice length) are not specifically limited.
- Table 1 is a schematic table of the format of a data file provided by an embodiment of the present invention.
- Table 1 A schematic diagram of the format of a data file
- Block data length Block height Block data Check value Signature data length Signature data Delimiter
- the data file can store the full amount of data in one or more blocks, and the full amount of data in each block can include parts 1 to 7:
- Part 1 occupies 8 bytes
- the code storage space is used to store the length of the block data in the full data of the block.
- the second part occupies a storage space of 32 bytes, which is used to store the block height of the block; the third part is used to store the block data of the block.
- the fourth part occupies a storage space of 32 bytes, used to store the check value of the data file, such as the hash value of the data file.
- the fifth part occupies the storage space of 8 bytes, which is used to store the length of the signature data in the full data of the block.
- the sixth part is used to store the signature data of the block.
- the seventh part occupies the storage space of 2 byte codes, which is used to store the separator, which is used to separate the full amount of data of multiple blocks in the data file.
- the separator can be set by those skilled in the art based on experience, for example, it can be any one or any combination of numbers, letters and characters.
- the remote server can obtain the data file of the block to be backed up from the first consensus node in various ways. The following describes several possible obtaining methods:
- the remote server After determining the block to be backed up, the remote server generates an obtaining instruction according to the block height of the block to be backed up or the identifier of the data file of the block to be backed up, and sends the obtaining instruction to the first consensus node.
- the first consensus node receives the acquisition instruction sent by the remote server, if the acquisition instruction includes the block height of the block to be backed up, it first determines the identity of the data file of the block to be backed up according to the block height of the block to be backed up , And then obtain the data file of the block to be backed up according to the identification of the data file of the block to be backed up.
- the obtaining instruction includes the identification of the data file of the block to be backed up
- the first consensus node generates a response message according to the data file of the block to be backed up, and sends the response message to the remote server.
- the identifier of the data file may refer to the file name of the data file, and the file name of the data file is a unique identifier, which can be set based on the block stored in the data file, for example, it can be set to the block height of the stored block
- the combination, the hash value combination of the stored block, etc. can also be composed of any one or any combination of numbers, letters, and characters, and is not limited.
- the setting rules can be synchronized to other consensus nodes in the blockchain system, so that all the consensus nodes in the blockchain system adopt the same setting rules Set the ID of the digital file.
- the first consensus node may also send the setting rules to the remote server, so that the remote server establishes the correspondence between the blocks in the first consensus node and the data file. In this way, after the remote server determines the block to be backed up, it can directly query the corresponding relationship between the block and the data file to determine the identity of the data file of the block to be backed up in the first consensus node.
- the first consensus node can directly report the data file where the block is located to the remote server, so that the remote server can check the block chain system in real time.
- the newly generated blocks are backed up.
- the first consensus node may report the newly generated block to the remote server according to a preset period, so that the remote server can periodically back up the newly generated block in the blockchain system.
- the first consensus node can be pre-deployed with data file transfer services and configured with file protocols related to data file transfer services, such as file transfer protocol (File Transfer Protocol, ftp), secure file transfer protocol (SSH File Transfer Protocol, sftp) ), (Hyper Text Transfer Protocol, http), Hypertext Transfer Protocol (Hyper Text Transfer Protocol over Secure Socket Layer, https) with security as the goal, etc.
- file transfer protocol File Transfer Protocol, ftp
- secure file transfer protocol SSH File Transfer Protocol, sftp
- HTTP Hypertext Transfer Protocol
- HTTP Hypertext Transfer Protocol
- HTTP Hypertext Transfer Protocol over Secure Socket Layer
- the remote server after the remote server determines the block to be backed up, it can generate a data request according to the block height of the block to be backed up or the identifier of the data file (such as data file 1.binlog) of the block to be backed up, and request the data Sent to the first consensus node.
- the first consensus node receives the data request sent by the remote server, it can first obtain the data file of the block to be backed up according to the block height of the block to be backed up in the data request or the identification of the data file of the block to be backed up.
- the data files of the block to be backed up are compressed and/or encrypted based on the file transfer service, and then the compressed and/or encrypted data files of the block to be backed up can be placed in the file address configured for the first consensus node on the remote server Or http access address.
- the remote server can obtain the compressed and/or encrypted data file of the block to be backed up through the file address or http access address configured for the first consensus node.
- the remote server obtains the compressed or encrypted data file of the block to be backed up
- the corresponding decompression and/or decryption method can be used to compress and/or decrypt the data file.
- the encrypted data file is decompressed and/or decrypted to obtain the data file of the block to be backed up.
- the first consensus node can also directly place the data file of the block to be consensus on
- the corresponding file address or http access address is not compressed and/or encrypted, or other processing can be performed on the data file of the consensus block first, and then placed in the corresponding file address or http access address, which is not limited.
- Step 302 The remote server slices the data file of the block to be backed up in the first consensus node to obtain the slicing result of the block to be backed up by the first consensus node.
- the remote server after the remote server obtains the data file of the block to be backed up from the first consensus node, it can parse the data file of the block to be backed up according to the separator, and separate each block from the data file of the block to be backed up.
- the data file of each block includes the first to the seventh part, the first part is the length of the block data, the second part is the block height, the third part is the block data, and the fourth part is the data file For the check value, the fifth part is the second slice length, the sixth part is the signature data, and the seventh part is the separator between the block and the next block.
- the remote server can use the first slice length to slice the block data (that is, the third part) in the data file to obtain multiple slices corresponding to the block data , And can use the preset check algorithm to calculate the check value of each slice.
- the remote server can use the second slice length to slice the signature data (that is, the sixth part) in the data file to obtain multiple slices corresponding to the signature data, and can use a preset verification algorithm to calculate each The check value of the slice.
- the preset verification algorithm can be set by those skilled in the art based on experience.
- it can be a hash algorithm or other algorithms.
- the preset verification algorithm and verification signature data of the slice corresponding to the verification block data can be set.
- the preset verification algorithms of the corresponding slices may be the same or different, which is not specifically limited.
- the signature data since the signature data includes the digital signatures of multiple consensus nodes, and the length of the digital signature of each consensus node is fixed to 128 byte codes, the second slice length can be set to an integer of 128 byte codes Therefore, each slice corresponding to the signature data corresponds to the digital signature of one or more consensus nodes.
- the first slice length can be set as Any fixed value. By analyzing the length of the transaction data, it is found that when the first slice length is set to a fixed value between 500 bytecode and 1200 bytecode, the slice result of the block data is better.
- the block data in the digital file of a certain block is 22000 bytecodes and the length of the signature data is 1280 bytecodes
- the first slice length is set to 1100 bytecodes
- the remote server 110 may first fill in the block data according to the first slice length, since the length of the block data is 22000 bytes Code, the length of the first slice is 1200 byte code, so you can fill in the setting character (such as 0) of 2000 byte code at the back of the block data, and then fill in the 24000 byte code after 0
- the block data of the block data is segmented to obtain block data slice 1, block data slice 2, block data slice 3,..., block data slice 20; or, it can directly divide the block data of 22000 bytecode
- the segmentation is performed to obtain block data slice 1, block data slice 2, block data slice 3, ..., block data slice 20, wherein the length of block data slice 20 is 1000 bytecodes.
- each slice of the signature data can correspond to a digital signature. In this way, the slice comparison process of the signature data can be facilitated and the comparison efficiency can be improved.
- the remote server can obtain the slicing result of the block to be backed up by the first consensus node.
- the slicing result of the block to be backed up by the first consensus node may be as shown in Table 2:
- the data file of the block to be backed up includes the data file of block 1 and the data file of block 2.
- the block data in the data file of block 1 is sliced to obtain 4 block data Slicing is to slice the signature data in the data file of block 1 to obtain 6 signature data slices.
- the block data in the data file of block 2 is sliced to obtain 8 block data slices, and the signature data in the data file of block 2 is sliced to obtain 3 signature data slices.
- step 301 and step 302 are only exemplary descriptions.
- the data file of the block to be backed up may also be sliced by the first consensus node to obtain the block to be backed up by the first consensus node.
- the remote server directly obtains the slicing result of the block to be backed up by the first consensus node from the first consensus node, which is not specifically limited.
- Step 303 The remote server sends the slicing result of the block to be backed up by the first consensus node to other consensus nodes in the blockchain system.
- the remote server may obtain the comparison slicing results of the blocks to be backed up by other consensus nodes in a serial manner, or obtain the comparison slicing results of the blocks to be backed up by other consensus nodes in a parallel manner.
- the remote server can only send the slicing result of the block to be backed up by the first consensus node to some other consensus node at a time, and receive the comparison slicing result of the block to be backed up by the other consensus node from the other consensus node.
- the slicing result of the block to be backed up by the first consensus node is sent to the next other consensus node, until the comparison slicing results of all other consensus nodes to be backed up block are obtained, and the obtaining operation ends.
- the remote server may also directly send the slicing result of the block to be backed up by the first consensus node to all other consensus nodes, and end the fetching operation after receiving the comparison slicing result of the block to be backed up by all other consensus nodes.
- step 304 for any other consensus node, the other consensus node determines the comparison slicing result of the block to be backed up by the other consensus node according to the slicing result of the block to be backed up by the first consensus node.
- the second consensus node is any other consensus node, and take the second consensus node as an example to describe the specific implementation process of obtaining the comparison slicing result of the backup block to be backed up by the second consensus node.
- the second consensus node after the second consensus node receives the slicing result of the block to be backed up by the first consensus node sent by the remote server, it can first obtain the second consensus node from the second consensus node according to the check value of the data file in the slicing result. The data file of the block to be agreed in the consensus node is then obtained from the data file of the block to be agreed in the second consensus node according to the block height in the slicing result of each block. In this way, the second consensus node can obtain the correspondence between the data file of each block in the second consensus node and the slicing result of each block in the first consensus node.
- the second consensus node can use the first slice length to split a block from the block data of the data file of the block each time data slice (slice a data block, such as 1), then the data block is calculated check value a 1 of the slice, and a plurality of first blocks from the common node corresponding to the block check value based on the data segment a 1 Determine whether there are slices with the same check value in the block data slice.
- data slices may be recorded block a at position 2, and the correspondence relationship between the position of the check value a 1 of the block data slice; accordingly, if a plurality of blocks of data slice in a first common node check value are and a second check value consensus node a 1 block different data slice, the block may be recorded position data slice a total amount of block 2 and block data of a data segment a 2.
- the second consensus node can slide the first slice length forward along the block data of the block, and use this as a new starting point, using the first
- the slice length cuts another block data slice from the block data, and performs the above-mentioned comparison process until the end of the block data of the block is compared.
- the second consensus node after the second consensus node has performed the above process on the block data, it can also compare the signature data in the same way, or it can perform a parallel comparison process on the block data and the signature data, and take out one each time. Or multiple block data slices and one or more signature data slices are compared in parallel, which is not limited; and the comparison process of the signature data can be performed with reference to the block data described above, and will not be repeated.
- the second consensus node can obtain multiple block data slices with corresponding relationships.
- the block data slices with corresponding relationships refer to the block data slice and the first block data slice.
- the check value of a certain block data slice in the consensus node is the same, and the second consensus node records the position of each block data slice that has a corresponding relationship, and the corresponding block data slice in the first consensus node
- the second consensus node can also obtain multiple block data slices that do not have a corresponding relationship
- the second consensus node records the full block data and location of each block data that does not have a corresponding relationship;
- the second consensus node can also obtain multiple signature data slices with corresponding relationships.
- the signature data slice with corresponding relationships means that the signature data slice has the same check value as a certain signature data slice in the first consensus node.
- the second consensus node records the position of each signature data slice that has a corresponding relationship, the check value and position of the signature data slice in the corresponding first consensus node, and the second consensus node can also obtain multiple signature data slices that do not have The corresponding signature data slices, and the second consensus node records the full block data and location of each signature data that does not have a corresponding relationship.
- the second consensus node is based on the location of each block data slice that has a corresponding relationship, the check value and location of the block data slice in the corresponding first consensus node, and does not have The full block data and location of each block data in the corresponding relationship, the location of each signature data slice with the corresponding relationship, the check value and location of the signature data slice in the corresponding first consensus node, and there is no correspondence
- the full block data and location of each signature data of the relationship can generate a comparison slicing result of each block by the second consensus node; in this way, the second consensus node treats multiple blocks in the backup block according to the second consensus node
- the comparison slicing result can generate a comparison slicing result of the block to be backed up by the second consensus node.
- Table 3 A schematic diagram of comparing the results of slicing
- the data file of the block to be backed up in the second consensus node includes the data file of block 1 and the data file of block 2.
- the second consensus node performs data processing on the block data in the data file of block 1. Slicing to obtain 4 block data slices.
- the first block data slice of block 1 by the second consensus node is the same as the first block data slice of block 1 by the first consensus node.
- the position of the first block data slice is the check value and position of the first consensus node on the first block data slice of block 1; correspondingly, the second consensus node on the second block of block 1
- the data slice does not have the same block data slice of the first consensus node, so compare the position of the second block data slice in the slice result to place the full data and position of the second block data slice in the second consensus node, etc. Wait.
- the block to be backed up is a block that has been successfully agreed by the consensus node in the blockchain system
- the block data of the block to be backed up in each consensus node is likely to be the same (unless the consensus is The node tampered with the block data of the backup block), and since each consensus node receives a preset number (such as 3/4 of all consensus nodes) of the digital signature of the consensus node, it can determine that the block consensus is successful, Therefore, the signature data of the block to be backed up in each consensus node is very likely to be different.
- the second consensus node can also only base on the position of each signature data slice that has a corresponding relationship, Corresponding to the verification value and location of the signature data slice in the first consensus node, and the full block data and location of each signature data that does not have a corresponding relationship, generate the comparison slicing result of each block by the second consensus node, Furthermore, according to the comparison slicing result of the multiple blocks in the backup block to be backed up by the second consensus node, the comparison slicing result of the backed up block to the second consensus node can be generated.
- Table 4 A schematic diagram of comparing the results of slices
- the data file of the block to be backed up in the second consensus node includes the data file of block 1 and the data file of block 2.
- the second consensus node performs data processing on the block data in the data file of block 1.
- the slicing result of the slicing is exactly the same as the slicing result of the first consensus node slicing the block data of block 1
- the slicing result of the second consensus node slicing the block data in the data file of block 2 is the same as the first consensus.
- the slicing results of the node slicing the block data of block 2 are exactly the same.
- the remote server 110 receives the slicing result of the block data of each block by the second consensus node, and finds that the check value of the data file is parsed after the height of block 1, then the second consensus can be determined
- the slicing result of the block data of each block by the node is the same as the slicing result of the block data of each block by the first consensus node.
- the slicing result of the block to be backed up by other consensus nodes is actually the comparison slicing result of the block to be backed up by other consensus nodes with respect to the first consensus node, that is, among the slicing results of the backup block to be treated by other consensus nodes Including the slice information of the first consensus node corresponding to the corresponding slice (that is, the check value and position of the slice), and the full amount of data corresponding to the slice without the corresponding relationship (that is, block data or signature data), so far
- the end server can directly determine the consistency of the block to be backed up in each consensus node based on the slicing result of the block to be backed up by the first consensus node and the comparison slicing result of the block to be backed up by other consensus nodes relative to the first consensus node; That is to say, in this way, other consensus nodes do not need to transmit the full amount of data of the same slice as the first consensus node, thereby reducing the amount of data transmission
- any other consensus node sends the comparison slicing result of the block to be backed up by the other consensus node to the remote server.
- Step 306 The remote server determines the number of consensus nodes with the same block data according to the slicing result of the block data by the first consensus node and the comparison slicing result of the block data by other consensus nodes.
- step 307 the remote server determines whether the number of consensus nodes with the same block data is greater than or equal to a preset threshold, if yes, execute step 308, if not, execute step 309.
- the remote server can first parse the slicing result of the block to be backed up by the other consensus node to obtain the slicing result of each block in the backup block to be backed up by the other consensus node, and then parse the The slicing result of each block by other consensus nodes obtains the slicing result of the block data of each block and the slicing result of the signature data of each block by the other consensus node.
- the remote server can first obtain the length of the block data of each block in each consensus node, and select consensus nodes with the same length from each consensus node based on the length of the block data.
- the number of consensus nodes is less than the preset threshold, indicating that the number of consensus nodes with the same block data is small, and the block to be backed up has been tampered with, so the remote server can directly determine not to back up the block to be backed up. If the number of consensus nodes with the same length is greater than or equal to the preset threshold, the remote server can compare the block data according to the block data of the block to be backed up in the first consensus node and each other consensus node with the same length.
- the full block data of the block to be backed up in each other consensus node with the same length is restored, and the consensus node with the same block data of the block to be backed up is determined from each consensus node with the same length after restoration.
- step 308 the remote server backs up the block to be backed up according to the data file of the block to be backed up in the first consensus node and the comparison slicing result of the block to be backed up by other consensus nodes.
- the remote server determines to back up the block to be backed up, it can select any consensus node from the consensus nodes with the same block data of the block to be backed up, and the data file of the block to be backed up in the consensus node
- the block data in is used as the target block data, and each consensus node can be calculated based on the full signature data in the data file of the block to be backed up in the first consensus node and the comparison slicing result of the signature data by each other consensus node
- Step 309 The remote server determines not to back up the block to be backed up.
- the remote server 110 can generate an alarm message, and can push the alarm message to the operation and maintenance personnel, for example, it can be pushed to the operation and maintenance personnel through Dingding, WeChat, email, etc. Maintenance personnel.
- the alarm message is used to indicate that the blocks to be backed up in each consensus node of the blockchain system are different.
- the first consensus node reports the full amount of data of the block to be consensus
- other consensus nodes report the full amount of data different from the first consensus node, so that the first consensus node and other consensus nodes to be backed up can be realized Blocks are backed up, which can greatly reduce the amount of data transmission.
- the remote server obtains the full data of each consensus node and compares it, it can also reduce the pressure on the remote server and improve the efficiency of block backup. .
- FIG. 4 is a schematic diagram of the interaction flow of another data processing method based on a blockchain system provided by an embodiment of the present invention.
- the method can be executed by a remote server and a consensus node, such as the remote server 110 shown in FIG. 1 And the consensus node 101 to the consensus node 104.
- the method includes:
- Step 401 The remote server sends the slicing rule to each consensus node in the blockchain system.
- the slicing rule may include the block height of each block in the block to be backed up or the identification of the data file of the block to be backed up.
- the data file of the block to be backed up in each consensus node includes block data and signature data, it also includes any of the length of the block data, the block height, the check value of the data file, and the separator. If one or more than one, the slicing rule may also include the first slice length and the second slice length. Correspondingly, if the data file of the block to be backed up in each consensus node includes the second slice length, for example, the data file is stored according to the first to seventh parts shown in Table 1, because the fifth part is the slice length of the signature data ( That is, the second slice length), so the slicing rule can also include only the first slice length.
- the second slice length may be an integer multiple of the digital signature length of the consensus node.
- each consensus node in the blockchain system slices its stored data file of the block to be backed up according to the slicing rule, and obtains the slicing result of the block to be backed up by each consensus node.
- each consensus node after each consensus node receives the slicing rule sent by the remote server, it can first obtain each block according to the block height of each block in the block to be backed up in the slicing rule or the identification of the data file of the block to be backed up.
- the data file of the block to be backed up in a consensus node is then sliced using the first slice length in the data file of each block in the block to be backed up to obtain multiple blocks of the block to be backed up by the consensus node Block data slices, and calculate the check value of each block data slice.
- each consensus node can also use the second slice length to slice the signature data in the data file of each block in the block to be backed up to obtain multiple signature data slices of the block to be backed up by the consensus node, and calculate The check value of each signature data slice.
- each consensus node is based on the check value of the multiple block data slices of the block to be backed up by the consensus node, the position of the multiple block data slices in the data file, and the multiple blocks of the consensus node to be backed up.
- the check value of the signature data slice and the positions of multiple signature data slices in the data file can generate the slice result of each consensus node to be backed up.
- the remote server sends the slicing rule to each consensus node, so that the slicing operation can be executed by each consensus node, thereby reducing the pressure on the remote server and improving the backup efficiency of the remote server.
- each consensus node sends the slicing result of the block to be backed up by each consensus node to the remote server.
- step 404 the remote server determines the number of consensus nodes with the same block data according to the result of each consensus node slicing the block data.
- step 405 the remote server determines whether the number of consensus nodes with the same block data is greater than or equal to a preset threshold, if yes, execute step 406, if not, execute step 409.
- the remote server After the remote server obtains the slicing results of the blocks to be backed up by each consensus node, it can first obtain the slicing results of the blocks to be backed up by each consensus node in the blocks to be backed up by each consensus node. The slicing result of the block data of each block, and then determine the number of consensus nodes with the same length of the block data in the slicing results of multiple blocks. If the number is less than the preset threshold, the block data is the same The number of consensus nodes is less than the preset threshold, so that step 409 can be performed.
- the block data slicing results of each block by multiple consensus nodes can be compared to any two consensus nodes. If the slice check value and position of the block data of the block are the same, it can be determined that the block data of the block to be backed up in the two consensus nodes is the same. In this way, by comparing the area of each block by any two consensus nodes The block data slicing result can determine each consensus node with the same block data of the block to be backed up, and count the number of each consensus node with the same block data of the block to be backed up.
- Step 406 The remote server sends a block data acquisition instruction to any consensus node with the same block data, and sends a signature data acquisition instruction to any consensus node with the same signature data.
- the remote server can select any consensus node from each consensus node with the same block data of the block to be backed up, and send a block data acquisition instruction to the consensus node.
- the block data acquisition instruction includes the block height of each block in the block to be backed up or the identification of the data file of the block to be backed up, and the block data acquisition instruction is used by the consensus node in the area to be backed up in the consensus node The block data in the block data file is sent to the remote server.
- the remote server can compare the slicing results of the signature data by any two consensus nodes, and count the consensus nodes that have the same signature data slice as a consensus node set, and each consensus node set includes at least the public signature data.
- Two consensus nodes can have the same consensus node.
- the verification value of signature data slice 1 of consensus node 1 is the same as the verification value of signature data slice 5 of consensus node 3
- the check value of 3 is the same as the check value of the signature data slice 2 of the consensus node 3.
- the check value of the signature data slice 1 of the consensus node 2, the check value of the signature data slice 3 of the consensus node 3 and the check value of the consensus node 4 If the verification value of the signature data slice 1 is the same, the consensus node 1 and the consensus node 3 constitute a consensus node set, and the consensus node 2, the consensus node 3, and the consensus node 4 constitute a consensus node set.
- the remote server can select any consensus node from the consensus node set, and send a signature data acquisition instruction to the consensus node.
- the signature data acquisition instruction includes the block height of each block in the block to be backed up or the identification of the data file of the block to be backed up, and also includes the signature data of the consensus node that is the same as other consensus nodes in the consensus node set The location of the slice, the signature data acquisition instruction is used by the consensus node to send the public signature data in the consensus node set to which the consensus node belongs to the remote server.
- Step 407 The consensus node that receives the block data acquisition instruction sends the block data of the block to be backed up in the consensus node to the remote server, and the consensus node that receives the signature data acquisition instruction compares the consensus node with the signature data.
- the signature data corresponding to the location is sent to the remote server.
- the consensus node receives a block data acquisition instruction, it can first obtain the block height of each block in the block to be backed up or to be backed up according to the block data acquisition instruction The identification of the data file of the block obtains the data file of the block to be backed up in the consensus node, and then sends the block data in the data file of the block to be backed up in the consensus node to the remote server. Or, if the consensus node receives the signature data acquisition instruction, it can first obtain the data file identification of the block to be backed up in the signature data acquisition instruction according to the block height of each block in the block to be backed up.
- Step 408 The remote server backs up the block to be backed up according to the received block data and the signature data of each consensus node.
- the remote server can construct a signature data set according to the received signature data sent by each consensus node, and can back up the block to be backed up according to the received block data of the block to be backed up and the signature data set. .
- the remote server can obtain the block data and signature data set of each block according to the block data and signature data set of the block to be backed up, and then for any block, from the block data
- the block header of the block is extracted from the block data, and the data except the block header in the block data of the block and the signature data set of the block can be used as the block body of the block;
- the block header of the block includes the height of the block, the hash value of the block, the hash value of the parent block, the hash value of the transaction data, the hash value of the transaction receipt, and the hash value of the state data.
- the block body includes transaction data, transaction receipt, status data, signature data, etc.
- the remote server can assemble the block header and block body of each block to obtain the block information of each block, and then store the block information of each block in the disk or memory of the remote server To complete the backup of the block to be backed up.
- Step 409 The remote server determines not to back up the block to be backed up.
- the remote server first determines whether the block data of each consensus node is consistent according to the result of each consensus node's slicing of the block data. If it is inconsistent, it means that the block to be backed up has been tampered with. In this way, the remote server does not need to Performing the comparison process of the slicing results of the signature data can determine that no backup is required, thereby reducing unnecessary operation steps. Correspondingly, if they are consistent, it means that the block to be backed up can be backed up.
- the remote server obtains block data from any consensus node that has not been tampered with, and uses the least data transmission method to obtain the full amount of signature data from each consensus node, which can obtain the full amount of block data with the least amount of data transmission.
- signature data which can effectively reduce the pressure of network communication.
- the remote server first obtains the slicing results of the blocks to be backed up stored by each consensus node in the blockchain system, and then determines whether to treat the backup block according to the slicing results of each consensus node to be backed up.
- the backup block is backed up.
- the slicing result of the block to be backed up by each consensus node is obtained by slicing the data file of the block to be backed up in the consensus node.
- the data file includes block data and signature data
- the slicing result includes the check value of multiple slices.
- the positions of multiple slices in the data file the block data is sliced using the first slice length
- the signature data is sliced using the second slice length.
- each consensus node and the remote server realize the backup of the block to be backed up by transmitting the slicing result of the block to be backed up, and the slicing result of the block to be backed up by each consensus node includes the checksum of the slice.
- the position of the slice in the data file It can be seen that the slice result of the block to be backed up has a smaller amount of data compared to the full amount of data in the block to be backed up. Therefore, this method can greatly reduce the amount of data transmission for network communication. Effectively reduce the cost of network communication, and can improve the efficiency of block backup.
- an embodiment of the present invention also provides a data processing device based on a blockchain system, and the specific content of the device can be implemented with reference to the foregoing method.
- Fig. 5 is a schematic structural diagram of a data processing device based on a blockchain system provided by an embodiment of the present invention, including:
- the obtaining module 501 is configured to obtain the slicing results of the blocks to be backed up stored by each consensus node in the blockchain system, and the slicing results of the blocks to be backed up by each consensus node are for the consensus node
- the data file of the block to be backed up is obtained by slicing, the data file includes block data and signature data; the slicing result includes the check value of multiple slices and the multiple slices are in the data file
- the block data is sliced using a first slice length; the signature data is sliced using a second slice length;
- the backup module 502 is configured to determine whether to back up the block to be backed up according to the slicing result of the block to be backed up by each consensus node.
- the obtaining module 501 is specifically configured to:
- the slicing result of the block to be backed up by the first consensus node is sent to other consensus nodes in the blockchain system; the slicing result of the block to be backed up by the first consensus node is used for all
- the other consensus node determines the slicing result of the block to be backed up by the other consensus node, and the plurality of slices in the slicing result of the block to be backed up by the other consensus node are corresponding to the first consensus node.
- the slicing result of the block to be backed up by the other consensus node further includes block data or signature data corresponding to the slices that have no corresponding relationship;
- the obtaining module 501 is specifically configured to:
- Slice the block data by using the first slice length obtain multiple slices of the block data by the first consensus node, and calculate a check value of each slice;
- Slice the signature data by using the second slice length obtain multiple slices of the signature data by the first consensus node, and calculate a check value of each slice;
- the check value of the multiple slices of the block data by the first consensus node According to the check value of the multiple slices of the block data by the first consensus node, the position of the multiple slices of the block data in the data file, and the signature of the first consensus node
- the check values of the multiple slices of data and the positions of the multiple slices of the signature data in the data file generate a slicing result of the block to be backed up by the first consensus node.
- the backup module 502 is specifically configured to:
- each consensus node slicing the block data determine the number of consensus nodes that have the same slicing result of the block data, and if the number is greater than or equal to a preset threshold, according to the consensus node pair
- the slicing result of the signature data is counted to obtain a signature data set, and the data file of the block is backed up according to the data file of the block to be backed up in the first consensus node and the signature data set; if it is determined If the number is less than the preset threshold, it is determined not to back up the block to be backed up.
- the obtaining module 501 is specifically configured to:
- the slicing rule is used by each consensus node to slice the data file of the block to be backed up in each consensus node to obtain the result of each consensus node slicing the block to be backed up,
- the slicing rule includes a first slice length and a second slice length, and the second slice length is used to identify the length of the digital signature of each consensus node.
- the backup module 502 is specifically configured to:
- each consensus node determines the number of consensus nodes that are consistent with the slicing result of the block data, and if the number is greater than or equal to a preset threshold, send the first consensus node to any consensus node A data request; the first data request is used to obtain block data of the consensus node;
- each consensus node is divided into a plurality of consensus node sets, and a second data request is sent to any consensus node in each consensus node set; each consensus node The consensus nodes in the set have public signature data, and the second data request is used to obtain the public signature data in the consensus node set;
- the data file of the block is backed up according to the block data of the consensus node and the public signature data in the set of multiple consensus nodes.
- the remote server first obtains the slicing results of the blocks to be backed up stored by each consensus node in the blockchain system, and then treats the backup block according to each consensus node According to the slice result, determine whether to back up the block to be backed up.
- the slicing result of the block to be backed up by each consensus node is obtained by slicing the data file of the block to be backed up in the consensus node.
- the data file includes block data and signature data
- the slicing result includes the check value of multiple slices.
- each consensus node and the remote server realize the backup of the block to be backed up by transmitting the slicing result of the block to be backed up, and the slicing result of the block to be backed up by each consensus node includes the checksum of the slice.
- the position of the slice in the data file It can be seen that the slice result of the block to be backed up has a smaller amount of data compared to the full amount of data in the block to be backed up. Therefore, this method can greatly reduce the amount of data transmission for network communication. Effectively reduce the cost of network communication, and can improve the efficiency of block backup.
- an embodiment of the present invention provides a computing device. As shown in FIG. 6, it includes at least one processor 601 and a memory 602 connected to the at least one processor.
- the embodiment of the present invention does not limit the processor 601.
- the processor 601 and the memory 602 are connected through a bus in FIG. 6 as an example.
- the bus can be divided into address bus, data bus, control bus and so on.
- the memory 602 stores instructions that can be executed by at least one processor 601. By executing the instructions stored in the memory 602, the at least one processor 601 can execute the aforementioned data processing method based on the blockchain system. The steps involved.
- the processor 601 is the control center of the computing device, which can use various interfaces and lines to connect to various parts of the computing device, and realize data by running or executing instructions stored in the memory 602 and calling data stored in the memory 602. deal with.
- the processor 601 may include one or more processing units, and the processor 601 may integrate an application processor and a modem processor.
- the application processor mainly processes the operating system, user interface, and application programs.
- the adjustment processor mainly handles issuing instructions. It can be understood that the foregoing modem processor may not be integrated into the processor 601.
- the processor 601 and the memory 602 may be implemented on the same chip, and in some embodiments, they may also be implemented on separate chips.
- the processor 601 may be a general-purpose processor, such as a central processing unit (CPU), a digital signal processor, an application specific integrated circuit (ASIC), a field programmable gate array or other programmable logic devices, discrete gates or transistors Logic devices and discrete hardware components can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of the present invention.
- the general-purpose processor may be a microprocessor or any conventional processor or the like.
- the steps of the method disclosed in the embodiment of data processing based on the blockchain system can be directly embodied as executed by a hardware processor, or executed by a combination of hardware and software modules in the processor.
- the memory 602 as a non-volatile computer-readable storage medium, can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules.
- the memory 602 may include at least one type of storage medium, for example, may include flash memory, hard disk, multimedia card, card-type memory, random access memory (Random Access Memory, RAM), static random access memory (Static Random Access Memory, SRAM), Programmable Read Only Memory (PROM), Read Only Memory (ROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), magnetic memory, disk , CD, etc.
- the memory 602 is any other medium that can be used to carry or store desired program codes in the form of instructions or data structures and that can be accessed by a computer, but is not limited thereto.
- the memory 602 in the embodiment of the present invention may also be a circuit or any other device capable of realizing a storage function for storing program instructions and/or data.
- embodiments of the present invention also provide a computer-readable storage medium that stores a computer program executable by a computing device, and when the program runs on the computing device, the computing device executes The data processing method based on the blockchain system described in any one of FIGS. 2 to 4 above.
- the embodiments of the present invention can be provided as methods or computer program products. Therefore, the present invention may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
- a computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
- These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
- the device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
- These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
- the instructions provide steps for implementing the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
区块数据长度 | 区块高度 | 区块数据 | 校验值 | 签名数据长度 | 签名数据 | 分隔符 |
Claims (14)
- 一种基于区块链系统的数据处理方法,其特征在于,所述方法包括:远端服务器获取所述区块链系统中的各共识节点对各自存储的待备份区块的切片结果,每个共识节点对所述待备份区块的切片结果为对所述共识节点中所述待备份区块的数据文件进行切片得到的,所述数据文件包括区块数据和签名数据;所述切片结果包括多个切片的校验值和所述多个切片在所述数据文件中的位置;其中,所述区块数据使用第一切片长度进行切片;所述签名数据使用第二切片长度进行切片;所述远端服务器根据各共识节点对所述待备份区块的切片结果,确定是否对所述待备份区块进行备份。
- 根据权利要求1所述的方法,其特征在于,所述远端服务器获取所述区块链系统中的各共识节点对各自存储的待备份区块的切片结果,包括:所述远端服务器获取第一共识节点对所述待备份区块的切片结果;所述远端服务器将所述第一共识节点对所述待备份区块的切片结果发送给所述区块链系统中的其它共识节点;所述第一共识节点对所述待备份区块的切片结果用于所述其它共识节点确定所述其它共识节点对所述待备份区块的切片结果,所述其它共识节点对所述待备份区块的切片结果中的多个切片为对应的第一共识节点对所述待备份区块的切片结果中的多个切片,所述其它共识节点对所述待备份区块的切片结果还包括不存在对应关系的切片对应的区块数据或签名数据;所述远端服务器接收所述其它共识节点发送的所述其它共识节点对所述待备份区块的切片结果。
- 根据权利要求2所述的方法,其特征在于,所述远端服务器获取第一共识节点对待备份区块的切片结果,包括:从第一共识节点获取所述待备份区块的数据文件;所述远端服务器使用所述第一切片长度对所述区块数据进行切片,得到所述第一共识节点对所述区块数据的多个切片,并计算每个切片的校验值;所述远端服务器使用所述第二切片长度对所述签名数据进行切片,得到所述第一共识节点对所述签名数据的多个切片,并计算每个切片的校验值;所述远端服务器根据所述第一共识节点对所述区块数据的多个切片的校验值、所述区块数据的多个切片在所述数据文件中的位置、所述第一共识节点对所述签名数据的多个切片的校验值和所述签名数据的多个切片在所述数据文件中的位置生成所述第一共识节点对所述待备份区块的切片结果。
- 根据权利要求3所述的方法,其特征在于,所述远端服务器根据各共识节点对所述待备份区块的切片结果,确定是否对所述待备份区块进行备份,包括:所述远端服务器根据各共识节点对所述区块数据的切片结果,确定对所述区块数据的切片结果一致的共识节点的数量,若所述数量大于或等于预设阈值,则根据所述各共识节点对所述签名数据的切片结果统计得到签名数据集,并根据所述第一共识节点中所述待备份区块的数据文件和所述签名数据集对所述区块的数据文件进行备份;若确定所述数量小于所述预设阈值,则确定不对所述待备份区块进行备份。
- 根据权利要求1所述的方法,其特征在于,所述远端服务器获取所述区块链系统中 的各共识节点对各自存储的待备份区块的切片结果,包括:所述远端服务器向各个共识节点发送切片规则;所述切片规则用于各个共识节点对各个共识节点中所述待备份区块的数据文件进行切片得到各个共识节点对所述待备份区块的切片结果,所述切片规则包括第一切片长度和第二切片长度,所述第二切片长度用于标识各共识节点的数字签名的长度。
- 根据权利要求5所述的方法,其特征在于,所述远端服务器根据各共识节点对所述待备份区块的切片结果,确定是否对所述待备份区块进行备份,包括:所述远端服务器根据各共识节点对所述区块数据的切片结果,确定对所述区块数据的切片结果一致的共识节点的数量,若所述数量大于或等于预设阈值,则向任一共识节点发送第一数据请求;所述第一数据请求用于获取所述共识节点的区块数据;所述远端服务器根据各共识节点对所述签名数据的切片结果,将各共识节点划分为多个共识节点集合,并向每个共识节点集合中的任一共识节点发送第二数据请求;所述每个共识节点集合中的共识节点存在公共签名数据,所述第二数据请求用于获取所述共识节点集合中的公共签名数据;所述远端服务器根据所述共识节点的区块数据和所述多个共识节点集合中的公共签名数据对所述区块的数据文件进行备份。
- 一种基于区块链系统的数据处理装置,其特征在于,所述装置包括:获取模块,用于获取所述区块链系统中的各共识节点对各自存储的待备份区块的切片结果,每个共识节点对所述待备份区块的切片结果为对所述共识节点中所述待备份区块的数据文件进行切片得到的,所述数据文件包括区块数据和签名数据;所述切片结果包括多个切片的校验值和所述多个切片在所述数据文件中的位置;其中,所述区块数据使用第一切片长度进行切片;所述签名数据使用第二切片长度进行切片;备份模块,用于根据各共识节点对所述待备份区块的切片结果,确定是否对所述待备份区块进行备份。
- 根据权利要求7所述的装置,其特征在于,所述获取模块具体用于:获取第一共识节点对所述待备份区块的切片结果;将所述第一共识节点对所述待备份区块的切片结果发送给所述区块链系统中的其它共识节点;所述第一共识节点对所述待备份区块的切片结果用于所述其它共识节点确定所述其它共识节点对所述待备份区块的切片结果,所述其它共识节点对所述待备份区块的切片结果中的多个切片为对应的第一共识节点对所述待备份区块的切片结果中的多个切片,所述其它共识节点对所述待备份区块的切片结果还包括不存在对应关系的切片对应的区块数据或签名数据;接收所述其它共识节点发送的所述其它共识节点对所述待备份区块的切片结果。
- 根据权利要求7所述的装置,其特征在于,所述获取模块具体用于:从第一共识节点获取所述待备份区块的数据文件;使用所述第一切片长度对所述区块数据进行切片,得到所述第一共识节点对所述区块数据的多个切片,并计算每个切片的校验值;使用所述第二切片长度对所述签名数据进行切片,得到所述第一共识节点对所述签名数据的多个切片,并计算每个切片的校验值;根据所述第一共识节点对所述区块数据的多个切片的校验值、所述区块数据的多个切 片在所述数据文件中的位置、所述第一共识节点对所述签名数据的多个切片的校验值和所述签名数据的多个切片在所述数据文件中的位置生成所述第一共识节点对所述待备份区块的切片结果。
- 根据权利要求9所述的装置,其特征在于,所述备份模块具体用于:根据各共识节点对所述区块数据的切片结果,确定对所述区块数据的切片结果一致的共识节点的数量,若所述数量大于或等于预设阈值,则根据所述各共识节点对所述签名数据的切片结果统计得到签名数据集,并根据所述第一共识节点中所述待备份区块的数据文件和所述签名数据集对所述区块的数据文件进行备份;若确定所述数量小于所述预设阈值,则确定不对所述待备份区块进行备份。
- 根据权利要求7所述的装置,其特征在于,所述获取模块具体用于:向各个共识节点发送切片规则;所述切片规则用于各个共识节点对各个共识节点中所述待备份区块的数据文件进行切片得到各个共识节点对所述待备份区块的切片结果,所述切片规则包括第一切片长度和第二切片长度,所述第二切片长度用于标识各共识节点的数字签名的长度。
- 根据权利要求11所述的装置,其特征在于,所述备份模块具体用于:根据各共识节点对所述区块数据的切片结果,确定对所述区块数据的切片结果一致的共识节点的数量,若所述数量大于或等于预设阈值,则向任一共识节点发送第一数据请求;所述第一数据请求用于获取所述共识节点的区块数据;根据各共识节点对所述签名数据的切片结果,将各共识节点划分为多个共识节点集合,并向每个共识节点集合中的任一共识节点发送第二数据请求;所述每个共识节点集合中的共识节点存在公共签名数据,所述第二数据请求用于获取所述共识节点集合中的公共签名数据;根据所述共识节点的区块数据和所述多个共识节点集合中的公共签名数据对所述区块的数据文件进行备份。
- 一种计算设备,其特征在于,包括至少一个处理器以及至少一个存储器,其中,所述存储器存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行权利要求1~6任一权利要求所述的方法。
- 一种计算机可读存储介质,其特征在于,其存储有可由计算设备执行的计算机程序,当所述程序在所述计算设备上运行时,使得所述计算设备执行权利要求1~6任一权利要求所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911039082.XA CN110855761B (zh) | 2019-10-29 | 2019-10-29 | 一种基于区块链系统的数据处理方法及装置 |
CN201911039082.X | 2019-10-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021082757A1 true WO2021082757A1 (zh) | 2021-05-06 |
Family
ID=69598378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2020/114568 WO2021082757A1 (zh) | 2019-10-29 | 2020-09-10 | 一种基于区块链系统的数据处理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110855761B (zh) |
WO (1) | WO2021082757A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113411191A (zh) * | 2021-08-20 | 2021-09-17 | 深圳前海微众银行股份有限公司 | 数据审计方法及装置 |
CN113628047A (zh) * | 2021-07-15 | 2021-11-09 | 金陵科技学院 | 一种交易事件的辅助处理系统 |
CN114449003A (zh) * | 2022-01-28 | 2022-05-06 | 浪潮云信息技术股份公司 | 一种联盟链数据处理方法及联盟链 |
CN114881760A (zh) * | 2022-04-29 | 2022-08-09 | 深圳市智策科技有限公司 | 基于区块链的数据管理方法及系统 |
CN114884977A (zh) * | 2022-05-09 | 2022-08-09 | 深圳嘉业产业发展有限公司 | 一种基于区块链的数据共享方法及系统 |
CN115544170A (zh) * | 2022-11-22 | 2022-12-30 | 中国信息通信研究院 | 基于区块链的数据托管方法和装置、电子设备、介质 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110855761B (zh) * | 2019-10-29 | 2021-09-21 | 深圳前海微众银行股份有限公司 | 一种基于区块链系统的数据处理方法及装置 |
CN114418574A (zh) * | 2020-01-17 | 2022-04-29 | 厦门潭宏信息科技有限公司 | 一种共识和资源传输方法、设备及存储介质 |
CN111768181B (zh) * | 2020-07-01 | 2024-10-15 | 李东 | 一种结合大数据和信用区块链的数据清算系统 |
CN112596957A (zh) * | 2020-12-29 | 2021-04-02 | 东软集团股份有限公司 | 用于区块链的方法、装置、存储介质及电子设备 |
CN113742296B (zh) * | 2021-09-09 | 2024-04-30 | 诺优信息技术(上海)有限公司 | 一种路测数据切片处理的方法、装置及电子设备 |
CN114385761B (zh) * | 2022-03-23 | 2022-07-12 | 支付宝(杭州)信息技术有限公司 | 一种基于共识系统的共识数据存储、获取方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108063774A (zh) * | 2018-02-13 | 2018-05-22 | 苏州汉辰数字科技有限公司 | 一种量子流媒体云盘系统及服务架构 |
CN108647361A (zh) * | 2018-05-21 | 2018-10-12 | 中国工商银行股份有限公司 | 一种基于区块链的数据存储方法、装置及系统 |
WO2019106186A1 (fr) * | 2017-11-30 | 2019-06-06 | Worldline | Plate-forme de tracabilite securisee de donnees |
CN109885256A (zh) * | 2019-01-23 | 2019-06-14 | 平安科技(深圳)有限公司 | 一种基于数据分片的数据存储方法、设备及介质 |
CN110855761A (zh) * | 2019-10-29 | 2020-02-28 | 深圳前海微众银行股份有限公司 | 一种基于区块链系统的数据处理方法及装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102064906A (zh) * | 2009-11-18 | 2011-05-18 | 突触计算机系统(上海)有限公司 | 一种对数据块进行校验的方法和装置 |
WO2018028777A1 (en) * | 2016-08-10 | 2018-02-15 | Rwe International Se | Peer-to-peer communication system and peer-to-peer processing apparatus |
US10554412B2 (en) * | 2018-03-06 | 2020-02-04 | Robust Analytics, Inc. | Method and network to implement decentralized validation and authentication mechanisms to prevent ADS-B cyber-attacks |
CN109284625A (zh) * | 2018-09-03 | 2019-01-29 | 佛山科学技术学院 | 一种基于区块链的数据安全访问方法及装置 |
CN109271283A (zh) * | 2018-09-06 | 2019-01-25 | 北京云测信息技术有限公司 | 一种基于区块链的数据备份方法 |
CN109271115B (zh) * | 2018-10-11 | 2021-07-30 | 重庆晨鲸科技有限公司 | 存储共享方法、装置、区块链分布式网络拓扑 |
CN109508968B (zh) * | 2018-10-25 | 2020-12-18 | 常州唯康信息科技有限公司 | 区块链系统以及其控制方法 |
-
2019
- 2019-10-29 CN CN201911039082.XA patent/CN110855761B/zh active Active
-
2020
- 2020-09-10 WO PCT/CN2020/114568 patent/WO2021082757A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019106186A1 (fr) * | 2017-11-30 | 2019-06-06 | Worldline | Plate-forme de tracabilite securisee de donnees |
CN108063774A (zh) * | 2018-02-13 | 2018-05-22 | 苏州汉辰数字科技有限公司 | 一种量子流媒体云盘系统及服务架构 |
CN108647361A (zh) * | 2018-05-21 | 2018-10-12 | 中国工商银行股份有限公司 | 一种基于区块链的数据存储方法、装置及系统 |
CN109885256A (zh) * | 2019-01-23 | 2019-06-14 | 平安科技(深圳)有限公司 | 一种基于数据分片的数据存储方法、设备及介质 |
CN110855761A (zh) * | 2019-10-29 | 2020-02-28 | 深圳前海微众银行股份有限公司 | 一种基于区块链系统的数据处理方法及装置 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113628047A (zh) * | 2021-07-15 | 2021-11-09 | 金陵科技学院 | 一种交易事件的辅助处理系统 |
CN113628047B (zh) * | 2021-07-15 | 2024-02-02 | 金陵科技学院 | 一种交易事件的辅助处理系统 |
CN113411191A (zh) * | 2021-08-20 | 2021-09-17 | 深圳前海微众银行股份有限公司 | 数据审计方法及装置 |
CN114449003A (zh) * | 2022-01-28 | 2022-05-06 | 浪潮云信息技术股份公司 | 一种联盟链数据处理方法及联盟链 |
CN114881760A (zh) * | 2022-04-29 | 2022-08-09 | 深圳市智策科技有限公司 | 基于区块链的数据管理方法及系统 |
CN114884977A (zh) * | 2022-05-09 | 2022-08-09 | 深圳嘉业产业发展有限公司 | 一种基于区块链的数据共享方法及系统 |
CN115544170A (zh) * | 2022-11-22 | 2022-12-30 | 中国信息通信研究院 | 基于区块链的数据托管方法和装置、电子设备、介质 |
CN115544170B (zh) * | 2022-11-22 | 2023-03-14 | 中国信息通信研究院 | 基于区块链的数据托管方法和装置、电子设备、介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110855761A (zh) | 2020-02-28 |
CN110855761B (zh) | 2021-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021082757A1 (zh) | 一种基于区块链系统的数据处理方法及装置 | |
US10552640B2 (en) | In-situ data verification for the cloud | |
US10346439B2 (en) | Entity resolution from documents | |
CN111090645B (zh) | 基于云存储的数据传输方法、装置及计算机设备 | |
WO2020259003A1 (zh) | 一种链路追踪方法及装置 | |
US11055291B2 (en) | Generating data structures for storing database metadata | |
CN107194794B (zh) | 一种企业纳税申报管理系统及方法 | |
WO2019196304A1 (zh) | 电子装置、征信反馈报文的解析方法及存储介质 | |
US11664974B2 (en) | Summary chains in distributed systems | |
CN111641563B (zh) | 基于分布式场景的流量自适应方法与系统 | |
CN111580965A (zh) | 数据请求的处理方法及系统 | |
WO2021174882A1 (zh) | 数据分片校验方法、装置、计算机设备及可读存储介质 | |
WO2020000486A1 (zh) | 数据处理方法及装置 | |
CN111898036A (zh) | 一种行为数据收集处理系统及方法 | |
WO2021082936A1 (zh) | 一种网页访客数量统计方法及装置 | |
CN117708108A (zh) | 一种客户多维信息校验方法及装置 | |
WO2019100684A1 (zh) | 电子装置、征信数据处理的方法、系统及存储介质 | |
CN113590703A (zh) | Es数据导入方法、装置、电子设备及可读存储介质 | |
CN111866106A (zh) | 共识方法、装置、电子设备和可读存储介质 | |
WO2023019841A1 (zh) | 数据审计方法及装置 | |
CN115834260A (zh) | 网络安全防御系统、方法及装置 | |
CN113779075B (zh) | 基于差分隐私的数据查询方法、装置、设备及存储介质 | |
CN111158994B (zh) | 一种压测性能测试方法及装置 | |
CN115510012A (zh) | 业务数据处理方法、装置、计算机设备和存储介质 | |
US20180246666A1 (en) | Methods for performing data deduplication on data blocks at granularity level and devices thereof |
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: 20880702 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: 20880702 Country of ref document: EP Kind code of ref document: A1 |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 21.09.2022) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20880702 Country of ref document: EP Kind code of ref document: A1 |