|
各位大佬,想请教一下关于SFI的问题。 我知道SFI是对用户程序进行加密,然后通过HSM将加密的程序下载到芯片,然后芯片对加密程序进行解密,此时加密程序将变成明文下载到Flash里面(查找资料说是明文),不知道整个过程我理解的对不对。在这个过程中我有三个疑问: 1.最终下载到STM32H757里的程序是明文还是密文(假如OB不设置读保护)?通过SWD是否可读? 2.假如在OB不设置读保护的情况下,可以通过SWD读FLASH区域,那么SFI加密的意义何在?这样用户程序还是会存在泄露的风险。 3.在STM32H757电路内部,SFI的数字证书和公私钥是存放在哪里,有没有具体的存放地址?或者说数字证书和公私钥是否可读? |
H745 在调试SD卡时出现HAL_SD_GetCardStatus(hsd, &CardStatus) 获取失败,
STM32H7高温情况下出现必须下电才能正常工作
【我心中的STM32H7A3】+小游戏机
如何解决STM32H7在3V供电下内部LDO启动裕量不足的问题?
STM32 用主从定时器方式实现DSP QEP模块的QCTMR功能,异常
STM32H743IIT6驱动外扩SDRAM芯片热启动能成功,冷启动失败
STM32H743IIT6驱动RGB液晶屏显示红,绿,蓝三色显示都偏暗
为什么STM32H7的DMA第一次启动延时较长?
STM32H7电源问题
有关STM32H743ZGT6 驱动RTL8201F-VB芯片驱动的问题,有奖寻求帮助
微信公众号
手机版
SFI的核心价值在于 防止固件在传输和烧录过程中被窃取或篡改
密钥存储在芯片安全区,私钥不可读,公钥需物理防护
[md]感谢您的解答。
我可以理解成完成固件烧录之后可通过SWD将FLASH区域的信息读出来吗?这个时候如果不想程序被窃取,只能通过配置写保护功能?
设置RDP Level 1/2读保护等级
禁用SWJ-DP引脚和调试时钟
配置安全区域和安全库
当然,设置RDP 是最简单也是最直接的方式。
[md]是的
感谢您的回复。我又遇到一个问题,想请教一下。
在生成.sfi文件,配置好HSM后需要将程序下载进芯片。CubeProgrammer这个软件好像不支持.sfi文件的下载,所以我就采用命令行工具Programmer_CLI来下载程序,但是我在打开命令行的时候闪退了,请问该如何解决闪退的问题。另外我想知道除了采用命令行下载方式外,还有没有其他的下载方式?希望大佬能帮忙解答一下疑惑。