基于信息安全HSM固件的ECU间安全通讯

描述

作者 | Ted 上海控安革路工作室资深技术顾问

来源 | 鉴源实验室

01

Autosar SecOC标准

随着智能网联汽车的蓬勃发展,尤其是辅助及自动驾驶技术的提高,新一代电子电气架构对车身网络通讯信息安全提出了新的要求。整车中越来越多的零部件在直接或者间接的对外信息通讯过程中面对信息安全风险,整车FOTA、V2X等应用也催生了复杂信息交互的安全加密要求。

最近几年也发生了很多对车载网络的恶意攻击事件,以当下发展迅猛的新能源汽车电力驱动为例,整车控制器通过CAN网络发送给牵引电机控制器扭矩和转速请求等,但是当总线中有人伪造相关扭矩请求报文,将会造成牵引电机非预期加速这样的致命后果。为了应对汽车电子总线数据加密和验证的需求,AUTOSAR组织增加了全称为Secure Onboard Communication(SecOC)的组件,为车载通讯总线引入了一套通信加密和验证的标准。本文主要描述了基于ST高性能高安全性PowerPC结合Autosar SecOC完成的硬件加密的安全总线通信实现。

02

SPC58系列软件解决方案

ST SPC58系列产品内置了Hardware Security Module(HSM),SPC58xC/xG/xN等产品符合欧盟Evita Medium信息安全等级,SPC58xH产品符合欧盟Evita Full信息安全等级,能够支持客户应对当前及未来汽车电子ECU的信息安全挑战。

SPC58系列产品搭载的HSM核心由32bit PowerPC e200z0核心及针对关键密码算法的硬件单元组合而成,其通过HSM/HOST接口和Shared RAM与主核心交互。下面结合SecOC应用和服务构建了基于HSM硬件和HSM固件包的演示系统。基本架构如下图所示:

汽车

图1 AUTOSAR规范的SecOC与HSM交互示意图

上海控安信息安全和革路工作室团队基于SPC58微控制器和HSM/Security Stack相关软件提供上述框图中的软件解决方案及示例代码:

(1)HSM核心中运行的Firmware,包括基于SPC58xH的增强型eHSM的Firmware固件或者基于SPC58xC/xG/xN等产品的标准HSM的Firmware固件。固件支持的密码学算法包括如下图所示:

汽车

图2 ST HSM支持算法示意图

(2)ST提供符合Autosar Crypto Interface要求的Crypto Driver,以方便客户集成第三方Autosar基础软件;

(3)HSM核心的启动示例代码,包括基于MC_ME软件启动HSM核心及基于DCF配置的System Boot启动HSM核心;

(4)采用与对应HSM 固件相关的Crypto Driver。

03

整体ECU安全通信演示

基于上述HSM Firmware和相关硬件密码加速器,结合SecOC应用需求,开发了整体ECU间安全通信的演示系统。

(1)Host Core软件功能

运行于SPC58多核心PowerPC e200z4的Host core软件主要功能有:

· Com协议栈:包括COM、PduR、CanIf及SecOC模块;

· Crypto协议栈:包括Csm和CryIf模块;

· MCAL相关模块:包括Can和Crypto模块。

一个安全通信CAN信号发送的过程如下图:

汽车

图3 SecOC CAN-FD信号交互流程图

(2)Crypto Driver配置

基于ST提供的相应Crypto Driver包,只需要对CryIf接口部分进行配置,包括CryptoKey和CryptoObject等配置,本例使用了AES128算法进行安全加密通信算法。

汽车

图4 基于ST Crypto Driver的配置示例

(3)HSM Core固件烧录及密钥生成

本例中HSM固件需要单独进行仿真器烧录,并且需要调用Key Management功能,提前加载Key功能。

(4)功能验证

本例实现了对CAN-FD帧payload的加密,下图中CAN帧ID 0x456的最后四个字节分别是FVM及加密结果。本例使用的UDE仿真调试器可以同时实现主核变量查看,HSM核心状态和HSM核心存储器查看。演示效果如下图所示:

汽车

图5 SecOC在SPC58 MCU中的运行及安全通讯信号示例

审核编辑 黄昊宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分