5.3
Secure Firmware Update
Secure Firmware Update provides a secure implementation of in-field firmware updates, enabling the download of
new firmware images to a device in a secure way.
As shown in
Figure
•
Server
–
Can be an OEM manufacturer server or web service.
–
Stores the new version of device firmware.
–
Communicates with the device and sends the new image version in an encrypted form if it is
available.
•
Device
–
Deployed in the field.
–
Embeds code running the firmware update process.
–
Communicates with the server and receives a new firmware image.
–
Authenticates, decrypts, and installs the new firmware image and executes it.
Server
1
The firmware update runs through the following steps:
1.
If a firmware update is needed, a new encrypted firmware image is created and stored in the server.
2.
The new encrypted firmware image is sent to the device deployed in the field through an untrusted channel.
3.
The new image is downloaded, checked, and installed.
The firmware update is done on the complete firmware image.
Firmware update is vulnerable to the threats presented in
is used to ensure confidentiality, integrity, and authentication.
Confidentiality is implemented to protect the firmware image, which may be a key asset for the manufacturer.
The firmware image sent over the untrusted channel is encrypted so that only devices having access to the
encryption key can decrypt the firmware package.
Integrity is verified to be sure that the received image is not corrupted.
Authenticity check aims to verify that the firmware image is coming from a trusted and known source, in order to
prevent unauthorized entities to install and execute code.
UM2851 - Rev 4
3, two entities are typically involved in a firmware update process:
Figure 3.
Typical in-field device update scenario
Encrypted
Firmware
2
Communication
channel
In-field device
STM32
3
TFM_SBSFU_Boot
Section 5.1 Product security
UM2851
Secure Firmware Update
Firmware
introduction: cryptography
page 8/117
Need help?
Do you have a question about the STM32CubeU5 TFM and is the answer not in the manual?