Homomorphic String Matching for Private Cloud Data Queries
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional techniques for performing computations on encrypted data in cloud-based storage are inefficient, particularly for string matching operations, as they require decryption or expose sensitive information, compromising data privacy and security.
Innovation Solution
Implementing homomorphic encryption with 'add-then-multiply' and 'multiply-then-add' techniques, combined with randomization, hashing, and Galois unpacking algorithms, to enable efficient string matching on encrypted data without decryption, allowing for secure and private computations on encrypted data within cloud storage systems.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional block ciphers are used to encrypt data in cloud storage, then data privacy and security are improved, but the ability to perform meaningful computation on encrypted data is lost
Solution Approach 1:
The patent introduces homomorphic encryption as an intermediary that allows cloud service providers to perform computations on encrypted data without decrypting it. The homomorphic encryption scheme acts as a mediator between the need for data security and the need for computation capability, enabling the cloud provider to operate on ciphertexts and produce valid ciphertexts that, when decrypted, yield correct results.
2Measurement precision
If data is returned to the data owner for decryption to enable computation, then computation accuracy is improved, but data privacy and security are compromised
Solution Approach 1:
Homomorphic encryption serves as an intermediary that eliminates the need to return encrypted data to the data owner for decryption. The cloud service provider can perform computations directly on the encrypted data, and the results remain encrypted until the data owner decrypts them locally, thus maintaining both computation accuracy and data security.
3Ease of operation
If cloud service providers are given access to decryption keys to enable computation on encrypted data, then computation capability is improved, but data privacy is compromised
Solution Approach 1:
Homomorphic encryption acts as an intermediary that eliminates the need for cloud service providers to have access to decryption keys. The encryption scheme enables computations to be performed on encrypted data by the cloud provider without requiring them to possess or handle sensitive cryptographic keys, thus maintaining computation capability while preserving data privacy.
4Reliability
If homomorphic encryption is used to enable computation on encrypted data, then data security is maintained, but processing efficiency is significantly reduced
Solution Approach 1:
The patent segments the homomorphic encryption scheme into distinct components: a setup phase that generates cryptographic parameters, an encryption phase that converts plaintext to ciphertext, and an evaluation phase that performs computations on ciphertexts. This segmentation allows for optimized implementation of each component, improving overall processing efficiency while maintaining data security.
5Reliability
If string matching is performed on encrypted data using conventional techniques, then data privacy is maintained, but the matching accuracy and completeness are compromised
Solution Approach 1:
Homomorphic encryption serves as an intermediary that enables accurate string matching on encrypted data. The encryption scheme allows the cloud service provider to perform string matching operations on ciphertexts, producing encrypted results that, when decrypted, reveal accurate match information without compromising the privacy of the underlying data.
Data Source
AI summary
In aspects of string matching in encrypted data, a computing device stores homomorphic encrypted data as a dataset, and implements a string matching application that receives an encrypted query string as a query of the homomorphic encrypted data. The string matching application can then apply algorithms to perform addition and multiplication operations, and determine whether there are matching strings of the encrypted query string in the dataset. The string matching application can compute, for each row of the dataset, a sum of some function of dataset bits and query bits for a row result, and multiply the row results of the computed rows to determine matching strings. Alternatively, the string matching application can compute, for each row of the dataset, a product over some function of the dataset bits and the query bits for a row result, and add the row results of the computed rows to determine matching strings.


