Key Version Control via Firmware Fuses

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face challenges in securely updating cryptographic keys and digital certificates, particularly when the private key is compromised, as attackers can sign firmware binaries using the old trusted key certificate, leading to security risks.

Innovation Solution

Incorporating version numbers for certificates and keys, where the system trusts only certificates and keys with version numbers matching or exceeding those stored in firmware fuses, and allowing updates only with authorization from a trusted entity, ensuring secure replacement and authentication.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cryptographic keys and digital certificates are updated, then security is improved, but the risk of unauthorized access increases if old compromised keys are not properly invalidated

Engineering Contradiction:
ImprovesecurityVSAvoidunauthorized access
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The system performs preliminary actions by storing version numbers in firmware fuses before key updates occur. This ensures that even if old keys are compromised, they cannot be used to authenticate because the version number check will fail. The version number is预先 stored in non-volatile memory to prevent rollback attacks and ensure forward security.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The authentication process incorporates feedback by comparing the version number in the digital certificate against the version number stored in firmware fuses. This feedback mechanism ensures that only certificates with version numbers matching or exceeding the stored version are accepted, preventing use of compromised older versions while allowing legitimate updates.

Inventive Principle:
Principle #23Feedback

2Reliability

If version numbers are incorporated into certificates and keys, then security against compromised keys is improved, but system complexity increases

Engineering Contradiction:
ImprovesecurityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system changes a single parameter - the version number - and stores it in firmware fuses. This simple parameter change provides a robust mechanism for key validation without requiring complex cryptographic protocols or multiple authentication layers. The version number serves as a straightforward indicator of key validity.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The version number is copied from the digital certificate into the firmware fuses during the authentication process. This copying mechanism allows the system to maintain a reference version number for comparison without storing multiple certificates or complex key management structures, simplifying the overall system architecture.

Inventive Principle:
Principle #26Copying

3Reliability

If only authorized updates are allowed, then security is improved, but the ease of operation decreases

Engineering Contradiction:
ImprovesecurityVSAvoidease of operation
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system performs self-service by automatically comparing version numbers during the authentication process without requiring manual intervention. The version number check is seamlessly integrated into the certificate validation process, providing security enforcement without adding operational complexity or requiring user awareness of the versioning mechanism.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10116645B1Controlling use of encryption keys
Publication Date: 2018.10.30 AMAZON TECH INC
  • US10116645B1 patent drawing
  • US10116645B1 patent drawing
  • US10116645B1 patent drawing

AI summary

A computing device includes a processor and a persistent memory for storing information about a first public key associated with a first asymmetric key pair for authenticating the source of a digital certificate. The computing device also includes a second memory for storing one or more current key version indicators. Each of the current key version indicators is associated with a corresponding secondary public key, and the one or more current key version indicators are used by the processor to determine the trust of the corresponding secondary public key.