Secure Boot Using Dual-Key Authentication and Controller Lockdown

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing boot mechanisms for computer systems face security vulnerabilities due to compromised authentication keys, which are difficult to update and require complex hardware and BootROM code for key-chain operations, limiting flexibility and security in firmware upgrades.

Innovation Solution

Implementing a system that uses two separate digital signatures for firmware authentication, where a fixed boot key is used by the processor and an updatable key is used by a separate controller, allowing for secure verification and update of firmware without altering the fixed boot key, and employing a hardware lockdown mechanism to prevent unauthorized updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single authentication key is stored in hardware fuses, then the boot authentication can be performed, but the key cannot be updated easily and security is compromised when the key is leaked

Engineering Contradiction:
Improveauthentication securityVSAvoidkey update capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The authentication system is segmented into two separate keys: a fixed boot key stored in hardware fuses and an updatable key stored in updateable memory. This segmentation allows the boot key to remain secure and immutable while the updatable key can be refreshed periodically, resolving the contradiction between security and update capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A secondary controller is introduced as an intermediary authentication entity that performs verification using the updatable key. This intermediary handles the burden of key updates, allowing the main processor to continue using the fixed boot key without modification, thus enabling key updates without compromising the core authentication mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If complex hardware and BootROM code are used for key-chain operations, then authentication can be performed, but the device complexity increases

Engineering Contradiction:
Improveauthentication functionalityVSAvoidhardware and code complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The complex key-chain operations and updatable key management are extracted from the main processor's BootROM and transferred to a separate secondary controller. This extraction simplifies the main system's BootROM while maintaining comprehensive authentication functionality through the dedicated secondary controller.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If the fixed boot key is used for authentication, then secure boot can be achieved, but the key cannot be updated to respond to security threats

Engineering Contradiction:
Improveboot securityVSAvoidkey validity period
Core Design Contradiction:
ReliabilityVSDuration of action of stationary object

Solution Approach 1:

The authentication system incorporates dynamic key updates by introducing an updatable key that can be periodically refreshed, contrasting with the static fixed boot key. This dynamic element allows the system to adapt to new security threats while maintaining the stability and security of the fixed boot key for fundamental authentication.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11520891B1Secure boot of an integrated circuit
Publication Date: 2022.12.06 AMAZON TECH INC
  • US11520891B1 patent drawing
  • US11520891B1 patent drawing
  • US11520891B1 patent drawing

AI summary

A computer chip, such as an System on chip (SOC), can receive firmware updates having two separate signatures; a first of the signatures is used to authenticate the firmware using a processor within the computer chip, and a second of the signatures is used by a controller, separate from the processor. A first key, used by the processor to authenticate the firmware, can be a boot key that is hardwired in the computer chip. A second key, used by the controller, can be a key that is provided to the controller at any time and is updatable. The controller can suspend the processor so that the controller can perform a first authentication of the firmware using the second signature and the second key. If the authentication is successful, the controller can release the processor, which then uses the first key and the first signature to perform a second authentication.