Encrypted Data Substring Token Indexing for Search Sargability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional methods for searching encrypted data records require accessing and decrypting every record, making them inefficient compared to searching unencrypted records, as they cannot utilize sorted indexes for filtering without decryption.

Innovation Solution

Generating and storing substring tokens of different lengths for encrypted data values, allowing for efficient searching by encrypting the search string and matching it against encrypted tokens in a separate table using binary search algorithms or trees, thereby avoiding the need to decrypt all records.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional search methods are used on encrypted data records, then data security is maintained, but search performance deteriorates because every record must be accessed and decrypted

Engineering Contradiction:
Improvedata securityVSAvoidsearch performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-computing and storing encrypted substring tokens for all possible substrings of encrypted data values before search operations. This allows the search system to efficiently query encrypted data without decrypting entire records, as the tokens are prepared in advance and can be directly compared with encrypted search strings.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates copies of the encrypted data in the form of substring tokens stored in a separate search index table. These token copies enable efficient searching operations on encrypted data without requiring access to or decryption of the original encrypted records, thus maintaining security while improving search performance.

Inventive Principle:
Principle #26Copying

2Measurement precision

If all encrypted records are decrypted for searching, then complete search accuracy is achieved, but CPU time and I/O operations increase significantly

Engineering Contradiction:
Improvesearch accuracyVSAvoidCPU time and I/O operations
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent extracts only the necessary portion of encrypted data for searching by computing substring tokens from encrypted values. Instead of decrypting entire records, the system extracts and stores encrypted substrings in a dedicated index table, allowing accurate pattern matching to be performed on these extracted tokens without processing the full encrypted records.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments encrypted data values into multiple substrings of different lengths and stores each as a separate encrypted token. This segmentation allows the search system to efficiently match patterns by comparing encrypted search strings against the segmented tokens, achieving accurate search results without decrypting complete records.

Inventive Principle:
Principle #1Segmentation

3Productivity

If a sorted index is used for unencrypted data, then search efficiency is improved, but this approach cannot be directly applied to encrypted data without decryption

Engineering Contradiction:
Improvesearch efficiencyVSAvoidindex structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent changes the parameter of the index structure by storing encrypted substring tokens instead of unencrypted values. This allows the index to maintain sorted order on encrypted data using deterministic encryption, enabling efficient binary search operations on encrypted values without requiring decryption, thus preserving search efficiency while working with encrypted data.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10528557B1Database methodology for searching encrypted data records
Publication Date: 2020.01.07 ALLSCRIPTS SOFTWARE LLC
  • US10528557B1 patent drawing
  • US10528557B1 patent drawing
  • US10528557B1 patent drawing

AI summary

A method for increasing sargability of encrypted records to allow for searching of a first column of a first data table for encrypted values containing a search string without having to decrypt all encrypted values involves, for each respective data record in the first data table, accessing an encrypted data value from the first column, decrypting the accessed encrypted data value, generating from the decrypted data value a respective plurality of substrings of various lengths, encrypting each substring of the respective plurality of substrings as an encrypted substring token, and storing each encrypted substring token in association with a reference value for lookup of a corresponding record in the first data table. Subsequently, the first column of the first data table can be searched for encrypted values containing a first search string by encrypting the first search string and searching for encrypted substring tokens matching the encrypted first search string.