So sichern Sie Authentifizierungsflashs, um Diebstahl zu verhindern

Heute ist Sicherheit von höchster Bedeutung. Heutige Mikrocontroller und Systems-on-Chip sind mit Sicherheitsfunktionen ausgestattet. Allerdings waren serielle Flash-Speicher Hackerangriffen deutlich mehr ausgesetzt. In diesem White Paper wird erklärt, wie Authentifizierungs-Flashs an einen autorisierten Host-Controller zum Schutz von geistigem Eigentum sicher gekoppelt werden können.

 1017_Authentication_Flash_Banner

Authentifizierungs-Flash: Schließen der von konventionellen NOR-Flash-ICs hinterlassenen Sicherheitslücke

Als Antwort auf die große Nachfrage im Bereich sicherheitsbewusster OEMs rüsten die Hersteller moderner Microcontroller und Systems-on-Chip (SoCs) ihre Produkte mit diversen Sicherheitsfunktionen aus: Marktübliche 32-Bit-MCUs für nicht-finanzielle Mainstream-Anwendungen verfügen heute oft über einen kryptographischen Hardware-Beschleuniger, einen Zufallszahlgenerator (RNG) und sichere Speicherorte.

Serielle Flash-Speicher – die Standorte, an denen viel wertvolles geistiges Eigentum eines OEMs aufbewahrt wird – waren dagegen traditionell immer anfälliger gegenüber Angriffen als SoCs oder Microcontroller. Sicherheitsschwächen in jeweiligen Flash-Speichern von MCUs oder SoCs setzten OEMs durch das Nachbilden von zurückentwickelten PCB-Designs einem Diebstahlrisiko aus. In diesem Artikel wird erklärt wie Authentifizierungs-Flashs an einen autorisierten Host-Controller sicher gekoppelt werden können.

Heutige Sicherheitslücken

Eine grundlegende Sicherheitsanforderung für jedes seriöse OEM ist die Prävention von möglichen Diebstählen oder Nachbildungen der OEM-IPs, einschließlich der Anwendungscodes, die auf externen NOR-Flashs aufbewahrt werden.

Natürlich sind die meisten, in einem Elektronik-Endprodukt eingebetteten Informationen nicht geheim. Betrachten wir das Beispiel eines Smart-Home-Internet of Things (IoT)-Thermostats: Mit einer akribischen Analyse der integrierten Bauteile des Thermostats können alle Komponenten und ihre Anordnung genau identifiziert werden, sodass später jeder beliebige Betrieb ihn originalgetreu nachbauen kann. Das Hardware-Design ist leicht zugänglich.

Der Anwendungscode ist geheim – oder sollte es zumindest sein. Ein elektronisches System ist allerdings nur so stark wie sein schwächstes Glied. Die Haupt-SoCs oder MCUs sind heute durch Verschlüsselung, Antimanipulations-Maßnahmen und sichere Speichermöglichkeiten in Hardware und Software geschützt. Externe Flash-Speicher-ICs bilden einen guten Einstiegspunkt für einen Angreifer , der an der Nachbildung des Produkt-Anwendungscodes interessiert ist.

Aus diesem Grund beschützen OEMs heute die Hardware zum Speichern von Codes mithilfe einer einzigartigen Identifikationsnummer (UID), die an einem speziell dafür vorgesehenen Speicherplatz im Flash-IC aufbewahrt wird. In Wahrheit stellt eine UID nur eine geringfügige Barriere für potenzielle Angreifer dar. Jeder Entwickler mit Grundkenntnissen in Systemsicherheit wird die UID orten und identifizieren können, um dann die Kopplung zwischen dem MCU und der Codespeicher-Hardware zu deaktivieren. OEMs Vertrauensanker bricht mit der Deaktivierung der Kopplung. Der auf dem Gerät gespeicherte Code kann kopiert werden und die Nachbildung des Thermostat-Designs kann nun problemlos angefertigt werden.

Die UID an sich ist nicht sicher und führt zur Schwäche des gesamten Flash-Sicherheitssystems. Es ist eine konstante, unveränderliche Zahl, die, einmal dem Speicher ausgelesen, von einem nicht-autorisierten Host immer wieder verwendet werden kann.

Sichere, dynamische Authentifizierung ist die Lösung

Die Lösung dieses Problems ist aus theoretischer Sicht einfach: Die UID muss sich nach jeder Speicherverwendung durch den Host ändern. Die Implementierung einer festen UID ist verlockend einfach: Sie muss nur einmal in den Flash-Speicher und in den Host-Controller programmiert werden. Durch Vergleich der beiden Werte erfolgt dann die Authentifizierung des Flash-Geräts.

Wie kann sich also die UID bei jeder Host-Anfrage ändern, und dabei vom Host erkannt werden?

