CN114465866B - DPoS method based on trust degree and PBFT - Google Patents

DPoS method based on trust degree and PBFT Download PDF

Info

Publication number
CN114465866B
CN114465866B CN202210074868.0A CN202210074868A CN114465866B CN 114465866 B CN114465866 B CN 114465866B CN 202210074868 A CN202210074868 A CN 202210074868A CN 114465866 B CN114465866 B CN 114465866B
Authority
CN
China
Prior art keywords
node
voting
current
trust
value
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
CN202210074868.0A
Other languages
Chinese (zh)
Other versions
CN114465866A (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.)
Beihang University
Original Assignee
Beihang University
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 Beihang University filed Critical Beihang University
Priority to CN202210074868.0A priority Critical patent/CN114465866B/en
Publication of CN114465866A publication Critical patent/CN114465866A/en
Application granted granted Critical
Publication of CN114465866B publication Critical patent/CN114465866B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/30Decision processes by autonomous network management units using voting and bidding
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The invention discloses a DPoS method based on trust and PBFT. The method comprises the following steps: obtaining a virtual resource value held by a current voting participation node; generating operation according to a history block participated by the current voting participation node, and acquiring an operation trust value corresponding to the current voting participation node; determining a voting indication coefficient corresponding to the current voting participation node by using the virtual resource value and the operation trust value; controlling the current voting participation node to execute voting operation according to the voting indication coefficient; a blockchain is generated based on the voting results of the voting operation. The method solves the technical problem that the stability of the node system is poor in the existing method for generating the block chain.

Description

