Dispersed Storage Recovery Using Encoded Slices and Secure Pre-Images

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current dispersed storage networks face challenges in securely and reliably recovering data across multiple storage units without loss, especially when dealing with data corruption or unauthorized access, due to the lack of robust error encoding and decoding mechanisms.

Innovation Solution

The implementation of a dispersed storage network that uses Cauchy Reed-Solomon error encoding and decoding, along with a managing unit and integrity processing unit, to distribute and recover data across multiple storage units, ensuring data integrity and security through encryption and secure key management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is distributed across multiple storage units in a dispersed storage network, then data availability and fault tolerance are improved, but data security and integrity during recovery are compromised

Engineering Contradiction:
Improvedata availabilityVSAvoiddata security
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent segments data into multiple encoded data slices distributed across different storage units. Each slice contains only a portion of the encoded information, making individual slices useless without others. This segmentation enables fault tolerance while maintaining security, as no single storage unit holds complete or decryptable data.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary decoding process that reconstructs the original data only when sufficient encoded slices are gathered. The decoding mechanism acts as a mediator that ensures data integrity by verifying enough valid slices are present before reconstruction, preventing unauthorized or corrupted data access.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If error correction encoding is applied to distributed data, then data integrity during recovery is improved, but the complexity of the storage system increases

Engineering Contradiction:
Improvedata integrityVSAvoidstorage system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies parameter changes by using specific error correction encoding schemes (such as Reed-Solomon or Cauchy Reed-Solomon) that transform the data into encoded slices with mathematical relationships. These parameter changes enable robust error correction while managing complexity through standardized encoding algorithms.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent creates multiple copies of encoded data slices across different storage units rather than copying the entire original data. This approach distributes the complexity burden across multiple simple storage units while maintaining integrity through the redundancy of encoded copies.

Inventive Principle:
Principle #26Copying

3Object-affected harmful factors

If encryption is implemented for secure data recovery, then data security is improved, but the speed of data recovery decreases

Engineering Contradiction:
Improvedata securityVSAvoiddata recovery speed
Core Design Contradiction:
Object-affected harmful factorsVSSpeed

Solution Approach 1:

The patent performs preliminary encryption of data into encoded slices before distribution. The encoding and encryption processes are completed in advance during the data writing phase, so that during recovery, the system only needs to gather and decode pre-encrypted slices, reducing the computational burden and time during actual recovery operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10372357B2Securely recovering stored data in a dispersed storage network
Publication Date: 2019.08.06 PURE STORAGE INC
  • US10372357B2 patent drawing
  • US10372357B2 patent drawing
  • US10372357B2 patent drawing

AI summary

A method for execution by a dispersed storage and task (DST) execution unit that includes a processor includes receiving a slice pre-image request from a computing device via a network that indicates a data slice, a requesting entity and a plurality of storage units. A data pre-image is generated by performing a pre-image function on the data slice based on the plurality of storage units. An encrypted data pre-image is generated for transmission to the computing device by performing an encryption function on the data pre-image based on a key associated with the requesting entity.