Intel-Logo

Intel Agilex 7 Gerätesicherheit

Intel-Agilex-7-Device-Security-Image

Produktinformationen

Technische Daten

  • Modellnummer: UG-20335
  • Veröffentlichungsdatum: 2023.05.23

Anweisungen zur Produktverwendung

1. Verpflichtung zur Produktsicherheit

Intel engagiert sich für die Produktsicherheit und empfiehlt Benutzern, sich mit den bereitgestellten Produktsicherheitsressourcen vertraut zu machen. Diese Ressourcen sollten während der gesamten Lebensdauer des Intel-Produkts genutzt werden.

2. Geplante Sicherheitsfunktionen

Die folgenden Sicherheitsfunktionen sind für eine zukünftige Version der Intel Quartus Prime Pro Edition-Software geplant:

  • Partielle Rekonfigurations-Bitstream-Sicherheitsüberprüfung: Bietet zusätzliche Sicherheit, dass Partial Reconfiguration (PR)-Bitstreams nicht auf andere PR-Persona-Bitstreams zugreifen oder diese stören können.
  • Selbsttötung des Geräts zur physischen Anti-Tamper: Führt eine Gerätelöschung oder eine Gerätenullierungsreaktion durch und programmiert eFuses, um zu verhindern, dass das Gerät erneut konfiguriert wird.

3. Verfügbare Sicherheitsdokumentation

In der folgenden Tabelle ist die verfügbare Dokumentation für Gerätesicherheitsfunktionen auf Intel FPGA- und strukturierten ASIC-Geräten aufgeführt:

Dokumentname Zweck
Sicherheitsmethodik für Benutzer von Intel FPGAs und strukturierten ASICs
Führung
Dokument der obersten Ebene, das detaillierte Beschreibungen von enthält
Sicherheitsfunktionen und -technologien in programmierbaren Intel-Lösungen
Produkte. Hilft Benutzern bei der Auswahl der erforderlichen Sicherheitsfunktionen
ihre Sicherheitsziele erreichen.
Intel Stratix 10 Device Security-Benutzerhandbuch Anweisungen zur Implementierung für Benutzer von Intel Stratix 10-Geräten
die Sicherheitsmerkmale, die mithilfe der Sicherheitsmethodik identifiziert wurden
Benutzerhandbuch.
Intel Agilex 7 Device Security-Benutzerhandbuch Anweisungen für Benutzer von Intel Agilex 7-Geräten zur Implementierung
die Sicherheitsmerkmale, die mithilfe der Sicherheitsmethodik identifiziert wurden
Benutzerhandbuch.
Intel eASIC N5X Device Security-Benutzerhandbuch Anweisungen zur Implementierung für Benutzer von Intel eASIC N5X-Geräten
die Sicherheitsmerkmale, die mithilfe der Sicherheitsmethodik identifiziert wurden
Benutzerhandbuch.
Intel Agilex 7 und Intel eASIC N5X HPS Kryptografische Dienste
Benutzerhandbuch
Informationen für HPS-Softwareentwickler zur Implementierung
und Verwendung von HPS-Softwarebibliotheken für den Zugriff auf kryptografische Dienste
bereitgestellt vom SDM.
Kurzanleitung zum AN-968 Black Key Provisioning Service Komplette Schritte zum Einrichten der Black-Key-Bereitstellung
Service.

Häufig gestellte Fragen

F: Was ist der Zweck des Sicherheitsmethodologie-Benutzerhandbuchs?

A: Das Benutzerhandbuch zur Sicherheitsmethodik enthält detaillierte Beschreibungen der Sicherheitsfunktionen und -technologien in Intel Programmable Solutions-Produkten. Es hilft Benutzern bei der Auswahl der erforderlichen Sicherheitsfunktionen, um ihre Sicherheitsziele zu erreichen.

F: Wo finde ich das Intel Agilex 7 Device Security-Benutzerhandbuch?

A: Das Intel Agilex 7 Device Security-Benutzerhandbuch finden Sie im Intel Resource and Design Center webWebsite.

F: Was ist der Black Key Provisioning-Dienst?

A: Der Black Key Provisioning-Dienst ist ein Dienst, der eine vollständige Reihe von Schritten zum Einrichten der Schlüsselbereitstellung für sichere Vorgänge bereitstellt.

Intel Agilex® 7 Device Security-Benutzerhandbuch
Aktualisiert für Intel® Quartus® Prime Design Suite: 23.1

Online-Version Feedback senden

UG-20335

683823 2023.05.23

Intel Agilex® 7 Device Security-Benutzerhandbuch 2

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 3

683823 | 2023.05.23 Feedback senden
1. Intel Agilex® 7

Gerätesicherheit vorbeiview

Intel® entwickelt die Intel Agilex® 7-Geräte mit dedizierter, hochgradig konfigurierbarer Sicherheitshardware und Firmware.
Dieses Dokument enthält Anweisungen, die Ihnen bei der Verwendung der Intel Quartus® Prime Pro Edition-Software zur Implementierung von Sicherheitsfunktionen auf Ihren Intel Agilex 7-Geräten helfen.
Darüber hinaus ist das Benutzerhandbuch zur Sicherheitsmethodik für Intel FPGAs und strukturierte ASICs im Intel Resource & Design Center verfügbar. Dieses Dokument enthält detaillierte Beschreibungen der Sicherheitsfunktionen und -technologien, die über Intel Programmable Solutions-Produkte verfügbar sind, um Ihnen bei der Auswahl der Sicherheitsfunktionen zu helfen, die zum Erreichen Ihrer Sicherheitsziele erforderlich sind. Wenden Sie sich unter der Referenznummer 14014613136 an den Intel Support, um auf das Benutzerhandbuch zur Sicherheitsmethodik für Intel FPGAs und strukturierte ASICs zuzugreifen.
Das Dokument ist wie folgt aufgebaut: · Authentifizierung und Autorisierung: Enthält Anweisungen zum Erstellen
Authentifizierungsschlüssel und Signaturketten, Anwenden von Berechtigungen und Widerrufen, Signieren von Objekten und Programmieren von Authentifizierungsfunktionen auf Intel Agilex 7-Geräten. · AES-Bitstream-Verschlüsselung: Bietet Anweisungen zum Erstellen eines AES-Root-Schlüssels, zum Verschlüsseln von Konfigurations-Bitstreams und zum Bereitstellen des AES-Root-Schlüssels für Intel Agilex 7-Geräte. · Gerätebereitstellung: Enthält Anweisungen zur Verwendung der Intel Quartus Prime Programmer- und Secure Device Manager (SDM)-Bereitstellungsfirmware zum Programmieren von Sicherheitsfunktionen auf Intel Agilex 7-Geräten. · Erweiterte Funktionen: Bietet Anweisungen zum Aktivieren erweiterter Sicherheitsfunktionen, einschließlich sicherer Debug-Autorisierung, Hard Processor System (HPS)-Debugging und Remote-Systemaktualisierung.
1.1. Verpflichtung zur Produktsicherheit
Intels langjähriges Engagement für Sicherheit war noch nie so stark. Intel empfiehlt dringend, dass Sie sich mit unseren Produktsicherheitsressourcen vertraut machen und planen, diese während der gesamten Lebensdauer Ihres Intel-Produkts zu nutzen.
Verwandte Informationen · Produktsicherheit bei Intel · Ratschläge zum Intel Product Security Center

Intel Corporation. Alle Rechte vorbehalten. Intel, das Intel-Logo und andere Intel-Marken sind Marken der Intel Corporation oder ihrer Tochtergesellschaften. Intel garantiert die Leistung seiner FPGA- und Halbleiterprodukte gemäß den aktuellen Spezifikationen gemäß der Standardgarantie von Intel, behält sich jedoch das Recht vor, jederzeit ohne Vorankündigung Änderungen an Produkten und Diensten vorzunehmen. Intel übernimmt keine Verantwortung oder Haftung, die sich aus der Anwendung oder Verwendung von hierin beschriebenen Informationen, Produkten oder Diensten ergeben, es sei denn, Intel hat ausdrücklich schriftlich zugestimmt. Intel-Kunden wird empfohlen, die neueste Version der Gerätespezifikationen zu beschaffen, bevor sie sich auf veröffentlichte Informationen verlassen und bevor sie Produkte oder Dienstleistungen bestellen. *Andere Namen und Marken können als Eigentum anderer beansprucht werden.

ISO 9001: 2015 registriert

1. Intel Agilex® 7 Gerätesicherheit vorbeiview 683823 | 2023.05.23

1.2. Geplante Sicherheitsfunktionen

Die in diesem Abschnitt erwähnten Funktionen sind für eine zukünftige Version der Intel Quartus Prime Pro Edition-Software geplant.

Notiz:

Die Informationen in diesem Abschnitt sind vorläufig.

1.2.1. Teilweise Rekonfigurations-Bitstream-Sicherheitsüberprüfung
Die Bitstream-Sicherheitsvalidierung durch partielle Rekonfiguration (PR) bietet zusätzliche Sicherheit, dass PR-Persona-Bitstreams nicht auf andere PR-Persona-Bitstreams zugreifen oder diese stören können.

1.2.2. Selbsttötung des Geräts zur physischen Anti-Tamper
Die Selbstabschaltung des Geräts führt eine Gerätelöschung oder eine Gerätenullierungsreaktion durch und programmiert zusätzlich eFuses, um zu verhindern, dass sich das Gerät erneut konfiguriert.

1.3. Verfügbare Sicherheitsdokumentation

Die folgende Tabelle listet die verfügbare Dokumentation für Gerätesicherheitsfunktionen auf Intel FPGA- und strukturierten ASIC-Geräten auf:

Tabelle 1.

Verfügbare Dokumentation zur Gerätesicherheit

Dokumentname
Benutzerhandbuch zur Sicherheitsmethodik für Intel FPGAs und strukturierte ASICs

Zweck
Dokument der obersten Ebene, das detaillierte Beschreibungen der Sicherheitsfunktionen und -technologien in Intel Programmable Solutions-Produkten enthält. Soll Ihnen bei der Auswahl der Sicherheitsfunktionen helfen, die zum Erreichen Ihrer Sicherheitsziele erforderlich sind.

Dokument-ID 721596

Intel Stratix 10 Device Security-Benutzerhandbuch
Intel Agilex 7 Device Security-Benutzerhandbuch

Für Benutzer von Intel Stratix 10-Geräten enthält dieses Handbuch Anweisungen zur Verwendung der Intel Quartus Prime Pro Edition-Software zur Implementierung der Sicherheitsfunktionen, die im Benutzerhandbuch zur Sicherheitsmethodik identifiziert wurden.
Für Benutzer von Intel Agilex 7-Geräten enthält dieses Handbuch Anweisungen zur Verwendung der Intel Quartus Prime Pro Edition-Software zur Implementierung der Sicherheitsfunktionen, die im Benutzerhandbuch zur Sicherheitsmethodik identifiziert wurden.

683642 683823

Intel eASIC N5X Device Security-Benutzerhandbuch

Für Benutzer von Intel eASIC N5X-Geräten enthält dieses Handbuch Anweisungen zur Verwendung der Intel Quartus Prime Pro Edition-Software zur Implementierung der Sicherheitsfunktionen, die im Benutzerhandbuch zur Sicherheitsmethodik identifiziert wurden.

626836

Benutzerhandbuch für Intel Agilex 7 und Intel eASIC N5X HPS Cryptographic Services

Dieses Handbuch enthält Informationen, die HPS-Softwareentwicklern bei der Implementierung und Verwendung von HPS-Softwarebibliotheken helfen sollen, um auf die vom SDM bereitgestellten kryptografischen Dienste zuzugreifen.

713026

Kurzanleitung zum AN-968 Black Key Provisioning Service

Dieses Handbuch enthält die vollständigen Schritte zum Einrichten des Black Key Provisioning-Dienstes.

739071

Standort Intel-Ressource und
Design-Zentrum
Intel.com
Intel.com
Intel Ressourcen- und Designcenter
Intel Ressourcen- und Designcenter
Intel Ressourcen- und Designcenter

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 5

683823 | 2023.05.23 Feedback senden

Authentifizierung und Autorisierung

Um die Authentifizierungsfunktionen eines Intel Agilex 7-Geräts zu aktivieren, verwenden Sie zunächst die Intel Quartus Prime Pro Edition-Software und die zugehörigen Tools zum Aufbau einer Signaturkette. Eine Signaturkette besteht aus einem Root-Schlüssel, einem oder mehreren Signaturschlüsseln und anwendbaren Autorisierungen. Sie wenden die Signaturkette auf Ihr Intel Quartus Prime Pro Edition-Projekt und die kompilierte Programmierung an fileS. Befolgen Sie die Anweisungen unter Gerätebereitstellung, um Ihren Root-Schlüssel in Intel Agilex 7-Geräte zu programmieren.
Zugehörige Informationen
Gerätebereitstellung auf Seite 25

2.1. Erstellen einer Signaturkette
Sie können das Tool quartus_sign oder die Referenzimplementierung agilex_sign.py verwenden, um Signaturkettenoperationen durchzuführen. Dieses Dokument enthält zamples mit quartus_sign.
Um die Referenzimplementierung zu verwenden, ersetzen Sie einen Aufruf des Python-Interpreters, der in der Intel Quartus Prime-Software enthalten ist, und lassen die Option –family=agilex weg; alle anderen Optionen sind gleichwertig. Zum Beispielample, der Befehl quartus_sign, den Sie später in diesem Abschnitt finden
quartus_sign –family=agilex –operation=make_root root_public.pem root.qky kann wie folgt in den entsprechenden Aufruf der Referenzimplementierung umgewandelt werden
pgm_py agilex_sign.py –operation=make_root root_public.pem root.qky

Die Intel Quartus Prime Pro Edition-Software umfasst die Tools quartus_sign, pgm_py und agilex_sign.py. Sie können das Nios® II-Befehls-Shell-Tool verwenden, das automatisch geeignete Umgebungsvariablen für den Zugriff auf die Tools festlegt.

Befolgen Sie diese Anweisungen, um eine Nios II-Befehlsshell aufzurufen. 1. Rufen Sie eine Nios II-Befehlsshell auf.

Option Windows
Linux

Beschreibung
Zeigen Sie im Startmenü auf Programme Intel FPGA Nios II EDS und klicken Sie auf Nios II Command Shell.
Wechseln Sie in einer Befehlsshell zu /nios2eds und führen Sie den folgenden Befehl aus:
./nios2_command_shell.sh

Der ExampDie Dateien in diesem Abschnitt gehen von einer Signaturkette und einem Konfigurationsbitstrom aus files befinden sich im aktuellen Arbeitsverzeichnis. Wenn Sie sich dafür entscheiden, dem Ex zu folgenamples wo Schlüssel files werden auf der gehalten file System, die examples übernehmen den Schlüssel files sind

Intel Corporation. Alle Rechte vorbehalten. Intel, das Intel-Logo und andere Intel-Marken sind Marken der Intel Corporation oder ihrer Tochtergesellschaften. Intel garantiert die Leistung seiner FPGA- und Halbleiterprodukte gemäß den aktuellen Spezifikationen gemäß der Standardgarantie von Intel, behält sich jedoch das Recht vor, jederzeit ohne Vorankündigung Änderungen an Produkten und Diensten vorzunehmen. Intel übernimmt keine Verantwortung oder Haftung, die sich aus der Anwendung oder Verwendung von hierin beschriebenen Informationen, Produkten oder Diensten ergeben, es sei denn, Intel hat ausdrücklich schriftlich zugestimmt. Intel-Kunden wird empfohlen, die neueste Version der Gerätespezifikationen zu beschaffen, bevor sie sich auf veröffentlichte Informationen verlassen und bevor sie Produkte oder Dienstleistungen bestellen. *Andere Namen und Marken können als Eigentum anderer beansprucht werden.

ISO 9001: 2015 registriert

2. Authentifizierung und Autorisierung 683823 | 2023.05.23
befindet sich im aktuellen Arbeitsverzeichnis. Sie können auswählen, welche Verzeichnisse verwendet werden sollen, und welche Tools dies relativ unterstützen file Wege. Wenn Sie sich dafür entscheiden, den Schlüssel zu behalten files auf der file System müssen Sie die Zugriffsberechtigungen für diese sorgfältig verwalten files.
Intel empfiehlt die Verwendung eines im Handel erhältlichen Hardware-Sicherheitsmoduls (HSM) zum Speichern kryptografischer Schlüssel und zum Durchführen kryptografischer Vorgänge. Das quartus_sign-Tool und die Referenzimplementierung umfassen eine Public Key Cryptography Standard #11 (PKCS #11) Application Programming Interface (API) zur Interaktion mit einem HSM während der Durchführung von Signaturkettenoperationen. Die Referenzimplementierung agilex_sign.py enthält eine Schnittstellenzusammenfassung sowie ein Beispielample-Schnittstelle zu SoftHSM.
Sie können diese z. B. verwendenample interfaces, um eine Schnittstelle zu Ihrem HSM zu implementieren. Weitere Informationen zur Implementierung einer Schnittstelle zu und zum Betrieb Ihres HSM finden Sie in der Dokumentation Ihres HSM-Anbieters.
SoftHSM ist eine Softwareimplementierung eines generischen kryptografischen Geräts mit einer PKCS #11-Schnittstelle, die vom OpenDNSSEC®-Projekt zur Verfügung gestellt wird. Weitere Informationen, einschließlich Anweisungen zum Herunterladen, Erstellen und Installieren von OpenHSM, finden Sie möglicherweise im OpenDNSSEC-Projekt. Die ExampDie Dateien in diesem Abschnitt verwenden SoftHSM Version 2.6.1. Die ExampDie Dateien in diesem Abschnitt verwenden zusätzlich das Dienstprogramm pkcs11-tool von OpenSC, um zusätzliche PKCS #11-Vorgänge mit einem SoftHSM-Token auszuführen. Möglicherweise finden Sie weitere Informationen, einschließlich Anweisungen zum Herunterladen, Erstellen und Installieren von pkcs11tool von OpenSC.
Zugehörige Informationen
· Der richtlinienbasierte Zonensignierer des OpenDNSSEC-Projekts zur Automatisierung des Prozesses der DNSSEC-Schlüsselverfolgung.
· SoftHSM-Informationen zur Implementierung eines kryptografischen Speichers, auf den über eine PKCS #11-Schnittstelle zugegriffen werden kann.
· OpenSC stellt eine Reihe von Bibliotheken und Dienstprogrammen bereit, die mit Smartcards arbeiten können.
2.1.1. Erstellen von Authentifizierungsschlüsselpaaren auf der lokalen Seite File System
Sie verwenden das Tool quartus_sign, um Authentifizierungsschlüsselpaare lokal zu erstellen file System mithilfe der Tooloperationen make_private_pem und make_public_pem. Sie generieren zunächst einen privaten Schlüssel mit der Operation make_private_pem. Sie geben die zu verwendende elliptische Kurve an, den privaten Schlüssel fileName und optional, ob der private Schlüssel mit einer Passphrase geschützt werden soll. Intel empfiehlt die Verwendung der secp384r1-Kurve und die Befolgung der Best Practices der Branche, um eine starke, zufällige Passphrase für alle privaten Schlüssel zu erstellen fileS. Intel empfiehlt außerdem, dies einzuschränken file Systemberechtigungen für den privaten Schlüssel .pem fileEs darf nur vom Eigentümer gelesen werden. Mit der Operation make_public_pem leiten Sie den öffentlichen Schlüssel vom privaten Schlüssel ab. Es ist hilfreich, den Schlüssel .pem zu nennen files beschreibend. Dieses Dokument verwendet die Konvention _.pem im folgenden Beispielamples.
1. Führen Sie in der Nios II-Befehlsshell den folgenden Befehl aus, um einen privaten Schlüssel zu erstellen. Der unten gezeigte private Schlüssel wird in späteren Beispielen als Root-Schlüssel verwendetampDateien, die eine Signaturkette erstellen. Intel Agilex 7-Geräte unterstützen mehrere Root-Schlüssel, also Sie

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 7

2. Authentifizierung und Autorisierung 683823 | 2023.05.23

Wiederholen Sie diesen Schritt, um die erforderliche Anzahl an Root-Schlüsseln zu erstellen. ExampDie Dateien in diesem Dokument beziehen sich alle auf den ersten Root-Schlüssel, obwohl Sie Signaturketten auf ähnliche Weise mit jedem Root-Schlüssel erstellen können.

Option Mit Passphrase

Beschreibung
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 root0_private.pem Geben Sie die Passphrase ein, wenn Sie dazu aufgefordert werden.

Ohne Passphrase

quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 –no_passphrase root0_private.pem

2. Führen Sie den folgenden Befehl aus, um einen öffentlichen Schlüssel mit dem im vorherigen Schritt generierten privaten Schlüssel zu erstellen. Sie müssen die Vertraulichkeit eines öffentlichen Schlüssels nicht schützen.
quartus_sign –family=agilex –operation=make_public_pem root0_private.pem root0_public.pem
3. Führen Sie die Befehle erneut aus, um ein Schlüsselpaar zu erstellen, das als Design-Signaturschlüssel in der Signaturkette verwendet wird.
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 design0_sign_private.pem

quartus_sign –family=agilex –operation=make_public_pem design0_sign_private.pem design0_sign_public.pem