DPoS method based on trust degree and PBFT
Technical Field
The invention relates to the technical field of blockchain, in particular to a DPoS method based on trust and PBFT.
Background
Blockchain technology is an off-centered infrastructure and distributed computing paradigm that uses encrypted chained blockstructures to validate and store data, distributed node consensus algorithms to generate and update data, automated script code to program and manipulate data. The consensus algorithm as a key technology of the blockchain directly affects the transaction processing capability, expandability and security of the blockchain.
DPoS (Delegate of Proof of Stake) is a consensus algorithm based on voting, the basic idea of which is to divide nodes into two parts by voting, one part is a common node and the other part is a witness node. The common node is only responsible for voting the witness node, any node with tokens can vote, and the witness node is responsible for packaging, verifying and submitting the data in the blockchain.
In the DPoS mechanism, in the process of voting the witness nodes, the ticket right of each node is only positively related to the number of tokens owned by the node, and when one node is disliked, the node can participate in the election, so that the node can become the witness node of the next round through actions such as selecting, brushing tickets and the like, or the node can cast own ticket to a new malicious node to become the new malicious witness node. Once the malicious node becomes a witness node again, it poses a threat to the security and stability of the overall system. That is, the existing blockchain generation method based on the DPoS mechanism has the technical problem of poor stability of the node system.
In view of the above problems, no effective solution has been proposed at present.
Disclosure of Invention
The embodiment of the invention provides a DPoS method based on trust and PBFT, which at least solves the technical problem that the stability of a node system is poor in the existing method for generating a block chain.
According to an aspect of the embodiment of the present invention, there is provided a DPoS method based on trust and PBFT, including: obtaining a virtual resource value held by a current voting participation node; generating operation according to a history block participated by the current voting participation node, and acquiring an operation trust value corresponding to the current voting participation node; determining a voting indication coefficient corresponding to the current voting participation node by using the virtual resource value and the operation trust value; controlling the current voting participation node to execute voting operation according to the voting indication coefficient; a blockchain is generated based on the voting results of the voting operation.
According to another aspect of the embodiment of the present invention, there is also provided an apparatus for a DPoS method based on trust and PBFT, including: the first acquisition unit is used for acquiring a virtual resource value held by the current voting participation node; the second acquisition unit is used for generating operation according to the history block participated by the current voting participation node and acquiring an operation trust value corresponding to the current voting participation node; the determining unit is used for determining a voting instruction coefficient corresponding to the current voting participation node by utilizing the virtual resource value and the operation trust value; the voting unit is used for controlling the current voting participation node to execute voting operation according to the voting instruction coefficient; and the generation unit is used for generating the blockchain based on the voting result of the voting operation.
According to yet another aspect of the embodiments of the present invention, there is also provided a computer-readable storage medium having a computer program stored therein, wherein the computer program is configured to perform the above-described blockchain generation method when executed.
According to still another aspect of the embodiments of the present invention, there is also provided an electronic device including a memory in which a computer program is stored, and a processor configured to execute the above-described blockchain generation method by the computer program.
In the embodiment of the invention, the virtual resource value held by the current voting participation node is acquired; generating operation according to a history block participated by the current voting participation node, and acquiring an operation trust value corresponding to the current voting participation node; determining a voting indication coefficient corresponding to the current voting participation node by using the virtual resource value and the operation trust value; controlling the current voting participation node to execute voting operation according to the voting indication coefficient; the method has the advantages that the block chain is generated based on the voting result of the voting operation, so that the vote weight of each node is simultaneously influenced by the virtual resource value and the trust level value determined by the historical operation in the voting process, the vote weight of the node with malicious behavior in the historical behavior is influenced, the system stability of the block chain is improved based on the voting result, and the technical problem that the node system stability is poor in the existing method for generating the block chain is solved.
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 specification, illustrate embodiments of the application and together with the description serve to explain the application and do not constitute a limitation on the application. In the drawings:
FIG. 1 is a schematic diagram of a hardware environment of an alternative blockchain generation method in accordance with an embodiment of the application;
FIG. 2 is a flow chart of an alternative DPoS method based on confidence and PBFT in accordance with an embodiment of the present application;
FIG. 3 is a schematic diagram of an alternative DPoS method based on confidence and PBFT in accordance with an embodiment of the present application;
FIG. 4 is a schematic diagram of another alternative DPoS method based on confidence and PBFT in accordance with an embodiment of the present application;
FIG. 5 is a schematic diagram of an apparatus for an alternative DPoS method based on confidence and PBFT in accordance with an embodiment of the present application;
fig. 6 is a schematic structural diagram of an alternative electronic device according to an embodiment of the present application.
Detailed Description
In order that those skilled in the art will better understand the present application, a technical solution in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in which it is apparent that the described embodiments are only some embodiments of the present application, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present application without making any inventive effort, shall fall within the scope of the present application.
It should be noted that the terms "first," "second," and the like in the description and the claims of the present invention and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments of the invention described herein may be implemented in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
According to an aspect of the embodiment of the present invention, there is provided a blockchain generation method, optionally, as an alternative implementation, the blockchain generation method may be applied, but not limited to, in the environment shown in fig. 1.
According to an aspect of the embodiment of the present invention, a method for generating a blockchain is provided, and as an alternative implementation, the method for generating a blockchain may be applied to, but not limited to, a blockchain generating system in a hardware environment as shown in fig. 1. The blockchain generation system may include, but is not limited to, a terminal device 102, a network 104, and a terminal device 109. The terminal device 102 has a target client running therein, and the target client is configured to execute the blockchain generation method. The terminal device 102 includes a man-machine interaction screen, a processor and a memory. The man-machine interaction screen is used for displaying the interaction interface of the target client interface. The terminal device 109 operates with the same client as the terminal 102 to determine a final blockchain generation result in response to the operation result of the terminal 102, and it is understood that the terminal device 109 may be a plurality of terminal devices.
The specific process comprises the following steps: step S102-S108, obtaining a virtual resource value held by a current voting participation node through a first client running in the terminal equipment 102; generating operation according to a history block participated by the current voting participation node, and acquiring an operation trust value corresponding to the current voting participation node; determining a voting indication coefficient corresponding to the current voting participation node by using the virtual resource value and the operation trust value; controlling the current voting participation node to execute voting operation according to the voting indication coefficient; step S108 is then performed, and the terminal device 102 transmits the voting information to the terminal device 109 via the network 104; then, step S110 is performed, and the terminal device 109 responds to the voting information to the terminal device 102 via the network 104; finally, step S112 is performed, where the terminal device 102 generates a blockchain based on the voting result of the voting operation. It will be appreciated that the above-described terminal device 109 may also perform steps S102-S108 during the voting process to determine the final voting result. Meanwhile, the step S112 may be a specific implementation of the method by the terminal device 102 and the terminal device 109 through information interaction.
Alternatively, in the present embodiment, the above-mentioned terminal device may be a terminal device configured with a target client, and may include, but is not limited to, at least one of the following: a mobile phone (e.g., an Android mobile phone, iOS mobile phone, etc.), a notebook computer, a tablet computer, a palm computer, a MID (Mobile Internet Devices, mobile internet device), a PAD, a desktop computer, a smart television, etc. The target client may be a video client, an instant messaging client, a browser client, an educational client, and the like. The network may include, but is not limited to: a wired network, a wireless network, wherein the wired network comprises: local area networks, metropolitan area networks, and wide area networks, the wireless network comprising: bluetooth, WIFI, and other networks that enable wireless communications. The server may be a single server, a server cluster composed of a plurality of servers, or a cloud server. The above is merely an example, and is not limited in any way in the present embodiment.
As shown in fig. 2, according to an aspect of the embodiment of the present invention, there is provided a DPoS method based on trust and PBFT, including:
s202, obtaining a virtual resource value held by a current voting participation node;
s204, generating operation according to a history block participated by the current voting participation node, and acquiring an operation trust value corresponding to the current voting participation node;
s206, determining a voting instruction coefficient corresponding to the current voting participation node by utilizing the virtual resource value and the operation trust value;
s208, controlling the current voting participation node to execute voting operation according to the voting indication coefficient;
s210, generating a blockchain based on the voting result of the voting operation.
In the embodiment of the invention, the virtual resource value held by the current voting participation node is acquired; generating operation according to a history block participated by the current voting participation node, and acquiring an operation trust value corresponding to the current voting participation node; determining a voting indication coefficient corresponding to the current voting participation node by using the virtual resource value and the operation trust value; controlling the current voting participation node to execute voting operation according to the voting indication coefficient; the method has the advantages that the block chain is generated based on the voting result of the voting operation, so that the vote weight of each node is simultaneously influenced by the owned virtual resource value and the trust level value determined by the historical operation in the voting process, the vote weight of the node with malicious behavior in the historical behavior is influenced, the system stability of the block chain is improved based on the voting result, and the technical problem that the node system stability is poor in the existing method for generating the block chain is solved.
As an optional implementation manner, the obtaining the operation trust value corresponding to the current voting participation node according to the history block generation operation participated by the current voting participation node includes:
s1, identifying abnormal operation from historical block generation operation participated by a current voting participation node, wherein the abnormal operation is an operation for preventing a block from being normally generated in a target time period;
and S2, updating the initial trust value distributed for the current voting participation node based on the abnormal operation to obtain an operation trust value.
It should be noted that, in the embodiment of the present application, the first phase is node voting, and the second phase is a blockchain generation phase. The node completes the block generation stage of each round, which is called a consensus period, and each consensus period is divided into a plurality of time intervals according to the block production, and each time interval is used for producing a block, and the bit stream is about 3s. The trust level of the block can be evaluated by observing whether the node correctly produces the block in the consensus process, namely the block generation process, whether the block information is tampered, whether the block verification is performed, and the like, namely the trust level value of the node is adjusted according to the performance and the behavior of the node in the consensus process.
In the present embodiment, the above-described abnormal operation may include, but is not limited to, the following:
(1) In the consensus process, as the current block production node, blocks are not packed and broadcast for a prescribed time.
(2) In the consensus process, as the current block production node, incorrect information is maliciously packaged and broadcasted.
(3) In the consensus process, as the verification node of the current block, the block to be verified is not verified, and no message is broadcast.
(4) In the consensus process, as a verification node of the current block, the block is maliciously packaged and other blocks are broadcasted.
(5) In the consensus process, as witness nodes, the malicious intent conveys a large amount of other false information to other witness nodes.
For the above 5 kinds of malicious behaviors, the present embodiment is further divided into a serious abnormal operation and a slight abnormal operation according to the situation and reasons of occurrence of the abnormal operation, because the judgment of the abnormal operation of the node in the blockchain network can only be made based on the results, however, some of the reasons for the results may be malicious and bad of the node, and other may be information delay and the like due to other reasons such as network communication.
Specifically, the present embodiment determines the case in (1) (2) (4) (5) above as a serious abnormal operation, and the case in (3) above as a slight abnormal operation.
Further, according to the operation performance of the node in the history block generation operation, assuming that the t-th consensus operation in the current k-th block generation operation period, the trust degree of the node i is determined by the following formula:
in the method, in the process of the invention,the kth block representing node i generates a trust value for the node after the t-th consensus of the period,the kth block representing node i generates a trust value for the node after the t-1 th consensus of the period. />Is determined based on the performance of the operation in the t-th consensus process of the kth block generation period of node i. Alpha is the adjustment coefficient and alpha epsilon (0, 1)]Which represents the dependence of node trust on the latest consensus performance in the latest block generation period, the higher the value of alphaThe judgment of the trust degree of the representative system to the node is more dependent on the last consensus expression condition of the node. Conversely, when the value of alpha is lower, the trust level calculation of the representative system on the node is more dependent on the early operation performance of the node. Wherein representing node i obtains trust degree +_obtained by t-th consensus expression in k-th block generation period >According to node performance, when no abnormal operation condition occurs in the node, the determination method of ++>Is determined by the following method:
trust in (i) cur The latest trust value representing node i is considered reliable at this stage because the node does not operate abnormally in the t-th consensus of the k-th block generation cycle. When the current trust level of the node is smaller than 1/2 of the previous trust level, 0.05 is increased based on the original trust level, and the trust level of the node is not high, so that the node is very likely to be the node with malicious behaviors, the trust level of the node is increased at a relatively slow speed, and the node can be changed into a high-reliability node again only after the node is determined through multiple rounds of consensus. It will be appreciated that in this embodiment, the node trust value is controlled to be a value between 0 and 1 by the method for confirming the node trust value.
If the node i recognizes that an abnormal operation condition occurs at the t-th time of the k-th block generation period, according to the abnormal operation behavior type of the node,is determined by the following method:
according to the method in this embodiment, the trust level of each node in the network can be updated according to the operation performance of the node in the block generation stage, the trust level of the node is updated according to the trust level of the current node, and the consensus performance before the node is considered. If the node generates abnormal operation in consensus, punishment is carried out according to the severity of the node operation, if the node does not generate any abnormal operation in consensus and successfully participates in the whole block generation process, the trust degree of the node is increased on the basis of the current trust degree to excite the node to continuously maintain honest performance, so that the stability of a system for generating a block chain based on a voting result is improved, and the technical problem of poor stability of the node system in the existing method for generating the block chain is solved.
As an optional implementation manner, determining the voting weight corresponding to the current voting participation node by using the virtual resource value and the operation trust value includes:
s1, acquiring an initial voting instruction coefficient corresponding to a virtual resource value;
s2, determining a product value between the initial voting instruction coefficient and the operation trust value as a voting instruction coefficient corresponding to the current voting participation node.
It will be appreciated that in this embodiment, each node is capable of voting, and each node also has the right to be elected by other nodes. When calculating the number of votes of each node, the confidence level is used as a correction index, and the correction mode is as follows:
wherein trust (i) is a trust value of node i, and vot (i) indicates a voting right of node i, namely an initial voting indication coefficient, and is positively correlated with the number of virtual resources owned by node i. In an alternative way, node i hasThe ticket weight of (a) is equal to the number of tokens it has. For example, in the case where node i owns 100 tokens, the ticket weight of node i is 100 tickets.The voting instruction coefficient obtained by correction is the voting right of the corrected node i.
As an alternative way, for a node obtaining a ticket, in this embodiment, the number of tickets obtained may be corrected according to the confidence value, and the correction method is as follows:
Wherein trust (i) is the trust value of node i, getVote (i) indicates the number of votes obtained for node i.The ticket number of the node i after correction.
In a specific embodiment, assuming that node i has 150 votes, i has 200 votes, node i has a confidence level of 0.8, node i has a confidence level of 0.5, if Bob and Alice both cast the ticket to m, and node m has a confidence level of 0.7, then the actual vote weight of node i is 150×0.8=120, the actual vote weight of node i is 200×0.5=100, and the number of votes obtained for node m is (120+100) ×0.7=154.
Through the above embodiment of the present application, an initial voting instruction coefficient corresponding to the virtual resource value is obtained; and determining a product value between the initial voting instruction coefficient and the operation trust value as a mode of determining the voting instruction coefficient corresponding to the current voting participation node, so that the trust degree of the node can directly influence the election authority and the result of witness election of the node, the trust degree of the node can be ensured to be always at a high level to be more important, the abnormal operation probability of each node is reduced, and the technical effect of maintaining the stability of the system is realized.
As an optional implementation manner, the controlling the current voting participation node to perform the voting operation according to the voting instruction coefficient includes:
S1, acquiring a random number matched with a voting participation node based on a private key value of the voting participation node;
it will be appreciated that in this embodiment, any random number generation may be used to generate random numbers based on the private key values of the voting participation nodes described above. As an alternative, a VRF (Vertifiable Random Function) may be employed that validates a random function to generate the random number described above.
S2, carrying out hash operation on the private key value of each object node receiving the votes of the voting participation nodes and the random number of the voting participation nodes to obtain voting verification parameters matched with the object nodes;
s3, under the condition that the voting verification parameter is smaller than or equal to a first threshold value, determining that the voting operation executed by the voting participation node on the object node is successful;
And S4, determining that the voting operation carried out by the voting participation node on the target node fails under the condition that the voting verification parameter is larger than a first threshold value.
As a specific embodiment, the specific steps of the above method are as follows:
s1, in the voting starting stage, each node generates a corresponding random number according to the private key of the node and takes the hash value of the last generated block as info. I.e. (result, proof) =vrf_ (sk, info). sk is a node private key, result represents a generated random number, proof is a random number proof.
S2, judging a set of node voting objects through random numbers, wherein the specific method comprises the following steps of:where hashlen represents the length of the hash algorithm output and volted represents the private key value of the voted object. If the threshold is less than or equal to 1/2, the node is considered to be able to vote on the object, otherwise the node is considered to have no right to vote on the object.
And S3, randomly carrying out unidirectional voting by the nodes according to the voting object set.
S4, verifying the votes of the nodes, wherein the specific verification method comprises two steps, namely, firstly verifying whether result is a random number or not, and calculating and verifying by the following formula:
False/True=VRF_Verify(pk,info,result,proof)
if the nodes pass through, whether the threshold is less than or equal to 1/2 is further calculated, if the nodes pass through, the voting behavior of the nodes is considered to be effective, and if the nodes pass through, the voting behavior of the nodes is considered to be ineffective.
And S5, finishing the voting, and selecting a corresponding node as a witness node according to the voting result.
According to the embodiment of the application, the random number matched with the voting participation node is obtained based on the private key value of the voting participation node; carrying out hash operation on the private key value of each object node receiving the votes of the voting participation nodes and the random number of the voting participation nodes to obtain voting verification parameters matched with the object nodes; under the condition that the voting verification parameter is smaller than or equal to a first threshold value, determining that the voting operation executed by the voting participation node on the object node is successful; and under the condition that the voting verification parameter is larger than a first threshold value, determining a mode that the voting operation performed by the voting participation node on the object node fails to effectively and randomly limit the voting objects of the nodes to prevent malicious collusion and other actions from occurring between the nodes.
In this embodiment, the characteristic that the hash value of the last generated block cannot be predicted and is different is utilized, so that in each round of election, the effective voting object of each node is different and has randomness, meanwhile, the voting object and the voter do not have a bidirectional voting relationship before, but are a random unidirectional relationship, the voter can vote on the voting object, but conversely, the voting object can not necessarily vote on the voter, thereby limiting collusion behavior of direct mutual voting of large nodes, improving stability of the system, and improving the decentralization degree of the system.
As an alternative embodiment, the generating a blockchain based on the voting result of the voting operation includes:
s1, acquiring respective voting results of each voting participation node in a node set where a current voting participation node is located, wherein the voting results indicate that the node set is divided into a target node subset, a candidate node subset and a reference node subset, the target node subset comprises nodes with the number of votes in the node set located in a first sequence, the candidate node set comprises nodes with the number of votes in the node set located in a second sequence, and the candidate node set comprises nodes with the number of votes in the node set located in a third sequence; the first sequential sequence is preceded by a second sequential sequence, which is preceded by a third sequential sequence;
s2, under the condition that target block generating nodes reaching preset conditions appear in a target node subset, replacing the target block generating nodes in the target node subset by using candidate nodes in the candidate node subset to obtain an updated target node subset, wherein the candidate nodes are nodes with highest operation trust values in the candidate node subset;
s3, generating a block chain based on the blocks generated by each block generating node in the updated target node.
In this embodiment, the ranking order of each node may be determined according to the number of votes obtained by each node after the voting operation, and the voter is ranked in front. Then determining three node subsets according to the sequence, wherein the target node subset consists of a batch of nodes with highest sequence and is used for directly participating in the subsequent block chain generation operation flow; and the second batch of nodes sequenced after the first batch of nodes are candidate node subsets, and are used for determining the nodes for replacement from the candidate node combinations when the nodes needing replacement exist in the target node set, wherein the rest nodes form a third node subset and do not participate in subsequent blockchain generation operation.
In one particular embodiment, as shown in FIG. 3, the elected node is divided into two parts S1 and S2, the nodes in S1 being responsible for the production and consensus of the block (i.e., the target node subset), and S2 being the backup witness node set (i.e., the candidate node subset). When the node in S1 appears that no block is produced within its production time or that the produced block fails to pass verification, then a node is selected from S2 to replace it.
According to the embodiment of the application, through acquiring the voting results of each voting participation node in the node set where the current voting participation node is located, under the condition that the target block generation node reaching the preset condition appears in the target node subset, the candidate node in the candidate node subset is utilized to replace the target block generation node in the target node subset, so that the updated target node subset is obtained; based on the blocks generated by each block generating node in the updated target node, a block chain is generated. Therefore, the technical effect of increasing the consensus fault tolerance and rapidly processing the errors is achieved.
As an optional manner, after obtaining the voting result of each voting participation node in the node set where the current voting participation node is located, at least one of the following is further included:
s1, determining the current block generating node as a target block generating node reaching a preset condition under the condition that the current block generating node in the target node subset does not generate blocks within a first preset duration;
s2, under the condition that the block generated by the current block generating node in the target node subset fails to pass verification, determining the current block generating node as the target block generating node reaching the preset condition.
The method of the application realizes the technical effects of accurately identifying the nodes in the target node subset and carrying out quick replacement under the condition that the identification reaches the target condition.
Taking the following embodiments as examples, the process of generating a blockchain by selecting a target node subset generated in the present application will be described:
s1, the block producer of the current time slice packs the collected transactions to generate blocks and broadcasts the blocks. When other common witness nodes receive the block message, the message needs to be verified in the following way:
a) Whether the signature is a block production node.
b) Whether the message was received.
c) Whether the block height in the message can correspond to the current block height.
After the above conditions are met, the message will be acknowledged.
S2, when other common witness nodes receive the block message, the common witness nodes enter a preparation state, and simultaneously broadcast a preparation < h, d and S > message, wherein h is the height of the block, d is the abstract of the block, and S is the signature of the node.
And S3, the nodes in the preparation state can also continuously receive preparation messages broadcast by other nodes, and after the nodes receive the preparation messages exceeding 2f+1 different nodes, the nodes enter the preparation state and simultaneously broadcast the preparation < h, d, S > messages, wherein f is the number of the nodes with abnormal operations in the current block generation period.
S4, after receiving the commit message of more than 2f+1 different nodes, marking that the block is verified, each node persists the block into the blockchain.
And S5, carrying out consensus and updating on the credit value of the node according to the flow.
S6, if the time slice fails to achieve the consensus, the consensus is abandoned and node rotation is started.
The overall flow of the present application is described below with reference to fig. 4.
As shown in fig. 4, the embodiment is mainly divided into four parts of random unidirectional voting for the witness node, witness node block-out and verification, malicious node replacement and node trust value update.
S1, a common node generates a common witness node and an alternative witness node through voting;
specifically, each node selects witness and alternative witness nodes by random unidirectional voting. Wherein the actual number of votes for each node is determined by the product of its confidence value and the number of votes, and the actual number of votes obtained for each node is determined by the product of the confidence value and the number of votes obtained. Wherein the trust level of each node is a value between 0 and 1, and is determined according to the operation performance of the node in the history block generating operation.
And after the voting is finished, selecting the first 2N of the votes as witness nodes, wherein the first N of the votes obtained in the witness nodes are used as consensus witness nodes, and the last N of the votes obtained in the witness nodes are used as alternative witness nodes.
S2, the nodes of the common witness take turns to perform block-out operation so as to generate block chains;
specifically, during the verification stage of the witness coming out of the block, the node of the common witness is responsible for the production and verification of the block, and meanwhile, the trust degree is updated after the block is verified.
And S3, when the common witness node does not go out the block on time or the block-out verification fails, determining the common witness node as a malicious node, and exchanging identities with the current malicious node by using the node with the highest reliability in the alternative witness nodes.
And S4, after the operation of the stage is finished, entering a period of the next round, reserving a node trust value, and restarting to elect a new witness node, so as to continuously circulate to generate a blockchain.
It should be noted that, for simplicity of description, the foregoing method embodiments are all described as a series of acts, but it should be understood by those skilled in the art that the present invention is not limited by the order of acts described, as some steps may be performed in other orders or concurrently in accordance with the present invention. Further, those skilled in the art will also appreciate that the embodiments described in the specification are all preferred embodiments, and that the acts and modules referred to are not necessarily required for the present invention.
According to another aspect of the embodiment of the present invention, there is also provided an apparatus for implementing the above-mentioned DPoS method based on trust and PBFT. As shown in fig. 5, the apparatus includes:
A first obtaining unit 501, configured to obtain a virtual resource value held by a current voting participation node;
a second obtaining unit 502, configured to obtain an operation trust value corresponding to the current voting participation node according to an operation generated by the history block in which the current voting participation node participates;
a determining unit 503, configured to determine a voting instruction coefficient corresponding to the current voting participation node by using the virtual resource value and the operation trust value;
a voting unit 504, configured to control the current voting participation node to perform a voting operation according to the voting instruction coefficient;
a generating unit 505 for generating a blockchain based on a voting result of the voting operation.
In the embodiment of the invention, the virtual resource value held by the current voting participation node is acquired; generating operation according to a history block participated by the current voting participation node, and acquiring an operation trust value corresponding to the current voting participation node; determining a voting indication coefficient corresponding to the current voting participation node by using the virtual resource value and the operation trust value; controlling the current voting participation node to execute voting operation according to the voting indication coefficient; the method has the advantages that the block chain is generated based on the voting result of the voting operation, so that the vote weight of each node is simultaneously influenced by the owned virtual resource value and the trust level value determined by the historical operation in the voting process, the vote weight of the node with malicious behavior in the historical behavior is influenced, the system stability of the block chain is improved based on the voting result, and the technical problem that the node system stability is poor in the existing method for generating the block chain is solved.
It can be appreciated that the apparatus of the embodiment of the present invention has the advantages corresponding to the above-mentioned blockchain generation method, and will not be described herein.
According to a further aspect of embodiments of the present invention there is also provided a storage medium comprising a stored program, wherein the program is arranged to perform the steps of any of the method embodiments described above when run.
According to still another aspect of the embodiment of the present invention, there is also provided an electronic device for implementing the identification method of the above-mentioned operation sequence, which may be a terminal device or a server as shown in fig. 6. The present embodiment is described taking the electronic device as a terminal device as an example. As shown in fig. 6, the electronic device comprises a memory 602 and a processor 604, the memory 602 having stored therein a computer program, the processor 604 being arranged to perform the steps of any of the method embodiments described above by means of the computer program.
Alternatively, in this embodiment, the electronic device may be located in at least one network device of a plurality of network devices of the computer network.
Alternatively, in the present embodiment, the above-described processor may be configured to execute the following steps by a computer program:
S1, obtaining a virtual resource value held by a current voting participation node;
s2, generating operation according to a history block participated by the current voting participation node, and acquiring an operation trust value corresponding to the current voting participation node;
s3, determining a voting instruction coefficient corresponding to the current voting participation node by utilizing the virtual resource value and the operation trust value;
s4, controlling the current voting participation node to execute voting operation according to the voting indication coefficient;
s5, generating a blockchain based on the voting result of the voting operation.
Alternatively, it will be understood by those skilled in the art that the structure shown in fig. 6 is only schematic, and the electronic device may be a vehicle terminal, a smart phone (such as an Android mobile phone, an iOS mobile phone, etc.), a tablet computer, a palm computer, a mobile internet device (Mobile Internet Devices, MID), a PAD, etc. Fig. 6 is not limited to the structure of the electronic device and the electronic apparatus described above. For example, the electronics can also include more or fewer components (e.g., network interfaces, etc.) than shown in fig. 6, or have a different configuration than shown in fig. 6.
The memory 602 may be used to store software programs and modules, such as program instructions/modules corresponding to the method and apparatus for identifying an operation sequence in the embodiment of the present invention, and the processor 604 executes the software programs and modules stored in the memory 602, thereby performing various functional applications and data processing, that is, implementing the method for identifying an operation sequence as described above. The memory 602 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, memory 602 may further include memory located remotely from processor 604, which may be connected to the terminal via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof. The memory 602 may be used for storing information such as, but not limited to, identification information of each element and operation sequence in the observation angle picture. As an example, as shown in fig. 6, the above-described memory 602 may be, but is not limited to, a first acquisition unit 501, a second acquisition unit 502, a determination unit 503, a voting unit 504, and a generation unit 505 in the identification device including the above-described operation sequence. In addition, other module units in the identification device of the above operation sequence may be included, but are not limited to, and are not described in detail in this example.
Optionally, the transmission device 606 is used to receive or transmit data via a network. Specific examples of the network described above may include wired networks and wireless networks. In one example, the transmission device 606 includes a network adapter (Network Interface Controller, NIC) that may be connected to other network devices and routers via a network cable to communicate with the internet or a local area network. In one example, the transmission device 606 is a Radio Frequency (RF) module for communicating wirelessly with the internet.
In addition, the electronic device further includes: a display 608 for displaying an application program interface, and a connection bus 610 for connecting the various module components in the electronic device.
In other embodiments, the terminal device or the server may be a node in a distributed system, where the distributed system may be a blockchain system, and the blockchain system may be a distributed system formed by connecting the plurality of nodes through a network communication. Among them, the nodes may form a Peer-To-Peer (P2P) network, and any type of computing device, such as a server, a terminal, etc., may become a node in the blockchain system by joining the Peer-To-Peer network.
According to one aspect of the present application, there is provided a computer program product comprising a computer program/instruction containing program code for executing the method shown in the flow chart. In such embodiments, the computer program may be downloaded and installed from a network via a communication portion, and/or installed from a removable medium. When executed by a central processing unit, performs various functions provided by embodiments of the present application.
The foregoing embodiment numbers of the present application are merely for the purpose of description, and do not represent the advantages or disadvantages of the embodiments.
According to an aspect of the present application, there is provided a computer-readable storage medium, from which computer instructions are read by a processor of a computer device, the computer instructions being executed by the processor to cause the computer device to perform the method of identifying a sequence of operations as described above.
Alternatively, in the present embodiment, the above-described computer-readable storage medium may be configured to store a computer program for performing the steps of:
s1, obtaining a virtual resource value held by a current voting participation node;
s2, generating operation according to a history block participated by the current voting participation node, and acquiring an operation trust value corresponding to the current voting participation node;
S3, determining a voting instruction coefficient corresponding to the current voting participation node by utilizing the virtual resource value and the operation trust value;
s4, controlling the current voting participation node to execute voting operation according to the voting indication coefficient;
s5, generating a blockchain based on the voting result of the voting operation.
Alternatively, in this embodiment, it will be understood by those skilled in the art that all or part of the steps in the methods of the above embodiments may be performed by a program for instructing a terminal device to execute the steps, where the program may be stored in a computer readable storage medium, and the storage medium may include: flash disk, read-Only Memory (ROM), random-access Memory (Random Access Memory, RAM), magnetic or optical disk, and the like.
The integrated units in the above embodiments may be stored in the above-described computer-readable storage medium if implemented in the form of software functional units and sold or used as separate products. Based on such understanding, the technical solution of the present invention may be embodied in essence or a part contributing to the prior art or all or part of the technical solution in the form of a software product stored in a storage medium, comprising several instructions for causing one or more computer devices (which may be personal computers, servers or network devices, etc.) to perform all or part of the steps of the above-described method of the various embodiments of the present invention.
In the foregoing embodiments of the present application, the descriptions of the embodiments are emphasized, and for a portion of this disclosure that is not described in detail in this embodiment, reference is made to the related descriptions of other embodiments.
In several embodiments provided by the present application, it should be understood that the disclosed client may be implemented in other manners. The above-described embodiments of the apparatus are merely exemplary, and the division of the units, such as the above, is merely a logical function division, and may be implemented in another manner, for example, a plurality of units or components may be combined or may be integrated into another system, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be through some interfaces, units or modules, or may be in electrical or other forms.
The units described above as separate components may or may not be physically separate, and components shown as units may or may not be physical units, may be located in one place, or may be distributed over a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present invention may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
While the foregoing is directed to the preferred embodiments of the present invention, it will be appreciated by those skilled in the art that changes and modifications may be made without departing from the principles of the invention, and such changes and modifications are intended to be included within the scope of the invention.

