介绍
- 一个具有HSM核心的安全软件解决方案至少由两个项目组成:
- 一个用于HSM(即“veHsm配置”)。
- 一个用于主机(即“主机配置”)。
- 如果主机核心上的软件包含第三个AUTOSAR基础软件(BSW)堆栈,那么必须将Crypto(veHsm)作为接口添加到veHsm。
工程模块
-
Crc:CRC库在veHsm内部用于计算HSM非易失性存储器内容的校验和。
-
CryIf:CryIf通过定义CryIf通道将加密作业内部分派给veHsm的不同加密驱动程序。这些通道不必与主机配置中的通道匹配。此外,CryIf还是导出到预配置文件的密钥配置的来源。
-
Crypto_30_LibCv(也称为Crypto(SW)):表示与加密库vSecPrim接口的加密驱动程序。此外,典型的密钥也在这里建模。
-
Crypto_30_Hwa:提供可以使用硬件加速执行的加密原语。对于旧版本,硬件加速的加密原语位于vHsm_Hal下。
-
Csm:用于定义veHsm内部使用的作业。Csm通常仅与某些插件或自定义加密驱动程序结合使用。
-
Dem_Stub:Dem在veHsm中不直接使用,但一些模块需要将其作为参考。因此,在配置中集成了一个存根。
-
Det_Stub:Det在veHsm中不直接使用,但一些模块需要将其作为参考。因此,在配置中集成了一个存根。
-
EcuC:是包含一般参数的容器,如字节序、指针大小等。
-
Fee:FEE为存储数据提供了一个专用的闪存区域,以持久化方式存储数据。它为上层模块提供了标准化接口。
-
Fls/vMem:这是硬件依赖的闪存驱动程序,用于读取或写入数据闪存。
-
MemIf:MemIf(内存抽象接口)提供了一个标准化接口到NvM,抽象了各种非易失性存储器。
-
NvM:该模块抽象了非易失性存储器(如EEPROM或Flash)的使用,使得所有对NV存储器的访问都是基于块的。
-
OS (SC1):操作系统(OS)提供了多个任务优先级和加密作业调度选项的可能性。仅提供可扩展性类别1。
-
Rte(BRE):基本运行环境(BRE)通过提供可配置的BSW调度、临界区管理和为通常由RTE创建的服务层BSW模块创建类型定义,简化了BSW集成。
-
vHsm:vHsm是veHsm固件的中心模块。它提供了基本配置选项以及安全启动配置容器。
-
vHsm_Core:是veHsm内部的加密驱动程序,提供安全启动、安全软件下载和veHsm固件更新所需的原语。
-
vHsm_Custom:是veHsm中的加密驱动程序,允许客户扩展veHsm的功能。
-
vHsm_Hal:提供特定于平台的功能。
-
vMemAccM:在Fee和vMem之间提供接口。
-
vSecPrim:是加密算法的软件库。
总结
veHsm配置由多个模块组成,每个模块都有特定的功能和目的:
- 加密和校验:通过
CryIf
和Crypto_30_LibCv
等模块进行加密作业的分派和执行。 - 密钥管理:通过
CryIf
导出密钥配置。 - 硬件加速:
Crypto_30_Hwa
提供硬件加速的加密原语。 - 内部作业定义:
Csm
用于veHsm内部作业的定义。 - 存根模块:
Dem_Stub
和Det_Stub
作为某些模块的参考。 - 参数和数据存储:
EcuC
和Fee
分别用于存储通用参数和持久化数据。 - 内存和闪存管理:
MemIf
和Fls/vMem
分别抽象非易失性存储器和闪存驱动程序。 - 操作系统和任务调度:
OS (SC1)
提供任务优先级和调度选项。 - 运行环境和BSW集成:
Rte(BRE)
简化BSW集成并提供调度和类型定义。 - 核心功能和安全特性:
vHsm
、vHsm_Core
和vHsm_Custom
提供veHsm固件的核心功能和安全特性,允许客户定制和扩展。 - 平台特定功能:
vHsm_Hal
提供特定于平台的功能。 - 接口:
vMemAccM
在Fee
和vMem
之间提供接口,vSecPrim
是加密算法的软件库。
这些模块共同构成了一个全面的安全软件解决方案,涵盖了从加密操作到数据存储和任务调度的各个方面。