Blockchain-based file storage and reading method, device, equipment and medium
By dividing files into information blocks and binding them with particle product numbers, combined with a digital fingerprint mechanism, the problem of data loss and tampering in blockchain big data storage is solved, and secure storage and retrieval on the blockchain are achieved.
Patent Information
- Application Number
- CN202110852374.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-07-27
- Publication Date
- 2025-11-21
- Estimated Expiration
- 2041-07-27
AI Technical Summary
Traditional blockchain technology is difficult to apply to the storage of large amounts of data in modern enterprise software, and there is a risk of data loss and tampering.
The file is divided into multiple information blocks and bound to different particle numbers. The file is distributed and stored in the blockchain operating system through a digital fingerprint mechanism, and the particle number mechanism ensures data integrity and immutability.
It enables secure storage and reliable retrieval of large data files on the blockchain, avoiding data loss and tampering, and is suitable for the needs of modern enterprise software.
Smart Images

Figure CN115687506B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of blockchains, and in particular to a file storage and reading method and device based on a blockchain, equipment and a medium. BACKGROUND
[0002] The blockchain technology has the advantage of information being unalterable. However, a block on the blockchain can only store limited information, usually 1M to 4M, and the maximum is 16M. A block that is too large will cause a delay in the transmission and storage of the block message on the blockchain network node, and thus cause data loss. However, modern enterprise-level software usually adopts a centralized system architecture, and has the characteristics of complexity, high performance and large data volume.
[0003] Traditional blockchain networks support simple and small data volume decentralized applications, and the Ethernet is a representative thereof. It is difficult for traditional blockchains to be applied to modern enterprise-level software. How to effectively store large data volume while having the unalterable feature unique to the blockchain has become an obstacle for the blockchain operating system to serve modern enterprise-level software on a large scale. SUMMARY
[0004] Therefore, it is necessary to provide a file storage and reading method, device, equipment and medium based on a blockchain to solve the above technical problems.
[0005] A file storage method based on a blockchain, the method comprising:
[0006] cutting a file into at least two information blocks and binding a different particle product number on each of the information blocks;
[0007] distributing the information blocks with the bound particle product numbers to each file server of the blockchain operating system;
[0008] generating a digital fingerprint according to a file attribute, an information block attribute and a unique characteristic value of all the particle product numbers;
[0009] writing the digital fingerprint into a blockchain and sending a file writing completion instruction to the file server, so that the file server cancels the particle product numbers on all the information blocks corresponding to the file.
[0010] In one embodiment, the method further comprises:
[0011] sending a particle product number application request to a trusted node, the particle product number application request being used to instruct the trusted node to verify the particle product number application request by a pairing node of the particle product number application request sender and send a particle product number to the particle product number application request sender after verification; the particle product number sent by the trusted node being generated when the trusted node assembles a block.
[0012] In one embodiment, the digital fingerprint is written into a blockchain, and an instruction of file writing completion is sent to the file server, so that the file server cancels the particle product numbers on all the information blocks corresponding to the file, including:
[0013] The digital fingerprint and the hash values of all the particle product numbers are written into a blockchain, and an instruction of file writing completion is sent to the file server, so that the file server cancels the particle product numbers on all the information blocks corresponding to the file and sends a particle product number quantity increase request to the trusted node; the particle product number quantity increase request carries a particle product number quantity to be increased consistent with the quantity of the canceled particle product numbers, so that the trusted node generates new particle product numbers according to the particle product number quantity increase request.
[0014] In one embodiment, the digital fingerprint is generated according to the file attribute, the information block attribute, and the unique characteristic value of all the particle product numbers, including:
[0015] According to the arrangement order of the information blocks, a target Merkle tree root value is generated based on the hash values of the particle product numbers on all the information blocks;
[0016] The digital fingerprint is generated according to the file attribute, the information block attribute, and the target Merkle tree root value.
[0017] In one embodiment, before the information blocks bound with the particle product numbers are distributed and stored on each file server of the blockchain operating system, the method further includes:
[0018] encrypting the information blocks;
[0019] Before the digital fingerprint is written into a blockchain, the method further includes:
[0020] encrypting the digital fingerprint.
[0021] A file reading method based on a blockchain, the method including:
[0022] obtaining a digital fingerprint on a blockchain;
[0023] when the account and the account of the digital fingerprint are the same, reading the digital fingerprint;
[0024] processing the digital fingerprint to obtain a file attribute, an information block attribute, and a particle number characteristic value;
[0025] reading all the information blocks according to the file attribute, the information block attribute, and the particle number characteristic value and synthesizing a target file.
[0026] In one embodiment, the information blocks are connected through adjacent information block attributes; and the reading all the information blocks according to the file attribute, the information block attribute, and the particle number characteristic value and synthesizing a target file comprises:
[0027] finding all the information blocks according to the information block attribute and the adjacent information block attribute of the information block;
[0028] reading the information block when the account and the owner account of the particle number on the information block are the same; and each of the information blocks is bound with a different particle number;
[0029] judging whether the owner accounts of the particle numbers on all the information blocks are the same after reading the last information block;
[0030] synthesizing all the information blocks into the target file when the owner accounts of the particle numbers on all the information blocks are the same.
[0031] In one embodiment, the particle number characteristic value is a target Merkle tree root value calculated by an information block writing party based on hash values of the particle numbers on all the information blocks according to the arrangement order of the information blocks; and before the synthesizing all the information blocks into the target file, the method further comprises:
[0032] calculating a to-be-judged Merkle tree root value based on the hash values of the particle numbers on all the information blocks according to the arrangement order of the information blocks;
[0033] judging whether the to-be-judged Merkle tree root value is the same as the particle number characteristic value.
[0034] In one embodiment, before the processing the digital fingerprint to obtain a file attribute, an information block attribute, and a particle number characteristic value, the method further comprises:
[0035] decrypting the digital fingerprint;
[0036] Before the synthesizing all the information blocks into the target file, the method further comprises:
[0037] decrypting all the information blocks.
[0038] A file storage device based on a block chain, the device comprising:
[0039] an information block initialization module, configured to split a file into at least two information blocks and bind a different particle product to each of the information blocks;
[0040] an information block storage module, configured to store the information blocks with the bound particle products in different file servers of the blockchain operating system;
[0041] a digital fingerprint generation module, configured to generate a digital fingerprint according to file attributes, information block attributes, and unique characteristic values of all the particle products;
[0042] a digital fingerprint writing module, configured to write the digital fingerprint into a blockchain and send a file writing completion instruction to the file servers, so that the file servers cancel the particle products on all the information blocks corresponding to the file.
[0043] A file reading device based on a blockchain, the device comprising:
[0044] a digital fingerprint acquisition module, configured to acquire a digital fingerprint on a blockchain;
[0045] a digital fingerprint reading module, configured to read the digital fingerprint;
[0046] a digital fingerprint processing module, configured to process the digital fingerprint to obtain file attributes, information block attributes, and particle product characteristic values;
[0047] a target file synthesis module, configured to read all the information blocks according to the file attributes, the information block attributes, and the particle product characteristic values and synthesize a target file.
[0048] A computer device comprising a memory and a processor, the memory storing a computer program, and the processor implementing the steps of the method described in any of the above embodiments when executing the computer program.
[0049] A computer readable storage medium storing a computer program, the computer program implementing the steps of the method described in any of the above embodiments when executed by a processor.
[0050] The above file storage and reading method, device, equipment and medium based on a blockchain, by means of an information block mechanism, split a large data file into different information blocks, and by means of a particle product mechanism and a digital fingerprint mechanism, ensure that the large data file stored on a blockchain will not be lost or tampered with. BRIEF DESCRIPTION OF DRAWINGS
[0051] Figure 1 An application environment diagram of the file storage and reading method based on a blockchain;
[0052] Figure 2 Flowchart of a blockchain-based file storage method in an embodiment;
[0053] Figure 3 Lifetime diagram of a particle product in an embodiment;
[0054] Figure 4 Data structure diagram of a particle product in an embodiment;
[0055] Figure 5 Data structure diagram of an information block in an embodiment;
[0056] Figure 6 Principle diagram of a big data file distributed storage in an embodiment;
[0057] Figure 7 Diagram of a digital fingerprint in an embodiment;
[0058] Figure 8 Diagram of a particle product application in an embodiment;
[0059] Figure 9 Flowchart of a blockchain-based file reading method in an embodiment;
[0060] Figure 10 Flowchart of a target file synthesized in an information block chain structure in an embodiment;
[0061] Figure 11 Structure block diagram of a blockchain-based file storage device in an embodiment;
[0062] Figure 12 Structure block diagram of a blockchain-based file reading device in an embodiment;
[0063] Figure 13 Internal structure diagram of a computer device in an embodiment. DETAILED DESCRIPTION
[0064] In order to make the purpose, technical scheme and advantages of the present application clearer, the present application will be further described in detail below with reference to the drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and do not limit the present application.
[0065] The blockchain-based file storage and reading method provided by the present application can be applied to, for example, Figure 1The application environment shown. Among them, the write / read party 102 is connected with the pairing node 104, the trusted node 106 and the file server 108 through the network. Among them, the write / read party 102 is a node in the blockchain operating system, which can be but is not limited to various personal computers, notebook computers, smart phones, tablet computers and portable wearable devices, the pairing node 104 is the most adjacent and stable node selected by the write / read party 102 in the blockchain operating system in the process of communicating with adjacent active nodes, and the write / read party 102 preferentially receives and sends messages from the pairing node 104. The trusted node 106 is a node in the blockchain operating system that is screened by some rules to participate in consensus calculation to generate particle products. The file server 108 is a server for storing data files in the blockchain operating system.
[0066] In one embodiment, as shown in Figure 2 , a blockchain-based file storage method is provided, which is applied to the write party in Figure 1 for example, including the following steps:
[0067] Step S202, the file is divided into at least two information blocks and a different particle product is bound on each of the information blocks.
[0068] Among them, the particle product is the particle (PA) generated by the trusted node in the blockchain operating system when assembling the block to identify the occurrence of the assembly event, and the newly generated particle (PA) is rated as a usable product (CA). The initial particle is rated as a single particle of 1. Each particle product has a unique identifier, such as a hash identifier, and the hash value (unique identifier) of the particle product cannot be reused after the particle product is cancelled. The PACA (particle product) mechanism is one of the significant differences between the blockchain operating system and the traditional UNIX / LINUX, Windows and Macintosh operating systems. The core of the PACA mechanism is that the PACA (particle product) is a digital entity applied to record the occurrence of an event, and the node on the blockchain operating system needs to consume the PACA (particle product) when storing the file in the blockchain. The life cycle of the PACA is shown in Figure 3 , including four stages of generation, distribution, use and cancellation, which are combined to realize the storage of data files.
[0069] Figure 4The PACAHead is a particle accumulator head, which is composed of the following information: HashID is the hash value of the particle accumulator, which is also the unique identifier of the particle accumulator. Lifecycle is the current life cycle state of the particle accumulator. Create Timestamp indicates the time point at which the particle accumulator is produced, AllocatedTimeStamp indicates the time point at which the particle accumulator is allocated, LatestUsed TimeStamp indicates the time point at which the particle accumulator is last used, Terminated TimeStamp indicates the time point at which the particle accumulator is terminated, and Checksum indicates the checksum of the particle accumulator. The PACAInput (PIN) is a particle accumulator input record, Dxid is a transaction hash value, SeqNo is a sequence number, From indicates the information of the input party in the particle accumulator transfer or use process, To indicates the information of the output party in the particle accumulator transfer or use process, and EventID is an event identifier. The PACAOutput (POUT) is a particle accumulator output record.
[0070] In this embodiment, the trusted nodes in the blockchain complete the information block writing to the block every N minutes (such as 2 minutes), which produces M (such as 30) PACAs (particle accumulators), which is the particle accumulator generation. The generated particle accumulators can be used for subsequent file storage. The use of particle accumulators can include file storage and information exchange, and in this embodiment, the use of particle accumulators in file storage. For the use scenario of information exchange, the message communication between ordinary nodes A1 and A2 uses particle accumulators, and the particle accumulator state is updated to the "used" state. These message communications will not be recorded on the blockchain, so the particle accumulators will not be terminated. If the message is from A1 to A2, there will be one particle accumulator accompanying the message from A1 to A2, and the input record of the particle accumulator records the transfer of the particle accumulator from A1 to A2. The particle accumulator is repeatedly used.
[0071] The information block is the structure of the file block of the data file after the information header and the chain pointer are added. The data file in this application is preferably a big data file. After the big data file is split into multiple file blocks, the information header and the chain pointer are added to the file block to obtain the information block, and each information block can be bound with a particle accumulator. Figure 5In the illustrated information block structure, the information block includes a chain pointer, a bound PACA, a header, and a body. The first Hash is the hash value of the previous information block, and the current Hash is the hash value of the current information block. The PACA is the PACA bound to the information block, the PACAHash is the hash value of the PACA, and the PACAStatus is the status of the PACA. The header includes attribute information of the file content: the URI is the uniform resource identifier of the previous information block, the Size is the size of the information block, the Checksum is the checksum of the information block, used to detect whether the information block remains complete and accurate during storage and reading, the Timestamp is the generation timestamp of the information block, and the Content is the file content of the information block.
[0072] Specifically, the writing party splits the data file according to a preset rule. The rule for splitting can be according to a preset size, or a size calculated by the blockchain operating system according to the attributes of the blockchain, such as being consistent with the upper limit value 16M of the size of the block on the blockchain. The block on the blockchain can only store a limited amount of information, usually 1M to 4M, and the maximum usage is 16M. A block that is too large will cause delays in the transmission and storage of block messages on the blockchain network nodes. After the writing party splits the large data file, the PACA with a unique hash value is bound to the information block, so that different information blocks bind different PACAs, and different PACAs have different hash values as identifiers. The PACA records the hash value of the PACA, the current state (in use state, logout state), the generation time, the assigned time (the time of binding with the information block), the last used time (the time of transferring from the previous node to the current node), the logout time, and the input and output records (from the previous node to the current node).
[0073] In step S204, the information block bound with the PACA is distributed and stored on each file server of the blockchain operating system.
[0074] Specifically, the writing party can store the information block bound with the PACA on different file servers of the blockchain operating system through multi-threading and multi-link. In this way, the large data file is dispersedly stored in the blockchain operating system. Moreover, the large data file is split into small information blocks here, avoiding large data volume, so that the writing of the large data file can be realized through a decentralized application program supporting simplicity and small data volume.
[0075] Figure 6is a schematic diagram of a big data file distributed storage principle. Wherein CurrentHash refers to the hash value of the current information block, PreHash refers to the hash value of the previous information block; PACA refers to the particle number bound with the information block; URI is the uniform resource identifier information written on the information block, which can be the uniform resource identifier of the next information block; Checksum is the check of the information block; Size is the size of each information block, which is 10M in Figure 6 and also has 128M large information block; Content is the file content of the information block; segment represents the paragraph number of the file content. In Figure 6 , the information block with paragraph number 1 is stored on the file server 6, the information block with paragraph number 2 is stored on the file server 8, the information block with paragraph number 3 is stored on the file server 10, and the information block with paragraph number 4 is stored on the file server 21.
[0076] Step S206, generating a digital fingerprint according to the file attribute, the information block attribute and the unique characteristic value of all particle numbers.
[0077] Wherein, the file attribute includes but is not limited to: the hash value of the file, the size of the file, the storage timestamp of the file and the check sum of the file (in the field of data processing and data communication, the check sum refers to the cumulative of transmission bits, when the transmission is completed, the receiver can judge whether all data is received according to the value, in this example, it can be used to verify whether the final synthesized target file is complete and accurate), that is, the attribute of the complete data file. The information block attribute includes but is not limited to the uniform resource identifier of the information block, that is, the attribute of each information block obtained by splitting the data file. The unique characteristic value of the particle number refers to the result value obtained by calculating the hash value of all particle numbers according to the pre-set rule, and any modification of the hash value of the particle number will cause the result value to be inconsistent with the original result value. The digital fingerprint is the only digital identifier that can find a big data file in the block chain operating system, which is for the complete data file.
[0078] Specifically, the writing party inputs the file attribute, the information block attribute, and the unique characteristic value of the particle product number as parameters into a digital fingerprint generation function, and the digital fingerprint generation function outputs a digital fingerprint that can uniquely locate and identify the data file. For example, the writing party outputs the hash value of the file, the size of the file, the storage timestamp of the file, the checksum of the file, the uniform resource identifier of the information block, and the unique characteristic value of the particle product number to the digital fingerprint generation function, and the digital fingerprint generation function outputs a digital fingerprint that can uniquely locate and identify the large data file. In this way, the data fingerprint can execute the complete data file, and because the information block attribute is used when the data fingerprint is generated, the corresponding information block can be uniquely determined according to the data fingerprint when reading, so that the information blocks distributed and stored in the blockchain system are all read out to generate a complete data file.
[0079] In the digital fingerprint generation function as shown in Figure 7 In the digital fingerprint generation function as shown in
[0080] Step S208, write the digital fingerprint into the blockchain, and send a file write completion instruction to the file server, so that the file server cancels the particle product number on all information blocks corresponding to the file.
[0081] Specifically, the writing party assembles the digital fingerprint into a block and sends a write completion instruction to all file servers storing the information blocks to indicate that the digital fingerprint has been written into the blockchain. After receiving the write completion instruction, the file server cancels the particle product number bound to the information block, and the hash value of the particle product number cannot be allocated or used again after the particle product number is canceled. Each information block is bound to a particle product number, and a hacker needs to bind a particle product number when forging an information block. However, the hash value of the particle product number cannot be used again after the particle product number is stored, so the information block cannot be reconstructed or tampered with.
[0082] In the blockchain-based file storage method in the above embodiment, the writing party divides the large data file into different information blocks through the information block mechanism, and at the same time, combines the particle product number mechanism and the digital fingerprint mechanism to ensure that the data of the large data file will not be lost or tampered with when stored on the blockchain.
[0083] In one embodiment, the blockchain-based file storage method further comprises the following steps: sending a particle product number application request to a trusted node, the particle product number application request being used to instruct the trusted node to send a counterpart node of the particle product number application request sender to verify the particle product number application request, and sending a particle product number to the particle product number application request sender after verification.
[0084] Specifically, the present embodiment specifically introduces the allocation process of the particle product number, wherein the trusted nodes in the blockchain operating system complete block assembly every fixed period. Each assembly can generate a particle (PA) to identify the time point of the assembly event. The newly generated particle is rated as a usable product number (CA). The newly generated particle product number (PACA) is concentrated on the trusted nodes, which form a virtual particle product number pool. The write party in the blockchain operating system can randomly select or select a preset number of trusted nodes according to certain conditions, wherein the preset number is optimized based on experience and test results, which can take into account efficiency while preventing system overload. The write party sends a particle product number application request to the trusted node, and the request carries the application number of the particle product number and the counterpart node list of the write party. The trusted node can randomly select or select an authentication node according to certain conditions from the counterpart node list and send a query message to the authentication node. The authentication node receiving the query message sends a confirmation message to the trusted node to confirm the qualification of the write party. After receiving the confirmation message, the trusted node sends the particle product number equal to the application number to the write party.
[0085] In Figure 8 In the example shown, node A randomly selects two trusted nodes B1 and B2, and applies (Request) for 50 particle product numbers (PACA) from B1 and B2 respectively. Node A needs to send its counterpart node list (APair) to B1 and B2. Trusted nodes B1 and B2 randomly select two authentication nodes C1 and C2 from the counterpart node list of node A, and send a query message to authentication nodes C1 and C2. Authentication nodes C1 and C2 receiving the query message reply a confirmation message to trusted nodes B1 and B2 respectively. After receiving the confirmation message respectively, trusted nodes B1 and B2 send 25 particle product numbers (PACA) to node A respectively.
[0086] In the above embodiment, the write party obtains a particle product number with a unique hash value by applying for a particle product number from the trusted node that uniformly produces particle product numbers, which makes necessary preparations for subsequent binding of particle product numbers on information blocks to ensure that information blocks cannot be copied and tampered with. At the same time, the trusted node sends the particle product number to the write party only after verification, which ensures that the particle product number will not be over-issued and misused.
[0087] In one embodiment, the digital fingerprint is written into the blockchain, and a file write completion instruction is sent to the file server to make the file server cancel the particle product number on all information blocks corresponding to the file, including: writing the digital fingerprint and the hash value of all particle product numbers into the blockchain, and sending a file write completion instruction to the file server to make the file server cancel the particle product number on all information blocks corresponding to the file and send a particle product number quantity increase request to the trusted node; the particle product number quantity increase request carries the particle product number quantity to be increased consistent with the quantity of the canceled particle product number, so that the trusted node generates a new particle product number according to the particle product number quantity increase request.
[0088] Specifically, the embodiment mainly introduces the cancellation process of the particle product number. Storing a large data file usually consumes a certain number of particle product numbers. The writing party writes the hash values of the consumed particle product numbers into the blockchain at the same time of writing the digital fingerprint, and stores these hash values in the form of a checkpoint list on the blockchain. The blockchain operating system synchronizes the checkpoint list to all nodes. At the same time, after canceling all particle product numbers, the file server notifies the trusted node of the quantity of the canceled particle product numbers in the form of a particle product number quantity increase request, so that the current remaining particle quantity increases by the quantity of the canceled particle product number.
[0089] The particle product number is generated by the trusted node of the blockchain operating system when assembling a block. The life cycle of the particle product number includes generation, distribution, use, cancellation and reset. Each particle product number has a unique hash value identifier and cannot be repeated or modified. When a particle product number is canceled, the total number of mineable particle product numbers is updated by one; when a particle product number is generated, the total number of mineable particle product numbers is updated by one.
[0090] In the embodiment, the blockchain operating system updates the checkpoint list to the whole network, so that the canceled particle product number cannot be reused. When hackers launch an attack, since the particle product number cannot be reused after being canceled, the hackers cannot fork the blockchain or reconstruct the blockchain, thereby ensuring the high stability of the blockchain operating system. In addition, a new particle product number can be generated when each particle product number is canceled, which ensures the stability of the particle product number quantity and the stability of the blockchain operating system.
[0091] In one embodiment, the digital fingerprint is generated according to the file attribute, the information block attribute and the unique characteristic value of all particle product numbers, including: generating a target Merkle tree root value based on the hash values of the particle product numbers on all information blocks according to the arrangement order of the information blocks; generating a digital fingerprint according to the file attribute, the information block attribute and the target Merkle tree root value.
[0092] The Merkle tree is also called a trusted tree or Merkle tree. It is a binary tree data structure. The bottom layer is a leaf, and the content is the hash value of the corresponding data. Then, two adjacent leaves are combined to perform a hash calculation to obtain the content of the upper layer node. This process is repeated to obtain the hash value of the top layer node, i.e., the root hash value. When the data of any node changes, a completely different root hash value is obtained. Therefore, the Merkle tree can be used to verify the consistency of the particle product.
[0093] Specifically, the information blocks constituting the big data file are arranged in the natural order when being divided by the writing party, and the particle product numbers bound to the information blocks are arranged in the same order. Then, the writing party constructs a Merkle tree with the hash values of all the particle product numbers and obtains the root value of the Merkle tree. Finally, the writing party inputs the file attribute, the information block attribute, and the root value of the Merkle tree into a digital fingerprint generation function to generate a digital fingerprint.
[0094] In this embodiment, the particle product number characteristic value in the digital fingerprint is the root value of the Merkle tree. According to the characteristics of the Merkle tree, it can be determined whether the particle product number is consistent with the original one. In combination with the fact that the original hash value cannot be reused after the particle product number is cancelled, the consistency of the big data can be verified.
[0095] In one embodiment, before the information blocks bound with the particle product numbers are distributed and stored on the file servers of the blockchain operating system, the information blocks are encrypted. Before the digital fingerprint is written into the blockchain, the digital fingerprint is encrypted.
[0096] Specifically, the writing party obtains a private key, which is an encryption algorithm used for encryption and decryption and is initialized and created when the writing party computer installs the blockchain operating system, and is saved offline. The writing party creates a file key with the private key, and the file key is stored in the safe program of the writing party computer in an encrypted manner by the writing party using the private key. The writing party encrypts the information header and information body of the information block through the file key. The writing party encrypts the digital fingerprint through the file key.
[0097] In this embodiment, the private key is saved offline by the writing party computer and is loaded into the running memory of the blockchain operating system before the writing party computer is online, and therefore is invisible. The writing party encrypts the digital fingerprint and the information block through the private key and the file key, thereby improving the security of the information block storage.
[0098] In one embodiment, as shown in Figure 9 , a file reading method based on a blockchain is provided. Taking the reading party in Figure 1 as an example, the method includes the following steps:
[0099] In step S902, the digital fingerprint on the blockchain is obtained.
[0100] In particular, the specific definition of the data fingerprint can be referred to the above, the reading party finds the block storing the digital fingerprint from the block chain maintained by the block chain operating system according to the remaining write record, which uniquely identifies and identifies the large data file previously stored in the file server.
[0101] Step S904, when the account and the account of the digital fingerprint are the same, the digital fingerprint is read.
[0102] In particular, when the account of the reading party and the account of the digital fingerprint writer are the same, the digital fingerprint can be read by the reading party. This means that the current reading party is the writing party that wrote this digital fingerprint at that time.
[0103] Step S906, processing the digital fingerprint to obtain file attributes, information block attributes and particle product number characteristic values;
[0104] In particular, the reading party obtains the file attributes, information block attributes and particle product number characteristic values stored in the digital fingerprint according to the inverse generating function of the digital fingerprint. Among them, the file attributes include but are not limited to the hash value of the target file, the size of the target file, the storage timestamp of the target file, the checksum of the target file. The information block attribute includes but is not limited to the uniform resource identifier on the information block, and the reading party can find all the information blocks from different file servers through the uniform resource identifier.
[0105] Step S908, reading all information blocks according to the file attributes, information block attributes and particle product number characteristic values and synthesizing the target file.
[0106] In particular, the reading party finds all the information blocks from different file servers through the uniform resource identifier, then calculates the characteristic value according to the hash value of the particle product number on the information block, compares the calculated particle product number characteristic value with the extracted particle product number characteristic value in the digital fingerprint, judges whether they are consistent, and the two are consistent. The information blocks read by the reading party are the information blocks stored before. The reading party synthesizes these information blocks into a target file, and then checks whether the file attributes of the target file are the same as the file attributes extracted in the digital fingerprint. The file attributes are consistent, which means that the synthesized target file is the large data file previously stored in the file server by the writing party. For example, whether the hash value, size, storage timestamp and checksum of the synthesized file are consistent with the information in the digital fingerprint.
[0107] In this embodiment, the reading party finds all information blocks stored on the file server by reading the attribute information of the information blocks in the digital fingerprint, combines the particle product characteristic value that can verify the consistency of the information blocks to synthesize the target file, and further confirms the consistency of the target file through the file attribute in the digital fingerprint. Thus, it is ensured that the file obtained by the reading party is the file written before, thereby proving the reliability of the file reading method based on the blockchain.
[0108] In one embodiment, as shown in Figure 10 , the information blocks are connected through the attribute of the adjacent information block; all information blocks are read and the target file is synthesized according to the file attribute, the information block attribute and the particle product characteristic value, including:
[0109] In step S1002, all information blocks are found according to the information block attribute and the attribute of the adjacent information block.
[0110] The information block attribute refers to the uniform resource identifier of the last information block, and the attribute of the adjacent information block refers to the uniform resource identifier of the previous information block recorded on each information block, and the hash value of the previous information block is recorded on each information block in addition to the current hash value of the information block. Similarly, the information block attribute can also be the uniform resource identifier of the first information block, and the corresponding attribute of the adjacent information block refers to the uniform resource identifier of the next information block recorded on each information block, and the hash value of the next information block is recorded on each information block in addition to the current hash value of the information block.
[0111] Specifically, the reading party finds the last information block according to the uniform resource identifier of the last information block, and finds the previous information block according to the uniform resource identifier of the previous information block recorded on the last information block. The reading party finally finds all information blocks according to the chain structure of the uniform resource identifier. The reading party can judge the consistency of the information blocks according to the hash value chain structure between the adjacent information blocks during or after finding all information blocks. Similarly, when the information block attribute is the uniform resource identifier of the first information block, the reading party can find and verify all information blocks according to the chain structure of the uniform resource identifier between the information blocks.
[0112] In step S1004, the information block is read when the account and the owner account of the particle product of the information block are the same; a different particle product is bound on each information block.
[0113] The owner account of the particle product can be derived from the input and output records of the particle product in Figure 4 . The input and output records record all processes of the particle product circulating between different nodes.
[0114] Specifically, the reader finds the owner account of the particle number before the particle number is cancelled through the input and output records on the particle number, and compares the account of the particle number owner with the account of the reader itself. When the two accounts are the same, the reader can read the information on the information block. Here, the reader ensures the security of data reading through the above-mentioned manner, avoiding hackers from reading the information on the information block by impersonating the reader.
[0115] In step S1006, after reading the last information block, it is judged whether the owner accounts of the particle numbers on all the information blocks are the same. When the owner accounts of the particle numbers on all the information blocks are the same, all the information blocks are synthesized into the target file.
[0116] Specifically, after successfully reading the information of the last information block, the reader finds the accounts of all the information blocks again according to the input and output records of the particle numbers on the information blocks, and compares whether the accounts of all the information blocks are consistent, so as to ensure that all the information blocks come from the same data file. After the reader verifies that all the information blocks come from the same data file, the reader copies all the information blocks to a temporary directory and synthesizes all the information blocks into the target file.
[0117] In this embodiment, the reader finds and verifies all the information blocks through the uniform resource identifier chain structure and the hash value chain structure on the information blocks, and judges whether the account of the reader is consistent with the owner of the particle number on the information block and whether different information blocks come from the same file, so that the reader can ensure the consistency of data file writing and reading.
[0118] In one embodiment, the particle number characteristic value is a target Merkle tree root value calculated based on the hash values of the particle numbers on all the information blocks according to the arrangement order of the information blocks by the information block writer. Before synthesizing all the information blocks into the target file, it further includes: calculating a to-be-judged Merkle tree root value based on the hash values of the particle numbers on all the information blocks according to the arrangement order of the information blocks; and judging whether the to-be-judged Merkle tree root value is the same as the particle number characteristic value.
[0119] Specifically, the reader arranges the information blocks constituting the big data file in the natural order when being divided by the writer, that is, in the order of the chain structure on the information blocks. At this time, the particle numbers bound on the information blocks are also arranged in the same order. The reader constructs a Merkle tree with the hash values of all the particle numbers and obtains the root value of the Merkle tree. Because the particle number characteristic value extracted from the digital fingerprint by the reader is also the Merkle tree root value obtained by calculating the hash values of the particle numbers on the information blocks before the information blocks are stored, and the particle number cannot be reused after being cancelled, the reader can judge whether the read information block is the original information block by comparing whether the reconstructed Merkle tree root value is the same as the particle number characteristic value in the digital fingerprint.
[0120] In this embodiment, the reading party can determine whether the final target file is the original data file by combining the characteristics of the particle product number and judging whether the root values of the Markle tree are the same, thereby ensuring the consistency of data file writing and reading.
[0121] In one embodiment, before processing the digital fingerprint and obtaining the file attribute, the information block attribute and the particle product number characteristic value, it further includes: decrypting the digital fingerprint; before combining all the information blocks into a target file, it further includes: decrypting all the information blocks.
[0122] Specifically, the reading party needs to decrypt the digital fingerprint by the private key, and then needs to create a corresponding file key by the private key to decrypt the information header and information body on the information block.
[0123] In this embodiment, the reading party decrypts the digital fingerprint and the information block by the private key and the file key, which cooperates with the encryption process during writing, thereby improving the security of the information block during writing and reading.
[0124] In order to enable those skilled in the art to fully understand the file storage and reading method based on the blockchain in the present application, a specific embodiment is given below.
[0125] In this embodiment, node A in the blockchain operating system needs to store a large data file in the file storage space of the blockchain operating system, and the file storage space is composed of various file servers under the system.
[0126] Specifically, node A divides the large data file into 10 information blocks. Each information block needs to be bound with a particle product number to be stored on the file server. Therefore, node A applies for 10 particle product numbers from the particle product number pool. In the blockchain operating system, M (such as 30) PACAs (particle product numbers) are generated when the trusted nodes complete the information block writing to the block at a fixed period. These trusted nodes participating in consensus calculation form a virtual particle product number pool.
[0127] Specifically, node A can randomly select two trusted nodes B1 and B2 in the particle product number pool, and apply for 5 particle product numbers from B1 and B2, a total of 10 particle product numbers. Node A needs to send its pairing node list to B1 and B2. Trusted nodes B1 and B2 randomly select two authentication nodes C1 and C2 from the pairing node list, respectively, and send a query message to authentication nodes C1 and C2. The authentication nodes C1 and C2 receiving the query message reply the confirmation message to B1 and B2, respectively. After receiving the confirmation message, trusted nodes B1 and B2 send 5 particle product numbers to node A, respectively, so that node A obtains a total of 10 particle product numbers, and each particle product number is in the allocated state.
[0128] Specifically, node A binds a particle product on each information block after receiving 10 particle products, and the particle products are different from each other and have unique hash values. Except for the first information block, each of the following information blocks records the uniform resource identifier of the previous information block, the hash value of the previous information block, and the hash value of itself. Then node A calculates the Merkle tree root value of all particle product hash values in the arrangement order of the information blocks and records it. Node A stores the information blocks on the file server of the blockchain operating system through a multi-threaded and multi-link transmission mode. Node A encrypts the information blocks with a file key before sending the information blocks to the file server, and the file key is created by a private key.
[0129] Specifically, node A inputs the hash value of the large data file, the file size, the timestamp of the file storage, the file check, the Merkle tree root value, and the uniform resource identifier of the last information block into the digital fingerprint generation function to generate a digital fingerprint that can uniquely identify and identify the large data file. Node A encrypts the digital fingerprint with a private key. When node A assembles the encrypted digital fingerprint into a block and writes it to the blockchain, the file server cancels the particle product on the information block. After the particle product is canceled, the hash value on the particle product cannot be reused, and the file server then notifies the trusted node that the number of remaining particle products has increased by 10.
[0130] Specifically, when node A needs to read the large data file, node A finds the block where the previously stored digital fingerprint is located, and when the account of node A and the account of the writer of the digital fingerprint are the same, node A extracts the digital fingerprint. Node A decrypts the digital fingerprint with a private key to obtain the hash value, size, storage timestamp, file checksum, Merkle tree root value of all particle products on the information blocks, and uniform resource identifier of the last information block from the digital fingerprint.
[0131] Specifically, node A finds the last information block through the uniform resource identifier of the last information block, and then reversely finds all information blocks according to the uniform resource identifier address of the previous information block recorded on the information block. Because the information block records the hash value of the previous information block in addition to the hash value of itself, node A ensures that all found information blocks can be connected and spliced together by verifying the hash values on the information blocks.
[0132] Specifically, node A reads the hash values of the particle products on the information blocks, constructs a Merkle tree with all the hash values of the particle products in the arrangement order of the information blocks, and obtains the root value of the Merkle tree. Node A compares the root value of the Merkle tree obtained by reconstructing the hash values of the particle products with the root value of the Merkle tree on the digital fingerprint. According to the characteristics of the Merkle tree, if they are consistent, it means that the extracted information blocks are the original stored information blocks.
[0133] Specifically, the node A checks whether the owner accounts of the particle multiplicity on all information blocks are consistent. If consistent, it indicates that all information blocks belong to one big data.
[0134] Specifically, the node A copies all read information blocks to a temporary directory and splices all information blocks into the final target file.
[0135] In this embodiment, the node A cuts the big data file into different information blocks through the information block mechanism, and guarantees the characteristics that the data will not be lost and tampered with when the big data file is stored on the blockchain through the combination of the particle multiplicity mechanism and the digital fingerprint mechanism.
[0136] It should be understood that, although Figure 2 , Figure 9 and Figure 10 the flowcharts show the steps in sequence according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified herein, the execution of these steps is not strictly limited in sequence, and these steps can be executed in other orders. Moreover, Figure 2 , Figure 9 and Figure 10 at least some of the steps can include multiple steps or multiple stages, which are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily sequential, but can be alternately or alternately executed with other steps or steps or stages in other steps.
[0137] In one embodiment, as shown in Figure 11 , a blockchain-based file storage device is provided, comprising: an information block initialization module 100, an information block storage module 200, a digital fingerprint generation module 300, and a digital fingerprint writing module 400, wherein:
[0138] The information block initialization module 100 is used to cut a file into at least two information blocks and bind a different particle multiplicity on each of the information blocks.
[0139] The information block storage module 200 is used to distribute and store the information blocks with the bound particle multiplicity on each file server of the blockchain operating system.
[0140] The digital fingerprint generation module 300 is used to generate a digital fingerprint according to the file attributes, information block attributes, and unique characteristic values of all the particle multiplicities.
[0141] The digital fingerprint writing module 400 is configured to write the digital fingerprint into the blockchain and send a file writing completion instruction to the file server, so that the file server cancels the particle product number on all the information blocks corresponding to the file.
[0142] In one embodiment, the blockchain-based file storage device further comprises a particle product number application module configured to send a particle product number application request to a trusted node, the particle product number application request being configured to instruct the trusted node to verify the particle product number application request through a pairing node of the particle product number application request sender and send a particle product number to the particle product number application request sender after verification.
[0143] In one embodiment, the blockchain-based file storage device further comprises a checkpoint writing module configured to write the hash value of the cancelled particle product number into the blockchain in the form of a checkpoint list, so that the blockchain operating system updates the blockchain added with the checkpoint list to all nodes of the blockchain operating system. The writing completion notification module is configured to write the digital fingerprint and the hash value of all the particle product numbers into the blockchain and send a file writing completion instruction to the file server, so that the file server cancels the particle product number on all the information blocks corresponding to the file and sends a particle product number quantity increase request to the trusted node. The particle product number quantity increase request carries a particle product number quantity to be increased consistent with the quantity of the cancelled particle product number, so that the trusted node generates a new particle product number according to the particle product number quantity increase request.
[0144] In one embodiment, the blockchain-based file storage device further comprises a Merkle tree generation module configured to generate a target Merkle tree root value based on the hash values of the particle product numbers on all the information blocks in the arrangement order of the information blocks. The Merkle tree root value writing module is configured to generate a digital fingerprint according to the file attribute, the information block attribute, and the target Merkle tree root value.
[0145] In one embodiment, the blockchain-based file storage device further comprises an information block encryption module configured to encrypt the information block and a digital fingerprint encryption module configured to encrypt the digital fingerprint.
[0146] In one embodiment, as shown in Figure 12 a blockchain-based file reading device is provided, comprising a digital fingerprint acquisition module 100, a digital fingerprint reading module 200, a digital fingerprint processing module 300, and a target file synthesis module 400, wherein:
[0147] The digital fingerprint acquisition module 100 is configured to acquire the digital fingerprint on the blockchain.
[0148] The digital fingerprint reading module 200 is configured to read the digital fingerprint.
[0149] The digital fingerprint processing module 300 is configured to process the digital fingerprint to obtain file attributes, information block attributes, and particle product characteristic values.
[0150] The target file synthesizing module 400 is configured to read all information blocks and synthesize a target file according to the file attributes, the information block attributes, and the particle product characteristic values.
[0151] In an embodiment, the blockchain-based file reading apparatus further comprises: an information block locating module configured to locate all information blocks according to the initial information block attribute and the adjacent information block attribute of the information block; an information block reading module configured to read the information block when the account and the owner account of the particle product on the information block are the same; a different particle product is bound to each information block; an account judging module configured to judge whether the owner accounts of the particle products on all information blocks are the same after reading the last information block; and a synthesizing module configured to synthesize all information blocks into a target file when the owner accounts of the particle products on all information blocks are the same.
[0152] In an embodiment, the blockchain-based file reading apparatus further comprises: a Merkle tree reconstructing module configured to calculate a to-be-judged Merkle tree root value based on the hash values of the particle products on all information blocks according to the arrangement order of the information blocks; and a root value judging module configured to judge whether the to-be-judged Merkle tree root value is the same as the particle product characteristic value.
[0153] In an embodiment, the blockchain-based file reading apparatus further comprises: a digital fingerprint decrypting module configured to decrypt the digital fingerprint; and an information block decrypting module configured to decrypt all information blocks.
[0154] The specific limitations of the blockchain-based file storage and reading apparatus can be found in the limitations of the blockchain-based file storage and reading method described above, which will not be repeated here. The various modules in the blockchain-based file storage and reading apparatus described above can be realized by software, hardware, and combinations thereof, in whole or in part. The various modules described above can be embedded in or independent of the processor in the computer device in hardware form, or stored in the memory in the computer device in software form, so as to be called and executed by the processor to perform the operations corresponding to the various modules.
[0155] In an embodiment, a computer device is provided, which can be a server, and the internal structure diagram thereof can be as shown in Figure 13As shown in the figure. The computer device includes a processor, a memory and a network interface connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium, an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operating system and the computer program in the non-volatile storage medium to run. The database of the computer device is used to store blockchain-related data. The network interface of the computer device is used to communicate with the external terminal through the network connection. The computer program is executed by the processor to implement a blockchain-based file storage and reading method.
[0156] Those skilled in the art can understand that, Figure 13 The structure shown in the figure is only a block diagram of part of the structure related to the scheme of the present application, and does not constitute a limitation on the computer device to which the scheme of the present application is applied. The specific computer device can include more or fewer components than those shown in the figure, or combine certain components, or have a different component arrangement.
[0157] In one embodiment, a computer device is provided, including a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the steps in the above method embodiments.
[0158] In one embodiment, a computer readable storage medium is provided, which stores a computer program, and the computer program is executed by a processor to implement the steps in the above method embodiments.
[0159] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiments can be completed by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer readable storage medium. When the computer program is executed, it can include the processes of the above-mentioned embodiments. Any reference to memory, storage, database or other medium used in the embodiments provided by the present application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory or optical memory, etc. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration but not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc.
[0160] Any combination of the technical features in the above embodiments can be made. For the sake of brevity, the foregoing description has not described all possible combinations of the technical features in the above embodiments, however, as long as the combination of the technical features does not contradict, it should be considered within the scope of the present disclosure.
[0161] The above embodiments only express several implementation manners of the present application, and the description is relatively specific and detailed, but it should not be understood as a limitation on the patent scope of the present application. It should be pointed out that, for ordinary skilled persons in the art, several modifications and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the patent protection scope of the present application should be subject to the appended claims.
Claims
1. A blockchain-based file storage method, characterized by, The method comprises: cutting a file into at least two information blocks and binding a different particle product to each of the information blocks; storing the information blocks with the bound particle products on respective file servers of the blockchain operating system; each of the particle products has a unique identifier, and the unique identifier of the particle product cannot be reused after the particle product is cancelled; generating a digital fingerprint according to file attributes, information block attributes, and unique characteristic values of all the particle products; writing the digital fingerprint into a blockchain and sending a file writing completion instruction to the file servers to cause the file servers to cancel the particle products on all the information blocks corresponding to the file; The method further comprises: sending a particle product application request to a trusted node, the particle product application request being used to instruct the trusted node to verify the particle product application request through a pairing node of the particle product application request sender and send a particle product to the particle product application request sender after verification; the particle product sent by the trusted node is generated when the trusted node assembles a block; The writing of the digital fingerprint into the blockchain and the sending of the file writing completion instruction to the file servers to cause the file servers to cancel the particle products on all the information blocks corresponding to the file, comprises: writing the digital fingerprint and hash values of all the particle products into the blockchain and sending a file writing completion instruction to the file servers to cause the file servers to cancel the particle products on all the information blocks corresponding to the file and send a particle product quantity increase request to the trusted node; the particle product quantity increase request carries a particle product quantity to be increased consistent with the quantity of the cancelled particle products, to cause the trusted node to generate new particle products according to the particle product quantity increase request, wherein a Merkle tree is used to verify the consistency of the particle products, the information blocks constituting a large data file are arranged in a natural order when being cut by a writing party, and the particle products bound on the information blocks are also arranged in the same order, the writing party constructs a Merkle tree with hash values of all the particle products and obtains a root value of the Merkle tree, and the writing party inputs file attributes, information block attributes, and the root value of the Merkle tree into a digital fingerprint generation function to generate a digital fingerprint.
2. The method of claim 1, wherein, Before the storing of the information blocks with the bound particle products on respective file servers of the blockchain operating system, the method further comprises: encrypting the information blocks; Before the writing of the digital fingerprint into the blockchain, the method further comprises: encrypting the digital fingerprint. 3.A blockchain-based file reading method, characterized in that, The reading file is a file stored by the method of any one of claims 1 or 2; the method comprises: obtaining a digital fingerprint on a blockchain; reading the digital fingerprint when an account and an account of the digital fingerprint are the same; processing the digital fingerprint to obtain file attributes, information block attributes, and particle product characteristic values; and Reading all the information blocks according to the file attribute, the information block attribute and the particle product number characteristic value and synthesizing a target file. 4.The blockchain-based file reading method of claim 3, wherein, The information blocks are connected through adjacent information block attributes; and reading all the information blocks according to the file attribute, the information block attribute and the particle product number characteristic value and synthesizing a target file comprises: Finding all the information blocks according to the information block attribute and the adjacent information block attribute of the information block; Reading the information block when the account and the owner account of the particle product number on the information block are the same; and binding a different particle product number on each information block; After reading the last information block, judging whether the owner accounts of the particle product numbers on all the information blocks are the same; When the owner accounts of the particle product numbers on all the information blocks are the same, synthesizing all the information blocks into the target file.
5. The method of claim 3, wherein, Before processing the digital fingerprint to obtain the file attribute, the information block attribute and the particle product number characteristic value, the method further comprises: Decrypting the digital fingerprint; Before synthesizing all the information blocks into the target file, the method further comprises: Decrypting all the information blocks. 6.A blockchain-based file storage device, characterized by, The device comprises: An information block initialization module for splitting a file into at least two information blocks and binding a different particle product number on each information block; An information block storage module for distributing the information blocks bound with particle product numbers to each file server of the block chain operating system; each particle product number has a unique identifier, and the unique identifier of the particle product number cannot be reused after the particle product number is cancelled; A digital fingerprint generation module for generating a digital fingerprint according to the file attribute, the information block attribute and the unique characteristic value of all the particle product numbers; A digital fingerprint writing module for writing the digital fingerprint into a block chain and sending a file writing completion instruction to the file server to make the file server cancel the particle product numbers on all the information blocks corresponding to the file; A particle product number application module for sending a particle product number application request to a trusted node; the particle product number application request is used to instruct the trusted node to verify the particle product number application request through a pairing node of the particle product number application request sender and send a particle product number to the particle product number application request sender after verification; the particle product number sent by the trusted node is generated when the trusted node assembles a block. The digital fingerprint writing module is specifically configured to write the digital fingerprint and hash values of all the particle products into a block chain, and send a file writing completion instruction to the file server, so that the file server cancels the particle products on all the information blocks corresponding to the file and sends a particle product quantity increase request to the trusted node; the particle product quantity increase request carries a to-be-increased particle product quantity consistent with the quantity of the canceled particle products, so that the trusted node generates new particle products according to the particle product quantity increase request, wherein a Merkle tree is used to verify the consistency of the particle products, the information blocks constituting a big data file are arranged in a natural order according to the time when the information blocks are divided by a writing party, and the particle products bound on the information blocks are also arranged in the same order, the writing party constructs a Merkle tree with hash values of all the particle products and obtains a root value of the Merkle tree, and the writing party inputs a file attribute, an information block attribute and the root value of the Merkle tree into a digital fingerprint generation function to generate a digital fingerprint. 7.A blockchain-based file reading apparatus, characterized by, Reading a file is a file stored by the device of claim 6; the device comprises: A digital fingerprint obtaining module is configured to obtain a digital fingerprint on a block chain; A digital fingerprint reading module is configured to read the digital fingerprint; A digital fingerprint processing module is configured to process the digital fingerprint to obtain a file attribute, an information block attribute and a particle product characteristic value; A target file synthesizing module is configured to read all the information blocks according to the file attribute, the information block attribute and the particle product characteristic value and synthesize a target file.
8. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that, The processor executes the computer program to implement the steps of the method of any one of claims 1 to 2 or 3 to 5.
9. A computer readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the method of any one of claims 1 to 2 or 3 to 5.
Citation Information
Patent Citations
Data integrity verification method and device based on block chain, and storage medium
CN110163007A
File processing method and device based on blockchain, equipment and storage medium
CN111177107A