US 12,432,067 B2
Method for authenticating distributed votes for a distributed system
David Kozhaya, Dietikon (CH); and Maelle Kabir-Querrec, Aarburg (CH)
Assigned to ABB Schweiz AG, Baden (CH)
Filed by ABB Schweiz AG, Baden (CH)
Filed on Nov. 21, 2022, as Appl. No. 17/990,818.
Claims priority of application No. 21210774 (EP), filed on Nov. 26, 2021.
Prior Publication US 2023/0171109 A1, Jun. 1, 2023
Int. Cl. H04L 9/32 (2006.01)
CPC H04L 9/3239 (2013.01) [H04L 9/3247 (2013.01); H04L 2209/463 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method for authenticating distributed votes for a distributed system having a plurality of nodes and at least one leader node authorized to make a proposal, the method comprising:
sending out, by the leader node, a prepare message including a proposal;
generating, by each of at least some of the plurality of nodes, a set of hash values based on a set of unique phrases, wherein each hash value of the set of hash values is obtained by applying a hash function on a unique phrase from the set of unique phrases;
generating, by each of the at least some of the plurality of nodes, a reply message to the leader node including the set of hash values;
signing, by each of the at least some of the plurality of nodes, the reply message with a digital signature;
sending, by each of the at least some of the plurality of nodes, the reply message with the digital signature; and
validating, by the leader node, the digital signatures of the reply messages and saving the sets of hash values,
wherein the method further comprises at least one repetition of the following:
sending, by each of the at least some of the plurality of nodes, a vote message including one of the unique phrases of the set of unique phrases, if the node agrees with the proposal, wherein the one of the unique phrases of the set of unique phrases changes in each repetition;
generating, by the leader node, if one or more vote messages are received, a plurality of voting hash values based on the one or more vote messages;
generating comparisons of the voting hash values with the sets of hash values; and
validating a plurality of votes on the proposal based on the comparisons, and
wherein the method further comprises:
making, by the leader node, a decision on the proposal based on a last validated plurality of votes; and
accepting, by each of the at least some of the plurality of nodes, the decision on the proposal.