CN109379343B - Heterogeneous consensus method of block chains and terminal - Google Patents
Heterogeneous consensus method of block chains and terminal Download PDFInfo
- Publication number
- CN109379343B CN109379343B CN201811128351.5A CN201811128351A CN109379343B CN 109379343 B CN109379343 B CN 109379343B CN 201811128351 A CN201811128351 A CN 201811128351A CN 109379343 B CN109379343 B CN 109379343B
- Authority
- CN
- China
- Prior art keywords
- node
- block
- fragment
- decision
- consensus
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
The invention provides a heterogeneous consensus method and a terminal of a block chain, wherein the method comprises the following steps: screening out a unique node as a decision node of a block in each round of consensus process; receiving the sub-message block sent by each fragment through the decision node, and respectively verifying the sub-message block sent by each fragment; merging the sub-message blocks which pass the verification to obtain a merged message block; respectively sending the message blocks to the decision nodes of each segment through the decision nodes of the block; if first signature information sent back by the fragmentation decision node exceeding a preset number threshold is received, judging that the message block passes verification; and the first signature information is the signature information which is sent back after the decision node of the fragment verifies the message block and passes the verification. The invention can prevent the block chain safety problem caused by hacker attack to a certain extent, and improves the block chain safety.
Description
Technical Field
The present invention relates to the field of block chain technologies, and in particular, to a heterogeneous consensus method and a terminal for a block chain.
Background
The consensus mechanism is one of the core technologies of blockchains. The consensus mechanism is a mechanism for users who are not trusted with each other in the blockchain to achieve trust, and is a basis for record transmission, verification and replication in the blockchain. The current consensus mechanisms mainly include Proof of workload (Proof of Work, PoW), Proof of rights of interest (Proof of stamp, PoS), Proof of delegation of rights of interest (DPoS), and Practical Byzantine Fault-tolerant algorithm (PBFT), as well as variations of these 4 consensus mechanisms. Of course, the current novel distributed ledger technology, for example, the novel distributed ledger technology represented by Directed Acyclic Graph (DAG), has a self-contained consensus mechanism. Existing consensus mechanisms are more or less problematic. For example, the PoW consensus mechanism has the defects of resource waste, long consensus time, and consensus monopoly and natural 51% attack; the PoS consensus mechanism has the defects of long-chain attack, consensus monopoly and difficult consensus proving; the DPoS consensus mechanism has the defects of centralization, long-chain attack and difficult consensus certification; the PBFT consensus mechanism has the defect that the consensus time exponentially increases along with the number of consensus nodes; the novel DAG-based self-contained consensus distributed account book technology has the problems of weak safety and consensus centralization.
Security is the most important attribute of the consensus mechanism. The consensus mechanism is the core of the blockchain, and the security of the consensus mechanism directly determines the security of the whole blockchain system. Therefore, enhancing the security of the consensus mechanism is the key to enhance the security of the whole blockchain system. Most of the current consensus mechanisms ignore or only consider a part of the security for usability, or just consider the security against the damage of the internal people of the system, and it can be said that the current consensus mechanisms only consider the security against the hacking.
Most of the current block chains adopt single consensus or a consensus mechanism with multiple consensus sequences overlapped, for example, a block chain system adopts a PoW + PBFT consensus mechanism, and most of the overlapped consensus mechanisms use PoW as preliminary consensus and then adopt other consensus mechanisms. The consensus mechanism of this model does not fundamentally solve the above-mentioned drawbacks faced by the consensus mechanism.
Disclosure of Invention
The technical problem to be solved by the invention is as follows: the invention provides a heterogeneous consensus method and a terminal of a block chain, which can prevent the block chain security problem caused by hacker attack to a certain extent and improve the block chain security.
In order to solve the above technical problem, the present invention provides a heterogeneous consensus method for a block chain, comprising the following steps:
s1: screening out a unique node as a decision node of a block in each round of consensus process;
s2: receiving the sub-message block sent by each fragment through the decision node, and respectively verifying the sub-message block sent by each fragment;
s3: merging the sub-message blocks which pass the verification to obtain a merged message block;
s4: respectively sending the message blocks to the decision nodes of each segment through the decision nodes of the block;
s5: if first signature information sent back by the fragmentation decision node exceeding a preset number threshold is received, judging that the message block passes verification; and the first signature information is the signature information which is sent back after the decision node of the fragment verifies the message block and passes the verification.
The invention also provides a heterogeneous consensus terminal of a block chain, which comprises a memory, a processor and a computer program stored on the memory and capable of running on the processor, wherein the processor executes the computer program to realize the following steps:
s1: screening out a unique node as a decision node of a block in each round of consensus process;
s2: receiving the sub-message block sent by each fragment through the decision node, and respectively verifying the sub-message block sent by each fragment;
s3: merging the sub-message blocks which pass the verification to obtain a merged message block;
s4: respectively sending the message blocks to the decision nodes of each segment through the decision nodes of the block;
s5: if first signature information sent back by the fragmentation decision node exceeding a preset number threshold is received, judging that the message block passes verification; and the first signature information is the signature information which is sent back after the decision node of the fragment verifies the message block and passes the verification.
The invention has the beneficial effects that:
the invention provides a heterogeneous consensus method and a terminal of a block chain, wherein in each round of consensus process, a unique node is selected as a decision node of a block, a sub-message block sent by the decision node of each fragment is verified through the decision node, the sub-message blocks passing the verification are merged to obtain a merged message block, the message block is respectively sent to the decision node corresponding to each fragment for verification, when the number passing the verification is greater than a preset number threshold value, the message block is indicated to pass the verification, and the message block can be broadcasted; by the method, a new decision node of the block is selected in each round of consensus process, so that an attacker cannot judge a leader of the decision (the decision node of the fragments), the whole consensus process cannot be controlled, meanwhile, the consensus algorithm adopted by each fragment is different, the attacker cannot control all the fragments through one attack strategy, the whole consensus process cannot be controlled, the attacker needs to control most of the nodes of the system in the consensus process, the attack difficulty is increased undoubtedly, the problem that the block decision is seriously wrong due to the fact that a hacker attacks one fragment node in a block chain is solved, and the safety of the block chain is improved.
Drawings
Fig. 1 is a schematic diagram illustrating a block chain heterogeneous consensus method according to a first embodiment of the present invention;
fig. 2 is a schematic structural diagram of a heterogeneous co-located terminal of a block chain according to an embodiment of the present invention;
description of reference numerals:
1. a memory; 2. a processor.
Detailed Description
In order to explain technical contents, objects and effects of the present invention in detail, the following detailed description is given with reference to the accompanying drawings in conjunction with the embodiments.
Referring to fig. 1, the present invention provides a heterogeneous consensus method for a block chain, comprising the following steps:
s1: screening out a unique node as a decision node of a block in each round of consensus process;
s2: receiving the sub-message block sent by each fragment through the decision node, and respectively verifying the sub-message block sent by each fragment;
s3: merging the sub-message blocks which pass the verification to obtain a merged message block;
s4: respectively sending the message blocks to the decision nodes of each segment through the decision nodes of the block;
s5: if first signature information sent back by the fragmentation decision node exceeding a preset number threshold is received, judging that the message block passes verification; and the first signature information is the signature information which is sent back after the decision node of the fragment verifies the message block and passes the verification.
From the above description, the present invention provides a heterogeneous consensus method for a block chain, where in each round of consensus process, a unique node is selected as a decision node for a block, a sub-message block sent by the decision node of each segment is verified by the decision node, the sub-message blocks that pass the verification are merged to obtain a merged message block, and the message block is sent to the decision node corresponding to each segment for verification, and when the number that passes the verification is greater than a preset number threshold, the message block is verified to pass and can be broadcasted; by the method, a new decision node of the block is selected in each round of consensus process, so that an attacker cannot judge a leader of the decision, the whole consensus process cannot be controlled, the consensus algorithm adopted by each fragment is different, the attacker cannot control all the fragments through one attack strategy, the whole consensus process cannot be controlled, the attacker wants to control most nodes of a system in the consensus process, the attack difficulty is increased undoubtedly, the problem that the key fault of the block decision is caused by the fact that a hacker attacks one fragment node in a block chain is solved, and the safety of the block chain is improved.
Further, the S1 specifically includes:
in each round of consensus process, calculating a competition value corresponding to each node to be selected through a preset first formula to obtain a plurality of competition values; each node to be selected is a decision node corresponding to each fragment;
screening out competition values meeting preset conditions from the competition values to obtain a plurality of first competition values;
publishing a node corresponding to each first competition value and a public key used by the node for data decryption;
within a preset time, acquiring the minimum value of all published first competition values to obtain a first minimum competition value;
and screening the node corresponding to the first minimum competition value as a decision node of the block.
As can be seen from the above description, by the above method, in each round of consensus process, the node corresponding to the minimum competition value is screened out as the decision node of the block, so that an attacker cannot determine the decision node in the round of consensus process in advance, and the security in the block chain consensus process is improved; the node corresponding to each competition value and the public key used by the node for data decryption are published, so that the fragmented decision nodes can conveniently verify the signature information of the sub-message blocks through the public key.
Further, the first formula specifically includes:
wherein, the CiThe sk is a competition value of the ith node to be selectediRepresenting a private key used for encrypting data on the node to be selected, r representing the number of rounds of the current consensus process, QrA random number corresponding to the r-th round of consensus process is represented (i.e. a random number is generated in each round of consensus process),representation using the private key skiFor r and QrCarry out data signature H1Is a hash function.
As can be seen from the above description, by the above method, the calculated corresponding competition values are different for each node to be selected in each round of consensus process, so that the fragmented decision nodes obtained in each round of consensus process are randomly generated, and the probability that the fragmented decision nodes are attacked can be greatly reduced.
Further, the S2 specifically includes:
receiving, by a decision node of the block, a sub-message block sent by each tile;
the block is composed of a plurality of fragmented sub-message blocks.
Verifying the correctness of the signature information of the sub message blocks sent by the corresponding fragment decision nodes through the public key of the decision node of each fragment; and the signature information is obtained by the decision node of the fragment signing through a private key stored on the decision node.
According to the description, the sub message blocks sent by the decision nodes of each fragment can be effectively verified by the method, so that the safety of the consensus process is improved; meanwhile, the public key of the decision node of each fragment can be obtained through the published node and the public key for data decryption on the node;
further, the S4 specifically includes:
and the decision node controlling the block respectively sends the message block to the decision node of each fragment through a practical Byzantine fault-tolerant algorithm.
From the above description, it can be ensured that the message block is sent to the decision node of the first segment, and the fault tolerance of the system is improved.
Further, the heterogeneous consensus method for the block chains further includes:
distributing the newly added nodes to corresponding fragments through a preset second formula;
the second formula is x ═ sToi (add)i) % n, wherein i is the serial number of the node, x is the serial number of the fragment to be distributed by the node i, addi represents the address of the node i, and sToi represents a function of converting the address sequence into an integer; specifically, the function that converts the address sequence into integers uses the strtol function in the C-standard library.
Further, the heterogeneous consensus method for the block chains further includes:
presetting consensus algorithm set Co ═ Co1,Co2,…,ComI.e. preset m consensus algorithms, where CokK is 1, 2.. times.m, which represents a consensus algorithm with a rank number k;
if a new fragment is generated in the block chain, the sequence number of the consensus algorithm adopted by the new fragment isWherein the g represents a sequence number of a new fragment, theAnd expressing the hash value corresponding to the new fragmentation decision node, calculating the hash value through a first formula, and expressing the remainder operation.
Referring to fig. 2, the heterogeneous block chain common-identity terminal provided by the present invention includes a memory 1, a processor 2 and a computer program stored in the memory 1 and capable of running on the processor 2, where the processor 2 implements the following steps when executing the program:
s1: screening out a unique node as a decision node of a block in each round of consensus process;
s2: receiving the sub-message block sent by each fragment through the decision node, and respectively verifying the sub-message block sent by each fragment;
s3: merging the sub-message blocks which pass the verification to obtain a merged message block;
s4: respectively sending the message blocks to the decision nodes of each segment through the decision nodes of the block;
s5: if first signature information sent back by the fragmentation decision node exceeding a preset number threshold is received, judging that the message block passes verification; and the first signature information is the signature information which is sent back after the decision node of the fragment verifies the message block and passes the verification.
Further, in the heterogeneous consensus terminal of a block chain, the S1 is specifically:
in each round of consensus process, calculating a competition value corresponding to each node to be selected through a preset first formula to obtain a plurality of competition values; each node to be selected is a decision node corresponding to each fragment;
screening out competition values meeting preset conditions from the competition values to obtain a plurality of first competition values;
publishing a node corresponding to each first competition value and a public key used by the node for data decryption;
within a preset time, acquiring the minimum value of all published first competition values to obtain a first minimum competition value;
and screening the node corresponding to the first minimum competition value as a decision node of the block.
Further, in the heterogeneous common-knowledge terminal of a block chain, the first formula specifically includes:
wherein, the CiThe sk is a competition value of the ith node to be selectediRepresenting a private key used for encrypting data on the node to be selected, r representing the number of rounds of the current consensus process, QrA random number corresponding to the r-th round of consensus process is represented,representation using the private key skiFor r and QrCarry out data signature H1Is a hash function.
Further, in the heterogeneous consensus terminal of a block chain, the S2 is specifically:
receiving, by a decision node of the block, a sub-message block sent by each tile;
verifying the correctness of the signature information of the sub message blocks sent by the corresponding fragment decision nodes through the public key of the decision node of each fragment; and the signature information is obtained by the decision node of the fragment signing through a private key stored on the decision node.
Further, in the heterogeneous consensus terminal of a block chain, the S4 is specifically:
and the decision node controlling the block respectively sends the message block to the decision node of each fragment through a practical Byzantine fault-tolerant algorithm.
Further, the heterogeneous consensus method for the block chains further includes:
distributing the newly added nodes to corresponding fragments through a preset second formula;
the second formula is x ═ sToi (add)i) % n, wherein i is the serial number of the node, x is the serial number of the fragment to be distributed by the node i, addi represents the address of the node i, and sToi represents a function of converting the address sequence into an integer; specifically, the function that converts the address sequence into integers uses the strtol function in the C-standard library.
Further, the heterogeneous consensus method for the block chains further includes:
presetting consensus algorithm set Co ═ Co1,Co2,…,ComI.e. preset m consensus algorithms, where CokK is 1, 2.. times.m, which represents a consensus algorithm with a rank number k;
if a new fragment is generated in the block chain, the sequence number of the consensus algorithm adopted by the new fragment isWherein the g represents a sequence number of a new fragment, theAnd the hash value corresponding to the new fragmentation decision node is represented, and the percentage represents the remainder operation.
Referring to fig. 1, a first embodiment of the present invention is:
the invention provides a heterogeneous consensus method of a block chain, which comprises the following steps:
distributing the newly added nodes to corresponding fragments through a preset formula;
the formula is x ═ sToi (add)i) % n, wherein i is the serial number of the node, x is the serial number of the fragment to be distributed by the node i, addi represents the address of the node i, and sToi represents a function of converting the address sequence into an integer; specifically, the function that converts the address sequence into integers uses the strtol function in the C-standard library.
Presetting consensus algorithm set Co ═ Co1,Co2,…,ComI.e. preset m consensus algorithms,wherein CokK is 1, 2.. times.m, which represents a consensus algorithm with a rank number k;
if a new fragment is generated in the block chain, the sequence number of the consensus algorithm adopted by the new fragment isWherein the g represents a sequence number of a new fragment, theAnd the hash value corresponding to the new fragmentation decision node is represented, and the percentage represents the remainder operation.
Screening out a unique node as a decision node of a block in each round of consensus process;
in each round of consensus process, screening out a unique node as a decision node of a block, specifically:
in each round of consensus process, calculating a competition value corresponding to each node to be selected through a preset first formula to obtain a plurality of competition values; each node to be selected is a decision node corresponding to each fragment; selecting a competition value meeting a preset condition from the plurality of competition values (namely, selecting a competition value smaller than a preset competition value threshold, wherein the selection of the threshold is related to the number of nodes to be selected participating in competition and the number of nodes to be selected and taken out, and can be set according to actual requirements), and obtaining a plurality of first competition values;
publishing a node corresponding to each first competition value and a public key used by the node for data decryption;
within a preset time, acquiring the minimum value of all published first competition values to obtain a first minimum competition value;
and screening the node corresponding to the first minimum competition value as a decision node of the block.
Wherein the first formula specifically is:
wherein, the CiThe sk is a competition value of the ith node to be selectediRepresenting a private key used for encrypting data on the node to be selected, r representing the number of rounds of the current consensus process, QrA random number corresponding to the r-th round of consensus process is represented,representation using the private key skiFor r and QrCarry out data signature H1Performing hash operation on the signed data for a hash function;
calculating a competition value corresponding to each node to be selected through a preset first formula to obtain a plurality of competition values, specifically:
and calculating by using a first formula to obtain a hash value corresponding to each node to be selected, converting the hash value into a binary number to obtain a plurality of binary numbers, wherein the binary numbers are the competition values, and each competition value corresponds to a node to be selected.
Receiving the sub-message block sent by each fragment through the decision node, and respectively verifying the sub-message block sent by each fragment;
the method comprises the following steps that a decision node receives a sub-message block sent by each fragment, and verifies the sub-message block sent by each fragment respectively, wherein the method specifically comprises the following steps:
receiving, by a decision node of the block, a sub-message block sent by each tile; the sub-message block is a block generated in each fragment, and the block contains a plurality of messages as the concept of the block on a common block chain;
the decision nodes of the control block verify the correctness of signature information of the sub message blocks sent by the corresponding fragment decision nodes through the public key of the decision node of each fragment; and the signature information is obtained by the decision node of the fragment signing through a private key stored on the decision node.
Merging the sub-message blocks which pass the verification to obtain a merged message block;
respectively sending the message blocks to the decision nodes of each segment through the decision nodes of the block;
the sending of the message block to the decision node of each segment by the decision node of the block specifically includes:
and the decision node controlling the block respectively sends the message block to the decision node of each fragment through a practical Byzantine fault-tolerant algorithm.
If the fragmented decision nodes receive first signature information sent back by the fragmented decision nodes exceeding a preset number threshold, judging that the message block passes verification; after the verification is passed, the message block is broadcasted to the network; after the decision node with the first signature information as the fragment verifies the message block (the verification is to verify the signature data contained in the message block and verify the message format in the message block), the returned verification passes through the corresponding signature information; wherein the number threshold is the product of the number of all slicing decision nodes and 2/3.
Referring to fig. 2, the second embodiment of the present invention is:
the invention provides a heterogeneous consensus terminal of a block chain, which comprises a memory 1, a processor 2 and a computer program stored on the memory 1 and capable of running on the processor 2, wherein all the steps of the first embodiment are realized when the processor 2 executes the program.
In summary, the invention provides a heterogeneous consensus method and a terminal for a block chain, wherein in each round of consensus process, a unique node is selected as a decision node of a block, a sub-message block sent by the decision node of each segment is verified through the decision node, the sub-message blocks passing the verification are combined to obtain a combined message block, the message block is sent to the decision node corresponding to each segment respectively for verification, when the number passing the verification is greater than a preset number threshold value, the message block is indicated to pass the verification, and the message block can be broadcasted; by the method, a new decision node of the block is selected in each round of consensus process, so that an attacker cannot judge a leader of the decision, the whole consensus process cannot be controlled, the consensus algorithm adopted by each fragment is different, the attacker cannot control all the fragments through one attack strategy, the whole consensus process cannot be controlled, the attacker wants to control most nodes of a system in the consensus process, the attack difficulty is increased undoubtedly, the problem that the key fault of the block decision is caused by the fact that a hacker attacks one fragment node in a block chain is solved, and the safety of the block chain is improved.
The above description is only an embodiment of the present invention, and not intended to limit the scope of the present invention, and all equivalent changes made by using the contents of the present specification and the drawings, or applied directly or indirectly to other related technical fields, are included in the scope of the present invention.
Claims (7)
1. A heterogeneous consensus method for a block chain is characterized by comprising the following steps:
s1: screening out a unique node as a decision node of a block in each round of consensus process;
s2: receiving the sub-message block sent by each fragment through the decision node, and respectively verifying the sub-message block sent by each fragment;
s3: merging the sub-message blocks which pass the verification to obtain a merged message block;
s4: respectively sending the message blocks to the decision nodes of each segment through the decision nodes of the block;
s5: if first signature information sent back by the fragmentation decision node exceeding a preset number threshold is received, judging that the message block passes verification; the first signature information is signature information corresponding to the returned verification passing after the verification of the message block is passed by the decision node of the fragment;
wherein, the S1 specifically is:
in each round of consensus process, calculating a competition value corresponding to each node to be selected through a preset first formula to obtain a plurality of competition values; each node to be selected is a decision node corresponding to each fragment;
screening out competition values meeting preset conditions from the competition values to obtain a plurality of first competition values;
publishing a node corresponding to each first competition value and a public key used by the node for data decryption;
within a preset time, acquiring the minimum value of all published first competition values to obtain a first minimum competition value;
screening the node corresponding to the first minimum competition value as a decision node of a block;
wherein, the S2 specifically is:
receiving, by a decision node of the block, a sub-message block sent by each tile;
verifying the correctness of the signature information of the sub message blocks sent by the corresponding fragment decision nodes through the public key of the decision node of each fragment; and the signature information is obtained by the decision node of the fragment signing through a private key stored on the decision node.
2. The method according to claim 1, wherein the first formula is specifically:
wherein, the CiThe sk is a competition value of the ith node to be selectediRepresenting a private key used for encrypting data on the node to be selected, r representing the number of rounds of the current consensus process, QrA random number corresponding to the r-th round of consensus process is represented,representation using the private key skiFor r and QrCarry out data signature H1Is a hash function.
3. The method according to claim 1, wherein the S4 specifically is:
and the decision node controlling the block respectively sends the message block to the decision node of each fragment through a practical Byzantine fault-tolerant algorithm.
4. The method for heterogeneous consensus of blockchains according to claim 1, further comprising:
distributing the newly added nodes to corresponding fragments through a preset second formula;
the second formula is x ═ sToi (add)i) % n, wherein i is the serial number of the node, x is the serial number of the fragment to be allocated by the node i, addi represents the address of the node i, and sToi represents a function of converting the address sequence into an integer.
5. The method for heterogeneous consensus of blockchains according to claim 1, further comprising:
presetting consensus algorithm set Co ═ Co1,Co2,…,ComIn which Co iskK is 1, 2.. times.m, which represents a consensus algorithm with a rank number k;
if a new fragment is generated in the block chain, the sequence number of the consensus algorithm adopted by the new fragment isWherein the g represents a sequence number of a new fragment, theAnd the hash value corresponding to the new fragmentation decision node is represented, and the percentage represents the remainder operation.
6. A heterogeneous consensus terminal of a block chain, comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the following steps when executing the computer program:
s1: screening out a unique node as a decision node of a block in each round of consensus process;
s2: receiving the sub-message block sent by each fragment through the decision node, and respectively verifying the sub-message block sent by each fragment;
s3: merging the sub-message blocks which pass the verification to obtain a merged message block;
s4: respectively sending the message blocks to the decision nodes of each segment through the decision nodes of the block;
s5: if first signature information sent back by the fragmentation decision node exceeding a preset number threshold is received, judging that the message block passes verification; the first signature information is signature information corresponding to the returned verification passing after the verification of the message block is passed by the decision node of the fragment;
wherein, the S1 specifically is:
in each round of consensus process, calculating a competition value corresponding to each node to be selected through a preset first formula to obtain a plurality of competition values; each node to be selected is a decision node corresponding to each fragment;
screening out competition values meeting preset conditions from the competition values to obtain a plurality of first competition values;
publishing a node corresponding to each first competition value and a public key used by the node for data decryption;
within a preset time, acquiring the minimum value of all published first competition values to obtain a first minimum competition value;
and screening the node corresponding to the first minimum competition value as a decision node of the block.
7. The terminal of claim 6, wherein the first formula is specifically:
wherein, the CiThe sk is a competition value of the ith node to be selectediRepresenting a private key used for encrypting data on the node to be selected, r representing the number of rounds of the current consensus process, QrIndicating the r-th round of consensus process correspondenceThe random number of (a) is set,representation using the private key skiFor r and QrCarry out data signature H1Is a hash function.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110141137.9A CN112968883B (en) | 2018-09-27 | 2018-09-27 | Block chain heterogeneous consensus method with high safety and terminal |
CN201811128351.5A CN109379343B (en) | 2018-09-27 | 2018-09-27 | Heterogeneous consensus method of block chains and terminal |
CN202110141138.3A CN112968884B (en) | 2018-09-27 | 2018-09-27 | Block chain heterogeneous consensus method and terminal for preventing hacker attack |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811128351.5A CN109379343B (en) | 2018-09-27 | 2018-09-27 | Heterogeneous consensus method of block chains and terminal |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110141138.3A Division CN112968884B (en) | 2018-09-27 | 2018-09-27 | Block chain heterogeneous consensus method and terminal for preventing hacker attack |
CN202110141137.9A Division CN112968883B (en) | 2018-09-27 | 2018-09-27 | Block chain heterogeneous consensus method with high safety and terminal |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109379343A CN109379343A (en) | 2019-02-22 |
CN109379343B true CN109379343B (en) | 2020-12-18 |
Family
ID=65402778
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110141137.9A Active CN112968883B (en) | 2018-09-27 | 2018-09-27 | Block chain heterogeneous consensus method with high safety and terminal |
CN202110141138.3A Active CN112968884B (en) | 2018-09-27 | 2018-09-27 | Block chain heterogeneous consensus method and terminal for preventing hacker attack |
CN201811128351.5A Active CN109379343B (en) | 2018-09-27 | 2018-09-27 | Heterogeneous consensus method of block chains and terminal |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110141137.9A Active CN112968883B (en) | 2018-09-27 | 2018-09-27 | Block chain heterogeneous consensus method with high safety and terminal |
CN202110141138.3A Active CN112968884B (en) | 2018-09-27 | 2018-09-27 | Block chain heterogeneous consensus method and terminal for preventing hacker attack |
Country Status (1)
Country | Link |
---|---|
CN (3) | CN112968883B (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110619020B (en) * | 2019-09-02 | 2022-04-01 | 杭州趣链科技有限公司 | Block chain fragmentation method based on machine learning |
CN111478878B (en) * | 2020-02-28 | 2022-10-21 | 新华三技术有限公司 | Anti-attack method and device |
CN112202775B (en) * | 2020-09-29 | 2021-06-22 | 北京理工大学 | Consensus mechanism architecture and method for block chain of directed acyclic graph structure |
CN112990568B (en) * | 2021-03-11 | 2022-09-20 | 华北电力大学 | Block chain consensus mechanism construction method under comprehensive energy intelligent transaction scene |
CN113297310B (en) * | 2021-06-15 | 2023-03-21 | 广东工业大学 | Method for selecting block chain fragmentation verifier in Internet of things |
CN113411407B (en) * | 2021-06-25 | 2022-03-18 | 北京邮电大学 | Piece-separating type car networking system based on block chain technology |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106656974A (en) * | 2016-10-17 | 2017-05-10 | 江苏通付盾科技有限公司 | Block chain grouping consensus method and system |
CN106780032A (en) * | 2016-12-16 | 2017-05-31 | 杭州云象网络技术有限公司 | A kind of block chain interchain assets transfer method under multichain scene |
WO2017148527A1 (en) * | 2016-03-03 | 2017-09-08 | Nec Europe Ltd. | Method for managing data in a network of nodes |
CN107678865A (en) * | 2017-09-20 | 2018-02-09 | 中国银行股份有限公司 | The verification method and system of block chain based on transaction packet |
CN108241968A (en) * | 2017-03-26 | 2018-07-03 | 杭州复杂美科技有限公司 | The method that front end processor participates in block chain common recognition |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107438003B (en) * | 2016-05-27 | 2022-08-09 | 索尼公司 | Electronic device, method for electronic device, and information processing system |
CN106789908B (en) * | 2016-11-23 | 2019-09-06 | 江苏通付盾科技有限公司 | Block common recognition method for building up and system in block chain |
US20180220278A1 (en) * | 2017-02-01 | 2018-08-02 | BriefTrace Ltd. | System and method for securing and verifying information from transportation monitors |
CN107040585B (en) * | 2017-02-22 | 2020-06-19 | 创新先进技术有限公司 | Service checking method and device |
CN107341702B (en) * | 2017-03-08 | 2020-06-23 | 创新先进技术有限公司 | Service processing method and device |
CN107276765B (en) * | 2017-07-04 | 2020-05-05 | 中国联合网络通信集团有限公司 | Processing method and device for consensus in block chain |
CN107909369A (en) * | 2017-10-13 | 2018-04-13 | 布比(北京)网络技术有限公司 | Based on the common recognition method, apparatus merchandised across chain and storage medium |
CN110971414B (en) * | 2017-11-10 | 2021-05-04 | 财付通支付科技有限公司 | Method, device, terminal and server for generating signature |
CN108182635A (en) * | 2017-12-18 | 2018-06-19 | 深圳前海微众银行股份有限公司 | Block chain common recognition method, system and computer readable storage medium |
CN108320155B (en) * | 2017-12-21 | 2020-09-11 | 中国科学院信息工程研究所 | Method for realizing block chain consensus mechanism |
CN108521328B (en) * | 2018-03-26 | 2020-08-28 | 杭州秘猿科技有限公司 | Block chain consensus method and device and electronic equipment |
-
2018
- 2018-09-27 CN CN202110141137.9A patent/CN112968883B/en active Active
- 2018-09-27 CN CN202110141138.3A patent/CN112968884B/en active Active
- 2018-09-27 CN CN201811128351.5A patent/CN109379343B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017148527A1 (en) * | 2016-03-03 | 2017-09-08 | Nec Europe Ltd. | Method for managing data in a network of nodes |
CN106656974A (en) * | 2016-10-17 | 2017-05-10 | 江苏通付盾科技有限公司 | Block chain grouping consensus method and system |
CN106780032A (en) * | 2016-12-16 | 2017-05-31 | 杭州云象网络技术有限公司 | A kind of block chain interchain assets transfer method under multichain scene |
CN108241968A (en) * | 2017-03-26 | 2018-07-03 | 杭州复杂美科技有限公司 | The method that front end processor participates in block chain common recognition |
CN107678865A (en) * | 2017-09-20 | 2018-02-09 | 中国银行股份有限公司 | The verification method and system of block chain based on transaction packet |
Non-Patent Citations (3)
Title |
---|
《A review on consensus algorithm of blockchain》;Du Mingxiao;《2017 IEEE International Conference on Systems, Man, and Cybernetics (SMC)》;20171201;全文 * |
《research on a new signature scheme on blockchain》;xue ming si;《Hindawi Security and Communication networks》;20170821;全文 * |
《基于聚合签名的共识算法优化方案》;苑超等;《计算机科学》;20180228;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112968883A (en) | 2021-06-15 |
CN112968884B (en) | 2023-03-24 |
CN112968883B (en) | 2023-04-07 |
CN112968884A (en) | 2021-06-15 |
CN109379343A (en) | 2019-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109379343B (en) | Heterogeneous consensus method of block chains and terminal | |
CN109493221B (en) | Method, device, network and storage medium for keeping transaction records secret in block chain | |
CN110289966B (en) | Byzantine fault tolerance-based anti-adaptive attack union chain consensus method | |
CN108270874B (en) | Application program updating method and device | |
US20210194759A1 (en) | Changing a master node in a blockchain system | |
CN110166242B (en) | Message transmission method and device | |
CN110751544A (en) | Bidding information, supervision information and bid evaluation information processing method, terminal and system | |
CN109981690B (en) | Anti-tamper timing data secret transmission method based on block chain intelligent contract | |
CN110177124A (en) | Identity identifying method and relevant device based on block chain | |
CN111815321A (en) | Transaction proposal processing method, device, system, storage medium and electronic device | |
US20230308287A1 (en) | Threshold signatures | |
CN113055188A (en) | Data processing method, device, equipment and storage medium | |
CN108494558B (en) | Method and system for implementing fair switching | |
CN110719167B (en) | Block chain-based signcryption method with timeliness | |
CN114640462A (en) | Block chain privacy protection method and device, electronic equipment and storage medium | |
CN109274674B (en) | Block chain heterogeneous consensus method with high security and terminal | |
CN112073173A (en) | Illegal signer determination system facing block chain PKI | |
Song et al. | Public integrity verification for data sharing in cloud with asynchronous revocation | |
CN114519198A (en) | Block chain consensus method and computer-readable storage medium | |
CN113988831A (en) | Transfer method based on alliance chain | |
CN112039837B (en) | Electronic evidence preservation method based on block chain and secret sharing | |
CN111865595A (en) | Block chain consensus method and device | |
CN106713256A (en) | Method for authenticating software and hardware binding of computer special for tax control | |
CN110618989B (en) | Information processing method, information processing device and related products | |
JPWO2020065633A5 (en) |
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 |