Searchable Encrypted Database Indexing for Secure Data Retrieval
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing database management systems face challenges in searching encrypted data without decrypting the entire database, which is bandwidth and processing intensive, especially for large databases stored on untrusted servers with uncertain security standards.
Innovation Solution
A system and method that encrypts sensitive data records using a database encryption key and generates searchable field indices, allowing for the retrieval of encrypted data records without decrypting them, using searchable field index values generated from personal information, enabling efficient search and decryption by authorized clients.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If encrypted data is stored on untrusted servers, then data security is improved, but searching capability deteriorates
Solution Approach 1:
The patent segments the data storage system into two parts: encrypted data records stored on untrusted servers and separate searchable field indices also stored on the servers. This segmentation allows the encrypted data to maintain security while the indices enable efficient searching without decrypting the actual data records.
Solution Approach 2:
The patent introduces searchable field indices as an intermediary between the search query and the encrypted data records. These indices contain encrypted or hashed versions of search fields that allow the server to perform searches on encrypted data without having access to the decryption keys, thus maintaining both security and searchability.
2Ease of operation
If the entire database is downloaded and decrypted for searching, then searching capability is improved, but bandwidth consumption and processing time worsen
Solution Approach 1:
The patent extracts the searchable field indices from the encrypted data records and stores them separately on the server. This extraction allows the search operation to be performed on the indices without needing to download or decrypt the entire database, significantly reducing bandwidth consumption and processing requirements.
Solution Approach 2:
The patent performs preliminary processing by creating and storing searchable field indices in advance on the untrusted server. These pre-computed indices enable fast searches to be performed directly on the server without requiring the client to download and decrypt the entire database, thus reducing bandwidth usage and processing time.
3Ease of operation
If the entire database is downloaded and decrypted for searching, then searching capability is improved, but processing time worsens
Solution Approach 1:
The patent extracts searchable field indices from the encrypted data records and stores them separately on the server. This extraction allows the search operation to be performed on the indices without needing to download or decrypt the entire database, significantly reducing processing time.
Solution Approach 2:
The patent performs preliminary processing by creating and storing searchable field indices in advance on the untrusted server. These pre-computed indices enable fast searches to be performed directly on the server without requiring the client to download and decrypt the entire database, thus reducing processing time.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Embodiments of the invention broadly described, introduce systems and methods for enabling the searching of encrypted data. One embodiment of the invention discloses a method for generating a searchable encrypted database. The method comprises receiving a plurality of sensitive data records comprising personal information of different users, identifying one or more searchable fields for the sensitive data records, wherein each searchable field is associated with a subset of the personal information for a user, generating a searchable field index for each of the one or more searchable fields, and encrypting the sensitive data records using a database encryption key.