STM32信息安全 1.2 课程架构介绍:芯片生命周期管理与安全调试

这篇具有很好参考价值的文章主要介绍了STM32信息安全 1.2 课程架构介绍:芯片生命周期管理与安全调试。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

STM32信息安全 1.2 课程架构介绍:STM32H5 芯片生命周期管理与安全调试

下面开始学习课程的第二节,简单介绍下STM32H5芯片的生命周期和安全调试,具体课程大家可以观看STM32官方录制的课程,链接:1.2. 课程架构介绍:STM32H5 芯片生命周期管理与安全调试

1. 调试端口访问控制与安全调试

STM32信息安全 1.2 课程架构介绍:芯片生命周期管理与安全调试,STM32信息安全,架构,stm32,安全,物联网,arm开发,安全架构

  • 调试端口访问控制,防止通过调试端口获取芯片内部资源
  • 锁定全部调试访问或部分调试功能
  • 永久关闭调试端口
  • 保留回复调试连接的可能
  • 管理不同生命周期阶段能够访问到的内部内部资源

2. STM32H5 调试访问控制与设备生命周期管理

STM32信息安全 1.2 课程架构介绍:芯片生命周期管理与安全调试,STM32信息安全,架构,stm32,安全,物联网,arm开发,安全架构

2.1 生命周期管理

  • 新的芯片生命周期管理机制
  • 更安全更灵活的资源访问控制
  • 在不同阶段管理芯片内部资源的访问权限

2.2 基于认证的调试访问

  • 芯片Close之后仍可以保留回退和调试能力
  • 提供受控的回退机制
  • 提供安全调试功能

2.3 硬件特性与资源

  • Product State
    • 设备可以处于Open,Provising,Closed,Locked等不同转台
  • Debug Authentication(DA) STM32 H5新引入的特性
    • 受控芯片回退
      • 基于密码或数字证书校验的回退
    • 安全调试
      • 基于数字证书和挑战应答机制回复调试功能

3. STM32H5 新的产品生命周期管理机制

STM32信息安全 1.2 课程架构介绍:芯片生命周期管理与安全调试,STM32信息安全,架构,stm32,安全,物联网,arm开发,安全架构

Product State 主要状态及其转换

Product State与RDP对比

  • Open相当于RDP Level0,就是完全开放的一个状态,即时出厂默认的一个状态,没有任何的保护
  • TZ-Closed,相当于Cortex M33内核的RDP 0.5,即TrustZone的安全侧的调试全部关闭,只允许非安全调试这样的一个状态。
  • 另外就是Locked状态,它相当于RDP2,也就是说一进入这个状态,调试端口就永久关闭了,是不可以恢复的。
  • 之前存在RDP1,目前不存与RDP1状态完全等同的一个状态。

这几种状态之间是有一定的状态转换关系存在的。通常情况下,默认我们拿到芯片是Open状态,然后它可以进入provisioning状态,在provisioning状态的时候是我们用来去烧写一些关键数据的,比如说我们后面会提到的OBK的安全存储区,我们需要往里面写数据的时候,通常是需要在provision的状态下去做一个写入。

provisioning的意思就是我们整个的关键数据的烧写,包括firmware烧写,OBK数据的少些。

到TZ-Closed状态时,相当于我把安全侧的所有的调试都关闭了,TZ-Closed状态只有开启了Trust-Zone的时候才会有,H556x或者H57x系列芯片,默认出厂时就是没有开启的状态,这个时候时没有TZ-Closed的状态,TZ-Closed状态可以变成Closd状态或者时Lock状态,这两个状态时二选一的,在这种情况下,调试端口都是完全关闭的,此时不允许任何连接的,这是这些状态之间的一个主要流向。

还有其他路径,比如说从Open直接切换到Provisioning的状态,或者是在Provisioning状态下切换到Closed或者时Locked的状态。

4. STM32H5 Debug Authentication安全调试

STM32信息安全 1.2 课程架构介绍:芯片生命周期管理与安全调试,STM32信息安全,架构,stm32,安全,物联网,arm开发,安全架构

Debug Authentication

  • 产品状态回退
  • 重新使能调试

除此之外,在Closed的状态,回到Open的状态,或者临时打开调试端口等,都是在STM32H5上面推出的一个新的功能上面,叫做Debug Authentication安全调试。

Debug Authentication实际上是在芯片和上位机工具之间要完成一个挑战应答的这样的一个 debug authentication的一个协议,通过你的密码,预设的密码或者是我的数字证书以及密钥去发起安全调试的一个请求。如果这个请求认证通过了,它可以让你做一个产品状态的回退。

5. STM32H5 新的产品生命周期管理机制

Product State 认证后的回退

STM32信息安全 1.2 课程架构介绍:芯片生命周期管理与安全调试,STM32信息安全,架构,stm32,安全,物联网,arm开发,安全架构

比如说我可以从close的状态回到TZ-close的状态,或者是回到open的状态,或者是临时的重新去使能这个调试的功能,让你又可以连到我的芯片上去调试我的代码,而这种临时的调试端口的恢复,并不会擦除flash里面的内容,所以你是可以去在线调试你的产品的功能。在Locked状态下,你已经不能再去做任何其他的状态回退了,但是如果说不是处在Locked的状态,我们是可以通过这种Debug Authentication直接回到 open状态的。

如果是在close的状态的话,我们同样经过Debug Authentication,可以选择回到TC close的状态,也就是说我会恢复安全侧的一个安全调试,非安全侧的一个调试,但是安全侧的代码是不是不会动的,而且它不会被擦除。

但是这个时候你只能去调试你非安全测的一个代码,或者是同样经过 Debug Authentication的流程,从close直接回到open的一个状态。这个是产品状态的一个回退。