Claims (9)

1. A DPoS method based on trust and PBFT, comprising:
obtaining a virtual resource value held by a current voting participation node;
generating operation according to the historical blocks participated by the current voting participation node, and acquiring an operation trust value corresponding to the current voting participation node;
determining a voting indication coefficient corresponding to the current voting participation node by utilizing the virtual resource value and the operation trust value;
controlling the current voting participation node to execute voting operation according to the voting indication coefficient;
Generating a blockchain based on a voting result of the voting operation;
the step of obtaining the operation trust value corresponding to the current voting participation node comprises the following steps:
under the condition that no abnormal operation occurs to the node, the operation trust value is obtained through the following formula:
under the condition that serious malicious behaviors occur to the nodes, the operation trust value is obtained through the following formula:
in the case of a node with mild malicious behavior, the operation trust value is obtained by the following formula:
wherein Trust (i) cur For the latest trust value of the node, the calculation mode of the trust value of the node after the kth block of the node i generates the t-th consensus of the period is as follows:
alpha is an adjustment coefficient, and alpha epsilon (0, 1)]The alpha is used for indicating the dependence degree of the node trust degree on the latest consensus expression under the latest block generation period;
the determining a voting instruction coefficient corresponding to the current voting participation node comprises:
wherein trust (i) is the trust value of node i, and vot (i) is an initial vote indication coefficient, which is positively correlated with the number of virtual resources owned by node i.
2. The method of claim 1, wherein the obtaining the operational trust value corresponding to the current voting participation node according to the historical block generation operation in which the current voting participation node participates comprises:
Identifying an abnormal operation from the historical block generation operation participated by the current voting participation node, wherein the abnormal operation is an operation for preventing a block from being normally generated in a target time period;
and updating the initial trust value allocated to the current voting participation node based on the abnormal operation to obtain the operation trust value.
3. The method of claim 1, wherein the determining a voting indication coefficient corresponding to the current voting participation node using the virtual resource value and the operation confidence value comprises:
acquiring an initial voting indication coefficient corresponding to the virtual resource value;
and determining a product value between the initial voting instruction coefficient and the operation trust level value as the voting instruction coefficient corresponding to the current voting participation node.
4. The method of claim 1, wherein controlling the current voting participation node to perform a voting operation in accordance with the voting instruction coefficient comprises:
based on the private key value of the voting participation node, acquiring a random number matched with the voting participation node;
carrying out hash operation on the private key value of each object node receiving the voting of the voting participation node and the random number of the voting participation node to obtain a voting verification parameter matched with the object node;
Determining that the voting operation executed by the voting participation node on the object node is successful under the condition that the voting verification parameter is smaller than or equal to a first threshold value;
and if the voting verification parameter is larger than the first threshold value, determining that the voting operation performed by the voting participation node on the object node fails.
5. The method of claim 1, wherein generating a blockchain based on the voting results of the voting operation comprises:
obtaining respective voting results of each voting participation node in a node set where the current voting participation node is located, wherein the voting results indicate that the node set is divided into a target node subset, a candidate node subset and a reference node subset, the target node subset comprises nodes with the number of votes in the node set in a first sequence, the candidate node subset comprises nodes with the number of votes in the node set in a second sequence, and the reference node subset comprises nodes with the number of votes in the node set in a third sequence; the first sequential sequence is located before the second sequential sequence, which is located before the third sequential sequence;
Under the condition that target block generating nodes reaching a first preset condition appear in the target node subset, replacing the target block generating nodes in the target node subset by candidate nodes in the candidate node subset to obtain the updated target node subset, wherein the candidate nodes are nodes with highest operation trust values in the candidate node subset, and the first preset condition comprises at least one of the following: the current block generating node in the target node subset does not generate a block within a first preset duration; the blocks generated by the current block generating node in the target node subset are not verified;
and generating a blockchain based on the blocks generated by each block generating node in the updated target node subset.
6. The method of claim 5, further comprising, after said obtaining the respective voting results of each voting participation node in the set of nodes in which the current voting participation node is located, at least one of:
determining that the current block generating node is the target block generating node reaching the first preset condition under the condition that the current block generating node in the target node subset does not generate blocks within the first preset time length;
And under the condition that the blocks generated by the current block generating nodes in the target node subset are not verified, determining the current block generating nodes as the target block generating nodes reaching the first preset condition.
7. An apparatus for a DPoS method based on trust and PBFT, comprising:
the first acquisition unit is used for acquiring a virtual resource value held by the current voting participation node;
the second acquisition unit is used for generating operation according to the historical blocks participated by the current voting participation node and acquiring an operation trust value corresponding to the current voting participation node;
a determining unit, configured to determine a voting instruction coefficient corresponding to the current voting participation node by using the virtual resource value and the operation trust value;
the voting unit is used for controlling the current voting participation node to execute voting operation according to the voting indication coefficient;
a generation unit configured to generate a blockchain based on a voting result of the voting operation;
the step of obtaining the operation trust value corresponding to the current voting participation node comprises the following steps:
under the condition that no abnormal operation occurs to the node, the operation trust value is obtained through the following formula:
Under the condition that serious malicious behaviors occur to the nodes, the operation trust value is obtained through the following formula:
in the case of a node with mild malicious behavior, the operation trust value is obtained by the following formula:
wherein Trust (i) cur For the latest trust value of the node, the calculation mode of the trust value of the node after the kth block of the node i generates the t-th consensus of the period is as follows:
alpha is an adjustment coefficient, and alpha epsilon (0, 1)]The alpha is used for indicating the dependence degree of the node trust degree on the latest consensus expression under the latest block generation period;
the determining a voting instruction coefficient corresponding to the current voting participation node comprises:
wherein trust (i) is the trust value of node i, and vot (i) is an initial vote indication coefficient, which is positively correlated with the number of virtual resources owned by node i.
8. A storage medium having a computer program stored therein, wherein the computer program is arranged to perform the method of any of claims 1 to 6 when run.
9. An electronic device comprising a memory and a processor, characterized in that the memory has stored therein a computer program, the processor being arranged to run the computer program to perform the method of any of the claims 1 to 6.
CN202210074868.0A 2022-01-21 2022-01-21 DPoS method based on trust degree and PBFT Active CN114465866B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210074868.0A CN114465866B (en) 2022-01-21 2022-01-21 DPoS method based on trust degree and PBFT

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210074868.0A CN114465866B (en) 2022-01-21 2022-01-21 DPoS method based on trust degree and PBFT

