Processor Microcode Firmware Integrity Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing software security techniques for microprocessor systems fail to verify the integrity of firmware without system reset, making them vulnerable to malicious intrusions and compromising the trust chain, especially in server systems where downtime is unacceptable.
Innovation Solution
The method involves using processor-specific micro-code to invoke a trusted code module during the boot-up process, which verifies the firmware integrity using a hash function and stores the result in a secure location, establishing a trusted chain without requiring system reboot.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If firmware verification is performed using prior art techniques, then system security is improved, but system reset is required causing downtime
Solution Approach 1:
The patent applies preliminary action by measuring and verifying firmware integrity during the boot process before the system becomes fully operational. The microcode executes verification routines that calculate hash values of firmware components and compare them against stored expected values, establishing security credentials in advance before applications or operating systems are loaded. This ensures firmware integrity is confirmed upfront, eliminating the need for subsequent system resets for verification purposes.
2Ease of operation
If boot block is made accessible for user modification, then ease of firmware updating is improved, but security is compromised
Solution Approach 1:
The patent applies segmentation by separating the boot block from the main firmware storage and implementing a distinct verification hierarchy. The boot block contains only the minimal code necessary to initiate the verification process and load the microcode, while the actual firmware components (BIOS, device drivers, etc.) are stored separately in non-volatile memory. This segmentation allows the boot block to remain protected and immutable, while still enabling firmware updates through controlled processes that maintain the integrity chain.
Solution Approach 2:
The patent introduces microcode as an intermediary layer between the boot block and the firmware components. The microcode, which is itself verified and protected, serves as a trusted mediator that performs the actual firmware verification and measurement operations. This intermediary approach allows the system to maintain security while enabling firmware updates, as the microcode can safely manage the verification process without exposing the boot block to direct user modification.
3Measurement precision
If firmware verification requires system reset, then measurement accuracy is improved, but productivity is reduced
Solution Approach 1:
The patent implements continuity of useful action by enabling firmware verification to occur continuously during normal system operation without requiring interrupts or resets. The microcode executes verification routines that measure firmware components and update security credentials in real-time during the boot process and system operation. This continuous verification approach maintains measurement precision while ensuring system availability, as the verification process integrates seamlessly with normal system functionality rather than requiring system shutdown or reset.
Data Source
AI summary
A technique to verify firmware. One embodiment of the invention uses a processor's micro-code to verify a system's firmware, such that the firmware can be included in a trusted chain of code along with the operating system.


