Elektroniknet Logo

»Fingerabdruck« schützt Mikrocontroller

Schlüssel aus der DNA eines Chips


Fortsetzung des Artikels von Teil 1

Mikrocontroller mit ChipDNA-Technik

Jeder IC mit einem ChipDNA-Schaltkreis hat also Zugriff auf einen einzigartigen Zufallswert, der niemals extrahiert werden kann, der niemals ausgegeben wird und der nicht einmal innerhalb des ICs existiert – außer in dem Moment, wenn er benötigt wird. Dies gibt nun der in einem Mikrocontroller laufenden Anwendung die Möglichkeit, solche hochsicheren Schlüssel zu nutzen.

Die Anzahl der Ausgangsbits der ChipDNA-Schaltung ist eine Option bei der Implementierung. Abhängig von seiner Länge kann der zufällige Ausgabewert des ChipDNA-Schaltkreises in verschiedene kryptografische Schlüssel aufgeteilt werden, die für unterschiedliche Zwecke verwendet werden, wie z.B. die transparente Verschlüsselung des internen nichtflüchtigen Speichers des Mikrocontrollers, verschiedene Protokolle zur starken Authentifizierung, die auf ECDSA- (Elliptic Curve Digital Signature Algorithm), AES- oder HMAC-Algorithmen (Keyed-Hash Message Authentication Code) beruhen, oder die Verschlüsselung externer Speicher oder Anwendungsdaten.

Einige Schlüssel, die von der ChipDNA-Schaltung ausgegeben werden, können für die im Mikrocontroller laufende Anwendung unsichtbar gehalten werden. Sie können zum Beispiel direkt vom ChipDNA-Schaltkreis in ein Speicherentschlüsselungsmodul übertragen werden. Dann kennt nicht einmal die Anwendung den Kryptoschlüssel für den internen Speicher und kann den Schlüssel nicht unbeabsichtigt preisgeben. Andere Schlüssel hingegen können über spezielle Register für die Anwendung sichtbar gemacht werden. Alternativ können Schlüssel auch mit Zugriffsrechten – oder Identifikatoren – versehen werden, ohne dass ihr Wert für die Anwendung sichtbar wird.

Wichtig bleibt aber: Immer dann, wenn ein Schlüssel explizit von einer Softwareanwendung benutzt wird, dann ist er auch den Schwachstellen der Software ausgesetzt. Die ChipDNA-Technik wird bei einem solchen Szenario nicht helfen können. Um die Software zu schützen und robust für Angriffe zu machen, ist weiterhin die übliche Bandbreite an Sicherheitsmaßnahmen erforderlich. In solchen Fällen sind sicheres Booten, Code-Review mit statischen und dynamischen Code-Analyse-Tools und Softwareisolierung zusätzlich zur ChipDNA-Sicherheit immer noch notwendig.

Zusammenfassend lässt sich sagen, dass ChipDNA nachweislich bei der Verschlüsselung von Daten im Ruhezustand hilft und die Exposition von Schlüsseln auf ein absolutes Minimum reduziert. Die Technik kann auch als einzigartiger, unveränderlicher und unklonbarer Fingerabdruck für eine starke Authentifizierung und Zertifizierung verwendet werden.

Anbieter zum Thema

zu Matchmaker+

Wo ist die PUF-Technik von Nutzen?

Werden bei der Entwicklung neuer IoT-Geräte Standard-Mikrocontroller eingesetzt, so stellt die Speicherung von kryptografischen Root-Schlüsseln, die für die gegenseitige Authentifizierung des Geräts oder die Verschlüsselung und Authentifizierung bei der Kommunikation – z.B. Funknetzwerkschlüssel – verwendet werden, eine Herausforderung dar. Die Sicherheit eines Netzwerks von IoT-Geräten hängt jedoch von der Sicherheit dieser Schlüssel ab. Wird ein Root-Authentifizierungsschlüssel kompromittiert, können kompromittierte Geräte in das Netzwerk eindringen und Schaden anrichten oder die Netzwerkgeräte umleiten, um durch Manipulation der Firmware oder Konfigurationsdaten DDoS-Angriffe mit ihnen durchzuführen.

IoT-Geräte in der Wohnung können den privaten Datenschutz verletzen. Bei medizinischen Anwendungen, die mit hochsensiblen persönlichen Gesundheitsdaten hantieren, sind große Sicherheitsrisiken zu beachten. Es ist unabdingbar, bewährte Sicherheitsmechanismen zu implementieren, um die Informationen zu schützen und das sichere Verhalten von IoT-Geräten zu gewährleisten.

SPSen, Sensoren und Aktoren, die in der Prozessautomatisierung eingesetzt werden, arbeiten mit sensiblen Produktionsinformationen. Ihre Zuverlässigkeit hat auch Auswirkungen auf die Sicherheit, da die Prozesse, für die sie zuständig sind, inhärent gefährlich sein können. Daher müssen sich alle Geräte, die innerhalb solcher Infrastrukturen vernetzt sind, gegenseitig authentifizieren, um das Vorhandensein von kompromittierten Komponenten im System zu verhindern.

