Trusted Computing Root of Trust Update Mechanism
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current Trusted Computing systems face challenges in securely updating software components during the boot process, as they lack effective mechanisms to prevent unauthorized changes while allowing legitimate updates, making them vulnerable to malevolent modifications.
Innovation Solution
A method and device that utilize a security module, connected to the CPU, to measure and authorize software components, ensuring that only authorized updates are permitted by comparing measurements to reference values and using sealing/unsealing mechanisms to manage access, thereby maintaining the integrity of the boot process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the storage device is write-protected to prevent unauthorized modifications, then security against malevolent changes is improved, but the ability to perform legitimate updates is blocked
Solution Approach 1:
The system performs preliminary actions by measuring software components during the boot process before execution, storing these measurements in PCRs. This preliminary measurement and comparison establishes a trusted state that enables subsequent authorized updates while maintaining write-protection, resolving the contradiction between security and update capability.
Solution Approach 2:
The patent introduces a security module as an intermediary between the write-protected storage device and the update process. This module contains PCRs that store and compare measurements, acting as a mediator that verifies update authorization without requiring the storage device to be writable during the verification process.
2Measurement precision
If measurements are taken of all software components in the boot sequence, then detection of unauthorized modifications is improved, but the complexity of the system increases
Solution Approach 1:
The patent segments the boot process into distinct software components (CRTM, I/O driver, OS loader, OS kernel) that are measured and stored in separate PCRs. This segmentation allows precise tracking of each component's integrity while organizing the measurement process in a manageable, structured way that reduces overall system complexity.
Solution Approach 2:
The security module serves multiple functions: it measures software components, stores measurements in PCRs, compares measurements to detect unauthorized changes, and manages the write-protection mechanism. This multi-functionality consolidates complex operations into a single module, reducing overall system complexity while maintaining high detection accuracy.
3Reliability
If the storage device remains write-protected throughout boot, then security is maintained, but legitimate updates cannot be performed
Solution Approach 1:
The system dynamically changes the write-protection state of the storage device based on the boot progress and authorization status. The storage device starts in a write-protected state for security, then transitions to a writable state only after successful measurement verification and authorization, allowing legitimate updates. This dynamic approach maintains security while enabling necessary operations.
Solution Approach 2:
The patent changes the parameter of write-protection status from a static constant to a dynamic variable that changes based on measurement results and authorization decisions. The storage device transitions between write-protected and writable states, with this parameter change controlled by the security module based on PCR comparisons, resolving the contradiction between maintaining security and enabling updates.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for implementing trusted computing, the method comprising executing, by a central processing unit, CPU, each respective software component in a sequence of software components, stored on a storage device at a location from where the CPU is configured to load a first instruction at a boot process, said storage device being write-protected, measuring, by each respective software component, a next software component in the sequence, and providing the resulting measurement to a security module connected to the CPU, authorizing, by the security module, an update of one or more software components in the sequence of software components based on the provided resulting measurements and upon successful authorization by the security module changing, by the CPU, the status of the storage device to be write-enabled so as to perform the update of one or more software components.