Publications (2)

Publication Number Publication Date
CN114465866A CN114465866A (en) 2022-05-10
CN114465866B true CN114465866B (en) 2023-08-15

Family

ID=81411758

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210074868.0A Active CN114465866B (en) 2022-01-21 2022-01-21 DPoS method based on trust degree and PBFT

Country Status (1)

Country Link
CN (1) CN114465866B (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108900507A (en) * 2018-06-29 2018-11-27 全链通有限公司 Block chain real name identification method and system
CN109819022A (en) * 2019-01-11 2019-05-28 华侨大学 A kind of block chain common recognition method based on credit appraisal
CN110138597A (en) * 2019-04-17 2019-08-16 上海大学 Based on the block chain DPOS of credit score and node clustering common recognition mechanism improved method
CN110796547A (en) * 2019-10-30 2020-02-14 桂林电子科技大学 Improved practical Byzantine fault-tolerant system based on alliance block chain
WO2020138606A1 (en) * 2018-12-28 2020-07-02 연세대학교 산학협력단 Fault-tolerant consensus method for eliminating obstacle factors of consensus in blockchain network
CN111563278A (en) * 2020-05-09 2020-08-21 电子科技大学 Improved method for proving right of stock authorization
CN112822239A (en) * 2020-12-30 2021-05-18 深圳市宝能投资集团有限公司 Block chain consensus method, block chain consensus device, electronic equipment and storage medium
CN113313378A (en) * 2021-05-27 2021-08-27 北京航空航天大学 Credibility model-based block chain consensus mechanism
CN113326516A (en) * 2021-04-22 2021-08-31 远光软件股份有限公司 Block chain consensus method, block chain system and computer equipment

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10360191B2 (en) * 2016-10-07 2019-07-23 International Business Machines Corporation Establishing overlay trust consensus for blockchain trust validation system
US11303446B2 (en) * 2020-04-09 2022-04-12 International Business Machines Corporation Prevention of majority attacks

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108900507A (en) * 2018-06-29 2018-11-27 全链通有限公司 Block chain real name identification method and system
WO2020138606A1 (en) * 2018-12-28 2020-07-02 연세대학교 산학협력단 Fault-tolerant consensus method for eliminating obstacle factors of consensus in blockchain network
CN109819022A (en) * 2019-01-11 2019-05-28 华侨大学 A kind of block chain common recognition method based on credit appraisal
CN110138597A (en) * 2019-04-17 2019-08-16 上海大学 Based on the block chain DPOS of credit score and node clustering common recognition mechanism improved method
CN110796547A (en) * 2019-10-30 2020-02-14 桂林电子科技大学 Improved practical Byzantine fault-tolerant system based on alliance block chain
CN111563278A (en) * 2020-05-09 2020-08-21 电子科技大学 Improved method for proving right of stock authorization
CN112822239A (en) * 2020-12-30 2021-05-18 深圳市宝能投资集团有限公司 Block chain consensus method, block chain consensus device, electronic equipment and storage medium
CN113326516A (en) * 2021-04-22 2021-08-31 远光软件股份有限公司 Block chain consensus method, block chain system and computer equipment
CN113313378A (en) * 2021-05-27 2021-08-27 北京航空航天大学 Credibility model-based block chain consensus mechanism

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
授权股份证明共识机制的改进方案;付瑶瑶等;《计算机工程与应用》;20190926;第56卷(第19期);全文 *

Also Published As

Publication number Publication date
CN114465866A (en) 2022-05-10

Similar Documents

Publication Publication Date Title
CN109165945B (en) Representative node device election method and device, computer device and storage medium
CN109872152B (en) Block chain consensus method based on share authorization certification mechanism and related equipment
CN111343208B (en) Block chain-based data detection method and device and computer-readable storage medium
WO2022217807A1 (en) Blockchain consensus node selection method and apparatus, and computer device and storage medium
EP3763078B1 (en) Methods of electing leader nodes in a blockchain network using a role-based consensus protocol
CN111885050B (en) Data storage method and device based on block chain network, related equipment and medium
CN110928880B (en) Data processing method, device, terminal and medium based on block chain
CN112540926A (en) Resource allocation fairness federal learning method based on block chain
CN112468255B (en) Block link point time synchronization method based on network consensus and VRF algorithm
CN110930254A (en) Data processing method, device, terminal and medium based on block chain
CN113282418A (en) Model aggregation processing method and device
CN114465866B (en) DPoS method based on trust degree and PBFT
US10553062B2 (en) Method for generating winning numbers and apparatus
CN117675378A (en) Node selection method, system, equipment and storage medium based on blockchain
CN116684426B (en) Task processing method based on Bayesian consensus protocol
CN117499049A (en) Block chain-based data processing method, device, equipment and storage medium
CN108521449B (en) Remote backup method and system for operation records of network equipment
CN116846536A (en) Power terminal authentication method, device and equipment based on lightweight block chain
CN117874834A (en) Global model integrity checking method and system for decentralised federal learning
CN115018083A (en) Block chain-based safe extensible federated learning method
CN117579322A (en) Data processing method based on block chain and related equipment
CN117411894A (en) Data processing method, apparatus, program product, device and medium for consensus network
CN117411636A (en) Block chain consensus method capable of randomly selecting master node
CN116186725A (en) Data processing method, device, equipment and storage medium
CN115883573A (en) Method and device for determining consensus node and storage medium

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