2. Microchip安全器件与硬件信任根选型
在安全启动与固件升级体系中,硬件信任根(Root of Trust, RoT)是整个信任链的起点。Microchip 提供多条安全器件产品线,覆盖从低成本固定功能到可编程高安全等级的不同需求。理解这些器件的特性、接口、密钥存储方式与选型依据,是设计安全启动方案的第一步。
安全器件的分类与定位
Microchip 的安全器件大致可分为四类:CryptoAuthentication 系列(以 ATECC608 为代表)、CryptoMemory 系列、TrustAnchor 系列(含 TA100),以及集成安全启动与安全升级能力的 TrustFLEX/TrustCUSTOM 配置族。它们并非互相替代,而是面向不同安全等级、不同主机资源和不同成本预算的梯度产品。
CryptoAuthentication(ATECC608A/B)是最常用的配套安全芯片。它通过 I²C 接口与主控 MCU 通信,内部集成 ECC P-256 密钥生成与签名、SHA-256 哈希、AES-128 加解密以及真随机数发生器。其核心价值在于:私钥在芯片内生成且永不导出,主机只能通过命令请求签名或验证结果。ATECC608 提供 16 个密钥槽(Slot),每个槽可独立配置为存储私钥、公钥、对称密钥或数据,并支持多种读写访问策略。典型应用是为主控 MCU 提供安全启动时的固件签名验证和 TLS 双向认证。
CryptoMemory 系列在安全存储基础上增加了 EEPROM 存储区,适合需要保存少量敏感数据(如密钥、证书、配置参数)且对成本敏感的场景。它同样支持 I²C 接口,但密码算法能力弱于 CryptoAuthentication,通常用于密钥存储而非实时签名运算。
TrustAnchor(TA100)是面向更高安全等级的产品。TA100 内置 Arm Cortex-M0+ 内核,可运行用户自定义的安全固件,支持安全启动、安全升级、密钥管理和多种密码算法(ECC、RSA、AES、SHA)。它提供 SPI 和 I²C 接口,具备防篡改检测引脚和主动屏蔽层,适合需要 FIPS 140-2/3 或更高认证的工业与汽车场景。TA100 的密钥存储采用受保护的内部闪存,支持密钥加密存储和基于硬件的访问控制。
接口与密钥存储对比
接口方面,ATECC608 使用 I²C(最高 1 MHz),TA100 支持 SPI(最高 10 MHz)和 I²C,CryptoMemory 以 I²C 为主。对于需要高速签名验证的启动流程,SPI 接口的 TA100 在吞吐量上更有优势;而对于引脚资源紧张的小型 MCU,I²C 的 ATECC608 更易集成。
密钥存储是选型的核心维度。ATECC608 的密钥槽一旦配置为私钥,外部无法读出,只能执行签名或 ECDH 运算;TA100 则允许在安全内核中运行密钥派生逻辑,并支持密钥的加密备份与恢复。CryptoMemory 的密钥存储相对简单,通常以明文或简单加密形式保存在 EEPROM 中,安全性最低。
选型依据与工程决策
选型时首先明确安全目标。如果只需要在启动时验证固件签名,且主控 MCU 资源有限、成本敏感,ATECC608 是最直接的选择。它的签名验证流程为:主机读取固件哈希,将哈希发送给 ATECC608,芯片用内部私钥对应的公钥验证签名,返回成功或失败。整个过程私钥不离开芯片。
如果产品需要通过 FIPS 140-2/3、SESIP 或 PSA Certified Level 2/3 等认证,或者需要防物理篡改、安全密钥派生、多级密钥层级,则应选择 TA100。TA100 允许在安全内核中运行自定义固件,实现更复杂的信任链逻辑,例如先验证引导程序,再由引导程序验证应用固件,形成两级信任链。
如果仅需保存 TLS 证书、少量对称密钥或设备配置数据,且对实时签名运算没有要求,CryptoMemory 可以以更低成本满足需求。但需注意,其密钥保护能力有限,不适合作为高安全启动的信任根。
接口与集成注意事项
ATECC608 的 I²C 地址通常为 0x60(7 位),主机需在启动早期初始化 I²C 总线并完成唤醒序列。TA100 的 SPI 接口需要片选信号和时钟极性/相位配置,典型时钟频率为 1–10 MHz。无论哪种器件,都建议在 PCB 布局时将安全器件靠近主控,减少总线暴露长度,并避免将密钥总线引出到外部测试点。
密钥配置阶段,ATECC608 需要通过配置区(Config Zone)设置每个槽的读写权限和密钥类型。配置区一旦锁定便不可更改,因此量产前必须确认配置模板。TA100 则通过安全固件加载密钥,支持在产线注入或现场加密更新。
综合来看,Microchip 安全器件的选型不是单一维度决策,而是安全等级、接口资源、成本预算和认证要求的平衡。理解每类器件的密钥存储机制与运算能力边界,才能为安全启动方案选择正确的硬件信任根。