Nicht zuletzt nimmt auch in der Automobilindustrie der Automatisierungsgrad immer mehr zu – mit zunehmend komplexen Infotainment-Systemen, fortschrittlichen Fahrerassistenzsystemen (ADAS) und anderen Anwendungen für das autonome Fahren. Cybersicherheitsmaßnahmen sorgen für Sicherheit von Fahrern, Beifahrern und Fußgängern – indem sie die Vertrauenswürdigkeit von Komponenten garantieren und gleichzeitig die Privatsphäre schützen, weil keine Infos zu Fahrgewohnheiten oder Standorten preisgeben werden

Schutz von Mikrocontrollerschaltungen

Die ChipDNA-Technik bietet eine einheitliche »Root-of-Trust«-Architektur für Komponenten solcher Systeme, die aus zwei Varianten bestehen können: Standalone-IC oder Companion-IC. Im Folgenden wird ein Companion-IC vorgestellt, der Entwicklern viele Möglichkeiten für die Sicherheitsimplementierung in ein System bietet. Bild 1 zeigt eine Anwendung, bei welcher der Sicherheits-Mikrocontroller MAX32520 [3] mit ChipDNA-Schaltung von Maxim Integrated gleichzeitig als Companion-IC für kryptografische Operationen, als sicherer externer Flash-Speicher und als Schnittstelle zu empfindlichen Peripherieschaltungen auf dem Modul verwendet wird.

Der Sicherheits-Mikrocontroller MAX32520 enthält eine Chip-DNA-Schaltung als PUF. Er dient hier als Coprozessor für Kryptografiefunktionen
Bild 1. Der Sicherheits-Mikrocontroller MAX32520 enthält eine Chip-DNA-Schaltung als PUF. Er dient hier als Coprozessor für Kryptografiefunktionen:
© Maxim Integrated

Der ChipDNA-Schlüssel verschlüsselt transparent den internen Flash-Speicher des MAX32520, sowohl gemappt als auch privat. Eine direkte physikalische Extraktion des Schlüssels ist unmöglich. Damit bleibt Herstellern die Möglichkeit erhalten, den MAX32520 vor der Weitergabe an die Produktionsstätte mit Firmware, Daten, Schlüsseln und Zertifikaten auszustatten. Die im MAX32520 gespeicherten Informationen sind während des Herstellungsprozesses sicher geschützt.

 Der Code, den der Hauptmikrocontroller ausführen soll, kann im internen Flash-Speicher des MAX32520 – der als Kryptografie-Coprozessor arbeitet – vor unbefugtem Zugriff geschützt abgespeichert werden
Bild 2. Der Code, den der Hauptmikrocontroller ausführen soll, kann im internen Flash-Speicher des MAX32520 – der als Kryptografie-Coprozessor arbeitet – vor unbefugtem Zugriff geschützt abgespeichert werden.
© Maxim Integrated

Der Schutz der Firmware des MAX32520 liegt im Ermessen des Security-Entwicklers. In der vorgeschlagenen Anwendung könnte diese Firmware für eine Reihe von Aufgaben zuständig sein. Dazu zählen zunächst die Initialisierung des MAX32520 und seiner Peripheriegeräte sowie die Bewertung des Codes, der Datenintegrität und der Authentizität des Hauptmikrocontrollers mit einer ECDSA-Signaturprüfung. Der Code und die Daten werden tatsächlich im internen Flash-Speicher des MAX32520 verschlüsselt gespeichert (Bild 2 und 3).

Der MAX32520 kann seinen Flash-Speicher als geschützten Speicher zur Verfügung stellen, Daten verschlüsselt in einem externen Speicher verwalten sowie sichere Schlüssel für die Authentifizierung erzeugen
Bild 3. Der MAX32520 kann seinen Flash-Speicher als geschützten Speicher zur Verfügung stellen, Daten verschlüsselt in einem externen Speicher verwalten sowie sichere Schlüssel für die Authentifizierung erzeugen.
© Maxim Integrated

Hinzu kommt die Aktivierung der JEDEC-Flash-Schnittstelle unter bestimmten Bedingungen. Dies ist ein sehr wichtiger Prozess, bei dem der Zugriff auf verschiedene Informationen durch den Hauptmikrocontroller gesteuert werden kann. Abhängig vom Zustand des Lebenszyklus des Geräts kann beispielsweise der Zugriff auf die Firmware und die Konfiguration der Geräteanwendung gewährt werden oder nicht. Dies trägt dazu bei, das im Gerät enthaltene geistige Eigentum vor Diebstahl zu schützen oder Konfigurationsdaten an Unberechtigte auszugeben – z.B. während des Herstellungsprozesses. Die Daten sind im MAX32520 sicher gespeichert und der Zugriff darauf über den ChipDNA-Schlüssel gesperrt.