2.1.2. Erstellen von Authentifizierungsschlüsselpaaren in SoftHSM
Das SoftHSM exampDie Dateien in diesem Kapitel sind selbstkonsistent. Bestimmte Parameter hängen von Ihrer SoftHSM-Installation und einer Token-Initialisierung innerhalb von SoftHSM ab.
Das Tool quartus_sign hängt von der PKCS #11-API-Bibliothek Ihres HSM ab.
Der ExampBei den Dateien in diesem Abschnitt wird davon ausgegangen, dass die SoftHSM-Bibliothek an einem der folgenden Speicherorte installiert ist: · /usr/local/lib/softhsm2.so unter Linux · C:SoftHSM2libsofthsm2.dll unter der 32-Bit-Version von Windows · C:SoftHSM2libsofthsm2-x64 .dll auf der 64-Bit-Version von Windows.
Initialisieren Sie ein Token in SoftHSM mit dem Tool softhsm2-util:
softhsm2-util –init-token –label agilex-token –pin agilex-token-pin –so-pin agilex-so-pin –free
Die Optionsparameter, insbesondere das Token-Label und der Token-Pin, sind zampIn diesem Kapitel verwendete Dateien. Intel empfiehlt, dass Sie den Anweisungen Ihres HSM-Anbieters folgen, um Token und Schlüssel zu erstellen und zu verwalten.
Sie erstellen Authentifizierungsschlüsselpaare mit dem Dienstprogramm pkcs11-tool, um mit dem Token in SoftHSM zu interagieren. Anstatt explizit auf den privaten und öffentlichen Schlüssel .pem zu verweisen files im file System exampIn den Dateien verweisen Sie auf das Schlüsselpaar anhand seiner Bezeichnung und das Tool wählt automatisch den entsprechenden Schlüssel aus.

Intel Agilex® 7 Device Security-Benutzerhandbuch 8

Feedback senden

2. Authentifizierung und Autorisierung 683823 | 2023.05.23

Führen Sie die folgenden Befehle aus, um ein Schlüsselpaar zu erstellen, das in späteren Beispielen als Root-Schlüssel verwendet wirdampDateien sowie ein Schlüsselpaar, das als Design-Signaturschlüssel in der Signaturkette verwendet wird:
pkcs11-tool –module=/usr/local/lib/softhsm/libsofthsm2.so –token-label agilex-token –login –pin agilex-token-pin –keypairgen –mechanismus ECDSA-KEY-PAIR-GEN –key-type EC :secp384r1 –usage-sign –label root0 –id 0
pkcs11-tool –module=/usr/local/lib/softhsm/libsofthsm2.so –token-label agilex-token –login –pin agilex-token-pin –keypairgen –mechanismus ECDSA-KEY-PAIR-GEN –key-type EC :secp384r1 –usage-sign –label design0_sign –id 1

Notiz:

Die ID-Option in diesem Schritt muss für jeden Schlüssel eindeutig sein, wird aber nur vom HSM verwendet. Diese ID-Option hat nichts mit der in der Signaturkette zugewiesenen Schlüssellöschungs-ID zu tun.

2.1.3. Erstellen des Signaturketten-Root-Eintrags
Konvertieren Sie den öffentlichen Root-Schlüssel in einen Root-Eintrag der Signaturkette, der lokal gespeichert wird file System im Intel Quartus Prime Key (.qky)-Format file, mit der make_root-Operation. Wiederholen Sie diesen Schritt für jeden von Ihnen generierten Root-Schlüssel.
Führen Sie den folgenden Befehl aus, um eine Signaturkette mit einem Root-Eintrag zu erstellen und dabei einen öffentlichen Root-Schlüssel aus dem zu verwenden file System:
quartus_sign –family=agilex –operation=make_root –key_type=owner root0_public.pem root0.qky
Führen Sie den folgenden Befehl aus, um eine Signaturkette mit einem Root-Eintrag zu erstellen, indem Sie den Root-Schlüssel aus dem im vorherigen Abschnitt erstellten SoftHSM-Token verwenden:
quartus_sign –family=agilex –operation=make_root –key_type=owner –module=softHSM –module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so ” root0 root0.qky

2.1.4. Erstellen eines öffentlichen Schlüsseleintrags für die Signaturkette
Erstellen Sie mit der Operation append_key einen neuen öffentlichen Schlüsseleintrag für eine Signaturkette. Sie geben die vorherige Signaturkette, den privaten Schlüssel für den letzten Eintrag in der vorherigen Signaturkette, den öffentlichen Schlüssel der nächsten Ebene, die Berechtigungen und die Stornierungs-ID, die Sie dem öffentlichen Schlüssel der nächsten Ebene zuweisen, und die neue Signaturkette an file.
Beachten Sie, dass die softHSM-Bibliothek bei der Quartus-Installation nicht verfügbar ist und stattdessen separat installiert werden muss. Weitere Informationen zu softHSM finden Sie oben im Abschnitt Erstellen einer Signaturkette.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 9

2. Authentifizierung und Autorisierung 683823 | 2023.05.23
Abhängig von der Verwendung der Tasten am file System oder in einem HSM verwenden Sie eines der folgenden Beispiele:ample Befehle zum Anhängen des öffentlichen Schlüssels design0_sign an die im vorherigen Abschnitt erstellte Root-Signaturkette:
quartus_sign –family=agilex –operation=append_key – previous_pem=root0_private.pem – previous_qky=root0.qky –permission=6 –cancel=0 –input_pem=design0_sign_public.pem design0_sign_chain.qky
quartus_sign –family=agilex –operation=append_key –module=softHSM –module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“ – previous_keyname= root0 – previous_qky=root0.qky –permission=6 –cancel=0 –input_keyname=design0_sign design0_sign_chain.qky
Sie können den Vorgang „append_key“ bis zu zwei weitere Male wiederholen, um maximal drei öffentliche Schlüsseleinträge zwischen dem Root-Eintrag und dem Header-Block-Eintrag in einer Signaturkette zu erhalten.
Das folgende Beispielample geht davon aus, dass Sie einen anderen öffentlichen Authentifizierungsschlüssel mit denselben Berechtigungen und zugewiesener Stornierungs-ID 1 namens design1_sign_public.pem erstellt haben und diesen Schlüssel an die Signaturkette des vorherigen Beispiels anhängenampauf:
quartus_sign –family=agilex –operation=append_key – previous_pem=design0_sign_private.pem – previous_qky=design0_sign_chain.qky –permission=6 –cancel=1 –input_pem=design1_sign_public.pem design1_sign_chain.qky
quartus_sign –family=agilex –operation=append_key –module=softHSM –module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“ – previous_keyname= design0_sign – previous_qky=design0_sign_chain.qky –permission=6 –cancel=1 –input_keyname=design1_sign design1_sign_chain.qky
Intel Agilex 7-Geräte verfügen über einen zusätzlichen Schlüssellöschungszähler, um die Verwendung eines Schlüssels zu erleichtern, der sich während der Lebensdauer eines bestimmten Geräts regelmäßig ändern kann. Sie können diesen Schlüsselabbruchzähler auswählen, indem Sie das Argument der Option –cancel in pts:pts_value ändern.
2.2. Signieren eines Konfigurationsbitstreams
Intel Agilex 7-Geräte unterstützen SVN-Zähler (Security Version Number), mit denen Sie die Autorisierung eines Objekts widerrufen können, ohne einen Schlüssel zu löschen. Sie weisen den SVN-Zähler und den entsprechenden SVN-Zählerwert beim Signieren eines beliebigen Objekts zu, z. B. eines Bitstream-Abschnitts oder einer Firmware-.zip-Datei fileoder Kompaktzertifikat. Sie weisen den SVN-Zähler und den SVN-Wert mit der Option –cancel und svn_counter:svn_value als Argument zu. Gültige Werte für svn_counter sind svnA, svnB, svnC und svnD. Der svn_value ist eine Ganzzahl im Bereich [0,63].

Intel Agilex® 7 Device Security-Benutzerhandbuch 10

Feedback senden

2. Authentifizierung und Autorisierung 683823 | 2023.05.23
2.2.1. Quartus-Schlüssel File Abtretung
Sie geben in Ihrem Intel Quartus Prime-Softwareprojekt eine Signaturkette an, um die Authentifizierungsfunktion für dieses Design zu aktivieren. Wählen Sie im Menü „Zuweisungen“ die Option „Gerät, Gerät und Pin-Optionen, Sicherheit, Quartus-Schlüssel“. File, und navigieren Sie dann zur Signaturkette .qky file Sie haben erstellt, um diesen Entwurf zu signieren.
Abbildung 1. Konfigurations-Bitstream-Einstellung aktivieren

Alternativ können Sie die folgende Zuweisungsanweisung zu Ihren Intel Quartus Prime-Einstellungen hinzufügen file (.qsf):
set_global_assignment -name QKY_FILE design0_sign_chain.qky
So generieren Sie eine .sof file Aus einem zuvor kompilierten Entwurf, der diese Einstellung enthält, wählen Sie im Menü „Verarbeitung“ die Option „Starten“ und „Starten Assembler“. Die neue Ausgabe-.sof file Enthält die Zuweisungen, um die Authentifizierung mit der bereitgestellten Signaturkette zu ermöglichen.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 11

2. Authentifizierung und Autorisierung 683823 | 2023.05.23
2.2.2. Mitsignieren der SDM-Firmware
Sie verwenden das Tool quartus_sign, um die entsprechende SDM-Firmware-ZIP-Datei zu extrahieren, zu signieren und zu installieren file. Die mitsignierte Firmware wird dann von der Programmierung übernommen file Generator-Tool beim Konvertieren von .sof file in einen Konfigurationsbitstream .rbf file. Mit den folgenden Befehlen erstellen Sie eine neue Signaturkette und signieren die SDM-Firmware.
1. Erstellen Sie ein neues Signaturschlüsselpaar.
A. Erstellen Sie ein neues Signaturschlüsselpaar auf dem file System:
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1firmware1_private.pem
quartus_sign –family=agilex –operation=make_public_pemfirmware1_private.pemfirmware1_public.pem
B. Erstellen Sie im HSM ein neues Signaturschlüsselpaar:
pkcs11-tool –module=/usr/local/lib/softhsm/libsofthsm2.so –token-label agilex-token –login –pin agilex-token-pin –keypairgen -mechanism ECDSA-KEY-PAIR-GEN –key-type EC :secp384r1 –usage-sign –label Firmware1 –id 1
2. Erstellen Sie eine neue Signaturkette mit dem neuen öffentlichen Schlüssel:
quartus_sign –family=agilex –operation=append_key – previous_pem=root0_private.pem – previous_qky=root0.qky –permission=0x1 –cancel=1 –input_pem=firmware1_public.pemfirmware1_sign_chain.qky
quartus_sign –family=agilex –operation=append_key –module=softHSM –module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“ – previous_keyname= root0 – previous_qky=root0.qky –permission=1 –cancel=1 –input_keyname=firmware1firmware1_sign_chain.qky
3. Kopieren Sie die Firmware-ZIP-Datei file von Ihrem Installationsverzeichnis der Intel Quartus Prime Pro Edition-Software (/devices/programmer/firmware/ agilex.zip) in das aktuelle Arbeitsverzeichnis.
quartus_sign –family=agilex –get_firmware=.
4. Signieren Sie die Firmware-ZIP-Datei file. Das Tool entpackt die ZIP-Datei automatisch file und signiert jede Firmware einzeln mit .cmf files, erstellt dann die ZIP-Datei neu file zur Verwendung durch die Tools in den folgenden Abschnitten:
quartus_sign –family=agilex –operation=sign –qky=firmware1_sign_chain.qky –cancel=svnA:0 –pem=firmware1_private.pem agilex.zip signiert_agilex.zip
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“

Intel Agilex® 7 Device Security-Benutzerhandbuch 12

Feedback senden

2. Authentifizierung und Autorisierung 683823 | 2023.05.23

–keyname=firmware1 –cancel=svnA:0 –qky=firmware1_sign_chain.qky agilex.zip signiert_agilex.zip

2.2.3. Signaturkonfigurations-Bitstream mit dem Befehl quartus_sign
Um einen Konfigurationsbitstream mit dem Befehl quartus_sign zu signieren, konvertieren Sie zunächst die .sof file zur vorzeichenlosen Rohbinärdatei file (.rbf)-Format. Sie können optional während des Konvertierungsschritts mit der Option fw_source eine mitsignierte Firmware angeben.
Mit dem folgenden Befehl können Sie den unsignierten Rohbitstream im .rbf-Format generieren:
quartus_pfg c o fw_source=signed_agilex.zip -o sign_later=ON design.sof unsigned_bitstream.rbf
Führen Sie je nach Speicherort Ihrer Schlüssel einen der folgenden Befehle aus, um den Bitstream mit dem Tool quartus_sign zu signieren:
quartus_sign –family=agilex –operation=sign –qky=design0_sign_chain.qky –pem=design0_sign_private.pem –cancel=svnA:0 unsigned_bitstream.rbf signiert_bitstream.rbf
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“ –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_bitstream.rbf signiert_bitstream.rbf
Sie können signierte .rbf konvertieren files zu einem anderen Konfigurationsbitstream file Formate.
Zum Beispielample, wenn Sie den Jam* Standard Test and Programming Language (STAPL) Player verwenden, um einen Bitstream über J zu programmierenTAGverwenden Sie den folgenden Befehl, um eine .rbf zu konvertieren file in das .jam-Format, das der Jam STAPL Player benötigt:
quartus_pfg -c signierter_bitstream.rbf signierter_bitstream.jam

2.2.4. Teilweise Rekonfigurations-Multi-Authority-Unterstützung

Intel Agilex 7-Geräte unterstützen die teilweise Neukonfiguration der Multi-Authority-Authentifizierung, bei der der Gerätebesitzer den statischen Bitstrom erstellt und signiert und ein separater PR-Besitzer PR-Persona-Bitströme erstellt und signiert. Intel Agilex 7-Geräte implementieren Multi-Authority-Unterstützung, indem sie die ersten Root-Key-Slots für die Authentifizierung dem Besitzer des Geräts oder des statischen Bitstroms zuweisen und den endgültigen Root-Key-Slot für die Authentifizierung dem Besitzer des Persona-Bitstreams mit teilweiser Neukonfiguration zuweisen.
Wenn die Authentifizierungsfunktion aktiviert ist, müssen alle PR-Persona-Bilder signiert werden, einschließlich verschachtelter PR-Persona-Bilder. PR-Persona-Bilder können entweder vom Gerätebesitzer oder vom PR-Eigentümer signiert werden; Allerdings müssen Bitströme statischer Regionen vom Gerätebesitzer signiert werden.

Notiz:

Eine teilweise Neukonfiguration der statischen und Persona-Bitstream-Verschlüsselung bei aktivierter Multi-Authority-Unterstützung ist in einer zukünftigen Version geplant.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 13

2. Authentifizierung und Autorisierung 683823 | 2023.05.23

Abbildung 2.

Die Implementierung der teilweisen Neukonfiguration der Multi-Authority-Unterstützung erfordert mehrere Schritte:
1. Der Eigentümer des Geräts oder des statischen Bitstroms generiert einen oder mehrere Authentifizierungs-Root-Schlüssel, wie unter „Erstellen von Authentifizierungsschlüsselpaaren in SoftHSM“ auf Seite 8 beschrieben, wobei die Option –key_type den Wert „eigentümer“ hat.
2. Der Teilrekonfigurations-Bitstream-Eigentümer generiert einen Authentifizierungs-Root-Schlüssel, ändert jedoch den Wert der Option –key_type in „secondary_owner“.
3. Sowohl der statische Bitstream- als auch der teilweise Rekonfigurationsdesign-Eigentümer stellen sicher, dass das Kontrollkästchen „Multi-Authority-Unterstützung aktivieren“ auf der Registerkarte „Zuweisungen, Geräte, Geräte- und Pin-Optionen, Sicherheit“ aktiviert ist.
Intel Quartus Prime Aktivieren Sie die Optionseinstellungen für mehrere Autoritäten

4. Sowohl die Besitzer des statischen Bitstroms als auch des Designs mit teilweiser Rekonfiguration erstellen Signaturketten auf der Grundlage ihrer jeweiligen Root-Schlüssel, wie unter „Erstellen einer Signaturkette“ auf Seite 6 beschrieben.
5. Sowohl die Besitzer des statischen Bitstreams als auch der teilweise rekonfigurierten Designs konvertieren ihre kompilierten Designs in das .rbf-Format files und signieren Sie die .rbf files.
6. Der Besitzer des Geräts oder des statischen Bitstroms generiert und signiert ein kompaktes PR-Zertifikat zur Programmautorisierung mit öffentlichem Schlüssel.
quartus_pfg –ccert o ccert_type=PR_PUBKEY_PROG_AUTH oowner_qky_file=“root0.qky;root1.qky“ unsigned_pr_pubkey_prog.ccert
quartus_sign –family=agilex –operation=sign –qky=design0_sign_chain.qky –pem=design0_sign_private.pem –cancel=svnA:0 unsigned_pr_pubkey_prog.ccert signiert_pr_pubkey_prog.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=“–token_label=s10-token –user_pin=s10-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“ –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_pr_pubkey_prog.ccert signiert_pr_pubkey_prog.ccert

Intel Agilex® 7 Device Security-Benutzerhandbuch 14

Feedback senden

2. Authentifizierung und Autorisierung 683823 | 2023.05.23

7. Das Gerät oder der Besitzer des statischen Bitstroms stellt seine Authentifizierungs-Root-Key-Hashes für das Gerät bereit, programmiert dann das PR-Kompaktzertifikat für die Programmautorisierung mit öffentlichem Schlüssel und stellt schließlich dem Gerät den Partial-Rekonfigurations-Bitstream-Eigentümer-Root-Schlüssel zur Verfügung. Im Abschnitt „Gerätebereitstellung“ wird dieser Bereitstellungsprozess beschrieben.
8. Das Intel Agilex 7-Gerät ist mit der statischen Region .rbf konfiguriert file.
9. Das Intel Agilex 7-Gerät wurde teilweise mit dem Persona-Design .rbf neu konfiguriert file.
Zugehörige Informationen
· Erstellen einer Signaturkette auf Seite 6
· Erstellen von Authentifizierungsschlüsselpaaren in SoftHSM auf Seite 8
· Gerätebereitstellung auf Seite 25

2.2.5. Überprüfen der Konfigurations-Bitstream-Signaturketten
Nachdem Sie Signaturketten und signierte Bitströme erstellt haben, können Sie überprüfen, ob ein signierter Bitstrom ein mit einem bestimmten Root-Schlüssel programmiertes Gerät korrekt konfiguriert. Sie verwenden zunächst die Operation „fuse_info“ des Befehls „quartus_sign“, um den Hash des öffentlichen Root-Schlüssels in einen Text zu drucken file:
quartus_sign –family=agilex –operation=fuse_info root0.qky hash_fuse.txt

Anschließend verwenden Sie die Option check_integrity des Befehls quartus_pfg, um die Signaturkette in jedem Abschnitt eines signierten Bitstroms im .rbf-Format zu überprüfen. Die Option check_integrity gibt die folgenden Informationen aus:
· Status der gesamten Bitstrom-Integritätsprüfung
· Inhalte jedes Eintrags in jeder Signaturkette, die an jeden Abschnitt im Bitstrom .rbf angehängt ist file,
· Erwarteter Sicherungswert für den Hash des öffentlichen Root-Schlüssels für jede Signaturkette.
Der Wert aus der Ausgabe „fuse_info“ sollte mit den Fuse-Zeilen in der Ausgabe „check_integrity“ übereinstimmen.
quartus_pfg –check_integrity signiert_bitstream.rbf

Hier ist ein ExampDatei der Ausgabe des Befehls check_integrity:

Info: Befehl: quartus_pfg –check_integrity signiert_bitstream.rbf Integritätsstatus: OK

Abschnitt

Typ: CMF

Signaturdeskriptor …

Signaturkette #0 (Einträge: -1, Offset: 96)

Eintrag #0

Fuse: 34FD3B5F 7829001F DE2A24C7 3A7EAE29 C7786DB1 D6D5BC3C 52741C79

72978B22 0731B082 6F596899 40F32048 AD766A24

Schlüssel generieren …

Kurve: secp384r1

X

: 29C39C3064AE594A36DAA85602D6AF0B278CBB0B207C4D97CFB6967961E5F0ECA

456FF53F5DBB3A69E48A042C62AB6B0

Y

: 3E81D40CBBBEAC13601247A9D53F4A831308A24CA0BDFFA40351EE76438C7B5D2

2826F7E94A169023AFAE1D1DF4A31C2

Schlüssel generieren …

Kurve: secp384r1

X

: 29C39C3064AE594A36DAA85602D6AF0B278CBB0B207C4D97CFB6967961E5F0ECA

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 15

2. Authentifizierung und Autorisierung 683823 | 2023.05.23

456FF53F5DBB3A69E48A042C62AB6B0

Y

: 3E81D40CBBBEAC13601247A9D53F4A831308A24CA0BDFFA40351EE76438C7B5D2

2826F7E94A169023AFAE1D1DF4A31C2

Eintrag #1

Schlüssel generieren …

Kurve: secp384r1

X

: 015290C556F1533E5631322953E2F9E91258472F43EC954E05D6A4B63D611E04B

C120C7E7A744C357346B424D52100A9

Y

: 68696DEAC4773FF3D5A16A4261975424AAB4248196CF5142858E016242FB82BC5

