乐鑫安全制造全流程

主要参考资料:

【乐鑫全球开发者大会】DevCon24 #10 |乐鑫安全制造全流程

乐鑫官方文档Flash加密: https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/security/flash-encryption.html

【ESP32S3】使用 Flash 下载工具完成 Flash 加密功能: https://blog.csdn.net/Marchtwentytwo/article/details/138313656

对称加密和非对称加密,一文讲解明白!: https://blog.csdn.net/askf01/article/details/133280265

目录

简介

制造安全可以分为两个方面:设备身份安全 和 生产安全。

设备身份安全

设备身份的生成与保护

生成独一无二的设备身份有三个步骤:

(1)由随机数生成器(RNG)生成的设备密钥,结合设备公钥 和设备信息,一起组成了证书签名请求(CSR)。

(2)由证书授权的云端或本地 签名,产生设备证书。

(3)设备密钥 和 设备证书 一起组成了独一无二的设备身份。

生产安全

设备安全主要分为三部分:

(1)Flash加密------避免设备代码被读取

(2)安全启动------只有被信任的固件被启动

(3)Device Hardening------帮助Flash加密和安全启动 关闭debug接口

Flash加密

对于Flash加密,乐鑫采用了AES (Advanced Encryption Standard)加密,这是一种对称加密方法,也就是加密和解密的密码是一致的。

对称加密的优势在于速度快,加解密过程简单,适合用于传输大量数据。然而,对称加密也存在一些安全性的缺点。首先,密钥的安全性是关键,如果密钥泄露,加密的数据将会遭到破解。其次,对称加密无法提供身份验证和数据完整性保护,即无法判断消息的发送方是否可信以及数据是否被篡改。

ESP32提供以下 Flash 加密模式:

  • 开发模式

建议仅在开发过程中使用。因为在这种模式下,仍然可以将新的明文固件烧录到设备,并且引导加载程序将使用存储在硬件中的密钥对该固件进行透明加密。此操作间接允许从 flash 中读出固件明文。

  • 发布模式

推荐用于制造和生产。因为在这种模式下,如果不知道加密密钥,则不可能将明文固件烧录到设备。

相关推荐
我言秋日胜春朝★24 分钟前
【Linux】进程地址空间
linux·运维·服务器
繁依Fanyi1 小时前
简易安卓句分器实现
java·服务器·开发语言·算法·eclipse
C-cat.1 小时前
Linux|环境变量
linux·运维·服务器
Smartdaili China1 小时前
如何在 Microsoft Edge 中设置代理: 快速而简单的方法
前端·爬虫·安全·microsoft·edge·社交·动态住宅代理
m51271 小时前
LinuxC语言
java·服务器·前端
运维-大白同学1 小时前
将django+vue项目发布部署到服务器
服务器·vue.js·django
烦躁的大鼻嘎2 小时前
【Linux】深入理解GCC/G++编译流程及库文件管理
linux·运维·服务器
乐大师2 小时前
Deepin登录后提示“解锁登陆密钥环里的密码不匹配”
运维·服务器
儒道易行2 小时前
【DVWA】RCE远程命令执行实战
网络·安全·网络安全
ac.char2 小时前
在 Ubuntu 上安装 Yarn 环境
linux·运维·服务器·ubuntu