MPC Key Management for Cloud Data Access Without Key Exposure
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud providers often have access to encryption keys, making data vulnerable to breaches and unauthorized access, and existing key management systems are either too restrictive or lack assurance in data portability and security.
Innovation Solution
Implementing multi-party computation (MPC) systems with secure cryptoprocessors to manage encryption keys, ensuring that only authorized entities can decrypt data using secure key management protocols, including transient encryption and multi-party responses to enhance security and control.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If cloud providers store encryption keys with encrypted data, then data can be decrypted and accessed by the cloud provider, but data becomes vulnerable to breaches and unauthorized access by hackers or rogue employees
Solution Approach 1:
The encryption key is segmented into multiple shares distributed across different MPC servers. No single server or cloud provider possesses the complete key, making it impossible to decrypt data unilaterally. This segmentation resolves the contradiction by enabling controlled access while preventing unauthorized decryption even if some shares are compromised.
Solution Approach 2:
MPC servers act as intermediaries between the cloud provider and the data decryption process. The cloud provider can request decryption, but the MPC servers mediate by requiring multiple parties to collaborate and generate decryption shares without revealing the full key. This intermediary mechanism enables authorized access while protecting against unauthorized access.
2Object-affected harmful factors
If zero-knowledge authentication methods are used, then cloud providers cannot access encrypted data, but this approach is too restrictive and thwarts opportunities to use data for business purposes
Solution Approach 1:
The system dynamically adjusts data accessibility based on authorization. When authorized, multiple MPC servers can collaborate to decrypt data for legitimate business purposes. When unauthorized, the distributed key structure prevents access. This dynamic approach resolves the contradiction by enabling data usability when needed while maintaining security when unauthorized.
Solution Approach 2:
The system changes the effective security parameter based on authorization status. With proper authorization and sufficient MPC server participation, decryption becomes possible. Without authorization or with insufficient participation, decryption remains impossible. This parameter change enables the system to transition between secure and accessible states as needed.
3Object-affected harmful factors
If multiple MPC servers are required to decrypt data, then security is enhanced, but system complexity increases
Solution Approach 1:
MPC servers perform multiple functions: key sharing, decryption collaboration, and authorization verification. This multi-functionality reduces overall system complexity by consolidating multiple security functions into a single versatile infrastructure, resolving the contradiction between enhanced security and system complexity.
Data Source
AI summary
Provided are computer implemented systems, methods, and computer program products for secure key management, including receiving, by a remote data storage service, a request for data stored as encrypted data by the remote data storage service, the request initiated by a first entity, transmitting, to a first multi-party computation (MPC) server controlled by the first entity, an MPC request, receiving an MPC response from the first MPC server including a secret generated by a secure cryptoprocessor, and decrypting the encrypted data based at least partially on the MPC response. The computer implemented systems, methods, and computer program products may include blocking at least one of a subsequent MPC request from the data storage service, a subsequent MPC response to the data storage service, a link, or a connection between the data storage service and an MPC server computer of the entity to prevent decryption.