08A80F3FE7F156DEF0AE5FD95BDFE05

Eintrag Nr. 2 Schlüsselbundberechtigung: SIGN_CODE Schlüsselbund kann durch ID storniert werden: 3 Signaturkette Nr. 1 (Einträge: -1, Offset: 648)

Eintrag #0

Fuse: FA6528BE 9281F2DB B787E805 6BF6EE0E 28983C56 D568B141 8EEE4BF6

DAC2D422 0A3A0F27 81EFC6CD 67E973BF AC286EAE

Schlüssel generieren …

Kurve: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Schlüssel generieren …

Kurve: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Eintrag #1

Schlüssel generieren …

Kurve: secp384r1

X

: 1E8FBEDC486C2F3161AFEB028D0C4B426258293058CD41358A164C1B1D60E5C1D

74D982BC20A4772ABCD0A1848E9DC96

Y

: 768F1BF95B37A3CC2FFCEEB071DD456D14B84F1B9BFF780FC5A72A0D3BE5EB51D

0DA7C6B53D83CF8A775A8340BD5A5DB

Eintrag #2

Schlüssel generieren …

Kurve: secp384r1

X

: 13986DDECAB697A2EB26B8EBD25095A8CC2B1A0AB0C766D029CDF2AFE21BE3432

76896E771A9C6CA5A2D3C08CF4CB83C

Y

: 0A1384E9DD209238FF110D867B557414955354EE6681D553509A507A78CFC05A1

49F91CABA72F6A3A1C2D1990CDAEA3D

Eintrag Nr. 3 Schlüsselbundberechtigung: SIGN_CODE Schlüsselbund kann durch ID storniert werden: 15 Signaturkette Nr. 2 (Einträge: -1, Offset: 0) Signaturkette Nr. 3 (Einträge: -1, Offset: 0) Signaturkette Nr. 4 (Einträge: -1, Offset: 0) Signaturkette #5 (Einträge: -1, Offset: 0) Signaturkette #6 (Einträge: -1, Offset: 0) Signaturkette #7 (Einträge: -1, Offset: 0)

Abschnittstyp: IO Signature Descriptor … Signaturkette #0 (Einträge: -1, Offset: 96)

Eintrag #0

Fuse: FA6528BE 9281F2DB B787E805 6BF6EE0E 28983C56 D568B141 8EEE4BF6

DAC2D422 0A3A0F27 81EFC6CD 67E973BF AC286EAE

Schlüssel generieren …

Kurve: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Intel Agilex® 7 Device Security-Benutzerhandbuch 16

Feedback senden

2. Authentifizierung und Autorisierung 683823 | 2023.05.23

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Schlüssel generieren …

Kurve: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Eintrag #1

Schlüssel generieren …

Kurve: secp384r1

X

: 646B51F668D8CC365D72B89BA8082FDE79B00CDB750DA0C984DC5891CDF57BD21

44758CA747B1A8315024A8247F12E51

Y

: 53513118E25E16151FD55D7ECDE8293AF6C98A74D52E0DA2527948A64FABDFE7C

F4EA8B8E229218D38A869EE15476750

Eintrag #2

Schlüssel generieren …

Kurve: secp384r1

X

: 13986DDECAB697A2EB26B8EBD25095A8CC2B1A0AB0C766D029CDF2AFE21BE3432

76896E771A9C6CA5A2D3C08CF4CB83C

Y

: 0A1384E9DD209238FF110D867B557414955354EE6681D553509A507A78CFC05A1

49F91CABA72F6A3A1C2D1990CDAEA3D

Eintrag Nr. 3 Schlüsselbundberechtigung: SIGN_CORE Schlüsselbund kann abgebrochen werden durch ID: 15 Signaturkette Nr. 1 (Einträge: -1, Offset: 0) Signaturkette Nr. 2 (Einträge: -1, Offset: 0) Signaturkette Nr. 3 (Einträge: -1, Offset: 0) Signaturkette #4 (Einträge: -1, Offset: 0) Signaturkette #5 (Einträge: -1, Offset: 0) Signaturkette #6 (Einträge: -1, Offset: 0) Signatur Kette #7 (Einträge: -1, Offset: 0)

Abschnitt

Typ: HPS

Signaturdeskriptor …

Signaturkette #0 (Einträge: -1, Offset: 96)

Eintrag #0

Fuse: FA6528BE 9281F2DB B787E805 6BF6EE0E 28983C56 D568B141 8EEE4BF6

DAC2D422 0A3A0F27 81EFC6CD 67E973BF AC286EAE

Schlüssel generieren …

Kurve: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Schlüssel generieren …

Kurve: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Eintrag #1

Schlüssel generieren …

Kurve: secp384r1

X

: FAF423E08FB08D09F926AB66705EB1843C7C82A4391D3049A35E0C5F17ACB1A30

09CE3F486200940E81D02E2F385D150

Y

: 397C0DA2F8DD6447C52048CD0FF7D5CCA7F169C711367E9B81E1E6C1E8CD9134E

5AC33EE6D388B1A895AC07B86155E9D

Eintrag #2

Schlüssel generieren …

Kurve: secp384r1

X

: 13986DDECAB697A2EB26B8EBD25095A8CC2B1A0AB0C766D029CDF2AFE21BE3432

76896E771A9C6CA5A2D3C08CF4CB83C

Y

: 0A1384E9DD209238FF110D867B557414955354EE6681D553509A507A78CFC05A1

49F91CABA72F6A3A1C2D1990CDAEA3D

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 17

2. Authentifizierung und Autorisierung 683823 | 2023.05.23

Eintrag #3 Schlüsselbundberechtigung: SIGN_HPS Schlüsselbund kann abgebrochen werden durch ID: 15 Signaturkette #1 (Einträge: -1, Offset: 0) Signaturkette #2 (Einträge: -1, Offset: 0) Signaturkette #3 (Einträge: -1, Offset: 0) Signaturkette #4 (Einträge: -1, Offset: 0) Signaturkette #5 (Einträge: -1, Offset: 0) Signaturkette #6 (Einträge: -1, Offset: 0) Signatur Kette #7 (Einträge: -1, Offset: 0)

Abschnittstyp: CORE-Signaturdeskriptor … Signaturkette #0 (Einträge: -1, Offset: 96)

Eintrag #0

Fuse: FA6528BE 9281F2DB B787E805 6BF6EE0E 28983C56 D568B141 8EEE4BF6

DAC2D422 0A3A0F27 81EFC6CD 67E973BF AC286EAE

Schlüssel generieren …

Kurve: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Schlüssel generieren …

Kurve: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Eintrag #1

Schlüssel generieren …

Kurve: secp384r1

X

: 646B51F668D8CC365D72B89BA8082FDE79B00CDB750DA0C984DC5891CDF57BD21

44758CA747B1A8315024A8247F12E51

Y

: 53513118E25E16151FD55D7ECDE8293AF6C98A74D52E0DA2527948A64FABDFE7C

F4EA8B8E229218D38A869EE15476750

Eintrag #2

Schlüssel generieren …

Kurve: secp384r1

X

: 13986DDECAB697A2EB26B8EBD25095A8CC2B1A0AB0C766D029CDF2AFE21BE3432

76896E771A9C6CA5A2D3C08CF4CB83C

Y

: 0A1384E9DD209238FF110D867B557414955354EE6681D553509A507A78CFC05A1

49F91CABA72F6A3A1C2D1990CDAEA3D

Eintrag Nr. 3 Schlüsselbundberechtigung: SIGN_CORE Schlüsselbund kann abgebrochen werden durch ID: 15 Signaturkette Nr. 1 (Einträge: -1, Offset: 0) Signaturkette Nr. 2 (Einträge: -1, Offset: 0) Signaturkette Nr. 3 (Einträge: -1, Offset: 0) Signaturkette #4 (Einträge: -1, Offset: 0) Signaturkette #5 (Einträge: -1, Offset: 0) Signaturkette #6 (Einträge: -1, Offset: 0) Signatur Kette #7 (Einträge: -1, Offset: 0)

Intel Agilex® 7 Device Security-Benutzerhandbuch 18

Feedback senden

683823 | 2023.05.23 Feedback senden

AES-Bitstream-Verschlüsselung

Die Bitstromverschlüsselung mit dem Advanced Encryption Standard (AES) ist eine Funktion, die es einem Gerätebesitzer ermöglicht, die Vertraulichkeit des geistigen Eigentums in einem Konfigurationsbitstrom zu schützen.
Um die Vertraulichkeit der Schlüssel zu schützen, verwendet die Konfigurations-Bitstream-Verschlüsselung eine Kette von AES-Schlüsseln. Diese Schlüssel werden zum Verschlüsseln von Eigentümerdaten im Konfigurationsbitstrom verwendet, wobei der erste Zwischenschlüssel mit dem AES-Root-Schlüssel verschlüsselt wird.

3.1. Erstellen des AES-Root-Schlüssels

Sie können das Tool quartus_encrypt oder die Referenzimplementierung stratix10_encrypt.py verwenden, um einen AES-Root-Schlüssel im Format des Intel Quartus Prime-Softwareverschlüsselungsschlüssels (.qek) zu erstellen file.

Notiz:

Die stratix10_encrypt.py file wird für Intel Stratix® 10- und Intel Agilex 7-Geräte verwendet.

Sie können optional den Basisschlüssel angeben, der zum Ableiten des AES-Wurzelschlüssels und des Schlüsselableitungsschlüssels verwendet wird, den Wert für den AES-Wurzelschlüssel direkt, die Anzahl der Zwischenschlüssel und die maximale Verwendung pro Zwischenschlüssel.

Sie müssen die Gerätefamilie angeben, Ausgabe .qek file Geben Sie bei entsprechender Aufforderung den Standort und die Passphrase ein.
Führen Sie den folgenden Befehl aus, um den AES-Root-Schlüssel mithilfe von Zufallsdaten für den Basisschlüssel und Standardwerten für die Anzahl der Zwischenschlüssel und die maximale Schlüsselverwendung zu generieren.
Um die Referenzimplementierung zu verwenden, ersetzen Sie einen Aufruf des Python-Interpreters, der in der Intel Quartus Prime-Software enthalten ist, und lassen die Option –family=agilex weg; alle anderen Optionen sind gleichwertig. Zum Beispielample, der Befehl quartus_encrypt, der später in diesem Abschnitt gefunden wird

quartus_encrypt –family=agilex –operation=MAKE_AES_KEY aes_root.qek

kann wie folgt in den entsprechenden Aufruf der Referenzimplementierung konvertiert werden: pgm_py stratix10_encrypt.py –operation=MAKE_AES_KEY aes_root.qek

3.2. Quartus-Verschlüsselungseinstellungen
Um die Bitstream-Verschlüsselung für ein Design zu aktivieren, müssen Sie die entsprechenden Optionen im Bereich „Zuweisungen, Geräte, Geräte und Pin-Optionen, Sicherheit“ angeben. Sie aktivieren das Kontrollkästchen „Konfigurations-Bitstream-Verschlüsselung aktivieren“ und wählen im Dropdown-Menü den gewünschten Speicherort für den Verschlüsselungsschlüssel aus.

Intel Corporation. Alle Rechte vorbehalten. Intel, das Intel-Logo und andere Intel-Marken sind Marken der Intel Corporation oder ihrer Tochtergesellschaften. Intel garantiert die Leistung seiner FPGA- und Halbleiterprodukte gemäß den aktuellen Spezifikationen gemäß der Standardgarantie von Intel, behält sich jedoch das Recht vor, jederzeit ohne Vorankündigung Änderungen an Produkten und Diensten vorzunehmen. Intel übernimmt keine Verantwortung oder Haftung, die sich aus der Anwendung oder Verwendung von hierin beschriebenen Informationen, Produkten oder Diensten ergeben, es sei denn, Intel hat ausdrücklich schriftlich zugestimmt. Intel-Kunden wird empfohlen, die neueste Version der Gerätespezifikationen zu beschaffen, bevor sie sich auf veröffentlichte Informationen verlassen und bevor sie Produkte oder Dienstleistungen bestellen. *Andere Namen und Marken können als Eigentum anderer beansprucht werden.

ISO 9001: 2015 registriert

Abbildung 3. Intel Quartus Prime-Verschlüsselungseinstellungen

3. AES-Bitstream-Verschlüsselung 683823 | 2023.05.23

Alternativ können Sie die folgende Zuweisungsanweisung zu Ihren Intel Quartus Prime-Einstellungen hinzufügen file .qsf:
set_global_assignment -name ENCRYPT_PROGRAMMING_BITSTREAM für set_global_assignment -name PROGRAMMING_BITSTREAM_ENCRYPTION_KEY_SELECT eFuses
Wenn Sie zusätzliche Abhilfemaßnahmen gegen Seitenkanal-Angriffsvektoren aktivieren möchten, können Sie das Dropdown-Menü „Verschlüsselungsaktualisierungsverhältnis“ und das Kontrollkästchen „Verschlüsselung aktivieren“ aktivieren.

Intel Agilex® 7 Device Security-Benutzerhandbuch 20

Feedback senden

3. AES-Bitstream-Verschlüsselung 683823 | 2023.05.23

Die entsprechenden Änderungen in der .qsf-Datei sind:
set_global_assignment -name PROGRAMMING_BITSTREAM_ENCRYPTION_CNOC_SCRAMBLING auf set_global_assignment -name PROGRAMMING_BITSTREAM_ENCRYPTION_UPDATE_RATIO 31

3.3. Verschlüsseln eines Konfigurationsbitstroms
Sie verschlüsseln einen Konfigurationsbitstrom, bevor Sie den Bitstrom signieren. Die Intel Quartus Prime-Programmierung File Das Generator-Tool kann einen Konfigurationsbitstrom automatisch über die grafische Benutzeroberfläche oder die Befehlszeile verschlüsseln und signieren.
Sie können optional einen teilweise verschlüsselten Bitstrom zur Verwendung mit den Tools quartus_encrypt und quartus_sign erstellen oder auf Implementierungsäquivalente verweisen.

3.3.1. Konfiguration der Bitstream-Verschlüsselung mithilfe der Programmierung File Grafische Benutzeroberfläche des Generators
Sie können die Programmierung verwenden File Generator zum Verschlüsseln und Signieren des Eigentümerbildes.

Abbildung 4.

1. Auf dem Intel Quartus Prime File Menü wählen Sie Programmierung File Generator. 2. Auf der Ausgabe FileGeben Sie auf der Registerkarte s die Ausgabe an file Typ für Ihre Konfiguration
Schema.
Ausgabe File Spezifikation

Konfigurationsschema-Ausgabe file Tab
Ausgabe file Typ

3. Auf der Eingabe FileKlicken Sie auf der Registerkarte „Bitstream hinzufügen“ auf „Bitstream hinzufügen“ und navigieren Sie zu Ihrer .sof-Datei. 4. Um Verschlüsselungs- und Authentifizierungsoptionen festzulegen, wählen Sie die .sof-Datei aus und klicken Sie auf
Eigenschaften. A. Aktivieren Sie „Signaturtool aktivieren“. B. Für privaten Schlüssel file Wählen Sie Ihren Signaturschlüssel privat .pem aus file. C. Aktivieren Sie die Option „Verschlüsselung abschließen“.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 21

3. AES-Bitstream-Verschlüsselung 683823 | 2023.05.23

Abbildung 5.

D. Für Verschlüsselungsschlüssel file, wählen Sie Ihre AES .qek aus file. Eingabe (.sof) File Eigenschaften für Authentifizierung und Verschlüsselung

Authentifizierung aktivieren. Geben Sie eine private Root-.pem-Datei an
Verschlüsselung aktivieren Geben Sie den Verschlüsselungsschlüssel an
5. Um den signierten und verschlüsselten Bitstrom am Eingang zu generieren FileKlicken Sie auf der Registerkarte s auf „Generieren“. Es werden Kennwortdialogfelder angezeigt, in denen Sie Ihr Kennwort für Ihren AES-Schlüssel .qek eingeben können file und Signieren des privaten Schlüssels .pem file. Die Programmierung file Generator erstellt die verschlüsselte und signierte Ausgabe_file.rbf.
3.3.2. Konfiguration der Bitstream-Verschlüsselung mithilfe der Programmierung File Generator-Befehlszeilenschnittstelle
Generieren Sie mit der Befehlszeilenschnittstelle quartus_pfg einen verschlüsselten und signierten Konfigurationsbitstream im .rbf-Format:
quartus_pfg -c Encryption_enabled.sof top.rbf -o finalize_encryption=ON -o qek_file=aes_root.qek -o signing=ON -o pem_file=design0_sign_private.pem
Sie können einen verschlüsselten und signierten Konfigurationsbitstrom im .rbf-Format in einen anderen Konfigurationsbitstrom konvertieren file Formate.
3.3.3. Teilweise verschlüsselte Konfigurations-Bitstream-Generierung über die Befehlszeilenschnittstelle
Sie können eine teilweise verschlüsselte Programmierung erstellen file um die Verschlüsselung abzuschließen und das Bild später zu signieren. Generieren Sie die teilweise verschlüsselte Programmierung file im .rbf-Format mit der Befehlszeilenschnittstelle quartus_pfg: quartus_pfg -c -o finalize_encryption_later=ON -o sign_later=ON top.sof top.rbf

Intel Agilex® 7 Device Security-Benutzerhandbuch 22

Feedback senden

3. AES-Bitstream-Verschlüsselung 683823 | 2023.05.23
Sie verwenden das Befehlszeilentool quartus_encrypt, um die Bitstream-Verschlüsselung abzuschließen:
quartus_encrypt –family=agilex –operation=ENCRYPT –key=aes_root.qek top.rbf verschlüsselt_top.rbf
Sie verwenden das Befehlszeilentool quartus_sign, um den verschlüsselten Konfigurationsbitstream zu signieren:
quartus_sign –family=agilex –operation=SIGN –qky=design0_sign_chain.qky –pem=design0_sign_private.pem –cancel=svnA:0 verschlüsselt_top.rbf signiert_encrypted_top.rbf
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“ –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 verschlüsselt_top.rbf signiert_encrypted_top.rbf
3.3.4. Teilweise Neukonfiguration der Bitstream-Verschlüsselung
Sie können die Bitstream-Verschlüsselung bei einigen Intel Agilex 7 FPGA-Designs aktivieren, die eine teilweise Neukonfiguration verwenden.
Partielle Rekonfigurationsdesigns, die die Hierarchical Partial Reconfiguration (HPR) oder die Static Update Partial Reconfiguration (SUPR) nutzen, unterstützen die Bitstream-Verschlüsselung nicht. Wenn Ihr Design mehrere PR-Regionen enthält, müssen Sie alle Personas verschlüsseln.
Um die Bitstream-Verschlüsselung mit teilweiser Neukonfiguration zu aktivieren, befolgen Sie in allen Entwurfsrevisionen das gleiche Verfahren. 1. Auf dem Intel Quartus Prime File Wählen Sie im Menü Zuweisungen Gerät Gerät
und Pin-Optionen-Sicherheit. 2. Wählen Sie den gewünschten Speicherort für den Verschlüsselungsschlüssel aus.
Abbildung 6. Einstellung der Bitstream-Verschlüsselung für teilweise Neukonfiguration

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 23

3. AES-Bitstream-Verschlüsselung 683823 | 2023.05.23
Alternativ können Sie die folgende Zuweisungsanweisung in den Quartus Prime-Einstellungen hinzufügen file .qsf:
set_global_assignment -name –ENABLE_PARTIAL_RECONFIGURATION_BITSTREAM_ENCRYPTION on
Nachdem Sie Ihr Basisdesign und Ihre Überarbeitungen kompiliert haben, generiert die Software eine.soffile und eine oder mehrere.pmsffiles, die die Personas darstellen. 3. Erstellen Sie verschlüsselte und signierte Programme files von.sof und.pmsf fileDies ähnelt Designs, bei denen keine teilweise Neukonfiguration aktiviert ist. 4. Konvertieren Sie die kompilierte persona.pmsf file zu einer teilweise verschlüsselten.rbf file:
quartus_pfg -c -o finalize_encryption_later=EIN -o sign_later=EIN verschlüsselung_enabled_persona1.pmsf persona1.rbf
5. Schließen Sie die Bitstream-Verschlüsselung mit dem Befehlszeilentool quartus_encrypt ab:
quartus_encrypt –family=agilex –operation=ENCRYPT –key=aes_root.qek persona1.rbfcoded_persona1.rbf
6. Signieren Sie den verschlüsselten Konfigurationsbitstream mit dem Befehlszeilentool quartus_sign:
quartus_sign –family=agilex –operation=SIGN –qky=design0_sign_chain.qky –pem=design0_sign_private.pem verschlüsselt_persona1.rbf signiert_encrypted_persona1.rbf
quartus_sign –family=agilex –operation=SIGN –module=softHSM –module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“ –qky= design0_sign_chain.qky –cancel=svnA:0 –keyname=design0_sign verschlüsselt_persona1.rbf signiert_encrypted_persona1.rbf

Intel Agilex® 7 Device Security-Benutzerhandbuch 24

Feedback senden

683823 | 2023.05.23 Feedback senden

Gerätebereitstellung

