606-IAR-Bild 2

(Bild: Secure Thingz/IAR Systems)

Eckdaten

Die Berücksichtigung von Sicherheitsaspekten bedeutet für Entwickler immer eine Herausforderung – mit geeigneten Entwicklungstools lässt sich Sicherheit auch ohne Expertenwissen nahtlos in den Design- und Implementierungs-Workflow integrieren. Secure Thingz und IAR Systems bieten zur Entwicklungs-Toolchain IAR Embedded Workbench die integrierten Security-Tools Embedded Trust und C-Trust an. Embedded Trust konfiguriert einen Vertrauensanker in Mikrocontrollern zur Bereitstellung weitere sicherheitskritischer Dienste für IoT-Infrastrukturen. Über C-Trust kann die passende Sicherheitskonfiguration automatisiert verschiedenen Entwicklern zur Verfügung gestellt werden.

Durch die Integration von Sicherheitsfunktionen auf SoC-Ebene, wie zum Beispiel ARM Trustzone, kann eine klassische Sicherheits-Hardware wie eine SIM-Karte im Mobiltelefon ersetzt werden. Das spart Kosten und erlaubt eine höhere Flexibilität der Sicherheitsumgebung, die für unterschiedliche Zwecke eingesetzt werden kann, wie zum Beispiel für das Bezahlen mit dem Mobiltelefon, die Netzwerk-Authentisierung oder auch die Absicherung digitaler Inhalte.

Die SoC-Integration von Sicherheitsfunktionen hat allerdings Auswirkungen auf den Herstellungsprozess, die Initialisierung und den Betrieb der Sicherheitsumgebung. Im Vergleich zu einem separaten SE (Secure Element) erfordert eine integrierte Sicherheitslösung einen vorinstallierten sogenannten Vertrauensanker (Root-of-Trust, RoT) und eine Sicherheitsumgebung mit einem speziellen Sicherheits-Betriebssystem, das hohe Datenraten, Multitasking und eine gleichzeitige Prozessausführung von sicherheitskritischen Diensten ermöglicht. Besonders eine sichere gleichzeitige Kommunikation über TLS (Transport Layer Security) erfordert die Unterstützung von asynchronen Ver- und Entschlüsselungsprozessen, die im sicheren Betriebssystem durchgeführt werden.

Der Vertrauensanker muss bei der Produktion initialisiert werden und stellt die Grundlage für die Verwaltung der Sicherheitsumgebung dar, speziell für die erforderlichen Individualisierungs- und Personalisierungsprozesse. Da Geräte wie zum Beispiel Wearables, Smartphones oder IoT-Sensoren zu einem späteren Zeitpunkt personalisiert werden können, sorgt dieser RoT für eine robuste Geräteidentität und ermöglicht einen Attestierungsdienst, um die Integrität des Gerätes, insbesondere des Secure OS und der Daten, zu überprüfen.

Initialisierung eines Vertrauensankers im SoC

Ein robuster Vertrauensanker, der bereits in der Entwicklung berücksichtigt und während der Produktion in den Chip integriert wird, schafft die Grundlage für ein sicheres Management des gesamten Geräts, einschließlich des Betriebssystems und der Applikationen. Das Lifecycle-Management des Geräts umfasst das Laden, Ändern und vollständige Löschen von sicherheitskritischem Code und Daten, insbesondere personenbezogener Daten. Das Unternehmen Secure Thingz stellt zusammen mit der Schwesterfirma IAR Systems die dafür geeigneten Technologien bereit. Das beinhaltet zum einen die notwendige Entwicklungsumgebung Embedded Trust, die bereits einen Vertrauensanker während der Implementierung vorsieht, also auch die notwenigen Produktionstechnologien zur Initialisierung dieses Vertrauensankers mit Secure Deploy.

Bild 1: Vergleich eines Gerätes mit einer separaten Sicherheitshardware und einer SoC-integrierten Sicherheitslösung. Secure Thingz/IAR Systems

