Firmware Image Key Protection Using PUF and OTP Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage devices face security vulnerabilities due to the potential leakage of symmetric keys used for decrypting firmware images, which can compromise the security of the firmware and make it susceptible to unauthorized modifications.
Innovation Solution
The implementation of a physically unclonable function (PUF) chip and one-time programmable (OTP) memory to encrypt and store secret keys, along with a double-encryption method using public and customer symmetric keys, ensures secure transmission and decryption of firmware images without exposing the symmetric keys.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If the symmetric key is transmitted alongside the encrypted firmware image, then the firmware can be quickly decrypted using the symmetric key, but the symmetric key may be leaked to the outside
Solution Approach 1:
The patent introduces an intermediary encryption layer using asymmetric key pairs. The symmetric key is encrypted with the public key before transmission, creating a secure intermediary channel. This allows the symmetric key to be transmitted alongside the firmware image without direct exposure, as it remains encrypted until decrypted by the private key within the storage device.
Solution Approach 2:
The security system is segmented into multiple key layers: asymmetric key pairs for key exchange and symmetric keys for actual firmware encryption. This segmentation allows the symmetric key to be separated from the firmware image in an encrypted state, transmitting them together while maintaining security through the asymmetric encryption barrier.
2Ease of operation
If the symmetric key is stored in plain text in the storage device, then the firmware image can be easily decrypted, but the key becomes vulnerable to unauthorized access
Solution Approach 1:
The storage device preliminarily stores the private key in a secure, protected state within the device hardware before the firmware needs to be decrypted. The symmetric key is encrypted with the public key and stored alongside the firmware image. When decryption is needed, the system retrieves the encrypted symmetric key, decrypts it using the pre-stored private key, and then uses the symmetric key for firmware decryption - all without exposing the symmetric key in plain text.
3Device complexity
If the same symmetric key is used for all firmware images, then key management is simplified, but security is compromised when devices are sold to multiple customers
Solution Approach 1:
The system dynamically generates and manages unique symmetric keys for each firmware image and customer. Instead of using a static master key, the system creates dedicated asymmetric key pairs and symmetric keys tailored to each device-customer combination. This dynamic key generation ensures that each device has unique security credentials, preventing key reuse across different customers while maintaining manageable operation through automated key management.
Data Source
AI summary
A storage device includes: a non-volatile memory for storing a firmware set including a firmware image encrypted using a symmetric key and an encrypted symmetric key generated by encrypting the symmetric key using a public key; and a storage controller for controlling the non-volatile memory, wherein the storage controller includes: a physically unclonable function (PUF) chip having a unique security key; and a one-time programmable (OTP) memory for storing an encrypted secret key generated by encrypting a secret key paired with the public key using the PUF chip, wherein a firmware image is obtained by loading the firmware set, providing the encrypted secret key to the PUF chip, receiving the secret key from the PUF chip, generating the symmetric key by decrypting the encrypted symmetric key using the secret key, and decrypting the encrypted firmware image using the symmetric key.


