ユーザー eFUSE サポートおよび RSA キー取り消しの改善 - 2023.2 日本語

Bootgen ユーザー ガイド (UG1283)

Document ID
UG1283
Release Date
2023-10-18
Version
2023.2 日本語

RSA キー取り消しサポートの改善

RSA キーは、すべてのパーティションのセカンダリ キーを取り消すことなく、1 つのパーティションのセカンダリ キーを取り消すことができます。

注記: プライマリ キーは、すべてのパーティションで同じものである必要があります。

これには、USER_FUSE0USER_FUSE7 の eFUSE と、BIF パラメーターの spk_select を使用します。

注記: すべてのキーを使用する必要がない場合は、最大で 256 個のキーを取り消すことができます。

次の BIF ファイルの例は、改善されたユーザー eFUSE 取り消しを示しています。イメージ ヘッダーおよび FSBL は、下記の例を BIF へ追加することで、認証に異なる SSK を使用します (それぞれ ssk1.pem および ssk2.pem)。

the_ROM_image:
{
	[auth_params]ppk_select = 0
	[pskfile]psk.pem
	[sskfile]ssk1.pem
	[
	  bootloader,
	  authentication = rsa,
	  spk_select = spk-efuse,
	  spk_id = 0x8,
	  sskfile = ssk2.pem
	] zynqmp_fsbl.elf
	[
	  destination_cpu = a53-0,
	  authentication = rsa,
	  spk_select = user-efuse,
	  spk_id = 0x100,
	  sskfile = ssk3.pem
	] application.elf
	[
	  destination_cpu = a53-0,
	  authentication = rsa,
	  spk_select = user-efuse,
	  spk_id = 0x8,
	  sskfile = ssk4.pem
	] application2.elf
} 
  • spk_select = spk-efuse: パーティションに spk_id eFUSE が使用されていることを示します。
  • spk_select = user-efuse: パーティションにユーザー eFUSE が使用されていることを示します。

CSU ROM によってロードされるパーティションは、常に spk_efuse を使用します。

注記: spk_id eFUSE は、どのキーが有効であるかを指定します。したがって、ROM は spk_id eFUSE のフィールド全体を SPK ID と照合してビットが一致することを確認します。
ユーザー eFUSE は、どのキー ID が有効でない (取り消された) かを指定します。したがって、ファームウェア (ROM 以外) は、SPK ID を表すそのユーザー eFUSE がプログラムされているかどうかをチェックします。
注記: 上記の例では、FSBL と application2 が同じ spk_id を使用していますが、この 2 つのキーは、1 つは SPK_ID eFUSE に対して、もう 1 つは User eFUSE に対してチェックされるため、別々に無効にできます。