eFUSE

暗号化と認証を使用して UltraScale/UltraScale+ FPGA のビットストリームを保護 (XAPP1267)

Document ID
XAPP1267
Release Date
2023-02-10
Revision
1.6 日本語

[ Program eFUSE Registers ] を選択すると、ウィザードが表示されて、プログラムする NKY ファイルおよびさまざまな eFUSE レジスタの選択プロセスが指示されます。 NKY または PEM ファイルを追加した後には、キーの値を再確認して、デバイスにプログラムしようとしている適切な AES キーおよび RSA キーの値であるかを検証可能です ( この図 参照)。

図 4: eFUSE プログラミング暗号化キーのセットアップ

X-Ref Target - Figure 4

X16797-cryptographic-key-setup.jpg

この図 に、ユーザー レジスタのセットアップ画面を示します。この画面では、FUSE_USER レジスタ ビットにプログラムする 32 ビットまたは 128 ビットの固有値を指定できます。これらのレジスタは、eFUSE_USR プリミティブを使用して FPGA ロジックから読み出し可能です

図 5: eFUSE プログラミング USER レジスタのセットアップ

X-Ref Target - Figure 5

X16798-user-register-setup.jpg

この図 に、制御レジスタのセットアップ画面を示します。この画面では、プログラムする FUSE_CNT レジスタ ビットを選択できます。これらのビットで、さまざまな eFUSE 制御レジスタの読み出し動作や書き込み動作を無効にすることでセキュリティ機能を備えることができます。

注記: 制御レジスタ ビットの説明および推奨値は、 表: eFUSE 制御レジスタ (FUSE_CNTL) ビットの説明 を参照してください。

図 6: eFUSE プログラミング制御レジスタのセットアップ

X-Ref Target - Figure 6

X16799-control-register-setup.jpg

この図 に、セキュリティ レジスタのセットアップ画面を示します。この画面では、プログラムする FUSE_SEC レジスタ ビットを選択できます。これらのビットでは、暗号化されたビットストリームのみを許可したり、RSA 認証を有効にすることでセキュリティを強化できます。

注記: セキュリティ レジスタ ビットの説明および推奨値は、 表: eFUSE 制御レジスタ (FUSE_SEC) のビットの説明 を参照してください。

図 7: eFUSE プログラミング セキュリティ レジスタのセットアップ

X-Ref Target - Figure 7

X16800-security-register-setup.jpg

注記: NKY ファイルに KeyObfuscate フィールドが含まれている場合は、write_bitstream より先に BITSTREAM.ENCRYPTION.OBFUSCATEKEY プロパティが有効になっているため、ES-256 キーをプログラムする間に Vivado ソフトウェアによって eFUSE または BBRAM の難読化キー フラグが自動的にセットされます。

最後の画面 ( この図 ) は、選択したオプションが意図するものであるかを検証するためのサマリ画面となります。eFUSE レジスタはワンタイム プログラマブルであるため、一度プログラムするとその後の変更が不可であることに留意してください。

図 8: サマリ画面

X-Ref Target - Figure 8

X16801-summary.jpg