Blockchain Consensus Using Erasure Coding and Fast Primary Switching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing consensus mechanisms in distributed blockchain systems, such as PBFT, face inefficiencies including network bottlenecks due to bulky data transmission, latency in leader node changes, and increased complexity, which affects the overall performance and security of the blockchain network.
Innovation Solution
Implementing erasure code (EC) blocks for transaction requests, which reduces data size and bandwidth usage, and an epoch change process based on weight sums to timely select a non-faulty primary node, along with a recovery process that minimizes interference with normal consensus operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional consensus mechanisms transmit complete transaction data among all nodes, then consensus reliability is maintained, but network bandwidth consumption increases and transmission latency increases
Solution Approach 1:
The patent segments transaction data into multiple erasure code blocks and distributes them across different nodes. Instead of transmitting complete transaction data to all nodes, each node receives only a portion (erasure code block), which can be reconstructed when a threshold is met. This segmentation reduces network bandwidth consumption while maintaining consensus reliability through the properties of erasure coding.
Solution Approach 2:
The patent introduces an intermediary mechanism using erasure code reconstruction. Rather than direct peer-to-peer data transmission between all nodes, the system uses erasure code blocks as intermediaries that can be reconstructed from a subset of nodes. This intermediary approach reduces the communication overhead while ensuring data integrity and consensus reliability.
2Reliability
If complete transaction data is transmitted to all nodes for consensus verification, then data integrity is ensured, but transmission time increases and system latency increases
Solution Approach 1:
Transaction data is segmented into erasure code blocks that are distributed across nodes. Each node transmits only its segment rather than complete data, reducing transmission time. The data integrity is maintained through the mathematical properties of erasure coding, which allows exact reconstruction from a threshold number of segments.
Solution Approach 2:
The system implements partial action by transmitting only the necessary portion of data (erasure code blocks) rather than complete transaction data to all nodes. The threshold mechanism ensures that partial data from a subset of nodes is sufficient for reconstruction and verification, reducing transmission time while maintaining data integrity.
3Loss of energy
If erasure code blocks are used to reduce data transmission size, then network bandwidth is conserved, but data reconstruction complexity increases
Solution Approach 1:
The patent uses erasure code blocks as simplified copies of the original transaction data. These blocks are easier to transmit and store than complete data, and the reconstruction process uses standardized decoding algorithms. The copying mechanism with erasure codes reduces network bandwidth usage while the complexity of reconstruction is managed through established error correction algorithms.
4Device complexity
If traditional leader node selection methods are used, then system simplicity is maintained, but latency in leader node changes increases
Solution Approach 1:
The patent changes the parameter for leader node selection from fixed or round-robin methods to a weight-based system. Nodes are assigned weights based on their performance metrics, and the leader is selected based on these weights. This parameter change enables faster adaptation to node performance changes and reduces latency in leader node changes while maintaining reasonable system complexity through the weight calculation mechanism.
5Reliability
If more nodes participate in consensus verification, then consensus reliability improves, but network load increases and processing overhead increases
Solution Approach 1:
The patent segments the consensus verification process by dividing transaction data into erasure code blocks that are distributed across nodes. Each node verifies only its assigned blocks rather than processing complete transaction data, reducing individual node processing overhead. The overall consensus reliability is maintained through the distributed verification of segmented data across multiple nodes.
Solution Approach 2:
The system implements partial action where nodes verify only a portion of the total data (their assigned erasure code blocks) rather than complete transaction data. This partial verification approach reduces processing overhead per node while maintaining consensus reliability through the collective verification across the network. The threshold mechanism ensures that partial verification from multiple nodes is sufficient for consensus.
Data Source
AI summary
Implementations of the present specification include a computer-implemented method for achieving a consensus among a number of network nodes of a blockchain network. The blockchain network includes a primary node and one or more backup nodes. The method includes receiving a transaction request by the primary node, sending a number of first messages to the backup nodes by the primary node, receiving second messages from the backup nodes by the primary node, reconstructing the transaction request based on data in the second messages by the primary node, sending a third message to the backup nodes by the primary node, and executing the transaction request in response to receiving a predetermined number of third messages.


