你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

关键数据和代码在L0上的保护-基于防火墙和PCROP

[复制链接]
STMCU小助手 发布时间:2022-8-10 09:19
方案概览
• STM32L0和STM32L4系列的硬件除了通常的RDP、WRP,还带有Firewall和PCROP硬件安全特性
• 使用STM32的security硬件模块(Firewall和PCROP)实现对关键数据(密钥)的保护:应用代码可以使用加解密功能,但是无法拿到密钥
• 本方案提供了在STM32L073上的参考实现,以及相应测试代码
• STM32L073-Nucleo
• 方案包的内容
• 三个IDE下的示例工程:IAR,MDK,STM32CubeIDE
• 方案介绍文档
• 脚本工具(生成秘钥相关文件)


PCROP
2• 防什么?:来自CPU、DMA以及通过调试端口的数据访问

• 保护什么?
• 用户片上Flash的一段区域(由选项字节设置区域范围,保护上电即生效)

• 保护机制
• PCROP区域仅能被指令访问,不允许数据访问(包括DMA 、调试访问)

• 用途
• 常用于保护关键代码,只可被执行,不能被读出(dump)
• 防止内部攻击:注入恶意程序读取关键代码
• 防止外部攻击:来自调试端口的读取
• 也可用于保护代码化的关键常数数据
• 需要先将关键常数转换成代码
• CPU执行这段代码,会把关键数据恢复到SRAM或者寄存器中,这段SRAM再
使用STM32的其他存储和执行保护模块,比如Firewall保护,防止恢复出来的
关键数据被用户代码直接读取;或者寄存器本身是WO属性


IG05W%%$~)8Q~()]SQO@1}Q.png


Firewall,防火墙
防什么?:CPU、DMA

• 保护什么?
• 用户片上Flash、片上EEPROM 和 片上SRAM上的指定区域(防火墙里的区域)

• 保护机制
• 防火墙里的代码数据不能被墙外的代码直接访问
必须走固定入口(Call Gate)进入墙里再访问
• 出去(跳转到防火墙以外的代码)之前必须置位寄存器
否则产生系统复位
• 由寄存器设置范围并使能,即上电缺省没有保护
• 一旦防火墙使能,保护生效直到下一次系统复位

完整版请查看:附件





关键数据和代码在L0上的保护基于防火墙和PCROP.pdf

下载

918.66 KB, 下载次数: 1

收藏 评论0 发布时间:2022-8-10 09:19

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版