• 391查看
  • 0回复

[信息安全] 汽车网络安全--SoC中的Security系统

[复制链接]


该用户从未签到

发表于 21-1-2024 11:16:24 | 显示全部楼层 |阅读模式

汽车零部件采购、销售通信录       填写你的培训需求,我们帮你找      招募汽车专业培训老师


Security系统是集成电路(即微控制器或SoC)中的专用子系统。在汽车市场中,它们通常被称为安全硬件扩展(SHE)模块或硬件安全模块(HSM)。该系统的功能主要如下:

    应用程序提供加解密服务,管理敏感信息和资产等;

    为SoC提供平台安全性,保护APP完整性以及关键资产的机密性和可用性;

    保护加密密钥等


1. 系统架构

通常带有Security系统的车规电子系统会划分为两个部分:Appl Domain和Security Domain;参考NXP提供的架构,如下:
汽车网络安全--SoC中的Security系统w1.jpg

Appl主要是常规的软件算法等,Security主要负责给Appl提供敏感信息等服务;
2.安全服务

2.1 安全服务请求

Appl Domain通过安全服务请求来使用HSM中的服务;安全服务请求的信息通常包含待处理的数据源地址和目标地址,要使用的加解密算法ID、密钥ID(想想为什么使用的是ID)。HSM在收到请求后根据请求类型立即或者稍后处理。2.2 密钥管理

密钥管理,顾名思义,包括HSM对密钥存储、派生、导入、继承等的管理;通常情况下,密钥是存在HSM内部non-volatiile memory中。从物理上,将密钥和Appl进行隔离;同时,HSM还可以对密钥进行加密,进一步保证密钥安全性;对HSM来说,密钥可根据类型进行分类管理,例如sym要使用的key为一组、asym要使用的为另外一组;所有的密钥都以slots形式管理,并且以slots ID来进行密钥的索引。对于Appl来说,可以通过密钥slots ID选择目标key,但是不能知道该key的具体值。为了避免在不安全的环境下注入密钥从而导致密钥泄露的问题,HSM提供密钥的内部生成、以及密钥的派生;密钥的派生典型场景就是用于TLS的通信。TLS主要分为两层,上层为握手协议,下层为记录协议,而记录协议主要是采用对称加密算法对消息进行处理;在上层握手时,就要共享信息,例如一些永久密钥、会话信息等,用于派生出临时的共享密钥和证书;握手成功后,就用这些临时共享密钥对数据进行加解密。为了保证PKI能够生成并安全将密钥下放到HSM系统,HSM还要支持密钥的更新、导入、导出;首先密钥的导入,是基于HSM或者整个系统的生命周期进行,例如,在芯片下线时,导入原始密钥到HSM空闲slots,而密钥更新的前提是更新方必须知道该密钥的slots、该密钥的具体值等;而密钥的导出仅支持以加密形式导出,防止密钥的泄露;除了上述描述外,最重要的,HSM必须给密钥分配其属性,例如只做验签的密钥,在某种程度上就不能用于签名的生成,这样就防止了Appl被恶意攻击后该密钥用于生成某些签名,从而影响整个系统安全。2.3 加密服务

加密服务通常是Appl用来保护即将要对外传输的关键敏感信息,HSM可以通过sym或者asym的cipher mode和机制,来生成加密后的数据,通常叫做密文。在加密服务中,常见的用法就是整车网络中数据交互时的保护,通过生成或者校验MAC值或者签名,同时为了满足实时性要求,整车中通常用的都是对称加密算法;从而也印证了密钥导入这一功能;在汽车不同ECU的交互过程中,身份的识别也是非常必要的。因此,一个共享密钥或者公私密钥对是需要的;这在TLS或者IPsec至关重要。除了上述服务,随机数的生成也需要HSM支持,这个功能主要给HSM自己使用,用于签名的生成或者对密钥进行加密。随机数分为真随机数和伪随机数,真随机数来源于高质量的熵源,伪随机数则来自一个确定算法;但是,在汽车某些实时性要求比较高的场景,TRNG中使用的熵源本质上是缓慢(熵源本质上有大气噪声、电子噪声、频率抖动等),并不总是满足应用程序的要求。因此,TRNG的输出被用于扩展熵池。熵池的内容用作PRNG的种子,这比TRNG快得多,并且PRNG的输出可用于应用程序。加密服务在汽车MCU级别使用的比较少的是on-the-fly encryption,这个加密方式在最初是为了保护存储在外挂SPI NORFlash中的只读firmware的机密,这里不多做介绍(主要我也没搞懂),参考资料STM OTFDEC。
3.Security安全策略

HSM作为整个系统的安全信任锚,在系统的访问权限上需要制定相应的安全策略;
        下面提供几个示例:

    安全启动策略(Secure Boot):配置整个系统的启动流程,包括并行启动、顺序启动、启动Stage等,定义安全启动失败后整个系统行为和对应惩罚措施;

    系统memory访问权限策略

    Firmware保护策略:内部flash读出权限,或者外挂flash的固件加密等;

    Debug策略:在调试HSM时功能权限分配策略;

4.小结

在第三节安全策略中,其实大有深挖的地方,限于篇幅,这暂时不讲,在后续章节,我们会继续聊安全启动,密钥生命周期管理等
      本文其实就是一个HSM简单小科普,让大家知道它是干什么的。具体里面涉及的东西,我会从汽车方面展开,以芯片原厂、Tier1、OEM三个维度进行梳理和讲解。

快速发帖

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|Archiver|汽车工程师之家 ( 渝ICP备18012993号-1 )

GMT+8, 22-12-2024 16:47 , Processed in 0.350235 second(s), 30 queries .

Powered by Discuz! X3.5

© 2001-2013 Comsenz Inc.