Secure Boot Enclave Package Processing With Post-Boot Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing Trusted Execution Environments (TEEs) like TPMs and enclaves cannot verify the overall configuration of a computer system, including processes outside the enclave, and do not provide access to high-performance hardware, limiting their effectiveness in ensuring the integrity and confidentiality of code and data processing.
Innovation Solution
A method is implemented that creates a secure connection to an enclave, verifies its genuineness and the initial state of the computer system using a quote from a security module, and processes packages outside the enclave after confirming the predetermined state, ensuring only trusted modules are loaded and the environment is secure.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If code and data are processed outside the enclave for high-performance hardware access, then processing performance is improved, but the ability to verify system configuration and ensure integrity is worsened
Solution Approach 1:
The patent introduces an enclave as an intermediary secure environment that mediates between the untrusted external system and the code/data being processed. The enclave verifies the external system's configuration through quotes and measurements, then securely processes packages outside the enclave only when verification succeeds, thus enabling high-performance processing while maintaining integrity verification.
Solution Approach 2:
The patent performs preliminary verification of the system configuration using TPM quotes and enclave measurements before allowing code and data to be processed outside the enclave. This preliminary action ensures that the external system is in the expected state before trusting it with package processing, resolving the contradiction between performance and verification.
2Measurement precision
If TPM is used to verify boot process, then boot integrity is improved, but the ability to verify post-boot configuration is worsened
Solution Approach 1:
The patent extends TPM verification from the traditional boot process dimension to a new dimension by having the enclave itself generate quotes about the external system's configuration. This dimensional extension allows verification of post-boot state without losing the security guarantees of TPM, as the enclave acts as a trusted observer that can measure and report on system state after boot.
Solution Approach 2:
The enclave performs self-verification by generating quotes that include measurements of the external system's configuration. Rather than relying solely on TPM to verify everything, the enclave services its own verification needs by independently measuring and quoting system state, thereby preserving post-boot configuration information that TPM alone cannot provide.
3Reliability
If enclave is used for secure processing, then confidentiality and integrity are improved, but access to high-performance hardware is worsened
Solution Approach 1:
The patent segments the processing architecture into two distinct parts: the enclave, which handles secure verification and decision-making, and the external system, which handles high-performance package processing. This segmentation allows each component to operate in its optimal environment - the enclave for security-critical functions and the external system for performance-critical functions - thereby resolving the contradiction between security and hardware access performance.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
In various examples, there is a computer-implemented method for providing packages for processing on a computer system. The method creates a secure connection to an enclave and retrieves a quote to verify that the enclave is genuine and that it contains a predetermined process. The predetermined process is configured to create an enclave for itself and determine that an initial state of the computer system is equivalent to a predetermined state based on a quote retrieved from a security module. The predetermined process is further configured to receive a package to be processed by the computer system and cause the processor to process the package outside of the enclave. In response to verifying the enclave, the method provides a package to be processed by the computer system.