Distributed Vote Authentication Using Hash-Based Multi-Round Validation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing distributed systems face performance and scalability issues due to the costly and resource-intensive process of authenticating votes using digital signatures, which is particularly problematic in Byzantine fault-tolerant systems like blockchain and distributed ledger systems.
Innovation Solution
A method that minimizes the use of digital signatures by using hash functions to generate unique phrases and hash values, allowing nodes to use a single signature per view for multiple votes, reducing the overhead of signing and verification processes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If digital signatures are used to authenticate every vote in distributed systems, then vote authenticity and system reliability are improved, but processing power consumption and system scalability deteriorate
Solution Approach 1:
The patent segments the authentication process into two distinct phases: a prepare phase where nodes generate and sign reply messages with their digital signatures, and a voting phase where nodes send vote messages without signatures. This segmentation allows nodes to authenticate their participation once in the prepare phase, then vote multiple times in subsequent phases without repeating the costly signature operation, thereby resolving the contradiction between maintaining authenticity and improving scalability.
Solution Approach 2:
The patent applies preliminary action by requiring nodes to generate and validate their digital signatures in advance during the prepare phase before the actual voting occurs. By performing this costly authentication operation beforehand, the system ensures that nodes are authenticated for participation, but then can proceed with multiple cheaper vote operations in subsequent phases without repeating the signature verification process.
2Reliability
If digital signatures are appended to every vote message, then vote authenticity is guaranteed, but processing power during validation and system throughput deteriorate
Solution Approach 1:
The patent divides the voting protocol into a prepare phase and a voting phase. In the prepare phase, nodes perform the computationally intensive digital signature operations to authenticate their participation. In the subsequent voting phase, nodes send vote messages without signatures, and the leader validates votes by comparing hash values rather than verifying digital signatures. This segmentation significantly reduces processing power consumption during the voting phase while maintaining authenticity through the preliminary authentication in the prepare phase.
3Reliability
If multiple digital signatures are generated for multiple votes, then vote authenticity is maintained, but energy consumption and system efficiency deteriorate
Solution Approach 1:
The patent segments the authentication process so that digital signatures are generated and validated only once during the prepare phase, not for each individual vote. Nodes generate their reply messages with signatures in the prepare phase, then can participate in multiple voting phases without generating new signatures. This segmentation dramatically reduces energy consumption while maintaining the authenticity guarantee that at least one authentication step occurred.
Solution Approach 2:
The patent requires nodes to complete the energy-intensive digital signature generation and validation in advance during the prepare phase. By performing this preliminary authentication action before the voting phases, the system ensures authenticity is established once, allowing subsequent vote operations to proceed with minimal energy consumption since they only require simple hash value comparisons rather than repeated signature verification.
Data Source
Figure 1a
Figure 1b~2
Figure 3a~3c
AI summary
A System and a computer-implemented method for authenticating distributed votes for a distributed system is suggested. The distributed system has 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 containing a proposal; generating, by each of the at least some of the plurality of nodes, a set of hash values based on a set of unique phrases, where 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 messages with the digital signature; validating, by the leader node, the signatures of the reply messages and saving the sets of hash values; the method further comprises at least one repetition of the following steps: 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 unique phrase 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 vote messages; generating comparisons of the voting hash values with the sets of hash values; validating a plurality of votes on the proposal based on the comparisons; the method further comprising: making, by the leader node, a decision on the proposal based on the last validated plurality of votes; and accepting, by each of the at least some of the plurality of nodes, the decision on the proposal.