Symmetrische Verschlüsselung der Speicher-ID

Es ist das Problem, welches Winbond mit seiner W74M-Familie von Authentifizierungs-Flash-ICs angehen will (siehe Abbildung 1). Winbond ist für sein großes Produktangebot an seriellen NOR- und NAND-Flash-Speicher-ICs bekannt: mit etwa 30% Markanteil ist es der weltgrößte Produzent von seriellen Flashs. Winbond lieferte 2,1 Milliarden der seriellen Spiflash®-Flash-IC-Einheiten im Jahr 2016 aus.

Die Sicherheitsanfälligkeit der Flash-Speicher ist ein Problem, das Winbond derzeit mit der Einführung der W74M-Familie lösen möchte. Symmetrische Verschlüsselung stellt die grundlegende Methode zur Sicherung der Speicheridentität dar: Der „Ausgangsschlüssel" ist nun ein gemeinsames Geheimnis von Host und Speicher.

 

1017_Figure1_Winbond_Article1_1 

Abb.1: die Architektur der W74M-Multi-Chip-Verpackung

 

Der Ausgangsschlüssel wird allerdings niemals direkt zwischen Host und Speicher ausgetauscht (dem "Abrufer" und dem "Responder"). Stattdessen wird die verschlüsselte Nachricht (ein Hash-based Message Authentication Code oder HMAC) von einem Ausgangsschlüssel zusammen mit einem dynamischen Element wie dem Zufallszahlgenerator generiert; diese wird dann vom SHA-256-Verschlüsselungsalgorithmus weiterverarbeitet. SHA-256 steht für Secure Hash Algorithm mit einer Aufnahmekapazität von 256 Bit. Es ist eine kryptographische Hash-Funktion, die als ein Bundesstandard für Informationsverarbeitung (FIPS) vom amerikanischen Nationalen Institut für Standards und Technologie (NIST) veröffentlicht wurde. Es handelt sich um eine aus praktischer Sicht unverwüstliche, kryptographische Funktion zur Bearbeitung finanzieller Transaktionen.

Ähnliches Produkt:

W74M25JVZEIQ

Winbond Electronics Flash Anzeigen

Zur Authentifizierung des W74M-Speichers vergleicht der Host-Controller den HMAC-Wert des Speichers mit dem mithilfe des Ausgangsschlüssels erstellten Wert und der entsprechenden von SHA-256 erstellten Zufallszahl. Normaler Speicherbetrieb wird bei Übereinstimmung dieser Werte ermöglicht.

Der HMAC-Wert enthält mit der Zufallszahl ein dynamisches Element und variiert daher bei jedem Zugriff. Das bedeutet, dass, wie oben dargelegt, erfolgreiche Angriffe gegen einen Flash-Speicher mit einer festen UID, bei einem W74M-Speicher fehlschlagen werden. Die Wahrscheinlichkeit, dass ein Angreifer den HMAC entschlüsseln und den Wert des Ausgangsschlüssels erhalten kann, geht aufgrund der Sicherheit der SHA-256-Funktion praktisch gegen Null.

Abbildung 1 zeigt zwei weitere interessante Funktionen des W74M. Der nicht-flüchtige gleichförmige Zähler führt eine zusätzliche Überprüfung der Speicherauthentizität durch. Der Zähler wird nach Erstellung des Ausgangsschlüssels auf Null gesetzt und eine Bestelleinheit nach Eingang des Befehls vom Host-Controller addiert, sodass der Zähler einen nur dem Speicher und dem Host bekannten Wert aufweist. Falls der vom Speicher bei der Host-Anfrage angegebene Zählerwert mit dem Host-Zählerwert nicht übereinstimmt, werden der HMAC-Wert des Speichers und der vom Host berechnete Wert nicht übereinstimmen: Es zeigt dem Host-Prozessor an, dass das W74M-Authentifizierungsgerät manipuliert wurde.

Ähnliches Produkt:

W74M01GVZEIG

Winbond Electronics Flash Anzeigen

Der Prozessor kann diese Information zum Schutz des Hostsystems verwenden, indem er den Zugang zu den Host-Ressourcen für das manipulierte Gerät versperrt. Dies bietet Schutz davor, dass der Angreifer die ursprüngliche W74M-Einheit durch eine andere ersetzt, und damit die Kontrolle übernimmt.

