-
GEBIET DER TECHNIK
-
Diese Offenbarung betrifft im Allgemeinen Systeme, Verfahren und Vorrichtungen zur drahtlosen Kommunikation und insbesondere zur Verbesserung der Fahrzeugsicherheit.
-
ALLGEMEINER STAND DER TECHNIK
-
Ein Fahrzeug kann fahrzeuginterne Netzwerke zum Austauschen von Nachrichten zwischen Komponenten beinhalten. Um die fahrzeuginternen Netzwerke zu schützen, ist es wichtig, Sicherheitsmechanismen wie etwa Nachrichtenverschlüsselung, Nachrichtenauthentifizierung, ein Einbrucherkennungssystem oder Anomalieerkennungssystem einzusetzen.
-
KURZDARSTELLUNG
-
Hierin beschriebene beispielhafte Ausführungsformen stellen bestimmte Systeme, Verfahren und Vorrichtungen zur Verbesserung der Fahrzeugsicherheit bereit.
-
Die folgende Beschreibung und die Zeichnungen veranschaulichen ausreichend bestimmte Ausführungsformen, die dem Fachmann ermöglichen, sie in die Praxis umzusetzen. Andere Ausführungsformen können strukturelle, logische, elektrische, Prozess- und andere Änderungen integrieren. Teile und Merkmale einiger Ausführungsformen können in jenen anderer Ausführungsformen beinhaltet sein oder diese ersetzen. Ausführungsformen, die in den Ansprüchen dargelegt sind, umschließen alle verfügbaren Äquivalente dieser Ansprüche.
-
Die hierin offenbarten Systeme, Vorrichtungen und Verfahren sind dazu konfiguriert, eine Verbesserung der Fahrzeugsicherheit in einem Fahrzeug zu ermöglichen. In einigen Ausführungsformen können die Systeme, Vorrichtungen und Verfahren hierin dazu konfiguriert sein, Mechanismen zum Verbessern der Erfahrung eines Fahrzeugführers durch Bereitstellen und Aktivieren von Behebungsmaßnahmen bereitzustellen, um die Fahrumgebung als Reaktion darauf zu verbessern.
-
Das Zeitalter der vernetzten und autonomen Fahrzeuge (connected and autonomous vehicles - CAVs) steht bevor. CAVs setzen hochmoderne Sensoren ein, die interne und externe Umgebungsinformationen zur Verfügung stellen können (z. B. Kamera-, RADAR-, LiDAR-, SONAR-Sensoren). Um die fahrzeuginternen Netzwerke (z. B. Local Interconnect Network (LIN), CAN, Flex Ray, Most, Automotive Ethernet) zu schützen, ist es wichtig, Sicherheitsmechanismen wie etwa Nachrichtenverschlüsselung, Nachrichtenauthentifizierungscode (message authentication code - MAC), ein Einbrucherkennungssystem (intrusion detection system - IDS), Anomalieerkennung und CAN-ID-Randomisierung einzusetzen. Allerdings arbeiten Hacker ständig daran, Sicherheitsmechanismen im Allgemeinen zu umgehen. Es ist wichtig, die Lücke zwischen Sicherheitsmechanismen und notwendigen Informationen zu schließen, indem zusätzliche Maßnahmen aus anderen Quellen hinzugefügt werden.
-
Ein System zur Verbesserung der Fahrzeugsicherheit kann einen neuen Ansatz für ein fahrzeuginternes Anomalieerkennungsverfahren unter Verwendung der Eigenschaft der Konsistenz von Daten von Sensoren und elektronischen Steuereinheiten (electronic control unit - ECU) ermöglichen, indem zusätzliche Sensorinformationen von Kamera-, RADAR-, LiDAR- und SONAR-Sensoren zur Verfügung gestellt werden.
-
Um verschiedene Steuervorgänge eines Fahrzeugs anzugreifen, können Angreifer versuchen per Fernzugriff das TCU, IVI über Wi-Fi, 3G oder 4G zu beeinträchtigen und wiederholt CAN-Nachrichten über CAN-Schnittstellen mit entsprechenden IDs des Motorsteuermoduls (engine control module- ECM), Karosseriesteuermoduls (body control module - BCM), des elektronischen Bremssteuermoduls (electronic brake control module - EBCM), Heizung, Lüftung und Klimaanlage (HLK) in den CAN-Bus einzuschleusen.
-
Ein System zur Verbesserung der Fahrzeugsicherheit kann ein Anomalieerkennungssystem ermöglichen, das die folgenden drei Vorteile aufweist: 1) ein System zur Verbesserung der Fahrzeugsicherheit kann unter Umständen keine zusätzlichen physischen Sensoren hinzufügen, um Referenzdaten als einen Schutzmechanismus bereitzustellen, da bereits heterogene Erkundungsensoren in Fahrzeugen vorhanden sind; 2) ein System zur Verbesserung der Fahrzeugsicherheit stellt zusätzliche Sensorwerte als Referenzdaten für einen robusteren Anomalieerkennungsmechanismus bereit; und 3) ein System zur Verbesserung der Fahrzeugsicherheit stellt einfache Anomalieerkennungsmechanismen mit geringer Komplexität bereit, um eine Manipulation der Nutzdaten von CAN-Nachrichten zu ermitteln.
-
Figurenliste
-
Die detaillierte Beschreibung wird unter Bezugnahme auf die zugehörigen Zeichnungen dargelegt. Die Verwendung der gleichen Bezugszeichen kann ähnliche oder identische Elemente angeben. Für verschiedene Ausführungsformen können andere Elemente und/oder Komponenten verwendet werden als jene, die in den Zeichnungen veranschaulicht sind, und einige Elemente und/oder Komponenten sind in verschiedenen Ausführungsformen unter Umständen nicht vorhanden. Die Elemente und/oder Komponenten in den Figuren sind nicht zwingend maßstabsgetreu gezeichnet. Für die gesamte Offenbarung gilt, dass Terminologie im Singular und Plural je nach Kontext austauschbar verwendet werden kann.
- 1 zeigt eine Darstellung, die eine beispielhafte Umgebung für Techniken und Strukturen gemäß einer oder mehreren beispielhaften Ausführungsformen der vorliegenden Offenbarung veranschaulicht.
- 2 zeigt eine veranschaulichende schematische Darstellung einer Verbesserung der Fahrzeugsicherheit gemäß einer oder mehreren beispielhaften Ausführungsformen der vorliegenden Offenbarung.
- 3 zeigt ein Flussdiagramm eines veranschaulichenden Prozesses für ein System zur Verbesserung der Fahrzeugsicherheit gemäß einer oder mehreren Ausführungsformen der Offenbarung.
-
DETAILLIERTE BESCHREIBUNG
-
Unter Bezugnahme auf die Zeichnungen stellt 1 nun eine veranschaulichende Architektur 100 dar, in der Techniken und Strukturen der vorliegenden Offenbarung umgesetzt sein können.
-
Die veranschaulichende Architektur 100 kann ein Fahrzeug 102 beinhalten. Das Fahrzeug 102 kann verschiedene Vorgänge gemäß der Offenbarung unterstützen. Das Fahrzeug 102 kann eine beliebige von verschiedenen Arten von Fahrzeugen sein, wie etwa ein benzinbetriebenes Fahrzeug, ein Elektrofahrzeug, ein Hybridelektrofahrzeug oder ein autonomes Fahrzeug.
-
Das Fahrzeug 102 kann sich in der Nähe einer Hackervorrichtung 128 befinden. Im Allgemeinen kann die Hackervorrichtung 128 versuchen, mit dem Fahrzeug 102 zu interagieren, entweder während das Fahrzeug 102 fährt oder wenn das Fahrzeug steht. Die Angreifervorrichtung 128 kann versuchen, per Fernzugriff auf eine oder mehrere Komponenten des Fahrzeugs 102 zuzugreifen, um die Funktion einer Komponente des Fahrzeugs 102 zu verändern, wie etwa zu versuchen CAN-Nachrichten in einen CAN-Bus des Fahrzeugs einzuschleusen, um zu versuchen einige Funktionen an dem Fahrzeug 102 anzuschalten.
-
In der in 1 gezeigten beispielhaften Ausführungsform kann das Fahrzeug 102 mit einem Netzwerk 115 verbunden sein, das es dem Fahrzeug 102 ermöglicht, mit externen Diensten und/oder Vorrichtungen (z. B. Computern, Benutzervorrichtungen oder anderen Fahrzeugen) zu kommunizieren. Das Netzwerk 115 kann ein beliebiges oder eine Kombination von Netzwerken beinhalten, wie etwa ein lokales Netzwerk (local area network - LAN), ein Weitverkehrsnetzwerk (wide area network - WAN), ein Telefonnetzwerk, ein Mobilfunknetzwerk, ein Kabelnetzwerk, ein drahtloses Netzwerk und/oder private/öffentliche Netzwerke, wie etwa das Internet. Beispielsweise kann das Netzwerk 115 Kommunikationstechnologien wie etwa Bluetooth, Mobilfunk, Nahfeldkommunikation (nearfield communication - NFC), Wi-Fi, Wi-Fi Direct, Maschine-Maschine-Kommunikation und/oder Mensch-Maschine-Kommunikation unterstützen.
-
Im Allgemeinen kann das Fahrzeug 102 ein beliebiges Fahrzeug umfassen, das eine Steuerung 118, eine Sensorbaugruppe 116, eine Sensorfusionserkennungssteuerung 117 und eine Kommunikationsschnittstelle 120 umfassen kann.
-
Das Fahrzeug 102 kann einen Fahrgastraum beinhalten, der eine Anzeige in elektronischer Kommunikation mit der Steuerung 118 aufweist. Die Anzeige kann ein Touchscreen sein, der den Fahrgästen des Fahrzeugs Informationen anzeigt und/oder als Eingabe dient, wie etwa, ob der Mitfahrer authentifiziert ist oder nicht. Es versteht sich für den Durchschnittsfachmann, dass viele unterschiedliche Anzeige- und Eingabevorrichtungen verfügbar sind und dass die vorliegende Offenbarung nicht auf eine konkrete Anzeige beschränkt ist. Ein Audiosystem kann in dem Fahrgastraum angeordnet sein und kann einen oder mehrere Lautsprecher zum Bereitstellen von Informationen und Unterhaltung für den Fahrer und/oder die Fahrgäste beinhalten. Das Audiosystem kann zudem ein Mikrofon zum Empfangen von Spracheingaben beinhalten.
-
In einigen Ausführungsformen kann die Steuerung 118 einen Prozessor 126 und Arbeitsspeicher 128 umfassen. Der Arbeitsspeicher 128 beinhaltet maschinenlesbare Anweisungen (z. B. computerlesbare und/oder computerausführbare Anweisungen), auf die der Prozessor 126 zugreifen und die dieser ausführen kann. Der Prozessor 126 kann zum Beispiel in Folgenden verkörpert sein oder diese beinhalten: einer/eine Tensorverarbeitungseinheit (TPU); mehrere(n) TPUs, einer/eine Grafikverarbeitungseinheit (GPU); mehrere(n) GPUs; einer/eine zentrale(n) Verarbeitungseinheit (CPU); mehrere(n) CPUs, eine(r) anwendungsspezifische(n) integrierte(n) Schaltung (application-specific integrated circuit - ASIC); einem/einen Mikrocontroller; eine(r) programmierbare(n) Logiksteuerung (programmable logic controller - PLC); ein(em) feldprogrammierbares/feldprogrammierbaren Gate-Array (FPGA); eine(r) Kombination davon; oder dergleichen. In einer oder mehreren Ausführungsformen kann der Prozessor 126 in einer einzigen Rechenvorrichtung (z. B. einer elektronischen Steuereinheit (electronic control unit - ECU), einem Auto-Infotainment-System (in-car infotainment system - ICI-System) oder dergleichen angeordnet sein. In anderen Konfigurationen kann der Prozessor 126 über zwei oder mehr Rechenvorrichtungen (z. B. mehrere ECUs; eine Kombination aus einem ICI-System und einer oder vielen ECUs; oder dergleichen) verteilt sein.
-
In einigen Ausführungsformen kann die Sensorbaugruppe 116 einen oder mehrere Sensoren umfassen, die dazu in der Lage sind, Daten zu erfassen, die von Objekten innerhalb der Reichweite des einen oder der mehreren Sensoren empfangen werden. In einigen Ausführungsformen könnte die Sensorbaugruppe 116 eine beliebige von einer Kamera, einer Laufzeitkamera (Time-of-Flight-Kamera - TOF-Kamera), Systemen zur optischen Abstands- und Geschwindigkeitsmessung (light detection and ranging - LIDAR) oder anderen ähnlichen Systemen umfassen, die verwendet werden können, um Daten zu erkennen und zu erfassen, die Objekten und/oder einem Fahrer des Fahrzeugs 102 zugeordnet sind. Die Sensorbaugruppe 116 kann einen Lenksensor beinhalten, der in der Nähe der Lenkwelle angeordnet sein kann, um einen Lenkwinkel zu messen. Das Fahrzeug 102 beinhaltet außerdem einen Geschwindigkeitssensor, der an den Rädern oder in dem Getriebe des Fahrzeugs 102 angeordnet sein kann. Der Geschwindigkeitssensor ist dazu konfiguriert, ein Signal an die Steuerung 118 auszugeben, das die Geschwindigkeit des Fahrzeugs angibt. Außerdem kann die Sensorbaugruppe 116 einen Gierwinkelsensor umfassen, der in Kommunikation mit der Steuerung 118 stehen kann und dazu konfiguriert ist, ein Signal auszugeben, das den Gierwinkel des Fahrzeugs 102 angibt.
-
Die Sensorbaugruppe 116 kann dazu konfiguriert sein, Bereiche außerhalb und/oder innerhalb des Fahrzeugs abzutasten. Die Steuerung 118 kann über einen seriellen Bus (z. B. Controller Area Network (CAN)) oder über dedizierte elektrische Leitungen kommunizieren. Die Steuerung beinhaltet im Allgemeinen eine beliebige Anzahl an Mikroprozessoren (einschließlich Prozessor 126), ASICs, ICs, Arbeitsspeicher (z. B. FLASH, ROM, RAM, EPROM und/oder EEPROM) und Softwarecode, um miteinander zusammenzuwirken, um eine Reihe von Vorgängen durchzuführen. Die Steuerung beinhaltet zudem vorbestimmte Daten oder „Lookup-Tabellen“, die auf Berechnungen und Testdaten beruhen und in dem Arbeitsspeicher gespeichert sind. Die Steuerung kann über eine oder mehrere drahtgebundene oder drahtlose Fahrzeugverbindungen unter Verwendung üblicher Busprotokolle (z. B. CAN und Local Interconnect Network (LIN)) mit anderen Fahrzeugsystemen und Steuerungen kommunizieren. Im vorliegenden Zusammenhang bezieht sich eine Bezugnahme auf „eine Steuerung“ auf eine oder mehrere Steuerungen und/oder einen oder mehrere Computerprozessoren. Die Steuerung 118 kann Signale von dem System zum maschinellen Sehen empfangen und kann einen Arbeitsspeicher (z. B. Arbeitsspeicher 128) beinhalten, der maschinenlesbare Anweisungen zum Verarbeiten der Daten von dem System zum maschinellen Sehen enthält. Die Steuerung 118 kann dazu programmiert sein, Anweisungen an zumindest die Anzeige, das Audiosystem, das Lenksystem, das Bremssystem und/oder die Kraftmaschine auszugeben, um das Fahrzeug 102 autonom zu betreiben.
-
Die Steuerung 118 kann verschiedene Funktionen durchführen, wie etwa Steuern von Motorvorgängen (Kraftstoffeinspritzung, Geschwindigkeitssteuerung, Emissionsminderung, Bremsen usw.), Verwalten von Klimaregelungen (Klimaanlage, Heizung usw.), Aktivieren von Airbags und Ausgeben von Warnungen (Motorkontrollleuchte, Ausfall der Lampe, niedriger Reifendruck, Fahrzeug im toten Winkel usw.). In manchen Fällen kann die Fahrzeugsteuerung 118 mehr als einen Computer beinhalten, wie zum Beispiel einen ersten Computer, der den Motorbetrieb steuert, und einen zweiten Computer, der ein Infotainmentsystem betreibt.
-
In einer oder mehreren Ausführungsformen kann die Sensorfusionserkennungssteuerung 117 getrennt von anderen Komponenten des Fahrzeugs 102 angeordnet sein. Die Sensorfusionserkennungssteuerung 117 kann ein oder mehrere fahrzeuginterne Netzwerke umfassen, die Daten bereitstellen können, die einer oder mehreren Komponenten des Fahrzeugs zugeordnet sind.
-
Die verschiedenen Komponenten des Fahrzeugs 102 sind über einen oder mehrere Busse kommunikativ miteinander gekoppelt. Der eine oder die mehreren Busse kann/können unter Verwendung verschiedener drahtgebundener und/oder drahtloser Technologien umgesetzt sein. Zum Beispiel kann/können der eine oder die mehreren Busse einen Fahrzeugbus beinhalten, der ein Controller-Area-Network-Bus-Protokoll (CAN-Bus-Protokoll), ein Media-Oriented-Systems-Transport-Bus-Protokoll (MOST-Bus-Protokoll) und/oder ein CAN-Flexible-Data-Bus-Protokoll (CAN-FD-Bus-Protokoll) verwendet. Einige oder alle Abschnitte des einen oder der mehreren Busse können auch unter Verwendung drahtloser Technologien, wie etwa Bluetooth®, Zigbee® oder Nahfeldkommunikation (NFC), umgesetzt sein.
-
2 zeigt eine beispielhafte Architektur einer Sensorfusionserkennungssteuerung gemäß einer oder mehreren beispielhaften Ausführungsformen der vorliegenden Offenbarung.
-
Unter Bezugnahme auf 2 sind beispielhafte Komponenten 200 dargestellt, die einer Sensorfusionserkennungssteuerung 202 zugeordnet sind. Die Sensorfusionserkennungssteuerung 202 kann einen Prozessor 204 und den Speicher 206 umfassen, sodass der Speicher 206 verwendet werden kann, um Daten zu speichern, die der Sammlung, Korrelation, Erfassung und Anwendung zugeordnet sind, die der Verbesserung der Fahrzeugsicherheit zugeordnet sind. Die beispielhaften Komponenten 200 beinhalten zudem eine Steuerung 210 für ein autonomes Fahrzeug (autonomous vehicle - AV)/Fahrerassistenzsystem (advanced driver assistance system - ADAS), eine Antriebsstrangsteuerung 212 und eine GNSS-Steuerung 214.
-
In einer oder mehreren Ausführungsformen kann ein System zur Verbesserung der Fahrzeugsicherheit einen neuen Ansatz basierend auf einem fahrzeuginternen Anomalieerkennungsmechanismus unter Verwendung des Prinzips der Konsistenz von Daten von Sensoren und elektronischen Steuereinheiten (ECU) durch Analysieren mehrerer Sensordaten ermöglichen. Zum Beispiel kann das System zur Verbesserung der Fahrzeugsicherheit zusätzliche Sensorinformationen bestimmen, die von Sensoren, wie etwa Kamera, RADAR, LiDAR, SONAR, Autopilot oder ADAS, empfangen werden. Auf Grundlage der empfangenen Daten kann das System zur Verbesserung der Fahrzeugsicherheit analysieren und bestimmen, ob ein Angriff erfolgt ist oder nicht.
-
In der folgenden Tabelle 1 kann eine Menge von drei Variablen von dem System zur Verbesserung der Fahrzeugsicherheit verwendet werden, um zu bestimmen, ob ein Angriff erfolgt ist. Tabelle 1 zeigt die Variable I, Variable II und Variable III. Die Variable I kann den Geschwindigkeitsinformationen zugeordnet sein, die von einer elektronischen Steuereinheit (ECU) des Fahrzeugs empfangen werden. Die Variable II kann Geschwindigkeitsinformationen zugeordnet sein, die von einem GPS empfangen werden. Die Variable III kann der Geschwindigkeit von einer Kamera des Fahrzeugs zugeordnet sein.
-
Diese Variablen können stark miteinander korrelieren. Falls zum Beispiel eine Variable (z.B. Variable I) von Angreifern manipuliert wird, können die anderen Variablen (z.B. Variable II und Variable III) als Referenz beim Bestimmen, ob Angriffe aufgetreten sind oder nicht, verwendet werden. In diesem Szenario kann eine Veränderung der Variablen I auf Grundlage der Verwendung von Variable II und/oder Variable III erkannt und ermittelt werden. Es versteht sich, dass, obwohl dieses Beispiel zeigt, dass sich die Variablen auf die Geschwindigkeit des Fahrzeugs beziehen, andere Parameter verwendet und korreliert werden können, um zu bestimmen, ob ein Angriff erfolgt ist.
Tabelle 1:
Variable I | Variable II | Variable III |
Geschwindigkeit von ECU | Geschwindigkeit von GPS | Geschwindigkeit von Kamera |
Fahrpedalstellung von | Beschleunigung von GPS | Beschleunigung von |
ECU | | Kamera |
-
Unter Bezugnahme auf Tabelle 1 ist die Menge aus drei Variablen gezeigt, wobei die Zeilen in Tabelle 1 Informationen unterschiedlicher Sensoren darstellen und die Spalten in Tabelle 1 unterschiedliche Merkmale darstellen.
-
In einer oder mehreren Ausführungsformen kann ein System zur Verbesserung der Fahrzeugsicherheit das Extrahieren einer oder mehreren Variablen von den jeweiligen Fahrzeugsensoren (z. B. drei Variablen basierend auf dem in Tabelle 1 erfassten Beispiel) ermöglichen. In einer oder mehreren Ausführungsformen kann ein System zur Verbesserung der Fahrzeugsicherheit das Extrahieren einer Reihe von Fahrzeugparametern wie Geschwindigkeit, Motordrehzahl, Bremsstatus, Lenkwinkel, Gierwinkel, Fahrpedalstellung, Scheinwerferstatus, Scheibenwischerstatus, Umgebungstemperatur und Umgebungsdruck ermöglichen. In dem Beispiel aus Tabelle 1 ist eine Verwendung von Geschwindigkeits- und Fahrpedalstellungsdaten gezeigt, es versteht sich jedoch, dass andere Fahrzeugdaten verwendet werden können.
-
Zum Beispiel kann eine Variable I einen Geschwindigkeitswert, der erfasst werden kann, und eine Pedalstellung eines Fahrzeugparameters wie etwa Fahrpedal beinhalten. Diese Pedalstellung kann anhand von Daten bestimmt werden, die von der ECU empfangen werden. In einer oder mehreren Ausführungsformen übertragen ECUs Sensormesswerte und Steuerinformationen auf einen gemeinsamen Kommunikationskanal, wie etwa einen CAN-Bus. Auf den CAN-Bus kann unter Verwendung eines Anschlusses (z. B. des OBD-II-Anschlusses) zugegriffen werden, der in dem Fahrzeug vorhanden ist. Durch OBD-II kann ein System zur Verbesserung der Fahrzeugsicherheit das Lesen, Analysieren, Decodieren und Speichern der vom CAN-Bus gelesenen CAN-Daten in Echtzeit über OBD-II-Dongles ermöglichen. Eine DBC-Datei, die die CAN-IDs definiert, und andere Informationen, die beim Decodieren der CAN-Nachrichten hilfreich sind, können zum Decodieren von CAN-Nachrichten verwendet werden. Nach dem Decodieren werden die Informationen in Datenstrukturen gefüllt, die den Echtzeitwert jedes Sensorparameters speichern und sie werden zudem in die Protokolldateien geschrieben.
-
In einer oder mehreren Ausführungsformen kann eine Variable II Geschwindigkeits- und Beschleunigungsdaten beinhalten, die von einem GPS-System empfangen werden. Die Schätzung der Geschwindigkeit und Beschleunigung aus diskreten Zeitsignalen in GPS basiert auf der Differenzierung der Trägerphasenmessungen oder der vom Empfänger erzeugten Doppler-Messungen. Wie bei der Geschwindigkeitsschätzung wird bevorzugt, die Beschleunigungsmessungen aus der Differenzierung der Trägerphase zu erzeugen, und nicht aus der momentanen Doppler-Messung (die stärker verrauscht ist), wobei die Geschwindigkeitsbereichsraten erhalten werden können und für die Beschleunigung ebenfalls eine Bereichsbeschleunigung erhalten werden kann.
-
In einer oder mehreren Ausführungsformen kann eine Variable III Geschwindigkeits- und Beschleunigungsdaten beinhalten, die von einer Kamera empfangen werden, die dem Fahrzeug zugeordnet ist. Es ist unbedingt zu beachten, dass das Vorhandensein eines einzelnen Einzelbilds allein nicht viel über die Geschwindigkeit aussagt. In Bezug auf die klassische Mechanik kann die Position eines Objekts auf Grundlage eines einzelnen Einzelbilds geschätzt werden, aber zum Schätzen der Geschwindigkeit sind mindestens zwei Einzelbilder erforderlich, da eine Zeitreferenz benötigt wird. Es versteht sich, dass die Geschwindigkeit in Entfernungseinheiten im Zeitverlauf angegeben wird. Die Entfernung kann in Metern gemessen werden und die Zeit kann in Sekunden gemessen werden. Um die Geschwindigkeit zu berechnen, werden mindestens zwei aufeinanderfolgende Einzelbilder benötigt. Um die Beschleunigung zu berechnen, bei der es sich um die Änderung der Geschwindigkeit handelt, werden etwa drei Einzelbilder benötigt, da berechnet werden muss, wie sich die Geschwindigkeit (2 Einzelbilder) im Laufe der Zeit verändert (3. Einzelbild). Die Beschleunigung wird in Einheiten von Metern pro Sekunde2 angegeben. Das Anwenden des Lucas-Kanade- oder Farnebackverfahrens zur Berechnung des optischen Flusses kann genutzt werden, um Positionsänderungen eines Objekts zwischen zwei Einzelbildern zu ermitteln.
-
In einer oder mehreren Ausführungsformen kann ein System zur Verbesserung der Fahrzeugsicherheit das Erkennen von böswilligen Angriffen auf Grundlage von zwei oder mehr Variablen ermöglichen. Zum Beispiel kann eine Veränderung einer Variablen durch andere Variablen ermittelt werden, da diese Variablen stark korrelieren. Die Korrelation kann durch eine allgemeine Gleichung oder eine beliebige andere Korrelationsgleichung berechnet werden:
-
Wenn zum Beispiel 0 ≤ r ≤ 1 ist, kann x Variable I sein und y kann Variable II aus Tabelle 1 sein. Es gibt Kombinationen aus Variable I und III und Variable II und Variable III. Zum Beispiel können in dem Fall, dass eine Variable unter Umständen von Angreifern manipuliert worden ist, die anderen Variablen als Referenzen verwendet werden. Ein Schwellenwert T kann jedoch unter Umständen berücksichtigt werden müssen. Wenn zum Beispiel r <T, wobei 0 < T ≤ 1, kann ein System zur Verbesserung der Fahrzeugsicherheit ermitteln oder erkennen, dass eine Anomalie aufgetreten ist, da die zwei Variablen berücksichtigt werden würden. In diesem Fall kann das System zur Verbesserung der Fahrzeugsicherheit bestimmen, dass ein Angriff vorliegt. Ein optimaler T-Wert kann eingestellt werden, indem statistische Variationen des Korrelationskoeffizienten r berücksichtigt werden.
-
In einer oder mehreren Ausführungsformen kann eine dem Fahrzeug 102 aus 1 zugeordnete Sensorfusionserkennungssteuerung 202 zur Verbesserung der Fahrzeugsicherheit verwendet werden. Die Sensorfusionserkennungssteuerung 202 kann von anderen Fahrzeugkomponenten getrennt sein und auch von dem fahrzeuginternen Netzwerk anderer Fahrzeugkomponenten getrennt sein, die Variablen bereitstellen (z. B. Variable I von der Antriebsstrangsteuerung 212, Variable II von der GNSS-Steuerung 214 und Variable III von der AV-/ADAS-Steuerung 210). Auf diese Weise können Angreifer möglicherweise nicht in der Lage sein, alle Netzwerke und Komponenten gleichzeitig zu manipulieren oder zu schädigen.
-
Es versteht sich, dass die vorstehenden Beschreibungen Veranschaulichungszwecken dienen und nicht einschränkend sein sollen. Obwohl die verschiedenen Komponenten in 1 und 2 als einzelne Funktionsblöcke gezeigt sind, versteht es sich jedoch auch, dass einige dieser Komponenten oder einige Teile dieser Komponenten in einigen Umsetzungen gemäß der Offenbarung miteinander kombiniert werden können.
-
3 veranschaulicht ein Flussdiagramm eines veranschaulichenden Prozesses 300 für ein beispielhaftes System zur Verbesserung der Fahrzeugsicherheit gemäß einer oder mehreren beispielhaften Ausführungsformen der vorliegenden Offenbarung.
-
Bei Block 302 kann eine Vorrichtung oder ein System eines Fahrzeugs (z. B. das Fahrzeug 102 aus 1) eine Vielzahl von Datenwerten von einem bordeigenen Diagnosesystem (OBD) eines Fahrzeugs empfangen, wobei ein erster Datenwert von einem ersten Sensor des Fahrzeugs empfangen wird und ein zweiter Datenwert von einem zweiten Sensor des Fahrzeugs empfangen wird.
-
Bei Block 304 kann die Vorrichtung oder das System einen dritten Datenwert bestimmen, der von einem Controller-Area-Network-Bus (CAN-Bus) des Fahrzeugs empfangen wird.
-
Bei Block 306 kann die Vorrichtung oder das System auf Grundlage des Durchführens einer Korrelationsanalyse zwischen dem ersten Wert, dem zweiten Wert und dem dritten Wert bestimmen, dass der dritte Datenwert einer falschen Nachricht zugeordnet ist, die von einer Vorrichtung außerhalb des Fahrzeugs stammt.
-
Bei Block 308 kann die Vorrichtung oder das System den dritten Datenwert auf Grundlage der Korrelationsanalyse verwerfen.
-
Es versteht sich, dass die vorstehenden Beschreibungen Veranschaulichungszwecken dienen und nicht einschränkend sein sollen.
-
In der vorstehenden Offenbarung ist auf die beigefügten Zeichnungen Bezug genommen worden, die einen Teil hiervon bilden und konkrete Umsetzungen veranschaulichen, in denen die vorliegende Offenbarung umgesetzt werden kann.Es versteht sich, dass auch andere Umsetzungen verwendet und strukturelle Änderungen vorgenommen werden können, ohne vom Umfang der vorliegenden Offenbarung abzuweichen.Bezugnahmen in der Beschreibung auf „eine Ausführungsform“, „ein Ausführungsbeispiel“, „eine beispielhafte Ausführungsform“ usw. geben an, dass die beschriebene Ausführungsform ein(e) bestimmte(s) Merkmal, Struktur oder Eigenschaft beinhalten kann, wobei jedoch nicht unbedingt jede Ausführungsform diese(s) bestimmte Merkmal, Struktur oder Eigenschaft beinhalten muss.Darüber hinaus beziehen sich derartige Formulierungen nicht unbedingt auf dieselbe Ausführungsform.Ferner wird, wenn ein(e) konkrete(s) Merkmal, Struktur oder Eigenschaft in Verbindung mit einer Ausführungsform beschrieben ist, der Fachmann ein(e) derartige(s) Merkmal, Struktur oder Eigenschaft in Verbindung mit anderen Ausführungsformen erkennen, ob dies nun ausdrücklich beschrieben ist oder nicht.
-
Umsetzungen der in dieser Schrift offenbarten Systeme, Geräte, Vorrichtungen und Verfahren können einen Spezial- oder Universalcomputer umfassen oder nutzen, der Computerhardware beinhaltet, wie zum Beispiel einen oder mehrere Prozessoren und Systemspeicher, wie sie in dieser Schrift erörtert sind. Umsetzungen innerhalb des Umfangs der vorliegenden Offenbarung können zudem physische und andere computerlesbare Medien zum Transportieren oder Speichern computerausführbarer Anweisungen und/oder Datenstrukturen beinhalten. Bei derartigen computerlesbaren Medien kann es sich um beliebige verfügbare Medien handeln, auf die durch ein Universal- oder Spezialcomputersystem zugegriffen werden kann. Bei computerlesbaren Medien, in denen computerausführbare Anweisungen gespeichert werden, handelt es sich um Computerspeichermedien (-vorrichtungen).Bei computerlesbaren Medien, die computerausführbare Anweisungen transportieren, handelt es sich um Übertragungsmedien. Somit können Umsetzungen der vorliegenden Offenbarung beispielsweise und nicht einschränkend mindestens zwei deutlich unterschiedliche Arten von computerlesbaren Medien umfassen: Computerspeichermedien (-vorrichtungen) und Übertragungsmedien.
-
Computerspeichermedien (-vorrichtungen) beinhalten RAM, ROM, EEPROM, CD-ROM, Festkörperlaufwerke (solid state drives - SSDs) (z. B. auf Grundlage von RAM), Flash-Speicher, Phasenwechselspeicher (phase-change memory - PCM), andere Speicherarten, andere optische Plattenspeicher, Magnetplattenspeicher oder andere magnetische Speichervorrichtungen oder ein beliebiges anderes Medium, das dazu verwendet werden kann, gewünschte Programmcodemittel in Form von computerausführbaren Anweisungen oder Datenstrukturen zu speichern, und auf das durch einen Universal- oder Spezialcomputer zugegriffen werden kann.
-
Eine Umsetzung der in dieser Schrift offenbarten Vorrichtungen, Systeme und Verfahren kann über ein Computernetz kommunizieren. Ein „Netzwerk“ ist als eine oder mehrere Datenverbindungen definiert, die den Transport elektronischer Daten zwischen Computersystemen und/oder Modulen und/oder anderen elektronischen Vorrichtungen ermöglichen.Wenn Informationen über ein Netz oder eine andere Kommunikationsverbindung (entweder festverdrahtet, drahtlos oder eine beliebige Kombination aus festverdrahtet oder drahtlos) an einen Computer übertragen oder einem Computer bereitgestellt werden, sieht der Computer die Verbindung zweckgemäß als Übertragungsmedium an.Übertragungsmedien können ein Netz und/oder Datenverknüpfungen beinhalten, die verwendet werden können, um gewünschte Programmcodemittel in der Form von computerausführbaren Anweisungen oder Datenstrukturen zu transportieren, und auf die durch einen Universal- oder Spezialcomputer zugegriffen werden kann. Kombinationen aus dem Vorstehenden sollten ebenfalls im Umfang computerlesbarer Medien eingeschlossen sein.
-
Computerausführbare Anweisungen umfassen zum Beispiel Anweisungen und Daten, die bei Ausführung auf einem Prozessor einen Universalcomputer, Spezialcomputer oder eine Spezialverarbeitungsvorrichtung dazu veranlassen, eine bestimmte Funktion oder Gruppe von Funktionen durchzuführen.Die computerausführbaren Anweisungen können zum Beispiel Binärdateien, Zwischenformatanweisungen, wie etwa Assemblersprache, oder auch Quellcode sein.Wenngleich der Gegenstand in für Strukturmerkmale und/oder methodische Handlungen konkreter Sprache beschrieben worden ist, versteht es sich, dass der in den beigefügten Patentansprüchen definierte Gegenstand nicht notwendigerweise auf die vorstehend beschriebenen Merkmale oder Handlungen beschränkt ist.Die beschriebenen Merkmale und Handlungen sind vielmehr als beispielhafte Formen zum Umsetzen der Patentansprüche offenbart.
-
Der Fachmann wird verstehen, dass die vorliegende Offenbarung in Network-Computing-Umgebungen mit vielen Arten von Computersystemkonfigurationen umgesetzt werden kann, zu denen Armaturenbrett-Fahrzeugcomputer, Personal Computer, Desktop-Computer, Laptop-Computer, Nachrichtenprozessoren, Handheld-Vorrichtungen, Multiprozessorsysteme, Unterhaltungselektronik auf Mikroprozessorbasis oder programmierbare Unterhaltungselektronik, Netz-PCs, Minicomputer, Mainframe-Computer, Mobiltelefone, PDAs, Tablets, Pager, Router, Switches, verschiedene Speichervorrichtungen und dergleichen gehören.Die Offenbarung kann zudem in Umgebungen mit verteilten Systemen umgesetzt werden, in denen sowohl lokale Computersysteme als auch Remote-Computersysteme, die durch ein Netzwerk (entweder durch festverdrahtete Datenverbindungen, drahtlose Datenverbindungen oder durch eine beliebige Kombination aus festverdrahteten und drahtlosen Datenverbindungen) verbunden sind, Aufgaben ausführen.In einer Umgebung mit verteilten Systemen können sich Programmmodule sowohl in lokalen als auch in entfernten Arbeitsspeichervorrichtungen befinden.
-
Ferner können gegebenenfalls die in dieser Schrift beschriebenen Funktionen in einem oder mehreren von Hardware, Software, Firmware, digitalen Komponenten oder analogen Komponenten durchgeführt werden.Ein oder mehrere anwendungsspezifische integrierte Schaltkreise (application specific integrated circuits - ASICs) können zum Beispiel dazu programmiert sein, eines bzw. einen oder mehrere der in dieser Schrift beschriebenen Systeme und Vorgänge ausführen.Gewisse Ausdrücke, die in der gesamten Beschreibung und den Patentansprüchen verwendet werden, beziehen sich auf bestimmte Systemkomponenten.Für den Fachmann liegt es auf der Hand, dass die Komponenten mit anderen Benennungen bezeichnet werden können.In dieser Schrift soll nicht zwischen Komponenten unterschieden werden, die sich der Benennung nach unterscheiden, nicht jedoch hinsichtlich ihrer Funktion.
-
Es ist anzumerken, dass die vorstehend erörterten Sensorausführungsformen Computerhardware, -software, -firmware oder eine beliebige Kombination daraus umfassen können, um mindestens einen Teil ihrer Funktionen durchzuführen.Ein Sensor kann zum Beispiel Computercode beinhalten, der dazu konfiguriert ist, in einem oder mehreren Prozessoren ausgeführt zu werden, und kann eine Hardware-Logikschaltung/elektrische Schaltung beinhalten, die durch den Computercode gesteuert wird. Diese beispielhaften Vorrichtungen sind in dieser Schrift zum Zwecke der Veranschaulichung bereitgestellt und sollen nicht einschränkend sein.Ausführungsformen der vorliegenden Offenbarung können in weiteren Arten von Vorrichtungen umgesetzt werden, wie es dem einschlägigen Fachmann bekannt wäre.
-
Zumindest einige Ausführungsformen der vorliegenden Offenbarung sind auf Computerprogrammprodukte ausgerichtet, die eine derartige Logik (z. B. in Form von Software) umfassen, die in einem beliebigen computernutzbaren Medium gespeichert ist.Eine derartige Software bewirkt, wenn sie in einer oder mehreren Datenverarbeitungsvorrichtungen ausgeführt wird, dass eine Vorrichtung wie in dieser Schrift beschrieben funktioniert.
-
Wenngleich vorangehend verschiedene Ausführungsformen der vorliegenden Offenbarung beschrieben worden sind, versteht es sich, dass diese lediglich als Beispiele und nicht der Einschränkung dienen.Für den einschlägigen Fachmann ist ersichtlich, dass verschiedene Änderungen in Form und Detail daran vorgenommen werden können, ohne vom Geist und Umfang der Offenbarung abzuweichen. Somit sollten Breite und Umfang der vorliegenden Offenbarung durch keine der vorstehend beschriebenen beispielhaften Ausführungsformen eingeschränkt, sondern lediglich gemäß den folgenden Ansprüchen und deren Äquivalenten definiert werden.Die vorangehende Beschreibung ist zu Veranschaulichungs- und Beschreibungszwecken dargelegt worden. Sie erhebt keinerlei Anspruch auf Vollständigkeit und soll die Offenbarung nicht auf die konkrete offenbarte Form beschränken.Viele Modifikationen und Variationen sind in Anbetracht der vorstehenden Lehren möglich.Ferner ist anzumerken, dass beliebige oder alle der vorstehend genannten alternativen Umsetzungen in einer beliebigen gewünschten Kombination verwendet werden können, um zusätzliche Hybrid-Umsetzungen der vorliegenden Offenbarung zu bilden. Zum Beispiel können beliebige der unter Bezugnahme auf eine konkrete Vorrichtung oder eine konkrete Komponente beschriebenen Funktionen durch eine andere Vorrichtung oder eine andere Komponente durchgeführt werden. Des Weiteren wurden zwar konkrete Vorrichtungseigenschaften beschrieben, doch können sich Ausführungsformen der Offenbarung auf zahlreiche andere Vorrichtungseigenschaften beziehen. Ferner versteht es sich, dass, obwohl Ausführungsformen in für Strukturmerkmale und/oder methodische Handlungen spezifischer Sprache beschrieben worden sind, die Offenbarung nicht notwendigerweise auf die konkreten beschriebenen Merkmale oder Handlungen beschränkt ist. Stattdessen sind die konkreten Merkmale und Handlungen als veranschaulichende Formen zum Umsetzen der Ausführungsformen offenbart. Mit Formulierungen, die konditionale Zusammenhänge ausdrücken, wie unter anderem „kann“, „könnte“, „können“ oder „könnten“, soll im Allgemeinen vermittelt werden, dass gewisse Ausführungsformen gewisse Merkmale, Elemente und/oder Schritte beinhalten könnten, wohingegen andere Umsetzungen diese nicht beinhalten können, es sei denn, es ist konkret etwas anderes angegeben oder es ergibt sich etwas anderes aus dem jeweils verwendeten Kontext. Somit sollen derartige Formulierungen, die konditionale Zusammenhänge ausdrücken, nicht implizieren, dass Merkmale, Elemente und/oder Schritte für eine oder mehrere Ausführungsformen in irgendeiner Weise erforderlich sind.
-
Gemäß einer Ausführungsform der vorliegenden Erfindung umfasst die Korrelationsanalyse die Verarbeitungsschaltung, die ferner zu Folgendem konfiguriert ist: Bestimmen, dass ein erstes Ergebnis der Korrelationsanalyse zwischen dem ersten Datenwert und dem zweiten Datenwert kleiner als der Schwellenwert ist; Bestimmen, dass ein zweites Ergebnis der Korrelationsanalyse zwischen dem ersten Datenwert und dem dritten Datenwert größer als der Schwellenwert ist; und Kennzeichnen, dass der dritte Datenwert der falschen Nachricht zugeordnet ist, auf Grundlage dessen, dass das zweite Ergebnis größer als der Schwellenwert ist.
-
Gemäß der vorliegenden Erfindung ist ein System bereitgestellt, das Folgendes aufweist: eine Sensorfusionserkennungssteuerung mit einem Prozessor und einem Arbeitsspeicher, wobei der Prozessor dazu konfiguriert ist, in dem Arbeitsspeicher gespeicherte Anweisungen zu Folgendem auszuführen: Empfangen einer Vielzahl von Datenwerten von einem bordeigenen Diagnosesystem (OBD) eines Fahrzeugs, wobei ein erster Datenwert von einem ersten Sensor des Fahrzeugs empfangen wird und ein zweiter Datenwert von einem zweiten Sensor des Fahrzeugs empfangen wird; Bestimmen eines dritten Datenwerts, der von einem Controller-Area-Network-Bus (CAN-Bus) des Fahrzeugs empfangen wird; Bestimmen, dass der dritte Datenwert einer falschen Nachricht zugeordnet ist, die von einer Vorrichtung außerhalb des Fahrzeugs stammt, auf Grundlage des Durchführens einer Korrelationsanalyse zwischen dem ersten Wert, dem zweiten Wert und dem dritten Wert, und Verwerfen des dritten Datenwerts auf Grundlage der Korrelationsanalyse.
-
Gemäß einer Ausführungsform ist die Erfindung ferner gekennzeichnet durch Anweisungen zum Vergleichen eines Ergebnisses der Korrelationsanalyse mit einem Schwellenwert.
-
Gemäß einer Ausführungsform werden der erste Sensor und der zweite Sensor unabhängig gesteuert.
-
Gemäß einer Ausführungsform ist die Erfindung ferner gekennzeichnet durch Anweisungen zum Bestimmen, dass ein Zustand von Nutzdaten einer CAN-Nachricht „angegriffen“ ist, auf Grundlage dessen, dass das Ergebnis der Korrelationsanalyse größer als der Schwellenwert ist.