In modernen Autos arbeiten komplexe Systeme mit vielen Millionen Zeilen Software-Code, der auf Dutzenden von Steuergeräten läuft. Heutzutage sind diese Systeme vernetzt, und sie erzeugen sowie verarbeiten immer größere Datenmengen. Dazu kommt eine neue Generation von Verbrauchern, die es gewohnt sind, ihre Mobilgeräte in kurzen Abständen zu aktualisieren, und die jetzt dasselbe von ihren Autos erwarten.

Bild 1: Die Komponenten eines sicheren Systems für OTA-Software-Updates.

Bild 1: Die Komponenten eines sicheren Systems für OTA-Software-Updates.QNX

Die Automobilhersteller müssen auf diesen Trend eingehen und in der Lage sein, fortlaufend neue und verbesserte Software für ihre Fahrzeuge bereitzustellen. Der Code muss aktualisiert werden, um verbesserte Funktionalität, Problemkorrekturen sowie neue Anwendungen und Dienste für bereits ausgelieferte Autos bereitzustellen.

Die Automobilhersteller haben aus gutem Grund das Internet der Dinge (IoT) entdeckt: Es erlaubt ihnen, ihre Fahrzeuge mit neuen Features aktuell zu halten und schnell auf die veränderliche Nachfrage nach den jeweils neusten cloudbasierten Diensten wie Karten, Navigation und Spracherkennung zu reagieren. Diese Anbindung erlaubt mehr als nur Entertainment. IoT-Technologien kommen zum Einsatz, um Dienste bereitzustellen, mit neuen Features das Kundenerlebnis zu verbessern und neuen behördlichen Auflagen zur Anbindung an Notrufdienste wie eCall (Europa), Simrav (Brasilien) und ERA GLONASS (Russland) zu entsprechen.

OTA-Updates

Bisher erfolgte die Aktualisierung der Fahrzeugsoftware wie jede andere physikalische Komponente des Autos, nämlich bei einem Termin im Autohaus beziehungsweise im Rahmen der routinemäßigen Inspektion. Dieser reagierende Ansatz ist für Automobilhersteller zeit- und kostenaufwendig, und er ist mühsam für die Kunden. Drahtlos beziehungsweise OTA (Over-the-Air) ausgelieferte Softwareupdates lösen dieses Problem. Hierbei aktualisiert ein zentralisierter Cloud-Dienst die Softwarekomponenten im Feld, wobei die Möglichkeit besteht, die jeweils ausgelieferte Software abhängig von Variablen wie Hardwareversion, Ländervariante oder Kundenabonnements individuell zuzuschneiden. OTA-Updates können die Software in Infotainment-Systemen, Telematikeinheiten und anderen Endpunkten im Fahrzeug aktuell halten und verbessern. Die Wartung der Software im Automobil erfolgt nun auf Initiative des Herstellers und nicht mehr nur als Reaktion auf Kundenanfragen. Dies ist sowohl für die Hersteller als auch für die Verbraucher von Vorteil.

Bild 2: Schutz der Bordelektroniknetzwerke eines Fahrzeugs mittels Public-Key-Infrastruktur.

Bild 2: Schutz der Bordelektroniknetzwerke eines Fahrzeugs mittels Public-Key-Infrastruktur.QNX

OTA-Softwareupdates bieten den Automobilherstellern finanzielle Vorteile. Die Kosten von Softwaredefekten in bereits ausgelieferten Fahrzeugen steigen schnell. Ein Garantiefall kostet typischerweise zwischen 250 € und 400 € pro Fahrzeug; mehr als 30 % davon sind Lohnkosten. Auch die Unannehmlichkeiten, die dem Kunden entstehen, sind kaum zu übersehen. Der Kunde muss Zeit für einen Servicetermin finden und gegebenenfalls vorübergehend ohne sein Fahrzeug auskommen. Genau wie bei traditionellen Rückrufaktionen verringern solche Ärgernisse das Vertrauen und das Qualitätsempfinden des Kunden. Darüber hinaus kommt eine Softwareplattform häufig in vielen Serien zum Einsatz, sodass ein einziger Fehler Millionen von Fahrzeugen betreffen kann. OTA bietet sich daher als Teil eines umfassenden Plans für ein effektiveres Rückrufmanagement an. Mit OTA können Updates praktisch ohne negative Folgen für den Kunden verteilt werden.

