Bloom Filter Recovery for Desynchronized Permissioned Blockchains
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing blockchain consensus mechanisms, such as proof of work, are computationally expensive and time-consuming, making it difficult for devices with lower processing power to participate effectively, and existing solutions take too long to achieve consensus.
Innovation Solution
A system using auditing nodes and consensus nodes in a permissioned blockchain network that employs a limited number of auditing nodes to perform consensus audits and recovery of desynchronized nodes using bloom filters, reducing computational requirements and network traffic.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If proof of work consensus mechanism is used, then security and decentralization are improved, but processing time and computational cost increase significantly
Solution Approach 1:
The patent divides the blockchain network into different node types (auditing nodes, consensus nodes, application nodes) with specialized functions. Auditing nodes perform verification while consensus nodes handle block creation, segmenting the computationally intensive tasks from the consensus-making process. This segmentation allows faster consensus without compromising security verification.
Solution Approach 2:
The patent introduces auditing nodes as intermediaries that verify transaction validity before consensus nodes include them in blocks. This intermediary layer handles the computational verification work, allowing consensus nodes to reach agreement faster without performing expensive proof-of-work computations themselves.
2Reliability
If proof of work consensus mechanism is used, then decentralized verification is improved, but processing power requirements increase prohibitively
Solution Approach 1:
The patent segments verification responsibilities by introducing auditing nodes that specialize in transaction validation. These auditing nodes perform the computationally intensive verification work, while consensus nodes with potentially lower processing power can still participate in consensus by relying on the auditing nodes' verification results.
Solution Approach 2:
Auditing nodes perform self-verification of transactions using bloom filters and other efficient data structures. This self-service verification mechanism allows the system to maintain high verification standards without requiring every consensus node to perform expensive computational checks, reducing overall processing power requirements.
3Reliability
If traditional consensus mechanisms are used, then comprehensive verification is improved, but network traffic and computational overhead increase
Solution Approach 1:
The patent introduces auditing nodes as intermediaries between application nodes and consensus nodes. These auditing nodes handle the complexity of comprehensive verification using specialized data structures like bloom filters, shielding the rest of the network from this complexity while maintaining thorough verification standards.
Solution Approach 2:
The patent changes verification parameters by using bloom filters with configurable false positive rates and auditing node quorum requirements. This allows the system to adjust verification thoroughness versus complexity trade-offs dynamically, maintaining reliability while managing system complexity through parameter optimization rather than structural complexity.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for recovery of missing or extra data using a bloom filter includes: storing a plurality of data messages; generating a bloom filter of the data messages, the bloom filter being generated using a number of hash rounds and with a size at least double the number of data messages; generating a recover message including the number of data messages, the number of hash rounds, the size, and the generated bloom filter; transmitting the recover message to a node; receiving a response message from the node, the response message including at least one additional data message; and inserting the at least one additional data message into the plurality of data messages.