Firmware Authenticity Checking With Secure-Boot Hash Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for authenticating firmware on computing devices are either vulnerable to key compromise or excessively costly in terms of hardware and software complexity, lacking efficient mechanisms to ensure firmware integrity and authenticity.
Innovation Solution
The Device Identifier Composition Engine (DICE) protocol generates Compound Device Identifiers (CDIs) and cryptographic keys to protect firmware integrity, using a secure boot process to verify firmware authenticity by comparing measurements with secure storage values.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If cryptographic keys are programmed into the device at manufacturing, then device authentication is achieved with minimum hardware and software complexity, but the security is irretrievably broken if the key is compromised and the key cannot be conveniently updated
Solution Approach 1:
The patent implements dynamic key management by enabling cryptographic keys to be updated remotely after device deployment. The system transitions from static, manufacturing-programmed keys to dynamically replaceable keys, allowing security credentials to be refreshed without hardware changes or device decommissioning.
Solution Approach 2:
The patent introduces a key update mechanism that acts as an intermediary between the device and external key management infrastructure. This intermediary system enables secure key distribution and updates, allowing devices to obtain fresh cryptographic credentials from trusted sources without requiring physical reprogramming or TPM hardware.
2Reliability
If a trusted platform module (TPM) is included to reduce key compromise vulnerability, then security is improved, but both the complexity and cost of devices increase
Solution Approach 1:
The patent employs software-based cryptographic key storage and management that can be updated and replaced without expensive hardware components. Instead of relying on permanent TPM modules, the system uses software-stored keys that can be regenerated and updated, providing comparable security at lower hardware cost and complexity.
Solution Approach 2:
The patent replaces the mechanical/hardware-based TPM approach with a software-based key management system. By substituting hardware cryptographic modules with software-based solutions, the system achieves similar security functions without the associated hardware complexity and cost, while enabling more flexible key updates.
3Ease of operation
If cryptographic keys are used for device authentication, then device authentication is enabled, but attackers may load compromised software on the device and access sensitive data
Solution Approach 1:
The patent implements firmware integrity verification that provides feedback on the authenticity of loaded software. The system measures and verifies firmware integrity using cryptographic techniques, providing continuous feedback about the trustworthiness of executing code, thereby preventing attackers from successfully loading compromised software without detection.
Solution Approach 2:
The patent performs preliminary verification of firmware integrity before execution. By measuring and validating firmware authenticity during the boot process before any user-space code executes, the system prevents compromised software from being loaded in the first place, addressing the security vulnerability proactively rather than reactively.
Data Source
AI summary
Disclosed in some examples are methods, systems, and devices for authenticating a firmware object on a device and in some examples to safeguard the attestation process from the execution of malicious firmware. In some examples, a firmware update process may, in addition to updating the firmware on the device, write a hash of the authentic firmware code in a secure storage device (e.g., a register). This may be done in some examples in a protected environment (e.g., a trusted execution environment or a protected firmware update process). Upon first boot after the update, a firmware update checker compares the firmware object that is booted with the value of the secure storage device. If the values match, the alias certificate may be regenerated, and the boot continues. If the values do not match, then the alias certificate may not be regenerated, and the system may have an authenticity failure because the key and the certificate do not match.


