Ein typisches Auto um das Jahr 2020 enthält etwa 50 Computer, bei Fahrzeugen der Spitzenklasse können es sogar 100 oder mehr sein. Abgesehen davon sind heute Fahrzeuge mit der Außenwelt vernetzt, sodass das Fahrzeug bidirektional mit externen Systemen kommuniziert.
Eck-Daten: Automotive-FPGAs für Sicherheit auf NIST-Niveau
Dank ihrer Flash-basierten Konfiguration und Instant-on-Fähigkeit sind die FPGAs der MachXO3-Familie in der Lage, als erste Systemkomponente hochzufahren und als letzte herunterzufahren. Mit Soft Error Detection und Correction bieten sie auch den immer wichtigeren Schutz vor Strahlungsschäden. Die aktuellste Generation der FPGAs MachXO3D bietet zusätzliche Hardware-Sicherheitsmerkmale, die die Sicherheit von Automobilsystemen auf NIST-Niveau bringen. In Verbindung mit Supply Guard können die FPGAs ein System in jeder Phase seines Lebenszyklus – von der Produktion bis zum Ende der Systemlebensdauer – vor bösartigen Aktivitäten schützen.
Angriffsfläche und Sicherheitslösungen
Zunahme an Vernetzung heißt aber auch, dass das Auto eine größere Angriffsfläche für Cyberangriffe bietet. Im Zusammenhang mit einer Software-Umgebung bezieht sich der Begriff Angriffsfläche auf die Gesamtheit aller Punkte, an denen ein Unbefugter versuchen kann, Daten in eine Umgebung einzuschleusen oder Daten aus dieser zu extrahieren oder die Kontrolle über die Umgebung zu übernehmen. Ein großer Teil der Sicherheitslösung besteht darin, eine Vertrauensbasis (Root of Trust, RoT) zu schaffen. Ungesicherte Systeme können zu Daten- und Designdiebstahl, Produktnachahmung und Überbauung führen. Schlimmer noch: Systemen, denen es an ausreichend robuster Sicherheit mangelt, sind offen für Gerätemanipulationen oder Entführungen.
Es gibt nur eine Handvoll FPGA-Anbieter, wobei sich die meisten auf die Bereitstellung sehr hoher Speicherkapazitäten, möglichst umfangreicher Funktionalität und maximaler Performance konzentrieren. Lattice konzentriert sich dagegen auf FPGAs im niedrigen bis mittleren Leistungsbereich, welcher der „Sweet Spot“ für viele Automobilanwendungen ist. Darüber hinaus bietet der Hersteller ein Low-Power-FPGA mit Look-up-Tabellen (LUTs) <10k an, das mit einer NIST-zertifizierten (National Institute of Standards and Technology) Immutable (nicht manipulierbaren) Security Engine ausgestattet ist.
Die FPGAs der Familie MachXO3LF
MachXO3-FPGAs bieten eine Kombination aus niedrigem Stromverbrauch und beträchtlichen LUT-Ressourcen sowie eine Vielzahl von Ein- und Ausgängen (I/Os). Hinzu kommen Instant-on- und Hot-Socketing-Fähigkeit plus ein interner, im Hintergrund programmierbarer Flash-Konfigurationsspeicher und Unterstützung für Logik-Updates im Feld. Dadurch eignen sich die MachXO3-Bausteine sehr gut für Glue Logic, Bus-Bridging, Bus-Interfacing, Motorsteuerung, Einschaltsequenzierung und unzählige andere Steuerlogik-Anwendungen (Bild 1). Der erweiterte Sperrschicht-Temperaturbereich der FPGAs von -40 bis 125 °C genügt dabei den Anforderungen rauer Einsatzumgebungen im Automobil, die AEC-Q100-Grade-2-Zertifizierung erfüllt die Qualitätsstandards der Automobilindustrie.
SED, SEC und SEI: Keine Angst vor Strahlungs-Ereignissen
Halbleiter mit immer kleineren Strukturabmessungen reagieren zunehmend empfindlich auf Strahlungs-Ereignisse. Eine sehr häufig auftretende strahlungsinduzierte Wirkung ist die Einzelereignisstörung (SEU, sing-event upset). Ein energiereiches Teilchen trifft dabei auf einen empfindlichen Schaltungsteil und bewirkt eine Zustandsänderung, sodass ein Registerbit oder eine Speicherzelle von 0 auf 1 umschaltet oder umgekehrt. Da SEUs korrigierbar sind, werden sie als Soft Errors klassifiziert. Bei FPGAs sind davon zusätzlich auch die Konfigurationszellen betroffen, was das Problem noch verschärft.
Automobilanwendungen sind besonders sicherheitskritisch und daher unterstützt die FPGA-Familie MachXO3LF auch die Soft Error Detection (SED), Soft Error Correction (SEC) und Soft Error Injection (SEI). Das Chip-interne, festverdrahtete SED-Modul berechnet die CRC-Prüfsumme der SRAM-Konfigurationsbits, vergleicht diese mit dem vorgegebenen Wert und setzt bei etwaigen Abweichungen ein Fehler-Flag. Der im programmierbaren Teil des FPGAs implementierte SEC-Soft-Core triggert daraufhin den Core für die Rekonfiguration im Hintergrund und kopiert die im Konfigurations-Flash enthaltenen primären Konfigurationsdaten in die SRAM-Konfigurationszellen (wobei die davon nicht betroffenen FPGA-Bereiche weiterhin funktionsfähig bleiben).
Um Soft-Error-Ereignisse zu emulieren, kann der Anwender mittels Soft Error Injection (SEI) Bitfehler über die JTAG-, I2C- oder SPI-Schnittstelle in ausgewählte SRAM-Konfigurationszellen injizieren, wobei die CRC-Prüfsumme unverändert bleibt.
Die nächste Generation FGPAs: MachXO3D
Die FPGAs der Familie MachXO3D verfügen mit bis zu 2693 KBit über einen wesentlich größeren Flash-Speicher als die MachXO3LF-Bausteine. Außerdem bringen Automotive-FPGAs zusätzliche Hardware-Sicherheitsmerkmale, die die Sicherheit von Automotive-Systemen auf NIST-Niveau bringen (Bild 2).
Die Immutable Security Engine des MachXO3D – die Komponente, die als erstes hochfährt und als letztes herunterfährt – schafft nicht nur die Hardware-Vertrauensbasis, sondern ermöglicht auch vor-verifizierte kryptographische Funktionen wie ECDSA, ECIES, AES, SHA, HMAC, TRNG, Unique Secure ID sowie die Erzeugung öffentlicher/privater Schlüssel. Sie gewährleistet in Verbindung mit dem Firmware-Sicherheits-Stack Lattice Sentry die Sicherheit eines Produkts über dessen gesamten Lebenszyklus hinweg, von FPGA-Produktion und -Transport über Plattform-Produktion, Installation und Betrieb bis hin zur Außerbetriebnahme. Damit sind Datensicherheit, Gerätesicherheit, Datenauthentifizierung, Designsicherheit und Markenschutz sowie ein umfassender Schutz gegen eine Vielzahl von Bedrohungen sichergestellt.
NIST-konforme Plattform-Firmware-Resilienz
Gemäß der Definition in NIST SP 800 193 umfasst die Plattform-Firmware-Resilienz (PFR) Schutz, Erkennung und Wiederherstellung. Der Schutz gewährleistet die Unversehrtheit der Plattform-Firmware und kritischer Daten sowie die Authentizität und Integrität von Firmware-Updates. Erkennung umfasst die kryptographische Erkennung korrumpierter Plattform-Firmware und kritischer Daten, zu jedem Zeitpunkt ab der ersten Inbetriebnahme des Systems und über sämtliche Updates hinweg. Die Wiederherstellung umfasst das Starten eines vertrauenswürdigen Wiederherstellungsprozesses sowie die Wiederherstellung von beschädigter Plattform-Firmware und kritischen Daten auf ihren vorherigen Wert.
Die MachXO3D-FPGAs erfüllen sämtliche PFR-Anforderungen wie zum Beispiel Unterstützung für sicheres Dual-Boot. Durch die Kombination aus programmierbarer Logik, Immutable Security Engine und sicherem Dual-Boot-Konfigurationsblock bietet das FPGA ein hohes Maß an Gestaltungsfreiheit bei der Design-Implementierung und die Möglichkeit für sichere Updates nach der Inbetriebnahme des Systems. Zur Hardware-Vertrauensbasis kommt noch hinzu, dass durch den Einsatz von On-Chip-Logik die Cyber-Angriffsfläche stark minimiert wird.
Die NIST-PFR-Konformität des MachXO3D beinhaltet selbstständige Kompromittierungserkennung/Wiederherstellung und Selbstschutz, was On-the-fly-System-Updates ermöglicht. Im Falle der selbstständigen Kompromittierungserkennung wird das vorhandene On-Chip-Konfigurations-Image vor dem Booten von der Security Engine mit einem öffentlichen Schlüssel authentifiziert, der sicher auf dem Chip gespeichert ist. Getreu dem Selbstschutzkonzept kehrt die Security Engine automatisch zu dem bestehenden, authentifizierten „Golden Image“ zurück, falls die Authentifizierung eines neu heruntergeladenen Images fehlschlägt.
Der Selbstschutz verhindert nicht nur, dass sich das FPGA selbst mit einem kompromittierten Image konfiguriert, sondern sorgt auch dafür, dass die programmierbare Logik den Zugriff über die Programmier-Ports kontrolliert, wobei eine Lock-Policy separate Zugriffsrechte für jeden Flash-Speicher gewährt. Außerdem blockiert die Security Engine etwaige Angriffe an allen Konfigurations-Ports, während ein neues Image in den Konfigurations-Flash geladen wird.
Typische Anwendungsbeispiele
Drei typische Anwendungsbeispiele für die MachXO3LF- und MachXO3D-FPGAs im Automobilbereich sind Batteriemanagement (BMS), Root of Trust und Hardware-basiertes, sicheres Booten.
Ein auf MachXO3-FPGAs basierendes BMS ist ein Controller, der die Lade- und Entladevorgänge überwacht und für einen intelligenten Ladungsausgleich zwischen den einzelnen Batteriezellen sorgt. Zusätzlich liefert das BMS Echtzeit-Batterieinformationen wie den Ladezustand (SOC) und den Gesundheitszustand (SOH) der Batterie, damit der Anwendungsprozessor (AP) des Fahrzeugs dem Fahrer aktuelle Informationen zur Verfügung stellen kann. Ein auf dem MachXO3D-FPGA basierendes BMS fügt dem System eine zusätzliche Sicherheitsebene hinzu und verhindert so, dass ein Hacker intelligente Batterien über ihre Sicherheitsgrenzen hinaustreibt, was möglicherweise zu dauerhaften Schäden an der Batterie oder gar zu einem Kontrollverlust über das Fahrzeug führen könnte (Bild 3).
Hardware Root of Trust ist das erste Glied in der Vertrauenswürdigkeitskette (Chain of Trust), die das gesamte automobile System einschließlich aller Motorsteuerungseinheiten (ECUs) schützt. Beginnend mit dem Bauteillieferanten umfasst die automobile Lieferkette auch Tier-2-Systementwickler, Tier-1-Systemintegratoren, OEM-Autohersteller, Vertrieb, Versand, Händler und Endkunden. Innerhalb der gesamten Lieferkette gibt es eine Reihe von Angriffspunkten, an denen sich das System hacken lässt, mit der Möglichkeit, dass kompromittierende Firmware hochgeladen wird.
Lebenszyklus abgesichert mit Supply Guard
Der Supply-Guard-Lieferkettensicherheits-Service von Lattice stellt sicher, dass die ICs, die der Zielkunde erhält, ab Werk gesperrt sind (Bild 4). Dies lassen sich nur mit Hilfe eines Konfigurations-Bitstroms programmieren, der vom Zielkunden entwickelt, signiert und verschlüsselt wurde. Darüber hinaus unterstützt die Dual-Boot-Fähigkeit der MachXO3D-FPGAs schlüsselbasierte Kryptographie und ein hochsicheres Golden Image, auf welches das System jederzeit zurückgreifen kann. Die Kombination aus dem sofort betriebsbereiten MachXO3D, dem Golden Image und Supply Guard gewährleistet einen umfassenden Ende-zu-Ende-Lieferkettenschutz.
Hardware-basiertes Secure Boot: Das MachXO3D-FPGA ist die Systemkomponente, die als erste hochfährt und als letzte herunterfährt. Beim Einschalten des Systems überprüft das FPGA selbstständig, ob nur authentifizierte Firmware darauf läuft. Außerdem überprüft es auch die Firmware-Integrität anderer Systemkomponenten. Der mit den NIST SP 800 193 Platform Firmware Resiliency (PFR) Guidelines konforme, gehärtete Secure Configuration Block im MachXO3D ermöglicht es dem FPGA, Cyber-Attacken zu erkennen, das System davor zu schützen und gegebenenfalls seine Integrität wiederherzustellen. Darüber hinaus kann das FPGA dank der massiv-parallelen Verarbeitung der programmierten Funktionen mehrere Plattform-Firmware-Elemente gleichzeitig schützen.
Jay Aggarwal
JP Singh
(na)