Die anfängliche Bereitstellung von Sicherheitsfunktionen wird nur in der SDM-Bereitstellungs-Firmware unterstützt. Verwenden Sie den Intel Quartus Prime Programmer, um die SDM-Bereitstellungs-Firmware zu laden und Bereitstellungsvorgänge durchzuführen.
Sie können jede Art von J verwendenTAG Laden Sie ein Kabel herunter, um den Quartus Programmer mit einem Intel Agilex 7-Gerät zu verbinden und Bereitstellungsvorgänge durchzuführen.
4.1. Verwenden der SDM-Bereitstellungsfirmware
Der Intel Quartus Prime Programmer erstellt und lädt automatisch ein werkseitiges Standard-Hilfsbild, wenn Sie den Initialisierungsvorgang und einen Befehl zum Programmieren von etwas anderem als einem Konfigurationsbitstream auswählen.
Abhängig vom angegebenen Programmierbefehl ist das werkseitig voreingestellte Hilfsbild einer von zwei Typen:
· Bereitstellungs-Helper-Image – besteht aus einem Bitstream-Abschnitt, der die SDM-Bereitstellungs-Firmware enthält.
· QSPI-Hilfsbild – besteht aus zwei Bitstream-Abschnitten, einer mit der SDM-Hauptfirmware und einem I/O-Abschnitt.
Sie können ein werkseitig voreingestelltes Hilfsbild erstellen file in Ihr Gerät laden, bevor Sie einen Programmierbefehl ausführen. Nachdem Sie einen Authentifizierungs-Root-Key-Hash programmiert haben, müssen Sie aufgrund des enthaltenen I/O-Abschnitts ein QSPI-Werksstandard-Helper-Image erstellen und signieren. Wenn Sie zusätzlich die mitsignierte Firmware-Sicherheitseinstellung eFuse programmieren, müssen Sie Bereitstellungs- und QSPI-Werksstandard-Hilfsbilder mit mitsignierter Firmware erstellen. Sie können ein mitsigniertes, werkseitig voreingestelltes Hilfsbild auf einem nicht bereitgestellten Gerät verwenden, da das nicht bereitgestellte Gerät nicht von Intel stammende Signaturketten über die SDM-Firmware ignoriert. Weitere Informationen zum Erstellen, Signieren und Verwenden des QSPI-Werksstandard-Helper-Images finden Sie unter „Verwenden des QSPI-Werksstandard-Hilfsbilds auf eigenen Geräten“ auf Seite 26.
Das Bereitstellungs-Factory-Helper-Image führt eine Bereitstellungsaktion durch, z. B. die Programmierung des Authentifizierungs-Root-Key-Hashs, Sicherungen für Sicherheitseinstellungen, PUF-Registrierung oder Black-Key-Bereitstellung. Sie nutzen die Intel Quartus Prime Programmierung File Generator-Befehlszeilentool zum Erstellen des Bereitstellungs-Helper-Images unter Angabe der Option „helper_image“, Ihres „helper_device“-Namens, des Bereitstellungs-Helper-Image-Subtyps und optional einer mitsignierten Firmware-ZIP-Datei file:
quartus_pfg –helper_image -o helper_device=AGFB014R24A -o subtype=PROVISION -o fw_source=signed_agilex.zip signiert_provision_helper_image.rbf
Programmieren Sie das Hilfsbild mit dem Intel Quartus Prime Programmer-Tool:
quartus_pgm -c 1 -mjtag -o „p;signed_provision_helper_image.rbf“ –force

Intel Corporation. Alle Rechte vorbehalten. Intel, das Intel-Logo und andere Intel-Marken sind Marken der Intel Corporation oder ihrer Tochtergesellschaften. Intel garantiert die Leistung seiner FPGA- und Halbleiterprodukte gemäß den aktuellen Spezifikationen gemäß der Standardgarantie von Intel, behält sich jedoch das Recht vor, jederzeit ohne Vorankündigung Änderungen an Produkten und Diensten vorzunehmen. Intel übernimmt keine Verantwortung oder Haftung, die sich aus der Anwendung oder Verwendung von hierin beschriebenen Informationen, Produkten oder Diensten ergeben, es sei denn, Intel hat ausdrücklich schriftlich zugestimmt. Intel-Kunden wird empfohlen, die neueste Version der Gerätespezifikationen zu beschaffen, bevor sie sich auf veröffentlichte Informationen verlassen und bevor sie Produkte oder Dienstleistungen bestellen. *Andere Namen und Marken können als Eigentum anderer beansprucht werden.

ISO 9001: 2015 registriert

4. Gerätebereitstellung 683823 | 2023.05.23

Notiz:

Sie können den Initialisierungsvorgang in Befehlen weglassen, einschließlich exampDateien, die in diesem Kapitel bereitgestellt werden, nachdem Sie entweder ein Bereitstellungs-Hilfsbild programmiert oder einen Befehl verwendet haben, der den Initialisierungsvorgang enthält.

4.2. Verwenden des QSPI Factory Default Helper Image auf eigenen Geräten
Der Intel Quartus Prime Programmer erstellt und lädt automatisch ein werkseitiges QSPI-Hilfsbild, wenn Sie den Initialisierungsvorgang für eine QSPI-Flash-Programmierung auswählen file. Nachdem Sie einen Authentifizierungs-Root-Key-Hash programmiert haben, müssen Sie das QSPI-Werksstandard-Helper-Image erstellen und signieren und das signierte QSPI-Factory-Helper-Image separat programmieren, bevor Sie den QSPI-Flash programmieren. 1. Sie verwenden die Intel Quartus Prime-Programmierung File Generator-Befehlszeilentool für
Erstellen Sie das QSPI-Helper-Image und geben Sie dabei die Option helper_image, Ihren helper_device-Typ, den QSPI-Helper-Image-Subtyp und optional eine mitsignierte Firmware-ZIP-Datei an file:
quartus_pfg –helper_image -o helper_device=AGFB014R24A -o subtype=QSPI -o fw_source=signed_agilex.zip qspi_helper_image.rbf
2. Sie signieren das werkseitige QSPI-Hilfsbild:
quartus_sign –family=agilex –operation=sign –qky=design0_sign_chain.qky –pem=design0_sign_private.pem qspi_helper_image.rbf signiert_qspi_helper_image.rbf
3. Sie können jede beliebige QSPI-Flash-Programmierung verwenden file Format. Das folgende BeispielampSie verwenden einen in .jic konvertierten Konfigurationsbitstream file Format:
quartus_pfg -c signiert_bitstream.rbf signiert_flash.jic -o device=MT25QU128 -o flash_loader=AGFB014R24A -o mode=ASX4
4. Sie programmieren das signierte Hilfsbild mit dem Intel Quartus Prime Programmer-Tool:
quartus_pgm -c 1 -mjtag -o „p;signed_qspi_helper_image.rbf“ –force
5. Sie programmieren das .jic-Image zum Flashen mit dem Intel Quartus Prime Programmer-Tool:
quartus_pgm -c 1 -mjtag -o „p;signed_flash.jic“

4.3. Bereitstellung des Authentifizierungs-Root-Schlüssels
Um die Besitzer-Root-Key-Hashes auf physische Sicherungen zu programmieren, müssen Sie zunächst die Bereitstellungs-Firmware laden, dann die Besitzer-Root-Key-Hashes programmieren und dann sofort einen Power-On-Reset durchführen. Ein Power-On-Reset ist nicht erforderlich, wenn Root-Key-Hashes auf virtuelle Sicherungen programmiert werden.

Intel Agilex® 7 Device Security-Benutzerhandbuch 26

Feedback senden

4. Gerätebereitstellung 683823 | 2023.05.23
Um Authentifizierungs-Root-Key-Hashes zu programmieren, programmieren Sie das Bereitstellungs-Firmware-Hilfsimage und führen einen der folgenden Befehle aus, um den Root-Schlüssel .qky zu programmieren files.
// Für physische (nichtflüchtige) eFuses quartus_pgm -c 1 -m jtag -o „p;root0.qky;root1.qky;root2.qky“ –non_volatile_key
// Für virtuelle (flüchtige) eFuses quartus_pgm -c 1 -m jtag -o „p;root0.qky;root1.qky;root2.qky“
4.3.1. Teilweise Neukonfiguration der Multi-Authority-Root-Key-Programmierung
Nach der Bereitstellung der Stammschlüssel für den Bitstrombesitzer des Geräts oder der statischen Region laden Sie erneut das Hilfsbild für die Gerätebereitstellung, programmieren das signierte kompakte PR-Autorisierungszertifikat für das Public-Key-Programm und stellen dann den Stammschlüssel für den PR-Persona-Bitstrombesitzer bereit.
// Für physische (nichtflüchtige) eFuses quartus_pgm -c 1 -m jtag -o „p;root_pr.qky“ –pr_pubkey –non_volatile_key
// Für virtuelle (flüchtige) eFuses quartus_pgm -c 1 -m jtag -o „p;p;root_pr.qky“ –pr_pubkey
4.4. Programmierschlüssel-Stornierungs-ID-Sicherungen
Ab der Intel Quartus Prime Pro Edition-Softwareversion 21.1 erfordert die Programmierung von Intel- und Eigentümerschlüssel-Stornierungs-ID-Sicherungen die Verwendung eines signierten Kompaktzertifikats. Sie können das kompakte Schlüssellöschungs-ID-Zertifikat mit einer Signaturkette signieren, die über Signaturberechtigungen für den FPGA-Abschnitt verfügt. Das Kompaktzertifikat erstellen Sie mit der Programmierung file Generator-Befehlszeilentool. Sie signieren das nicht signierte Zertifikat mit dem Tool quartus_sign oder einer Referenzimplementierung.
Intel Agilex 7-Geräte unterstützen separate Datenbanken mit Besitzerschlüssel-Löschungs-IDs für jeden Root-Schlüssel. Wenn ein kompaktes Zertifikat mit der Eigentümerschlüssel-Löschungs-ID in ein Intel Agilex 7 FPGA programmiert wird, ermittelt der SDM, welcher Root-Schlüssel das kompakte Zertifikat signiert hat, und lässt die diesem Root-Schlüssel entsprechende Schlüssel-Löschungs-ID-Sicherung durchbrennen.
Das folgende BeispielampErstellen Sie ein Intel-Schlüsselstornierungszertifikat für die Intel-Schlüssel-ID 7. Sie können 7 durch die entsprechende Intel-Schlüsselstornierungs-ID von 0-31 ersetzen.
Führen Sie den folgenden Befehl aus, um ein nicht signiertes kompaktes Intel-Schlüsselstornierungs-ID-Zertifikat zu erstellen:
quartus_pfg –ccert -o ccert_type=CANCEL_INTEL_KEY -o cancel_key=7 unsigned_cancel_intel7.ccert
Führen Sie einen der folgenden Befehle aus, um das nicht signierte Kompaktzertifikat der Intel-Schlüsselstornierungs-ID zu signieren:
quartus_sign –family=agilex –operation=SIGN –qky=design0_sign_chain.qky –pem=design0_private.pem –cancel=svnA:0 unsigned_cancel_intel7.ccert signiert_cancel_intel7.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 27

4. Gerätebereitstellung 683823 | 2023.05.23
–keyname=design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_cancel_intel7.ccert signiert_cancel_intel7.ccert
Führen Sie den folgenden Befehl aus, um ein kompaktes Zertifikat mit der Stornierungs-ID des nicht signierten Besitzerschlüssels zu erstellen:
quartus_pfg –ccert -o ccert_type=CANCEL_OWNER_KEY -o cancel_key=2 unsigned_cancel_owner2.ccert
Führen Sie einen der folgenden Befehle aus, um das nicht signierte Kompaktzertifikat für die Stornierungs-ID des Eigentümerschlüssels zu signieren:
quartus_sign –family=agilex –operation=SIGN –qky=design0_sign_chain.qky –pem=design0_private.pem –cancel=svnA:0 unsigned_cancel_owner2.ccert signiert_cancel_owner2.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“ –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_cancel_owner2.ccert signiert_cancel_owner2.ccert
Nachdem Sie ein signiertes Schlüssellöschungs-ID-Kompaktzertifikat erstellt haben, verwenden Sie den Intel Quartus Prime Programmer, um das Kompaktzertifikat über J. auf das Gerät zu programmierenTAG.
//Für physische (nichtflüchtige) eFuses quartus_pgm -c 1 -m jtag -o „pi;signed_cancel_intel7.ccert“ –non_volatile_key quartus_pgm -c 1 -m jtag -o „pi;signed_cancel_owner2.ccert“ –non_volatile_key
//Für virtuelle (flüchtige) eFuses quartus_pgm -c 1 -m jtag -o „pi;signed_cancel_intel7.ccert“ quartus_pgm -c 1 -m jtag -o „pi;signed_cancel_owner2.ccert“
Sie können das Kompaktzertifikat zusätzlich über die FPGA- oder HPS-Mailbox-Schnittstelle an den SDM senden.
4.5. Abbrechen von Root-Schlüsseln
Mit Intel Agilex 7-Geräten können Sie die Root-Key-Hashes abbrechen, wenn ein anderer nicht abgebrochener Root-Key-Hash vorhanden ist. Sie stornieren einen Root-Key-Hash, indem Sie zunächst das Gerät mit einem Design konfigurieren, dessen Signaturkette auf einem anderen Root-Key-Hash basiert, und dann ein signiertes kompaktes Root-Key-Hash-Löschungszertifikat programmieren. Sie müssen das kompakte Root-Key-Hash-Cancel-Zertifikat mit einer Signaturkette signieren, die im Root-Schlüssel basiert, der gelöscht werden soll.
Führen Sie den folgenden Befehl aus, um ein unsigniertes kompaktes Root-Key-Hash-Cancel-Zertifikat zu generieren:
quartus_pfg –ccert -o –ccert_type=CANCEL_KEY_HASH unsigned_root_cancel.ccert

Intel Agilex® 7 Device Security-Benutzerhandbuch 28

Feedback senden

4. Gerätebereitstellung 683823 | 2023.05.23

Führen Sie einen der folgenden Befehle aus, um das unsignierte Root-Key-Hash-Cancel-Kompaktzertifikat zu signieren:
quartus_sign –family=agilex –operation=SIGN –qky=design0_sign_chain.qky –pem=design0_private.pem –cancel=svnA:0 unsigned_root_cancel.ccert signiert_root_cancel.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“ –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_root_cancel.ccert signiert_root_cancel.ccert
Sie können ein kompaktes Root-Key-Hash-Cancel-Zertifikat über J programmierenTAG, FPGA- oder HPS-Postfächer.

4.6. Zählersicherungen programmieren
Sie aktualisieren die Security Version Number (SVN) und Pseudo Time Stamp (PTS)-Zählersicherungen mittels signierter Kompaktzertifikate.

Notiz:

Der SDM verfolgt den minimalen Zählerwert, der während einer bestimmten Konfiguration angezeigt wird, und akzeptiert keine Zählererhöhungszertifikate, wenn der Zählerwert kleiner als der Mindestwert ist. Sie müssen alle einem Zähler zugewiesenen Objekte aktualisieren und das Gerät neu konfigurieren, bevor Sie ein kompaktes Zählerinkrementzertifikat programmieren.

Führen Sie einen der folgenden Befehle aus, der dem Zählerinkrementzertifikat entspricht, das Sie generieren möchten.
quartus_pfg –ccert -o ccert_type=PTS_COUNTER -o counter= unsigned_pts.ccert

quartus_pfg –ccert -o ccert_type=SVN_COUNTER_A -o counter= unsigned_svnA.ccert

quartus_pfg –ccert -o ccert_type=SVN_COUNTER_B -o counter= unsigned_svnB.ccert

quartus_pfg –ccert -o ccert_type=SVN_COUNTER_C -o counter= unsigned_svnC.ccert

quartus_pfg –ccert -o ccert_type=SVN_COUNTER_D -o counter= unsigned_svnD.ccert

Ein Zählerwert von 1 erstellt ein Autorisierungszertifikat für die Zählererhöhung. Durch die Programmierung eines kompakten Zertifikats zur Zählererhöhungsautorisierung können Sie weitere unsignierte Zählererhöhungszertifikate programmieren, um den jeweiligen Zähler zu aktualisieren. Sie verwenden das Tool quartus_sign, um die Counter-Compact-Zertifikate auf ähnliche Weise wie Key-Cancelling-ID-Compact-Zertifikate zu signieren.
Sie können ein kompaktes Root-Key-Hash-Cancel-Zertifikat über J programmierenTAG, FPGA- oder HPS-Postfächer.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 29

4. Gerätebereitstellung 683823 | 2023.05.23

4.7. Sichere Bereitstellung von Stammschlüsseln für Datenobjektdienste
Sie verwenden den Intel Quartus Prime Programmer, um den Secure Data Object Service (SDOS)-Root-Schlüssel bereitzustellen. Der Programmierer lädt automatisch das Bereitstellungs-Firmware-Hilfsbild, um den SDOS-Root-Schlüssel bereitzustellen.
quartus_pgm c 1 m jtag –service_root_key –non_volatile_key

4.8. Sicherungsbereitstellung für Sicherheitseinstellungen
Verwenden Sie den Intel Quartus Prime Programmer, um die Sicherungen der Gerätesicherheitseinstellungen zu untersuchen und sie in eine textbasierte .fuse zu schreiben file wie folgt:
quartus_pgm -c 1 -mjtag -o „ei;programming_file.fuse;AGFB014R24B“

Optionen · i: Der Programmierer lädt das Bereitstellungs-Firmware-Hilfsbild auf das Gerät. · e: Der Programmierer liest die Sicherung vom Gerät und speichert sie in einer Sicherung file.

Die Sicherung file enthält eine Liste von Fuse-Name-Wert-Paaren. Der Wert gibt an, ob eine Sicherung durchgebrannt ist oder den Inhalt des Sicherungsfelds.

Das folgende Beispielample zeigt das Format der .fuse file:

# Mitsignierte Firmware

= „Nicht durchgebrannt“

# Device Permit Kill

= „Nicht durchgebrannt“

# Gerät nicht sicher

= „Nicht durchgebrannt“

# HPS-Debug deaktivieren

= „Nicht durchgebrannt“

# Deaktivieren Sie die PUF-Registrierung mit intrinsischer ID

= „Nicht durchgebrannt“

# J deaktivierenTAG

= „Nicht durchgebrannt“

# Deaktivieren Sie den PUF-verpackten Verschlüsselungsschlüssel

= „Nicht durchgebrannt“

# Besitzerverschlüsselungsschlüssel im BBRAM deaktivieren = „Nicht durchgebrannt“

# Eigentümerverschlüsselungsschlüssel in eFuses deaktivieren = „Nicht durchgebrannt“

# Deaktivieren Sie den Hash 0 des öffentlichen Root-Schlüssels des Besitzers

= „Nicht durchgebrannt“

# Deaktivieren Sie den Hash 1 des öffentlichen Root-Schlüssels des Besitzers

= „Nicht durchgebrannt“

# Deaktivieren Sie den Hash 2 des öffentlichen Root-Schlüssels des Besitzers

= „Nicht durchgebrannt“

# Virtuelle eFuses deaktivieren

= „Nicht durchgebrannt“

# SDM-Takt auf internen Oszillator erzwingen = „Nicht durchgebrannt“

# Aktualisierung des Verschlüsselungsschlüssels erzwingen

= „Nicht durchgebrannt“

# Explizite Schlüsselaufhebung durch Intel

= „0“

# Sicherheits-eFuses sperren

= „Nicht durchgebrannt“

# Eigentümer-Verschlüsselungsschlüsselprogramm abgeschlossen

= „Nicht durchgebrannt“

# Start des Besitzer-Verschlüsselungsschlüsselprogramms

= „Nicht durchgebrannt“

# Besitzer explizite Schlüsselstornierung 0

= „“

# Besitzer explizite Schlüsselstornierung 1

= „“

# Besitzer explizite Schlüsselstornierung 2

= „“

# Eigentümersicherungen

=

„0x00000000000000000000000000000000000000000000000000000

00000000000000000000000000000000000000000000000000000

0000000000000000000000”

# Besitzer-Root-Public-Key-Hash 0

=

„0x00000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000”

# Besitzer-Root-Public-Key-Hash 1

=

„0x00000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000”

# Besitzer-Root-Public-Key-Hash 2

=

„0x00000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000”

# Größe des öffentlichen Root-Schlüssels des Besitzers

= „Keine“

# PTS-Zähler

= „0“

# PTS-Thekenbasis

= „0“

Intel Agilex® 7 Device Security-Benutzerhandbuch 30

Feedback senden

4. Gerätebereitstellung 683823 | 2023.05.23

# QSPI-Startverzögerung # RMA-Zähler # SDMIO0 ist I2C # SVN-Zähler A # SVN-Zähler B # SVN-Zähler C # SVN-Zähler D

= „10ms“ = „0“ = „Nicht durchgebrannt“ = „0“ = „0“ = „0“ = „0“

Ändern Sie die Sicherung file um die gewünschten Sicherheitseinstellungen einzustellen. Eine Zeile, die mit # beginnt, wird als Kommentarzeile behandelt. Um eine Sicherung mit Sicherheitseinstellung zu programmieren, entfernen Sie das führende # und setzen Sie den Wert auf Durchgebrannt. Zum BeispielampUm die Sicherheitseinstellung „Co-signed Firmware“ zu aktivieren, ändern Sie die erste Zeile der Sicherung file Zu dem Folgendem:
Mitsignierte Firmware = „Blown“

