CN106815530B - Data storage method, data verification method and device - Google Patents

Data storage method, data verification method and device Download PDF

Info

Publication number
CN106815530B
CN106815530B CN201611219947.7A CN201611219947A CN106815530B CN 106815530 B CN106815530 B CN 106815530B CN 201611219947 A CN201611219947 A CN 201611219947A CN 106815530 B CN106815530 B CN 106815530B
Authority
CN
China
Prior art keywords
hash value
target file
tree
hash
root
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201611219947.7A
Other languages
Chinese (zh)
Other versions
CN106815530A (en
Inventor
赵微
周能发
许楠
张勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Aijieli Technology Development Co ltd
Original Assignee
Beijing Aijieli Technology Development Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Aijieli Technology Development Co ltd filed Critical Beijing Aijieli Technology Development Co ltd
Priority to CN201611219947.7A priority Critical patent/CN106815530B/en
Publication of CN106815530A publication Critical patent/CN106815530A/en
Application granted granted Critical
Publication of CN106815530B publication Critical patent/CN106815530B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Abstract

The application discloses a data evidence storing method which is used for solving the problem that authenticity of data cannot be guaranteed in the prior art. The method comprises the following steps: determining a hash value of a target file; constructing a hash tree by using the hash value of the target file, and extracting a root hash value of the hash tree; storing the root hash value into a block chain to obtain evidence storing information for verifying the authenticity of the target file; wherein, the certificate storing information comprises: the identification of the block for storing the root hash value of the target file, the evidence storage timestamp of the target file and the root hash value of the target file are stored. The application also discloses a data storage device, a data verification method and a data verification device.

Description

Data storage method, data verification method and device
Technical Field
The present application relates to the field of computer technologies, and in particular, to a data storage method and apparatus, and a data verification method and apparatus.
Background
With the development of information technology, information technology has greatly facilitated people's work and life, and in the field of information technology, information is stored and propagated using data as carriers.
Data is used as an information carrier and often has a certain value, particularly in the big data era, each unit itself often accumulates a large amount of data in the operation and service processes, and the data has a certain utilization value for the development of certain services. For example, for an operator of an intelligent community, the operator has a large amount of community data of the community, the community data may include consumption information, life preference information and other information of residents besides community basic data and property information of the community, and the information may guide merchants and governments to provide better goods and services for the community residents.
With the advancement of urbanization, many activities of people in cities are performed in communities, and the lives of people in the communities comprise eating, wearing, living, walking, making friends, education, health, activities and other aspects. The community big data generated in the community life can help people to live more conveniently and efficiently, and meanwhile can help merchants, government, enterprises, public institutions and the like to better know the needs of people, and high-quality service is provided more pertinently.
In the big data of the community, main service persons and managers of the community master a large amount of various structured and accurate basic data, wherein the basic data comprise community basic data, geographical position information, house equipment data, resident basic information, various cost information such as property and the like, community vehicle information, community floating population information, community large-scale activities, community repair, consultation, complaint and other information, the information can be effectively collected and managed through the construction of property informatization, and great value can be brought through the current big data analysis technology. In addition to property data, a large amount of community data can be generated by community Online-to-offline service (O2O) based on the mobile internet technology and smart communities based on the internet of things, which include community social data of people, community information browsing habits, community consumption information, community Online service information, smart home preference information, smart entrance guard use information, smart community device use information and the like. Meanwhile, public data of government institutions and related data of third-party partners are combined, comprehensive community data analysis can be fully performed, community tag attributes, community crowd tag attributes, consumption preferences, social preferences, scientific and technological preferences, life preferences and the like are formed, and accordingly merchants and governments are guided to provide better commodities and services for people.
Especially in the post-house era, people begin to dig the market value of residential communities deeply. Along with the integration of internet thinking and traditional community property, the concept of the smart community stands out. The user can enjoy more convenient property service, community e-commerce service and vertical visiting service through mobile phone Application (APP), and in the process, various data can be generated every day. In a small-sized society of smart communities, the community O2O system can continuously collect relevant data of merchants and users as a carrier of the smart community. In order to continuously mine the value of large data and even make data reserves for possible cooperation with third parties in the future, it becomes important to keep the data well and safely.
If the stored data cannot be verified to be tampered, the public trust of the data is greatly reduced, which causes a lot of troubles to data users, for example, if the stored data is tampered and then utilized by a decision maker, the decision maker may make an incorrect decision, which does not promote the development of business, but brings a reaction, and wastes resources such as manpower and material resources. Therefore, it becomes important to ensure the authenticity of the data, and if it cannot be proved that the data has not been tampered with at will, the credibility and value of the data are greatly compromised.
Disclosure of Invention
The embodiment of the application provides a data evidence storing method, which is used for solving the problem that the authenticity of data cannot be ensured in the prior art.
The embodiment of the application adopts the following technical scheme:
a data storage method comprises the following steps:
determining a hash value of a target file;
constructing a hash tree by using the hash value of the target file, and extracting a root hash value of the hash tree;
storing the root hash value into a block chain to obtain evidence storing information for verifying the authenticity of the target file; wherein, the certificate storing information comprises: the identification of the block for storing the root hash value of the target file, the evidence storage timestamp of the target file and the root hash value of the target file are stored.
The embodiment of the application further provides a data verification method, which is used for solving the problem that the authenticity of data cannot be ensured in the prior art.
The embodiment of the application adopts the following technical scheme:
a method of data verification, comprising:
determining a target file to be verified, and extracting the evidence storing information of the target file, wherein the evidence storing information is obtained by the data evidence storing method;
extracting a root hash value of a historical hash tree corresponding to the target file from the evidence storage information;
constructing a check tree by using the hash value of the target file, and taking the root hash value of the check tree as a check hash value;
and when the verification hash value is determined to be the same as the root hash value of the historical hash tree, determining that the target file is an untampered file.
The embodiment of the application provides a data deposit evidence device for solve the problem that the authenticity of data can not be ensured among the prior art.
The embodiment of the application adopts the following technical scheme:
a data credentialing apparatus comprising:
a first determination unit that determines a hash value of a target file;
the first construction unit is used for constructing a hash tree by utilizing the hash value of the target file and extracting a root hash value of the hash tree;
the storage unit is used for storing the root hash value into a block chain to obtain evidence storing information used for verifying the authenticity of the target file; wherein, the certificate storing information comprises: the identification of the block for storing the root hash value of the target file, the evidence storage timestamp of the target file and the root hash value of the target file are stored.
The embodiment of the application further provides a data verification device for solving the problem that authenticity of data cannot be guaranteed in the prior art.
The embodiment of the application adopts the following technical scheme:
a data verification apparatus, comprising:
a second determining unit for determining the target file to be verified and extracting the evidence storing information of the target file
The extraction unit is used for extracting a root hash value of a historical hash tree corresponding to the target file from the evidence storage information;
the second construction unit is used for constructing a check tree by utilizing the hash value of the target file and taking the root hash value of the check tree as a check hash value;
and a third determining unit, configured to determine that the target file is an untampered file when it is determined that the check hash value is the same as the root hash value of the historical hash tree.
The embodiment of the application adopts at least one technical scheme which can achieve the following beneficial effects:
the method comprises the steps of determining a hash value of a target file, constructing a hash tree by utilizing the hash value of the target file, extracting a root hash value of the hash tree, and storing the root hash value into a block chain to obtain evidence storage information for verifying the authenticity of the target file. The certificate storage information includes: the identification of the block for storing the root hash value of the target file, the evidence storage timestamp of the target file and the root hash value of the target file are stored. In this way, when the integrity of at least one of the target files is subsequently checked, the authenticity of the target file can be checked according to the root hash value and the evidence storing timestamp stored in the block chain.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the application and together with the description serve to explain the application and not to limit the application. In the drawings:
fig. 1 is a schematic flow chart illustrating an implementation of a data certification method according to an embodiment of the present application;
fig. 2 is a schematic structural diagram of a hash tree according to an embodiment of the present disclosure;
fig. 3 is a schematic structural diagram of a hash tree for determining a temporal hash value according to an embodiment of the present disclosure;
fig. 4 is a schematic flow chart illustrating an implementation of a data verification method according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of a data certification device according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of a data verification apparatus according to an embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the technical solutions of the present application will be described in detail and completely with reference to the following specific embodiments of the present application and the accompanying drawings. It should be apparent that the described embodiments are only some of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
In order to solve the problem that the authenticity of data cannot be ensured in the prior art, the application provides a data evidence storage method, and the characteristic values of target files are stored on a block chain regularly to store evidence for the target files so as to check the authenticity of the target files later.
The data evidence storing method provided by the application is described in detail below with reference to the accompanying drawings. The execution subject of the data authentication method provided in the embodiment of the present application may be a server, and for convenience of description, the following takes the execution subject of the method as an example, and introduces an implementation of the method. It is understood that the implementation of the method by the server is merely an exemplary illustration and should not be construed as a limitation of the method.
The implementation flow diagram of the method is shown in fig. 1, and comprises the following steps:
step 11: determining a hash value of a target file;
the target file is a file to be certified, and the target file may be a backup file obtained by backing up data in a database within a specified time, or a file obtained in real time and containing data within a specified time. The target file may contain information such as generation time and storage address.
Taking the target file as the backup file of the database as an example, the backup file can be obtained by regularly backing up the data in the database within the specified time, and the specific backup data may be newly added data in the database table within the specified time, or the whole data table may be backed up at a certain time node.
In order to verify the authenticity of the target file subsequently, the hash value of the target file may be determined, and a specific method for determining the hash value is a relatively mature prior art, which is not described herein again.
For example, taking MySQL database as an example, for a database with multiple tables, MySQL command may be used to generate a backup file for each table every day, and then each backup file is used as an input of the hash function to obtain the hash value of each backup file.
Step 12: constructing a hash tree by using the hash value of the target file, and extracting a root hash value of the hash tree;
due to the characteristic that data stored in the blockchain is difficult to tamper, in the embodiment of the application, the hash value of the target file can be stored in the blockchain for later verification. However, when a blockchain successfully stores a piece of data, not only is time-consuming, but also more resources are consumed due to the need for the joint participation of a plurality of blockchain nodes, and thus, when the number of target files is large, a large amount of resources are consumed for storing the hash value of each target file into the blockchain each time.
Then, a hash tree can be constructed by using the hash values of the target files, the hash values of the target files are organized on leaf nodes of the hash tree, then root hash values are obtained, the root hash values only need to be stored in the block chain subsequently, the hash tree can be reconstructed according to the file to be inquired during verification, and whether the root hash values of the reconstructed hash tree are consistent with the root hash values in the block chain is verified. The hash value of each child node in the hash tree can be stored in a resource-saving mode without being stored in a block chain, and the hash value is provided by a data collector when the hash value needs to be checked, so that the storage resource is saved.
The data structure of the hash tree is a tree structure, the leaf nodes of the hash tree are hash values of independently verifiable data, the hash values of the nodes of the non-leaf nodes are obtained according to the hash values of the child nodes of the node, for example, the hash values obtained by splicing the data of the child nodes and then hashing the spliced data can be obtained, or the hash values obtained by performing other operations on the data of the child nodes can be obtained, which is not limited in the present application. When the hash tree is constructed, the hash value of each target file can be used as a leaf node of the hash tree to construct the hash tree.
In the following, a hash tree constructed by using hash values is described as an example of a binary tree, the binary tree constructed by using hash values may be a mercker tree, and as shown in fig. 2, an exemplary structural diagram of the mercker tree constructed by using hash values is shown. In the merkel tree, the hash values of the leaf nodes can be obtained by solving the hash values of the backup files through a hash algorithm, the hash values of the nodes other than the leaf nodes can be obtained by splicing the hash values of the child nodes and then taking the hash values, the splicing can be realized by connecting two hash values in front and back, for example, the hash values of the original child nodes are 00000000000000000000000000000000 and 11111111111111111111111111111111, so that the hash values obtained by splicing the hash values of the two child nodes are 0000000000000000000000000000000011111111111111111111111111111111, and then the hash values obtained by splicing are the hash values of the parent nodes of the two child nodes.
Step 13: and storing the root hash value into a block chain to obtain evidence storage information for verifying the authenticity of the target file.
Wherein, the certificate storing information comprises: the identification of the block for storing the root hash value of the target file, the evidence storage timestamp of the target file and the root hash value of the target file are stored. In this way, after receiving an integrity check instruction for at least one of the target files, the integrity of the target file can be checked according to the existence information.
When the hash value is stored in the block chain, the hash value may be stored in a certain block in the block chain, each block in the block chain corresponds to an identifier, and the identifier is used to identify each block in the block chain, and then the identifier may be recorded, so that the block chain storing the hash value is determined according to the identifier later. Meanwhile, when the hash value is stored in the blockchain, the blockchain generates a timestamp for storing the hash value, and then the target file can be checked subsequently by using the timestamp.
Still taking the target file as the backup file of the database data as an example, after the data in the database within the specified time is backed up to obtain the backup file, the root hash value corresponding to the backup file is determined, then the root hash value corresponding to the backup file is determined, and finally the root hash value can be recorded into the block chain.
It should be noted that, from the time of backing up data to the time of extracting the hash value of the backed-up file, to the time of saving the root hash value in the block chain, it often takes a while to complete. After the backup file is obtained, the backup file has the generation time, and when the root hash value is stored in the block chain, the evidence storage timestamp can be obtained. If the time interval between the backup time and the proof time is less than a certain threshold, the data may be considered valid, and subsequently the authenticity of the data may continue to be verified by the hash value. Therefore, in order to facilitate the subsequent verification of the backup file by the evidence-saving timestamp, the time period is not too long, for example, if the database file is backed up in 2014 at 11 months and 11 days and then the data is saved in 2015 at 11 months and 11 days, the reliability of the data is greatly reduced.
Therefore, as the target data can be backed up regularly, for the backup file backed up regularly, the root hash value of the backup file can be stored in the block chain as soon as possible after the backup is completed, and the backup file is stored for verification, so that the integrity of the backup file is verified in the later period. Then this step 11 and the subsequent steps 12 and 13 may be performed each time a backup file is obtained.
The integrity check of the data refers to a proving means for checking whether the current data and the original data are completely consistent. When determining the hash value of the backup file, the backup file may be used as an input of a hash algorithm, so as to obtain the hash value of the backup file, and the process of calculating the hash value by the hash algorithm is not described herein again.
The blockchain technology is a decentralized distributed database technology, and a blockchain is formed by linking a plurality of memory blocks, and data stored on the blockchain has non-tamper property. The characteristic values of the target files are stored on the block chain regularly, time stamps can be printed on the target files, namely data evidence storage service is carried out, once the hash value of the root node of the hash tree is written into the block chain, a data evidence which is difficult to tamper is formed for the target files, and therefore after an integrity check instruction aiming at least one target file in the target files is received subsequently, the integrity of the target files can be checked according to the root hash value stored in the block chain, the problem of resource waste caused by the fact that the data are still used after being tampered is solved, and the public credibility of the data is improved.
It should be noted that, when the target file is used in cooperation with a third party, in order to ensure the public trust of the community data, the root hash value of the hash tree may be stored in a common block chain, and the common block chain may be, for example, a block chain of bitcoin. Because the root hash value is stored in the public block chain, anyone can check the root hash value, and the data is unchangeable, so that a third party can verify whether the current target file is complete according to the hash value stored in the public block chain, and a data holder is prevented from privately changing the root hash value of the hash tree.
For convenience of description, the target file to be checked for integrity is referred to as a target file, and since the target file may be only a part of the target file when the data is used in the later period, when the integrity of the target file is checked in the later period, only the hash value of the target file may be used, and then the remaining and lacking hash values are complemented to obtain the root hash value of the hash tree. Then, when constructing the hash tree, the data that is most likely to be queried simultaneously can be organized under a sub-tree. This reduces the number of nodes involved in the query, further saving computational resources.
The process of specifically determining the data most likely to be queried simultaneously may include the steps of:
the method comprises the following steps: determining weight values of probabilities that at least two of the target files are simultaneously queried;
different target files are queried simultaneously, which is often due to a certain commonality between different target files, for example, the probability of being queried simultaneously is higher when the service types of data in the target files are the same. Besides the service type of the target file, the condition that the target file is simultaneously inquired before can be referred to, and then various conditions are comprehensively considered, so that the weight values of different target files which are simultaneously inquired can be obtained.
Specifically, when calculating the weight values, different weights may be multiplied for different situations, for example, when calculating the probability that the target document 1 and the target document 2 are queried simultaneously, if the target document 1 and the target document 2 are documents of the same service type, the weight value of the probability that the target document 1 and the target document 2 are queried simultaneously is added to 10, if the two documents are queried simultaneously 15 times in the past 100 times of querying, the weight value of the probability that the two documents are queried simultaneously is added to 15, if the two documents are also data concerned by the target data demander, the weight value of the probability that the two documents are queried simultaneously is added to 10, the target data demander is a unit or an individual who may use the data in the target document, and thus the weight value of the probability that the target document 1 and the target document 2 are queried simultaneously is 35.
Specifically, the method for calculating the weight value of more than two target files used simultaneously is similar to this, and is not described here again.
The method comprises the following steps: taking the weight value meeting a preset probability condition in the weight values as a target weight value;
the preset probability condition here may be: the weight value is larger than a set threshold value, and if the weight values of the combination of a certain target file and a plurality of target files are larger than the set threshold value, the combination with the largest weight value is selected, and the combination of the two target files and other target files in the combination is abandoned. According to the condition, the target weight value is obtained, so that the combination of the target files which are most likely to be simultaneously inquired is obtained.
The method comprises the following steps: and recording the hash value of the target file corresponding to the same target weight value under the same node.
The target files corresponding to the same target weight value are the target files which are simultaneously inquired and have higher probability, so that the hash values of the target files corresponding to the same target weight value can be recorded under the same node, the number of the related nodes can be reduced during inquiry, and the computing resources are further saved.
As shown in FIG. 2, assuming that the target file 1 and the target file 2 are likely to be queried simultaneously, the hash values thereof are organized under the same node h5, and when constructing the hash tree, the hash values of the target file 1 and the target file 2 are calculated, and the root hash value can be obtained according to the previously saved hash value of h 6. If the hash value of the target file 2 is organized to h3, nodes h1, h2, h3 and h4 are needed, compared with a method for organizing the hash value of the target file 2 to h2, two nodes are added in calculating each hash value, and if the data involved in verifying the data is more, the calculation amount in verifying is greatly reduced by the node organizing method provided by the application, and the overhead on calculation resources is reduced.
In the embodiment of the present application, the root hash value of the hash tree constructed at a certain time is stored in the blockchain, and may be used for integrity check of data at a later stage, but it is possible that a data holder falsifies the root hash value, calculates the correct root hash value corresponding to the data and the root hash value corresponding to the tampered data, and provides the tampered data and the root hash value corresponding to the tampered data to the data demander when the data demander needs the data. Due to the possibility, the public confidence of the data can be further improved.
In order to further improve the public credibility of the data, namely increase the credibility of a third party to the data, the time sequence hash value can be determined according to the root hash value and the historical root hash value of the hash tree constructed by the current time node, and then the time sequence hash value is stored into the blockchain. The history root hash value here refers to a root hash value of a hash tree constructed from hash values of history object files of object data at any time node before the current time node, the history object files being object files of the object data at the time of the any time node. That is, the historical hash value is any time node before the current time node, and the root hash value determined by performing the above steps 11 to 13 is obtained.
The specific determined time-series hash value may be determined, for example, according to a root hash value of a hash tree constructed from a current time node and a historical root hash value determined from a previous time node. The time-series hash values may further include a root hash value of a hash tree constructed by the current time node and a historical root hash value determined by the previous time node, for example, the root hash value of the hash tree constructed by the current time node is 00000000000000000000000000000000, and the historical root hash value determined by the previous time node is 11111111111111111111111111111111, so that the time-series hash value constructed by the current time node may be 1111111111111111111111111111111100000000000000000000000000000000. Or the time sequence hash value may be obtained by splicing the root hash value determined by the current time node and the root hash value determined by the last time node and then taking the hash value, which is not described herein again.
In addition, the specific determined time series hash value may also be a time series hash value determined according to a root hash value of a hash tree constructed by a current time node and a historical root hash value determined by a previous time node, which is not described herein again.
The time sequence hash values are formed by connecting the root hash values determined by each time node in series, and a chain structure is formed, so that a user can trace back to find the time sequence hash values of all the previous hash trees as long as the user knows the time sequence hash value of the current hash tree. If the data holder makes a fake to the root hash value of a certain time node, then in order to facilitate self-query later or provide real data to some third parties, the data holder often needs to record the real root hash value, so that the data holder conveniently needs to maintain two chains simultaneously, one chain is a real chain and the other chain is a fake chain, more storage resources can be consumed, meanwhile, the whole time sequence hash value chain can be conveniently checked according to the data requirement because the time sequence hash value of any time node is provided for the data requirement side, the time sequence hash value chains can be mutually compared according to different data requirements conveniently, and if the data holder makes a fake, the data holder can be found easily. However, if only the root hash value is stored, different data requirements may not compare the obtained root hash values with each other unless they obtain the root hash value determined by the same time node.
Through the analysis, the time sequence hash value is determined at each time node and then stored, so that the public confidence of the data can be further improved, and the possibility of data faking of a data holder is reduced.
When storing the hash value into the blockchain, as described above, the hash value may be stored into a common blockchain, such as storing the hash value into a blockchain of bitcoins, and beginning with the bitcoin protocol version 0.9.2, a small transfer may be initiated, and the "root hash value" may be embedded into the transaction record of the bitcoin using the "OP _ RETURN < root hash >" command in the transaction script for the transfer. Once the transaction is accepted by the block chain of the bitcoin, it is indicated that it is written into the data body of a certain block, and the data storage of this time is completed.
Following convention, a prefix may be added at the front of the root hash value to be written to the blockchain to indicate that this "OP _ RETURN < root hash >" command stored on the blockchain is for the forensic service of the method. For example, a CoinSpark network station may use an "SPK" prefix, e.g., "SPK" + root hash value. After the root hash value is written into the blockchain, the position of the blockchain in which the root hash value and/or the time sequence hash value is written by the current time node can be recorded, so that the root hash value and/or the time sequence hash value can be determined according to the position.
It should be noted that, in order to avoid the failure of writing the hash value, attention may be paid to the failure of the message injection operation. Generally, if the verification of 6 blocks is obtained, it can be considered that the transaction record is successfully written into the block chain, and it is almost impossible to be tampered. However, in extreme cases, the block chain of bitcoin may be forked, especially when the bitcoin protocol update causes incompatibility between the old and new protocols. Once the writing fails, countermeasures need to be taken for remediation, and the root hash value of the user is guaranteed to have data evidence on the main chain of the bitcoin.
According to the storage mode of the root hash value and the time sequence hash value, a storage certificate which is difficult to tamper can be formed for the target file, and after an integrity check instruction aiming at least one target file in the target file is received subsequently, the integrity of the target file can be checked according to the root hash value and/or the time sequence hash value recorded in the block chain.
A data verification method provided in the present application, that is, a process how to verify a target file according to a previously stored hash value, will be described in detail below.
The implementation flow diagram of the method is shown in fig. 4, and includes the following steps:
step 31: determining a target file to be verified, and extracting the evidence storage information of the target file;
the target file is at least one of the target files certified through the steps described above. When the target file is certified, the identifier of the block chain of the existence information of the certified target file is recorded, so that the block corresponding to the identifier can be determined according to the identifier, and the root hash value and the certified timestamp corresponding to the target file are stored in the block.
Step 32: extracting the hash value of the target file from the certificate storage information;
step 33: constructing a check tree by using the hash value of the target file, and taking the root hash value of the check tree as a check hash value;
here, the check tree is also a hash tree, the check tree is a hash tree having the same data structure as the historical hash tree, and the historical hash tree is a hash tree constructed from the hash value of the target file at the target time node. The data structures are the same, and it means that the target file corresponds to the position of the node in the check tree, and is the same as the position of the node in the history hash tree, for example, in the history hash tree shown in fig. 2, backup file 1 and backup file 2 correspond to h1 node and h2 node in the hash tree, so when the check tree is constructed, backup file 1 and backup file 2 (target files) also correspond to h1 node and h2 node in the hash tree.
When a current hash tree is constructed, if the target files are partial files in the target files corresponding to the historical hash tree, a default hash value for constructing a check tree may be determined according to the hash values of the target files of the historical hash tree stored in advance, where the default hash value is a hash value necessary for determining a root hash value of the check tree, for example, the target files are backup file 1 and backup file 2, which correspond to h1 node and h2 node in the hash tree, respectively, then when the root node is obtained, the h6 node is needed instead of the h3 node and the h4 node, and the h6 node may be referred to as the default hash value.
Thus, after the default hash value and the hash value of the target file are determined, the check tree can be constructed, and the hash value of the check tree can be obtained.
When the current hash tree is constructed, if the target files are all files in the target files corresponding to the historical hash tree, the hash tree can be constructed directly according to the hash value of the target files and the data structure of the historical hash tree, and the hash value of the check tree can be obtained.
Since the root hash value of the hash tree determined by each time node is previously stored in the blockchain, the root hash value of the history hash tree corresponding to the target file can be determined from the blockchain when the target file is checked. Specifically, when the root hash value is determined, the position of the block chain in which the root hash value is written when the target time node is determined according to the target time node, and then the root hash value stored in the block chain is determined.
Step 34: judging whether the root hash value of the check tree is the same as the root hash value of the historical hash tree or not;
after the root hash value of the check tree and the root hash value of the historical hash tree are determined, the root hash value of the check tree and the root hash value of the historical hash tree can be compared to judge whether the root hash value and the historical hash value are the same.
Step 35: verifying whether the target file is valid or not through the evidence storing timestamp;
if the time interval between the generation time of the target file and the validation timestamp is less than a threshold, the data may be considered valid and subsequently the authenticity of the data may continue to be verified by the hash value. The generation time of the target file may be, for example, the generation time of the backup file or the generation time of the data in the target file. For example, the backup time of the backup file is 30 minutes at 23 o 'clock at 11/2014, the storage timestamp is 10 minutes at 0 o' clock at 12/11/2014, the interval between the two times is 40 minutes, and if the preset threshold is 1 day, it can be determined that the backup data is valid.
Step 36: when the root hash value of the check tree is determined to be the same as the root hash value of the historical hash tree, determining that the target file is an untampered file;
step 37: and when the root hash value of the check tree is determined to be different from the root hash value of the historical hash tree, determining that the target file is a tampered file.
After the target file is determined to be the tampered target file, the value of the target file does not need to be mined, and waste of resources such as manpower, material resources and the like is avoided.
It should be noted that, because the time sequence hash value may also be stored in the blockchain in the certification stage, the time sequence hash value corresponding to the target file may also be determined from the blockchain, where the time sequence hash value includes a root hash value of the hash tree constructed at the target time node and a root hash value of the hash tree constructed at a time node before the target time node, so that the root hash value of the history hash tree constructed at each time node may be determined according to the determined time sequence hash value.
According to the data verification method provided by the embodiment of the application, the hash value of the target file is determined, then the hash value of the target file is utilized to construct the hash tree, the root hash value of the hash tree is extracted, and the root hash value is stored in the block chain so as to obtain the evidence storage information used for verifying the authenticity of the target file. The certificate storage information includes: the identification of the block for storing the root hash value of the target file, the evidence storage timestamp of the target file and the root hash value of the target file are stored. In this way, when subsequently verifying the integrity of at least one of the target files, the authenticity of the target file can be verified according to the stored root hash value and the evidence storing timestamp in the block chain
It should be noted that all execution subjects of the steps of the method provided in the embodiments of the present application may be the same apparatus, or different apparatuses may also be used as execution subjects of the method. For example, the execution subject of steps 11 and 12 may be device 1, and the execution subject of step 13 may be device 2; for another example, the execution subject of step 11 may be device 1, and the execution subjects of step 12 and step 13 may be device 2; and so on.
Based on the same idea, the data certificate storing method and the data verification method provided in the embodiments of the present application further provide a corresponding data certificate storing device, as shown in fig. 5; the embodiment of the present application further provides a corresponding data verification apparatus, as shown in fig. 6.
Fig. 5 is a schematic structural diagram of a data evidence storage device according to an embodiment of the present application, which specifically includes:
a first determination unit 41 that determines a hash value of the target file;
a first construction unit 42, which constructs a hash tree by using the hash value of the target file, and extracts a root hash value of the hash tree;
a storage unit 43, storing the root hash value into a blockchain to obtain evidence storing information for verifying the authenticity of the target file; wherein, the certificate storing information comprises: the identification of the block for storing the root hash value of the target file, the evidence storage timestamp of the target file and the root hash value of the target file are stored.
In an embodiment, in order to save resources during data verification, the first constructing unit 42 is specifically configured to determine weight values of probabilities that at least two target files in the target files are queried simultaneously; taking the weight value meeting a preset probability condition in the weight values as a target weight value; and recording the hash value of the target file corresponding to the same target weight value under the same node.
In one embodiment, to improve the confidence of the data, the apparatus further comprises:
the time sequence hash value determining unit is used for determining a time sequence hash value according to a root hash value of the hash tree and a historical root hash value, wherein the historical root hash value is any time node before a current time node, and the root hash value of the hash tree is constructed according to the hash value of a historical target file;
and the time sequence hash value storage unit stores the time sequence hash value into the block chain.
In an embodiment, the time-series hash value determining unit is specifically configured to determine the time-series hash value according to a root hash value of a hash tree constructed by a current time node and a historical root hash value determined by a previous time node.
In one embodiment, the time-series hash values include a root hash value of a hash tree constructed by a current time node and a historical root hash value determined by a previous time node.
The data evidence device that deposits that this application embodiment provided is through the hash value of confirming the target file, then utilizes the hash value of target file to construct the hash tree, and draws the root hash value of hash tree will the root hash value is stored to the block chain in, in order to obtain and be used for verifying the evidence information is deposited to the target file authenticity. The certificate storage information includes: the identification of the block for storing the root hash value of the target file, the evidence storage timestamp of the target file and the root hash value of the target file are stored. In this way, when the integrity of at least one of the target files is subsequently checked, the authenticity of the target file can be checked according to the root hash value and the evidence storing timestamp stored in the block chain.
Fig. 6 is a schematic structural diagram of a data verification apparatus provided in an embodiment of the present application, where the apparatus specifically includes:
a second determining unit 51 for determining a target document to be verified and extracting the certification information of the target document
An extracting unit 52, configured to extract a root hash value of a history hash tree corresponding to the target file from the certificate storage information;
a second construction unit 53, which constructs a check tree by using the hash value of the target file, and takes the root hash value of the check tree as a check hash value;
a third determining unit 54, when determining that the check hash value is the same as the root hash value of the historical hash tree, determining that the target file is an untampered file.
In an embodiment, when the target file is a partial file of the target file, the second constructing unit 53 determines a default hash value for constructing the check tree according to hash values of target files of a history hash tree stored in advance, where the default hash value is a hash value for determining a root hash value of the check tree, except the hash value of the target file;
constructing the check tree according to the determined default hash value and the hash value of the target file;
the second constructing unit 53 constructs a hash tree according to the data structure of the historical hash tree based on the hash value of the target file when the target file is all files in the target file.
In one embodiment, the apparatus further includes a time-series hash value determining unit, configured to determine, from a blockchain, a time-series hash value corresponding to the target file, where the time-series hash value includes a root hash value of a hash tree constructed at the target time node and a root hash value of a hash tree constructed at a time node before the target time node;
and determining the root hash value of the historical hash tree constructed by each time node according to the time sequence hash value.
The data verification device provided by the embodiment of the application verifies the target file to be verified according to the timestamp and the hash value in the certificate storage information of the predetermined target file, and when the root hash value of the verification tree is determined to be the same as the root hash value of the historical hash tree, the target file is determined to be a file which is not tampered.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
The above description is only an example of the present application and is not intended to limit the present application. Various modifications and changes may occur to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims (9)

1. A data storage method is characterized by comprising the following steps:
determining a hash value of a target file;
constructing a hash tree by using the hash value of the target file, and extracting a root hash value of the hash tree;
storing the root hash value into a block chain to obtain evidence storing information for verifying the authenticity of the target file; wherein, the certificate storing information comprises: storing the identification of the block of the root hash value of the target file, the evidence storing timestamp of the target file and the root hash value of the target file;
the method for constructing the hash tree by using the hash value of the target file specifically comprises the following steps:
determining weight values of probabilities that at least two of the target files are simultaneously queried;
taking the weight value meeting a preset probability condition in the weight values as a target weight value;
and recording the hash value of the target file corresponding to the same target weight value under the same node.
2. The method of claim 1, wherein after building a hash tree using the hash values of the target file, the method further comprises:
determining a time sequence hash value according to the root hash value of the hash tree and a historical root hash value, wherein the historical root hash value is any time node before the current time node, and the root hash value of the hash tree is constructed according to the hash value of the historical target file;
storing the temporal hash value into a blockchain.
3. The method of claim 2, wherein determining the time-series hash value according to the root hash value and the historical root hash value of the hash tree specifically comprises:
and determining a time sequence hash value according to the root hash value of the hash tree constructed by the current time node and the historical root hash value determined by the previous time node.
4. The method of claim 3, wherein the time-series hash values include a root hash value of a hash tree constructed by a current time node and a historical root hash value determined by a previous time node.
5. A method for data verification, comprising:
determining a target file to be verified, and extracting the certificate storing information of the target file, wherein the certificate storing information is obtained by the method of any one of claims 1 to 4;
extracting a root hash value of a historical hash tree corresponding to the target file from the evidence storage information;
constructing a check tree by using the hash value of the target file, and taking the root hash value of the check tree as a check hash value;
and when the verification hash value is determined to be the same as the root hash value of the historical hash tree, determining that the target file is an untampered file.
6. The method of claim 5, wherein:
if the target file is a part of files in the certified files, constructing a check tree according to the hash value, which specifically comprises:
determining a default hash value for constructing the check tree according to the pre-stored hash value of each target file of the historical hash tree, wherein the default hash value is a hash value used for determining a root hash value of the check tree except the hash value of the target file;
constructing the check tree according to the determined default hash value and the hash value of the target file;
if the target file is all files in the certified files, constructing a check tree according to the hash value, which specifically comprises the following steps:
and constructing a hash tree according to the hash value of the target file and the data structure of the historical hash tree.
7. The method of claim 6, wherein after constructing a check tree from the hash values, the method further comprises:
determining a time sequence hash value corresponding to the target file from a block chain;
and determining the root hash value of the historical hash tree constructed by each time node according to the time sequence hash value.
8. A data credentialing apparatus, comprising:
a first determination unit that determines a hash value of a target file;
the first construction unit is used for constructing a hash tree by utilizing the hash value of the target file and extracting a root hash value of the hash tree;
the storage unit is used for storing the root hash value into a block chain to obtain evidence storing information used for verifying the authenticity of the target file; wherein, the certificate storing information comprises: storing the identification of the block of the root hash value of the target file, the evidence storing timestamp of the target file and the root hash value of the target file;
wherein the first building unit is specifically configured to:
determining weight values of probabilities that at least two of the target files are simultaneously queried; taking the weight value meeting a preset probability condition in the weight values as a target weight value; and recording the hash value of the target file corresponding to the same target weight value under the same node.
9. A data verification apparatus, comprising:
the second determining unit is used for determining a target file to be verified and extracting the certificate storing information of the target file, wherein the certificate storing information is obtained by the method of any one of claims 1 to 4;
the extraction unit is used for extracting a root hash value of a historical hash tree corresponding to the target file from the evidence storage information;
the second construction unit is used for constructing a check tree by utilizing the hash value of the target file and taking the root hash value of the check tree as a check hash value;
and a third determining unit, configured to determine that the target file is an untampered file when it is determined that the check hash value is the same as the root hash value of the historical hash tree.
CN201611219947.7A 2016-12-26 2016-12-26 Data storage method, data verification method and device Active CN106815530B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611219947.7A CN106815530B (en) 2016-12-26 2016-12-26 Data storage method, data verification method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611219947.7A CN106815530B (en) 2016-12-26 2016-12-26 Data storage method, data verification method and device

Publications (2)

Publication Number Publication Date
CN106815530A CN106815530A (en) 2017-06-09
CN106815530B true CN106815530B (en) 2020-04-24

Family

ID=59110172

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611219947.7A Active CN106815530B (en) 2016-12-26 2016-12-26 Data storage method, data verification method and device

Country Status (1)

Country Link
CN (1) CN106815530B (en)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107194613B (en) * 2017-06-20 2020-12-08 无锡井通网络科技有限公司 Digital asset coding method
CN107395360A (en) * 2017-07-23 2017-11-24 刘志强 The method that a kind of historical relic and art work numeral based on block chain technology deposit card
US10877962B2 (en) * 2017-08-11 2020-12-29 International Business Machines Corporation Deferred update of database hashcode in blockchain
CN107545181B (en) * 2017-08-16 2021-04-27 上海策赢网络科技有限公司 Program operating method, terminal, and computer-readable storage medium
CN107657986A (en) * 2017-09-22 2018-02-02 中链科技有限公司 Clinical testing data check method, system and electronic equipment
CN107835163B (en) * 2017-10-25 2020-12-22 杭州怀星科技有限公司 Online data circulation third party certificate storage and data right tracing method and device
CN107943833B (en) * 2017-10-25 2021-11-19 华南农业大学 Centerless distributed file storage and retrieval method based on block chain
CN107846282B (en) * 2017-11-03 2021-01-29 法信公证云(厦门)科技有限公司 Block chain technology-based electronic data distributed storage method and system
CN107819777B (en) * 2017-11-17 2020-07-24 利姆斯(北京)区块链技术有限公司 Data evidence storing method and system based on block chain technology
CN108171520A (en) * 2017-11-30 2018-06-15 深圳市轱辘车联数据技术有限公司 A kind of Transaction Information management method and server
CN108011945A (en) * 2017-11-30 2018-05-08 公安部第三研究所 A kind of cloud evidence obtaining process record method and system based on block chain
CN107944868A (en) * 2017-12-07 2018-04-20 杭州趣链科技有限公司 A kind of electronics deposit system and management method based on block chain intelligence contract
CN108573016A (en) * 2017-12-25 2018-09-25 北京金山云网络技术有限公司 A kind of data consistent check method, apparatus, equipment and storage medium
CN108418876B (en) * 2018-02-09 2019-04-19 北京众享比特科技有限公司 Store proof of work method and system, motivational techniques and system
EP3531333B1 (en) * 2018-02-23 2020-04-15 VEGA Grieshaber KG Manipulation-proof storage of evidence data
CN108549825A (en) * 2018-03-14 2018-09-18 中链科技有限公司 A kind of file deposits card, verification and the means of proof and device
CN108550037B (en) * 2018-04-11 2022-05-17 北京知金链网络技术有限公司 File processing method and device based on block chain
CN108737498A (en) * 2018-04-18 2018-11-02 中国地质大学(武汉) A kind of P2P safety download detection method and system based on block chain
CN108667836B (en) * 2018-05-08 2021-01-26 众安信息技术服务有限公司 Block chain consensus method
CN108710681B (en) * 2018-05-18 2022-02-22 腾讯科技(深圳)有限公司 File acquisition method, device, equipment and storage medium
CN111899005A (en) * 2018-05-29 2020-11-06 创新先进技术有限公司 Transaction processing method and device based on block chain and electronic equipment
CN108924114B (en) * 2018-06-25 2021-11-19 北京奇虎科技有限公司 Method and device for anchoring data on link
CN108876371B (en) * 2018-06-26 2021-01-29 广州天高软件科技有限公司 Consumption data storage, data verification and data source tracing method based on block chain
CN109101572B (en) * 2018-07-17 2021-03-02 何晓行 Block chain based evidence storing method and device, server and storage medium
CN108898032A (en) * 2018-07-20 2018-11-27 杭州尚尚签网络科技有限公司 A kind of electronic data based on block chain technology deposits the high-efficient treatment method of card
CN109347893A (en) * 2018-08-09 2019-02-15 玄章技术有限公司 A kind of file memory method and device of block chain network
CN109165221A (en) * 2018-08-16 2019-01-08 北京京东尚科信息技术有限公司 Date storage method, device, block chain node and the storage medium of block chain
CN109191197A (en) * 2018-08-24 2019-01-11 陕西优米数据技术有限公司 Video passenger flow statistical analysis based on block chain technology
CN109308211B (en) * 2018-09-11 2021-04-23 上海点融信息科技有限责任公司 Method, apparatus and storage medium for processing transaction data in a blockchain
CN109344163B (en) * 2018-09-20 2021-11-09 新华三大数据技术有限公司 Data verification method and device and computer readable medium
CN109614766B (en) * 2018-10-31 2021-01-22 创新先进技术有限公司 Method and device for carrying out block chaining and evidence saving on webpage through file acquisition
CN109361952A (en) * 2018-12-14 2019-02-19 司马大大(北京)智能系统有限公司 Video management method, apparatus, system and electronic equipment
CN111338664A (en) * 2018-12-18 2020-06-26 启碁科技股份有限公司 Image file packaging method and image file packaging system
CN110046156A (en) 2018-12-20 2019-07-23 阿里巴巴集团控股有限公司 Content Management System and method, apparatus, electronic equipment based on block chain
CN110032882A (en) * 2018-12-29 2019-07-19 阿里巴巴集团控股有限公司 Card method and apparatus are deposited based on block chain
CN109726316B (en) * 2018-12-29 2022-12-27 中国银联股份有限公司 File processing method and device
CN109784058A (en) * 2019-01-07 2019-05-21 中国银行股份有限公司 Version strong consistency method of calibration, client, server and storage medium
CN109815748B (en) * 2019-01-24 2020-12-18 黄冈 Central data source monitoring method based on block chain
TWI708154B (en) * 2019-04-24 2020-10-21 國際信任機器股份有限公司 Verifying system and method applied for cooperation between blockchain and off-chain devices
CN110189122B (en) * 2019-04-30 2020-09-01 阿里巴巴集团控股有限公司 Method and device for anchoring time for data on block chain and electronic equipment
CN110347645B (en) * 2019-06-19 2023-10-10 创新先进技术有限公司 Electronic file evidence storage method and device
CN110321734A (en) * 2019-07-11 2019-10-11 政采云有限公司 A kind of file verification method and device
CN110471795B (en) * 2019-07-31 2020-10-02 阿里巴巴集团控股有限公司 Block chain state data recovery method and device and electronic equipment
US10761948B1 (en) 2019-07-13 2020-09-01 Alibaba Group Holding Limited Method, apparatus, and electronic device for restoring state data of blockchain
CN110636042B (en) * 2019-08-14 2021-07-16 创新先进技术有限公司 Method, device and equipment for updating verified block height of server
CN110866265A (en) * 2019-11-19 2020-03-06 腾讯科技(深圳)有限公司 Data storage method, device and storage medium based on block chain
CN110737725A (en) * 2019-12-19 2020-01-31 杭州鸽子蛋网络科技有限责任公司 Electronic information inspection method, device, equipment, medium and system
CN111984614B (en) * 2020-08-04 2023-05-26 中国人民银行数字货币研究所 Method, device and system for sharing files
CN112131599A (en) * 2020-09-15 2020-12-25 北京海益同展信息科技有限公司 Method, device, equipment and computer readable medium for checking data
CN112383611B (en) * 2020-11-11 2022-12-09 上海保险交易所股份有限公司 File evidence storing method and system based on block chain and server
CN112883432A (en) * 2021-01-28 2021-06-01 上海分布信息科技有限公司 Deposit certificate and certificate verification method and deposit certificate and certificate verification system
CN112950415B (en) * 2021-03-11 2024-01-16 全链通有限公司 Judicial evidence fixing method, platform and system based on blockchain
CN113297223B (en) * 2021-05-31 2022-08-02 浙江数秦科技有限公司 Block chain-based electronic data real-time certificate storing system and method
CN113254397B (en) * 2021-06-15 2021-10-15 成都统信软件技术有限公司 Data checking method and computing device
CN113419894B (en) * 2021-07-20 2022-11-15 网易(杭州)网络有限公司 Data inspection method, data inspection device, storage medium and computer equipment
CN113901395B (en) * 2021-12-06 2022-03-18 深圳市名竹科技有限公司 Data processing method, data processing device, computer equipment and storage medium
DE102022000967A1 (en) 2022-03-19 2023-09-21 Datalisk GmbH Method for storing data that is organized in a tree structure and stored in a memory of a computer system, the memory repeatedly securing a hash of the current root object of the tree structure via a timestamp service
CN117118586A (en) * 2023-06-29 2023-11-24 北京门石信息技术有限公司 Block chain-based data transmission method, system, electronic equipment and medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101689195A (en) * 2007-06-08 2010-03-31 阿尔卡特朗讯公司 Use of a prefix hashing tree (pht) for locating service in a station-to-station communication network
CN101741845A (en) * 2009-12-08 2010-06-16 中国科学院声学研究所 Fragmentation-based content authentication method
CN105488675A (en) * 2015-11-25 2016-04-13 布比(北京)网络技术有限公司 Distributed shared general ledger construction method of block chain
CN105593872A (en) * 2013-07-01 2016-05-18 三星电子株式会社 Method and apparatus of data authentication
CN105719185A (en) * 2016-01-22 2016-06-29 杭州复杂美科技有限公司 Block chain data comparison and consensus method
CN105790954A (en) * 2016-03-02 2016-07-20 布比(北京)网络技术有限公司 Method and system for constructing electronic evidence
CN106250721A (en) * 2016-07-28 2016-12-21 杭州云象网络技术有限公司 A kind of electronic copyright protection method based on block chain

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101689195A (en) * 2007-06-08 2010-03-31 阿尔卡特朗讯公司 Use of a prefix hashing tree (pht) for locating service in a station-to-station communication network
CN101741845A (en) * 2009-12-08 2010-06-16 中国科学院声学研究所 Fragmentation-based content authentication method
CN105593872A (en) * 2013-07-01 2016-05-18 三星电子株式会社 Method and apparatus of data authentication
CN105488675A (en) * 2015-11-25 2016-04-13 布比(北京)网络技术有限公司 Distributed shared general ledger construction method of block chain
CN105719185A (en) * 2016-01-22 2016-06-29 杭州复杂美科技有限公司 Block chain data comparison and consensus method
CN105790954A (en) * 2016-03-02 2016-07-20 布比(北京)网络技术有限公司 Method and system for constructing electronic evidence
CN106250721A (en) * 2016-07-28 2016-12-21 杭州云象网络技术有限公司 A kind of electronic copyright protection method based on block chain

Also Published As

Publication number Publication date
CN106815530A (en) 2017-06-09

Similar Documents

Publication Publication Date Title
CN106815530B (en) Data storage method, data verification method and device
Dib et al. Consortium blockchains: Overview, applications and challenges
CN109034809B (en) Block chain generation method and device, block chain node and storage medium
CN107943996B (en) Learning calendar query method and device based on block chain
CN108009445B (en) Semi-centralized trusted data management system
CN108596627B (en) Big data calculation method and system based on block chain and fog calculation
CN111931220B (en) Consensus processing method, device, medium and electronic equipment for block chain network
CN111343241B (en) Graph data updating method, device and system
CN111461751A (en) Block chain-based house property information chain organization method, historical state tracing method and device
CN106547646B (en) Data backup and recovery method and data backup and recovery device
CN114049089A (en) Method and system for constructing government affair big data platform
CN111490870B (en) Seal registration method, verification method and anti-counterfeiting system based on blockchain
CN115983875B (en) Environment-friendly rights and interests value data tracing method and tracing device
CN110602215B (en) Resource processing method based on alliance block chain and alliance block chain system
CN111414417B (en) Video copyright management method based on block chain
CN108537577B (en) Data validity query method and device, storage medium and server
CN110019542A (en) The method, apparatus of the generation method of business connection, generation organizational member database and identification member of the same name in enterprise&#39;s map
CN106570065B (en) Method and system for verifying whether timestamp of file in database is forged
CN115375329A (en) Digital collection transaction traceability anti-counterfeiting management method and system
CN115098738A (en) Service data extraction method and device, storage medium and electronic equipment
CN110851431B (en) Data processing method and device for data center station
CN110602246B (en) Resource distribution method and device based on block chain and block chain system
CN110309312B (en) Associated event acquisition method and device
CN111415105B (en) Comment verification method, node, population thermodynamic diagram data node and management system
CN111917779A (en) Data processing method, device and system based on target account and server equipment

Legal Events

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