Uboot在启动kernel时同时校验kernel。启动验证是通过uboot使用FIT(Flattened uImage Tree)镜像,这个镜像包含了kernel、device tree、签名; 1、uboot校验kernel流程 详细流程描述 1)将kernel签名 ① 使用mkimage工具生成FIT包(包含kernel、dtbs、配置文件); ② 将私钥使用签名工具对FIT包进行签名,并将签名保存FIT镜像中 注意:给镜像签名的方式不能提供完全的安全,因为可能会使用相同签名的镜像,改变configuration,生成FIT镜像(混合攻击);也可以将较旧FIT版本中的已签名图像替换到较新的FIT中(回滚攻击) 2)校验流程 ① 读取FIT镜像; ② 获取uboot DT中的公钥 ③ 从FIT中提取签名; ④ 对FIT镜像进行哈希处理 ⑤ 验证HASH和签名 2、如何使能uboot校验kernel 1)在u-boot中启用FIT签名功能; 启用CONFIG_FIT、CONFIG_FIT_SIGNATURE、CONFIG_RSA选项 2)生成验证密钥对; 3)准备用于生成FIT镜像的配置文件.its文件; 4)使用公钥数据更新u-boot设备树并生成带签名的FIT镜像; 5)使用带签名验证的FIT镜像,从u-boot启动内核。 |
【STM32MP257】🥳STM32MP257-DK-开发板开箱体验
linux eclipse编译后自动更新程序
eclipse编写stm32mp135配置
eclipse编写stm32mp135程序
STM32MP135F-DK 开箱测试
openSTlinux系统搭建过程分享
《STM32MPU安全启动》学习笔记之optee 如何加载CORTEX-M核和使能校验
《STM32MPU安全启动》学习笔记之TF-A BL2校验optee和uboot的流程以及如何使能
《STM32MPU安全启动》学习笔记 1.0 介绍
在 STM32MP13x 系列 MPU 上裸跑应用程序