1. 课程导入与工程全景
在智能网联汽车里,密钥不再只是“密码学概念”,而是 ECU 之间建立信任的“身份证”和“通行证”。英飞凌 AURIX 系列 MCU 在整车电子电气(EE)架构中常承担安全网关、域控制器、动力与底盘控制等角色,其内部集成的 HSM(Hardware Security Module,硬件安全模块)与密钥存储、加解密、签名验签、安全启动等能力,构成了车载密钥管理与安全服务落地的硬件根基。本课程围绕“密钥如何产生、如何被安全保存、如何被安全使用、如何被安全更新与吊销”这条主线展开,最终让读者能够在 AURIX 平台上完成可运行、可验证的安全服务工程。
一、什么是车载密钥管理与安全服务
车载密钥管理,指的是在整车生命周期内,对密钥的生成、注入、存储、使用、更新、吊销和销毁进行受控管理的过程。它关注的不是某一次加密运算,而是密钥“从生到死”的全过程可控。安全服务则是把这些密钥能力封装成 ECU 可调用的服务接口,例如安全启动校验、SecOC 报文认证、诊断安全访问、OTA 固件签名验证、TLS/DTLS 会话密钥协商等。
在 AURIX 上,这两者通过 HSM 与 Host CPU 的分工实现:Host CPU 运行应用逻辑,HSM 独立运行安全固件,持有密钥并执行敏感运算。Host 通过共享内存和中断与 HSM 通信,密钥本身通常不离开 HSM 的受保护存储区。理解这一分工,是后续所有实验的前提。
二、在整车 EE 架构中的位置
从整车视角看,密钥管理与安全服务横跨多个层级:云端/后台负责密钥策略与证书签发;车端网关负责域间安全通信;域控制器与 ECU 负责本地安全启动与报文认证;AURIX 则位于 ECU 内部,是密钥的最终“保险箱”和安全运算的执行者。下图给出这一全景关系。
三、典型应用场景
在 AURIX 工程实践中,最常落地的安全服务有四类。第一是安全启动:上电后 HSM 校验 Host 固件的签名,只有校验通过才释放 CPU 运行,防止被篡改的固件执行。第二是 SecOC 报文认证:对 CAN/CAN FD 报文附加 MAC,接收方用共享密钥验证,防止伪造和重放。第三是 OTA 固件签名验证:新固件包携带签名,HSM 验签通过后才允许写入 Flash,并可结合版本号防回滚。第四是诊断安全访问:诊断仪通过 Seed-Key 挑战响应获得权限,密钥由 HSM 保护,避免被暴力破解。
这些场景的共同点是:密钥不出 HSM、运算在 HSM 内完成、Host 只拿到结果。工程上要特别关注密钥句柄(Key Handle)的管理,而不是直接操作密钥明文。
四、学习路径与实验环境搭建
本课程建议按“先跑通、再理解、后优化”的路径推进。实验环境以 AURIX TC3xx 开发板(如 TC375 Lite Kit)为基础,配合 AURIX Development Studio、HSM 固件包、UART/CAN 调试工具。搭建步骤如下:
- 安装 AURIX Development Studio,导入 TC375 的 HSM 示例工程,确认编译链可用。
- 连接开发板,通过 DAP miniWiggler 或板载调试器建立调试会话,确认能烧录并运行 Host 程序。
- 烧录 HSM 固件,确认 HSM 启动成功;可通过读取 HSM 状态寄存器或串口日志判断。
- 配置 Host 与 HSM 的共享内存区域和中断通道,运行一个最小的“Hello HSM”服务调用,验证通信链路。
- 依次完成安全启动、SecOC、OTA 验签、诊断安全访问四个实验,每个实验都保留可观察的输出。
五、关键参数与观察点
在实验过程中,以下参数和观察点值得重点关注:HSM 固件版本与 Host 固件版本的匹配关系;密钥句柄的有效性与权限位;共享内存的地址对齐和大小;中断响应时间;签名验证的返回值(成功/失败/密钥不存在)。这些量直接决定安全服务能否稳定运行。
| 观察项 | 典型值/示例 | 判断依据 |
|---|---|---|
| HSM 固件版本 | 与 Host 工程匹配 | 版本不匹配时服务调用返回错误 |
| 密钥句柄 | 0x01 / 0x02 / 0x03 | 句柄无效则返回 KEY_NOT_FOUND |
| 共享内存大小 | 示例 4 KB | 过小会导致大报文验签失败 |
| 验签返回值 | 0 成功,非 0 失败 | 非 0 需检查密钥与签名数据 |