Vergleich eines Gerätes mit einer separaten Sicherheitshardware und einer SoC-integrierten Sicherheitslösung. Secure Thingz/IAR Systems

Der Vertrauensanker schafft die Voraussetzung für die Personalisierung eines Betriebssystems in einer unsicheren Umgebung, zum Beispiel, wenn das Gerät bereits installiert wurde oder sich in den Händen des Benutzers befindet. Basierend auf dem RoT kann ein sicherer Datenkanal etabliert werden, der das Herunterladen sicherheitskritischer Daten auch dann ermöglicht, wenn sich das Gerät bereits in Benutzung befindet. Ein Vertrauensanker ermöglicht eine Sicherheitsanbindung zwischen dem Gerät und einer externen vertrauenswürdigen Verwaltungseinheit, indem geheime Informationen gemeinsam genutzt werden. Bei diesen geheimen Informationen kann es sich um asymmetrische oder symmetrische kryptographische Schlüssel handeln, mit deren Hilfe ein gesicherter Kanal zum Gerät aufgebaut wird.

Dieser Vertrauensanker muss etabliert werden, bevor andere Software, speziell ein Betriebssystem oder eine Firmware auf dem Gerät installiert wird. Ein Secure-Boot-Manager, der mit dem RoT initialisiert wurde, ist für die Integrität des gesamten Chipsatzes und der Software verantwortlich.

Es ist wichtig, dass der Chipsatz über die erforderlichen Fähigkeiten verfügt, um die zum RoT gehörenden kryptographischen Schlüssel zu schützen, wie zum Beispiel ARM Trustzone oder ein integrierter Sicherheitsprozessor. Typischerweise sind dies asymmetrische Schlüsselpaare, bestehend aus einem öffentlichen und einem geheimen privaten Schlüssel. Bei öffentlichen Schlüsseln reicht ein einfacher Integritätsschutz auf dem Chipsatz aus, während private Schlüssel vor einem unbefugten Lesezugriff in der Sicherheitsumgebung geschützt werden müssen (siehe Buch „Kryptographie und IT-Sicherheit erschienen im Springer-Verlag).

Thema der nächsten Seite: Administration der SoC-basierenden Sicherheit

Bild 3: Autorisierung eines Zugriffs. Secure Thingz/IAR Systems

Autorisierung eines Zugriffs.




Secure Thingz/IAR Systems

Die sichere Administration eines Geräts beinhaltet folgende Aspekte:

  • Überprüfung der Chip- / Geräteidentität und -integrität von extern
  • Integritätsschutz von Code und Daten während des Ladens und der Laufzeit
  • Sicheres Laden von gegebenenfalls verschlüsseltem Programmcode und Applikationen
  • Sicheres Laden von Benutzerdaten (Personalisierung)
  • Sicheres Deaktivieren des Geräts und Löschen von Benutzerdaten
  • Initialisierung einer Ende-zu-Ende gesicherten Kommunikation, zum Beispiel für eine Konfigurationsänderung oder ein Update
  • Authentifizierung und Autorisierung von Benutzerzugriffen oder Konfigurationsänderungen
  • Übertragung von Rechten und Erlaubnissen, insbesondere Übertragung von Kontrolle an Dritte, zum Beispiel bei einem Besitzerwechsel des Geräts

Im Folgenden werden drei administrative Prozesse genauer beleuchtet.

Attestierung der Geräte-Identität

606-IAR-Bild 4

Verschlüsselte Datenübermittlung. Secure Thingz/IAR Systems