Diese Schutzeigenschaft ist für die zweite, in Abbildung 1 gezeigte Funktion relevant: Es gibt vier Instanzen für Kombinationen von Ausgangsschlüssel/HMAC/gleichförmigem Zähler in jedem W74M-Gerät. Eine Instanz wird zur Authentifizierung vom Controller des Hostgeräts verwendet. Die sonstigen drei „Authentifizierungskanäle” sind für die Verwendung in IoT-Geräten vorgesehen, die ihre Identität bestätigen müssen, wenn sie Zugang zu Netzwerkdienstleistungen erhalten möchten (siehe Abbildung 2). Wie in der Abbildung gezeigt, können verschiedene Ausgangsschlüssel für jeden Authentifizierungskanal sicher aufbewahrt und an das relevante Hostgerät mitgeteilt werden. Ein Gerät kennt die Ausgangsschlüssel des anderen Geräts nicht. Die Ausgangsschlüssel des Hostgeräts, des Internet-Gateways und des Cloud-Dienstes bleiben also geheim.

 

 1017_Figure2_Winbond_Article1_2

Abb.2: mehrschichtige Authentifizierung durch das W74M

 

Eine Drone, die ein aus mehreren Komponenten bestehendes System ist, stellt ein anderes Beispiel für die Nutzung der vielschichtigen Authentifizierungsfähigkeit dar. Ein W74M-Gerät in einem dieser Elemente kann zur Authentifizierung folgender Teile verwendet werden:

- Der Hauptprozessor der Drone
- Das wechselbare Akkumodul
- Kontrolle der Fernsteuerung
- Eine Kamera

Der Dronenhersteller kann durch sichere und verschlüsselte Authentifizierung gewährleisten, dass nur markengeschützte Kameras und Ersatzakkus verwendet werden. Auch wird die Möglichkeit von unautorisierter Übernahme der Fernsteuerung während des Flugs unterbunden.

Sichere Implementierung

Die kryptographischen Funktionen von W74M sind, wie oben dargelegt, extrem sicher. Zusätzliche Sicherheit bietet die Tatsache, dass die Ausgangsschlüssel im OTP-Speicher aufbewahrt werden, der von einem externen Gerät aus nicht ausgelesen werden kann.

Das W74M-Gerät selbst ist daher grundsätzlich sicher. Sichere Implementierung braucht eine Sichere Versorgung, um sicherzustellen, dass die in jeder W74M-Einheit, Host-SoC oder Controller programmierten Ausgangsschlüssel ein Geheimnis von OEM bleiben. Dies ist vor allem von den unternehmenseigenen Versorgungs- und Produktionsprozessen abhängig, obwohl sich Winbond bei Bedarf um die Bereitstellung der Ausgangsschlüssel im Namen des Kunden kümmern kann.

Die W74M-Familie von Flashgeräten zur Authentifikation ist in unterschiedlichen Dichten zwischen 32 MB und 1 GB in Standardverpackungen verfügbar. Heute können im Rahmen eines sicheren Gerätedesigns die NOR/NAND-Flash-ICs zur Codespeicherung und die externen Authentifizierungs-ICs durch ein einfaches W74M-Paket ersetzt werden. Dieses passt in eine standardmäßige Flash-Halterung und führt zur Reduktion der Stücklistenpreise und der Komponentenzahlen bei gleichzeitiger Gewährleistung höchster Sicherheitsstandards bei der Authentifizierung.

Das W74M ist auch als ein reiner vielschichtiger Authentifizierungsgerät ohne NOR-Flash-Speicherkapazität verfügbar, mit den Teilenummern W74M00AVSSIG und W74M00AVSNIG.

Von CS Lin
Marketingleiter, Winbond Electronics Corporation America 

Neue Beiträge

Leider ergab Ihre Suche kein Ergebnis

Aktuelles über Elektronikkomponenten­

Wir haben unsere Datenschutzbestimmungen aktualisiert. Bitte nehmen Sie sich einen Moment Zeit, diese Änderungen zu überprüfen. Mit einem Klick auf "Ich stimme zu", stimmen Sie den Datenschutz- und Nutzungsbedingungen von Arrow Electronics zu.

Wir verwenden Cookies, um den Anwendernutzen zu vergrößern und unsere Webseite zu optimieren. Mehr über Cookies und wie man sie abschaltet finden Sie hier. Cookies und tracking Technologien können für Marketingzwecke verwendet werden.
Durch Klicken von „RICHTLINIEN AKZEPTIEREN“ stimmen Sie der Verwendung von Cookies auf Ihrem Endgerät und der Verwendung von tracking Technologien zu. Klicken Sie auf „MEHR INFORMATIONEN“ unten für mehr Informationen und Anleitungen wie man Cookies und tracking Technologien abschaltet. Das Akzeptieren von Cookies und tracking Technologien ist zwar freiwillig, das Blockieren kann aber eine korrekte Ausführung unserer Website verhindern, und bestimmte Werbung könnte für Sie weniger relevant sein.
Ihr Datenschutz ist uns wichtig. Lesen Sie mehr über unsere Datenschutzrichtlinien hier.