Secure Firmware Update via Digital Signature Validation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory device firmware update processes lack security and efficiency, particularly in Internet-of-Things devices, as they are prone to tampering and errors during the update process, leading to increased maintenance costs and potential system failures.

Innovation Solution

Implementing a secure firmware update mechanism that uses asymmetric key pairs, where a public key is stored in a write-protected area of the memory device and a private key is used to sign firmware updates, ensuring authenticity and integrity through digital signature validation, and allowing for seamless rollback to previous firmware versions in case of errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional firmware update processes are used, then update simplicity is maintained, but security is compromised due to lack of authentication and tampering protection

Engineering Contradiction:
Improvefirmware update securityVSAvoidupdate mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-storing public keys in the memory device before firmware updates occur. This allows the device to autonomously authenticate firmware updates without requiring complex real-time verification protocols, thus improving security while maintaining relative simplicity in the update process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses digital signatures as an intermediary mechanism between the firmware source and the memory device. The signature verification process acts as a trusted mediator that confirms firmware authenticity without requiring direct trust relationships or complex authentication handshakes, resolving the contradiction between security and simplicity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If firmware updates are applied without validation, then update speed is maintained, but system reliability deteriorates due to potential errors and corruption

Engineering Contradiction:
Improvefirmware integrityVSAvoidupdate validation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary validation by checking digital signatures before applying firmware updates. This upfront verification prevents corrupted or malicious firmware from being installed, ensuring integrity while the quick nature of signature verification minimizes time loss compared to more thorough validation methods.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables rapid signature verification by having public keys readily available in the device. This allows the validation process to complete quickly without bottlenecking the update pipeline, thus maintaining update speed while ensuring firmware integrity through cryptographic verification.

Inventive Principle:
Principle #21Skipping (Rushing through)

3Reliability

If write-protection is applied to firmware storage, then firmware authenticity is protected, but update capability is reduced due to restricted writing access

Engineering Contradiction:
Improvefirmware authenticationVSAvoidfirmware update flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent segments the firmware storage into distinct regions: a read-only area containing the public key for authentication and a writable area for storing firmware updates. This segmentation allows write-protection to be applied selectively to the authentication credentials while maintaining full write access for legitimate firmware updates, thus preserving both security and update capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different access control qualities to different parts of the firmware system. The public key storage area has strict read-only protection to ensure authentication integrity, while the firmware update area has controlled write access that allows updates only after successful signature verification. This local differentiation of access rights resolves the contradiction between authentication protection and update flexibility.

Inventive Principle:
Principle #3Local quality

4Manufacturing precision

If comprehensive validation checks are performed, then firmware correctness is ensured, but processing overhead increases leading to slower updates

Engineering Contradiction:
Improvefirmware verification accuracyVSAvoidupdate processing speed
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent extracts the complex validation logic into a separate cryptographic signature verification process. Instead of performing comprehensive checks on the entire firmware content, the system only needs to verify the digital signature, which is a compact mathematical representation. This extraction maintains high verification accuracy while dramatically reducing processing overhead and improving update speed.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses cryptographic hashing to create a compact copy (hash digest) of the firmware that serves as the basis for signature verification. Instead of validating every byte of the firmware, the system validates the signature of this small hash copy, thereby ensuring firmware correctness with minimal processing overhead and maintaining high update productivity.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20240119157A1Secure firmware update through a predefined server
Publication Date: 2024.04.11 MICRON TECHNOLOGY INC
  • US20240119157A1 patent drawing
  • US20240119157A1 patent drawing
  • US20240119157A1 patent drawing

AI summary

The disclosed embodiments relate to securely booting firmware images. In one embodiment, a method is disclosed comprising receiving, by a memory device, a firmware update; validating, by the memory device, a signature associated with the firmware update; copying, by the memory device, an existing firmware image to an archive location, the archive location storing a plurality of firmware images sorted by version identifiers; booting, by the memory device, and executing the firmware update; and replacing, by the memory device, the firmware update with the existing firmware image stored in the archive location upon detecting an error while booting the firmware update.