Searchable Encryption Microservice for Secure Data Search

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Client-side encryption in data storage services poses challenges in providing search functionality without compromising data security, as the data storage service cannot decrypt encrypted data, leading to a conflict between data security and searchability.

Innovation Solution

Implementing a searchable-encryption microservice at the client that encrypts and processes search queries using the same cryptographic key, allowing the client to search encrypted data without decrypting it, ensuring data integrity and security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If client-side encryption is implemented to protect data security, then data security is improved, but search functionality deteriorates because the storage service cannot decrypt encrypted data

Engineering Contradiction:
Improvedata securityVSAvoidsearch functionality
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

A proxy service is introduced as an intermediary between the client and storage service. The proxy receives search queries from the client, decrypts them using stored credentials, translates them into storage service query language, executes the queries on encrypted data, and returns results to the client. This mediator enables search functionality without requiring the storage service to have decryption capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system is divided into distinct functional components: the client that encrypts data, the storage service that stores encrypted data without decryption capabilities, and the proxy service that handles search operations. This segmentation allows each component to perform its specialized function while maintaining overall system security and functionality.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the storage service stores encrypted data without access to decryption keys, then data security is improved, but the ability to perform meaningful searches deteriorates

Engineering Contradiction:
Improvedata securityVSAvoidsearch efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The client performs preliminary encryption of data before storing it with the storage service. The storage service stores only the encrypted data without needing decryption keys. When search is needed, the proxy service handles the decryption and query execution, allowing the storage service to maintain its security model while still enabling search functionality through pre-encrypted data storage.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the client encrypts data before transmission to storage service, then data security is improved, but the complexity of managing encryption keys and search queries increases

Engineering Contradiction:
Improvedata securityVSAvoidencryption key management
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The complexity of encryption key management and search query translation is extracted from the storage service and placed in the proxy service. The storage service only handles simple storage and retrieval of encrypted data, while the proxy service manages the complex tasks of key management, query decryption, and query translation. This extraction reduces the complexity burden on the storage service.

Inventive Principle:
Principle #2Taking out (Extraction)

4Reliability

If the storage service attempts to search encrypted data without decryption, then data security is maintained, but search accuracy deteriorates

Engineering Contradiction:
Improvedata securityVSAvoidsearch accuracy
Core Design Contradiction:
ReliabilityVSMeasurement precision

Solution Approach 1:

The proxy service acts as an intermediary that ensures search accuracy by decrypting queries and translating them into appropriate storage service queries. This intermediary layer guarantees that searches are performed accurately on the encrypted data while maintaining security, as the proxy can precisely control the decryption and query execution process.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10885217B1Client microservice for secure and efficient searchable encryption
Publication Date: 2021.01.05 CYBER ARK SOFTWARE LTD
  • US10885217B1 patent drawing
  • US10885217B1 patent drawing
  • US10885217B1 patent drawing

AI summary

Disclosed embodiments relate to implementing, as a microservice at a client, a searchable-encryption service. Operations may include executing the microservice at the client to perform operations including: encrypting data based on a cryptographic key accessible to the client; sending the encrypted data to a network storage resource; identifying, at the microservice, a search query in plaintext; encrypting the search query according to the cryptographic key; sending the encrypted search query to the network storage resource; and receiving a response to the encrypted search query from the network storage resource.