安全启动配置
- 密钥管理
本芯片的安全校验和固件加密都使用 SSK 密钥,该密钥烧录在 eFuse 相关区域中,并且会被设置为仅 CE 模块可见,CPU 无法读取。
-
安全验证
固件的安全验证使用 HMAC-SHA256 算法进行,验证流程如下:
-
将启动镜像加载到芯片内部 RAM 中。
-
配置 CE 模块,使用 SSK 对启动镜像计算 HMAC-SHA256 认证码。
-
如果算出来的认证码与保存在启动固件中的认证码一致,则安全验证通过。
-
- 固件解密
固件解密流程如下:
-
配置硬件加解密模块(CE),使用 SSK 对代码区域进行 AES-CBC 解密。
-
解密是原地进行的,直接覆盖原来的加密数据区域。
制作固件时,如果同时打开了安全认证和加密功能,则总是先对固件进行加密,再对加密后的结果进行安全认证。
-