Geht es um die Identifikation eines Gerätes, also die sogenannte Attestierung, beinhaltet der RoT eine Identität und einen privaten Schlüssel, die beide während der Herstellung mit den Technologien von Secure Thingz/IAR Systems bereits sicher im Bootloader des Chipsatzes initialisiert werden. Eine Aufforderung zur Identifikation wird zusammen mit einer Zufallszahl an das Gerät gesendet. Das Sicherheitssystem verschlüsselt diese Zufallszahl mit dem passenden privaten Schlüssel und sendet das Ergebnis mit der Identitätsinformation zurück. Die verifizierende Instanz außerhalb des Geräts kann mithilfe des öffentlichen Schlüssels die Antwort entschlüsseln. Wenn das Ergebnis der vorherigen zufällig gewählten Anfrage entspricht, hat das Gerät seine Identität bewiesen.

Autorisierung eines Zugriffs auf das Gerät

Umgekehrt funktioniert dies bei der Autorisierung eines Zugriffs auf das Gerät, das heißt der RoT enthält einen öffentlichen Schlüssel. Jetzt verfügt die externe Einheit über den korrespondierenden privaten Schlüssel und kann mithilfe dieses Schlüssels eine Aktion autorisieren, Code bereitstellen oder Daten in der Sicherheitsumgebung verändern. Die externe Einheit, zum Beispiel ein IoT-Backend, wird in diesem Szenario auf dem Chip identifiziert, da der private Schlüssel eindeutig beispielsweise einer Person oder einem IT-System zugeordnet werden kann. Diese Zuordnung erfolgt normalerweise in Form einer PKI (Public Key Infrastruktur). Erwähnenswert ist auch, dass in diesem Fall der öffentliche Schlüssel auf dem Gerät vor Änderungen und Austausch geschützt werden muss, aber nicht geheim gehalten werden muss. Der RoT muss in diesem Fall nur einen Integritätsschutz gewährleisten.

Ende-zu-Ende-Verschlüsselung von Daten

Die Geheimhaltung von Code, Daten und Verwaltungsbefehlen erfordert ein hybrides Verschlüsselungsverfahren, das heißt eine Kombination aus symmetrischer und asymmetrischer Verschlüsselung, da asymmetrische Algorithmen nicht geeignet sind, größere Datenmengen zu verschlüsseln. In dieser Kombination wird der symmetrische Schlüssel nur temporär generiert und mit den verschlüsselten Daten an das Gerät gesendet. Der symmetrische Schlüssel selbst wird erneut mit dem öffentlichen Schlüssel des Geräts verschlüsselt. Das Sicherheitssystem hat Zugriff auf den im RoT gespeicherten privaten Schlüssel des Geräts und kann in einem ersten Schritt den flüchtigen symmetrischen Schlüssel entschlüsseln und in einem zweiten Schritt die Daten mithilfe des symmetrischen Schlüssels dechiffrieren. Dieses Szenario ist relevant, wenn vertrauliche Personalisierungsdaten an das Gerät gesendet werden, zum Beispiel Schlüssel für eine Netzwerk-Authentisierung.

Zusammenfassung

Die nächste Generation hochintegrierter Sicherheitslösungen auf Chipebene sind bereits im Markt. Damit ändern sich die Prozesse und Verfahren, wie Sicherheitsumgebungen verwaltet und personalisiert werden. Es wird ein Vertrauensanker notwendig, wie ihn Secure Thingz/IAR Systems bereitstellen und der bereits bei der Entwicklung der Gerätesoftware berücksichtigt und in der Produktion initialisiert wird. Das ermöglicht anschließend eine sichere Personalisierung und Verwaltung des Geräts auch außerhalb einer geschützten Umgebung. Klassische Verfahren wie die sichere Personalisierung in speziellen Produktionsanlagen werden damit hinfällig. Schlussendlich wird die Sicherheit kostengünstiger und auch flexibler.

 

Dr. Stephan Spitz

Chief Strategy Officer SecureThingz / Chief Project Officer IAR Systems

(neu)

Sie möchten gerne weiterlesen?

Unternehmen

IAR Systeme GmbH

Werner-Eckert-Str. 9
81829 München
Germany