Blockchain Data Sharding with TEE-Based ECC for Storage Equality
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed ledger systems (DLSs) face challenges in efficiently storing blockchain data, leading to high consumption of technical resources and data inequality among nodes, which can compromise data security and processing efficiency.
Innovation Solution
Implementing error correction coding (ECC) in trusted execution environments (TEEs) to encode blockchain data, allowing nodes to store only a portion of the encoded blocks and share the remainder, using hash values for authentication and data retrieval, thereby reducing storage burden and maintaining data equality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If every node stores an entire copy of the blockchain, then data completeness is improved, but storage space consumption increases significantly
Solution Approach 1:
The patent segments blockchain data into multiple shards, where each node stores only a portion of the total blockchain data rather than complete copies. This segmentation allows distributed storage while maintaining data accessibility through cryptographic verification mechanisms.
Solution Approach 2:
The patent uses cryptographic copying where nodes store hash values and commitments of blockchain data instead of actual data copies. This allows verification of data integrity without storing the full data, significantly reducing storage requirements while maintaining reliability.
2Volume of stationary object
If a few shared nodes store the entire copy of the blockchain, then storage space is reduced, but data security risk increases due to data inequality
Solution Approach 1:
By segmenting blockchain data across multiple nodes through sharding, the patent eliminates data concentration on few nodes. Each node holds a segment, creating distributed redundancy that enhances security - if one node fails, other nodes retain segments that can be reconstructed into complete data.
Solution Approach 2:
The patent implements local quality by allowing different nodes to store different types or portions of data segments based on their capabilities and roles. This creates a heterogeneous distribution pattern that optimizes both storage efficiency and security, rather than uniform distribution.
3Reliability
If error correction coding is performed on each node, then data integrity is improved, but computational resource consumption increases
Solution Approach 1:
The patent merges error correction functionality at the network level rather than requiring each node to independently implement it. Centralized or coordinated error correction mechanisms process data segments collectively, reducing redundant computational efforts across nodes while maintaining overall data integrity.
Solution Approach 2:
The patent introduces intermediary components (such as validators or coordination layers) that handle error correction operations. These intermediaries process error correction for multiple nodes, reducing the computational burden on individual nodes while ensuring data integrity across the network.
4Volume of stationary object
If blockchain data is compressed to save storage space, then storage efficiency is improved, but data retrieval speed decreases
Solution Approach 1:
The patent segments data into shards that are stored distributedly, allowing parallel retrieval operations. When data is needed, multiple nodes can simultaneously contribute their segments, maintaining retrieval speed despite reduced individual node storage. The segmentation enables concurrent data assembly rather than sequential decompression.
Data Source
AI summary
Disclosed herein are methods, systems, and apparatus, including computer programs encoded on computer storage media, for storing blockchain data. One method includes receiving a request from an application component of a blockchain node to execute one or more software instructions in a trusted execution environment (TEE); determining one or more blockchain node blocks for executing the one or more software instructions; performing error correction coding of the one or more blocks in the TEE to generate one or more encoded blocks; dividing each of the one or more encoded blocks into a plurality of datasets; selecting one or more datasets from each of the one or more encoded blocks; and hashing the one or more datasets to generate one or more hash values corresponding to the one or more datasets for use in replacing the one or more datasets to save storage space of the blockchain node.


