DMA’n’Play:嵌入式设备安全认证解决方案
1. 硬件要求与目标平台
DMA’n’Play需要具备以下三个硬件特性:
- 带有SPI或UART等外设的DMA控制器,用于将内存内容直接输出到外部认证设备。
- 用于锁定DMA配置的MPU(内存保护单元)。
- 至少具备两种模式的特权分离机制,以防止攻击者重新配置DMA控制器。
满足这些要求的硬件平台众多,常见的有:
| 架构名称 | 特点 | 是否适合DMA’n’Play |
| ---- | ---- | ---- |
| ARMv7 - M | 行业广泛使用,有大量旧设备采用 | 是 |
| ARMv8 - M | 是ARMv7 - M的继任者,可选支持TrustZone | 是 |
| RISC - V | 近年来在嵌入式领域流行 | 是 |
2. 无源代码设备的处理
对于只有编译后的二进制文件,而没有源代码的应用程序,DMA’n’Play也能发挥作用。例如,许多旧设备的源代码往往缺失、不完整或不可用。在这种情况下,可以借助二进制重写技术来集成DMA’n’Play,具体步骤如下:
1. 将DMA配置集成到二进制文件中,通过DMA输出整个内存。
2. 集成基于MPU的锁。
3. 为验证器提供内存内容和认证过程中感兴趣的数据信息。
二进制重写可以动态(在执行期间)或静态(对当前未执行的二进制文件)进行。由于运行时执行的复杂性增加,动态重写比静态重写更具挑战性。对于大多数物联网设备,静态重写通常足以集成DMA’n’Play。
超级会员免费看
订阅专栏 解锁全文
42

被折叠的 条评论
为什么被折叠?



