NIST SHA-3 のサポート - 2023.2 日本語

Bootgen ユーザー ガイド (UG1283)

Document ID
UG1283
Release Date
2023-10-18
Version
2023.2 日本語
注記: SHA-3 認証では、ブート ヘッダー、PPK、およびブート イメージのハッシュ値の計算に Keccak SHA-3 が常に使用されます。ROM によってロードされないその他すべてのパーティションには、NIST-SHA3 が使用されます。

生成された署名は、次の表に基づいて Keccak-SHA3 または NIST-SHA3 を使用します。

表 1. 認証署名
認証証明 (AC) の種類 署名 SHA アルゴリズムおよび SPK eFUSE 署名の生成に使用される秘密キー
パーティション ヘッダー AC (FSBL/FW によってロードされる) SPK 署名 SPKID eFUSE の場合 Keccak、ユーザー eFUSE の場合は NIST PSK
BH 署名 常に Keccak SSKheader
ヘッダー署名 常に NIST SSKheader
ブートローダー (FSBL) AC (ROM によってロードされる) SPK 署名 常に Keccak、常に SPK 用の SPKID eFUSE PSK
BH 署名 常に Keccak SSKBootloader
FSBL 署名 常に Keccak SSKBootloader
その他のパーティション AC (FSBL FW によってロードされる) SPK 署名 SPKID eFUSE の場合 Keccak、ユーザー eFUSE の場合は NIST PSK
BH 署名 常に Keccak パディング SSKPartition
パーティション署名 常に NIST パディング SSKPartition

例 1: 1 つのキー ファイル セットでパーティションを認証するための BIF ファイル

image:
{
	[fsbl_config] bh_auth_enable
	[auth_params] ppk_select=0; spk_id=0x00000000
	[pskfile] primary_4096.pem
	[sskfile] secondary_4096.pem
	[pmufw_image] pmufw.elf
	[bootloader, authentication=rsa, destination_cpu=a53-0] fsbl.elf
	[authenication=rsa, destination_cpu=r5-0] hello.elf
}

例 2: パーティションごとに個別のセカンダリ キーを使用してパーティションを認証するための BIF ファイル

image:
{
	[auth_params] ppk_select=1
	[pskfile] primary_4096.pem
	[sskfile] secondary_4096.pem
	
	// FSBL (Partition-0)
	[
	  bootloader,
	  destination_cpu = a53-0,
	  authentication = rsa,
	  spk_id = 0x01,
	  sskfile = secondary_p1.pem
	] fsbla53.elf

	// ATF (Partition-1)
	[
	  destination_cpu = a53-0,
	  authentication = rsa,
	  exception_level = el-3,
	  trustzone = secure,
	  spk_id = 0x02,
	  sskfile = secondary_p2.pem
	] bl31.elf
	
	// UBOOT (Partition-2)
	[
	  destination_cpu = a53-0, 
	  authentication = rsa,
	  exception_level = el-2,
	  spk_id = 0x03,
	  sskfile = secondary_p3.pem
	] u-boot.elf
}