杰发科技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值也对应上了

相关推荐
sramdram11 小时前
MCU微控制器OA打印机方案
单片机·嵌入式硬件·mcu·mcu微控制器
GeekArch1 天前
第28讲:避坑——AI堆栈分配错误、栈溢出BUG
c语言·人工智能·stm32·mcu·学习·bug
GeekArch3 天前
第24讲:Vibe模式代码风格控制——适配Keil/STM32工程规范
人工智能·stm32·单片机·嵌入式硬件·mcu·决策树·ai编程
sramdram4 天前
低功耗MCU微控制器在动态血糖仪(CGM)中的应用方案
单片机·嵌入式硬件·mcu·mcu微控制器
GeekArch7 天前
第8讲:裸机单片机项目——Vibe快速迭代的最优边界
c语言·stm32·单片机·嵌入式硬件·mcu·物联网·ai编程
GeekArch8 天前
第5讲:嵌入式场景二范式决策树:什么情况快写、什么情况严写
人工智能·stm32·单片机·mcu·物联网·决策树·机器学习
不想努力只想躺平的菜鸟ing9 天前
2. UART与TTL UART、CMOS UART、RS232、RS422、RS485、tod
mcu
OIDCAT11 天前
国产USB转千兆网卡芯片CH398 VLAN应用
网络·嵌入式硬件·国产·usb转千兆网卡
腾讯数据架构师11 天前
CubeStudio 平台简介:国产化云原生一站式开源人工智能平台(MLOps / 大模型全链路)
人工智能·云原生·开源·mlops·国产·maas·机器学习平台
wuyk55512 天前
38.什么是C语言?从语法到工程落地的工程师视角解读
c语言·开发语言·stm32·单片机·mcu·51单片机