- 信任根(root of trust)
安全引导依赖于片上系统(SoC)硬件支持来提供初始信任根代码和密钥。信任根密钥由信任根代码用于验证已签名软件或已签名的关键数据的第一个启动阶段。这签名软件或者关键数据用于验证软件组件的后续阶段。密钥应该是在生产时供应给硬件厂商,并存储在受保护的内存中。
2.安全启动的覆盖范围:
安全引导验证过程必须作为第一步执行,只读内存(ROM)代码在任何其他软件组件加载和执行之前强制执行。
安全引导应包括如下规定的SW:
一个约束和小型嵌入式系统(有时称为基于地址):应覆盖100%的安全引导中的软件组件。
具有独立的文件和操作系统映像的复杂嵌入式系统:至少应包括主引导加载程序的启动以及直到操作系统镜像。保护大型镜像和其他资产可能由安全引导之外的安全机制处理。
3.片上信任根代码:
片上信任根代码是第一个绑定到微控制器单元(MCU)硬件和在MCU上电时执行。它应该包含在一个内部的,不可变的存储器(如ROM或被锁定的可信内部flash),以确保其可靠性。这个不可变的信任根代码应该是负责通过加载和验证下一阶段(第一次可重新编程引导)启动信任链阶段的软件。验证是通过使用信任根密钥来检查软件的完整性和真实性。
4.信任链:
这是由信任根代码建立的。通过信任代码的root对第一引导阶段进行成功验证后,验证过的引导阶段软件就可以执行并继续验证执行链随后的引导阶段。每个引导阶段之前都应验证下一阶段的完整性和真实性执行它。
5.安全启动的初始化和执行:
安全启动机制应该在整个SOC的生命周期都支持以及激活运行。
指定的安全启动实施应该被OEM进行文档记录,review的并approved。
安全启动的初始化:安全引导的初始状态,其中安全引导验证的商业密钥还没有提供给ECU,软件应验证开发密钥,存储在只读存储器(ROM)或
版权归原作者 汽车电子小张 所有, 如有侵权,请联系我们删除。