Sie können die Eigentümersicherungen auch entsprechend Ihren Anforderungen zuweisen und programmieren.
Sie können den folgenden Befehl verwenden, um eine Blankoprüfung durchzuführen, den öffentlichen Root-Schlüssel des Eigentümers zu programmieren und zu überprüfen:
quartus_pgm -c 1 -mjtag -o „ibpv;root0.qky“

Optionen · i: Lädt das Bereitstellungs-Firmware-Hilfsbild auf das Gerät. · b: Führt eine Blankoprüfung durch, um sicherzustellen, dass die gewünschten Sicherheitseinstellungen nicht vorhanden sind
schon durchgebrannt. · p: Programmiert die Sicherung. · v: Überprüft den programmierten Schlüssel auf dem Gerät.
Nach der Programmierung der .qky file, können Sie die Sicherungsinformationen überprüfen, indem Sie die Sicherungsinformationen erneut überprüfen, um sicherzustellen, dass sowohl der Hash des öffentlichen Schlüssels des Besitzers als auch die Größe des öffentlichen Schlüssels des Besitzers Werte ungleich Null haben.
Während die folgenden Felder nicht über die .fuse beschreibbar sind file -Methode werden sie während der Untersuchungsvorgangsausgabe zur Überprüfung einbezogen: · Gerät nicht sicher · Gerät erlaubt Kill · Deaktivieren Sie den Hash 0 des öffentlichen Root-Schlüssels des Besitzers. · Deaktivieren Sie den Hash 1 des öffentlichen Schlüssels des Besitzers Root. · Deaktivieren Sie den Hash 2 des öffentlichen Root-Schlüssels des Besitzers · Löschung des Intel-Schlüssels · Start des Besitzer-Verschlüsselungsschlüsselprogramms · Besitzer-Verschlüsselungsschlüsselprogramm abgeschlossen · Eigentümerschlüssel-Stornierung · Besitzer-Hash des öffentlichen Schlüssels · Größe des öffentlichen Schlüssels des Besitzers · Besitzer-Root-Hash des öffentlichen Schlüssels 0 · Besitzer-Root-Hash des öffentlichen Schlüssels 1 · Besitzer-Root-Hash des öffentlichen Schlüssels 2

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 31

4. Gerätebereitstellung 683823 | 2023.05.23
· PTS-Zähler · PTS-Zählerbasis · QSPI-Startverzögerung · RMA-Zähler · SDMIO0 ist I2C · SVN-Zähler A · SVN-Zähler B · SVN-Zähler C · SVN-Zähler D
Verwenden Sie den Intel Quartus Prime Programmer, um die Sicherung zu programmieren file zurück zum Gerät. Wenn Sie die Option i hinzufügen, lädt der Programmierer automatisch die Bereitstellungs-Firmware, um die Sicherungen der Sicherheitseinstellungen zu programmieren.
//Für physische (nichtflüchtige) eFuses quartus_pgm -c 1 -m jtag -o „pi;programmierung_file.fuse“ –non_volatile_key
//Für virtuelle (flüchtige) eFuses quartus_pgm -c 1 -m jtag -o „pi;programmierung_file.Sicherung"
Sie können den folgenden Befehl verwenden, um zu überprüfen, ob der Geräte-Root-Key-Hash mit der im Befehl angegebenen .qky-Datei übereinstimmt:
quartus_pgm -c 1 -mjtag -o „v;root0_another.qky“
Wenn die Schlüssel nicht übereinstimmen, schlägt der Programmierer mit der Fehlermeldung „Vorgang fehlgeschlagen“ fehl.
4.9. Bereitstellung von AES-Root-Schlüsseln
Sie müssen ein signiertes AES-Root-Key-Kompaktzertifikat verwenden, um einen AES-Root-Schlüssel für ein Intel Agilex 7-Gerät zu programmieren.
4.9.1. AES Root Key Compact-Zertifikat
Sie verwenden das Befehlszeilentool quartus_pfg, um Ihren AES-Root-Schlüssel .qek zu konvertieren file in das kompakte Zertifikatsformat .ccert. Den Speicherort des Schlüssels legen Sie beim Erstellen des Kompaktzertifikats fest. Sie können das Tool quartus_pfg verwenden, um ein nicht signiertes Zertifikat zum späteren Signieren zu erstellen. Sie müssen eine Signaturkette mit der Berechtigung zum Signieren von AES-Stammschlüsselzertifikaten (Berechtigungsbit 6) verwenden, um ein AES-Stammschlüssel-Kompaktzertifikat erfolgreich zu signieren.

Intel Agilex® 7 Device Security-Benutzerhandbuch 32

Feedback senden

4. Gerätebereitstellung 683823 | 2023.05.23
1. Erstellen Sie mit einem der folgenden Befehle ein zusätzliches Schlüsselpaar, das zum Signieren des AES-Schlüsselkompaktzertifikats verwendet wirdamples:
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 aesccert1_private.pem
quartus_sign –family=agilex –operation=make_public_pem aesccert1_private.pem aesccert1_public.pem
pkcs11-tool –module=/usr/local/lib/softhsm/libsofthsm2.so –token-label agilex-token –login –pin agilex-token-pin –keypairgen-mechanismus ECDSA-KEY-PAIR-GEN –key-type EC: secp384r1 –usage-sign –label aesccert1 –id 2
2. Erstellen Sie mit einem der folgenden Befehle eine Signaturkette mit dem richtigen Berechtigungsbitsatz:
quartus_sign –family=agilex –operation=append_key – previous_pem=root0_private.pem – previous_qky=root0.qky –permission=0x40 –cancel=1 –input_pem=aesccert1_public.pem aesccert1_sign_chain.qky
quartus_sign –family=agilex –operation=append_key –module=softHSM -module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“ – previous_keyname= root0 – previous_qky=root0.qky –permission=0x40 –cancel=1 –input_keyname=aesccert1 aesccert1_sign_chain.qky
3. Erstellen Sie ein unsigniertes AES-Kompaktzertifikat für den gewünschten AES-Root-Key-Speicherort. Die folgenden AES-Root-Key-Speicheroptionen sind verfügbar:
· EFUSE_WRAPPED_AES_KEY
· IID_PUF_WRAPPED_AES_KEY
· UDS_IID_PUF_WRAPPED_AES_KEY
· BBRAM_WRAPPED_AES_KEY
· BBRAM_IID_PUF_WRAPPED_AES_KEY
· BBRAM_UDS_IID_PUF_WRAPPED_AES_KEY
//Unsigniertes eFuse-AES-Root-Key-Zertifikat erstellen quartus_pfg –ccert -o ccert_type=EFUSE_WRAPPED_AES_KEY -o qek_file=aes.qek unsigned_efuse1.ccert
4. Signieren Sie das Kompaktzertifikat mit dem Befehl quartus_sign oder der Referenzimplementierung.
quartus_sign –family=agilex –operation=sign –pem=aesccert1_private.pem –qky=aesccert1_sign_chain.qky unsigned_1.ccert signiert_1.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=“–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so“

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 33

4. Gerätebereitstellung 683823 | 2023.05.23

–keyname=aesccert1 –qky=aesccert1_sign_chain.qky unsigned_1.ccert signiert_1.ccert
5. Verwenden Sie den Intel Quartus Prime Programmer, um das AES-Root-Key-Compact-Zertifikat über J auf dem Intel Agilex 7-Gerät zu programmierenTAG. Der Intel Quartus Prime Programmer programmiert standardmäßig virtuelle eFuses, wenn er den kompakten Zertifikatstyp EFUSE_WRAPPED_AES_KEY verwendet.
Sie fügen die Option –non_volatile_key hinzu, um die Programmierung physischer Sicherungen anzugeben.
//Für physischen (nichtflüchtigen) eFuse AES-Root-Schlüssel quartus_pgm -c 1 -m jtag -o „pi;signed_efuse1.ccert“ –non_volatile_key

//Für virtuellen (flüchtigen) eFuse AES-Root-Schlüssel quartus_pgm -c 1 -m jtag -o „pi;signed_efuse1.ccert“

//Für BBRAM AES-Root-Schlüssel quartus_pgm -c 1 -m jtag -o „pi;signed_bbram1.ccert“

Die SDM-Bereitstellungs-Firmware und die Haupt-Firmware unterstützen die AES-Root-Key-Zertifikatprogrammierung. Sie können auch die SDM-Mailbox-Schnittstelle der FPGA-Struktur oder HPS verwenden, um ein AES-Root-Schlüsselzertifikat zu programmieren.

Notiz:

Der Befehl quartus_pgm unterstützt die Optionen b und v für kompakte Zertifikate (.ccert) nicht.

4.9.2. Intrinsic ID® PUF AES Root Key Provisioning
Die Implementierung des mit Intrinsic* ID PUF umschlossenen AES-Schlüssels umfasst die folgenden Schritte: 1. Registrieren des Intrinsic ID PUF über JTAG. 2. Wrapping des AES-Root-Schlüssels. 3. Programmieren der Hilfsdaten und des verpackten Schlüssels in den Quad-SPI-Flash-Speicher. 4. Abfrage des Intrinsic ID PUF-Aktivierungsstatus.
Für die Nutzung der Intrinsic ID-Technologie ist eine separate Lizenzvereinbarung mit Intrinsic ID erforderlich. Die Intel Quartus Prime Pro Edition-Software beschränkt PUF-Vorgänge ohne die entsprechende Lizenz, wie z. B. Registrierung, Schlüsselumbruch und PUF-Datenprogrammierung auf QSPI-Flash.

4.9.2.1. Intrinsische ID-PUF-Registrierung
Um die PUF zu registrieren, müssen Sie die SDM-Bereitstellungs-Firmware verwenden. Die Bereitstellungs-Firmware muss die erste Firmware sein, die nach einem Aus- und Wiedereinschalten geladen wird, und Sie müssen den PUF-Registrierungsbefehl vor jedem anderen Befehl ausgeben. Die Bereitstellungs-Firmware unterstützt andere Befehle nach der PUF-Registrierung, einschließlich AES-Root-Key-Wrapping und Programmierung von Quad-SPI. Sie müssen das Gerät jedoch aus- und wieder einschalten, um einen Konfigurationsbitstrom zu laden.
Sie verwenden den Intel Quartus Prime Programmer, um die PUF-Registrierung auszulösen und die PUF-Hilfsdaten .puf zu generieren file.

Intel Agilex® 7 Device Security-Benutzerhandbuch 34

Feedback senden

4. Gerätebereitstellung 683823 | 2023.05.23

Abbildung 7.

Intrinsische ID-PUF-Registrierung
quartus_pgm PUF-Registrierung

Registrierungs-PUF-Hilfsdaten

Secure Device Manager (SDM)

wrapper.puf Hilfsdaten
Der Programmierer lädt automatisch ein Bereitstellungs-Firmware-Hilfsbild, wenn Sie sowohl den i-Vorgang als auch ein .puf-Argument angeben.
quartus_pgm -c 1 -mjtag -o „ei;help_data.puf;AGFB014R24A“
Wenn Sie mitsignierte Firmware verwenden, programmieren Sie das mitsignierte Firmware-Hilfsbild, bevor Sie den PUF-Registrierungsbefehl verwenden.
quartus_pgm -c 1 -mjtag -o „p;signed_provision_helper_image.rbf“ –force quartus_pgm -c 1 -m jtag -o „e;help_data.puf;AGFB014R24A“
Der UDS IID PUF wird während der Geräteherstellung registriert und kann nicht erneut registriert werden. Stattdessen verwenden Sie den Programmierer, um den Speicherort der UDS-PUF-Hilfsdaten auf IPCS zu ermitteln, und laden die .puf-Datei herunter file direkt und verwenden Sie dann die UDS-.puf-Datei file auf die gleiche Weise wie die .puf file extrahiert von einem Intel Agilex 7-Gerät.
Verwenden Sie den folgenden Programmierbefehl, um einen Text zu generieren file mit einer Liste von URLs verweist auf gerätespezifisch files auf IPCS:
quartus_pgm -c 1 -mjtag -o „e;ipcs_urls.txt;AGFB014R24B“ –ipcs_urls
4.9.2.2. Verpacken des AES-Root-Schlüssels
Sie generieren den mit IID PUF verpackten AES-Rootschlüssel .wkey file durch Senden eines signierten Zertifikats an den SDM.
Sie können den Intel Quartus Prime Programmer verwenden, um das Zertifikat automatisch zu generieren, zu signieren und zu senden, um Ihren AES-Root-Schlüssel zu verpacken, oder Sie können den Intel Quartus Prime Programming verwenden File Generator zum Generieren eines unsignierten Zertifikats. Sie signieren das nicht signierte Zertifikat mit Ihren eigenen Tools oder dem Quartus-Signaturtool. Anschließend verwenden Sie den Programmierer, um das signierte Zertifikat zu senden und Ihren AES-Root-Schlüssel zu verpacken. Das signierte Zertifikat kann zur Programmierung aller Geräte verwendet werden, die die Signaturkette validieren können.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 35

4. Gerätebereitstellung 683823 | 2023.05.23

Abbildung 8.

Verpacken des AES-Schlüssels mit dem Intel Quartus Prime Programmer
.pem Privat
Schlüssel

.qky

quartus_pgm

AES-Schlüssel umschließen

AES.QSKigYnature RootCPhuabilnic-Schlüssel

Generieren Sie einen PUF-verpackten Schlüssel

Verpackter AES-Schlüssel

SDM

.qek-Verschlüsselung
Schlüssel

.wkey PUF-verpackt
AES-Schlüssel

1. Sie können den mit IID PUF verpackten AES-Root-Schlüssel (.wkey) mit dem Programmierer unter Verwendung der folgenden Argumente generieren:
· Die .qky file Enthält eine Signaturkette mit AES-Root-Key-Zertifikatberechtigung
· Die private .pem file für den letzten Schlüssel in der Signaturkette
· Die .qek file Halten Sie den AES-Root-Schlüssel gedrückt
· Der 16-Byte-Initialisierungsvektor (iv).

quartus_pgm -c 1 -mjtag –qky_file=aes0_sign_chain.qky –pem_file=aes0_sign_private.pem –qek_file=aes.qek –iv=1234567890ABCDEF1234567890ABCDEF -o „ei;aes.wkey;AGFB014R24A“

2. Alternativ können Sie mit der Programmierung ein nicht signiertes IID-PUF-umhüllendes AES-Root-Key-Zertifikat generieren File Generator mit den folgenden Argumenten:

quartus_pfg –ccert -o ccert_type=IID_PUF_WRAPPED_AES_KEY -o qek_file=aes.qek –iv=1234567890ABCDEF1234567890ABCDEF unsigned_aes.ccert

3. Sie signieren das unsignierte Zertifikat mit Ihren eigenen Signierungstools oder dem Tool quartus_sign mit dem folgenden Befehl:

quartus_sign –family=agilex –operation=sign –qky=aes0_sign_chain.qky –pem=aes0_sign_private.pem unsigned_aes.ccert signiert_aes.ccert

4. Anschließend verwenden Sie den Programmierer, um das signierte AES-Zertifikat zu senden und den verpackten Schlüssel (.wkey) zurückzugeben. file:

quarts_pgm -c 1 -mjtag –ccert_file=signed_aes.ccert -o „ei;aes.wkey;AGFB014R24A“

Hinweis: Der i-Vorgang ist nicht erforderlich, wenn Sie beispielsweise zuvor das Bereitstellungs-Firmware-Hilfsbild geladen habenample, um die PUF anzumelden.

4.9.2.3. Programmierhilfsdaten und verpackter Schlüssel zum QSPI-Flash-Speicher
Sie verwenden die Quartus-Programmierung File Grafische Benutzeroberfläche des Generators zum Erstellen eines ersten QSPI-Flash-Images, das eine PUF-Partition enthält. Sie müssen ein vollständiges Flash-Programmierimage generieren und programmieren, um dem QSPI-Flash eine PUF-Partition hinzuzufügen. Gründung der PUF

Intel Agilex® 7 Device Security-Benutzerhandbuch 36

Feedback senden

4. Gerätebereitstellung 683823 | 2023.05.23

Abbildung 9.

Datenpartition und Verwendung der PUF-Hilfsdaten und des verpackten Schlüssels files für die Flash-Image-Generierung werden von der Programmierung nicht unterstützt File Generator-Befehlszeilenschnittstelle.
Die folgenden Schritte veranschaulichen die Erstellung eines Flash-Programmierimages mit den PUF-Hilfsdaten und dem umschlossenen Schlüssel:
1. Auf der File Klicken Sie im Menü auf „Programmierung“. File Generator. Auf der Ausgabe FileNehmen Sie auf der Registerkarte s die folgende Auswahl vor:
A. Wählen Sie als Gerätefamilie Agilex 7 aus.
B. Wählen Sie für den Konfigurationsmodus Active Serial x4 aus.
C. Navigieren Sie für das Ausgabeverzeichnis zu Ihrer Ausgabe file Verzeichnis. Dieser Example verwendet Output_files.
D. Geben Sie unter Name einen Namen für die Programmierung an file generiert werden. Dieser Example verwendet Output_file.
e. Wählen Sie unter Beschreibung die Programmierung aus files zu generieren. Dieser Example generiert das JTAG Indirekte Konfiguration File (.jic) für die Gerätekonfiguration und die Rohbinärdatei File des Programming Helper Image (.rbf) für das Device Helper Image. Dieser Example wählt auch die optionale Speicherzuordnung aus File (.map) und rohe Programmierdaten File (.rpd). Die rohen Programmierdaten file Dies ist nur erforderlich, wenn Sie in Zukunft einen Programmierer eines Drittanbieters verwenden möchten.
Programmierung File Generator – Ausgang Files Tab – Wählen Sie JTAG Indirekte Konfiguration

Gerätefamilien-Konfigurationsmodus
Ausgabe file Tab
Ausgabeverzeichnis
JTAG Indirekte (.jic) Speicherzuordnung File Programmierhelfer-Rohprogrammierdaten
Auf der Eingabe FileTreffen Sie auf der Registerkarte s die folgende Auswahl: 1. Klicken Sie auf Bitstream hinzufügen und navigieren Sie zu Ihrer .sof. 2. Wählen Sie Ihre .sof aus file Klicken Sie dann auf Eigenschaften.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 37

4. Gerätebereitstellung 683823 | 2023.05.23
A. Aktivieren Sie Signierungstool aktivieren. B. Für privaten Schlüssel file Wählen Sie Ihre .pem-Datei aus file. C. Aktivieren Sie die Option „Verschlüsselung abschließen“. D. Für Verschlüsselungsschlüssel file Wählen Sie Ihre .qek aus file. e. Klicken Sie auf OK, um zum vorherigen Fenster zurückzukehren. 3. Um Ihre PUF-Hilfsdaten anzugeben file, klicken Sie auf Rohdaten hinzufügen. Ändere das Files-Typ-Dropdown-Menü zur Quartus Physical Unclonable Function File (*.puf). Navigieren Sie zu Ihrer .puf-Datei file. Wenn Sie sowohl die IID-PUF als auch die UDS-IID-PUF verwenden, wiederholen Sie diesen Schritt, damit .puf files für jede PUF werden als Eingabe hinzugefügt fileS. 4. Um Ihren verpackten AES-Schlüssel anzugeben file, klicken Sie auf Rohdaten hinzufügen. Ändere das Files-Typ-Dropdown-Menü zu Quartus Wrapped Key File (*.wkey). Navigieren Sie zu Ihrem .wkey file. Wenn Sie AES-Schlüssel sowohl mit der IID-PUF als auch mit der UDS-IID-PUF verpackt haben, wiederholen Sie diesen Schritt, damit .wkey files für jede PUF werden als Eingabe hinzugefügt files.
Abbildung 10. Eingabe angeben Files für Konfiguration, Authentifizierung und Verschlüsselung

Bitstream hinzufügen Rohdaten hinzufügen
Eigenschaften
Privater Schlüssel file
Verschlüsselung abschließen. Verschlüsselungsschlüssel
Treffen Sie auf der Registerkarte „Konfigurationsgerät“ die folgenden Auswahlmöglichkeiten: 1. Klicken Sie auf Gerät hinzufügen und wählen Sie Ihr Flash-Gerät aus der Liste der verfügbaren Flash-Geräte aus
Geräte. 2. Wählen Sie das gerade hinzugefügte Konfigurationsgerät aus und klicken Sie auf Partition hinzufügen. 3. Im Dialogfeld „Partition bearbeiten“ für die Eingabe file und wählen Sie Ihre .sof aus
Dropdown-Liste. Sie können die Standardeinstellungen beibehalten oder die anderen Parameter im Dialogfeld „Partition bearbeiten“ bearbeiten.

Intel Agilex® 7 Device Security-Benutzerhandbuch 38

Feedback senden

4. Gerätebereitstellung 683823 | 2023.05.23
Abbildung 11. Angeben Ihrer .sof-Konfigurations-Bitstream-Partition

Konfigurationsgerät
Partition bearbeiten .sof hinzufügen file

Partition hinzufügen

4. Wenn Sie .puf und .wkey als Eingabe hinzufügen files, die Programmierung File Der Generator erstellt automatisch eine PUF-Partition in Ihrem Konfigurationsgerät. Um die .puf- und .wkey-Dateien in der PUF-Partition zu speichern, wählen Sie die PUF-Partition aus und klicken Sie auf Bearbeiten. Wählen Sie im Dialogfeld „Partition bearbeiten“ Ihre .puf- und .wkey-Datei aus files aus den Dropdown-Listen. Wenn Sie die PUF-Partition entfernen, müssen Sie das Konfigurationsgerät für die Programmierung entfernen und erneut hinzufügen File Generator zum Erstellen einer weiteren PUF-Partition. Sie müssen sicherstellen, dass Sie die richtige .puf- und .wkey-Datei auswählen file für die IID PUF bzw. UDS IID PUF.
Abbildung 12. Fügen Sie .puf und .wkey hinzu files zur PUF-Partition

