Blockchain Data Storage Using TEE Erasure Coding and Hash Replacement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed ledger systems (DLSs) face challenges in efficiently storing blockchain data, leading to high resource consumption and data inequality among nodes, as each node stores an entire copy of the blockchain, which results in storage inefficiency and potential security risks due to uneven data distribution.

Innovation Solution

Implementing error correction coding (ECC) in trusted execution environments (TEEs) to encode blockchain data, allowing nodes to store a subset of encoded blocks and share the remainder, with hash values used for authentication and data recovery, reducing storage burden and maintaining data equality.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If every node stores an entire copy of the blockchain, then data completeness is improved, but storage resource consumption increases and data inequality arises

Engineering Contradiction:
Improvedata completenessVSAvoidstorage resource consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent divides blockchain data into multiple segments using erasure coding, where the original data is split into k data blocks and n-k parity blocks. Nodes store only their assigned segments rather than complete copies, reducing individual storage requirements while maintaining collective data completeness through the distributed segment structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the storage parameter from storing complete data copies to storing encoded data segments with specific redundancy ratios. By applying erasure coding parameters (k, n), the system changes the storage configuration to achieve optimal balance between storage efficiency and data recovery capability, allowing nodes to store fewer bytes while preserving data integrity.

Inventive Principle:
Principle #35Parameter changes

2Ease of operation

If every node stores an entire copy of the blockchain, then data availability is improved, but data inequality and security risks increase

Engineering Contradiction:
Improvedata availabilityVSAvoiddata security
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

By segmenting blockchain data across multiple nodes through erasure coding, the patent ensures that no single node holds the complete data set, preventing data inequality. Data availability is maintained because any k out of n segments can reconstruct the original data, while security is improved by eliminating single points of failure and reducing the impact of compromised nodes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent incorporates redundancy through erasure coding parity blocks as a preventive measure against data loss. This beforehand cushioning ensures that even if some nodes fail or are compromised, the original data can be recovered from the remaining segments, thus protecting data security and availability without requiring every node to store complete copies.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

3Reliability

If error correction coding is performed on each node, then data security is improved, but computational overhead increases

Engineering Contradiction:
Improvedata securityVSAvoidcomputational overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies erasure coding in advance during the data ingestion phase, encoding blockchain data into segments before distribution to nodes. This preliminary action ensures data security is established upfront, and nodes only need to perform lightweight operations for storing and retrieving segments, avoiding repeated heavy computational overhead during normal operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of each node independently performing error correction coding, the patent creates encoded copies of the data through erasure coding segments. These pre-encoded segments are distributed to nodes, which then store and share them without needing to perform complex coding operations, significantly reducing computational overhead while maintaining data security through the inherent redundancy of the encoded segments.

Inventive Principle:
Principle #26Copying

Data Source

PatentEP3682342B1Shared blockchain data storage based on error correction coding in trusted execution environments
Publication Date: 2021.08.18 ADVANCED NEW TECHNOLOGIES CO LTD
  • EP3682342B1 patent drawingFigure 1
  • EP3682342B1 patent drawingFigure 2
  • EP3682342B1 patent drawingFigure 3

AI summary

Disclosed herein are methods, systems, and apparatus, including computer programs encoded on computer storage media, for storing blockchain data. One of the methods 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 blocks stored on the blockchain node 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 to a plurality of datasets based on the one or more software instructions; selecting one or more datasets from the plurality of datasets of each of the one or more encoded blocks based on the one or more software instructions; and hashing the one or more datasets to generate one or more hash values corresponding to the one or more datasets, the one or more hash values being used for replacing the one or more datasets to save storage space of the blockchain node.