Encryption Key Segmentation for Secure Data Deduplication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Third-party storage systems face challenges in performing data deduplication while maintaining data security, as user-specific encryption keys prevent identical files from being recognized as the same, leading to inefficiencies and vulnerabilities to chosen plaintext attacks.

Innovation Solution

Generating encryption keys and identifiers based on the data itself, with the option to modify the data or keys for enhanced security, allowing for data deduplication while protecting against chosen plaintext attacks by ensuring only authorized clients can locate and decrypt the data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If user-specific encryption keys are used to encrypt client data, then data security is improved, but data deduplication capability deteriorates

Engineering Contradiction:
Improvedata securityVSAvoiddata deduplication capability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The encryption key is segmented into two parts: a data-derived component (hash of the plaintext) and a user-specific component (stored securely). This segmentation allows the system to derive consistent keys for deduplication purposes while maintaining user-specific security requirements. The data-derived portion enables identical files to produce identical keys for deduplication, while the user-specific portion ensures that only authorized users can decrypt their data.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A key derivation function acts as an intermediary between the plaintext data and the encryption key. This intermediary transforms the plaintext into a derived key that can be used for both deduplication identification and encryption, bridging the gap between security requirements and deduplication efficiency. The mediator ensures that identical inputs produce identical outputs while maintaining cryptographic security.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If user-specific encryption keys are used for each client, then unauthorized access between clients is prevented, but the ability to recognize identical files across clients is lost

Engineering Contradiction:
Improveunauthorized access preventionVSAvoidfile recognition complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Different parts of the encryption key serve different purposes: the data-derived portion provides local quality for file recognition and deduplication, while the user-specific portion provides local quality for security. This allows each component of the key to optimize for its specific function, enabling both file recognition and unauthorized access prevention simultaneously.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system changes the parameter of the encryption key from being entirely user-specific to being a combination of data-derived and user-specific components. This parameter change enables the key to exhibit different properties in different contexts: consistency for deduplication and user-specificity for security, resolving the contradiction between file recognition and access control.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If encryption is performed before storage to protect data, then data confidentiality is improved, but the storage system's ability to perform deduplication deteriorates

Engineering Contradiction:
Improvedata confidentialityVSAvoidstorage efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary key derivation from the plaintext data before encryption. This preliminary action creates a fingerprint or hash of the data that can be used for deduplication identification. By performing this action beforehand, the system enables the storage system to recognize identical files without needing to decrypt them, thus maintaining both confidentiality and storage efficiency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of storing the actual plaintext data for deduplication comparison, the system creates and stores a copy in the form of a derived key or hash. This copied representation is sufficient for identifying duplicate files while the actual encrypted data remains confidential. The copy enables deduplication functionality without compromising data security.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8479304B1Selectively protecting against chosen plaintext attacks in untrusted storage environments that support data deduplication
Publication Date: 2013.07.02 COHESITY INC
  • US8479304B1 patent drawing
  • US8479304B1 patent drawing
  • US8479304B1 patent drawing

AI summary

Various methods and systems for selectively protecting against chosen plaintext attacks when encrypting data for storage on an untrusted storage system are disclosed. One method involves generating an encryption key for use in encrypting data and generating an identifier for the data. Generation of the encryption key is based upon a hash of the data to be encrypted, and generation of the identifier is based upon the data to be encrypted and/or the encryption key. The method also involves detecting whether an encrypted copy of the data is already stored by a storage system, based upon the identifier. The method also detects whether a higher level of security has been specified for the data and, if so, modifies the data to be encrypted or the encryption key, based upon a client-specific value, prior to generating the identifier.