当前位置:网站首页>4 best practices for wireless (OTA) updates
4 best practices for wireless (OTA) updates
2022-06-26 07:45:00 【Guangdong embedded Education】
OTA Updates are critical for developers who connect devices . In today's article , We will explore how embedded developers are implementing their OTA Several best practices to keep in mind when implementing solutions . Although I will point out some specific to AWS Best practices , But most of them are generic .
Best practices 1 – Encrypt your firmware updates
Creating and testing is time consuming , And it will consume a large part of the development budget . Although software also drives most functions in the product , And can significantly change the product , The software is worth protecting through encryption .
Encrypting firmware images has several benefits . First , It can convert your firmware binaries into seemingly random or meaningless forms . This is ideal , Because developers don't want their binary images to be easy to study 、 Investigation or reverse engineering . This makes it harder for someone to steal intellectual property , And it is more difficult for people who may be interested in attacking the system . secondly , Encrypting an image means that the sender must have some key or credential that matches the device that decrypts the image . You can look at a simple source to help validate the source , Although more should be done than just encryption to fully verify and verify integrity , For example, sign the image .
Best practices 2 – Firmware rollback is not supported
There are often disputes about whether the system should support firmware rollback . The argument for rollback is usually , If there is a problem with the firmware update , Then the user can roll back to the running old version . At first glance , That seems like a good idea , But it may be the source of vulnerabilities in the system . for example , hypothesis 1.7 There is an error in the version 2.0 system that allows remote attackers to access the system , New firmware version 1.8 Fixed this bug . Customers update their firmware to 1.8 edition , But attackers know that if they can force the system to recover to 1.7, They can have the system . Today we execute OTA In a new interconnected world , Firmware rollback is a vulnerability , So embedded developers can disable them to protect your users .

Best practices 3 – Protect your boot loader
Updating firmware wirelessly requires multiple components to ensure safe and successful completion . Usually , The focus is on sending the new image to the device and decrypting it . However , Just like in traditional firmware updates , The boot loader is still a key part of the update process , stay OTA Updating , Bootloader is not just your traditional style , And it must be safe .
There are many ways to work with the onboard boot loader , But either way , Boot loaders must be secure . The secure boot loader needs to be able to verify the authenticity and integrity of the firmware before loading . Some systems will use the application code to validate the firmware and install it into the new application slot , Other systems rely entirely on the boot loader . In any case , The security boot loader needs to be able to verify the authenticity and integrity of the firmware before accepting the new firmware image .
Embedded developers ensure that the boot loader is built into the trust chain , It is also a good idea not to modify or update easily . The secure boot loader is a key component of the trust chain necessary to ensure system security .
Best practices 4 — Build a chain of trust
A trust chain is a series of events that occur when a device is started , Ensures that every link in the chain is trusted software . for example , If the component is shipped with a hardware based trust root , To verify MCU From safe sources . Then the trust root (RoT) Transfer to developers , The developer programs the security boot loader and security policy onto the device . During the boot sequence ,RoT Verify the integrity and authenticity of the boot loader , Then verify the integrity and authenticity of any second stage boot loader or software , Then verify the authenticity and integrity of the application . The application then validates its data 、 secret key 、 Authenticity and integrity of operating parameters, etc .
This sequence creates a chain of trust , The firmware OTA Update requires and uses the chain . When a new firmware request is issued , The application must decrypt the image and verify that the authenticity and integrity of the new firmware are intact . Only when the trust chain can successfully pass through each link in the chain , To use the new firmware . most important of all , Developers and end users know , When the system starts successfully , The new firmware is legal .
Conclusion
OTA Update is a key infrastructure component of almost all embedded development devices . Of course , Some systems will never be updated once deployed , however , These may be just a small part of the system . OTA Update is the preferred mechanism for updating firmware in the field .
边栏推荐
- buuresevewp
- 卡尔曼滤波器_Recursive Processing
- Jemter stress test - Basic request - [teaching]
- Request&Response
- [industry cloud talk live room] tomorrow afternoon! Focus on digital intelligence transformation of the park
- Redis(4)----浅谈整数集合
- Qt基础教程:QString
- Take you three minutes to get started typescript
- 信息学奥赛一本通 1354:括弧匹配检验
- [UVM practice] Chapter 2: a simple UVM verification platform (3) add various components to the verification platform
猜你喜欢

Basic use of swiperefreshlayout, local refresh of flutterprovider
![[North Asia data recovery] a server data recovery method in which the partitions in the RAID5 array are formatted due to the misoperation of the NTFS file system](/img/4d/01310b489ca6a599a125e849ae4856.jpg)
[North Asia data recovery] a server data recovery method in which the partitions in the RAID5 array are formatted due to the misoperation of the NTFS file system

Attention mechanism yyds, AI editor finally bid farewell to P and destroyed the whole picture

A bold sounding and awesome operation - remake a Netflix

If you don't understand, please hit me

Cache usage

Getdrawingcache of view is empty. Solution: interview questions for Android audio and video development

Jemter 壓力測試 -基礎請求-【教學篇】

Okhttp3 source code explanation (IV) cache strategy, disadvantages of Android mixed development

This article will take you to learn in detail what is FTTH
随机推荐
Opencv鼠标事件+界面交互之绘制矩形多边形选取感兴趣区域ROI
Introduction to mapping in ES
1010. song backtracking with total duration divisible by 60
蓝桥杯嵌入式学习总结(新版)
How to quickly merge multiple PDF files?
Machine learning - Iris Flower classification
OSPF design principles, commands take H3C as an example
GMP model
Blue Bridge Cup embedded learning summary (new version)
Open a file at line with'filename:line'syntax - open a file at line with'filename:line' syntax
Is it legal to open an account for compass stock trading software? Is it safe?
有序排列
QT之一个UI里边多界面切换
Summary of domestic database examination data (continuously updated)
Jemter stress test - basic requirements - [teaching]
Installation homebrew error summary
Minor problems in importing D
How can I find the completely deleted photos in Apple mobile phone?
Nine hours, nine people and nine doors (01 backpack deformation) - Niuke
[NLP] vector retrieval model landing: Bottleneck and solution!