OTA im Connected-Car

Features, die Netzanbindung erfordern, sind längst nicht mehr nur High-End-Modellen vorbehalten. Laut IHS Automotive sammeln vernetzte Autos bereits heute in Millionen kleiner Datenübertragungen mehr als 480 Terabyte Daten pro Jahr. Nicht nur die Anzahl der vernetzten Autos nimmt zu, sondern es gibt auch immer mehr Features, die auf Netzanbindung angewiesen sind und die Datenrate jedes einzelnen vernetzten Autos immer weiter ansteigen lassen. IHS Automotive sagt für das Jahr 2020 voraus, dass 152 Millionen vernetzte Autos insgesamt 11,1 Petabyte Daten pro Jahr übertragen werden. Angesichts der Komplexität von Fahrzeugsoftware sind drahtlose Softwareupdates keine einfache Aufgabe.

Eckdaten

Sicherheit muss ein Schlüsselprinzip bei der Entwicklung von Systemen sein, bei denen ein Update über die Luftschnittstelle (OTA) möglich ist. Die Datensicherheit beginnt am Fließband (beziehungsweise beim Systemdesign in den E/E-Entwicklungsabteilungen) und zieht sich über eine sichere Netz-Infrastruktur, Authentifizierung, Verschlüsselung und Signaturen bis zur Autorisierung als roter Faden durch das fahrzeugübergreifende Gesamtsystem.

Skalierbarkeit ist eine wichtige Voraussetzung für OTA-Lösungen, damit zuverlässig die Updates weltweit an Millionen Fahrzeuge im Push-Betrieb versandt werden können. Global verteilte Rechenzentren müssen Billionen Transaktionen pro Tag und Dutzende Petabyte Datenverkehr pro Monat verarbeiten. Die Hosting-Netzwerke müssen ultrazuverlässig arbeiten und benötigen dafür Redundanz sowie automatische Wiederherstellung (Recovery). Idealerweise kann die Lösung skalieren, indem sie über Proxys Verbindung zu anderen Netzen oder Systemen aufnimmt.

Effizienz ist eine weitere Vorbedingung für OTA-Updates. Es werden Systeme benötigt, die die Updates gestaffelt verteilen können, um gerade in Ballungsräumen eine Überlastung der Netze sowie zu hohen Stromverbrauch im empfangenden Fahrzeug zu vermeiden, wenn die Auslieferung der Updates an Millionen von Fahrzeugen erfolgt. Effizienz bedeutet aber auch, dass die Updates zeitnah ausgeliefert werden müssen. Für eine schnelle und einfache Umsetzung sollte eine OTA-Lösung über eine intuitive Bedienoberfläche verfügen, mit der Bediener die Kriterien für Updates definieren und auf einer Konsole alle Updates verwalten können.

Sicherheit

Ganz oben auf der Anforderungsliste jedes Automobilherstellers steht die Sicherheit. Viele Anbieter von IoT-Lösungen preisen Datensicherheit (Security) als herausragendes Feature an, doch wenige können tatsächlich lückenlose Ende-zu-Ende-Sicherheit gewährleisten. Fehlt diese, gibt es aber zahlreiche Schwachstellen, an denen Angreifer die Fahrzeugsoftware kompromittieren können. Von Komponenten wie dem Kombi-Instrument oder der Motorsteuereinheit können Leben oder Tod von Fahrer und Fahrgästen abhängen. Hier ist selbst ein kleines Risiko schon zu groß. Was genau sind die zentralen Elemente, die für lückenlose Sicherheit bei OTA-Updates benötigt werden?

Security beginnt am Fließband

Bild 3: Ablaufplan eines OTA-Softwareupdates.

Bild 3: Ablaufplan eines OTA-Softwareupdates.QNX

Sicherheit beginnt bereits am Fließband, wo private Schlüssel oder Zertifikate in die Fahrzeugkomponenten implantiert werden. Diese Technik soll Komponentenfälschungen verhindern, ist aber auch für OTA-Softwareupdates von Bedeutung, weil mit ihr ein Paar aus privatem und öffentlichem Schlüssel sowie Identifikationsinformationen wie Fahrzeugidentifizierungsnummer (VIN), Modell und Produktionsdatum an jede Komponente gebunden werden. Der Automobilhersteller sollte außerdem eine vertrauenswürdige Stamm-Zertifizierungsstelle für das Schlüsselmanagement benutzen. Sicherheit erst nachträglich hinzuzufügen ist immer schwieriger, als sie von Anfang an mit einzubauen. Ein Fahrzeugsystem, das die werksseitige Ausstattung mit privaten Schlüsseln oder Zertifikaten unterstützt, ist sowohl für die Lieferkette als auch für den Software-Management-Prozess von Vorteil.

