CN110691079B - Multi-copy reliability verification method based on block chain encryption - Google Patents

Multi-copy reliability verification method based on block chain encryption Download PDF

Info

Publication number
CN110691079B
CN110691079B CN201910908742.7A CN201910908742A CN110691079B CN 110691079 B CN110691079 B CN 110691079B CN 201910908742 A CN201910908742 A CN 201910908742A CN 110691079 B CN110691079 B CN 110691079B
Authority
CN
China
Prior art keywords
data
copy
verification
node
sig
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
CN201910908742.7A
Other languages
Chinese (zh)
Other versions
CN110691079A (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.)
Northeastern University China
Original Assignee
Northeastern University China
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 Northeastern University China filed Critical Northeastern University China
Priority to CN201910908742.7A priority Critical patent/CN110691079B/en
Publication of CN110691079A publication Critical patent/CN110691079A/en
Application granted granted Critical
Publication of CN110691079B publication Critical patent/CN110691079B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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/602Providing cryptographic facilities or services
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0478Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

The invention relates to the technical field of computer block chains, and provides a multi-copy reliability verification method based on block chain encryption. Firstly, constructing a multi-copy reliability verification framework based on block chain encryption; then, selecting a main node, carrying out primary encryption on original data by a client, generating N copies by using the data subjected to primary encryption by the main node, carrying out secondary encryption on the copies, storing the encrypted copies into a server, and storing the extracted metadata into a block chain; and finally, selecting a main node, verifying the authenticity of the existence of a plurality of copies by comparing whether the encrypted copies which are marked by different copies in the encrypted copy set are the same or not, and verifying the data integrity of each copy by comparing whether the data digests extracted from the block chain and the server are the same or not if no false copy exists. The invention can realize the verification of the authenticity of a plurality of copies and the integrity of each copy data, and improve the efficiency and the accuracy of the verification.

Description

