IoT Firmware Security via Unique IC Identifiers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for protecting firmware integrity in IoT devices using uncustomized integrated circuits are vulnerable to misuse and tampering, particularly in untrusted contract manufacturing environments, as they often require permanent internet connections, shared secrets, and access to sensitive information.

Innovation Solution

A method involving an integrated circuit manufacturer loading a unique identifier and secret key derivation data onto ICs, using a secure programmable device to protect configuration parameters, and generating a shared secret for encrypting firmware decryption keys, ensuring only correctly configured devices can decrypt firmware, thus maintaining confidentiality and integrity without relying on secure environments or permanent internet connections.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If firmware encryption and verification require permanent internet connection and provisioning servers, then firmware security is improved, but production continuity deteriorates due to costly production stops when connectivity or servers are unavailable

Engineering Contradiction:
Improvefirmware securityVSAvoidproduction continuity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the provisioning server and internet connection requirements from the firmware security system, replacing them with local key derivation and verification mechanisms embedded in the device. The security functionality is taken out of the centralized server environment and distributed to individual devices through pre-loaded secret data and on-device cryptographic operations.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an intermediary approach by using pre-loaded secret data and device-specific identifiers as mediators between the firmware and verification process. Instead of requiring direct connection to provisioning servers, the device uses locally stored secret data combined with its unique identifier to derive verification keys, acting as an intermediary that eliminates the need for continuous external connectivity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of manufacture

If the same secrets or static keys are used for firmware decryption across all manufacturers, then ease of manufacture is improved, but security deteriorates as one leaked key breaks protection for all manufacturers

Engineering Contradiction:
Improvefirmware provisioning simplicityVSAvoidfirmware security
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent applies local quality by making each device's security credentials unique to its specific identifier. Instead of using uniform secrets across all devices, each device derives its verification key locally by combining a shared secret data structure with its unique device identifier, creating device-specific security properties while maintaining a standardized provisioning process.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the security parameter from static shared secrets to dynamic device-specific keys derived through cryptographic key derivation functions. The secret data structure includes parameters that are transformed into unique verification keys for each device based on its identifier, changing the security model from reusable static keys to unique dynamic keys.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If contract manufacturers need access to secrets for firmware provisioning, then ease of operation is improved, but security deteriorates because untrusted third parties may misuse or extract the secrets

Engineering Contradiction:
Improvefirmware provisioning capabilityVSAvoidsecret confidentiality
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments the secret data into two parts: secret data that remains with the device manufacturer and a device-specific identifier that is unique to each device. This segmentation allows contract manufacturers to provision firmware without accessing the manufacturer's secret data, as they only need the public identifier and the encrypted firmware, thereby protecting confidential information while enabling distributed manufacturing.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The device-specific identifier acts as an intermediary that enables contract manufacturers to perform firmware provisioning without direct access to secret data. The identifier serves as a public interface that allows key derivation and verification while keeping the actual secret data confined to the manufacturer's secure environment.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Device complexity

If uncustomized ICs are used in IoT devices, then manufacturing cost and complexity are reduced, but security deteriorates because firmware can be misused or extracted by untrusted contract manufacturers

Engineering Contradiction:
ImproveIC customizationVSAvoidfirmware protection
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent applies preliminary action by pre-loading secret data and device identifiers into the IC during IC manufacturing, before the device is assembled or firmware is provisioned. This preliminary security configuration enables the uncustomized IC to inherently support secure firmware provisioning later, combining the benefits of standardized IC manufacturing with built-in security capabilities.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables self-service by allowing each device to independently derive its verification key using its own unique identifier and the pre-loaded secret data structure. The device autonomously performs cryptographic operations to generate its security credentials without requiring external intervention or access to secret data, making standardized ICs self-sufficient for security operations.

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP3457310B1Method for protecting the confidentiality and integrity of firmware for an internet of things device
Publication Date: 2020.04.08 NXP BV
  • EP3457310B1 patent drawingFigure 1
  • EP3457310B1 patent drawingFigure 2
  • EP3457310B1 patent drawingFigure 3

AI summary

A method is provided for secure firmware provisioning of a device. In the method, an integrated circuit (IC) is manufactured by a first entity for use in the device. The IC is provided to a second entity for manufacturing the device using the IC. The IC has a unique identifier (UID) and secret key derivation data (KDD). A secure memory is provided to a third entity. The secure memory has a first key pair, and the secure memory is used with a firmware provisioning toolchain of the second entity. During manufacturing of the device by the second entity, the secure memory is enabled to verify the IC by verifying the UID. The secure memory stores a firmware decryption key and is enabled to encrypt the firmware decryption key. The encrypted firmware decryption key is then provided to the IC, and the IC decrypts the encrypted firmware decryption key for use by the IC in decrypting the firmware.