3. 设备身份体系设计

设备身份体系要解决的核心问题只有一个:让云端和任何可信方能够确定“与我通信的确实是那台设备”,并且这个判断在设备整个生命周期内可验证、可撤销、可追溯。它由四个层次构成:唯一标识回答“它是谁”,密钥对回答“它如何证明自己”,证书体系回答“谁为它背书”,身份根回答“背书的信任从哪里开始”。四层缺一不可,任何一层设计不当,都会让整条信任链失效。

一、设备唯一标识:从“编号”到“不可伪造的身份锚点”

唯一标识不是简单给设备贴一个序列号。量产场景下,标识必须满足三个条件:全局唯一、不可篡改、可被云端索引。常见做法是采用芯片厂商烧录的一次性可编程(OTP)区域中的唯一ID,例如128位随机数或芯片UID,再与产品型号、批次组合成设备身份字符串,如 PID-AC01-2024A-7F3C9E2B1D4A。其中 PID-AC01 表示产品线,2024A 表示批次,后12位为芯片唯一随机段。

需要特别注意的是,标识本身不等于身份。如果标识只是明文写入Flash,攻击者可以复制到另一台设备上,形成“克隆身份”。因此唯一标识必须与密钥对绑定,由私钥签名证明“我持有与该标识对应的私钥”,标识才具备身份意义。

二、密钥对:设备侧私钥的生成与保护

每台设备应拥有独立的非对称密钥对,推荐使用ECC P-256或国密SM2,兼顾安全强度与嵌入式资源开销。私钥必须在设备内部生成,绝不允许外部注入明文私钥,也不允许导出。公钥则随设备身份证书一起提交给云端注册。

密钥对的生命周期分为三个阶段:产线生成、现场使用、轮换或销毁。产线阶段,设备首次上电时由安全芯片或TEE内部TRNG生成密钥对,私钥写入受保护存储区,公钥导出并写入证书请求。现场使用阶段,私钥仅参与签名或密钥协商,不离开安全边界。轮换阶段,通过安全通道下发新证书,旧密钥标记为历史密钥,保留验证能力但不用于新签名。

三、证书体系:从设备证书到云端信任链

设备证书体系通常采用三级结构:根CA → 中间CA → 设备证书。根CA离线保存,中间CA按产品线或批次划分,设备证书由中间CA签发。设备证书中应包含设备唯一标识、公钥、有效期、签发者信息,并可扩展自定义字段如批次号、产线编号、安全等级。

量产时,设备通过安全通道向中间CA提交证书签名请求(CSR),CSR中包含设备公钥和标识信息,由设备私钥签名。中间CA验证CSR签名后签发设备证书,证书写入设备安全存储区。云端在设备接入时验证证书链,确认设备证书由可信中间CA签发,且未过期、未被吊销。

吊销机制是证书体系不可忽略的一环。量产设备数量大,CRL(证书吊销列表)可能过大,建议采用OCSP Stapling或短有效期证书配合定期轮换,降低吊销查询开销。

四、安全芯片与TEE:身份根的选型与设计原则

身份根是信任链的起点,决定了私钥和证书的存储安全等级。常见选型有三类:独立安全芯片(SE)、可信执行环境(TEE)、软件安全存储。三者在成本、安全强度、开发复杂度上差异明显。

独立安全芯片如ATECC608A、SE050,具备硬件真随机数、密钥不可导出、防侧信道攻击等特性,适合对安全要求高的设备,如智能门锁、支付终端。TEE如ARM TrustZone,在应用处理器内部划分安全世界,适合已有较强主控、需要运行复杂安全逻辑的设备,如智能网关、车载终端。软件安全存储成本最低,但私钥可被提取,仅适合低价值或非敏感场景。

选型原则可以归纳为三条:第一,私钥必须不可导出,任何允许私钥明文读出的方案都不应作为身份根;第二,身份根应具备独立随机数源,避免密钥生成依赖主控弱随机;第三,身份根应与主系统隔离,即使主系统被攻破,私钥仍受保护。对于量产设备,建议优先选择通过CC EAL5+或国密二级认证的安全芯片,并在PCB设计阶段预留I2C或SPI接口,避免后期改板。

设备身份体系信任链与身份根选型 根 CA(离线保存) 信任锚点 · 有效期10~20年 中间 CA(按产品线/批次划分) 签发设备证书 · 支持吊销与轮换 设备证书(每台唯一) 设备ID + 公钥 + 有效期 + 批次扩展字段 身份根:安全芯片(SE) / TEE / 软件安全存储 私钥不可导出 · 硬件TRNG · 防侧信道 · 与主系统隔离 选型依据:安全等级要求 · 成本 · 主控能力 · 认证需求 唯一标识 芯片UID + 型号 + 批次 密钥对 ECC P-256 / SM2 信任链验证方向:云端验证设备证书 → 中间CA → 根CA → 确认设备身份 私钥始终不出安全边界,签名由身份根内部完成,外部仅见公钥与证书

五、量产注入流程中的身份设计落地

将上述设计落到产线,典型流程如下:设备上电后,安全芯片内部生成密钥对并导出公钥;产线工具读取芯片UID,组装设备标识,生成CSR;CSR经安全通道提交给中间CA;中间CA签发设备证书并回传;设备将证书写入安全存储区,同时云端注册设备标识与证书指纹。整个过程私钥不出芯片,产线工具仅接触公钥和证书。

一个可参考的产线参数示例如下:设备型号 AC01,批次 2024A,芯片UID后12位 7F3C9E2B1D4A,密钥算法 ECC P-256,证书有效期 3年,中间CA标识 ICA-AC01-2024A。云端注册表记录设备ID、证书序列号、公钥指纹、注册时间、状态(激活/吊销)。

设计检查要点:私钥是否在设备内部生成且不可导出;唯一标识是否与密钥对绑定;证书链是否可验证到离线根CA;吊销机制是否覆盖量产规模;身份根是否通过至少CC EAL5+或国密二级认证。

身份体系设计不是一次性任务,而是贯穿设备生命周期的治理基础。唯一标识、密钥对、证书体系、身份根四层各司其职,共同构成从芯片到云端的完整信任链。量产阶段把好注入关,后续的接入认证、固件签名、安全通信才有可靠的起点。