3. 设备身份基础
在 ECU 安全工程中,“设备身份”不是单一字段,而是一组从“叫什么”到“凭什么被信任”的层次化概念。很多团队在早期只给 ECU 分配一个序列号,到了 OTA、诊断授权或车云互信阶段才发现无法证明“它真的是它”。本节从身份标识、唯一标识符、密码学身份、PKI 与信任根五个层次,建立可落地的身份认知框架。
一、核心原理:身份的五层递进
设备身份可以理解为一条从“标签”到“信任”的递进链:
- 身份标识(Identity):用于区分“这是哪一类设备”的语义标签,例如车型代号、ECU 类型、硬件版本、供应商代码。它通常不要求全局唯一,但要求可读、可管理。
- 唯一标识符(Unique Identifier):在某一范围内唯一确定一台设备,例如 VIN、ECU 序列号、芯片 UID、MAC 地址。它解决“是哪一台”的问题,但本身不具备防伪能力。
- 密码学身份(Cryptographic Identity):由密钥对及其证书绑定的身份。设备持有私钥,对外用公钥证书证明“我拥有与该身份对应的私钥”。它解决“能否证明是我”的问题。
- 公钥基础设施(PKI):通过 CA、注册机构、证书签发、吊销、策略与审计,把公钥与设备身份可信地绑定起来,形成可验证的信任链。
- 信任根(Root of Trust, RoT):设备内部不可篡改的信任起点,通常由硬件安全模块、只读引导代码、固化密钥或安全熔丝构成,为上层身份与安全启动提供锚点。
关键结论:唯一标识符回答“是谁”,密码学身份回答“如何证明”,PKI 回答“由谁证明、如何验证”,信任根回答“最初凭什么相信”。四者缺一不可。
二、方法流程:从标识到可信身份的建立
在 ECU 量产与上线过程中,身份建立通常遵循以下流程:
- 身份建模:定义设备身份字段,包括车型、ECU 类型、硬件版本、供应商、序列号、VIN 绑定关系等。
- 唯一标识分配:在产线或芯片阶段写入唯一标识符,并记录到设备台账或 MES 系统。
- 密钥生成与注入:在安全环境内生成密钥对,私钥注入安全存储,公钥导出用于证书申请。
- 证书签发:由 PKI 的注册机构审核设备信息,CA 签发设备证书,形成“公钥—身份—有效期”的绑定。
- 信任根固化:将根证书或信任锚写入设备只读区域,作为后续验证的起点。
- 生命周期管理:支持证书更新、吊销、密钥轮换与设备退役,避免身份“一次写入、终身不变”。
下面是一个典型的设备证书申请与签发参数示例,用于说明身份绑定关系:
DeviceIdentity {
deviceType: "VCU",
hwVersion: "HW-B2",
serialNumber: "VCU-2024-000871",
vin: "LSVAA1234R0000001",
publicKey: "EC P-256",
keyUsage: "digitalSignature, keyAgreement",
validity: "2024-06-01 ~ 2029-05-31",
issuer: "OEM-Device-CA-02"
}
三、案例/场景:OTA 升级中的身份验证
假设一辆车发起 OTA 升级。云端需要确认:请求来自合法车辆,且升级包未被篡改。此时身份体系按如下方式工作:
- 车辆使用唯一标识符(VIN + ECU 序列号)声明“我是谁”。
- 车辆使用设备私钥对升级请求签名,云端用设备证书中的公钥验签,确认“确实是这台车”。
- 云端检查证书链是否可追溯到 OEM 根 CA,确认“身份由可信机构签发”。
- 云端检查证书状态(有效、未吊销、未过期),确认“身份当前仍然可信”。
- 升级包本身由发布私钥签名,车辆侧用预置的发布公钥验证,确认“包来自合法发布方”。
如果缺少密码学身份,仅靠 VIN 或序列号,攻击者可以轻易伪造请求;如果缺少 PKI,设备无法判断对方证书是否可信;如果缺少信任根,设备无法安全保存和验证根证书。
四、误区与复盘
常见误区一:把唯一标识符当身份认证。序列号、MAC、芯片 UID 都可以被读取和复制,不能单独作为认证凭据。
常见误区二:只做证书签发,不做吊销与轮换。设备被盗、密钥泄露或退役后,旧证书仍可能被滥用。
常见误区三:信任根放在可写 Flash。一旦被篡改,整条信任链失效,后续所有验证都不可信。
常见误区四:身份字段与业务字段混用。把 VIN 直接当私钥索引或证书主题,会导致隐私泄露和跨系统耦合。
复盘时建议检查三个问题:设备身份是否可验证、可吊销、可更新?信任根是否真正不可篡改?身份生命周期是否覆盖生产、上线、运维、退役全过程?
五、概念对照清单
| 概念 | 回答的问题 | 典型形式 | 是否具备防伪能力 |
|---|---|---|---|
| 身份标识 | 这是哪类设备 | 车型、ECU 类型、硬件版本 | 否 |
| 唯一标识符 | 这是哪一台设备 | VIN、序列号、芯片 UID | 否 |
| 密码学身份 | 如何证明它是它 | 密钥对、设备证书 | 是 |
| PKI | 由谁证明、如何验证 | CA、RA、证书链、CRL/OCSP | 是 |
| 信任根 | 最初凭什么相信 | HSM、安全启动、固化根证书 | 是(硬件级) |
理解这五个层次后,后续章节中的安全启动、安全通信、密钥管理和 OTA 签名验证,都会回到同一个基础:设备必须先有可信身份,才谈得上可信行为。