杰发科技AC7840——CSE安全启动

看了前面关于秘钥更新和删除之后,安全启动其实就很简单了

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值也对应上了

相关推荐
jianqiang.xue7 小时前
ESP32-P4 看门狗复位全解析:HP_SYS_HP_WDT_RESET 故障排查实战
单片机·mcu·esp32·idf
woshihonghonga8 小时前
解决Eclipse的Copilot终端依赖问题
stm32·mcu·eclipse·copilot·ai编程
嵌入式老菜鸟qq1252427731 天前
关于S2-LP休眠
单片机·嵌入式硬件·mcu·射频工程
学嵌入式的小杨同学1 天前
STM32 进阶封神之路(十八):RTC 实战全攻略 —— 时间设置 + 秒中断 + 串口更新 + 闹钟功能(库函数 + 代码落地)
c++·stm32·单片机·嵌入式硬件·mcu·架构·硬件架构
学嵌入式的小杨同学1 天前
STM32 进阶封神之路(十七):RTC 实时时钟深度解析 —— 从时钟源到寄存器配置(底层原理 + 面试重点)
c++·stm32·单片机·嵌入式硬件·mcu·硬件架构·pcb
EVERSPIN2 天前
32位MCU副屏方案
mcu·32位mcu
学嵌入式的小杨同学2 天前
STM32 进阶封神之路(十五):DHT11 单总线实战 —— 温湿度检测从时序解析到代码落地(库函数 + 寄存器)
vscode·stm32·单片机·嵌入式硬件·mcu·智能硬件·pcb工艺
学嵌入式的小杨同学2 天前
STM32 进阶封神之路(十六):PWM 波深度实战 —— 定时器输出 + LED 调光 + 电机调速(库函数 + 寄存器)
stm32·单片机·嵌入式硬件·mcu·硬件架构·硬件工程·智能硬件
liu_endong4 天前
RTOS基于7840——任务创建、启动、切换、删除
mcu·rtos·杰发科技·autochips·车规芯片
豆豆饿啦5 天前
【瑞萨AI挑战赛】#01 快速开始
嵌入式硬件·mcu·物联网·iot