Multi-copy reliability verification method based on block chain encryption
Technical Field
The invention relates to the technical field of computer block chains, in particular to a multi-copy reliability verification method based on block chain encryption.
Background
The blockchain is a distributed database which is maintained in the same global state by untrusted nodes, and technologies such as asymmetric encryption, a blockchain storage structure and a P2P network are used.
The block chain realizes asymmetric encryption by generating a public key and a private key, and mainly can realize two functions: information encryption and data signing. In the process of information encryption, an information sender A encrypts information by using a public key of a receiver B and then sends the information to the receiver B, and the receiver B decrypts the information by using a private key of the receiver B. In the process of digital signature, a sender A encrypts information by using a private key of the sender A and then sends the information to a receiver B, and the receiver B decrypts the information by using a public key of the sender A, so that the information can be ensured to be sent by the sender A.
Merkle trees are used in blocks in a block chain, child nodes are connected pairwise to obtain father nodes through Hash operation, repeated pairwise Hash is carried out, finally, root Hash values are generated, any data in the blocks are tampered, and the data can be detected through the root Hash values. The blocks are stored through a chain structure, the blocks are connected through the PreBlockHash field, and the PreBlockHash fields of all the blocks after any block is modified can be changed.
The blockchain uses a P2P network. Unlike the C/S architecture model of a conventional network, the P2P network has no server and no client, and is composed of a plurality of equal nodes, each of which may be either a client or a server. Without a central node in the P2P network, complete decentralization can be achieved.
In the process of storing the original data in the distributed storage system, in order to ensure high availability of the storage system, the original data is stored as a plurality of copies and is distributed and stored on different servers. In the case of storing multiple copies, some malicious servers cooperate to store one copy of data in order to save storage resources and create the illusion that multiple copies have been stored for the user. On the other hand, server-stored data may be subject to loss and tampering, and users need to verify the integrity of the data frequently. Thus, the multiple copy reliability verification includes two-part verification: firstly, the authenticity of the existence of a plurality of copies is verified; in addition, the integrity of each copy of data is verified. However, the existing block chain technology has no method for verifying the reliability of multiple copies.
Disclosure of Invention
Aiming at the problems in the prior art, the invention provides a method for verifying the reliability of multiple copies based on block chain encryption, which can verify the authenticity of the multiple copies and the integrity of each copy data and improve the verification efficiency and accuracy.
The technical scheme of the invention is as follows:
a multi-copy reliability verification method based on block chain encryption is characterized by comprising the following steps:
step 1: the method for constructing the multi-copy reliability verification framework based on block chain encryption comprises a block chain and a client set Sclient={c1,c2,…,cm,…,cMS server setserver={s1,s2,…,sn,…,sNFourthly, verifying the network;
wherein, cmFor the mth client, M is the total number of clients, and a set of clients SclientThe corresponding signature set is Ssig={sig1,sig2,…,sigm,…,sigM},sigmFor client cmThe signature of (2); snThe number is the nth server, and N is the total number of the servers; the verification network comprises a set of verification nodes Svn={vn1,vn2,…,vnp,…,vnP},vnpThe verification node is the P-th verification node, and P is the total number of the verification nodes;
step 2: carrying out data storage;
step 2.1: from a set of verification nodes SvnSelecting a main node;
step 2.1.1: set of clients SclientRequesting storage of an original data set Sdata={data1,data2,…,dataj,…,dataJ}, verifying the node set SvnEach verification node in (a) from the original data set S by means of a hash functiondataMiddle liftFetch data summary set Sdig={dig1,dig2,…,digj,…,digJAnd use signature sigmTo client cmSigning the data digest; wherein digjAs raw datajThe abstract of (1);
step 2.1.2: randomly selecting a verification node vn from the verification nodes which firstly complete the data abstract extraction operationqAs master node, master node vnqBroadcasting a first message, and stopping data abstract extraction operation after other verification nodes receive the first message;
step 2.2: the client encrypts the original data for the first time, and the host node vnqGenerating N copies by using the data encrypted for the first time, encrypting the copies for the second time, and storing the encrypted copies into a server;
step 2.2.1: client cmGenerating public key pub _ keymPrivate key pri _ keymAnd use the public key pub _ keymTo client cmOf the raw data set Sdata m∈SdataEncrypting to obtain a client cmOf the encrypted data set
Figure BDA0002214082620000021
Forming an encrypted data set
Figure BDA0002214082620000022
Step 2.2.2: host node vnqUsing an encrypted data set Sdata *Generating N copies Sreplica={r1,r2,…,rn,…,rNAnd randomly generating N different replica marks Stag={tag1,tag2,…,tagn,…,tagNMark tag with duplicatenFor the copy rnEncrypted to obtain a copy rnIs encrypted copy r ofn'form an encrypted copy set S'replica={r1',r2',…,rn',…,rN'};
Step 2.2.3: master and slaveNode vnqWill encrypt the copy rn' storage Server sn
Step 2.3: host node vnqStoring metadata of original data into a block chain;
step 2.3.1: host node vnqExtracting a data summary of each data in each copy to form metadata<sig,dig,tag>(ii) a Wherein dig is the main node vnqExtracting a data summary from each datum in each copy, wherein sig is a signature corresponding to a data summary dig, and tag is a copy mark of the copy corresponding to the data summary dig;
step 2.3.2: host node vnqConstructing a Merkle tree by using the extracted metadata, packaging the Merkle tree into a block, connecting the block to a block chain, broadcasting a second message, and synchronizing the state of the block chain after other verification nodes receive the second message;
and step 3: performing multi-copy reliability verification based on block chain encryption;
step 3.1: from a set of verification nodes SvnSelecting a main node;
step 3.1.1: client side { c1,c2,…,cm,…,cMSign { sig }1,sig2,…,sigm,…,sigMIs sent to a verification node set SvnEach verifying node of;
step 3.1.2: set of verification nodes SvnEach verification node in the block chain inquires data on the block chain from the tail of the block chain to the head of the block chain;
step 3.1.3: each verifying node queries to a signature of { sig1,sig2,…,sigm,…,sigMAll broadcast messages after the data on the chain, when more than P/2 verification nodes inquire the same data summary digestonFrom query to data digestonRandomly selecting one verification node vn from the verification nodesoIs a master node, a master node vnoBroadcasting a third message, and stopping data query operation after other verification nodes receive the third message;
step 3.2: verifying the authenticity of the presence of multiple copies:
step 3.2.1: host node vnoFrom the server set SserverQuery results in encrypted copy set S'replica
Step 3.2.2: if copy set S 'is encrypted'replicaIf the encrypted copies are the same by using different copy marks, informing the client of the existence of false copies; if copy set S 'is encrypted'replicaIf the copies encrypted by using different copy marks are different, the step 3.3 is carried out;
step 3.3: verifying the integrity of each copy of data;
step 3.3.1: host node vnoFrom encrypted copy set S'replicaMiddle extraction client side { c1,c2,…,cm,…,cMGet the data digest ofoff
Step 3.3.2: if digestoffAnd digestonIf the verification result is the same, the client is informed that the multi-copy verification is correct; if digestoffAnd digestonAnd if not, informing the client that the data integrity is damaged.
The invention has the beneficial effects that:
the invention constructs a multi-copy reliability verification framework based on block chain encryption, after a client and a main node respectively use a public key and a copy mark to carry out double encryption on original data, an encrypted copy is stored in a server, metadata < sig, dig, tag > of the original data is stored in a block chain, then whether the copy encrypted by using different copy marks in an encrypted copy set is the same or not is judged by a selected main node to judge whether a false copy exists or not, when a plurality of copies exist, the data integrity of the copies is judged by comparing a data abstract extracted from the block chain with a data abstract extracted from the server, the authenticity of the plurality of copies and the data integrity of each copy are verified, and the verification efficiency and the verification accuracy are improved.
Drawings
FIG. 1 is a block chain encryption based multi-copy reliability verification framework according to the present invention;
FIG. 2 is a flow chart of the data storage phase of the multi-copy reliability verification method based on block chain encryption according to the present invention;
FIG. 3 is a flow chart of the data verification phase of the multi-copy reliability verification method based on block chain encryption according to the present invention;
Detailed Description
The invention will be further described with reference to the accompanying drawings and specific embodiments.
The multi-copy reliability verification comprises two parts of verification: firstly, the authenticity of the existence of a plurality of copies is verified; in addition, the integrity of each copy of data is verified. The asymmetric encryption mechanism of blockchains, blockchain structure, and P2P network are well suited for multi-copy authenticity verification. The invention discloses a method for verifying reliability of multiple copies based on block chain encryption, which comprises the following steps:
step 1: constructing a multi-copy reliability verification framework based on block chain encryption as shown in FIG. 1 comprises a block chain and a client set Sclient={c1,c2,…,cm,…,cMS server setserver={s1,s2,…,sn,…,sNFourthly, verifying the network;
wherein, cmFor the mth client, M is the total number of clients, and a set of clients SclientThe corresponding signature set is Ssig={sig1,sig2,…,sigm,…,sigM},sigmFor client cmThe signature of (2); snThe number is the nth server, and N is the total number of the servers; the verification network comprises a set of verification nodes Svn={vn1,vn2,…,vnp,…,vnP},vnpIs the P-th verification node, and P is the total number of verification nodes.
In this embodiment, the client set Sclient={c1,c2}, client set SclientThe corresponding signature set is Ssig={sig1,sig2H, server set Sserver={s1,s2,s3}, set of verification nodesSvn={vn1,vn2,…,vnp,…,vn5}
Step 2: carrying out data storage;
step 2.1: from a set of verification nodes SvnSelecting a main node;
step 2.1.1: set of clients SclientRequesting storage of an original data set Sdata={data1,data2,…,dataj,…,dataJ}, verifying the node set SvnEach verification node in (a) from the original data set S by means of a hash functiondataExtracted data abstract set Sdig={dig1,dig2,…,digj,…,digJAnd use signature sigmTo client cmSigning the data digest; wherein digjAs raw datajThe abstract of (1);
step 2.1.2: randomly selecting a verification node vn from the verification nodes which firstly complete the data abstract extraction operationqAs master node, master node vnqBroadcasting a first message, and stopping data abstract extraction operation after other verification nodes receive the first message;
step 2.2: the client encrypts the original data for the first time, and the host node vnqGenerating N copies by using the data encrypted for the first time, encrypting the copies for the second time, and storing the encrypted copies into a server;
step 2.2.1: client cmGenerating public key pub _ keymPrivate key pri _ keymAnd use the public key pub _ keymTo client cmOf the raw data set Sdata m∈SdataEncrypting to obtain a client cmOf the encrypted data set
Figure BDA0002214082620000041
Forming an encrypted data set
Figure BDA0002214082620000042
Step 2.2.2: host node vnqUsing an encrypted data set Sdata *Generating N copies Sreplica={r1,r2,…,rn,…,rNAnd randomly generating N different replica marks Stag={tag1,tag2,…,tagn,…,tagNMark tag with duplicatenFor the copy rnEncrypted to obtain a copy rnIs encrypted copy r ofn'form an encrypted copy set S'replica={r1',r2',…,rn',…,rN'};
Step 2.2.3: host node vnqWill encrypt the copy rn' storage Server sn
Step 2.3: host node vnqStoring metadata of original data into a block chain;
step 2.3.1: host node vnqExtracting a data summary of each data in each copy to form metadata<sig,dig,tag>(ii) a Wherein dig is the main node vnqExtracting a data summary from each datum in each copy, wherein sig is a signature corresponding to a data summary dig, and tag is a copy mark of the copy corresponding to the data summary dig;
step 2.3.2: host node vnqAnd constructing a Merkle tree by using the extracted metadata, packaging the Merkle tree into a block, connecting the block to a block chain, broadcasting a second message, and synchronizing the state of the block chain after other verification nodes receive the second message.
In this embodiment, the client c1、c2Respectively storing the original data in File files with the size of 200M1、File2In (1). Client c1、c2File requesting to store original data1、File2Verification node { vn1,vn2,…,vnp,…,vn5Extracting a data abstract set S from original data by a hash functiondigAnd use the signature sigmTo client cmThe data digest of (a) is signed. The verification node which completes the data abstract extraction operation firstly is vn1,vn1Now is the master nodeMaster node vn1The first message is broadcast to let other verification nodes stop the data digest extraction operation.
Client c1、c2Respectively generating public keys pub _ key1、pub_key2And respectively use the public key pub _ key1、pub_key2For File1、File2Carrying out encryption to obtain an encrypted data set Sdata *. Host node vn1Using an encrypted data set Sdata *Generate 3 copies r1,r2,,r3And randomly generates 3 different replica tags { tag }1,tag2,tag3Using a duplicate tag { tag }1,tag2,tag3Are respectively applied to the copies r1,r2,,r3Encrypting to obtain an encrypted copy set S'replica={r1',r2',r3', and will encrypt a copy r1',r2',r3' } respectively stores in the server s1,s2,s3}。
Host node vn1Extracting a data summary of each data in each copy to form metadata<sig,dig,tag>And constructing a Merkle tree by using the extracted metadata, and packaging the Merkle tree into block blocks to be connected on the block chain.
And step 3: performing multi-copy reliability verification based on block chain encryption;
step 3.1: from a set of verification nodes SvnSelecting a main node;
step 3.1.1: client side { c1,c2,…,cm,…,cMSign { sig }1,sig2,…,sigm,…,sigMIs sent to a verification node set SvnEach verifying node of;
step 3.1.2: set of verification nodes SvnEach verification node in the block chain inquires data on the block chain from the tail of the block chain to the head of the block chain;
step 3.1.3: each verifying node queries to a signature of { sig1,sig2,…,sigm,…,sigMAll broadcast messages after the data on the chain, when more than P/2 verification nodes inquire the same data summary digestonFrom query to data digestonRandomly selecting one verification node vn from the verification nodesoIs a master node, a master node vnoBroadcasting a third message, and stopping data query operation after other verification nodes receive the third message;
step 3.2: verifying the authenticity of the presence of multiple copies:
step 3.2.1: host node vnoFrom the server set SserverQuery results in encrypted copy set S'replica
Step 3.2.2: if copy set S 'is encrypted'replicaIf the copies encrypted by using different copy marks are the same, informing the client that a false copy exists and the server does not store the copy; if copy set S 'is encrypted'replicaIf the copies encrypted by using different copy marks are different, the step 3.3 is carried out;
step 3.3: verifying the integrity of each copy of data;
step 3.3.1: host node vnoFrom encrypted copy set S'replicaMiddle extraction client side { c1,c2,…,cm,…,cMGet the data digest ofoff
Step 3.3.2: if digestoffAnd digestonIf the verification result is the same, the client is informed that the multi-copy verification is correct; if digestoffAnd digestonAnd if not, informing the client that the data integrity is damaged.
In this embodiment, client { c }1,c2Sign { sig }1,sig2Sending to all verification nodes { vn }1,vn2,…,vn5And querying data on the blockchain from the blockchain tail to the blockchain head by each verification node, wherein the signature of each verification node is { sig }1,sig2All broadcast messages after the on-chain data, when more than 5/2 verification nodes inquire the same data digestonFrom query to data digestonIn the verification nodeSelecting a verification node as a main node by the machine, vn2Is selected to be vn2Is a master node, a master node vn2Broadcasting the third message causes the other authentication nodes to stop the data query operation.
Host node vn2Slave server s1、s2、s3Respectively inquired to obtain encrypted copies r1'、r2'、r3';r1'、r2'、r3'the encrypted copies are marked differently with different copies so that all servers independently store the encrypted copies of the original data, beginning to verify the integrity of each copy's data. Host node vn2From the encrypted copy r1'、r2'、r3' extract client { c1,c2Get the data digest ofoffBy comparing digestoffAnd digestonAnd if the data are the same, verifying the integrity of each copy data, and feeding back the verification result to the client.
It is to be understood that the above-described embodiments are only a few embodiments of the present invention, and not all embodiments. The above examples are only for explaining the present invention and do not constitute a limitation to the scope of protection of the present invention. All other embodiments, which can be derived by those skilled in the art from the above-described embodiments without any creative effort, namely all modifications, equivalents, improvements and the like made within the spirit and principle of the present application, fall within the protection scope of the present invention claimed.

Claims (1)

1. A multi-copy reliability verification method based on block chain encryption is characterized by comprising the following steps:
step 1: the method for constructing the multi-copy reliability verification framework based on block chain encryption comprises a block chain and a client set Sclient={c1,c2,…,cm,…,cMS server setserver={s1,s2,…,sn,…,sNFourthly, verifying the network;
wherein, cmFor the mth client, M is the total number of clientsNumber, client set SclientThe corresponding signature set is Ssig={sig1,sig2,…,sigm,…,sigM},sigmFor client cmThe signature of (2); snThe number is the nth server, and N is the total number of the servers; the verification network comprises a set of verification nodes Svn={vn1,vn2,…,vnp,…,vnP},vnpThe verification node is the P-th verification node, and P is the total number of the verification nodes;
step 2: carrying out data storage;
step 2.1: from a set of verification nodes SvnSelecting a main node;
step 2.1.1: set of clients SclientRequesting storage of an original data set Sdata={data1,data2,…,dataj,…,dataJ}, verifying the node set SvnEach verification node in (a) from the original data set S by means of a hash functiondataExtracted data abstract set Sdig={dig1,dig2,…,digj,…,digJAnd use signature sigmTo client cmSigning the data digest; wherein digjAs raw datajThe abstract of (1);
step 2.1.2: randomly selecting a verification node vn from the verification nodes which firstly complete the data abstract extraction operationqAs master node, master node vnqBroadcasting a first message, and stopping data abstract extraction operation after other verification nodes receive the first message;
step 2.2: the client encrypts the original data for the first time, and the host node vnqGenerating N copies by using the data encrypted for the first time, encrypting the copies for the second time, and storing the encrypted copies into a server;
step 2.2.1: client cmGenerating public key pub _ keymPrivate key pri _ keymAnd use the public key pub _ keymTo client cmOf the raw data set Sdata m∈SdataEncrypting to obtain a client cmOf the encrypted data set
Figure FDA0002214082610000011
Forming an encrypted data set
Figure FDA0002214082610000012
Step 2.2.2: host node vnqUsing an encrypted data set Sdata *Generating N copies Sreplica={r1,r2,…,rn,…,rNAnd randomly generating N different replica marks Stag={tag1,tag2,…,tagn,…,tagNMark tag with duplicatenFor the copy rnEncrypted to obtain a copy rnIs encrypted copy r ofn'form an encrypted copy set S'replica={r1',r2',…,rn',…,rN'};
Step 2.2.3: host node vnqWill encrypt the copy rn' storage Server sn
Step 2.3: host node vnqStoring metadata of original data into a block chain;
step 2.3.1: host node vnqExtracting a data summary of each data in each copy to form metadata<sig,dig,tag>(ii) a Wherein dig is the main node vnqExtracting a data summary from each datum in each copy, wherein sig is a signature corresponding to a data summary dig, and tag is a copy mark of the copy corresponding to the data summary dig;
step 2.3.2: host node vnqConstructing a Merkle tree by using the extracted metadata, packaging the Merkle tree into a block, connecting the block to a block chain, broadcasting a second message, and synchronizing the state of the block chain after other verification nodes receive the second message;
and step 3: performing multi-copy reliability verification based on block chain encryption;
step 3.1: from a set of verification nodes SvnSelecting a main node;
step 3.1.1: client side { c1,c2,…,cm,…,cMSign { sig }1,sig2,…,sigm,…,sigMIs sent to a verification node set SvnEach verifying node of;
step 3.1.2: set of verification nodes SvnEach verification node in the block chain inquires data on the block chain from the tail of the block chain to the head of the block chain;
step 3.1.3: each verifying node queries to a signature of { sig1,sig2,…,sigm,…,sigMAll broadcast messages after the data on the chain, when more than P/2 verification nodes inquire the same data summary digestonFrom query to data digestonRandomly selecting one verification node vn from the verification nodesoIs a master node, a master node vnoBroadcasting a third message, and stopping data query operation after other verification nodes receive the third message;
step 3.2: verifying the authenticity of the presence of multiple copies:
step 3.2.1: host node vnoFrom the server set SserverQuery results in encrypted copy set S'replica
Step 3.2.2: if copy set S 'is encrypted'replicaIf the encrypted copies are the same by using different copy marks, informing the client of the existence of false copies; if copy set S 'is encrypted'replicaIf the copies encrypted by using different copy marks are different, the step 3.3 is carried out;
step 3.3: verifying the integrity of each copy of data;
step 3.3.1: host node vnoFrom encrypted copy set S'replicaMiddle extraction client side { c1,c2,…,cm,…,cMGet the data digest ofoff
Step 3.3.2: if digestoffAnd digestonIf the verification result is the same, the client is informed that the multi-copy verification is correct; if digestoffAnd digestonAnd if not, informing the client that the data integrity is damaged.
CN201910908742.7A 2019-09-25 2019-09-25 Multi-copy reliability verification method based on block chain encryption Active CN110691079B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910908742.7A CN110691079B (en) 2019-09-25 2019-09-25 Multi-copy reliability verification method based on block chain encryption

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910908742.7A CN110691079B (en) 2019-09-25 2019-09-25 Multi-copy reliability verification method based on block chain encryption

Publications (2)

Publication Number Publication Date
CN110691079A CN110691079A (en) 2020-01-14
CN110691079B true CN110691079B (en) 2021-07-13

Family

ID=69110574

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910908742.7A Active CN110691079B (en) 2019-09-25 2019-09-25 Multi-copy reliability verification method based on block chain encryption

Country Status (1)

Country Link
CN (1) CN110691079B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112749416B (en) * 2021-01-27 2023-09-19 太初道数字科技(湖北)集团有限公司 Health industry brand evaluation method based on brand value chain data model
CN113556327B (en) * 2021-06-29 2022-09-20 中国人民解放军战略支援部队信息工程大学 Block chain-based false flow rule injection attack detection and prevention system and method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106296359A (en) * 2016-08-13 2017-01-04 深圳市樊溪电子有限公司 Credible electric power networks transaction platform based on block chain technology
CN106919476A (en) * 2017-02-24 2017-07-04 中国科学院软件研究所 Data safety backup method, client and cloud server terminal based on alliance's chain
CN107171794A (en) * 2017-06-27 2017-09-15 葛峰 A kind of electronic document based on block chain and intelligent contract signs method
CN108520293A (en) * 2018-04-03 2018-09-11 中兴能源(天津)有限公司 A kind of product false proof source tracing method, device, server and storage medium
CN108959563A (en) * 2018-07-04 2018-12-07 东北大学 A kind of expansible block chain query method and system of capacity
CN109635595A (en) * 2018-12-29 2019-04-16 杭州趣链科技有限公司 A kind of data tamper resistant method based on block chain

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10361870B2 (en) * 2017-09-14 2019-07-23 The Toronto-Dominion Bank Management of cryptographically secure exchanges of data using permissioned distributed ledgers
CN110011795B (en) * 2019-04-12 2021-07-30 郑州轻工业学院 Symmetric group key negotiation method based on block chain

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106296359A (en) * 2016-08-13 2017-01-04 深圳市樊溪电子有限公司 Credible electric power networks transaction platform based on block chain technology
CN106919476A (en) * 2017-02-24 2017-07-04 中国科学院软件研究所 Data safety backup method, client and cloud server terminal based on alliance's chain
CN107171794A (en) * 2017-06-27 2017-09-15 葛峰 A kind of electronic document based on block chain and intelligent contract signs method
CN108520293A (en) * 2018-04-03 2018-09-11 中兴能源(天津)有限公司 A kind of product false proof source tracing method, device, server and storage medium
CN108959563A (en) * 2018-07-04 2018-12-07 东北大学 A kind of expansible block chain query method and system of capacity
CN109635595A (en) * 2018-12-29 2019-04-16 杭州趣链科技有限公司 A kind of data tamper resistant method based on block chain

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《Blockchain-Based Outsourced Storage Schema in untrusted environment》;KUN HAO,et.al;《IEEE》;20190912;全文 *
《区块链的存储容量可扩展模型》;贾大宇等;《计算机科学与探索》;20181231;全文 *

Also Published As

Publication number Publication date
CN110691079A (en) 2020-01-14

Similar Documents

Publication Publication Date Title
US11934494B2 (en) Method and system for verifying integrity of a digital asset using a distributed hash table and a peer to-peer distributed ledger
CN110998556B (en) Data isolation in a blockchain network
CN111066046B (en) Replay attack resistant authentication protocol
EP3413507B1 (en) Electronic documents certification
US7519824B1 (en) Time stamping method employing multiple receipts linked by a nonce
CN110602099B (en) Privacy protection method based on verifiable symmetric searchable encryption
US10754848B2 (en) Method for registration of data in a blockchain database and a method for verifying data
CN110800008A (en) Building block chain world state mercker patricia dictionary tree subtree
US20200186354A1 (en) Digital composition hashing
CN110771093B (en) Method and system for proving existence of digital document
JP2017098806A (en) Existence proof program and existence proof server for electronic data
JP6275302B2 (en) Existence proof device, existence proof method, and program therefor
JPH11338780A (en) Method and device for acknowledging and safely storing electronic document
CN105335667A (en) Innovation and creativity data processing method, device and system and certificate storing equipment
CN108764902B (en) Method, node and blockchain system for storing data
CN110691079B (en) Multi-copy reliability verification method based on block chain encryption
CN107094075B (en) Data block dynamic operation method based on convergence encryption
CN112559625A (en) Power business material information storage system and method based on block chain
US11316698B2 (en) Delegated signatures for smart devices
CN113127562A (en) Low-redundancy block chain data storage and retrieval method and system
CN110691078B (en) Block chain-based data dynamic reliability verification method
CN109918451B (en) Database management method and system based on block chain
CN110673966A (en) Data interaction method based on block chain up-link down cooperation
CN110851848B (en) Privacy protection method for symmetric searchable encryption
CN110601857B (en) Data interaction method based on local-global block chain cooperation

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