Physically Unclonable Function Erhöhte FPGA-Sicherheit durch Integration einer PUF
Unter Ausnutzung einer Physically Unclonable Function schaffen Sie mit Hilfe eines FPGAs ein ausfallsicheres, umfassend authentifiziertes und dennoch programmierbares Sicherheitsschema.
Anbieter zum Thema

Da die Vielfalt und Anzahl der Sicherheitsrisiken weiter zunimmt, müssen komplexe Systeme und Geräte geschützt werden. FPGAs sind hier keine Ausnahme, und alle FPGA-Hersteller haben die Sicherheitsfunktionen ihrer Bausteine im Laufe der Zeit weiter erhöht.
Eine Möglichkeit, die Sicherheitsfunktionen zu verwalten, ist das Erstellen eines Mikroprozessor-Blocks, der als Security Device Manager (SDM) dient. So lässt sich ein voll authentifiziertes Konfigurationsverfahren umsetzen, mit dem Entwickler die Gerätekonfiguration anpassen, alle Daten auf Null setzen (im Falle eines Sicherheitsverstoßes) und Schlüssel verwalten können.
Altera verwendet dieses Schema in seinen Stratix 10 SoC FPGAs. Aus Sicht der Systemkonfiguration ist der SDM der Eintrittspunkt für JTAG-Befehle. Im Stratix 10 SoC FPGA laufen die wesentlichen Sicherheitsfunktionen in einem Voting-Schaltkreis eines 3-fach redundanten Lock-Step-Mikroprozessors. Stimmen alle drei Prozessoren überein, ergibt sich eine inhärent sichere Implementierung.
Die drei Verschlüsselungsblöcke AES, SHA2 und ECDSA bieten die Möglichkeit, Verschlüsselung und Authentifizierung für alle Chipfunktionen bereitzustellen. Der Secure Hashing Algorithm (SHA) und der Elliptic Curve (ECDSA) Funktionsblock bieten einen mehrstufigen Ansatz für die Authentifizierung. Damit lassen sich mehrere Signaturen mit verschiedenen Schlüsseln auf sensiblen Datenblöcken anwenden.
Die Authentifizierungs- und Verschlüsselungsfunktionen werden durch die Physically Unclonable Function (PUF) ergänzt. In Alteras Stratix-Bausteine sind die PUF-Algorithmen als Befehlscode anstelle hardware-basierter PUF-Blöcke implementiert. Das von Intrinsic ID entwickelte PUF erzeugt einen völlig bausteinbezogenen, nicht klonbaren Schlüssel, den Entwickler für die Baustein-Authentifizierung und das Schlüssel-/Key-Wrapping verwenden können.
PUFs verwenden Zufallsmuster, um Bausteine voneinander zu unterscheiden. Intrinsic IDs Technik nutzt den einzigartigen Charakter der Sub-Micron-Prozessschwankungen innerhalb der FPGA-SRAM-Transistoren. Da bestehende FPGA-Blöcke verwendet werden, wird der verfügbare Platz für das Design nicht beeinträchtigt.
Das Prinzip hinter SRAM PUF ist, dass es die Start-up-Werte einer Reihe von SRAM-Zellen nutzt. Der Ausgangszustand jeder Zelle ist eine Funktion aus den Prozessschwankungen während der Fertigung, was den Zustand der SRAM-Zelle entweder auf Eins oder Null setzt. Diese Start-up-Werte sind aufgrund der Prozessschwankungen völlig zufällig und unmöglich zu kontrollieren.
Das resultierende SRAM-Muster und die PUF selbst sind somit nicht vorhersehbar und somit einzigartig. Da der Schlüssel abgeleitet und nicht dauerhaft gespeichert wird, ist die PUF eine äußerst sichere Art, einen Schlüssel zu erzeugen. Versucht ein Hacker, den Baustein auszulesen oder zu manipulieren, wäre dies völlig sinnlos.
(ID:43813520)