看了前面关于秘钥更新和删除之后,安全启动其实就很简单了
0. CMAC生成和验证
安全启动用的CMAC 算法。
CMAC 是一种消息认证码算法,核心作用是 "验证数据的完整性和真实性"(确认数据没被篡改、来自合法方)。

1. 加载boot_mac_key和boot_mac流程

对应的方法描述


代码里流程:
加载boot_mac_key,设置引导方式,设置校验的boot起始地址和大小并计算出boot_mac值,更新boot_mac

注意这里boot_mac_key和boot_mac的区别



2. 计算的boot_mac值

3. 修改后的hex验证mac值
这里我们在之前代码的基础上加了一行打印,要校验的flash数据会有差别


验证没有通过

返回值:安全启动流程的条件未满足

4. 未修改的hex验证mac值
校验成功,和之前的mac值也对应上了
