Database Search Device Using Command Segmentation for Encrypted Data
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Reliability
If only match retrieval encryption is used, then data security is maintained, but only equality search commands can be executed
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.
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.
3Reliability
If only order-preserving encryption is used, then data security is maintained, but only range search commands can be executed
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.
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.
4Adaptability or versatility
If encryption keys are passed to the external database, then arbitrary search commands can be executed, but security is compromised
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.
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.
Data Source
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.


