Firmware Integrity Verification via Hash Sorting and eFuse Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Data storage devices face challenges in ensuring the accuracy and legality of firmware updates, which can lead to device malfunction or damage if incorrect or malicious firmware is installed.
Innovation Solution
A data storage method and device utilizing a secure hash algorithm (SHA) and a predetermined sorting mechanism to verify the integrity of firmware data by generating and comparing hash data, ensuring that only authorized and accurate firmware is updated, with the sorting mechanism stored in an efuse region for secure validation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If firmware updates are performed to improve performance and reliability, then the data storage device can maintain compatibility and functionality, but the risk of installing erroneous or illegal firmware increases which may cause device malfunction or damage
Solution Approach 1:
The patent applies preliminary action by performing hash value calculation and sorting mechanism verification before the actual firmware installation. The system pre-computes hash values of the firmware data and compares them against stored reference values, and pre-applies the sorting mechanism to verify data integrity before writing, thereby preventing erroneous firmware installation without delaying the update process
Solution Approach 2:
The patent uses an intermediary approach by introducing a hash value as a mediator between the firmware data and the installation process. Instead of directly installing firmware, the system first calculates the hash value of the firmware data, compares it with the stored reference hash, and only proceeds with installation if they match, thus verifying authenticity before installation
2Measurement precision
If a hash verification mechanism is implemented to verify firmware integrity, then the accuracy of firmware data can be confirmed, but the complexity of the data storage device increases
Solution Approach 1:
The patent applies self-service by enabling the controller to perform the hash value calculation and verification operations autonomously without external intervention. The controller internally computes the hash value of incoming firmware data, compares it with stored reference values, and automatically determines whether to proceed with installation, thereby simplifying the overall system architecture while maintaining verification capability
Solution Approach 2:
The patent replaces complex mechanical verification processes with a computational hash value mechanism. Instead of implementing complex hardware-based verification circuits, the system uses software-based hash calculation and comparison operations in the controller, which are more efficient and easier to implement while achieving the same verification goal
3Reliability
If a predetermined sorting mechanism is applied to hash data, then the verification process can ensure firmware legality, but the processing time for verification increases
Solution Approach 1:
The patent applies preliminary action by pre-storing the reference hash values and sorting mechanisms in the controller before firmware installation is needed. This allows the verification process to simply compare pre-computed values rather than performing complex real-time calculations, significantly reducing verification time while maintaining thoroughness
Solution Approach 2:
The patent uses copying by creating a copy of the reference hash values and sorting mechanisms in the controller's memory. Instead of repeatedly performing the full verification algorithm, the system compares the computed hash values against these pre-stored copies, which are much faster to access and compare, thereby reducing verification time without sacrificing accuracy
Data Source
AI summary
A data storage device utilized for confirming firmware data includes a flash memory and a controller. The controller is coupled to the flash memory to receive at least one first hash data related to a first firmware data, and it divides the first hash data into a plurality of data groups. The controller sorts the data groups based on a predetermined sorting mechanism to generate a first sorting hash data. The controller includes an efuse region for writing the predetermined sorting mechanism. When the controller determines that a second sorting hash data of a second firmware data is identical to the first sorting hash data or a second hash data of the second firmware data is identical to the first hash data, the second firmware data is allowed to update the controller.


