Trusted Execution Environment Key Reconstruction for Disconnected Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing programmable computing systems face challenges in securely encrypting storage for trusted execution environments, particularly when encryption keys are generated externally and need to be reproduced for data access after disconnection.
Innovation Solution
A method where a first key embedded in a virtual server image is combined with a second key and a third key received from an end customer and independent software vendor, respectively, to create a fourth key within the trusted execution environment, which is used to encrypt a memory device, ensuring secure data storage and accessibility even if the memory becomes disconnected.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If encryption keys are generated externally and stored in the encryption device, then data can be encrypted securely, but the encryption device must remain connected to the encrypted data and the encryption algorithm must be known to the holder of the data
Solution Approach 1:
The encryption key is segmented into multiple parts: a first key embedded in the virtual server image, a second key from the end customer, and a third key from the independent software vendor. These segments are combined inside the TEE to recreate the full encryption key, allowing secure encryption while enabling accessibility after disconnection through key reconstruction from distributed components.
Solution Approach 2:
The trusted execution environment (TEE) acts as an intermediary that securely combines the key segments. The TEE provides a protected environment where the first, second, and third keys are combined to recreate the encryption key without exposing the key material outside the TEE, enabling secure key management and data access restoration after disconnection.
2Device complexity
If a single encryption key is used for data encryption, then the encryption process is simple, but the system lacks flexibility for multiple key sources and distributed key management
Solution Approach 1:
The single encryption key is segmented into multiple key components distributed among different sources (virtual server image, end customer, independent software vendor). This segmentation maintains relative simplicity in the encryption process while dramatically increasing key management flexibility and adaptability to different security requirements and distribution scenarios.
Solution Approach 2:
The system uses a universal key combination mechanism inside the TEE that can accommodate multiple key sources and different key types. The same TEE-based key combination process works regardless of the specific key sources, providing multi-functionality and adaptability while maintaining a consistent and relatively simple encryption workflow.
Data Source
AI summary
Aspects of the invention include loading an image of a virtual server onto a boot partition of a trusted execution environment (TEE), wherein a first key is embedded in the image. A second key is received from an end customer of an application. Data is received from an independent software vendor (ISV) of the application, wherein the data includes a third key. The second key and the third key are combined inside the TEE to create a fourth key. An available memory space in an independent memory device is encrypted using the fourth key to create a secure data volume. Encrypted data is stored in the secure data volume.


