Firmware Update Security via Deterministic Random Bit Generators

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Microcontrollers with insufficient computational capability face challenges in decrypting complex encrypted firmware update files efficiently, necessitating higher-level microcontrollers or prolonged processing times, and there is a risk of unauthorized firmware updates.

Innovation Solution

A firmware update method using deterministic random bit generators on both a first and second computing device to encrypt and decrypt data, ensuring only authorized updates are allowed, thereby securing and expediting the process on lower-capability devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If complex encryption logic is used to encrypt firmware update files, then security is improved, but microcontroller computational burden increases and processing time extends

Engineering Contradiction:
Improvefirmware update securityVSAvoiddecrypt processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts the complex encryption logic from the microcontroller and relocates it to an external host system. The host system performs all heavy cryptographic operations including key generation, firmware encryption, and verification code generation. The microcontroller only receives pre-processed encrypted data and performs simple verification operations, thereby eliminating the time penalty of complex encryption while maintaining security through the use of deterministic random bit generators on both sides.

Inventive Principle:
Principle #2Taking out (Extraction)

2Adaptability or versatility

If higher-level microcontroller is used to handle complex encryption, then computational capability is improved, but device complexity and cost increase

Engineering Contradiction:
Improvecomputational capabilityVSAvoidmicrocontroller specification
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a host system as an intermediary that handles all complex cryptographic operations. This mediator performs key generation using deterministic random bit generators, encrypts firmware updates, and manages verification code generation. The microcontroller acts only as a simple receiver and verifier, eliminating the need for high computational capability while maintaining security through the coordinated use of deterministic random bit generators on both the host and microcontroller sides.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If firmware update verification is implemented, then unauthorized updates are prevented, but update process complexity increases

Engineering Contradiction:
Improvefirmware update authorizationVSAvoidupdate process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements preliminary action by having the host system generate verification codes and embed them within the encrypted firmware update data before transmission. The microcontroller receives the pre-prepared encrypted package containing both the encrypted firmware and the verification code, then performs a simple decryption and verification process. This approach maintains strong authorization verification while simplifying the microcontroller's update process to basic cryptographic operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250291925A1Firmware update method and system
Publication Date: 2025.09.18 ADLINK TECH INC
  • US20250291925A1 patent drawing
  • US20250291925A1 patent drawing
  • US20250291925A1 patent drawing

AI summary

A firmware update method includes: using, a first deterministic random bit generator to obtain a first key and a first verification code by a first computing device; using the first key to encrypt first firmware update data and the first verification code to output first encrypted data by the first computing device; receiving second encrypted data by a second computing device; using a second deterministic random bit generator to obtain a second key and a second verification code by the second computing device; using the second key to decrypt the second encrypted data to obtain a third verification code and second firmware update data by the second computing device; and updating a firmware of the second computing device when determining the second verification code matches the third verification code by the second computing device. The second deterministic random bit generator is the same as the first deterministic random bit generator.