-
Stand der Technik
-
Die Erfindung betrifft eine Vorrichtung und ein Verfahren für eine regelbasierte Anomalieerkennung, insbesondere ein regelbasiertes System für Anomalieerkennung für ein controller area network, CAN.
-
Wünschenswert ist es, ein derartiges regelbasiertes System zu verbessern.
-
Offenbarung der Erfindung
-
Dies wird durch die Vorrichtung und das Verfahren nach den unabhängigen Ansprüchen erreicht. Mit dem Verfahren werden bestehende regelbasierte Systeme um Regeln erweitert und verbessert. Durch eine regelbasierte Auswertung von Korrelationen und damit funktionalen Abhängigkeiten zwischen einzelnen Signalen werden Anomalien erkannt.
-
Das Verfahren zur Anomalieerkennung insbesondere in einem Kraftfahrzeug umfasst das Erfassen von wenigstens zwei Signalen in einer Vielzahl von Signalen, die in einem Kommunikationsnetzwerk übertragen werden und das Überprüfen wenigstens einer Korrelationsregel, wobei die Korrelationsregel eine funktionale Abhängigkeit zwischen den wenigstens zwei Signalen charakterisiert wobei überprüft wird, ob die Korrelationsregel erfüllt ist, oder nicht, und abhängig vom Ergebnis dieser Überprüfung entschieden wird, ob eine Anomalie vorliegt, oder nicht. Dadurch werden die Signale mittels der Korrelationsregel abhängig von wenigstens einem Zustand des Kommunikationsnetzwerks überprüft. Der Zustand beeinflusst die Übertragung der Signale und findet sich in den übertragenen Signalen wieder. Durch Einführung solcher Regeln wird es einem potentiellen Angreifer wesentlich erschwert, das System anzugreifen, da für einen erfolgreichen Angriff, der nicht von einem derartigen intrusion detection system, IDS, entdeckt werden kann, mehr als ein Signalwert geändert werden muss. Im Gegensatz zu den üblicherweise statischen Regeln, sind derartige Korrelationsregeln dynamisch, das heißt, sie hängen vom aktuellen Zustand des Netzwerkes ab.
-
Vorzugsweise ist vorgesehen, dass ein Kraftfahrzeug, das in einem ersten Betriebsmodus des Kraftfahrzeugs betrieben wird, bei erkannter Anomalie in einem zweiten, vom ersten Betriebsmodus verschiedenen Betriebsmodus des Kraftahrzeugs betrieben wird. Damit wird auf die erkannte Anomalie reagiert, wenn die Anomalieerkennung in dem Kraftfahrzeug abläuft.
-
Vorzugsweise werden Signale in verschiedenen Teilen des Kommunikationsnetzwerks übertragen, wobei wenigstens eine Korrelationsregel überprüft wird, die eine funktionale Abhängigkeit zwischen Signalen charakterisiert, die in mehreren der Teile übertragen werden. Falls das Kommunikationsnetzwerk über mehrere Teile verfügt, erfolgt die Regelüberprüfung über mehrere Teile übergreifend. Das Verfahren wird dazu beispielsweise auf einem zentralen Gateway des Kommunikationsnetzwerks ausgeführt. Dies ist insbesondere für sogenannte geroutete Signale, d.h. Signale, die auf mehrere Teile übertragen werden, interessant. Das IDS wird auf dem Gateway ausgeführt, das heißt, dass der Datenstrom mit den Korrelationsregeln auf Anomalien überprüft wird. Wurden Korrelationsregeln erstellt, die über mehrere Subsysteme Korrelationen auswerten, werden diese Korrelationsregeln an einer Stelle ausgeführt, an der Zugriff auf beteiligte Subsysteme gewährleistet ist, z.B. dem Gateway.
-
Vorzugsweise werden Signale in verschiedenen Teilen des Kommunikationsnetzwerks übertragen, wobei wenigstens eine Korrelationsregel überprüft wird, die eine funktionale Abhängigkeit zwischen Signalen charakterisiert, die nur in einem der Teile übertragen werden. Falls das Kommunikationsnetzwerk über mehrere Teile verfügt, erfolgt die Regelüberprüfung über einzelne Teile separat.
-
Vorzugsweise wird ein Korrelationskoeffizient für wenigstens zwei der Signale bestimmt. Das Auffinden von korrelierten Signalen, die über ein controller area netzwerk, CAN, übertragen werden, kann theoretisch erfolgen, indem per Hand ein Namensabgleich von Signalen gemacht wird. Dies würde allerdings Expertenwissen bedürfen, wäre sehr zeitintensiv und zudem unzuverlässig, da beispielsweise latente Abhängigkeiten nicht gefunden würden. Demgegenüber stellt das Auffinden der korrelierten Signale auf Basis von Trainingsdaten mittels Korrelationskoeffizienten eine zuverlässigere und schnellere Methode dar.
-
Vorzugsweise definiert eine Korrelationsregel für ein erstes Signal und ein zweites Signal eine Vorschrift zur Bestimmung eines zu erwartenden Werts für das zweite Signal abhängig von einem Wert für das erste Signal. Wenn das erste Signal mit dem zweiten Signal zumindest annähernd korreliert ist, wird der erwartete Wert des zweiten Signals mit einer insbesondere linearen Gleichung aus der Korrelationsregel abhängig vom ersten Signal berechenbar. Dies wird zur Anomalieerkennung eingesetzt.
-
Vorzugsweise wird der zu erwartende Wert für das zweite Signal mit einem Wert für das zweite Signal verglichen, und eine Anomalie erkannt, wenn die Abweichung zwischen dem zu erwartenden Wert und dem Wert größer als ein Schwellwert ist. Es wird beispielsweise überprüft, ob der tatsächliche Wert des zweiten Signals in einem kleinen Intervall um den erwarteten Wert des zweiten Signals liegt. Damit ist die Anomalieerkennung unabhängig von statischen Regeln möglich.
-
Ein Verfahren zur Erzeugung von Korrelationsregeln umfasst das Auswerten von wenigstens zwei Signalen in einer Vielzahl von Signalen aus Trainingsdaten, die in einem Kommunikationsnetzwerk übertragen werden, und das Auffinden wenigstens einer Korrelationsregel, wobei die Korrelationsregel eine funktionale Abhängigkeit zwischen den wenigstens zwei Signalen charakterisiert. Damit werden die Korrelationsregeln automatisiert erzeugt.
-
Vorzugsweise ist vorgesehen, dass ein Korrelationskoeffizient bestimmt wird, der eine Korrelation zwischen den wenigstens zwei Signalen charakterisiert, wobei die Korrelationsregel abhängig vom Korrelationskoeffizienten bestimmt wird. Die funktionale Abhängigkeit wird so effizient abgebildet.
-
Vorzugsweise ist vorgesehen, dass die Korrelationsregel abhängig von einer linearen Gleichung bestimmt wird. Dies ermöglicht den Einsatz linearer Regression.
-
Vorzugsweise umfasst die Korrelationsregel wenigstens einen Parameter, wobei wenigstens ein Parameter abhängig von wenigstens zwei der Signale geschätzt wird. Der Parameter wird beispielsweise aus den Trainingsdaten geschätzt.
-
Vorzugsweise werden korrelierte Signale auf Basis von Trainingsdaten bestimmt, für die gefundenen korrelierten Signale eine lineare Transformationsregel bestimmt, und abhängig von der linearen Transformationsregel wenigstens eine Korrelationsregel definiert und/oder konfiguriert. Damit sind die Korrelationsregeln automatisiert erstellbar.
-
Die Vorrichtung umfasst einen Mikroprozessor, einen Speicher mit Instruktionen und eine Schnittstelle für den Empfang von Signalen, die im Kommunikationsnetzwerk übertragen werden, wobei die Vorrichtung ausgebildet ist, bei der Ausführung der Instruktionen durch den Mikroprozessor das Verfahren auszuführen.
-
Ein Computerprogramm, umfassend Befehle, die bei der Ausführung des Programms durch die Vorrichtung diese veranlassen, das Verfahren auszuführen.
-
Des Weiteren ist ein computerlesbares Medium vorgesehen, auf dem das Computerprogramm gespeichert ist.
-
Weitere vorteilhafte Ausgestaltungen ergeben sich aus der folgenden Beschreibung und der Zeichnung. In der Zeichnung zeigt
- 1 schematisch einen Teil eines Kommunikationsnetzwerks,
- 2 ein Flussdiagramm mit Schritten in einem Verfahren für eine Anomalieerkennung
- 3 schematisch eine Darstellung einer Datenvorverarbeitung im Verfahren.
-
1 zeigt schematisch einen Teil eines Kommunikationsnetzwerks 100.
-
Das Kommunikationsnetzwerk 100 umfasst eine Vorrichtung 102 für eine Anomalieerkennung, beispielsweise ein Gateway. Die Vorrichtung 102 umfasst einen Mikroprozessor 104, einen Speicher 106 mit Instruktionen und eine Schnittstelle 108 für den Empfang von Signalen, die im Kommunikationsnetzwerk 100 übertragen werden. In der Vorrichtung 102 ist ein Datenbus 110 vorgesehen, über den der Mikroprozessor 104 mit dem Speicher 106 und der Schnittstelle 108 verbunden ist.
-
Das Kommunikationsnetzwerk 100 umfasst im Beispiel einen Bus 112, der mit der Schnittstelle 108 verbunden ist und über den die Signale im Kommunikationsnetzwerk 100 übertragen werden.
-
Das Kommunikationsnetzwerk 100 umfasst im Beispiel unterschiedliche Teile. Im Beispiel sind ein erster Teil 114 und ein zweiter Teil 116 vorgesehen. Die unterschiedlichen Teile bilden unterschiedliche Sub-Systeme, die den Gateway verwenden.
-
Das Kommunikationsnetzwerk 100 ist im Beispiel ein controller area network, CAN. Derartige Netzwerke sind als ISO 11898 international standardisiert. Die folgende Beschreibung bezieht sich insbesondre auf ISO 11898-1:2015, ISO 11898-2:2016 und ISO 11898-3:2006 ist aber auch auf andere Versionen dieses Standards entsprechend anwendbar. Es können auch andere Kommunikationsstandards beispielsweise nach ISO 17458-1:2013, ISO 17458-2:2013, ISO 17458-3:2013, ISO 17458-4:2013, ISO 17458-5:2013 für das Kommunikationsnetzwerk 100 verwendet werden.
-
Die Vorrichtung 102 ist ausgebildet, bei der Ausführung der Instruktionen durch den Mikroprozessor 104 das im Folgenden beschriebene Verfahren auszuführen.
-
Ein Computerprogramm, umfassend Befehle, die bei der Ausführung des Programms durch die Vorrichtung diese veranlassen, das Verfahren auszuführen, ist ebenfalls vorgesehen. Ein computerlesbares Medium, auf dem das Computerprogramm gespeichert ist, ist ebenfalls vorgesehen.
-
In vielen Fahrzeugen ist ein CAN verbaut. CAN ist ein serielles Feldbussystem, das die Kommunikation von Mikrocontrollern, insbesondere Steuergeräten im Fahrzeug erlaubt. Der Datenverkehr auf dem CAN-Bus kann dabei grundsätzlich in zwei Gruppen unterteilt werden.
-
Normalverhalten:
-
Das Normalverhalten beschreibt die Art der Daten wie sie im normalen Betrieb, d.h. ohne Fehler, Ausfälle, äußere Manipulationen o. ä. anfallen.
-
In einem korrekt arbeitenden System treten dann nur fehlerfreie Daten auf und die einzelnen Daten hängen im Allgemeinen durch spezifische, sowohl stationäre als auch zeitliche Korrelationen voneinander ab.
-
Anomalien:
-
Aus verschiedenen Gründen können im realen Betrieb in den Daten Abweichungen vom Normalverhalten auftreten, die wir als Anomalie bezeichnen.
-
Ursachen dafür können beispielsweise folgender Natur sein:
- (i) Defekte oder ganz ausgefallene Teilsysteme liefern falsche oder gar keine Daten,
- (ii) Bauteile sind beschädigt,
- (iii) das System wurde durch eine externe Quelle, z. B. durch einen Hackerangriff, manipuliert. Dies wird auch als Intrusion bezeichnet.
-
Es ist von hoher Bedeutung, solche Anomalien zu erkennen, insbesondere um neue, unbekannte Angriffsformen zuverlässig detektieren zu können.
-
Ein intrusion detection system, IDS, für den CAN Bus ist beispielsweise regelbasiert. Hierbei wird für eine Auswahl an möglichem, anormalem Verhalten eine Liste an Abfragen, Überprüfungen und Folgerungen erstellt, anhand der das IDS verfährt. Diese Regeln können dabei aus der CAN-Matrix gewonnen werden. Die CAN-Matrix ist im Regelfall geschütztes Wissen des jeweiligen original equipment manufacturer, OEM. Der Aufbau des Regelsystems ist daher nicht generalisierbar und wird für jeden Fahrzeugtyp extra vorgenommen.
-
In einem regelbasierten IDS System für CAN wird eine Liste von Regeln abgearbeitet, um beispielsweise Schwellwertsverletzungen aufzufinden.
-
Statische Regeln, wie das Überprüfen, ob ein Signal in regelmäßigen Zeitabständen auftritt oder ob die Signalwerte in einem vordefinierten Intervall liegen, können relativ einfach aufgestellt werden und direkt aus der CAN Matrix gewonnen werden.
-
Demgegenüber hat das Verfahren zum Ziel, Signale anhand von Korrelationsregeln zu überprüfen, die Abhängigkeiten zwischen verschiedenen Signalen angeben. Diese ergänzen ein bestehendes regelbasiertes System um neue Regeln. Überprüft wird wenigstens eine Regel, die in Abhängigkeit des aktuellen Wertes eines Signals A den Wertebereich überprüft, in dem ein Signal B liegt.
-
Für regelbasierte IDS für CAN werden statische Regeln aus der CAN-Matrix extrahiert. Solche Regeln können zum Beispiel überprüfen ob Eigenschaften, die man aus der CAN Matrix extrahieren kann, wie „Nachrichten mit ID A werden alle 200 ms gesendet“ oder „Signal x aus ID B liegt zwischen 0 und 100“, erfüllt sind. Diese Regeln sind vom aktuellen Wert anderer Signale unabhängig und werden im Folgenden als „statisch“ bezeichnet.
-
Im Fahrzeug wird der aktuelle Datenstrom des CAN Bus mit dem IDS überprüft, d.h. dass die Regeln, die zuvor aufgestellt wurden, auf Verletzungen wie Schwellwertverletzungen überprüft werden. Im Beispiel: „Signal x hat aktuell den Wert 150, liegt also nicht im Bereich von 0 und 100“.
-
Diese statischen Regeln werden durch neue Regeln ergänzt, die Korrelationen abprüfen. Beispielsweise wird überprüft ob der Wert eines Signals B in einem Bereich liegt, der vom aktuellen Wert eines anderen Signals A abhängt.
-
Um solche Korrelationen zu finden, werden im Beispiel Trainingsdaten, beispielsweise Aufzeichnungen von echtem CAN Traffic auf dem zu überwachenden Kommunikationsnetzwerk 100, ausgewertet. Die Regelgenerierung selbst findet im Beispiel außerhalb des Fahrzeugs statt. Hierzu werden Trainingsdaten aufgezeichnet, die ein Normalverhalten des Kommunikationsnetzwerks 100 wiederspiegeln. Auf diesen Daten werden Korrelationskoeffizienten berechnet und Korrelationsregeln erstellt, die in das regelbasierte System eingespeist werden.
-
Die Korrelationsregeln, die mit Hilfe der im Folgenden beschriebenen Korrelationskoeffizienten und der im Folgenden beschriebenen linearen Korrelationsmethode im Beispiel ebenfalls abhängig von den Trainingsdaten und außerhalb des Fahrzeugs entstehen, ergänzen die statischen Regeln.
-
Im Fahrzeug werden die statischen Regeln und die Korrelationsregeln auf einen laufenden Netzwerkverkehr des Kommunikationsnetzwerks 100 angewandt. Anomalien werden erkannt, wenn statische Regeln oder Korrelationsregeln verletzt werden. Ist eine Korrelationsregel aufgestellt, die Signale von unterschiedlichen Subsystemen beinhaltet, muss diese an einer Stelle im Kommunikationsnetzwerk ausgeführt werden, an der auf beide Subsysteme Zugriff besteht. Diese Stelle ist zum Beispiel ein Gateway, das die beiden Subsysteme verbindet.
-
Die Korrelationsmethode lässt sich in zwei Teilprobleme gliedern, das Auffinden von korrelierten Signalen und das Aufstellen der expliziten Korrelationsregel.
-
Das Auffinden von korrelierten Signalen könnte theoretisch erfolgen, indem per Hand ein Namensabgleich von Signalen gemacht wird. Dies würde allerdings Expertenwissen bedürfen, wäre sehr zeitintensiv und zudem unzuverlässig, da beispielsweise latente Abhängigkeiten ggf. nicht gefunden würden.
-
Demgegenüber werden im Verfahren korrelierte Signale automatisiert auf Basis von Trainingsdaten bestimmt.
-
Zudem wird ein im Folgenden beschriebener linearer Regressionsansatz verwendet, um Korrelationsregeln zu definieren. Hierzu wird eine explizite Formel angegeben, die die funktionale Abhängigkeit zweier korrelierter Signale beschreibt.
-
Des Weiteren werden auf Grund von Trainingsdaten Schwellwerte definiert.
-
Damit ist es möglich ein regelbasiertes System durch Korrelationsregeln zu erweitern, die nicht aus der CAN-Matrix extrahiert werden können.
-
Diese Korrelationsregeln beinhalten funktionale Abhängigkeiten zwischen Signalen. Durch Einführung solcher Korrelationsregeln wird es einem potentiellen Angreifer wesentlich erschwert, das System anzugreifen, da für einen erfolgreichen Angriff der nicht vom IDS entdeckt werden kann, mehr als ein Signalwert geändert werden muss.
-
Im Gegensatz zu den üblicherweise statischen Regeln, sind derartige Korrelationsregeln dynamisch, das heißt, sie hängen vom aktuellen Zustand des Netzwerkes ab.
-
Die Signale werden im Kommunikationsnetzwerk 100 übertragen. Im Beispiel ist das Kommunikationsnetzwerk 100 ein CAN Bus. Im Beispiel wird eine CAN Matrix verwendet, die die statische Abhängigkeit auf dem CAN Bus übertragener Signale nach statischen Regeln definiert.
-
Die statischen Regeln sind im Beispiel für einen CAN-Bus generiert. Falls das Fahrzeug über mehrere Bus-Systeme also Teile 114, 116 des Kommunikationsnetzwerks 100 verfügt, kann eine Regelgenerierung über mehrere Sub-Systeme erfolgen, z.B. wenn das Verfahren auf einem zentralen Gateway im Fahrzeug ausgeführt wird. Dies kann insbesondere für geroutete Signale interessant sein, die auf mehrere Sub-Systemen übertragen werden.
-
In der folgenden Tabelle 1 ist beispielhaft die Struktur eines CAN-Traces dargestellt. Alle Daten sind hierbei artifiziell und sollen nur als Beispiel dienen.
-
Im Beispiel für das CAN-Trace ist zeilenweise von links nach rechts ein Timestamp, bezeichnet mit TS, der CAN Identifier, bezeichnet mit ID, data length code, bezeichnet mit DLC, und der Payload angegeben. Im Payload jeder ID werden Signalwerte übertragen. Welche Signale in welcher ID zu finden sind und welche Bits in welcher Art den zugehörigen Signalwert codieren, kann der CAN Matrix entnommen werden.
Tabelle 1
TS | ID | DLC | Payl oad |
0.0000 | 100 | 8 | 47 | 89 | FE | 8B | 49 | 2A | FF | FF |
0.0008 | 211 | 8 | 7B | 05 | D4 | 32 | CC | F0 | A2 | 13 |
0.0013 | 321 | 8 | 68 | 23 | 00 | 22 | C7 | 81 | 01 | F2 |
0.0015 | 121 | 8 | 4C | 00 | 4F | D2 | 13 | 00 | 00 | 00 |
0.0016 | 211 | 8 | 77 | 46 | 0C | AF | DC | 23 | FF | 00 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
-
Für eine Korrelationsregel werden wenigstens zwei miteinander korrelierte Signale in einer Vielzahl von Signalen, die in einem Kommunikationsnetzwerk übertragen werden, bestimmt.
-
Die wenigstens zwei miteinander korrelierten Signale werden vorzugsweise unabhängig von den Regeln bestimmt.
-
Um funktionale Abhängigkeiten von Signalen zu finden werden im Beispiel mit den Trainingsdaten Korrelationskoeffizienten aller relevanten 2-Tupel von Signalen berechnet. Hierbei können die Signale auf demselben CAN Bus wie auch auf unterschiedlichen CAN Bussen existieren. Da unterschiedliche Signale in unterschiedlichen CAN IDs codiert sind und die CAN IDs weder zur gleichen Zeit noch in der gleichen Häufigkeit gesendet werden müssen, ist es möglich, einen im Folgenden beschriebenen Datenvorverarbeitungsschritt vorzunehmen.
-
Ein Signal B wird als von Signal A abgeleitet bezeichnet, wenn für alle Auftreten von Signal B ein zeitlich direkter Vorgänger von Signal A existiert, so dass die Werte von Signal B stark korreliert mit den Vorgängern von Signal A sind.
-
Um zu untersuchen, ob Signal B von Signal A abgeleitet ist, wird einen Vektor mit Signalwerten von Signal A erstellt, die mit den Zeitstempeln von Signal B korrespondieren, indem der jeweilige zeitlich vorangegangene Zeitstempel von Signal A gewählt wird.
-
Alternativ kann es sinnvoll sein, nicht den direkten Vorgänger zu wählen, sondern größere Zeitsprünge zuzulassen.
-
Die Datenvorverarbeitung dazu ist in 3 schematisch dargestellt. In dem dargestellten Beispiel resultiert die Datenverarbeitung in zwei Vektoren gleicher Länge. Die Vektoren sind im Folgenden mit VA und vB bezeichnet.
-
Alternativ kann im Datenvorverarbeitungsschritt auch eine andere geeignete Methode angesetzt werden, die Signale A und B in Vektoren VA und vB zu transformieren.
-
So ist es beispielsweise denkbar, eine Interpolation einzusetzen.
-
Der Korrelationskoeffizient wird beispielsweise nach Pearson wie folgt berechnet:
wobei n die Länger der Vektoren v
A und v
B ist und
v X den Mittelwert des Vektors v
X für X ∈ {A, B} bezeichnet.
-
Um Signale aufzufinden, die eine lineare funktionale Abhängigkeit aufweisen, können all diejenigen 2-Tupel betrachtet werden, deren Korrelationskoeffizient genau 1 oder -1 ist. Signale, die annähernd linear korreliert sind, können gefunden werden, indem all diejenigen 2-Tupel gewählt werden, deren Korrelationskoeffizient betragsmäßig nahe 1 ist, also im Intervall [-1, -1+δ1] ∪ [1-δ2, 1] für frei wählbare δ1, δ2 > 0. Hier ist dem Anwender die Möglichkeit gegeben zu entscheiden, was relevant für ihn ist.
-
Das bedeutet, dass ein Korrelationskoeffizient für wenigstens zwei der Signale bestimmt wird und überprüft wird, ob der Korrelationskoeffizient größer ist als eine Schwelle für korrelierte Signale.
-
Für korrelierte Signale wird wenigstens eine Korrelationsregel bestimmt.
-
Die Korrelationsregel charakterisiert eine funktionale Abhängigkeit zwischen den wenigstens zwei miteinander korrelierten Signalen. Ein momentaner Zustand des Kommunikationsnetzwerks 100 beeinflusst die Übertragung der Signale. Die Korrelationsregel wird beispielsweise mittels Trainingsdaten abhängig vom Zustand des Kommunikationsnetzwerks 100 bestimmt. Als Trainingsdaten können Übermittlungen von Signalen dienen, die in einem definierten Zustand des Kommunikationsnetzwerks 100 ermittelt werden. Als Trainingsdaten können auch im laufenden Betrieb in unbekanntem Zustand des Kommunikationsnetzwerks übermittelte Signale verwendet werden.
-
Eine Korrelationsregel für ein erstes Signal und ein zweites Signal definiert im Beispiel eine Vorschrift zur Bestimmung eines zu erwartenden Werts für das zweite Signal abhängig von einem Wert für das erste Signal. Vorzugsweise wird eine Vielzahl von Korrelationsregeln für die Vielzahl der Signale bestimmt.
-
Im Beispiel wird die Korrelationsregel wie folgt erstellt:
-
Um für ein 2-Tupel von insbesondere annähernd linear korrelierten Signalen eine Regel aufzustellen, wird ein linearer Regressionsansatz verwendet. Hierzu werden die Parameter β
1 und β
2 geschätzt werden, so dass die Gleichung
bestmöglich gelöst wird. Hierfür wird das folgende Gleichungssystem aufgestellt:
-
Beispielsweise wird auf Basis von Trainingsdaten, für die gefundenen korrelierten Signale das Gleichungssystem als eine lineare Transformationsregel bestimmt.
-
Das Gleichungssystem ist einfach lösbar:
-
Daher gilt:
-
Die Schätzwerte (3) für β
1 und β
2 minimieren den folgenden Approximationsfehler von Gleichung (2):
-
Damit wird eine Korrelationsregel aufgestellt, die überprüft, ob
wobei ε
1, ε
2 ∈ :R
≥0 geeignet gewählt werden.
-
D.h. abhängig von der linearen Transformationsregel wird wenigstens eine Korrelationsregel definiert und/oder konfiguriert.
-
Ist das Signal A mit dem Signal B insbesondere annähernd korreliert, kann die lineare Gleichung (2) als Korrelationsregel dazu verwendet werden, den erwarteten Wert von Signal B zu berechnen und zu überprüfen, ob der tatsächliche Wert in einem Intervall um diesen Wert liegt.
-
Das bedeutet, dass eine Korrelationsregel für ein erstes Signal und ein zweites Signal eine Vorschrift zur Bestimmung eines zu erwartenden Werts für das zweite Signal abhängig von einem Wert für das erste Signal definiert.
-
Die Werte ε1 und ε2 können beispielsweise aus den Trainingsdaten geschätzt werden. Dazu können beispielsweise Konfidenzintervalle oder Extremwerttheorie verwendet werden.
-
Das Verfahren für die regelbasierte Anomalieerkennung beginnt beispielsweise, sobald das Gateway gestartet wird. nach dem Start wird ein Schritt 202 ausgeführt.
-
Im Schritt 202 werden wenigstens zwei Signale im Kommunikationsnetzwerk 100 übertragen.
-
Anschließend wird ein Schritt 204 ausgeführt.
Im Schritt 204 werden wenigstens zwei Signalen in einer Vielzahl von Signalen, die in einem Kommunikationsnetzwerk übertragen werden, erfasst. Im Beispiel werden ein erstes Signal und ein zweites Signal erfasst.
-
Anschließend wird ein Schritt 206 ausgeführt.
-
Im Schritt 206 wird wenigstens eine Korrelationsregel überprüft. Beispielsweise wird die Korrelationsregel für das erste Signal und das zweite Signal überprüft, die im Beispiel die Vorschrift zur Bestimmung des zu erwartenden Werts für das zweite Signal abhängig vom Wert für das erste Signal definiert.
-
Beispielsweise wird für das Signal A, welches mit dem Signal B korreliert ist, die lineare Gleichung (2) als Korrelationsregel dazu verwendet, den erwarteten Wert von Signal B zu berechnen und zu überprüfen, ob der tatsächliche Wert des Signals B in einem Intervall um diesen Wert liegt.
-
Falls die Signale die Korrelationsregel nicht erfüllen, wird eine Anomalie erkannt.
-
Die Anomalieerkennung läuft beispielsweise parallel zur Kommunikation auf dem Kommunikationsnetzwerk 100 mit den Korrelationsregeln ab. Es kann vorgesehen sein, für die Anomalieerkennung zudem wenigsten eine der Regeln zu überprüfen, die die statische Abhängigkeit zwischen den Signalen umfasst.
-
Mit den Regeln und den Korrelationsregeln ist prüfbar, ob eine Anomalie vorliegt oder nicht. Ausgewertet wird im Beispiel ein Datenstrom auf dem CAN-Bus. Vorzugsweise werden sämtliche statische Regeln ausgewertet, indem zum Beispiel überprüft wird, ob bestimmte Werte innerhalb bestimmter Grenzen bleiben. Zum anderen werden die Korrelationsregeln ausgewertet, die zuvor anhand der Trainingsdaten definiert wurden. Die Korrelationsregeln beziehen sich auf die aktuellen Werte bestimmter Signale und überprüfen, ob andere Signale in Abhängigkeit dieser Werte erwartetes Verhalten aufweisen. Diese Korrelationsregeln sind dynamische Regeln.
-
Im Beispiel enthält die Korrelationsregel eine Vorschrift, die eine Korrelation eines ersten Signals und eines zweiten Signals umfasst. Ein zu erwartender Wert für das zweite Signal wird abhängig von der Korrelationsregel bestimmt und mit einem Wert für das zweite Signal verglichen. Eine Anomalie wird beispielsweise erkannt, wenn die Abweichung zwischen dem zu erwartenden Wert und dem Wert größer als ein Schwellwert ist.
-
Anschließend wird der Schritt 202 ausgeführt.
-
Es kann zudem vorgesehen sein, dass die Anomalieerkennung in einem Kraftfahrzeug ausgeführt wird, wobei das Kraftfahrzeug, das in einem ersten Betriebsmodus des Kraftfahrzeugs betrieben wird, bei erkannter Anomalie in einem zweiten, vom ersten Betriebsmodus verschiedenen Betriebsmodus des Kraftahrzeugs betrieben wird. Beispielsweise wird abhängig davon, ob eine Anomalie erkannt wurde oder nicht, eine Rückfallebene des Kraftfahrzeugs angesteuert wird. Damit kann beispielsweise im zweiten Betriebsmodus eine Leistungsbegrenzung eines Motors des Kraftfahrzeugs gegenüber einem Normalbetrieb im ersten Betriebsmodus angesteuert werden.
-
Zur Berechnung von Korrelationskoeffizienten wird im Beispiel die Methode von Pearson angewendet. Ebenso ist es aber möglich, eine der vielen Variationen, wie zum Beispiel einen „gewichteten Korrelationskoeffizienten“ oder einen „skalierten Korrelationskoeffizienten“ anzusetzen oder andere geeignete Methoden, um ein geeignetes Set von 2-Tupeln zu finden. Ebenso ist es theoretisch möglich, Regeln zu finden, die für nicht-lineare Abhängigkeiten geeignet sind. In einem einfachsten Ansatz kann hierzu der Regressionsansatz erweitert werden, indem eine Polynomgleichung höherer Ordnung angesetzt wird.