[应用相关] 能实时 高效运行片外Flash中的加密代码

[复制链接]
1371|29
 楼主| 梅花香自123 发表于 2021-6-29 23:19 | 显示全部楼层
 楼主| 梅花香自123 发表于 2021-6-29 23:20 | 显示全部楼层
 楼主| 梅花香自123 发表于 2021-6-29 23:20 | 显示全部楼层
 楼主| 梅花香自123 发表于 2021-6-29 23:21 | 显示全部楼层
 楼主| 梅花香自123 发表于 2021-6-29 23:21 | 显示全部楼层
 楼主| 梅花香自123 发表于 2021-6-29 23:22 | 显示全部楼层
总结:当代码及其数据需要放置在片外Flash的时候,可以利用STM32L5的OTFDEC功能保护片外Flash上的代码和数据的机密性
 楼主| 梅花香自123 发表于 2021-6-29 23:23 | 显示全部楼层
代码及数据以加密形式存放于片外Flash,OTFDEC能够对片外Flash访问的内容进行实时解密,从而允许CPU执行存储于片外Flash的加密代码
 楼主| 梅花香自123 发表于 2021-6-29 23:23 | 显示全部楼层
当RDP设置为Level 1的时候,无法通过Debug端口读取解密后的片外Flash内容
 楼主| 梅花香自123 发表于 2021-6-29 23:24 | 显示全部楼层
结合ICACHE的remap功能,片外Flash加密代码依旧可以通过ICACHE进行访问加速,从而在保护机密性的同时提高片外代码的运行效率
 楼主| 梅花香自123 发表于 2021-6-29 23:24 | 显示全部楼层
示例程序给出了通过openssl加密片外Flash binary的例子,几个重点内容包括
• 代码中配置给OTFDEC的加密Key和IV数据与openssl使用的Key和IV数据的对应
• 注意大小端及顺序
• Flash内容的binary数据的预处理和加密后binary数据的后处理
• 被加密数据及加密后数据都需要经过以16字节为单位的byte swap的处理
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部