Trusted Code Execution via Hidden Root Key
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current information handling systems face challenges in ensuring secure authentication and protection of data stored on storage devices, particularly in preventing unauthorized access and ensuring secure booting processes.
Innovation Solution
The system employs asymmetric encryption using a public/private key pair for digital signatures, combined with protected storage and a microprocessor that generates a hidden root key by combining a fused random value and public key, enabling secure access to protected storage while preventing unauthorized booting and data access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If asymmetric encryption with public/private key pair is used for digital signatures, then secure authentication and data protection are improved, but device complexity increases due to key management and cryptographic operations
Solution Approach 1:
The microprocessor automatically generates the hidden root key by combining the fused random value and public key during initialization, eliminating the need for external key generation or manual configuration. This self-service approach reduces deployment complexity while maintaining cryptographic security.
Solution Approach 2:
The hidden root key acts as an intermediary that bridges the public key infrastructure and the protected storage access control. Instead of directly managing complex public/private key pairs for storage access, the system uses this derived hidden root key as a simplified authentication credential.
2Reliability
If a hidden root key is generated by combining fused random value and public key, then secure access to protected storage is improved, but manufacturing precision requirements increase due to fused random value integration
Solution Approach 1:
The fused random value is generated and embedded in the microprocessor during manufacturing, before the device is deployed. This preliminary action ensures that the cryptographic foundation is established with high entropy and uniqueness at the hardware level, eliminating the need for complex runtime random generation.
Solution Approach 2:
The system combines two distinct elements—the manufactured fused random value and the cryptographic public key—into a single hidden root key. This merging approach leverages both hardware-based entropy and cryptographic strength to create a robust authentication credential.
3Reliability
If protected storage is used to store authentication credentials, then data security is improved, but access control complexity increases due to credential verification processes
Solution Approach 1:
The authentication credentials (hidden root key) are extracted and stored in a dedicated protected storage region with restricted access. This separation isolates sensitive credentials from the rest of the system memory, reducing the attack surface and simplifying security model by creating a clear trust boundary.
Solution Approach 2:
The storage system is segmented into protected and unprotected regions, with the hidden root key and authentication credentials confined to the protected segment. This segmentation allows simplified access control logic where trusted code automatically has access to protected storage, while untrusted code is explicitly blocked.
4Adaptability or versatility
If trusted code is allowed to execute arbitrary code, then system versatility is improved, but security risks increase due to potential unauthorized code execution
Solution Approach 1:
The system implements dynamic code execution environments where trusted code can execute arbitrary code when needed, but only within the context of authenticated sessions. The execution privileges are dynamically granted and revoked based on authentication state, allowing versatility when trusted while preventing unauthorized execution.
Solution Approach 2:
The hidden root key and protected storage authentication mechanism serve as an intermediary layer between untrusted external code and the trusted code execution environment. This intermediary verifies authentication credentials before allowing any code to access protected resources or execute with elevated privileges.
Data Source
AI summary
A method comprises signing boot code with a public/private cryptographic key pair, and writing to storage the boot code, the public cryptographic key, and the signed boot code.