Sichere Netz-Infrastruktur

Ein OTA-Dienst muss in einem sicheren und redundanten Netz laufen, bei dem Server und Infrastruktur in physikalisch gesicherten Gebäuden mit klar definierten Notfallplänen untergebracht sind. Um nicht autorisierte Netzwerkzugriffe auf die Daten zu verhindern und die verbundenen Systeme zu schützen, ist für den Dienst die Verwendung einer sicheren Firewall absolute Pflicht. Die Host-Rechenzentren müssen rund um die Uhr auf Sicherheitsrisiken und Sicherheitsverletzungen wie DoS-Attacken überwacht werden. Gleichzeitig ist es erforderlich, dass bei sicherheitsrelevanten Vorfällen Mitarbeiter bereitstehen, die sofortige Gegenmaßnahmen einleiten, die Bedrohung isolieren und auf Fälle von Datenkompromittierung reagieren. Zur Gewährleistung von Zuverlässigkeit und Verfügbarkeit sollten die Rechenzentren weltweit verteilt sein und redundante Systeme nutzen, um Datenverluste zu vermeiden. Aktiv-Aktiv-Server-Cluster können die Ausfallzeiten minimieren. Schließlich hat es sich als empfehlenswert erwiesen, wenn die Host-Rechenzentren elastische IT-Technologien einsetzen, die autonom auf veränderliche Workloads reagieren können.

Authentifizierung

Bild 4: OTA-Autorisierungsmitteilung an den Benutzer (in einem Maserati).

Bild 4: OTA-Autorisierungsmitteilung an den Benutzer (in einem Maserati).QNX

Der erste wichtige Schritt zur Bereitstellung eines sicheren Dienstes ist die Authentifizierung. Bei der Authentifizierung übermittelt ein Benutzer oder ein Gerät Anmeldeinformationen, die seine Berechtigung zur Nutzung des Dienstes oder zum Empfang von Inhalten belegen. Im Automobil-Kontext könnte sich ein Nutzer zum Beispiel einfach dadurch authentifizieren, dass er den passenden Autoschlüssel besitzt. Idealerweise nutzt die Authentifizierung für einen OTA-Dienst die bei dem zuvor beschriebenen Herstellungsprozess implantierten Schlüssel oder Zertifikate. Eine gut geplante OTA-Plattform bietet einen gemeinsamen Authentifizierungspunkt und ermöglicht den Zusammenschluss von Diensten auf dem Backend, auch als Föderation bekannt. Die Plattform kann Föderation durch einen Single-Sign-On-Ansatz erzielen, bei dem Benutzer mit einer zentralen Identität Zugriff auf die Dienste mehrerer Anbieter erlangen. Der Vorteil für den Kunden besteht darin, dass nur eine Anmeldung erforderlich ist, um auf verschiedene Anwendungen zuzugreifen, während Föderation dem Automobilhersteller die Portierung von Identitätsinformationen über separat voneinander laufende Dienste ermöglicht.

Kundendaten

Wo personenbezogene Daten im Spiel sind, sollte die OTA-Lösung die Anmeldedaten von Endpunkt und Benutzer durch Tokenisierung schützen. Tokenisierung anonymisiert personenbezogene Daten und ersetzt sie durch unkritische Daten. Das Verfahren minimiert so die Exposition der Kundendaten nicht nur gegenüber möglichen Eindringlingen sondern auch gegenüber Mitarbeiten und Systemen des Automobilherstellers, die zwar keine Bedrohung darstellen, aber diese sensiblen Informationen für ihre Arbeit nicht kennen müssen. Für die Authentifizierung mit Benutzername und Kennwort kann der offene Standard O-Auth benutzt werden, der nur ein Token an den Automobilhersteller weitergibt. Viele Menschen nutzen O-Auth tagtäglich, um sich bei Websites wie Facebook, Google und Twitter anzumelden. O-Auth bietet einen effektiven Weg, Fahrzeughalter für OTA-Updates zu authentifizieren, ohne dass diese den verschiedenen Apps ihre Kennwörter offenlegen müssen, die sie in ihren Fahrzeugen benutzen.

