ZHCAC19A January   2023  – December 2025 MSPM0C1105 , MSPM0C1106 , MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G1518 , MSPM0G1519 , MSPM0G3105 , MSPM0G3106 , MSPM0G3106-Q1 , MSPM0G3107 , MSPM0G3107-Q1 , MSPM0G3505 , MSPM0G3506 , MSPM0G3506-Q1 , MSPM0G3507 , MSPM0G3507-Q1 , MSPM0G3518 , MSPM0G3518-Q1 , MSPM0G3519 , MSPM0G3519-Q1 , MSPM0L1105 , MSPM0L1106 , MSPM0L1227 , MSPM0L1227-Q1 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2227-Q1 , MSPM0L2228 , MSPM0L2228-Q1

 

  1.   1
  2.   摘要
  3.   商标
  4. 1引言
    1. 1.1 关键概念
    2. 1.2 网络安全目标
    3. 1.3 平台信息安全机制
  5. 2器件安全模型
    1. 2.1 器件标识
    2. 2.2 启动时的初始条件
    3. 2.3 引导配置例程 (BCR)
    4. 2.4 引导加载程序 (BSL)
    5. 2.5 启动流程
    6. 2.6 用户指定的安全策略
      1. 2.6.1 引导配置例程 (BCR) 策略
        1. 2.6.1.1 串行线调试相关策略
          1. 2.6.1.1.1 SWD 安全级别 0
          2. 2.6.1.1.2 SWD 安全级别 1
          3. 2.6.1.1.3 SWD 安全级别 2
        2. 2.6.1.2 引导加载程序 (BSL) 启用/禁用策略
        3. 2.6.1.3 闪存保护和完整性相关策略
          1. 2.6.1.3.1 锁定应用 (MAIN) 闪存
          2. 2.6.1.3.2 锁定配置 (NONMAIN) 闪存
          3. 2.6.1.3.3 验证应用 (MAIN) 闪存的完整性
        4. 2.6.1.4 引导加载程序 (BSL) 安全策略
          1. 2.6.1.4.1 BSL 访问密码
          2. 2.6.1.4.2 BSL 读取策略
          3. 2.6.1.4.3 BSL 安全警报策略
      2. 2.6.2 客户安全代码 (CSC) 安全策略
        1. 2.6.2.1 CSC 强制存储体交换
        2. 2.6.2.2 CSC 强制防火墙
        3. 2.6.2.3 CSC 密钥写入 KEYSTORE
      3. 2.6.3 配置数据错误抵抗
        1. 2.6.3.1 由 CRC 支持的配置数据
        2. 2.6.3.2 16 位关键字段模式匹配
  6. 3安全启动
    1. 3.1 安全处理环境隔离
    2. 3.2 客户安全代码 (CSC)
      1. 3.2.1 安全启动流程
      2. 3.2.2 闪存映射
      3. 3.2.3 特性
        1. 3.2.3.1 CMAC 加速
        2. 3.2.3.2 非对称验证
        3. 3.2.3.3 KEYSTORE 及防火墙
        4. 3.2.3.4 CSC 性能
      4. 3.2.4 快速入门指南
        1. 3.2.4.1 环境设置
        2. 3.2.4.2 分步指导
        3. 3.2.4.3 CSC NONMAIN 配置
        4. 3.2.4.4 定制 CSC 示例上的更改
    3. 3.3 启动映像管理器 (BIM)
      1. 3.3.1 安全启动流程
      2. 3.3.2 闪存映射
      3. 3.3.3 快速入门指南
  7. 4安全存储
    1. 4.1 闪存写保护
    2. 4.2 闪存读取-执行保护
    3. 4.3 闪存 IP 保护
    4. 4.4 数据存储体保护
    5. 4.5 安全密钥存储
    6. 4.6 SRAM 保护
    7. 4.7 硬件单调计数器
  8. 5加密加速
    1. 5.1 硬件 AES 加速
      1. 5.1.1 AES
      2. 5.1.2 AESADV
    2. 5.2 硬件真随机数发生器 (TRNG)
  9. 6常见问题解答
  10. 7总结
  11. 8参考资料
  12. 9修订历史记录

CSC NONMAIN 配置

要启用 CSC 过程,需要一些 NONMAIN 配置。CSC 中有一些建议的 NONMAIN 配置:

  1. 调试端口保护:可在生产后选择完全通过密码禁用或启用 MSPM0 调试端口 (SWD)。提供了 256 位哈希密码来访问 CSC 器件(例如 MSPM0Gx51x、MSPM0Lx22x 及 MSPM0L111x)中的调试端口。有关详细信息,请参阅平台信息安全机制
  2. CSC 静态写保护:Bank0 和 Bank1 中的 CSC 固件在生产后需要进行静态写保护,以确保 CSC 区域不可更改和一次性可编程 (OTP)。
  3. NONMAIN 静态写保护:由于 NONMAIN 包括静态写保护和调试访问的所有这些关键配置,因此 NONMAIN 内容本身也需要静态写保护,以防止应用程序进行擦除或写入操作。
  4. 通过密码恢复出厂设置:恢复出厂设置可以在访问 SWD 时将所有 NONMAIN 配置恢复为默认设置,并擦除 MAIN 闪存中的所有内容。如果用户不希望 MSPM0 恢复出厂设置,则可以使用密码启用恢复出厂设置。
  5. CSCEXISTS 及 FLASHBANKSWAPPOLICY:CSCEXISTS 启用 CSC 引导序列,FLASHBANKSWAPPOLICY 启用存储体交换策略。在 SDK CSC 示例中启用了它们。
注:

配置 5 需要在 CSC 的开发阶段启用,只有在所有固件开发均已完成且器件将进入生产阶段时,才能启用配置 1-4。


 NONMAIN 安全配置

图 3-10 NONMAIN 安全配置