搜索
bottom↓
回复: 2

ESP32 Secure Boot加密烧录过程

[复制链接]

出0入0汤圆

发表于 2018-11-19 11:55:58 | 显示全部楼层 |阅读模式
ESP32 Secure Boot加密烧录过程
经过数天测试,数块ESP32被烧成砖后,终于摸索出ESP32加密烧录的经验☹。
1.        开发环境esp-idf-v3.1。执行~esp/esp-idf/components/esptool_py/esptool/espefuse.py --port /dev/ttyS1 summary查看EPS32芯片efuse未加密前的配置。

2.        在make menuconfig中使能secure boot、flash encryption加密功能。

3.        如果第一次执行make,将会提示生成secure_boot_signing_key.pem私钥文件,按提示操作即可。
4.        运行make flash,编译并烧写partition table和app images到ESP32。
5.        运行make bootLoader,按提示烧写secure bootloader到ESP32。

6.        复位重启ESP32后由于FLASH_CRYPT_CNT=0,ESP32将会用随机数烧写efuse BLK1(Flash encryption key),作为Flash encryption的密钥,并用这个密钥就地加密第4步的partition table和app image。请特别注意,加密过程可能需要花费超过1分钟,加密过程不要复位ESP32!!!加密完毕后efuse中自动变为FLASH_CRYPT_CNT=1,ABS_DONE_0=1说明partition table和app image加密已经生效。

7.        复位重启后的屏幕输出。

8.        重新烧写partition table和app image(3次重烧机会)。用户修改app应用后,执行make flash烧写新的partition table和app image到ESP32。
9.        使用命令行手动烧写 FLASH_CRYPT_CNT,此时2个 bit 被置为 1(取值为0x03)  
10.        重启设备,bootloader 发现 FLASH_CRYPT_CNT 的值是 0x03(2 bit 1),于是重新加密 flash 数据,加密完成后 bootloader 将 FLASH_CRYPT_CNT 烧写为0x07(3 bit 1),flash 加密正常使用。
FLASH_CRYPT_CNT的作用
•        FLASH_CRYPT_CNT 是 flash 加密方案中非常重要的控制标志,它是 8-bit 的值,它的值一方面决定 flash 中的值是否马上需要加密,另一方面控制 flash 烧写次数限制。
•        当 FLASH_CRYPT_CNT 有(0,2,4,6,8)位被烧写为1时,bootloader 会对 flash 中的内容进行加密。
•        当 FLASH_CRYPT_CNT 有(1,3,5,7)位被烧写为1时,bootloader 知道 flash 的内容已经过加密,直接读取 flash 中的数据解密后使用。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入296汤圆

发表于 2018-11-19 17:53:19 | 显示全部楼层
ESP不是Arm核吧……要不要换个区域,现在这样分类错了。

出0入0汤圆

发表于 2019-4-3 14:49:06 | 显示全部楼层
esp 的这个确实比较麻烦
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-27 06:24

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表