PUF-Partition

Bearbeiten

Partition bearbeiten

Flash-Loader

Wählen Sie „Generieren“.

5. Wählen Sie für den Parameter „Flash Loader“ die Intel Agilex 7-Gerätefamilie und den Gerätenamen aus, der Ihrem Intel Agilex 7 OPN entspricht.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 39

4. Gerätebereitstellung 683823 | 2023.05.23
6. Klicken Sie auf „Generieren“, um die Ausgabe zu generieren files, die Sie in der Ausgabe angegeben haben Files-Registerkarte.
7. Die Programmierung File Der Generator liest Ihre .qek file und fordert Sie zur Eingabe Ihrer Passphrase auf. Geben Sie als Antwort auf die Eingabeaufforderung „QEK-Passphrase eingeben“ Ihre Passphrase ein. Klicken Sie auf die Eingabetaste.
8. Klicken Sie auf OK, wenn die Programmierung abgeschlossen ist File Generator meldet erfolgreiche Generierung.
Sie verwenden den Intel Quartus Prime Programmer, um das QSPI-Programmierbild in den QSPI-Flash-Speicher zu schreiben. 1. Wählen Sie im Intel Quartus Prime Tools-Menü die Option Programmierer. 2. Klicken Sie im Programmiergerät auf Hardware-Setup und wählen Sie dann einen angeschlossenen Intel aus
FPGA-Downloadkabel. 3. Klicken Sie auf Hinzufügen File und navigieren Sie zu Ihrer .jic-Datei file.
Abbildung 13. Programm .jic

Programmierung file

Programmieren/Konfigurieren

JTAG Scan-Kette
4. Deaktivieren Sie das Kontrollkästchen für das Hilfsbild. 5. Wählen Sie „Programmieren/Konfigurieren“ für die .jic-Ausgabe file. 6. Schalten Sie die Starttaste ein, um Ihren Quad-SPI-Flash-Speicher zu programmieren. 7. Schalten Sie Ihr Board aus und wieder ein. Das Design ist auf den Quad-SPI-Flash-Speicher programmiert
Anschließend wird das Gerät in das Ziel-FPGA geladen.
Sie müssen ein vollständiges Flash-Programmier-Image generieren und programmieren, um dem Quad-SPI-Flash eine PUF-Partition hinzuzufügen.
Wenn im Flash bereits eine PUF-Partition vorhanden ist, ist es möglich, mit dem Intel Quartus Prime Programmer direkt auf die PUF-Hilfsdaten und den verpackten Schlüssel zuzugreifen files. Zum Beispielample, wenn die Aktivierung nicht erfolgreich ist, ist es möglich, die PUF erneut zu registrieren, den AES-Schlüssel erneut zu verpacken und anschließend nur die PUF zu programmieren files, ohne den gesamten Flash überschreiben zu müssen.

Intel Agilex® 7 Device Security-Benutzerhandbuch 40

Feedback senden

4. Gerätebereitstellung 683823 | 2023.05.23
Der Intel Quartus Prime Programmer unterstützt das folgende Operationsargument für PUF files in einer bereits vorhandenen PUF-Partition:
· p: Programm
· v: überprüfen
· r: löschen
· b: Blankoscheck
Sie müssen die gleichen Einschränkungen für die PUF-Registrierung befolgen, auch wenn eine PUF-Partition vorhanden ist.
1. Verwenden Sie das Operationsargument „i“, um das Bereitstellungs-Firmware-Hilfsbild für den ersten Vorgang zu laden. Zum Beispielample, die folgende Befehlssequenz registriert die PUF erneut, umschließt den AES-Root-Schlüssel neu, löscht die alten PUF-Hilfsdaten und den umschlossenen Schlüssel und programmiert und überprüft dann die neuen PUF-Hilfsdaten und den AES-Root-Schlüssel.
quartus_pgm -c 1 -mjtag -o „ei;new.puf;AGFB014R24A“ quartus_pgm -c 1 -m jtag –ccert_file=signed_aes.ccert -o „e;new.wkey;AGFB014R24A“ quartus_pgm -c 1 -m jtag -o „r;old.puf“ quartus_pgm -c 1 -m jtag -o „r;old.wkey“ quartus_pgm -c 1 -m jtag -o „p;new.puf“ quartus_pgm -c 1 -m jtag -o „p;new.wkey“ quartus_pgm -c 1 -m jtag -o „v;new.puf“ quartus_pgm -c 1 -m jtag -o „v;new.wkey“
4.9.2.4. Abfrage des Intrinsic-ID-PUF-Aktivierungsstatus
Nachdem Sie die Intrinsic ID PUF registriert haben, verpacken Sie einen AES-Schlüssel und generieren Sie die Flash-Programmierung files und den Quad-SPI-Flash aktualisieren, schalten Sie Ihr Gerät aus und wieder ein, um die PUF-Aktivierung und -Konfiguration aus dem verschlüsselten Bitstrom auszulösen. Der SDM meldet den PUF-Aktivierungsstatus zusammen mit dem Konfigurationsstatus. Wenn die PUF-Aktivierung fehlschlägt, meldet der SDM stattdessen den PUF-Fehlerstatus. Verwenden Sie den Befehl quartus_pgm, um den Konfigurationsstatus abzufragen.
1. Verwenden Sie den folgenden Befehl, um den Aktivierungsstatus abzufragen:
quartus_pgm -c 1 -mjtag –status –status_type=“CONFIG“
Hier ist sample Ausgabe nach einer erfolgreichen Aktivierung:
Info (21597): Antwort von CONFIG_STATUS Gerät läuft im Benutzermodus 00006000 RESPONSE_CODE=OK, LENGTH=6 00000000 STATE=IDLE 00160300 Version C000007B MSEL=QSPI_NORMAL, nSTATUS=1, nCONFIG=1, VID=1,
CLOCK_SOURCE=INTERNAL_PLL 0000000B CONF_DONE=1, INIT_DONE=1, CVP_DONE=0, SEU_ERROR=1 00000000 Fehlerort 00000000 Fehlerdetails Antwort von PUF_STATUS 00002000 RESPONSE_CODE=OK, LENGTH=2 00000500 USER_IID STATUS= PUF_ACTIVATION_SUCCESS,
RELIABILITY_DIAGNOSTIC_SCORE=5, TEST_MODE=0 00000500 UDS_IID STATUS=PUF_ACTIVATION_SUCCESS,
RELIABILITY_DIAGNOSTIC_SCORE=5, TEST_MODE=0

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 41

4. Gerätebereitstellung 683823 | 2023.05.23

Wenn Sie nur entweder die IID-PUF oder die UDS-IID-PUF verwenden und keine Hilfsdaten-.puf programmiert haben file Für jeden PUF im QSPI-Flash wird dieser PUF nicht aktiviert und der PUF-Status spiegelt wider, dass die PUF-Hilfsdaten ungültig sind. Das folgende Beispielample zeigt den PUF-Status, wenn die PUF-Hilfsdaten für keinen der PUFs programmiert wurden:
Antwort von PUF_STATUS 00002000 RESPONSE_CODE=OK, LENGTH=2 00000002 USER_IID STATUS=PUF_DATA_CORRUPTED,
RELIABILITY_DIAGNOSTIC_SCORE=0, TEST_MODE=0 00000002 UDS_IID STATUS=PUF_DATA_CORRUPTED,
RELIABILITY_DIAGNOSTIC_SCORE=0, TEST_MODE=0

4.9.2.5. Speicherort der PUF im Flash-Speicher
Der Standort des PUF file ist bei Designs, die RSU unterstützen, und Designs, die die RSU-Funktion nicht unterstützen, unterschiedlich.

Für Designs, die RSU nicht unterstützen, müssen Sie .puf und .wkey einschließen files, wenn Sie aktualisierte Flash-Images erstellen. Bei Designs, die RSU unterstützen, überschreibt der SDM die PUF-Datenabschnitte bei Werks- oder Anwendungs-Image-Updates nicht.

Tabelle 2.

Layout von Flash-Unterpartitionen ohne RSU-Unterstützung

Flash-Offset (in Bytes)

Größe (in Bytes)

Inhalt

Beschreibung

0 256

256 256

Konfigurationsmanagement-Firmware Konfigurationsmanagement-Firmware

Firmware, die auf SDM läuft.

512

256

Konfigurationsmanagement-Firmware

768

256

Konfigurationsmanagement-Firmware

1M

32

PUF-Datenkopie 0

Datenstruktur zum Speichern von PUF-Hilfsdaten und der PUF-verpackten AES-Root-Schlüsselkopie 0

1 Mio. + 32

32

PUF-Datenkopie 1

Datenstruktur zum Speichern von PUF-Hilfsdaten und der PUF-verpackten AES-Root-Schlüsselkopie 1

Tabelle 3.

Layout von Flash-Unterpartitionen mit RSU-Unterstützung

Flash-Offset (in Bytes)

Größe (in Bytes)

Inhalt

Beschreibung

0 512

512 512

Entscheidungsfirmware Entscheidungsfirmware

Firmware zum Identifizieren und Laden des Bildes mit der höchsten Priorität.

1M 1.5M

512 512

Entscheidungsfirmware Entscheidungsfirmware

2M

8K + 24K

Entscheidungs-Firmware-Daten

Polsterung

Reserviert für die Verwendung der Decision-Firmware.

2M + 32K

32

Reserviert für SDM

Reserviert für SDM.

2M + 64K

Variable

Fabrikbild

Ein einfaches Image, das Sie als Backup erstellen, falls alle anderen Anwendungsimages nicht geladen werden können. Dieses Image enthält das CMF, das auf dem SDM ausgeführt wird.

Nächste

32

PUF-Datenkopie 0

Datenstruktur zum Speichern von PUF-Hilfsdaten und der PUF-verpackten AES-Root-Schlüsselkopie 0
Fortsetzung…

Intel Agilex® 7 Device Security-Benutzerhandbuch 42

Feedback senden

4. Gerätebereitstellung 683823 | 2023.05.23

Flash-Offset (in Bytes)

Größe (in Bytes)

Weiter +32K 32K

Inhalt PUF-Datenkopie 1

Weiter + 256K 4K Weiter +32K 4K Weiter +32K 4K

Kopie der Unterpartitionstabelle 0 Kopie der Unterpartitionstabelle 1 CMF-Zeigerblockkopie 0

Weiter +32K _

CMF-Zeigerblockkopie 1

Variable Variable

Variable Variable

Anwendungsbild 1 Anwendungsbild 2

4.9.3. Black-Key-Bereitstellung

Beschreibung
Datenstruktur zum Speichern von PUF-Hilfsdaten und der PUF-verpackten AES-Root-Schlüsselkopie 1
Datenstruktur zur Erleichterung der Verwaltung des Flash-Speichers.
Eine Liste von Verweisen auf Anwendungsbilder in der Reihenfolge ihrer Priorität. Wenn Sie ein Bild hinzufügen, wird dieses Bild zum höchsten.
Eine zweite Kopie der Liste der Verweise auf Anwendungsbilder.
Ihr erstes Bewerbungsbild.
Ihr zweites Bewerbungsbild.

Notiz:

Der Intel Quartus PrimeProgrammer hilft beim Aufbau einer gegenseitig authentifizierten sicheren Verbindung zwischen dem Intel Agilex 7-Gerät und dem Black-Key-Bereitstellungsdienst. Die sichere Verbindung erfolgt über https und erfordert mehrere Zertifikate, die über einen Text identifiziert werden file.
Wenn Sie Black Key Provisioning verwenden, empfiehlt Intel, den TCK-Pin nicht extern anzuschließen, um einen Widerstand hoch- oder herunterzuziehen, während Sie ihn weiterhin für J verwendenTAG. Sie können den TCK-Pin jedoch über einen 10-k-Widerstand mit der VCCIO-SDM-Stromversorgung verbinden. Zur Rauschunterdrückung ist die bestehende Anleitung in den Pin Connection Guidelines zum Anschluss von TCK an einen 1-k-Pulldown-Widerstand enthalten. Die Umstellung auf einen 10-k-Pull-up-Widerstand hat keinen Einfluss auf die Funktionalität des Geräts. Weitere Informationen zum Anschließen des TCK-Pins finden Sie in den Intel Agilex 7 Pin Connection Guidelines.
Thebkp_tls_ca_certcertificate authentifiziert Ihre Black-Key-Bereitstellungsdienstinstanz gegenüber Ihrer Black-Key-Bereitstellungs-Programmiererinstanz. Die bkp_tls_*certificates authentifizieren Ihre Black-Key-Provisioning-Programmierer-Instanz gegenüber Ihrer Black-Key-Provisioning-Service-Instanz.
Sie erstellen einen Text file Enthält die notwendigen Informationen, damit der Intel Quartus Prime Programmer eine Verbindung zum Black-Key-Bereitstellungsdienst herstellen kann. Um die Black-Key-Bereitstellung zu initiieren, verwenden Sie die Programmer-Befehlszeilenschnittstelle, um den Optionstext für die Black-Key-Bereitstellung anzugeben file. Die Black-Key-Bereitstellung erfolgt dann automatisch. Für Zugriff auf den Black-Key-Bereitstellungsdienst und die zugehörige Dokumentation wenden Sie sich bitte an den Intel Support.
Sie können die Black-Key-Bereitstellung mit dem Befehl thequartus_pgm aktivieren:
quartus_pgm -c -m –device –bkp_options=bkp_options.txt
Die Befehlsargumente geben die folgenden Informationen an:

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 43

4. Gerätebereitstellung 683823 | 2023.05.23

· -c: Kabelnummer · -m: Gibt den Programmiermodus an, z. B. JTAG · –device: Gibt einen Geräteindex auf dem J anTAG Kette. Der Standardwert ist 1. · –bkp_options: Gibt einen Text an file Enthält Black-Key-Bereitstellungsoptionen.
Verwandte Informationen: Pin-Verbindungsrichtlinien für die Intel Agilex 7-Gerätefamilie

4.9.3.1. Black-Key-Bereitstellungsoptionen
Die Black-Key-Bereitstellungsoptionen sind ein Text file wird über den Befehl quartus_pgm an den Programmierer übergeben. Der file enthält die erforderlichen Informationen zum Auslösen der Black-Key-Bereitstellung.
Das Folgende ist ein BeispielampDatei der bkp_options.txt file:
bkp_cfg_id = 1 bkp_ip = 192.167.1.1 bkp_port = 10034 bkp_tls_ca_cert = root.cert bkp_tls_prog_cert = prog.cert bkp_tls_prog_key = prog_key.pem bkp_tls_prog_key_pass = 1234 bkp_proxy_ Adresse = https://192.167.5.5:5000 bkp_proxy_user = Proxy_Benutzer bkp_proxy_password = Proxy_Passwort

Tabelle 4.

Black-Key-Bereitstellungsoptionen
In dieser Tabelle werden die Optionen angezeigt, die zum Auslösen der Black-Key-Bereitstellung erforderlich sind.

Optionsname

Typ

Beschreibung

bkp_ip

Erforderlich

Gibt die IP-Adresse des Servers an, auf dem der Black-Key-Bereitstellungsdienst ausgeführt wird.

bkp_port

Erforderlich

Gibt den Port des Black-Key-Bereitstellungsdienstes an, der für die Verbindung mit dem Server erforderlich ist.

bkp_cfg_id

Erforderlich

Identifiziert die Black-Key-Bereitstellungskonfigurationsfluss-ID.
Der Black-Key-Bereitstellungsdienst erstellt die Konfigurationsabläufe für die Black-Key-Bereitstellung, einschließlich eines AES-Root-Schlüssels, der gewünschten eFuse-Einstellungen und anderer Autorisierungsoptionen für die Black-Key-Bereitstellung. Die während der Einrichtung des Black-Key-Bereitstellungsdienstes zugewiesene Nummer identifiziert die Konfigurationsabläufe für die Black-Key-Bereitstellung.
Hinweis: Mehrere Geräte können sich auf denselben Konfigurationsablauf für den Black-Key-Bereitstellungsdienst beziehen.

bkp_tls_ca_cert

Erforderlich

Das Root-TLS-Zertifikat, das zur Identifizierung der Black-Key-Bereitstellungsdienste für den Intel Quartus Prime Programmer (Programmer) verwendet wird. Eine vertrauenswürdige Zertifizierungsstelle für die Black-Key-Bereitstellungsdienstinstanz stellt dieses Zertifikat aus.
Wenn Sie den Programmierer auf einem Computer mit Microsoft® Windows®-Betriebssystem (Windows) ausführen, müssen Sie dieses Zertifikat im Windows-Zertifikatspeicher installieren.

bkp_tls_prog_cert

Erforderlich

Ein Zertifikat, das für die Instanz des Black-Key-Provisioning-Programmierers (BKP-Programmierer) erstellt wurde. Dies ist das https-Client-Zertifikat, das zur Identifizierung dieser BKP-Programmiererinstanz verwendet wird
Fortsetzung…

Intel Agilex® 7 Device Security-Benutzerhandbuch 44

Feedback senden

4. Gerätebereitstellung 683823 | 2023.05.23

Optionsname

Typ

bkp_tls_prog_key

Erforderlich

bkp_tls_prog_key_pass Optional

bkp_proxy_address bkp_proxy_user bkp_proxy_password

Optional Optional Optional

Beschreibung
zum Black-Key-Bereitstellungsdienst. Sie müssen dieses Zertifikat im Black-Key-Bereitstellungsdienst installieren und autorisieren, bevor Sie eine Black-Key-Bereitstellungssitzung starten. Wenn Sie den Programmierer unter Windows ausführen, ist diese Option nicht verfügbar. In diesem Fall enthält der bkp_tls_prog_key dieses Zertifikat bereits.
Der private Schlüssel, der dem BKP-Programmiererzertifikat entspricht. Der Schlüssel validiert die Identität der BKP-Programmiererinstanz gegenüber dem Black-Key-Bereitstellungsdienst. Wenn Sie den Programmierer unter Windows ausführen, wird die .pfx file kombiniert das bkp_tls_prog_cert-Zertifikat und den privaten Schlüssel. Die Option bkp_tlx_prog_key übergibt die PFX-Datei file in der bkp_options.txt file.
Das Passwort für den privaten Schlüssel bkp_tls_prog_key. Im Text zu den Black-Key-Bereitstellungskonfigurationsoptionen (bkp_options.txt) nicht erforderlich file.
Gibt den Proxyserver an URL Adresse.
Gibt den Benutzernamen des Proxyservers an.
Gibt das Proxy-Authentifizierungskennwort an.

4.10. Konvertieren von Besitzer-Root-Schlüsseln, AES-Root-Key-Zertifikaten und Fuse files zu Jam STAPL File Formate

Sie können den Befehlszeilenbefehl quartus_pfg verwenden, um .qky, den AES-Root-Schlüssel .ccert und .fuse zu konvertieren files, um das STAPL-Format zu blockieren File (.jam) und Jam Byte Code Format File (.jbc). Diese können Sie nutzen files zum Programmieren von Intel FPGAs mit dem Jam STAPL Player bzw. dem Jam STAPL Byte-Code Player.

Eine einzelne .jam- oder .jbc-Datei enthält mehrere Funktionen, darunter die Konfiguration und das Programm eines Firmware-Hilfsbilds, einen Blankocheck und die Überprüfung der Schlüssel- und Sicherungsprogrammierung.

Vorsicht:

Wenn Sie den AES-Root-Schlüssel .ccert konvertieren file zum .jam-Format, die .jam file enthält den AES-Schlüssel im Klartext, aber in verschleierter Form. Daher müssen Sie die .jam-Datei schützen file beim Speichern des AES-Schlüssels. Sie können dies tun, indem Sie den AES-Schlüssel in einer sicheren Umgebung bereitstellen.

Hier sind ExampDateien der quartus_pfg-Konvertierungsbefehle:

quartus_pfg -c -o helper_device=AGFB014R24A „root0.qky;root1.qky;root2.qky“ RootKey.jam quartus_pfg -c -o helper_device=AGFB014R24A „root0.qky;root1.qky;root2.qky“ RootKey.jbc quartus_pfg - c -o helper_device=AGFB014R24A aes.ccert aes_ccert.jam quartus_pfg -c -o helper_device=AGFB014R24A aes.ccert aes_ccert.jbc quartus_pfg -c -o helper_device=AGFB014R24Asettings.fusesettings_fuse.jam quartus_pfg -c -o helper_device=AGFB014 24RXNUMXA-Einstellungen. Sicherungseinstellungen_fuse.jbc

Weitere Informationen zur Verwendung des Jam STAPL Players für die Geräteprogrammierung finden Sie unter AN 425: Using the Command-Line Jam STAPL Solution for Device Programming.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 45

