Encrypted Firmware Differential Update Method
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing differential upgrade methods are incapable of upgrading encrypted firmware, posing a challenge in ensuring the security and efficiency of firmware updates in terminal devices with limited resources.
Innovation Solution
A method that involves a far-end device decrypting and differentially processing encrypted firmware, generating a differential upgrade package, and then encrypting it for storage or transmission, allowing terminal devices to decrypt and apply the updates efficiently.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a whole package upgrade method is used, then the firmware can be updated completely, but the terminal device needs to download and store a large amount of data, consuming significant time and memory resources
Solution Approach 1:
The firmware update is divided into two parts: the original encrypted firmware that remains in the terminal device and a differential upgrade package that contains only the changes. This segmentation allows the terminal device to receive and apply only the necessary updates rather than downloading the entire firmware package, significantly reducing data volume while maintaining update completeness.
Solution Approach 2:
The differential upgrade package extracts only the changed portions from the complete firmware package. By taking out and transmitting only the essential update data (the differences), the system reduces the quantity of data that needs to be downloaded and stored while ensuring the firmware can still be fully updated.
2Loss of time
If a differential upgrade method is used, then the download and storage time is reduced, but the method is incapable of upgrading encrypted firmware
Solution Approach 1:
The far-end device performs decryption and differential operations on the encrypted firmware in advance, before transmission to the terminal device. By conducting these preparatory actions remotely, the system generates a differential upgrade package that can be efficiently transmitted and applied, maintaining both time efficiency and compatibility with encrypted firmware.
Solution Approach 2:
The far-end device acts as an intermediary that handles the complex decryption and differential processing of encrypted firmware. This mediator performs the operations that would be difficult or impossible for the resource-constrained terminal device to execute, enabling differential upgrades of encrypted firmware while the terminal device only needs to receive and apply the resulting package.
3Reliability
If the terminal device stores encrypted firmware locally, then security is maintained, but the device lacks sufficient memory resources to handle update operations
Solution Approach 1:
The system extracts only the differential portion of the firmware update and transmits this minimized data set to the terminal device. This extraction approach ensures that the terminal device does not need to store large amounts of firmware data, preserving both security (encrypted firmware remains local) and memory resources (only small differential packages are temporarily stored).
Solution Approach 2:
The far-end device performs preliminary decryption and differential processing of the encrypted firmware before transmission. This preliminary action reduces the data volume that needs to be stored in the terminal device's limited memory, while the original encrypted firmware remains securely stored locally, maintaining both security constraints and memory availability.
Data Source
AI summary
A method for updating encrypted firmware is performed by a terminal device. The method includes the following steps: receiving an encrypted differential upgrade package or a differential upgrade package through a communication channel, wherein when the terminal device receives the encrypted differential upgrade package, the terminal device decrypts the encrypted differential upgrade package to obtain the differential upgrade package; decrypting an encrypted to-be-upgrade firmware of the terminal device to obtain a decrypted to-be-upgraded firmware; generating a decrypted target firmware according to the decrypted to-be-upgraded firmware and the differential upgrade package; and encrypting the decrypted target firmware to generate an encrypted target firmware, and storing the encrypted target firmware in the terminal device.

