Processor Microcode Firmware Integrity Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering Contradiction Analysis

1Reliability

If firmware verification is performed using prior art techniques, then system security is improved, but system reset is required causing downtime

Engineering Contradiction:
Improvefirmware integrity verificationVSAvoidsystem downtime
Core Design Contradiction:
ReliabilityVSLoss of time

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.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If boot block is made accessible for user modification, then ease of firmware updating is improved, but security is compromised

Engineering Contradiction:
Improvefirmware update capabilityVSAvoidboot block accessibility vulnerability
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If firmware verification requires system reset, then measurement accuracy is improved, but productivity is reduced

Engineering Contradiction:
Improvefirmware verification accuracyVSAvoidsystem availability
Core Design Contradiction:
Measurement precisionVSProductivity

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.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS8429418B2Technique for providing secure firmware
Publication Date: 2013.04.23 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US8429418B2 patent drawing
  • US8429418B2 patent drawing
  • US8429418B2 patent drawing

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.