STMCU小助手
发布时间:2022-8-8 23:57
|
1. 引言 通常芯片在其整个生命周期中跟随产品的开发生产可能经历如下几个不同阶段 :
1 u& k# w9 t/ C. R- p6 a- g 在不同的生命周期阶段需要对芯片资源有不同的访问权限,例如芯片出厂时要开放所有资源供 OEM 进行开发,工厂生产烧录代码和数据后需要关闭某些资源的访问,确保代码与数据的安全性,设备回厂返修时需要再次允许某些资源的访问等等。 STM32MCU 的硬件中能够用来进行芯片生命周期管理的最常见的特性就是 RDP(Read Out Protection)读保护功能。通常 RDP 具有三个级别: • Level0:完全开放,这是芯片出厂的缺省状态 • Level1:调试端口可以连接,但无法通过调试端口访问内部 Flash,部分 SRAM 以及其它一些资源,OptionByte 可以修改。Level1 可以降级回 Level0,但会伴随全片擦除。 • Level2:调试端口永久关闭,进入这种状态后调试端口完全无法访问,且这种状态无法逆转。 在 RDP Level1 调试端口依旧可以连接,虽然不能直接读取内部 Flash 的代码和数据,但是可以看到大部分 SRAM 的内容,并且 RDP Level1 允许随意回退到 Level0,并伴随全片擦除。因而从安全角度讲 Level1 这个级别的安全性不够高,因而通常对于调试端口保护我们会推荐使用 RDP Level2,但是 OEM 可能往往不会选择使用这个级别,原因有多方面,其中一部分的顾虑可能来自两方面,一个是 Level2 级别下 OptionByte 无法进行修改,另一个是设置到 Level2级别会影响芯片失效分析。 - _; v. R' ~7 u2 m1 V STM32L5 在 RDP 功能上带来一些改变,首先针对 TrustZone 架构,增加了 Level0.5,9 |+ V! m V: Y7 w* Q. ^4 z% X& V; a • Level0.5:调试端口可以连接,但是安全测的所有调试功能都被禁止,非安全测的调试功能依旧可以使用,因此在 RDP Level0.5 可以访问被定义为 NonSecure 的部分资源,包括片上 Flash,SRAM,部分 CPU 寄存器以及系统外设等 0 w! S+ |6 u. J6 x' w( ? 另外,STM32L5 的 RDP Level2 不影响 FA,但 OEM 依旧无法在这种状态下进行RDP 降级或者 OptionByte 修改,依旧有一些局限性。 0 t" i& h# u D( W! g" @ 2. STM32U5 芯片生命周期管理新特性% r. I* V, @8 g. Y4 U, b STM32U5 在芯片生命周期管理方面在 STM32L5 的基础做了进一步的改进,引入了OEM Key 机制,使得 RDP 的级别状态转换能够通过 OEM 设置的 password 进行保护,一方面能够防止 RDP 任意降级,避免设备被远程攻击注入恶意代码后通过 RDP 降级变砖的风险,另一方面也使得 RDP2 降级成为可能,给产品后期维护带来更多的灵活性。 - t5 c* H8 w3 G5 B8 a+ i 完整版请查看:附件4 o, b7 s, ~$ a: I5 V# [ 0 I1 |0 o) X5 s1 p% i. V 1 c; V( F! J/ m6 @8 t' a |
LAT1086 STM32U5 带_OEM Key保护的RDP降级_v1.0.pdf
下载942.86 KB, 下载次数: 0
【STM32H735G-DK 测评】STM32H735G-DK External Loder 编译和测试
Keil-MDK 在线调试设置断点的高级用法
请教下STM32N6570 怎么把分辨率改成320x240并可以全屏显示
【福利三:逢7发帖赢大礼】想要充分利用STM32H743VI片内的RAM空间(但并不顺利)
基于stm32平台上的IC-MU磁绝对值编码器SPI通讯和码盘数据处理
使用STM32 MCU和MPU连接PDM数字麦克风
分享STM32资料-采用 STM32U031R8 MCU 的 STM32 Nucleo-64 开发板,官方资料,数据手册等资料
HRTIM 指南
使用 STM32 的 DWT 单元监控内存
DAC,COMP,HRTIM Fault 功能的使用
微信公众号
手机版