Incremental OS Image Decryption with Tweak Values
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computing environments face challenges in ensuring the security and integrity of guest operating systems, particularly in shared environments like public cloud services, where trust in system software is required to prevent malicious attacks and data tampering.
Innovation Solution
A computer system method for incremental decryption of a secure operating system image using a unique tweak value and image encryption key, combined with integrity verification, to create a secure execution environment that protects the guest operating system and its applications from hypervisors and other virtual machines.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the operating system image is encrypted using a single key for all pages, then decryption is simpler and faster, but statistical analysis can be performed to obtain meaningful data about the system image
Solution Approach 1:
The patent applies local quality by using a unique tweak value for each page of the operating system image during encryption. This means that while the same encryption key is used across all pages, each page is encrypted with different local parameters (tweak values), preventing statistical analysis while maintaining efficient single-key decryption performance.
2Device complexity
If all pages of the operating system image are encrypted using the same tweak value, then encryption and decryption processes are simpler, but the security is compromised as identical pages would encrypt to identical ciphertext
Solution Approach 1:
The patent resolves this contradiction by assigning a unique tweak value to each page during encryption. This local differentiation ensures that identical pages produce different ciphertexts, maintaining security integrity while keeping the encryption process relatively simple through the use of a single encryption key combined with page-specific tweak values.
Solution Approach 2:
The patent segments the operating system image into multiple pages, each encrypted with a unique tweak value. This segmentation approach allows the system to maintain simplicity at the overall encryption level (single key) while achieving security through page-level differentiation, balancing complexity and reliability.
3Loss of time
If the entire operating system image is decrypted at once, then the system can start execution faster, but the integrity of the decrypted image cannot be verified incrementally
Solution Approach 1:
The patent applies preliminary action by performing integrity verification on each page during the decryption process itself, before complete decryption finishes. This allows the system to detect tampering early and abort execution if integrity checks fail, maintaining reliability without requiring complete decryption before verification.
Solution Approach 2:
The patent segments the decryption and verification process into page-level operations. Each page is decrypted and verified independently, allowing incremental integrity checking. This approach balances boot time and reliability by enabling early failure detection while processing pages sequentially rather than requiring complete decryption beforehand.
4Ease of operation
If the hypervisor has full access to the operating system image for management purposes, then system management is easier, but the security and confidentiality of the guest operating system is compromised
Solution Approach 1:
The patent introduces an intermediary layer (the encryption/decryption mechanism with tweak values) between the hypervisor and the operating system image. The hypervisor can manage the encrypted image and pass decryption parameters to the guest OS, enabling management functionality while preventing direct access to plaintext data, thus maintaining security against malicious hypervisors.
Solution Approach 2:
The patent applies local quality by encrypting different portions (pages) of the operating system image with different tweak values, allowing selective decryption and access. This enables the hypervisor to manage specific pages as needed while the rest remain encrypted, balancing ease of operation with security by limiting exposure to only necessary data portions.
Data Source
Figure 1
Figure 2
Figure 3A
AI summary
Secure processing within a computing environment is provided by incrementally decrypting a secure operating system image, including receiving, for a page of the secure operating system image, a page address and a tweak value used during encryption of the page. Processing determines that the tweak value has not previously been used during decryption of another page of the secure operating system image, and decrypts memory page content at the page address using an image encryption key and the tweak value to facilitate obtaining a decrypted secure operating system image. Further, integrity of the secure operating system image is verified, and based on verifying integrity of the secure operating system image, execution of the decrypted secure operating system image is started.