Secure SoC Memory Update via PUF Key Regeneration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for secure external updates of memory content in system on chip (SoC) require significant infrastructure and are vulnerable to attacks like Side Channel Attacks and reverse engineering, especially due to the software-based nature of memory partitioning and reliance on classic cryptography.
Innovation Solution
A method that generates and verifies data signatures using a data counter and random numbers, combined with a physical unclonable function (PUF) for secure key regeneration, ensuring only authorized updates can write to memory by comparing first and second data signatures, preventing unauthorized changes and attacks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If memory partitioning and classic cryptography are used for secure firmware update, then security level is improved, but device complexity and infrastructure requirements increase significantly
Solution Approach 1:
The patent changes the fundamental parameter of key storage from persistent on-chip storage to transient generation via Physical Unclonable Functions (PUF). Instead of storing cryptographic keys in secure memory, the system uses PUF to generate keys dynamically based on physical characteristics of the hardware, eliminating the need for secure key storage infrastructure while maintaining security.
Solution Approach 2:
The patent extracts the cryptographic key storage function from the system architecture by using PUF-based transient key generation. The keys are not stored anywhere in the system but are generated on-demand from the physical characteristics of the hardware, removing the vulnerable component of key storage while preserving authentication capabilities.
2Ease of manufacture
If cryptographic keys are stored in standard on-chip memory, then ease of manufacture is improved, but vulnerability to attacks (SCA, reverse engineering) increases
Solution Approach 1:
The patent fundamentally changes the state of cryptographic keys from persistent stored values to transient generated values. Keys are generated dynamically by PUF based on physical hardware characteristics and exist only temporarily in registers during authentication operations, eliminating the attack surface of stored keys while maintaining manufacturing simplicity.
Solution Approach 2:
The patent uses transient, short-lived cryptographic keys generated by PUF instead of persistent stored keys. These keys exist only momentarily during authentication operations and are then discarded, similar to disposable objects. This approach maintains ease of manufacture while eliminating vulnerability to attacks targeting stored keys.
3Reliability
If large amounts of memory are allocated for firmware partitioning, then security separation is improved, but loss of memory resources increases
Solution Approach 1:
The patent extracts the security verification function from the memory partitioning approach and implements it through PUF-based authentication. Instead of dedicating large memory regions for secure firmware storage and verification, the system uses compact PUF circuits that generate authentication keys, reducing memory requirements while maintaining security separation.
Solution Approach 2:
The patent changes the approach from spatial separation (memory partitioning) to functional separation (PUF-based authentication). Instead of allocating large memory regions for security purposes, the system uses the physical characteristics of hardware to provide security, dramatically reducing memory resource consumption while maintaining security effectiveness.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Method for secure external update of memory content for a certain system on chip, the method including the following steps - the issuer of the update for the system on chip generates a first data signature (D_S_1) by a generation process, the generation process using the data (D) for update, - the issuer of the update sends the data (D) for update and the first data signature (D_S_1) to the system on chip, - the system on chip, upon receiving the data (D) for update, generates a second data signature (D_S_2) using the same generation process as for the first data signature (D_S_1), the generation process using the data (D) for update, - the system on chip compares first and second data signature (D_S_1, D_S_2) and writes the data (D) for update to the memory only if first and second data signature (D_S_1, D_S_2) are identical.