首页 > 汽车技术 > 正文

汽车基础软件信息安全关键技术

2023-02-03 20:03:05·  来源:汽车测试网  
 
以上述为例,安全启动的流程如下,

1. 在 SOC 系统上电后,首先初始化 Bootrom,这是SOC 厂商出厂配置的启动文件。2.Bootrom 初始化完成后装载用于后续验证镜像文件的公钥,并对其进行自检。

  1. 确认公钥的合法性后,Bootrom 使用公钥对 Bootloader 的镜像文件进行验签。

  2. 验签完成并确认 Bootloader 完整性后,利用公钥对其下一级镜像 OS 文件进行验签。

  3. 在确认 OS 的完整性后,OS 启动所需的应用程序。


当前镜像合法性的确认是在上一级镜像安全的基础上进行的,也就是建立信任链。因此,需要保证初级镜像 Bootrom 是合法性的,使其可作为信任根。通常 Bootrom 在出厂时是存储在 OTP(One Time Programmable, 一次性可编程)区域,使其只能读不能写。OTP 特性保证了器件被编程一次后其内容不能被再次更改,但可被多次读取,出厂状态下所有 OTP 的 bit 均为 0,刷写后一旦某位 bit 变成 1 后将无法修改,也称该操作为硬件熔断。

由于镜像文件的验签操作依赖于公钥,若 SOC 系统的密钥被攻击者替换,那么攻击者只需要用与其匹配的私钥制作镜像签名即可。因此必须确保 SOC 系统上的公钥不被替换。通常的做法是将公钥存储在 OTP 区域。但由于 OTP 可用区域是有限的,而为了确保每次安全启动所用的公钥是有效的,需要在OTP 区域存储公钥摘要。在每次系统上电之前,Bootrom 都会使用 OTP 中公钥摘要值来验证公钥的完整性,而公钥是保存在镜像的配置文件中。

图片

图3.4-9 安全启动流程图

在安全启动过程,分别读取启动镜像、对应签名文件以及公钥。使用相同的 HASH 算法对启动镜像计算 HASH 值,常用的 HASH 算法有 SHA-256 等。接着通过公钥对签名文件进行解密得到 HASH 值。两个 HASH 值进行比较,如果一致,说明验签校验通过,验证了启动镜像的身份,镜像可以加载;否则镜像可能被篡改,不能被加载。

图片

图3.4-10 安全启动公私钥对生成流程

在 SOC 系统中安全启动所用的启动镜像、启动镜像签名文件、公钥摘要、公钥通常在线下可信环境中制作。

通过 HSM(Hardware Security Model,硬件安全模块)生成公私钥对,并通过 HASH 算法计算出公钥摘要。其中,公钥摘要需要在出厂前灌装到 OTP 区域,然后使用私钥对启动镜像进行签名,得到签名文件。

身份鉴别

身份鉴别技术是我们大多数人最熟悉的安全技术,在各种信息系统中 , 身份鉴别通常是进入系统获得系统服务所必需的第一道关卡,确保身份识别的安全性对系统的安全至关重要。

身份鉴别的目的是确认用户身份的合法性以及用户间传输信息的完整性与真实性,是最基本的安全 技术也是最重要的安全技术,因为其他安全技术(比如权限控制、安全审计等)都要依赖用户身份信息, 如果身份信息不可信,安全就失去了根基。

身份鉴别的核心理论都是通过 3 个问题来识别确认身份:你知道什么,你拥有什么,你的唯一特征是什么。

  • 你知道什么,就是根据你知道的信息来证明你的身份。核心在于你知道的信息一定是保密的,别人不知道或难以猜测的。

  • 你拥有什么,就是根据你拥有的东西来证明你的身份。核心在于你拥有的东西一定是有特征的, 可以被对方辨识并认可的东西。

  • 你的唯一特征是什么,根据你的唯一特征来证明你的身份。核心在于你具有唯一的生物特征,这个生物特征可以准确对应到你这个人。

基于上述 3 个核心理论,并伴随着科学技术的快速发展,以及计算机与光学、声学、生物传感器和生物统计学等高科技手段的综合运用,衍生出了多种多样的身份鉴别技术,其中车载系统中常用的技术包括:

分享到:
 
反对 0 举报 0 收藏 0 评论 0
沪ICP备11026917号-25