Zynq UltraScale+ MPSoC 身份验证证书 - 2023.2 简体中文

Vitis 统一软件平台文档 嵌入式软件开发 (UG1400)

Document ID
UG1400
Release Date
2023-12-13
Version
2023.2 简体中文

“Authentication Certificate”(身份验证证书)是包含分区身份验证相关所有信息的结构。此结构具有公钥和 BootROM/FSBL 需验证的签名。在每个“身份验证证书”内都包含一个“Authentication Header”(身份验证头文件),可提供诸如密钥大小、用于签名的算法等信息。“身份验证证书”附加到启用身份验证的实际分区内。如果针对任一分区启用身份验证,那么头文件表同样需进行身份验证。“Header Table Authentication Certificate”(头文件表身份验证证书)将附加到头文件表内容末尾。

AMD Zynq™ UltraScale+™ MPSoC 使用 RSA-4096 身份验证,这表示主密钥和辅助密钥大小均为 4096 位。下表提供了 Zynq UltraScale+ MPSoC 器件的“身份验证”证书的格式。

表 1. Zynq UltraScale+ MPSoC 器件很粉验证证书
身份验证证书
0x00 身份验证头文件 = 0x0101000。请参阅 Zynq UltraScale+ MPSoC 身份验证证书头文件
0x04 SPK ID
0x08 UDF(56 字节)
0x40 PPK 模数 (512)
0x240 模数扩展 (512)
0x440 指数(4 字节)
0x444 填充(60 字节)
0x480 SPK 模数(512 字节)
0x680 模数扩展(512 字节)
0x880 指数(4 字节)
0x884 填充(60 字节)
0x8C0 SPK 签名 = RSA-4096 ( PSK, 填充 || SHA-384 (SPK + 身份验证头文件 + SPK-ID))
0xAC0 启动头文件签名 = RSA-4096 ( SSK, 填充 || SHA-384 (启动头文件))
0xCC0 分区签名 = RSA-4096 ( SSK, 填充 || SHA-384 (分区 || 填充 || 身份验证头文件 || SPK ID || UDF || PPK || SPK || SPK 签名 || BH 签名))
注释: FSBL 签名计算方式如下:
FSBL Signature = RSA-4096 ( SSK, Padding || SHA-384 (PMUFW || FSBL ||
Padding || Authentication Header || SPK ID || UDF || PPK || SPK || SPK Signature|| BH Signature))