Infineon TC3XX的 通过HSM 实现Secure Debug

  1. AURIX™ 调试接口保护- 内部开关概览
    Infineon TC3XX的 通过HSM 实现Secure Debug_第1张图片
    Gate1: 通过OCDS模块控制TriCoreTM 调试访问接口;
    Gate2: 通过DMU模块控制TriCoreTM 调试访问接口;
    Gate3和Gate4: HSM直接控制。控制Host CPU的访问并且也可以支持禁用HSM自身的调试功能。

  2. AURIX™ 挑战应答机制-调试访问保护 – 用例分析
    Infineon TC3XX的 通过HSM 实现Secure Debug_第2张图片

  3. AURIX™ 挑战应答机制- 调试访问解锁 – 用例分析
    Infineon TC3XX的 通过HSM 实现Secure Debug_第3张图片

  4. AURIX™调试接口保护- 用例分析概述
    由TriCore™控制的调试接口
    Infineon TC3XX的 通过HSM 实现Secure Debug_第4张图片

使用Debug Password 保护
› 通过UCB_DBG (PROCONDBG)寄存器锁定调试接口
– 设置 OCDSDIS = 1B
– 设置 DBGIFLCK = 1B
– 设置 debug password保护
通过正确的debug password来解锁
Flash 读保护
› 通过UCB_PFlash (PROCONPF) 寄存器锁定Flash 读取
设置 RPRO = 1B
通过OSTATE.IF_LCK解锁, OCDS寄存器需要通过SSW或Application SW更改。

HSM控制的HSM自身调试访问控制
Infineon TC3XX的 通过HSM 实现Secure Debug_第5张图片
› 通过UCB_HSM (PROCONHSM)寄存器锁定
– 设置 HSMDBGDIS = 1B
– 清除 DBGIFLCK = 0B
通过 HSM software解锁
– 设置 DBGCTRL.HSM = 11B (HSMDEN), 使能HSM Debug

  1. 挑战应答机制概览
    › 外部设备可以通过通讯通道由挑战应答机制交换认证数据来请求打开调试接口
    – TriCore™可以通过CAN通讯接收请求然后将数据转发到HSM校验
    – 如果HSM 接受请求,将使能HSM调试,并且可以进一步打开芯片调试接口。
    Infineon TC3XX的 通过HSM 实现Secure Debug_第6张图片
    › 基于密码学的临时随机数据可以保证每次挑战应答数据流都是唯一的
    – 使用真随机数 (TC2xx, TC3xx)
    应答
    › 信息安全算法可以保证发送方和接收方都知道密钥
    – 使用CMAC-AES128 (TC2xx, TC3xx)
    – 使用 HMAC-SHA256 (TC3xx)

基于SHE标准的挑战应答协议
› 挑战应答机制包含以下几个步骤. 在执行CMD_DEBUG之前,必须初始化随机数生成器以允许挑战-响应协议:

  1. SHE 生成一个随机数 CHALLENGE
  2. SHE通过MASTER_ECU_KEY and DEBUG_KEY_C衍生一个密钥KDEBUG
  3. SHE 发生 CHALLENGE 给申请调试访问的实体A
  4. A 也衍生一个 KDEBUG
  5. A 通过UID and CHALLENGE 计算MAC, 称作AUTHORIZATION = CMACK DEBUG
    (CHALLENGE | UID)
  6. A 发生 AUTHORIZATION 到SHE
  7. SHE 校验 AUTHORIZATION. 如果验证成功,内部存储器必须删除,然再调试访问打开。

你可能感兴趣的:(系统安全,单片机,c语言,嵌入式硬件,系统安全,安全)