Encrypted Data Search Indexing Structure

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database systems face challenges in searching encrypted data without decrypting all data, especially with deterministic encryption methods that reveal data patterns, compromising privacy and compliance with regulations.

Innovation Solution

Implementing non-deterministic encryption methods, such as block ciphers in CBC mode with a random initialization vector, and using indexing structures like B-trees with Message Authentication Codes (MACs) or Hashed Message Authentication Codes (HMACs) to enable secure and efficient searching of encrypted data without revealing plaintext patterns.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If deterministic encryption is used to protect data, then data privacy is improved, but search efficiency deteriorates because all data must be decrypted and linearly searched

Engineering Contradiction:
Improvedata privacyVSAvoidsearch efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments encrypted data into fixed-size blocks and processes each block independently through the encryption function. This allows the encryption system to handle large datasets by dividing them into manageable units, enabling efficient processing and indexing of encrypted data without requiring full decryption for search operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary indexing structure that stores encrypted data blocks along with their corresponding encrypted search terms. This intermediary layer enables search operations to be performed on encrypted data without decrypting the entire dataset, thus maintaining both privacy and search efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Stability of the object's composition

If deterministic encryption is used, then encryption consistency is improved, but information leakage worsens due to recognizable data patterns

Engineering Contradiction:
Improveencryption consistencyVSAvoidinformation leakage
Core Design Contradiction:
Stability of the object's compositionVSLoss of information

Solution Approach 1:

The patent employs a dynamic approach by using a cryptographic hash function that processes each data block independently. While the encryption function itself remains deterministic, the overall system achieves dynamic behavior through block-by-block processing, preventing pattern recognition across the entire dataset while maintaining encryption consistency within each block.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of data representation by converting variable-length data into fixed-size blocks before encryption. This parameter change ensures that even if the original data has recognizable patterns, the encrypted blocks will have uniform size and structure, making pattern recognition difficult while maintaining deterministic encryption properties.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If encrypted data is stored in database, then data security is improved, but access complexity worsens due to decryption requirements

Engineering Contradiction:
Improvedata securityVSAvoidaccess complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent performs preliminary action by pre-processing data into fixed-size blocks and encrypting them before storage. This preliminary encryption and blocking operation simplifies subsequent access operations, as the database can directly store and retrieve encrypted blocks without requiring complex decryption logic during access operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates copies of data in different formats: the original plaintext data and its corresponding encrypted block representation. This copying approach allows the system to maintain both the secure encrypted version for storage and the ability to process search queries efficiently without compromising the security of the stored data.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS7689547B2Encrypted data search
Publication Date: 2010.03.30 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7689547B2 patent drawing
  • US7689547B2 patent drawing
  • US7689547B2 patent drawing

AI summary

An indexing value may be determined, transparently with respect to a requester, based on a desired plaintext item of data and a cryptographic key. The indexing value may be used to access an entry in an indexing structure to obtain a corresponding database entry which includes a non-deterministically encrypted ciphertext item. In another embodiment, an indexing structure for a database may be accessed. Positions of items of the indexing structure may be based on corresponding plaintext items. References related to the corresponding plaintext items in the indexing structure may be encrypted and other information in the indexing structure may be unencrypted. A portion of the indexing structure may be loaded into a memory and at least one of the encrypted references related to one of the plaintext items may be decrypted. The decrypted reference may be used to access a corresponding non-deterministically encrypted data item from the database.