インテル® Arria® 10 コア・ファブリックおよび汎用 I/O ハンドブック

ID 683461
日付 6/21/2017
Public
ドキュメント目次

7.5. デザイン・セキュリティー

Arria 10 のデザイン・セキュリティーは、次の機能をサポートしています。

  • 256 ビット・キーの業界標準のデザイン・セキュリティー・アルゴリズム(FIPS-197 確定)をサポートする拡張の内蔵AES( 高度暗号化規格 )復号化ブロック
  • 揮発性および不揮発性キーのプログラミングサポート
  • 改ざん保護モード経由の揮発性と不揮発性の両方のキーのセキュア動作モード
  • JTAG セキュアモードでのパワーアップ時の限定的なアクセス JTAG 命令
  • サイドチャネル攻撃に対する POF 認証および保護のサポート
  • ヒューズビットまたはオプションビット経由の JTAG アクセス・コントロールおよびセキュリティー・キー・コントロールの提供
  • デバイスが初期化されるまでパワーアップからのすべての JTAG 命令のディスエーブル
  • ボードレベルのテストのサポート
  • 不揮発性キーのオフボードキー・プログラミングのサポート
  • コンフィグレーション・ビットストリームへの他のセキュリティー設定を使用した暗号化および暗号化のためのスタンドアローン Qcrypt ツール
  • JTAG を除いたすべてのコンフィグレーション手法で使用可能
  • リモート・システム・アップグレード機能のサポート
表 101.   Arria 10 FPGAのデザイン・セキュリティーのアプローチ
デザイン・セキュリティーのエレメント 説明
Non-Volatile key 不揮発性のキーは、デバイス内のヒューズにしっかりと保存されています。このキーの決定は、独自のセキュリティー機能により困難を要します。
Volatile Key 揮発性のキーは、デバイス内のバッテリー・バックアップ RAM に安全に格納されます。このキーの決定は、独自のセキュリティー機能により困難を要します。
Key Generation ユーザー提供の 256 ビット・キーは、デバイスにプログラムされる前に、一方向関数により処理されます。
Key Choice デバイス内には、揮発性および不揮発性の両キーの存在が可能です。ユーザーは、Convert Programming File ツールまたは Qcrypt ツールを介し、暗号化されたコンフィグレーション・ファイル内のオプションビットを設定して、使用するキーの選択ができます。
Tamper Protection Mode 改ざん防止モードでは、暗号化されていないコンフィグレーション・ファイルは FPGA にロードされません。このモードを有効にすると、FPGA はキーで暗号化されたコンフィグレーションでのみロードできます。暗号化されていないフィグレーションおよび正しくないキーで暗号化されたコンフィグレーションは、コンフィグレーション・エラーが起こります。このモードを有効にするには、デバイス内でヒューズを設定します。
Configuration Readback これらのデバイスは、コンフィグレーション・リードバック機能をサポートしていません。セキュリティーの観点から、暗号化されていないコンフィグレーション・データのリードバックは不可能です。
Security Key Control 異なる JTAG 命令と Qcrypt ツールのセキュリティー・オプションの使用によって、揮発性または非揮発性キーの使用を柔軟に永続的または一時的に無効にすることができます。また、揮発性キーをロックし、上書きまたは再プログラムされることを防げます。
JTAG Access Control

Qcrypt ツールを使用してコンフィグレーション・ファイルの OTP ヒューズまたはオプション・ビットを設定することで、JTAG アクセス・コントロールのさまざまなレベルを有効にします。

  1. フル・コンフィグレーションまたはコンフィグレーションの一部を HPS 経由のみで強制的に行います。
  2. 外部 JTAG ピンまたは HPS JTAG をバイパスします。この機能は、外部 JTAG または HPS JTAG アクセスを無効にしますが、内部コア・アクセスを介してロックを解除します。
  3. 外部 JTAG ピンからすべての AES キーに関連する JTAG 命令を無効にします。
  4. JTAG セキュアモードと同様に、限られた必須の JTAG 命令セットに外部 JTAG からアクセスできるようにします。
注:
  • FPP コンフィグレーション手法でArria 10デバイスとともにデザイン・セキュリティー機能を使用する場合は、異なる DCLK-to-DATA[] 比が必要です。