4. Gerätebereitstellung 683823 | 2023.05.23
Führen Sie die folgenden Befehle aus, um den öffentlichen Root-Schlüssel des Besitzers und den AES-Verschlüsselungsschlüssel zu programmieren:
//Um den Hilfsbitstrom in das FPGA zu laden. // Der Hilfsbitstrom umfasst die Bereitstellung der Firmware quartus_jli -c 1 -a CONFIGURE RootKey.jam
//Um den öffentlichen Root-Schlüssel des Besitzers in virtuelle eFuses zu programmieren quartus_jli -c 1 -a PUBKEY_PROGRAM RootKey.jam
//Um den öffentlichen Root-Schlüssel des Besitzers in physische eFuses zu programmieren quartus_jli -c 1 -a PUBKEY_PROGRAM -e DO_UNI_ACT_DO_EFUSES_FLAG RootKey.jam
//So programmieren Sie den öffentlichen Root-Schlüssel des PR-Besitzers in virtuelle eFuses quartus_jli -c 1 -a PUBKEY_PROGRAM -e DO_UNI_ACT_DO_PR_PUBKEY_FLAG pr_rootkey.jam
//Um den öffentlichen Root-Schlüssel des PR-Besitzers in physische eFuses zu programmieren quartus_jli -c 1 -a PUBKEY_PROGRAM -e DO_UNI_ACT_DO_PR_PUBKEY_FLAG -e DO_UNI_ACT_DO_EFUSES_FLAG pr_rootkey.jam
//So programmieren Sie den AES-Verschlüsselungsschlüssel CCERT in BBRAM quartus_jli -c 1 -a CCERT_PROGRAM EncKeyBBRAM.jam
//Um den AES-Verschlüsselungsschlüssel CCERT in physische eFuses zu programmieren quartus_jli -c 1 -a CCERT_PROGRAM -e DO_UNI_ACT_DO_EFUSES_FLAG EncKeyEFuse.jam
Verwandte Informationen AN 425: Verwenden der Command-Line Jam STAPL-Lösung für die Geräteprogrammierung

Intel Agilex® 7 Device Security-Benutzerhandbuch 46

Feedback senden

683823 | 2023.05.23 Feedback senden

Erweiterte Funktionen

5.1. Sichere Debug-Autorisierung
Um die sichere Debug-Autorisierung zu aktivieren, muss der Debug-Besitzer ein Authentifizierungsschlüsselpaar generieren und den Intel Quartus Prime Pro Programmierer verwenden, um Geräteinformationen zu generieren file für das Gerät, das das Debug-Image ausführt:
quartus_pgm -c 1 -mjtag -o „ei;device_info.txt;AGFB014R24A“ –dev_info
Der Geräteeigentümer verwendet das Tool quartus_sign oder die Referenzimplementierung, um einen bedingten öffentlichen Schlüsseleintrag an eine Signaturkette anzuhängen, die für Debug-Vorgänge vorgesehen ist, und verwendet dabei den öffentlichen Schlüssel des Debug-Eigentümers, die erforderlichen Autorisierungen und den Geräteinformationstext fileund geltende weitere Einschränkungen:
quartus_sign –family=agilex –operation=append_key – previous_pem=debug_chain_private.pem – previous_qky=debug_chain.qky –permission=0x6 –cancel=1 –dev_info=device_info.txt –restriction=“1,2,17,18″ –input_pem= debug_authorization_public_key.pem secure_debug_auth_chain.qky
Der Geräteeigentümer sendet die vollständige Signaturkette an den Debug-Eigentümer zurück, der die Signaturkette und seinen privaten Schlüssel verwendet, um das Debug-Image zu signieren:
quartus_sign –family=agilex –operation=sign –qky=secure_debug_auth_chain.qky –pem=debug_authorization_private_key.pem unsigned_debug_design.rbfauthorized_debug_design.rbf
Sie können den Befehl quartus_pfg verwenden, um die Signaturkette jedes Abschnitts dieses signierten sicheren Debug-Bitstreams wie folgt zu überprüfen:
quartus_pfg –check_integrityauthorized_debug_design.rbf
Die Ausgabe dieses Befehls gibt die Einschränkungswerte 1,2,17,18 des bedingten öffentlichen Schlüssels aus, der zum Generieren des signierten Bitstroms verwendet wurde.
Der Debug-Besitzer kann dann das sicher autorisierte Debug-Design programmieren:
quartus_pgm -c 1 -mjtag -o „p;authorized_debug_design.rbf“
Der Gerätebesitzer kann die sichere Debug-Autorisierung widerrufen, indem er die explizite Schlüsselaufhebungs-ID löscht, die in der Signaturkette der sicheren Debug-Autorisierung zugewiesen ist.
5.2. HPS-Debug-Zertifikate
Ermöglicht nur autorisierten Zugriff auf den HPS-Debug-Access-Port (DAP) über JTAG Schnittstelle erfordert mehrere Schritte:

Intel Corporation. Alle Rechte vorbehalten. Intel, das Intel-Logo und andere Intel-Marken sind Marken der Intel Corporation oder ihrer Tochtergesellschaften. Intel garantiert die Leistung seiner FPGA- und Halbleiterprodukte gemäß den aktuellen Spezifikationen gemäß der Standardgarantie von Intel, behält sich jedoch das Recht vor, jederzeit ohne Vorankündigung Änderungen an Produkten und Diensten vorzunehmen. Intel übernimmt keine Verantwortung oder Haftung, die sich aus der Anwendung oder Verwendung von hierin beschriebenen Informationen, Produkten oder Diensten ergeben, es sei denn, Intel hat ausdrücklich schriftlich zugestimmt. Intel-Kunden wird empfohlen, die neueste Version der Gerätespezifikationen zu beschaffen, bevor sie sich auf veröffentlichte Informationen verlassen und bevor sie Produkte oder Dienstleistungen bestellen. *Andere Namen und Marken können als Eigentum anderer beansprucht werden.

ISO 9001: 2015 registriert

5. Erweiterte Funktionen 683823 | 2023.05.23
1. Klicken Sie auf das Menü „Zuweisungen“ der Intel Quartus Prime-Software und wählen Sie die Registerkarte „Konfiguration der Geräte- und Pin-Optionen“.
2. Aktivieren Sie auf der Registerkarte „Konfiguration“ den HPS-Debug-Zugriffsport (DAP), indem Sie im Dropdown-Menü entweder HPS-Pins oder SDM-Pins auswählen und sicherstellen, dass das Kontrollkästchen „HPS-Debug ohne Zertifikate zulassen“ nicht aktiviert ist.
Abbildung 14. Geben Sie entweder HPS- oder SDM-Pins für den HPS-DAP an

HPS-Debug-Zugriffsport (DAP)
Alternativ können Sie die Zuweisung unten in den Quartus Prime-Einstellungen .qsf festlegen file:
set_global_assignment -name HPS_DAP_SPLIT_MODE „SDM PINS“
3. Kompilieren und laden Sie das Design mit diesen Einstellungen. 4. Erstellen Sie eine Signaturkette mit den entsprechenden Berechtigungen zum Signieren eines HPS-Debugs
Zertifikat:
quartus_sign –family=agilex –operation=append_key – previous_pem=root_private.pem – previous_qky=root.qky –permission=0x8 –cancel=1 –input_pem=hps_debug_cert_public_key.pem hps_debug_cert_sign_chain.qky
5. Fordern Sie ein unsigniertes HPS-Debug-Zertifikat von dem Gerät an, auf dem das Debug-Design geladen ist:
quartus_pgm -c 1 -mjtag -o „e;unsigned_hps_debug.cert;AGFB014R24A“
6. Signieren Sie das nicht signierte HPS-Debug-Zertifikat mit dem Tool quartus_sign oder der Referenzimplementierung und der HPS-Debug-Signaturkette:
quartus_sign –family=agilex –operation=sign –qky=hps_debug_cert_sign_chain.qky –pem=hps_debug_cert_private_key.pem unsigned_hps_debug.cert signiert_hps_debug.cert

Intel Agilex® 7 Device Security-Benutzerhandbuch 48

Feedback senden

5. Erweiterte Funktionen 683823 | 2023.05.23
7. Senden Sie das signierte HPS-Debug-Zertifikat zurück an das Gerät, um den Zugriff auf den HPS-Debug-Access-Port (DAP) zu ermöglichen:
quartus_pgm -c 1 -mjtag -o „p;signed_hps_debug.cert“
Das HPS-Debug-Zertifikat ist nur vom Zeitpunkt seiner Generierung bis zum nächsten Aus- und Einschalten des Geräts oder bis zum Laden eines anderen Typs oder einer anderen Version der SDM-Firmware gültig. Sie müssen das signierte HPS-Debug-Zertifikat generieren, signieren und programmieren und alle Debug-Vorgänge ausführen, bevor Sie das Gerät aus- und wieder einschalten. Sie können das signierte HPS-Debug-Zertifikat ungültig machen, indem Sie das Gerät aus- und wieder einschalten.
5.3. Plattformbescheinigung
Sie können ein Referenzintegritätsmanifest (.rim) generieren. file die Programmierung nutzen file Generator-Tool:
quartus_pfg -c signiert_encrypted_top.rbf top_rim.rim
Befolgen Sie diese Schritte, um die Plattformbescheinigung in Ihrem Design sicherzustellen: 1. Verwenden Sie den Intel Quartus Prime Pro Programmierer, um Ihr Gerät mit zu konfigurieren
Design, für das Sie ein Referenzintegritätsmanifest erstellt haben. 2. Verwenden Sie einen Plattformbescheinigungsprüfer, um das Gerät zu registrieren, indem Sie Befehle an den senden
SDM über das SDM-Postfach, um beim Neuladen das Geräte-ID-Zertifikat und das Firmware-Zertifikat zu erstellen. 3. Verwenden Sie den Intel Quartus Prime Pro Programmierer, um Ihr Gerät mit dem Design neu zu konfigurieren. 4. Verwenden Sie den Plattformbescheinigungsprüfer, um Befehle an den SDM zu erteilen, um die Geräte-ID, Firmware und Aliaszertifikate der Bescheinigung abzurufen. 5. Verwenden Sie den Attestierungsprüfer, um den SDM-Postfachbefehl auszugeben, um den Attestierungsnachweis abzurufen, und der Prüfer prüft den zurückgegebenen Beweis.
Sie können Ihren eigenen Verifizierungsdienst mit den SDM-Postfachbefehlen implementieren oder den Bescheinigungsverifizierungsdienst der Intel-Plattform verwenden. Weitere Informationen zur Intel Platform Attestation Verifier Service-Software, Verfügbarkeit und Dokumentation erhalten Sie vom Intel Support.
Verwandte Informationen: Pin-Verbindungsrichtlinien für die Intel Agilex 7-Gerätefamilie
5.4. Physisches Anti-Tamper
Sie aktivieren den physischen Anti-TampEr-Funktionen mit den folgenden Schritten: 1. Auswahl der gewünschten Reaktion auf ein erkanntes tamper-Ereignis 2. Konfigurieren des gewünschten tamper-Erkennungsmethoden und -parameter 3. Einschließlich der Anti-tampIntegrieren Sie IP in Ihre Designlogik, um die Anti-T-Verwaltung zu unterstützenamper
Veranstaltungen

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 49

5. Erweiterte Funktionen 683823 | 2023.05.23
5.4.1. Anti-Tampäh Antworten
Sie aktivieren den physischen Anti-Tampindem Sie eine Antwort aus dem Anti-t auswählenampEr-Antwort: Dropdown-Liste in den Zuweisungen Gerätegerät und Pin-Optionen Sicherheit Anti-Tampäh Tab. Standardmäßig ist das Anti-TampDie Antwort ist deaktiviert. Fünf Kategorien von Anti-TampDie Antwort ist verfügbar. Wenn Sie die gewünschte Antwort auswählen, werden die Optionen zum Aktivieren einer oder mehrerer Erkennungsmethoden aktiviert.
Abbildung 15. Verfügbares Anti-Tampäh Antwortoptionen

Die entsprechende Zuordnung in den Quartus Prime-Einstellungen .gsf file ist wie folgt:
set_global_assignment -name ANTI_TAMPER_RESPONSE „BENACHRICHTIGUNG DES GERÄTS, GERÄTSPERRE LÖSCHEN UND ZEROISIEREN“
Wenn Sie ein Anti-T aktivierenampAls Antwort können Sie zwei verfügbare dedizierte SDM-E/A-Pins für die Ausgabe des T auswählenampEr-Ereigniserkennung und Antwortstatus mithilfe des Fensters „Zuweisungen, Geräte, Geräte und Pin-Optionen, Konfiguration, Konfiguration, Pin-Optionen“.

Intel Agilex® 7 Device Security-Benutzerhandbuch 50

Feedback senden

5. Erweiterte Funktionen 683823 | 2023.05.23
Abbildung 16. Verfügbare dedizierte SDM-E/A-Pins für Tampäh Ereigniserkennung

Sie können in den Einstellungen auch die folgenden Pinbelegungen vornehmen file: set_global_assignment -name USE_TAMPER_DETECT SDM_IO15 set_global_assignment -name ANTI_TAMPER_RESPONSE_FAILED SDM_IO16

5.4.2. Anti-Tampäh Erkennung

Sie können Frequenz, Temperatur und Lautstärke individuell aktivierentagDie Erkennungsfunktionen des SDM. Die FPGA-Erkennung hängt von der Einbeziehung des Anti-T abamper Lite Intel FPGA IP in Ihrem Design.

Notiz:

SDM-Frequenz und -LautstärketagundampDie Fehlererkennungsmethoden hängen von internen Referenzen und Messhardware ab, die je nach Gerät unterschiedlich sein können. Intel empfiehlt, dass Sie das Verhalten von t charakterisierenampErkennungseinstellungen.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 51

5. Erweiterte Funktionen 683823 | 2023.05.23
Frequency tampDie Fehlererkennung basiert auf der Konfigurationstaktquelle. Um die Frequenz t zu aktivierenampBei der Erkennung müssen Sie im Dropdown-Menü „Konfiguration der Taktquelle“ auf der Registerkarte „Zuweisungen, Geräte, Geräte und Pin-Optionen – Allgemein“ eine andere Option als „Interner Oszillator“ angeben. Sie müssen sicherstellen, dass das Kontrollkästchen Konfigurations-CPU vom internen Oszillator ausführen aktiviert ist, bevor Sie die Frequenz t aktivierenampäh-Erkennung. Abbildung 17. SDM auf internen Oszillator einstellen
Um die Frequenz t zu aktivierenampUm die Erkennung zu ermöglichen, wählen Sie die Option „Frequenz aktivieren“ ausampAktivieren Sie das Kontrollkästchen „Erkennung“ und wählen Sie die gewünschte Frequenz ausampWählen Sie im Dropdown-Menü den gewünschten Erkennungsbereich aus. Abbildung 18. Aktivierungsfrequenz Tampäh Erkennung

Intel Agilex® 7 Device Security-Benutzerhandbuch 52

Feedback senden

5. Erweiterte Funktionen 683823 | 2023.05.23
Alternativ können Sie Frequency T aktivierenampErkennen Sie die Erkennung, indem Sie die folgenden Änderungen an den Quartus Prime-Einstellungen .qsf vornehmen file:
set_global_assignment -name AUTO_RESTART_CONFIGURATION OFF set_global_assignment -name DEVICE_INITIALIZATION_CLOCK OSC_CLK_1_100MHZ set_global_assignment -name RUN_CONFIG_CPU_FROM_INT_OSC ON set_global_assignment -name ENABLE_FREQUENCY_TAMPER_DETECTION ON set_global_assignment -name FREQUENCY_TAMPER_DETECTION_RANGE 35
Um die Temperatur t zu aktivierenampUm die Temperaturerkennung zu aktivieren, wählen Sie die Option „Temperatur aktivieren“ ausampAktivieren Sie das Kontrollkästchen „Erkennung“ und wählen Sie in den entsprechenden Feldern die gewünschte Temperaturober- und -untergrenze aus. Die oberen und unteren Grenzen werden standardmäßig mit dem entsprechenden Temperaturbereich für das im Design ausgewählte Gerät gefüllt.
Um Vol. zu aktivierentagundampBei der Erkennung wählen Sie eine oder beide der Optionen „VCCL aktivieren“ austagundampFehlererkennung oder VCCL_SDM-Volumen aktivierentagundampAktivieren Sie die Kontrollkästchen „Erkennung“ und wählen Sie die gewünschte Lautstärke austagundampProzentsatz des Erkennungsauslöserstage in das entsprechende Feld ein.
Abbildung 19. Aktivieren von Voltage Tampäh Erkennung

Alternativ können Sie Vol. aktivierentage TampEr-Erkennung durch Angabe der folgenden Zuweisungen in der .qsf file:
set_global_assignment -name ENABLE_TEMPERATURE_TAMPER_DETECTION ON set_global_assignment -name TEMPERATURE_TAMPER_UPPER_BOUND 100 set_global_assignment -name ENABLE_VCCL_VOLTAGE_TAMPER_DETECTION ON set_global_assignment -name ENABLE_VCCL_SDM_VOLTAGE_TAMPER_DETECTION EIN
5.4.3. Anti-Tamper Lite Intel FPGA IP
Der Anti-Tamper Lite Intel FPGA IP, verfügbar im IP-Katalog der Intel Quartus Prime Pro Edition-Software, erleichtert die bidirektionale Kommunikation zwischen Ihrem Design und dem SDM für tampäh Ereignisse.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 53

Abbildung 20. Anti-Tamper Lite Intel FPGA IP

5. Erweiterte Funktionen 683823 | 2023.05.23

Die IP stellt die folgenden Signale bereit, die Sie bei Bedarf mit Ihrem Design verbinden:

Tabelle 5.

Anti-Tamper Lite Intel FPGA IP I/O-Signale

Signalname

Richtung

Beschreibung

gpo_sdm_at_event gpi_fpga_at_event

Ausgang Eingang

SDM-Signal an die FPGA-Fabric-Logik, dass ein SDM ein t erkannt hatampähm Ereignis. Die FPGA-Logik hat etwa 5 ms Zeit, um jede gewünschte Bereinigung durchzuführen und über gpi_fpga_at_response_done und gpi_fpga_at_zeroization_done auf den SDM zu reagieren. Der SDM fährt mit dem t fortampEr führt Antwortaktionen aus, wenn gpi_fpga_at_response_done aktiviert wird oder nachdem innerhalb der vorgegebenen Zeit keine Antwort empfangen wurde.
FPGA-Interrupt zum SDM, den Sie als Anti-T entworfen habenampDie Fehlererkennungsschaltung hat ein Problem erkanntamper-Event und das SDM tampEs sollte eine Reaktion ausgelöst werden.

gpi_fpga_at_response_done

Eingang

FPGA unterbricht SDM, dass die FPGA-Logik die gewünschte Reinigung durchgeführt hat.

gpi_fpga_at_zeroization_d eins

Eingang

FPGA-Signal an SDM, dass die FPGA-Logik die gewünschte Nullisierung der Designdaten abgeschlossen hat. Dieses Signal ist sampWird angezeigt, wenn gpi_fpga_at_response_done aktiviert ist.

5.4.3.1. Freigabeinformationen

Die Nummer des IP-Versionierungsschemas (X.Y.Z) ändert sich von einer Softwareversion zur anderen. Eine Änderung in:
· X weist auf eine größere Überarbeitung des IP hin. Wenn Sie Ihre Intel Quartus Prime-Software aktualisieren, müssen Sie die IP neu generieren.
· Y gibt an, dass die IP neue Funktionen enthält. Regenerieren Sie Ihre IP, um diese neuen Funktionen einzubeziehen.
· Z gibt an, dass das IP geringfügige Änderungen enthält. Generieren Sie Ihre IP-Adresse neu, um diese Änderungen einzubeziehen.

Tabelle 6.

Anti-Tamper Lite Intel FPGA IP-Versionsinformationen

IP-Version

Artikel

Beschreibung 20.1.0

Intel Quartus Prime-Version

21.2

Veröffentlichungsdatum

2021.06.21

Intel Agilex® 7 Device Security-Benutzerhandbuch 54

Feedback senden

