SPI ENC
1. 模块介绍
1.1. 术语定义
术语 | 定义 | 注释说明 |
---|---|---|
AES | Advanced Encryption Standard | 一种对称分组密钥算法 |
ECB | Electronic Code Book | 电子密码本模式 |
CTR | Counter | 计数器模式 |
SPI | Serial Peripheral Interface | 串行外设接口 |
BROM | Boot ROM | 固化在芯片中的启动程序 |
1.2. 模块简介
SPI_ENC 是一个对 SPI 总线上的数据进行在线加密和解密的模块。 使用该模块,可实现对 CPU 透明的 SPI 数据加密存储,即 CPU 对 SPI 存储设备的读写数据都是明文, 但存储在 SPI 设备上的数据是密文,数据的加密和解密操作在 SPI 总线数据传输过程中完成。
SPI_ENC 具备下列功能特性:
- 使用 AES-128-CTR 加密和解密
- 可通过配置连接到不同的 SPI 控制器
- 可通过 eFuse 配置密钥
- 支持明文和密文混合传输
- 不影响 SPI 总线传输带宽
- 不支持 SPI 全双工模式
- 使用所连接的 SPI 控制器的 HCLK
- 内置 64 字节分组密钥 Buffer
- 支持空 Page 检测
用途:
- 可用于实现 SPI NAND / SPI NOR 的全盘加密
- SPI NAND / SPI NOR 上的固件防拷贝
1.3. 原理框图
图 8.6 SPI ENC 原理框图