Blockchain State Storage With Checksum-Verified Log Files
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing blockchain technologies face inefficiencies in storing large amounts of structured data due to the need to traverse Merkle trees for key-value retrieval, leading to high computational costs and resource usage, while maintaining state consistency and enabling efficient state fetching.
Innovation Solution
Implementing a storage solution that uses checksums instead of merklization, stores an index of disk locations in-memory, requires transaction commitment before execution, and charges fees for on-chain activity, utilizing unstructured data logs and log files for efficient state synchronization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If Merkle tree structure is used for state storage, then state consistency and verification are improved, but computational overhead and read complexity increase due to O(log(n)) traversal requirements
Solution Approach 1:
The patent extracts the verification mechanism from the Merkle tree structure itself and replaces it with simple checksums stored alongside data. Instead of requiring tree traversal to verify state consistency, the system computes and stores checksums that can be verified in constant time, thereby extracting the verification function from the complex tree structure while maintaining reliability.
Solution Approach 2:
The patent uses disposable checksums instead of persistent Merkle tree structures for verification. Each data block has an associated checksum that can be independently verified and then discarded, eliminating the need to maintain and traverse complex Merkle trees while still ensuring state consistency through simple cryptographic verification.
2Reliability
If Merkle tree traversal is used for key-value retrieval, then data integrity is ensured, but access speed decreases due to deeper traversal paths as data grows
Solution Approach 1:
The patent replaces the mechanical tree traversal process with a direct checksum verification mechanism. Instead of mechanically navigating through tree levels to reach a key-value pair, the system uses cryptographic checksums to verify integrity in constant time, substituting the mechanical traversal system with a mathematical verification system that is both faster and equally reliable.
3Loss of energy
If intermediate Merkle nodes are maintained in memory, then disk write operations are reduced, but memory usage and system resource consumption increase
Solution Approach 1:
The patent uses disposable checksums instead of maintaining persistent in-memory Merkle node structures. Checksums are computed when needed, stored temporarily alongside data blocks, and discarded after verification, eliminating the need to maintain large in-memory tree structures while still providing integrity verification without excessive memory consumption.
4Productivity
If batched state updates are implemented, then update efficiency is improved, but the complexity of maintaining Merkle tree consistency across batches increases
Solution Approach 1:
The patent segments the state into independent data blocks, each with its own checksum, allowing batch updates to be processed as independent units. This segmentation eliminates the need to maintain Merkle tree consistency across batches, as each block can be updated and verified independently, greatly simplifying batch processing while maintaining integrity.
Data Source
AI summary
A method for storing blockchain data includes receiving a first batch command, the first batch command comprising one or more write operations, and adding one or more entries to a new log file by performing the one or more write operations. The method further includes identifying one or more active entries from one or more previous log files, appending the identified one or more active entries to the new log file, and, based on a determination that the one or more previous log files do not comprise any other active entries, deleting the one or more previous log files.