Verschlüsselung

Der zweite Schritt bei der Bereitstellung eines sicheren Dienstes ist die verschlüsselte Kommunikation. Verschlüsselung ist sowohl für ruhende Daten als auch für Datenübertragungen wichtig. Verschlüsselung alleine verhindert nicht den Zugriff auf die übertragenen Daten durch Dritte, aber sie macht den Inhalt der übertragenden Daten für mithörende Lauscher unlesbar. Eine Möglichkeit zur Verschlüsselung ist das weitverbreitete Public-Key-Verfahren RSA. Dieses kann allerdings zu ressourcenintensiv für ein Szenario sein, bei dem Millionen von Fahrzeugen aktualisiert werden, häufige Datentransfers erfolgen und die batteriegespeisten Geräte im Fahrzeug mit geringer Leistungsaufnahme, schwachen CPUs und einem Minimum an RAM auskommen müssen. Oft ist es besser, eine Verschlüsselungslösung mit geringerem Rechenzeit- und Speicherbedarf wie ECC (Elliptic Curve Cryptography) zu wählen, das dieselbe Verschlüsselungsstärke wie RSA besitzt, aber 30 % weniger Speicherplatz und Rechenleistung benötigt. Welches Verfahren auch immer zum Einsatz kommt, Verschlüsselung ist ein Muss, um die Daten und gegebenenfalls auch die Privatsphäre des Kunden zu schützen. So könnte eine Datenübertragung beispielsweise personenbezogene Daten wie die im Navigationssystem eingespeicherte Heimatadresse des Kunden enthalten.

Signaturen

Der nächste Schritt für lückenlose Sicherheit ist die Verwendung von Signaturen. Verschlüsselung schützt die Daten, während sie gesendet werden, aber erst eine Signatur erlaubt dem Empfänger, sich davon zu vergewissern, dass die signierten Daten aus der korrekten Quelle stammen und während der Übertragung nicht modifiziert wurden. Standards wie TLS (Transport Layer Security) und SSL (Secure Sockets Layer) bieten die nötige Sicherheit für Datenübertragungen im Internet. Diese kryptografischen Protokolle erlauben es dem Automobilhersteller, Updates zu senden und dabei sowohl ein Mithören als auch Modifikationen und mutwillige Verfälschungen der Daten zu verhindern.

Autorisierung

Der dritte Schritt bei der Bereitstellung eines sicheren OTA-Dienstes ist die Autorisierung. Sie hat zwei Aspekte. Erstens überprüft der Dienst, ob der authentifizierte Benutzer beziehungsweise das authentifizierte Gerät über die Berechtigung zum Empfangen eines Updates verfügt. Ein gutes OTA-Design hat also einen Autorisierungsmechanismus, der vom Hersteller kontrolliert werden kann.

Zum Beispiel könnte das System einen privilegienbasierten Ansatz verfolgen, bei dem Funktionalitäten und Berechtigungen über ein Administrationsportal verwaltet werden. Zweitens erlaubt das OTA-System dem Kunden die Annahme, Ablehnung und Verwaltung von Updates. Bei leistungsfähigen OTA-Systemen kann der Automobilhersteller bestimmen, wann ein Update erfolgen soll und unter welchen Umständen es verpflichtend ist. Zum Beispiel sollte der Kunde ein kritisches Sicherheitsupdate nicht ablehnen können, allerdings möchte es der Automobilhersteller vielleicht nicht gerade dann einspielen und ein System neustarten, wenn der Fahrer gerade mit hoher Geschwindigkeit auf der Autobahn unterwegs ist. Ein OTA-System muss also Daten über den Zustand des Fahrzeugs erfassen können, wie zum Beispiel, ob der Motor läuft oder nicht, ob genügend Batterieleistung zur Verfügung steht, ob festgelegte Softwarekriterien erfüllt sind und so weiter; dann erst auf intelligente Weise das Update anwenden.

Bereits in über 60 Millionen Fahrzeugen kommen Betriebssysteme von QNX Software Systems zum Einsatz, und im Mobilfunkbereich hat sich die Software bewährt: in Millionen von Blackberry-Geräten. Daher versteht das Unternehmen genau, wie die Automobilbranche das Potenzial des Internet der Dinge maximieren kann.