5. Erweiterte Funktionen 683823 | 2023.05.23
5.5. Verwenden von Design-Sicherheitsfunktionen mit Remote-Systemaktualisierung
Remote System Update (RSU) ist eine Intel Agilex 7 FPGAs-Funktion, die bei der Aktualisierung der Konfiguration hilft files auf eine robuste Art und Weise. RSU ist mit Design-Sicherheitsfunktionen wie Authentifizierung, Firmware-Co-Signierung und Bitstream-Verschlüsselung kompatibel, da RSU nicht vom Design-Inhalt der Konfigurationsbitstreams abhängt.
Erstellen von RSU-Images mit .sof Files
Wenn Sie private Schlüssel auf Ihrem lokalen Server speichern fileSystem können Sie RSU-Bilder mit Design-Sicherheitsfunktionen mithilfe eines vereinfachten Ablaufs mit .sof generieren files als Eingaben. So generieren Sie RSU-Bilder mit der .sof file, können Sie den Anweisungen im Abschnitt „Erstellen eines Remote-System-Update-Images“ folgen Files Verwenden der Programmierung File Generator des Intel Agilex 7-Konfigurationsbenutzerhandbuchs. Für jede .sof file am Eingang angegeben FileKlicken Sie auf der Registerkarte s auf die Schaltfläche Eigenschaften… und geben Sie die entsprechenden Einstellungen und Schlüssel für die Signierungs- und Verschlüsselungstools an. Die Programmierung file Das Generator-Tool signiert und verschlüsselt automatisch Factory- und Anwendungs-Images, während es die RSU-Programmierung erstellt files.
Wenn Sie private Schlüssel in einem HSM speichern, müssen Sie alternativ das Tool quartus_sign verwenden und daher .rbf verwenden fileS. Der Rest dieses Abschnitts beschreibt die Änderungen im Ablauf zum Generieren von RSU-Bildern mit .rbf files als Eingaben. Sie müssen das .rbf-Format verschlüsseln und signieren files, bevor Sie sie als Eingabe auswählen files für RSU-Bilder; jedoch die RSU-Boot-Informationen file dürfen nicht verschlüsselt, sondern nur signiert sein. Die Programmierung File Der Generator unterstützt das Ändern von Eigenschaften des .rbf-Formats nicht files.
Das folgende BeispielampDie Dateien veranschaulichen die notwendigen Änderungen an den Befehlen im Abschnitt „Generieren eines Remote-System-Update-Images“. Files Verwenden der Programmierung File Generator des Intel Agilex 7-Konfigurationsbenutzerhandbuchs.
Generieren des ersten RSU-Bildes mit .rbf Files: Befehlsänderung
Von der Generierung des ersten RSU-Bildes mit .rbf FileÄndern Sie im Abschnitt s die Befehle in Schritt 1, um die Design-Sicherheitsfunktionen wie gewünscht zu aktivieren, indem Sie Anweisungen aus früheren Abschnitten dieses Dokuments verwenden.
Zum Beispielample, Sie würden eine signierte Firmware angeben file Wenn Sie Firmware-Cosigning verwenden, verwenden Sie das Quartus-Verschlüsselungstool, um jede .rbf-Datei zu verschlüsseln file, und verwenden Sie schließlich das Tool quartus_sign, um jedes zu signieren file.
Wenn Sie in Schritt 2 die Firmware-Co-Signierung aktiviert haben, müssen Sie eine zusätzliche Option bei der Erstellung der Boot-.rbf-Datei aus dem Factory-Image verwenden file:
quartus_pfg -c Factory.sof boot.rbf -o rsu_boot=ON -o fw_source=signed_agilex.zip
Nachdem Sie die Boot-Info .rbf erstellt haben file, verwenden Sie das Tool quartus_sign, um die .rbf-Datei zu signieren file. Sie dürfen die Boot-Info .rbf nicht verschlüsseln file.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 55

5. Erweiterte Funktionen 683823 | 2023.05.23
Generieren eines Anwendungsbildes: Befehlsänderung
Um ein Anwendungs-Image mit Design-Sicherheitsfunktionen zu generieren, ändern Sie den Befehl unter Generieren eines Anwendungs-Images, um eine .rbf-Datei mit aktivierten Design-Sicherheitsfunktionen, einschließlich mitsignierter Firmware, falls erforderlich, anstelle der ursprünglichen Anwendungs-.sof zu verwenden file:
quartus_pfg -c cosigned_fw_signed_encrypted_application.rbf secure_rsu_application.rpd -o mode=ASX4 -o bitswap=ON
Generieren eines Factory-Update-Images: Befehlsänderung
Nachdem Sie die Boot-Info .rbf erstellt haben fileverwenden Sie das Tool quartus_sign, um die .rbf-Datei zu signieren file. Sie dürfen die Boot-Info .rbf nicht verschlüsseln file.
Um ein RSU-Factory-Update-Image zu generieren, ändern Sie den Befehl unter Generieren eines Factory-Update-Images, um eine .rbf-Datei zu verwenden file mit aktivierten Design-Sicherheitsfunktionen und fügen Sie die Option hinzu, um die mitsignierte Firmware-Nutzung anzugeben:
quartus_pfg -c cosigned_fw_signed_encrypted_factory.rbf secure_rsu_factory_update.rpd -o mode=ASX4 -o bitswap=ON -o rsu_upgrade=ON -o fw_source=signed_agilex.zip
Zugehörige Informationen: Benutzerhandbuch zur Intel Agilex 7-Konfiguration
5.6. SDM-Kryptografiedienste
Das SDM auf Intel Agilex 7-Geräten stellt kryptografische Dienste bereit, die die FPGA-Fabric-Logik oder das HPS über die jeweilige SDM-Mailbox-Schnittstelle anfordern können. Weitere Informationen zu den Mailbox-Befehlen und Datenformaten für alle SDM-Kryptografiedienste finden Sie in Anhang B im Benutzerhandbuch zur Sicherheitsmethodik für Intel FPGAs und strukturierte ASICs.
Um auf die SDM-Mailbox-Schnittstelle zur FPGA-Fabric-Logik für SDM-Kryptografiedienste zuzugreifen, müssen Sie die Intel FPGA IP des Mailbox-Clients in Ihrem Design instanziieren.
Der Referenzcode für den Zugriff auf die SDM-Mailbox-Schnittstelle vom HPS ist im von Intel bereitgestellten ATF- und Linux-Code enthalten.
Verwandte Informationen: Mailbox Client Intel FPGA IP-Benutzerhandbuch
5.6.1. Vom Anbieter autorisierter Boot
Intel stellt eine Referenzimplementierung für HPS-Software bereit, die die vom Hersteller autorisierte Startfunktion nutzt, um HPS-Startsoftware von den ersten Sekunden an zu authentifizierentagVom Bootloader bis hin zum Linux-Kernel.
Verwandte Informationen Intel Agilex 7 SoC Secure Boot Demo-Design

Intel Agilex® 7 Device Security-Benutzerhandbuch 56

Feedback senden

5. Erweiterte Funktionen 683823 | 2023.05.23
5.6.2. Sicherer Datenobjektdienst
Sie senden die Befehle über das SDM-Postfach, um die SDOS-Objektverschlüsselung und -entschlüsselung durchzuführen. Sie können die SDOS-Funktion verwenden, nachdem Sie den SDOS-Root-Schlüssel bereitgestellt haben.
Verwandte Informationen Secure Data Object Service Root Key Provisioning auf Seite 30
5.6.3. SDM-Kryptografie-Primitivdienste
Sie senden die Befehle über das SDM-Postfach, um Vorgänge des kryptografischen Grunddiensts des SDM zu initiieren. Einige kryptografische Grunddienste erfordern, dass mehr Daten zum und vom SDM übertragen werden, als die Mailbox-Schnittstelle akzeptieren kann. In diesen Fällen ändert sich der Befehl des Formats, um Zeiger auf Daten im Speicher bereitzustellen. Darüber hinaus müssen Sie die Instanziierung der Intel FPGA IP des Mailbox-Clients ändern, um kryptografische SDM-Primitivdienste aus der FPGA-Fabric-Logik zu verwenden. Sie müssen außerdem den Parameter „Enable Crypto Service“ auf 1 setzen und die neu verfügbar gemachte AXI-Initiatorschnittstelle mit einem Speicher in Ihrem Design verbinden.
Abbildung 21. Aktivieren von SDM-Kryptografiediensten im Mailbox-Client Intel FPGA IP

5.7. Bitstream-Sicherheitseinstellungen (FM/S10)
FPGA-Bitstream-Sicherheitsoptionen sind eine Sammlung von Richtlinien, die die angegebene Funktion oder Betriebsart innerhalb eines definierten Zeitraums einschränken.
Bitstream-Sicherheitsoptionen bestehen aus Flags, die Sie in der Intel Quartus Prime Pro Edition-Software festlegen. Diese Flags werden automatisch in die Konfigurationsbitströme kopiert.
Sie können Sicherheitsoptionen auf einem Gerät durch die Verwendung der entsprechenden Sicherheitseinstellung eFuse dauerhaft erzwingen.
Um Sicherheitseinstellungen im Konfigurationsbitstream oder in den Geräte-eFuses zu verwenden, müssen Sie die Authentifizierungsfunktion aktivieren.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 57

5. Erweiterte Funktionen 683823 | 2023.05.23
5.7.1. Auswählen und Aktivieren von Sicherheitsoptionen
Um Sicherheitsoptionen auszuwählen und zu aktivieren, gehen Sie wie folgt vor: Wählen Sie im Menü „Zuweisungen“ die Option „Gerät“, „Geräte- und PIN-Optionen“, „Sicherheit“, „Weitere Optionen“… Abbildung 22. Auswählen und Aktivieren von Sicherheitsoptionen

Wählen Sie dann die Werte aus den Dropdown-Listen für die Sicherheitsoptionen aus, die Sie aktivieren möchten, wie im folgenden Beispiel gezeigtampauf:
Abbildung 23. Auswählen von Werten für Sicherheitsoptionen

Intel Agilex® 7 Device Security-Benutzerhandbuch 58

Feedback senden

5. Erweiterte Funktionen 683823 | 2023.05.23
Im Folgenden sind die entsprechenden Änderungen in den Quartus Prime-Einstellungen .qsf aufgeführt file:
set_global_assignment -name SECU_OPTION_DISABLE_JTAG „ON CHECK“ set_global_assignment -name SECU_OPTION_FORCE_ENCRYPTION_KEY_UPDATE „ON STICKY“ set_global_assignment -name SECU_OPTION_FORCE_SDM_CLOCK_TO_INT_OSC ON set_global_assignment -name SECU_OPTION_DISABLE_VIRTUAL_EFUSES ON set_global_assignment -name SECU_OPTION_LOCK_SECURITY_ EFUSES ON set_global_assignment -name SECU_OPTION_DISABLE_HPS_DEBUG ON set_global_assignment -name SECU_OPTION_DISABLE_ENCRYPTION_KEY_IN_EFUSES ON set_global_assignment -name SECU_OPTION_DISABLE_ENCRYPTION_KEY_IN_EFUSES ON set_global_assignment -name SECU_OPTION_DISABLE_ENCRYPTION_KEY_IN _EFUSES ON set_global_assignment -name SECU_OPTION_DISABLE_ENCRYPTION_KEY_IN_EFUSES ON set_global_assignment -name SECU_OPTION_DISABLE_ENCRYPTION_KEY_IN_BBRAM ON set_global_assignment -name SECU_OPTION_DISABLE_PUF_WRAPPED_ENCRYPTION_KEY ON

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 59

683823 | 2023.05.23 Feedback senden

Fehlerbehebung

In diesem Kapitel werden häufig auftretende Fehler und Warnmeldungen beschrieben, die bei der Verwendung von Gerätesicherheitsfunktionen auftreten können, sowie Maßnahmen zu deren Behebung.
6.1. Verwenden von Quartus-Befehlen in einem Windows-Umgebungsfehler
Fehler quartus_pgm: Befehl nicht gefunden Beschreibung Dieser Fehler wird angezeigt, wenn versucht wird, Quartus-Befehle in einer NIOS II-Shell in einer Windows-Umgebung mithilfe von WSL zu verwenden. Lösung Dieser Befehl funktioniert in einer Linux-Umgebung. Verwenden Sie für Windows-Hosts den folgenden Befehl: quartus_pgm.exe -h Wenden Sie in ähnlicher Weise dieselbe Syntax auf andere Quartus Prime-Befehle wie quartus_pfg, quartus_sign, quartus_encrypt und andere Befehle an.

Intel Corporation. Alle Rechte vorbehalten. Intel, das Intel-Logo und andere Intel-Marken sind Marken der Intel Corporation oder ihrer Tochtergesellschaften. Intel garantiert die Leistung seiner FPGA- und Halbleiterprodukte gemäß den aktuellen Spezifikationen gemäß der Standardgarantie von Intel, behält sich jedoch das Recht vor, jederzeit ohne Vorankündigung Änderungen an Produkten und Diensten vorzunehmen. Intel übernimmt keine Verantwortung oder Haftung, die sich aus der Anwendung oder Verwendung von hierin beschriebenen Informationen, Produkten oder Diensten ergeben, es sei denn, Intel hat ausdrücklich schriftlich zugestimmt. Intel-Kunden wird empfohlen, die neueste Version der Gerätespezifikationen zu beschaffen, bevor sie sich auf veröffentlichte Informationen verlassen und bevor sie Produkte oder Dienstleistungen bestellen. *Andere Namen und Marken können als Eigentum anderer beansprucht werden.

ISO 9001: 2015 registriert

6. Fehlerbehebung 683823 | 2023.05.23

6.2. Generieren einer Warnung zum privaten Schlüssel

Warnung:

Das angegebene Passwort gilt als unsicher. Intel empfiehlt die Verwendung von mindestens 13 Zeichen für das Passwort. Es wird empfohlen, das Passwort mithilfe der ausführbaren OpenSSL-Datei zu ändern.

openssl ec -in -out -aes256

Beschreibung
Diese Warnung bezieht sich auf die Passwortstärke und wird angezeigt, wenn versucht wird, einen privaten Schlüssel zu generieren, indem die folgenden Befehle ausgegeben werden:

quartus_sign –family=agilex –operation=make_private_pem –curve=secp3841 root.pem

Lösung Verwenden Sie die ausführbare Datei „openssl“, um ein längeres und damit stärkeres Kennwort anzugeben.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 61

6. Fehlerbehebung 683823 | 2023.05.23
6.3. Hinzufügen eines Signaturschlüssels zum Quartus-Projektfehler
Fehler …File enthält Root-Key-Informationen…
Beschreibung
Nach dem Hinzufügen eines Signaturschlüssels .qky file Für das Quartus-Projekt müssen Sie die .sof-Datei neu zusammensetzen file. Wenn Sie diese neu generierte .sof hinzufügen file Wenn Sie mit dem Quartus Programmer eine Verbindung zum ausgewählten Gerät herstellen, zeigt die folgende Fehlermeldung an, dass das file enthält Root-Schlüsselinformationen:
< konnte nicht hinzugefügt werdenfile-Pfadname> zum Programmierer. Der file enthält Root-Schlüsselinformationen (.qky). Der Programmierer unterstützt jedoch keine Bitstream-Signaturfunktion. Sie können die Programmierung verwenden File Generator zur Umwandlung der file zur signierten Raw-Binärdatei file (.rbf) zur Konfiguration.
Auflösung
Verwenden Sie die Quartus-Programmierung file Generator zur Umwandlung der file in eine signierte Raw-Binärdatei File .rbf zur Konfiguration.
Zugehörige Informationen Signierungskonfigurations-Bitstream mit dem Befehl quartus_sign auf Seite 13

Intel Agilex® 7 Device Security-Benutzerhandbuch 62

Feedback senden

6. Fehlerbehebung 683823 | 2023.05.23
6.4. Generieren von Quartus Prime-Programmierung File war nicht erfolgreich
Fehler
Fehler (20353): X des öffentlichen Schlüssels von QKY stimmt nicht mit dem privaten Schlüssel von PEM überein file.
Fehler (20352): Der Bitstream konnte nicht über das Python-Skript agilex_sign.py signiert werden.
Fehler: Quartus Prime-Programmierung File Generator war erfolglos.
Beschreibung Wenn Sie versuchen, einen Konfigurationsbitstrom mit einem falschen privaten Schlüssel .pem zu signieren file oder eine .pem file die nicht mit der zum Projekt hinzugefügten .qky-Datei übereinstimmt, werden die oben genannten häufigen Fehler angezeigt. Lösung Stellen Sie sicher, dass Sie zum Signieren des Bitstroms den richtigen privaten Schlüssel (.pem) verwenden.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 63

6. Fehlerbehebung 683823 | 2023.05.23
6.5. Unbekannte Argumentfehler
Fehler
Fehler (23028): Unbekanntes Argument „ûc“. Weitere Informationen zu rechtlichen Argumenten finden Sie in der Hilfe.
Fehler (213008): Die Programmieroptionszeichenfolge „ûp“ ist unzulässig. Informationen zu zulässigen Programmieroptionsformaten finden Sie in der Hilfe.
Beschreibung Wenn Sie Befehlszeilenoptionen aus einer PDF-Datei kopieren und einfügen file In der Windows NIOS II-Shell können Fehler mit dem Namen „Unbekannte Argumente“ auftreten, wie oben gezeigt. Lösung In solchen Fällen können Sie die Befehle manuell eingeben, anstatt sie aus der Zwischenablage einzufügen.

Intel Agilex® 7 Device Security-Benutzerhandbuch 64

Feedback senden

6. Fehlerbehebung 683823 | 2023.05.23
6.6. Fehler bei der Deaktivierung der Bitstream-Verschlüsselungsoption
Fehler
Die Verschlüsselung für kann nicht abgeschlossen werden file design .sof, da es mit deaktivierter Bitstream-Verschlüsselungsoption kompiliert wurde.
Beschreibung Wenn Sie versuchen, den Bitstream über die GUI oder die Befehlszeile zu verschlüsseln, nachdem Sie das Projekt mit deaktivierter Bitstream-Verschlüsselungsoption kompiliert haben, lehnt Quartus den Befehl wie oben gezeigt ab.
Lösung Stellen Sie sicher, dass Sie das Projekt mit aktivierter Bitstream-Verschlüsselungsoption kompilieren, entweder über die GUI oder die Befehlszeile. Um diese Option in der GUI zu aktivieren, müssen Sie das Kontrollkästchen für diese Option aktivieren.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 65

6. Fehlerbehebung 683823 | 2023.05.23
6.7. Angeben des richtigen Pfads zum Schlüssel
Fehler
Fehler (19516): Programmierung erkannt File Fehler bei den Generatoreinstellungen: „key_“ kann nicht gefunden werdenfile'. Stellen Sie sicher, dass file befindet sich am erwarteten Speicherort oder aktualisieren Sie die Einstellung.sec
Fehler (19516): Programmierung erkannt File Fehler bei den Generatoreinstellungen: „key_“ kann nicht gefunden werdenfile'. Stellen Sie sicher, dass file befindet sich am erwarteten Ort oder aktualisieren Sie die Einstellung.
Beschreibung
Wenn Sie Schlüssel verwenden, die auf dem gespeichert sind file System müssen Sie sicherstellen, dass sie den richtigen Pfad für die Schlüssel angeben, die für die Bitstromverschlüsselung und -signierung verwendet werden. Wenn die Programmierung File Der Generator kann den richtigen Pfad nicht erkennen, die oben genannten Fehlermeldungen werden angezeigt.
Auflösung
Weitere Informationen finden Sie in den Quartus Prime-Einstellungen .qsf file um die richtigen Pfade für die Schlüssel zu finden. Stellen Sie sicher, dass Sie relative Pfade anstelle absoluter Pfade verwenden.

Intel Agilex® 7 Device Security-Benutzerhandbuch 66

Feedback senden

6. Fehlerbehebung 683823 | 2023.05.23
6.8. Verwendung nicht unterstützter Ausgabe File Typ
Fehler
quartus_pfg -c design.sof Ausgabe_file.ebf -o finalize_operation=ON -o qek_file=ae.qek -o signing=ON -o pem_file=sign_private.pem
Fehler (19511): Nicht unterstützte Ausgabe file Typ (ebf). Verwenden Sie die Option „-l“ oder „–list“, um die unterstützten Dateien anzuzeigen file Typinformationen.
Beschreibung Während der Verwendung der Quartus-Programmierung File Wenn Sie den Generator zum Generieren des verschlüsselten und signierten Konfigurationsbitstroms verwenden, wird möglicherweise der obige Fehler angezeigt, wenn die Ausgabe nicht unterstützt wird file Typ angegeben ist. Lösung Verwenden Sie die Option -l oder –list, um die Liste der unterstützten Dateien anzuzeigen file Typen.

Feedback senden

Intel Agilex® 7 Device Security-Benutzerhandbuch 67

683823 | 2023.05.23 Feedback senden
7. Archiv des Intel Agilex 7 Device Security-Benutzerhandbuchs
Die neuesten und früheren Versionen dieses Benutzerhandbuchs finden Sie im Intel Agilex 7 Device Security-Benutzerhandbuch. Wenn eine IP- oder Softwareversion nicht aufgeführt ist, gilt das Benutzerhandbuch für die vorherige IP- oder Softwareversion.

Intel Corporation. Alle Rechte vorbehalten. Intel, das Intel-Logo und andere Intel-Marken sind Marken der Intel Corporation oder ihrer Tochtergesellschaften. Intel garantiert die Leistung seiner FPGA- und Halbleiterprodukte gemäß den aktuellen Spezifikationen gemäß der Standardgarantie von Intel, behält sich jedoch das Recht vor, jederzeit ohne Vorankündigung Änderungen an Produkten und Diensten vorzunehmen. Intel übernimmt keine Verantwortung oder Haftung, die sich aus der Anwendung oder Verwendung von hierin beschriebenen Informationen, Produkten oder Diensten ergeben, es sei denn, Intel hat ausdrücklich schriftlich zugestimmt. Intel-Kunden wird empfohlen, die neueste Version der Gerätespezifikationen zu beschaffen, bevor sie sich auf veröffentlichte Informationen verlassen und bevor sie Produkte oder Dienstleistungen bestellen. *Andere Namen und Marken können als Eigentum anderer beansprucht werden.

ISO 9001: 2015 registriert

683823 | 2023.05.23 Feedback senden

8. Revisionsverlauf für das Intel Agilex 7 Device Security-Benutzerhandbuch

Dokumentversion 2023.05.23
2022.11.22 2022.04.04 2022.01.20
2021.11.09

Dokumente / Ressourcen

Intel Agilex 7 Gerätesicherheit [pdf] Benutzerhandbuch
Agilex 7 Gerätesicherheit, Agilex 7, Gerätesicherheit, Sicherheit

Verweise

Hinterlasse einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Pflichtfelder sind markiert *