Während des Betriebs des ICs in der Endanwendung könnte eine obligatorische kryptografische Aktivierung, z.B. durch einen vertrauenswürdigen Betreiber, der eine starke ECDSA-Authentifizierung mit einem privaten Schlüssel verwendet, den MAX32520 durch Entsperren der JEDEC-Flash-Schnittstelle »aktivieren«, sodass der Hauptmikrocontroller die eigentliche Anwendungsfirmware ausführen und Zugriff auf wichtige Konfigurationsdaten erhalten kann. Dieser Mechanismus bietet Entwicklern sowohl Flexibilität als auch die Möglichkeit, leistungsfähige Sicherheitsrichtlinien einzusetzen.

Schutzschild für den Hauptprozessor

Weiterhin stellt die Firmware Standard-Kryptografiedienste für den Hauptmikrocontroller durch Nutzung der Kryptografiemodule und des echten Zufallszahlengenerators bereit. Sie trennt auch empfindliche Peripherieschaltungen auf der Baugruppe vom Hauptmikrocontroller, indem z.B. Sensoren oder Aktoren begrenzten Zugriff auf die Hauptanwendung erhalten. Ein Anwendungsbeispiel ist ein Temperatursensor: Die Messdaten können vom MAX32520 gelesen, digital signiert und verschlüsselt werden, bevor sie an den Hauptmikrocontroller übertragen werden. Bei diesem Konzept kann ein kompromittierter Hauptmikrocontroller die Sensordaten nicht unerkannt fälschen oder ändern.

Alternativ dazu kann die sichere Kommunikationsschicht durch direkte Verbindung mit einer Netzwerkschnittstelle bereitgestellt werden. Dadurch ist der Hauptmikrocontroller nicht mehr in der Lage, direkt mit dem Netzwerk zu kommunizieren. Er ist dadurch weniger anfällig für Angriffe oder nicht mehr in der Lage, andere Netzwerkgeräte zu manipulieren, falls er selbst kompromittiert wurde. Optional lässt sich die Integrität des IC-Gehäuses überwachen – für hochsensible Anwendungen sehr nützlich, bei denen ein Manipulationsschutz auf IC-Ebene erforderlich ist.

Insgesamt bietet eine solche Anwendung eine Reihe von Vorteilen: Dazu zählt zunächst eine hochsichere Speicherung des Codes und der Daten des Hauptmikrocontrollers und des MAX32520 im Ruhezustand, einschließlich aller kryptografischen Schlüssel auf Anwendungsebene, unter dem Schutz der Kryptografie des ChipDNA-Schlüssels. Diese Codes und Daten sind durch bedingte Verschlüsselung und Manipulation mit einer ECDSA-Signatur vor Offenlegung geschützt.

Hinzu kommt, dass der private ChipDNA-Schlüssel einzigartig wie ein Fingerabdruck ist und den Chip einzigartig und unklonbar macht. Von Vorteil ist auch die starke und leicht zu prüfende Isolierung zwischen dem Hauptmikrocontroller und dem Coprozessor MAX32520. Aufgrund der Zwei-Chip-Architektur kann über Schwachstellen im Hauptmikrocontroller niemals auf den internen Speicher des MAX32520 zugegriffen oder die angeschlossenen Peripherieschaltungen manipuliert werden. Nicht zuletzt bietet die Anwendung Zugang zu standardmäßigen, sicheren kryptograpfischen Modulen sowie echten Zufallszahlengeneratoren und ist in der Lage, Angriffsversuche auf Geräteebene zu erkennen und entsprechend zu reagieren – im Extremfall einschließlich der Vernichtung aller Informationen.

 

Literatur

[1] IEC 62443 Industrielle Kommunikationsnetze – IT-Sicherheit für Netze und Systeme. Teile 1 bis 4.

[2] ISO/SAE DIS 21434 Road vehicles — Cybersecurity engineering.

[3] MAX32520 ChipDNA Secure Arm CortexM4 Microcontroller. Maxim Integrated, Datenblatt, Juni 2019, https://datasheets.maximintegrated.com/en/ds/MAX32520.pdf

 

Der Autor

 

Stephane-di-Vito von Maxim
Stéphane di Vito von Maxim Integrated
© Maxim Integrated

Stéphane di Vito

ist als Senior Principal MTS (Member Technical Staff) im Geschäftsbereich Mikrocontroller, Software & Security von Maxim Integrated zuständig für die Spezifikation von Sicherheits-ICs sowie die Entwicklung sicherer Embedded-Software für industrielle Anwendungen.

Bevor di Vito 2011 zu Maxim kam, arbeitete er im Bereich Softwaresicherheit bei Newsteo, Atmel und Gemalto. Er verfügt über 20 Jahre Erfahrung im Bereich sichere Embedded-Software-Entwicklung.

 


  1. Schlüssel aus der DNA eines Chips
  2. Mikrocontroller mit ChipDNA-Technik

Verwandte Artikel

Maxim Integrated Products