Homomorphic Key Splitting for Secure Multi-Tenant Cloud Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In an as-a-service (aaS) context, security-conscious end-customers need to utilize shared or distributed resources in a multi-tenant environment while maintaining full security and control over their encryption keys, ensuring that service providers do not know or access these keys.
Innovation Solution
Implementing a three-way key-splitting method using homomorphic key-management, where keys are split into shares owned by the service provider, the end-customer, and a finer-granularity key specific to the resource, all maintained under homomorphic encryption, ensuring that only the end-customer can access their data and that service providers remain unaware of the keys.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If keys are managed centrally by service providers in aaS environments, then service providers can provide key management services, but security-conscious end-customers cannot maintain full control over their encryption keys
Solution Approach 1:
The patent segments the encryption key into multiple shares using secret sharing schemes. Each share is distributed to different entities (service provider, customer, etc.), and no single entity can reconstruct the full key alone. This allows centralized service provision while maintaining customer control and security.
Solution Approach 2:
The patent introduces homomorphic encryption as an intermediary mechanism that allows computations on encrypted data without decrypting it. This enables service providers to perform key management operations on customer keys without actually accessing or knowing the key values, thus maintaining both service capability and customer control.
2Productivity
If service providers access customer encryption keys to provide services, then service delivery is improved, but security is compromised as providers may know or access customer keys
Solution Approach 1:
Homomorphic encryption serves as an intermediary that enables service providers to perform necessary operations on customer keys without actually accessing the key material. The mathematical properties of homomorphic encryption allow computations on ciphertexts that yield the same result as computations on plaintexts, thus enabling service delivery while preventing key exposure.
Solution Approach 2:
The patent extracts the ability to perform key operations from the actual key material itself. By using homomorphic properties, the system separates the computational functionality from the secret key, allowing services to be performed on encrypted keys without exposing the actual key values to service providers.
3Device complexity
If customer keys are stored encrypted in service provider systems, then key management is simplified, but security is reduced as active attacks can potentially access master keys
Solution Approach 1:
The master key is segmented into multiple shares that are distributed and managed separately. Even if an attacker compromises the service provider's storage system, they can only obtain key shares, not the complete master key. This segmentation maintains simplified key management while defending against active attacks.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The present invention discloses methods and devices for key management in an as-a- service (aaS) context. Methods include the steps of: upon receiving a creation request in a provider computing-environment, creating a specific key in at least one location in the provider computing-environment by repetitively computing respective specific-key contributions: in a set of N computing resources in the provider computing-environment; and in a set of M customer locations in a customer computing-environment; and applying the respective specific-key contributions to change a specific-key value in the computing resources, wherein the respective specific-key contributions are never revealed to any computing resources, and to any customer locations, other than respective contributors; wherein at least one location is a region of memory located in a computing resource operationally connected to the provider computing-environment, wherein the customer locations are regions of memory located in a computing resource operationally connected to the customer computing-environment.