那这个回退的过程有两种方式,如果不使能TrustZone,那么它是一个基于密码的认证,如果开启了TrustZone这个功能,它将会使用的是数字证书和私钥的方式来完成基于数字证书的一个认证。

6. STM32H5 新的产品生命周期管理机制

Product State 带认证的调试

STM32信息安全 1.2 课程架构介绍:芯片生命周期管理与安全调试,STM32信息安全,架构,stm32,安全,物联网,arm开发,安全架构

​ 另外一种是待认证的调试,我们刚才说的是从某一种状态,除了lock以外的某一种状态可以回到open,还有一种是我不做这个产品状态的回退,但是我希望临时开启调试的功能,那么这个时候比如说你在TC-Closed或者是close的状态的话,我们是可以通过Debug Authentication,我们临时恢复调试的一个连接,允许你把Debug端口又恢复,然后你可以连上去去做一些调试。

​ 但是之后只要断电再上电,那么我们刚才使能的调试端口又恢复到了之前已经关闭完全关闭或者半关闭的一个状态。这个是通过Debug Authentication开始,去实现一个带认证的安全调试这样的一个功能,同样的需要做安全调试的时候,不是做产品状态回退,我希望临时打开安全调试。我们默认提供的Debug Authentication的功能的话,是需要在开启Trust-Zone的情况下才支持,这个时候一定是会使用数字证书和挑战应答的方式来完成认证,那么你允许开启的Debug的范围,也是你可以去指定的,比如说我可以说只允许非安全侧的调试,或者是我们允许安全和非安全侧的调试一起调,包括 HTTP level,我们后面会提到我允许调试 HTTP level几的代码,而是所有的flash里面上面的代码都允许调试,还是说比如说我只允许调试 HTTP level3的代码,这个是在我去做Debug时候可以通过配置去进行选择的。

7. STM32H5 Debug Authentication安全调试

STM32信息安全 1.2 课程架构介绍:芯片生命周期管理与安全调试,STM32信息安全,架构,stm32,安全,物联网,arm开发,安全架构

关于产品状态以及debug authentication安全调试,这一部分我们会有更详细的内容在第二个部分课程当中去做具体的介绍。

STM32信息安全 1.2 课程架构介绍:芯片生命周期管理与安全调试,STM32信息安全,架构,stm32,安全,物联网,arm开发,安全架构

关于Debug authentication,在Wiki页面上的相关的资源。这里列出来了几个链接供大家参考,大家可以点击这个链接去相关的Wiki网页上面去观看详细的内容,既包括特性的介绍,也有 how to start,他会告诉step by step如何去使用这样的一个功能。文章来源地址https://www.toymoban.com/news/detail-843590.html

到了这里,关于STM32信息安全 1.2 课程架构介绍:芯片生命周期管理与安全调试的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

原文地址:https://blog.csdn.net/qq_35057766/article/details/136726939

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【明解STM32】一文搞明白STM32芯片存储结构

    目录 一、前言 二、内核存储结构 三、芯片存储映射 四、总结         本篇介绍STM32芯片的存储结构,ARM公司负责提供设计内核,而其他外设则为芯片商设计并使用,ARM收取其专利费用而不参与其他经济活动,半导体芯片厂商拿到内核授权后,根据产品需求,添加各类组

    2024年02月16日
    浏览(10)
  • 【STM32】STM32学习笔记-课程简介(01)

    程序纯手打,手把手教学 STM32最小系统板+面包板硬件平台 该平台比较适合高校在校大学生学习STM32。 STM32最小系统+面包板 Windows10操作系统 万用表、示波器、镊子、剪刀等 Keil5 MDK 4.1 面包板和跳线/飞线 4.2 杜邦线和STM32最小系统板 4.3 STLINK和OLED显示屏 4.4 LED和按键 4.5 电位器和

    2024年03月18日
    浏览(11)
  • STM32芯片加密的方法

    stm32加密方法: flash加密 96位ID号加密 96位id号 id校验 反汇编 Id存到数组,程序执行之前与数组之中的ID比较,如果相同继续执行,不同则终止执行 加密步骤: ①设计一套加密算法,利用MCU内部的unique ID作为运算参数,计算结果通过第三方工具烧进MCU内部的FLASH的特定地址处。

    2024年02月16日
    浏览(10)
  • STM32芯片包下载教程

    2024年02月16日
    浏览(15)
  • stm32、gd32等芯片固件升级思路

    众所都周知,固件固件就是固定不动的软件,所以不用升级,此贴完结。 。 。 。 。 。 哎,话虽如此固件一般情况下不需要更新,毕竟主要功能是为控制一些底层的硬件,但是你永远不知道明天和需求哪个先来。所以在一些必要时刻需要给你的单片机留一个后门用于应对各

    2024年02月12日
    浏览(9)
  • Keil导入STM32芯片包

    2024年02月14日
    浏览(10)
  • STM32课程学习心得

                  在过去的几个月里,我投入了大量的时间和精力来深入学习STM32微控制器的相关知识。这段学习经历让我对这个领域有了更深入的理解,也让我有了更多的自信去面对实际工程的挑战。以下是我对这段学习经历的总结和心得体会。 在学习STM32的过程中,我主要

    2024年02月04日
    浏览(13)
  • 【STM32 】芯片命名、内核、产品系列

    STM32是STMicroelectronics( 意法半导体 )公司的一系列32位微控制器,基于ARM Cortex-M内核,具有高性能、低功耗、丰富的外设和易于开发的特点,适用于工业、医疗、物联网等多种领域的应用。 意法半导体( ST )集团于1987年成立,是由意大利的SGS微电子公司和法国Thomson半导体公

    2024年02月14日
    浏览(14)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包