-
TECHNISCHES GEBIET
-
Aspekte der Offenbarung betreffen im Allgemeinen ein lokales Vertrauensnetz zur Verwendung bei der Handhabung entfernter Befehle, die für Zielfahrzeugkomponenten bestimmt sind.
-
ALLGEMEINER STAND DER TECHNIK
-
Telematik-Dienste können als einige nicht einschränkende Möglichkeiten Navigation, Routenführungen, Fahrzeugdiagnosen, lokale Unternehmenssuche, Unfallmeldungen und Freisprecheinrichtungen beinhalten. In einigen Fällen können diese Dienste durch einen Insassen eines Fahrzeugs angefordert werden. In anderen Fällen können diese Dienste durch einen entfernten Server angefordert werden. Beispielsweise kann eine Anforderung zum Entriegeln eines Fahrzeugs durch das Fahrzeug von einem entfernten Server empfangen werden und das Fahrzeug kann die Anforderung empfangen und das Entriegeln der Fahrzeugtüren anweisen.
-
KURZDARSTELLUNG
-
In einem oder mehreren veranschaulichenden Beispielen beinhaltet ein System ein Gateway eines Fahrzeugs, das mit einer Telematiksteuereinheit (telematics control unit - TCU) und einer Vielzahl elektronischer Steuereinheiten (electronic control units - ECUs) verbunden ist und dazu programmiert ist, einen Befehl von der TCU zu empfangen, wobei der Befehl eine elektronische Seriennummer (ESN) einer Ziel-ECU der ECUs angibt, und den Befehl als Reaktion auf eine Bestätigung, dass die ESN der Ziel-ECU im Vertrauensnetz enthalten ist, an die Ziel-ECU weiterzuleiten.
-
In einem oder mehreren veranschaulichenden Beispielen beinhaltet ein Verfahren Folgendes: Bestätigen durch ein Gateway eines Fahrzeugs, dass eine ESN einer Ziel-ECU eines empfangenen Befehls in einem im Gateway gespeicherten Vertrauensnetz enthalten ist; wenn dies der Fall ist, Weiterleiten des Befehls an die Ziel-ECU; und wenn dies nicht der Fall ist, Verifizieren, dass die Ziel-ECU vertrauenswürdig ist, anhand einer Vertrauensantwort auf eine Vertrauensanforderung, die durch das Gateway an eine Vielzahl von Teilnetzen des Fahrzeugs gesendet wird.
-
In einem oder mehreren veranschaulichenden Beispielen beinhaltet ein nicht transitorisches computerlesbares Medium Anweisungen, die, wenn sie durch einen Prozessor eines Gateways eines Fahrzeugs ausgeführt werden, das Gateway zu Folgendem veranlassen: Bestätigen, dass eine ESN einer Ziel-ECU eines empfangenen Befehls in einem im Gateway gespeicherten Vertrauensnetz enthalten ist; wenn dies der Fall ist, Weiterleiten des Befehls an die Ziel-ECU; und wenn dies nicht der Fall ist, Verifizieren, dass die Ziel-ECU vertrauenswürdig ist, anhand einer Vertrauensantwort auf eine Vertrauensanforderung, die durch das Gateway an eine Vielzahl von Teilnetzen des Fahrzeugs gesendet wird.
-
Figurenliste
-
- 1 veranschaulicht eine beispielhafte Systemtopologie zum Verarbeiten von Befehlen, die über ein Gateway an verschiedene ECUs eines Fahrzeugs kommuniziert werden; und
- 2 veranschaulicht einen beispielhaften Prozess zum Verarbeiten von Befehlen, die für Ziel-ECUs bestimmt sind.
-
DETAILLIERTE BESCHREIBUNG
-
Nach Bedarf werden in der vorliegenden Schrift detaillierte Ausführungsformen der vorliegenden Erfindung offenbart; dabei versteht es sich jedoch, dass die offenbarten Ausführungsformen lediglich beispielhaft für die Erfindung sind, die in verschiedenen und alternativen Formen ausgeführt sein kann. Die Figuren sind nicht zwingend maßstabsgetreu; einige Merkmale können vergrößert oder verkleinert dargestellt sein, um Details bestimmter Komponenten zu zeigen. Demnach sind hier offenbarte konkrete strukturelle und funktionelle Details nicht als einschränkend auszulegen, sondern lediglich als repräsentative Grundlage, um den Fachmann die vielfältige Verwendung der vorliegenden Erfindung zu lehren.
-
Mit der Ausbreitung verbundener Anmeldungen im Fahrzeugkontext hat der entfernte Betrieb von elektronischen Steuereinheiten (ECUs) von Fahrzeugen zugenommen. Dieser entfernte Betrieb arbeitet üblicherweise dadurch, dass sichere Befehle von einem Cloud-Server an Fahrzeug-ECUs gesendet werden. Einige der Fahrzeug-ECUs weisen größere Rechenkapazitäten auf, um symmetrische Schlüssel zur Verwendung beim Verschlüsseln und Entschlüsseln sicherer Befehle zu speichern. Beispiele für derartige ECUs können eine Telematiksteuereinheit (TCU) oder ein Gateway beinhalten. Andere ECUs des Fahrzeugs verfügen jedoch aufgrund von Kostendruck oder begrenzten ECU-Ressourcen nicht über symmetrische Schlüssel.
-
Unter Verwendung aktueller Sicherheitsansätze kann ein mit einer ESN (elektronischen Seriennummer) signierter Befehl an eine Ziel-ECU gesendet werden. Es wird jedoch keine Validierung durchgeführt, um sicherzustellen, dass die VIN (Fahrzeug-Identifizierungsnummer) und die ESN (elektronische Seriennummer) der Ziel-ECU übereinstimmen. Darüber hinaus validieren aktuelle Ansätze eine Zuordnung einer Gateway-ESN und einer ESN der Ziel-ECU nicht durch das Fahrzeug.
-
Bei einem verbesserten Ansatz können VIN- und ESN-signierte Befehle als mit symmetrischen Schlüsseln verschlüsselte Befehle an ein Gateway gesendet werden. Das Gateway empfängt die verschlüsselten Befehle (z. B. von der TCU) und entschlüsselt die Befehle unter Verwendung symmetrischer Geheimschlüssel. Der empfangene Befehl kann dazu vorgesehen sein, einer Ziel-ECU bereitgestellt zu werden. Bevor das Gateway den Befehl an die Ziel-ECU sendet, kann das Gateway jedoch ein lokales Vertrauensnetz überprüfen, um zu bestätigen, ob die Ziel-ECU vertrauenswürdig ist. Beispielsweise kann die Gateway-TCU abfragen, ob eine elektronische Seriennummer (ESN) der Ziel-ECU und eine Fahrzeug-Identifizierungsnummer (VIN) des Fahrzeugs in den Nutzdaten des signierten Befehls in dem lokalen Vertrauensnetz vorhanden sind. Wenn das lokale Vertrauensnetz keine Zuordnung der VIN und der ESN (Fahrzeug zu Ziel-ECU) oder ESN-zu-ESN-Zuordnung (Gateway zu Ziel-ECUs) enthält, führt das Gateway eine Vertrauensprüfung durch, indem es die Fragen „Wer bist du?“ und „Wo bist du?“ an die Ziel-ECU sendet. Als Reaktion auf die Vertrauensprüfung kann die Ziel-ECU mit einer VIN und einer ESN über einen verschlüsselten CAN-FD-/Gesichertes-Ethernet-Pub/Sub-Mechanismus antworten. Das Gateway kann diese VIN und ESN empfangen und kann die VIN anhand ihres gesicherten Standorts und ihrer zugehörigen vertrauenswürdigen bekannten Quelle verifizieren. Wenn die Validierung erfolgreich ist, kann das Gateway/die TCU die Ziel-ECU zu einem lokalen Vertrauensnetz hinzufügen und kann den empfangenen Befehl an die Ziel-ECU weiterleiten. Dementsprechend kann das Gateway unter Verwendung des lokalen Vertrauensnetzes als Firewall für Befehle arbeiten, die an die Ziel-ECUs weitergeleitet werden sollen. Weitere Aspekte der Offenbarung werden nachstehend ausführlich erörtert.
-
1 veranschaulicht eine beispielhafte Systemtopologie 100 zum Verarbeiten von Befehlen 114, die über ein Gateway 108 an verschiedene ECUs 104 eines Fahrzeugs 102 kommuniziert werden. Jede ECU 104 ist mit einem einer Vielzahl von Teilnetzen 110 verbunden. Eine Telematiksteuereinheit (TCU) 106 ist enthalten, um die Kommunikation zwischen verschiedenen Komponenten des Fahrzeugs 102 und denen anderer Fahrzeuge 102 und/oder mobiler Vorrichtungen über externe und fahrzeuginterne Netzwerke (nicht gezeigt) zu erleichtern. Die TCU 106 kann mit einem Backbone-Abschnitt 112 der Systemtopologie 100 verbunden sein und kann über das Gateway 108 mit den ECUs 104 kommunizieren. Während in 1 eine beispielhafte Systemtopologie 100 gezeigt ist, sollen die veranschaulichten beispielhaften Komponenten nicht der Einschränkung dienen. Tatsächlich kann die Systemtopologie 100 mehr oder weniger Komponenten aufweisen und es können zusätzliche oder alternative Komponenten und/oder Umsetzungen verwendet werden. Als ein Beispiel können die ECUs 104 und die TCU 106 jeweils mit einem oder mehreren gleichen oder unterschiedlichen Arten von Knoten als die Teilnetze 110 und das Backbone 112 verbunden sein.
-
Bei dem Fahrzeug 102 kann es sich beispielsweise um verschiedene Arten von Automobilen, Softroadern (crossover utility vehicle - CUV), Geländelimousinen (sport utility vehicle - SUV), Trucks, Wohnmobilen (recreational vehicle - RV), Booten, Flugzeugen oder anderen mobilen Maschinen zum Befördern von Personen oder Gütern handeln. In vielen Fällen kann das Fahrzeug 102 durch einen Verbrennungsmotor angetrieben werden. Als eine andere Möglichkeit kann das Fahrzeug 102 ein Hybridelektrofahrzeug (hybrid electric vehicle - HEV) sein, das sowohl durch einen Verbrennungsmotor als auch einen oder mehrere Elektromotoren angetrieben wird, wie etwa ein Serienhybrid-Elektrofahrzeug (series hybrid electric vehicle - SHEV), ein Parallelhybrid-Elektrofahrzeug (parallel hybrid electrical vehicle - PHEV) oder ein Parallel-/Serienhybrid-Elektrofahrzeug (parallel/series hybrid electric vehicle - PSHEV). Da die Art und Konfiguration des Fahrzeugs 102 variieren können, können entsprechend auch die Betriebseigenschaften des Fahrzeugs variieren. Als einige andere Möglichkeiten kann das Fahrzeug 102 unterschiedliche Eigenschaften in Bezug auf Fahrgastkapazität, Zugfähigkeit und -kapazität sowie Lagervolumen aufweisen.
-
Die ECUs 104 des Fahrzeugs können verschiedene Hardware- und Softwarekomponenten beinhalten und können dazu konfiguriert sein, verschiedene Fahrzeugfunktionen unter der Leistung der Batterie und/oder des Antriebsstrangs des Fahrzeugs 102 zu überwachen und zu verwalten. Die ECUs 104 können dementsprechend einen oder mehrere Prozessoren (z. B. Mikroprozessoren) (nicht gezeigt) beinhalten, die dazu konfiguriert sind, Firmware- oder Softwareprogramme auszuführen, die in einer oder mehreren Speichervorrichtungen (nicht gezeigt) der ECUs 104 gespeichert sind. Während die ECUs 104 als getrennte Komponenten veranschaulicht sind, können die Fahrzeug-ECUs 104 physische Hardware, Firmware und/oder Software gemein haben, sodass die Funktionen mehrerer ECUs 104 in einer einzigen ECU 104 zusammengefasst sein können und die Funktionen verschiedener derartiger ECUs 104 über eine Vielzahl von ECUs 104 verteilt sein können.
-
Die ECUs 104 können folgende beinhalten: eine Antriebsstrangsteuerung 104-A, die dazu konfiguriert ist, mit einer oder mehreren Leistungsquellen des Fahrzeugs, wie etwa Motor, Batterie usw., verbundene Betriebskomponenten zu verwalten, eine Getriebesteuerung 104-B, die dazu konfiguriert ist, die Leistungsübertragung zwischen Antriebsstrang und Rädern des Fahrzeugs zu verwalten, eine Karosseriesteuerung 104-C, die dazu konfiguriert ist, verschiedene Leistungssteuerfunktionen, wie etwa Außenbeleuchtung, Innenbeleuchtung, schlüssellosen Zugang, Fernstart und Verifizierung des Status von Zugangspunkten, zu verwalten, ein Scheinwerfersteuermodul (headlamp control module - HCM) 104-D, das dazu konfiguriert ist, Licht-Ein/Aus-Einstellungen, mobile Vorrichtungen oder andere lokale Vorrichtungen des Fahrzeugs 102 zu steuern, erweiterte Fahrassistenzsysteme (advanced driver assistance systems - ADAS) 104-E, wie etwa adaptive Geschwindigkeitsregelung oder automatisches Bremsen, eine Klimasteuerungsverwaltungssteuerung 104-F, die dazu konfiguriert ist, Heiz- und Kühlsystemkomponenten (z. B. Kompressorkupplung, Gebläselüfter, Temperatursensoren usw.) zu überwachen und verwalten und eine Steuerung für ein globales Positionsbestimmungssystem (global positioning system - GPS) 104-G, die dazu konfiguriert ist, Fahrzeugstandortinformationen bereitzustellen. Es ist anzumerken, dass es sich hierbei lediglich um Beispiele handelt und Fahrzeuge 102 verwendet werden können, die mehr, weniger oder andere ECUs 104 aufweisen.
-
Die TCU 106 kann einen oder mehrere Prozessoren (nicht gezeigt) (z. B. Miktroprozessoren) beinhalten, die dazu konfiguriert sind, Firmware- oder Softwareprogramme auszuführen, die in einer oder mehreren entsprechenden Speichervorrichtungen der TCU 106 gespeichert sind. Die TCU 106 kann ein Modem oder andere Netzwerkhardware beinhalten, um die Kommunikation zwischen dem Fahrzeug 102 und einem oder mehreren Netzwerken außerhalb des Fahrzeugs 102 zu erleichtern. Diese externen Netzwerke können als einige nicht einschränkende Beispiele das Internet, ein Kabelfernsehverteilungsnetzwerk, ein Satellitenverbindungsnetzwerk, ein lokales Netzwerk, ein Weitverkehrsnetzwerk und ein Telefonnetzwerk beinhalten.
-
Das Fahrzeug 102 kann außerdem ein Gateway 108 beinhalten. In einem Beispiel kann das Gateway 108 die Funktionen eines Smart-Datenübertragungssteckers (smart data link connector - SDLC) umsetzen. Das Gateway 108 kann dazu konfiguriert sein, den Datenaustausch zwischen Fahrzeug-ECUs 104 zu erleichtern. Das Gateway 108 kann außerdem dazu konfiguriert sein, den Datenaustausch zwischen den Fahrzeug-ECUs 104 und der im Backbone 112 positionierten TCU 106 zu erleichtern. In einem Beispiel können die Fahrzeug-ECUs 104 und die TCU 106 unter Verwendung eines CAN-Kommunikationsprotokolls, wie etwa unter anderem eines Hochgeschwindigkeits-(high-speed - HS-)CAN, eines Mittelgeschwindigkeits-(mid-speed - MS-)CAN oder eines Niedriggeschwindigkeits-(low-speed - LS-)CAN, mit dem Gateway 108 kommunizieren. Unterschiedliche Teilnetze 110 können unterschiedliche CAN-Protokoll-Geschwindigkeiten nutzen. In einem Beispiel können ein oder mehrere Teilnetze HS-CAN umsetzen, während ein oder mehrere andere Teilnetze 110 MS-CAN umsetzen können. In noch einem anderen Beispiel kann das Gateway 108 dazu konfiguriert sein, die Kommunikation unter Verwendung eines oder mehrerer eines Ethernet-Netzwerks, eines Media-Oriented-System-Transfer-(MOST-)Netzwerks, eines FlexRay-Netzwerks oder eines Local-Interconnect-Netzwerks (LIN) zu erleichtern.
-
Eines oder mehrere der Teilnetze 110 können ein Hauptteilnetz definieren, das als Backbone 112 bezeichnet werden kann. Das Backbone 112 kann einen Abschnitt der Systemtopologie 100 beinhalten, der dazu konfiguriert ist, als Kommunikationsverbindungspunkt für die anderen Teilnetze 110 des Fahrzeugs 102 zu dienen. Dementsprechend kann das Backbone 112 dazu konfiguriert sein, den Datenverkehr in einem größeren Volumen zu verwalten und weiterzuleiten als dem über die anderen Teilnetze 110 bereitgestellten. Unter Verwendung der Nachrichtenverarbeitungsmerkmale des Gateways 108 kann das Gateway 108 dazu konfiguriert sein, Nachrichtenrahmen zwischen der im Backbone 112 positionierten TCU 106 und der einen oder den mehreren in den anderen Teilnetzen 110 positionierten Fahrzeug-ECUs 104 zu übertragen.
-
Das Gateway 108 kann dazu konfiguriert sein, zu identifizieren, in welchem Teilnetz 110 sich die ECUs 104 und die TCU 106 jeweils befinden. Dies kann anhand einer entsprechenden physischen Netzwerkadresse der ECUs 104 und der TCU 106 durchgeführt werden. In einem Beispiel kann das Gateway 108 als Reaktion darauf, dass es eine Anforderung zum Weiterleiten einer Nachricht an eine bestimmte ECU 104 oder die TCU 106 empfängt, einen Speicher abfragen, um eine Netzwerkadresse zu identifizieren, die der ECU 104 oder der TCU 106 entspricht. Beispielsweise kann das Gateway 108 einen Speicher beinhalten, der dazu konfiguriert ist, die Netzwerkadressen zu speichern, und ein Weiterleitungsschema, das definiert, welche Nachrichten an welche Teilnetze 110 und/oder Backbone 112 weitergeleitet werden. Dieses Weiterleiten kann durch das Gateway 108 auf Grundlage in der Nachricht enthaltener vordefinierter Parameter bestimmt werden, wie etwa einer Art der Nachricht und/oder Kennungen der ECUs 104 oder der TCU 106, welche die Quelle und/oder das Ziel der Nachricht angeben.
-
In einigen Beispielen kann eine Teilgruppe der ECUs 104 Schlüssel empfangen, die zum Fertigungszeitpunkt an die ECUs 104 verteilt werden. Dies kann als in der Phase des Fahrzeugbetriebs (vehicle operation - VO) durchgeführt bezeichnet werden. Die Schlüsselverteilung kann eine Vertrauensbeziehung zwischen unterschiedlichen Gruppen von ECUs 104 im selben Fahrzeug 102 herstellen, durch die eine authentifizierte Kommunikation zwischen den ECUs 104 ermöglicht werden kann. Um die Auswirkungen auf den VO-Prozess bei Vorläufen und bei dynamischen und statischen Bandendstationen (end-of-line - EOL), zu minimieren, wird der Prozess bei Vorläufen mit einer einfachen Diagnoseanforderung eingeleitet und arbeitet im Hintergrund, während sich der Schlüssel in der Einschaltstellung befindet.
-
Ein Befehl 114 kann von einem Cloud-Server 116 an das Fahrzeug 102 gesendet werden. Der Befehl 114 kann eine Anforderung an eine ECU 104 des Fahrzeugs 102 zum Durchführen eines Vorgangs, wie etwa eines Entriegelns der Fahrzeugtüren, sein. Der Befehl 114 kann durch die TCU 106 empfangen werden und dem Gateway 108 zur Übertragung an die Ziel-ECU 104 bereitgestellt werden. Für diejenigen ECUs 104, die einen Schlüssel aufbewahren, kann die Validierung des Befehls 114 durch die Ziel-ECU 104 durchgeführt werden.
-
Einige der ECUs 104 können jedoch nicht die Kapazität zum Speichern von Schlüsseln aufweisen oder es kann ihnen die Verarbeitungsleistung fehlen, die zum Entschlüsseln von Nachrichten unter Verwendung eines derartigen Schlüssels benötigt wird. In derartigen Beispielen kann die Validierung der Nachrichten an die ECU 104 durch zusätzliche Verarbeitung am Gateway 108 durchgeführt werden. Um diese Verarbeitung zu erleichtern, kann das Gateway 108 ein Vertrauensnetz 118 beherbergen. Das Vertrauensnetz 118 kann Statusinformationen aufbewahren, die angeben, welche der ECUs 104 durch das Gateway 108 als vertrauenswürdig validiert wurden. Durch Verwendung des Vertrauensnetzes 118 kann das Gateway 108 Befehle 114 von einem Server 116, die dazu bestimmt sind, eine Ziel-ECU 104 zu erreichen, automatisch filtern, indem es sicherstellt, dass die Ziel-ECU 104 vertrauenswürdig ist.
-
2 veranschaulicht einen beispielhaften Prozess 200 zum Verarbeiten von Befehlen 114, die für Ziel-ECUs 104 bestimmt sind. In einem Beispiel kann der Prozess 200 durch das System 100, wie vorstehend beschrieben, durchgeführt werden.
-
Bei 202 empfängt das Fahrzeug 102 einen verschlüsselten Befehl 114 von einem Server 116. In einem Beispiel kann der Befehl 114 eine Anforderung an die Karosseriesteuerung 104-C zum Entriegeln der Türen des Fahrzeugs 102 sein. In einem anderen Beispiel kann der Befehl 114 eine Anforderung an die Klimasteuerungsverwaltungssteuerung 104-F zum Einstellen einer Vorkonditionierungstemperatur für die Kabine des Fahrzeugs 102 sein. In noch einem anderen Beispiel kann der Befehl 114 eine Anforderung an die Getriebesteuerung 104-B zum Aktualisieren eines Getriebeprogramms des Fahrzeugs 102 sein. Der Befehl 114 kann durch die TCU 106 empfangen werden und kann durch die TCU 106 über das Backbone 112 an das Gateway 108 weitergeleitet werden.
-
Bei 204 entschlüsselt das Fahrzeug 102 den Befehl 114. In einem Beispiel kann das Gateway 108 einen dem Fahrzeug 102 zugewiesenen Schlüssel nutzen, um den Befehl 114 zu entschlüsseln. In einigen Fällen kann der Schlüssel ein symmetrischer Schlüssel sein, der einem Schlüssel entsprechen kann, den der Server 116 verwendet, um den Befehl 114 zu verschlüsseln. In anderen Fällen kann der Schlüssel ein dem Fahrzeug 102 zugewiesener Entschlüsselungsschlüssel sein und verwendet werden, um Befehle 114 zu entschlüsseln, die durch den Server 116 unter Verwendung eines dem Entschlüsselungsschlüssel entsprechenden Verschlüsselungsschlüssels verschlüsselt werden.
-
Bei 206 identifiziert das Fahrzeug 102 eine Ziel-ECU 104 für den Befehl 114. In einem Beispiel kann ein Feld des Befehls 114 die ESN der ECU 104 (z. B. Karosseriesteuerung usw.) des Fahrzeugs 102 anzeigen, die den Befehl 114 empfangen soll, und das Gateway 108 kann das Feld nutzen, um die Ziel-ECU 104 zu identifizieren. In einem anderen Beispiel kann der Befehl 114 eine vorgesehene Handlung anzeigen und das Gateway 108 kann eine Zuordnung von Handlungen zu ECUs 104 nutzen, um die Ziel-ECU 104 zu identifizieren.
-
Bei 208 bestimmt das Fahrzeug 102, ob die Ziel-ECU 104 vertrauenswürdig ist. In einem Beispiel kann das Fahrzeug 102 auf das Vertrauensnetz 118 zugreifen, um zu bestimmen, ob die ESN der Ziel-ECU 104 zuvor als vertrauenswürdig angezeigt wurde. In einem Beispiel kann das Vertrauensnetz 118 Zuordnungen von ESNs von ECUs 104 zu einer VIN des Fahrzeugs 102 speichern, sodass, wenn eine ESN im Vertrauensnetz 118 auftaucht, die ESN dann als vertrauenswürdig für die VIN des Fahrzeugs 102 identifiziert wurde. In einem anderen Beispiel kann das Vertrauensnetz 118 Zuordnungen von ESNs der ECUs 104 des Fahrzeugs 102 zu der ESN des Gateways 108 des Fahrzeugs 102 speichern, sodass, wenn eine ESN im Vertrauensnetz 118 auftaucht, die ESN dann als vertrauenswürdig für das Gateway 108 identifiziert wurde. Wenn die ESN der ECU 104 im Vertrauensnetz 118 als vertrauenswürdig auftaucht, geht die Steuerung zu Vorgang 210 über. Anderenfalls geht die Steuerung zu Vorgang 212 über.
-
Bei 210 leitet das Fahrzeug 102 den Befehl an die Ziel-ECU 104 weiter. In einem Beispiel kann das Gateway 108 der Ziel-ECU 104 den Befehl 114 über das Teilnetz 110 bereitstellen, mit dem die Ziel-ECU 104 verbunden ist. Nach Vorgang 210 endet der Prozess 200.
-
Bei 212 sendet das Fahrzeug 102 eine Vertrauensanforderung an die Ziel-ECU 104. In einem Beispiel kann die Vertrauensprüfung eine Anforderung an die Teilnetze 110 beinhalten, die anfordert, dass die ECU 104 antwortet, um anzuzeigen, in welchem Teilnetz 110 sich die ECU 104 befindet. In einem anderen Beispiel kann die Vertrauensprüfung eine Anforderung nach anderen spezifischen Informationen der ECU 104, wie etwa Versionierungsinformationen, an die Teilnetze 110 beinhalten.
-
Bei 214 empfängt das Fahrzeug 102 eine Vertrauensantwort von der Ziel-ECU 104. In einem Beispiel kann die ECU 104 über das Teilnetz 110, mit dem die ECU 104 verbunden ist, auf die Vertrauensanforderung antworten. Die Vertrauensantwort kann beispielsweise die ESN der ECU 104 und die VIN des Fahrzeugs 102 beinhalten. In einem Beispiel kann die Vertrauensantwort in verschlüsselter Form bereitgestellt werden. Die Verschlüsselung kann beispielsweise eine vorberechnete Version der ESN und der VIN beinhalten, die unter Verwendung eines dem Gateway 108 bekannten symmetrischen Schlüssels verschlüsselt sind.
-
Bei 216 validiert das Fahrzeug 102 die Vertrauensantwort von der Ziel-ECU 104. Als einige Beispiele kann das Gateway 108 bestätigen, dass eine Vertrauensantwort empfangen wurde, dass die Anforderung ordnungsgemäß entschlüsselt wurde und/oder dass die VIN mit der des Fahrzeugs 102 übereinstimmt. Bei 218 bestimmt das Fahrzeug 102, ob die Validierung erfolgreich war. Wenn dies der Fall ist, geht die Steuerung zu Vorgang 220 über. Wenn dies nicht der Fall ist, geht die Steuerung zu Vorgang 222 über.
-
Bei 220 fügt das Fahrzeug 102 die Ziel-ECU 104 dem Vertrauensnetz 118 hinzu. Beispielsweise kann das Gateway 108 die ESN der Ziel-ECU 104 dem Vertrauensnetz 118 hinzufügen, um anzuzeigen, dass zukünftige Befehle 114 von der Ziel-ECU 104 weitergeleitet werden können. Das Vertrauensnetz 118 kann zudem angeben, in welchem der Teilnetze 110 sich die Ziel-ECU 104 befindet. Nach Vorgang 220 geht die Steuerung zu Vorgang 210 über, um den Befehl 114 an die Ziel-ECU 104 weiterzuleiten.
-
Bei 222 verwirft das Fahrzeug 102 den Befehl 114. Beispielsweise wird der Befehl 114, da das Gateway 108 nicht in der Lage ist, die Ziel-ECU 104 zu validieren, nicht weitergesendet. Nach Vorgang 222 endet der Prozess 200.
-
Hier beschriebene Rechenvorrichtungen, wie etwa die ECUs 104, die TCU 106, das Gateway 108 und der Server 116, beinhalten im Allgemeinen computerausführbare Anweisungen, wobei die Anweisungen durch eine oder mehrere Rechenvorrichtungen, wie etwa die vorstehend aufgelisteten, ausgeführt werden können. Computerausführbare Anweisungen können von Computerprogrammen zusammengestellt oder ausgewertet werden, die unter Verwendung vielfältiger Programmiersprachen und/oder -techniken erstellt wurden, einschließlich unter anderem und entweder allein oder in Kombination Java™, C, C++, C#, Visual Basic, JavaScript, Python, Perl, PL/SQL usw. Im Allgemeinen empfängt ein Prozessor (z. B. ein Mikroprozessor) Anweisungen, z. B. von einem Speicher, einem computerlesbaren Medium usw., und führt diese Anweisungen aus, wodurch er einen oder mehrere Prozesse, einschließlich eines oder mehrerer der hier beschriebenen Prozesse, durchführt. Derartige Anweisungen und andere Daten können unter Verwendung vielfältiger computerlesbaren Medien gespeichert und übertragen werden.
-
Hinsichtlich der hier beschriebenen Prozesse, Systeme, Verfahren, Heuristiken usw. versteht es sich, dass die Schritte derartiger Prozesse usw. zwar als gemäß einer bestimmten Reihenfolge erfolgend beschrieben wurden, derartige Prozesse jedoch so umgesetzt werden könnten, dass die beschriebenen Schritte in einer anderen Reihenfolge als der hier beschriebenen Reihenfolge durchgeführt werden. Es versteht sich außerdem, dass bestimmte Schritte gleichzeitig durchgeführt, andere Schritte hinzugefügt oder bestimmte hier beschriebene Schritte weggelassen werden könnten. Anders ausgedrückt dienen die Beschreibungen von Prozessen in dieser Schrift dem Zwecke der Veranschaulichung bestimmter Ausführungsformen und sollten keinesfalls dahingehend ausgelegt werden, dass sie die Patentansprüche einschränken.
-
Dementsprechend versteht es sich, dass die vorstehende Beschreibung veranschaulichend und nicht einschränkend sein soll. Viele Ausführungsformen und Anwendungen, bei denen es sich nicht um die bereitgestellten Beispiele handelt, werden beim Lesen der vorstehenden Beschreibung ersichtlich. Der Schutzumfang sollte nicht unter Bezugnahme auf die vorstehende Beschreibung bestimmt werden, sondern unter Bezugnahme auf die beigefügten Patentansprüche gemeinsam mit dem vollständigen Schutzumfang von Äquivalenten, zu denen derartige Patentansprüche berechtigt sind. Es wird erwartet und beabsichtigt, dass es zu den hier erörterten Techniken künftige Entwicklungen geben wird und dass die offenbarten Systeme und Verfahren in derartige künftige Ausführungsformen aufgenommen werden. Insgesamt versteht es sich, dass die Anmeldung modifiziert und variiert werden kann.
-
Allen in den Patentansprüchen verwendeten Ausdrücken sollen deren umfassendste nachvollziehbare Konstruktionen und deren allgemeine Bedeutungen zugeordnet sein, wie sie den mit den hier beschriebenen Techniken vertrauten Fachleuten bekannt sind, sofern hier kein ausdrücklicher Hinweis auf das Gegenteil erfolgt. Insbesondere ist die Verwendung der Singularartikel wie etwa „ein“, „eine“, „der“, „die“, „das“ usw. dahingehend auszulegen, dass eines oder mehrere der angezeigten Elemente genannt wird bzw. werden, es sei denn, ein Patentanspruch enthält ausdrücklich eine gegenteilige Einschränkung.
-
Die Zusammenfassung der Offenbarung wird bereitgestellt, um dem Leser einen schnellen Überblick über den Charakter der technischen Offenbarung zu ermöglichen. Sie wird in der Auffassung eingereicht, dass sie nicht dazu verwendet wird, den Schutzumfang oder die Bedeutung der Patentansprüche auszulegen oder einzuschränken. Zusätzlich geht aus der vorstehenden detaillierten Beschreibung hervor, dass verschiedene Merkmale zum Zwecke der Vereinfachung der Offenbarung in verschiedenen Ausführungsformen zusammengefasst sind. Dieses Offenbarungsverfahren soll nicht dahingehend ausgelegt werden, dass es eine Absicht widerspiegelt, dass die beanspruchten Ausführungsformen mehr Merkmale als ausdrücklich in jedem Patentanspruch genannt erfordern. Vielmehr liegt der Gegenstand der Erfindung in weniger als allen Merkmalen einer einzelnen offenbarten Ausführungsform, wie die folgenden Patentansprüche widerspiegeln. Somit werden die folgenden Patentansprüche hiermit in die detaillierte Beschreibung aufgenommen, wobei jeder Patentanspruch für sich als separat beanspruchter Gegenstand steht.
-
Während vorstehend beispielhafte Ausführungsformen beschrieben sind, sollen diese Ausführungsformen nicht alle möglichen Formen der Erfindung beschreiben. Vielmehr sind die in der Beschreibung verwendeten Ausdrücke beschreibende und nicht einschränkende Ausdrücke, und es versteht sich, dass verschiedene Änderungen vorgenommen werden können, ohne vom Geist und Schutzumfang der Offenbarung abzuweichen. Zusätzlich können die Merkmale verschiedener umsetzender Ausführungsformen miteinander kombiniert werden, um weitere Ausführungsformen der Erfindung zu bilden.
-
Gemäß der vorliegenden Erfindung wird ein System bereitgestellt, das Folgendes aufweist: ein Gateway eines Fahrzeugs, das mit einer Telematiksteuereinheit (telematics control unit - TCU) und einer Vielzahl elektronischer Steuereinheiten (electronic control units - ECUs) verbunden ist und dazu programmiert ist, einen Befehl von der TCU zu empfangen, wobei der Befehl eine elektronische Seriennummer (ESN) einer Ziel-ECU der ECUs angibt, und den Befehl als Reaktion auf eine Bestätigung, dass die ESN der Ziel-ECU im Vertrauensnetz enthalten ist, an die Ziel-ECU weiterzuleiten.
-
Gemäß einer Ausführungsform ist das Gateway außerdem dazu programmiert, den Befehl unter Verwendung eines symmetrischen Schlüssels zu entschlüsseln und die ESN der Ziel-ECU aus dem Befehl als entschlüsselt zu identifizieren.
-
Gemäß einer Ausführungsform ist das Gateway außerdem dazu programmiert, als Reaktion auf eine Bestätigung, dass die ESN der Ziel-ECU nicht im Vertrauensnetz enthalten ist, eine Vertrauensanforderung an eine Vielzahl von Teilnetzen des Fahrzeugs zu senden, eine Vertrauensantwort von der Ziel-ECU über eines der Teilnetze zu empfangen und anhand der Vertrauensantwort zu verifizieren, dass die Ziel-ECU vertrauenswürdig ist.
-
Gemäß einer Ausführungsform ist das Gateway außerdem dazu programmiert, zu verifizieren, dass die Ziel-ECU vertrauenswürdig ist, indem es validiert, dass eine Fahrzeug-Identifizierungsnummer (VIN) des Fahrzeugs in der Vertrauensantwort enthalten ist.
-
Gemäß einer Ausführungsform ist das Gateway außerdem dazu programmiert, zu verifizieren, dass die Ziel-ECU vertrauenswürdig ist, indem es validiert, dass die Vertrauensantwort durch das Gateway erfolgreich entschlüsselt wird.
-
Gemäß einer Ausführungsform ist das Gateway außerdem dazu programmiert, die ESN der Ziel-ECU als Reaktion auf eine erfolgreiche Verifizierung, dass die Ziel-ECU vertrauenswürdig ist, dem Vertrauensnetz hinzuzufügen.
-
Gemäß einer Ausführungsform ist das Gateway außerdem dazu programmiert, in dem Vertrauensnetz anzuzeigen, in welchem der Teilnetze sich die Ziel-ECU befindet, als dasjenige der Teilnetze, in dem die Vertrauensantwort empfangen wird.
-
Gemäß der vorliegenden Erfindung wird ein Verfahren bereitgestellt, das Folgendes aufweist: Bestätigen durch ein Gateway eines Fahrzeugs, dass eine ESN einer Ziel-ECU eines empfangenen Befehls in einem im Gateway gespeicherten Vertrauensnetz enthalten ist; wenn dies der Fall ist, Weiterleiten des Befehls an die Ziel-ECU; und wenn dies nicht der Fall ist, Verifizieren, dass die Ziel-ECU vertrauenswürdig ist, anhand einer Vertrauensantwort auf eine Vertrauensanforderung, die durch das Gateway an eine Vielzahl von Teilnetzen des Fahrzeugs gesendet wird.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem dadurch gekennzeichnet, dass verifiziert wird, dass die Ziel-ECU vertrauenswürdig ist, indem validiert wird, dass eine Fahrzeug-Identifizierungsnummer (VIN) des Fahrzeugs in der Vertrauensantwort enthalten ist.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem dadurch gekennzeichnet, dass verifiziert wird, dass die Ziel-ECU vertrauenswürdig ist, indem validiert wird, dass die Vertrauensantwort durch das Gateway erfolgreich entschlüsselt wird.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem dadurch gekennzeichnet, dass die ESN der Ziel-ECU als Reaktion auf eine erfolgreiche Verifizierung, dass die Ziel-ECU vertrauenswürdig ist, dem Vertrauensnetz hinzugefügt wird.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem dadurch gekennzeichnet, dass im Vertrauensnetz angegeben wird, in welchem der Teilnetze sich die Ziel-ECU befindet, als dasjenige der Teilnetze, in dem die Vertrauensantwort empfangen wird.
-
Gemäß einer Ausführungsform ist der Befehl eine Anforderung zum Entriegeln von Fahrzeugtüren und die Ziel-ECU ist eine Karosseriesteuerung des Fahrzeugs.
-
Ein nicht transitorisches computerlesbares Medium, das Anweisungen beinhaltet, die, wenn sie durch einen Prozessor eines Gateways eines Fahrzeugs ausgeführt werden, das Gateway zu Folgendem veranlassen: Bestätigen, dass eine ESN einer Ziel-ECU eines empfangenen Befehls in einem im Gateway gespeicherten Vertrauensnetz enthalten ist; wenn dies der Fall ist, Weiterleiten des Befehls an die Ziel-ECU; und wenn dies nicht der Fall ist, Verifizieren, dass die Ziel-ECU vertrauenswürdig ist, anhand einer Vertrauensantwort auf eine Vertrauensanforderung, die durch das Gateway an eine Vielzahl von Teilnetzen des Fahrzeugs gesendet wird.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem durch Anweisungen gekennzeichnet, die, wenn sie durch den Prozessor des Gateways ausgeführt werden, das Gateway dazu veranlassen, zu verifizieren, dass die Ziel-ECU vertrauenswürdig ist, indem es validiert, dass eine Fahrzeug-Identifizierungsnummer (VIN) des Fahrzeugs in der Vertrauensantwort enthalten ist.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem durch Anweisungen gekennzeichnet, die, wenn sie durch den Prozessor des Gateways ausgeführt werden, das Gateway dazu veranlassen, zu verifizieren, dass die Ziel-ECU vertrauenswürdig ist, indem es validiert, dass die Vertrauensantwort durch das Gateway erfolgreich entschlüsselt wird.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem durch Anweisungen gekennzeichnet, die, wenn sie durch den Prozessor des Gateways ausgeführt werden, das Gateway dazu veranlassen, die ESN der Ziel-ECU als Reaktion auf eine erfolgreiche Verifizierung, dass die Ziel-ECU vertrauenswürdig ist, dem Vertrauensnetz hinzuzufügen.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem durch Anweisungen gekennzeichnet, die, wenn sie durch den Prozessor des Gateways ausgeführt werden, das Gateway dazu veranlassen, im Vertrauensnetz anzuzeigen, in welchem der Teilnetze sich die Ziel-ECU befindet, als dasjenige der Teilnetze, in dem die Vertrauensantwort empfangen wird.