auth_params - 2024.1 日本語

Vitis 統合ソフトウェア プラットフォームの資料: エンベデッド ソフトウェア開発 (UG1400)

Document ID
UG1400
Release Date
2024-05-30
Version
2024.1 日本語

構文

[auth_params] ppk_select=<0|1>; spk_id <32-bit spk id>;/
 spk_select=<spk-efuse/user-efuse>; auth_header

説明

認証パラメーターは、ブート イメージ内のパーティションの認証に使用する PPK、SPK などの追加設定を指定します。この BIF パラメーターの引数は次のとおりです。

  • ppk_select: 使用する PPK を選択します。オプションは 0 (デフォルト) または 1 です。
  • spk_id: 使用または取り消し可能な SPK を指定します。詳細は、ユーザー eFUSE サポートおよび RSA キー取り消しの改善 を参照してください。デフォルト値は 0x00 です。
    注記: ヘッダーと FSBL に異なる SPK が存在する場合は、同じ SPK ID を共有します。

    SPK ID を指定する auth_params フィールドのみを使用した場合、SPK ID はブート パーティションとアプリケーション パーティションに伝搬されます。SPK ID がブート パーティションとアプリケーション パーティションの両方で使用される場合、ブート/イメージ ヘッダー パーティションの SPK ID が上書きされ、アプリケーション SPK が使用されます。これは、ヘッダーと FSBL が同じ SPK ID を持つことを確認する過程で、Bootgen が送信された SPK ID の最新バージョンを選択するということです。

  • spk_select: SPK とユーザー eFUSE を識別。オプションは spk-efuse (デフォルト) と user_efuse です。
  • header_auth: パーティションが認証されていない場合のヘッダーを認証。
注記:
  1. ppk_select は各イメージに固有です。
  2. 各パーティションは固有の spk_select および spk_id を持つことができます。
  3. spk-efuse id はイメージ全体で一意ですが、spk-efuse id はパーティションによって異なる場合があります。
  4. パーティションの範囲外の spk_select/spk_id は、ヘッダーと、これらの指定をパーティション属性として持たないその他のパーティションに使用されます。

サンプル BIF 1 - test.bif

all:
{
	[auth_params]ppk_select=0;spk_id=0x4
	[pskfile] primary.pem
	[sskfile]secondary.pem 
	[bootloader, authentication=rsa]fsbl.elf
}

サンプル BIF 2 - test.bif

all:                                                          
{                                                             
	[auth_params] ppk_select=0;spk_select=spk-efuse;spk_id=0x22
	[pskfile]     primary.pem                                   
	[sskfile]     secondary.pem                                 
	[bootloader, authentication = rsa] fsbl.elf                                                  
}

サンプル BIF 3 - test.bif

all:                                                      
{                                                         
  	[auth_params] ppk_select=1; spk_select= user-efuse; spk_id=0x22; header_auth   
  	[pskfile]     primary.pem                               
  	[sskfile]     secondary.pem                             
  	[destination_cpu=a53-0] test.elf                        
}

サンプル BIF 4 - test.bif

all:                                                           
{                                                              
  	[auth_params]  ppk_select=1;spk_select=user-efuse;spk_id=0x22
  	[pskfile]      primary.pem                                   
  	[sskfile]      secondary0.pem                                
                                                               
  /* FSBL - Partition-0) */                                     
   [                                                            
	bootloader,                                                
	destination_cpu   = a53-0,                                 
	authentication    = rsa,                                   
	spk_id            = 0x3,                            
	spk_select        = spk-efuse,                             
	sskfile           = secondary1.pem                         
   ] fsbla53.elf                                                 
                                                               
  /* Partition-1 */                                             
   [                                                            
     destination_cpu    = a53-1,                                
     authentication     = rsa,                                  
     spk_id             = 0x24,                                 
     spk_select         = user-efuse,                           
     sskfile            = secondary2.pem                        
   ] hello.elf                                                   
}