Database Search Device Using Command Segmentation for Encrypted Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Encryption databases that use searchable encryption restrict the types of search commands users can execute, limiting usability and increasing time and costs for data retrieval, as passing an encryption key to an external database is not secure.

Innovation Solution

A database search device and method that separates input search commands into executable and unexecutable parts, allowing the execution of arbitrary search commands by processing unexecutable commands on results from executable commands executed in an external database.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If searchable encryption is used to encrypt data in an external database, then data security is improved, but the types of search commands that can be executed are restricted

Engineering Contradiction:
Improvedata securityVSAvoidsearch command types
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The search command is divided into two parts: an executable part that can be processed by the encryption database and a non-executable part that requires local processing. This segmentation allows the system to maintain security while expanding search capabilities beyond what a single encryption method can support.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The local device acts as an intermediary between the user and the encryption database. It receives the complete search command, separates it into executable and non-executable parts, executes the executable part on the database results, and combines the outcomes to produce the final search result, thereby enabling complex searches without exposing encryption keys.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If only match retrieval encryption is used, then data security is maintained, but only equality search commands can be executed

Engineering Contradiction:
Improvedata securityVSAvoidsearch command types
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The search functionality is segmented into equality-based searches (handled by match retrieval encryption in the database) and other search types (handled locally). This allows the system to leverage the security of encrypted equality searches while performing range searches, prefix searches, and other operations locally on the retrieved data.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system moves part of the search processing from the database dimension to the client dimension. By retrieving encrypted data that matches basic criteria and then performing additional search operations locally, the system effectively adds a second dimension of search capability without compromising the encryption scheme.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If only order-preserving encryption is used, then data security is maintained, but only range search commands can be executed

Engineering Contradiction:
Improvedata securityVSAvoidsearch command types
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The search command is segmented into range-based filtering (executed by order-preserving encryption in the database) and additional search criteria (executed locally). This enables the system to perform efficient range queries in the encrypted state while applying more complex search conditions after decryption of the retrieved results.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system transitions from relying solely on order-preserving encryption for all search types to a hybrid approach where range searches are performed in the encrypted domain and other search types are performed in the decrypted domain, effectively adding another dimension of search flexibility.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

4Adaptability or versatility

If encryption keys are passed to the external database, then arbitrary search commands can be executed, but security is compromised

Engineering Contradiction:
Improvesearch command typesVSAvoidsecurity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The encryption key is extracted from the external database and kept exclusively in the local device. This extraction allows the local device to perform additional search operations on retrieved data without the database ever having access to the key, thereby maintaining security while enabling arbitrary search capabilities.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of passing the key to the database to enable arbitrary searches, the system inverts the approach by keeping the key local and performing additional search operations after data retrieval. This reversal maintains security while achieving the same functional goal of supporting arbitrary search commands.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS10339140B2Database search device, database search method, and program
Publication Date: 2019.07.02 NEC CORP
  • US10339140B2 patent drawing
  • US10339140B2 patent drawing
  • US10339140B2 patent drawing

AI summary

Provided is a database search device that, when searching an external database, efficiently executes any search command even if the usable search commands are restricted. The database search device comprises: a search command separating unit that separates input search commands into a first search command that can be executed in a prescribed database and a second search command that cannot be executed in the prescribed database; and a search command execution unit that provides the search results obtained by executing the second search command on the search results obtained by executing the first search command in the prescribed database, as the search results for the input search command.