In-Memory Secret Key Store for Cloud Data Security
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud service providers face challenges in preventing unauthorized access to client data by administrators, necessitating improved security measures to restrict access to sensitive information.
Innovation Solution
Implementing in-memory techniques and secret key encryption systems that manage user authentication and data encryption, ensuring only authorized users can access and process client data, with secret keys stored in secure in-memory database servers and application servers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If administrators have access to client data for system management, then system operability is improved, but data security deteriorates
Solution Approach 1:
The secret key is extracted from the cloud service provider's infrastructure and stored exclusively in the client-controlled hardware module. This separation ensures that while administrators can manage the system, they cannot access the encryption key or decrypt client data, thus resolving the contradiction between system accessibility and data security.
Solution Approach 2:
A hardware-based secret key store acts as an intermediary between the application server and client data. The secret key store holds the encryption key and provides it only to authorized processes, preventing administrators from directly accessing client data while maintaining system operability through controlled key distribution.
2Duration of action of stationary object
If secret keys are stored in external storage for persistence, then data availability is improved, but security deteriorates due to potential administrator access
Solution Approach 1:
The secret key is extracted from traditional external storage systems and placed in a dedicated hardware-based secret key store that is controlled by the client, not the cloud service provider. This ensures persistence of the key while preventing administrator access, as the hardware module restricts key access to authorized processes only.
Solution Approach 2:
The secret key store is implemented as a localized, client-controlled hardware component rather than a centralized storage system. This localizes the security control to the client's infrastructure, ensuring that while the key persists, it remains inaccessible to cloud service provider administrators who lack control over the local hardware module.
3Object-affected harmful factors
If encryption is implemented for data security, then data confidentiality is improved, but system complexity deteriorates
Solution Approach 1:
The complex key management functionality is extracted from the application layer and implemented in a dedicated hardware-based secret key store. This hardware module handles key generation, storage, and distribution automatically, reducing the complexity burden on the application server while maintaining strong encryption for data confidentiality.
Solution Approach 2:
The secret key store autonomously manages the encryption key lifecycle including generation, storage, and secure distribution to authorized processes. This self-service capability eliminates the need for complex manual key management procedures, reducing system complexity while ensuring data confidentiality through consistent encryption practices.
Data Source
AI summary
In one embodiment, a computer-implemented method comprises determining, by a controller, whether a first data store is in an initialization mode. The first data store stores client data. A second data store stores credential data of the first user and credential data of a second user. An application server includes a first secret key store. An in-memory database server includes a second secret key store. The method further comprises, if the first data store is in the initialization mode, receiving, by the controller, from the second user a secret key for encrypting the client data stored in the first data store; and storing, in the first key store, the secret key. The method further comprises, in an operational mode, authenticating the first user based on the credential data of the first user; if the first user is authenticated, processing, in the application server, a user request from the first user.


