-
Die Erfindung betrifft ein Verfahren und eine entsprechende Vorrichtung, die darauf ausgelegt sind, eine Nachricht von einer Software (SW) Anwendung, insbesondere von einer Fahrzeug-fremden Anwendung, an eine Fahrzeug-Komponente in sicherer Weise zu bearbeiten.
-
Ein Fahrzeug kann eine Plattform aufweisen, z.B. als Teil des Infotainmentsystems des Fahrzeugs, auf der SW-Anwendungen ausgeführt werden können, die z.B. aus einer Datenbank von SW-Anwendungen auf die Plattform geladen werden können. Die einzelnen SW-Anwendungen können z.B. von SW-Anbietern bereitgestellt werden, die von dem Hersteller des Fahrzeugs unabhängig sind.
-
Eine SW-Anwendung kann darauf ausgelegt sein, den Funktionsumfang des Fahrzeugs zu erhöhen. Zu diesem Zweck kann es für die SW-Anwendung erforderlich sein, mit ein oder mehreren Komponenten des Fahrzeugs zu interagieren. Beispielsweise kann es für die SW-Anwendung erforderlich sein, Daten von ein oder mehreren Sensoren, z.B. von einem Geschwindigkeitssensor, des Fahrzeugs zu erfragen oder zu regeln, wie z.B. bei einer Sitzverstellung.
-
Eine SW-Anwendung könnte von einem böswilligen Anbieter prinzipiell dazu genutzt werden, sich einen unerlaubten Zugriff zu einer Fahrzeug-Komponente zu verschaffen. Das vorliegende Dokument befasst sich mit der technischen Aufgabe, eine sichere Interaktion einer (Fahrzeug-fremden) SW-Anwendung mit einer Fahrzeug-Komponente zu ermöglichen.
-
Die Aufgabe wird durch jeden der unabhängigen Ansprüche gelöst. Vorteilhafte Ausführungsformen werden u.a. in den abhängigen Ansprüchen beschrieben. Es wird darauf hingewiesen, dass zusätzliche Merkmale eines von einem unabhängigen Patentanspruch abhängigen Patentanspruchs ohne die Merkmale des unabhängigen Patentanspruchs oder nur in Kombination mit einer Teilmenge der Merkmale des unabhängigen Patentanspruchs eine eigene und von der Kombination sämtlicher Merkmale des unabhängigen Patentanspruchs unabhängige Erfindung bilden können, die zum Gegenstand eines unabhängigen Anspruchs, einer Teilungsanmeldung oder einer Nachanmeldung gemacht werden kann. Dies gilt in gleicher Weise für in der Beschreibung beschriebene technische Lehren, die eine von den Merkmalen der unabhängigen Patentansprüche unabhängige Erfindung bilden können.
-
Gemäß einem Aspekt wird eine Überprüfungseinheit für ein Kraftfahrzeug beschrieben. Die Überprüfungseinheit kann auf einem Steuergerät des Kraftfahrzeugs bereitgestellt werden. Die Überprüfungseinheit kann darauf ausgelegt sein, es Fremd-SW-Anwendungen zu ermöglichen, eine sichere Interaktion mit ein oder mehreren Fahrzeug-Komponenten des Fahrzeugs durchzuführen, insbesondere um Zusatzfunktionen in dem Fahrzeug bereitzustellen.
-
Die einzelnen Fremd-SW-Anwendungen können auf einer Plattform, insbesondere auf einem Steuergerät, des Fahrzeugs ausgeführt werden. Dabei kann es die Plattform einem Nutzer des Fahrzeugs ermöglichen, unterschiedliche Fremd-SW-Anwendungen von einer Fahrzeug-externen Datenbank (z.B. von einem App-Store) zu laden und auf der Plattform auszuführen. Die einzelnen Fremd-SW-Anwendungen können jeweils ausgebildet sein, durch eine Interaktion mit ein oder mehreren Fahrzeug-Komponenten jeweils eine Zusatzfunktion in dem Fahrzeug bereitzustellen. Des Weiteren können die einzelnen Fremd-SW-Anwendungen jeweils ausgebildet sein, über eine Kommunikationseinheit des Fahrzeugs mit einer Fahrzeug-externen Einheit, insbesondere mit einem Internet-Server, zu kommunizieren.
-
Die ein oder mehreren Fahrzeug-Komponenten können Sensoren und/oder Aktoren des Fahrzeugs sein, die im Fahrzeug zur Bereitstellung von Fahrzeugfunktionen verwendet werden. Durch die Interaktion mit einer Fremd-SW-Anwendung kann eine Zusatzfunktion des Fahrzeugs bereitgestellt werden, die nicht direkt von dem Hersteller des Fahrzeugs (z.B. im Rahmen der Grundausstattung oder im Rahmen einer Sonderausstattung des Fahrzeugs) bereitgestellt wird. Die Fremd-SW-Anwendung kann dabei von einem Anbieter bereitgestellt werden, der ggf. unabhängig von dem Fahrzeug-Hersteller ist.
-
Das Fahrzeug kann ein Sicherheits-Gateway aufweisen, das ausgebildet ist, eine definierte Schnittstelle für die Interaktion zwischen Fremd-SW-Anwendungen und Fahrzeug-Komponenten bereitzustellen. Insbesondere kann es das Sicherheits-Gateway einer Fremd-SW-Anwendung ermöglichen, Daten, z.B. Sensordaten, von einer Fahrzeug-Komponente zu beziehen und/oder Steuer-Anweisungen zur Steuerung einer Fahrzeug-Komponente an die Fahrzeug-Komponente zu senden.
-
Das Sicherheits-Gateway kann insbesondere ausgebildet sein, eine definierte Interaktions-Schnittstelle zwischen unterschiedlichen Fremd-SW-Anwendungen einerseits und Fahrzeug-Komponenten des Fahrzeugs andererseits für eine Interaktion zwischen den Fremd-SW-Anwendungen und den Fahrzeug-Komponenten bereitzustellen. Alternativ oder ergänzend kann das Sicherheits-Gateway eine Schnittstellen-Spezifikation für eine zulässige Syntax von Nachrichten (z.B. von Anfragen für Daten und/oder für Steuer-Anweisungen) von Fremd-SW-Anwendungen aufweisen.
-
Das Sicherheits-Gateway kann somit in einem Fahrzeug (z.B. auf einem Steuergerät des Fahrzeugs) bereitgestellt werden, um eine genau definierte und/oder begrenzte Interaktion (mit einem genau definierten Funktionsumfang) zwischen Fremd-SW-Anwendungen und Fahrzeug-Komponenten festzulegen. So kann bewirkt werden, dass die Funktionssicherheit des Fahrzeugs nicht durch die Ausführung einer Fremd-SW-Anwendung beeinträchtigt wird.
-
Es könnte jedoch theoretisch vorkommen, dass das Sicherheits-Gateway, insbesondere die bereitgestellte Interaktions-Schnittstelle, eine unbeabsichtigte Sicherheitslücke aufweist. Die in diesem Dokument beschriebene Überprüfungseinheit kann dazu verwendet werden, in effizienter und zuverlässiger Weise zu vermeiden, dass eine derartige Sicherheitslücke durch eine Fremd-SW-Anwendung dazu genutzt werden kann, sich einen unkontrollierten Zugang zu einer Fahrzeug-Komponente zu verschaffen.
-
Die Überprüfungseinheit kann eingerichtet sein, eine (erste) Nachricht für eine Interaktion mit einer (ersten) Fahrzeug-Komponente des Fahrzeugs von einer (ersten) Fremd-SW-Anwendung zu empfangen. Die Nachricht kann z.B. eine Daten-Anfrage und/oder eine Steuer-Anweisung für die Fahrzeug-Komponente umfassen.
-
Die Überprüfungseinheit kann ferner eingerichtet sein, eine Bearbeitung der Nachricht durch das Sicherheits-Gateway des Fahrzeugs zu simulieren. Mit anderen Worten, es kann simuliert werden, wie die Nachricht von dem Sicherheits-Gateway bearbeitet werden wird, um die Anfrage und/oder die Steuer-Anweisung für die Fahrzeug-Komponente aus der Nachricht an die Fahrzeug-Komponente weiterzuleiten.
-
Dabei kann die Überprüfungseinheit ausgebildet sein, die Bearbeitung der Nachricht durch das Sicherheits-Gateway des Fahrzeugs zu simulieren, ohne dabei die Nachricht tatsächlich zu bearbeiten bzw. auszuführen. Insbesondere kann die tatsächliche Bearbeitung der Nachricht durch das Sicherheits-Gateway anhand eines Modells des Sicherheits-Gateways simuliert werden.
-
Die Überprüfungseinheit kann insbesondere ausgebildet sein, die Bearbeitung der Nachricht durch das Sicherheits-Gateway anhand des Quellcodes des Sicherheits-Gateways, insbesondere anhand einer Logik-Kompilation des Quellcodes des Sicherheits-Gateways, zu simulieren. Alternativ oder ergänzend kann die Überprüfungseinheit eingerichtet sein, die Bearbeitung der Nachricht durch das Sicherheits-Gateway anhand eines satisfiability modulo theories, kurz, SMT, Solvers zu simulieren. So kann in sicherer und zuverlässiger Weise überprüft werden, ob die tatsächliche Bearbeitung der Nachricht zu einer Sicherheitslücke des Sicherheits-Gateways führen könnte oder führen wird.
-
Die Überprüfungseinheit kann ferner eingerichtet sein, die Bearbeitung der Nachricht durch das Sicherheits-Gateway in Abhängigkeit von einem Ergebnis der Simulation freizugeben oder zu unterbinden. Die Überprüfungseinheit kann insbesondere eingerichtet sein, als Ergebnis der Simulation der Bearbeitung der Nachricht durch das Sicherheits-Gateway zu bestimmen, dass die Nachricht konform zu der Schnittstellen-Spezifikation des Sicherheits-Gateways ist. Die tatsächliche Bearbeitung der Nachricht durch das Sicherheits-Gateway kann dann freigegeben werden, wenn bestimmt wurde, dass die Nachricht konform zu der Spezifikation, insbesondere der der Schnittstellen-Spezifikation, des Sicherheits-Gateways ist. Dabei können Laufzeitfehler während der Verarbeitung ausgeschlossen und/oder eine Verletzung von Sicherheits-Invarianten bezüglich der Funktion (der Fahrzeug-Komponente) vermieden werden. Anderseits kann die tatsächliche Bearbeitung der Nachricht durch das Sicherheits-Gateway unterbunden werden.
-
Durch die Bereitstellung einer zusätzlichen Überprüfungseinheit (zusätzlich zu dem Sicherheits-Gateway) kann somit die Sicherheit von Fremd-SW-Anwendungen in einem Fahrzeug weiter erhöht werden.
-
Die Überprüfungseinheit kann eingerichtet sein, die Nachricht zu signieren (z.B. mit einer Signatur, die spezifisch für die Überprüfungseinheit ist), um anzuzeigen, dass die Nachricht zur Bearbeitung durch das Sicherheits-Gateway freigegen wurde. Die signierte Nachricht kann dann zurück an die Fremd-SW-Anwendung oder direkt an das Sicherheits-Gateway gesendet werden. So können die Freigabe bzw. das Unterbinden der tatsächlichen Bearbeitung der Nachricht durch das Sicherheits-Gateway in besonders effizienter und zuverlässiger Weise bewirkt werden.
-
Gemäß einem weiteren Aspekt wird ein Sicherheits-Gateway für ein Kraftfahrzeug beschrieben. Das Sicherheits-Gateway ist eingerichtet, Nachrichten von unterschiedlichen Fremd-SW-Anwendungen zu bearbeiten, um eine Interaktion der jeweiligen Fremd-SW-Anwendung mit zumindest einer Fahrzeug-Komponente des Fahrzeugs gemäß einer definierten Interaktions-Schnittstelle zu ermöglichen. Des Weiteren kann das Sicherheits-Gateway eingerichtet sein, Nachricht-Information in Bezug auf eine signierte Nachricht zu empfangen, wobei die signierte Nachricht einer signierten Version einer ersten Nachricht von einer ersten Fremd-SW-Anwendung entspricht, und wobei die erste Nachricht auf eine Interaktion der ersten Fremd-SW-Anwendung mit einer ersten Fahrzeug-Komponente gerichtet ist.
-
Das Sicherheits-Gateway kann ferner eingerichtet sein, auf Basis der Nachricht-Information eine Teil-Nachricht für die erste Fahrzeug-Komponente zu ermitteln und an die erste Fahrzeug-Komponente zu senden. Des Weiteren kann das Sicherheits-Gateway eingerichtet sein, in Reaktion auf die Teil-Nachricht eine Rückmeldung von der ersten Fahrzeug-Komponente zu empfangen und basierend darauf eine Rückmeldung auf die erste Nachricht der ersten Fremd-SW-Komponente an die erste Fremd-SW-Anwendung zu senden. Das Sicherheits-Gateway ermöglicht somit eine sichere Bereitstellung von Zusatzfunktion in einem Fahrzeug anhand von Fremd-SW-Anwendungen.
-
Die Nachricht-Information kann direkt die signierte Nachricht umfassen. Das Sicherheits-Gateway kann eingerichtet sein, auf Basis der Signatur der signierten Nachricht zu bestimmen, ob die Überprüfungseinheit des Fahrzeugs die tatsächliche Bearbeitung der ersten Nachricht durch das Sicherheits-Gateway infolge einer Simulation freigegeben hat oder nicht. Des Weiteren kann das Sicherheits-Gateway eingerichtet sein, die erste Nachricht (nur dann) zu bearbeiten, um die Teil-Nachricht für die erste Fahrzeug-Komponente zu ermitteln, wenn bestimmt wurde, dass die Bearbeitung der ersten Nachricht freigegeben wurde. So können Zusatzfunktionen in besonders sichere Weise bereitgestellt werden.
-
Alternativ oder ergänzend kann die Nachricht-Information einen Index auf eine bereits zuvor bearbeitete signierte Nachricht umfassen. Das Sicherheits-Gateway kann in diesem Fall eingerichtet sein, die Teil-Nachricht in besonders effizienter Weise anhand des Indexes aus einem Speicher, insbesondere aus einem Speicher des Fahrzeugs, für bereits bearbeitete signierte Nachrichten auszulesen. Durch die Indexierung von signierten Nachrichten, die bereits zumindest einmal überprüft wurden, kann der Rechenaufwand für die Bereitstellung von Zusatzfunktionen in einem Fahrzeug reduziert werden.
-
Gemäß einem weiteren Aspekt wird ein (Straßen-) Kraftfahrzeug (insbesondere ein Personenkraftwagen oder ein Lastkraftwagen oder ein Bus oder ein Motorrad) beschrieben, das die in diesem Dokument beschriebene Überprüfungseinheit und/oder das in diesem Dokument beschriebene Sicherheits-Gateway umfasst. Des Weiteren umfasst das Fahrzeug typischerweise zumindest eine Fahrzeug-Komponente sowie eine Plattform, auf der zumindest eine Fremd-SW-Anwendung gespeichert ist.
-
Gemäß einem weiteren Aspekt wird ein Verfahren zur Überwachung einer Interaktion zwischen einer Fremd-SW-Anwendung und einer Fahrzeug-Komponente eines Kraftfahrzeugs beschrieben. Das Verfahren umfasst das Empfangen einer Nachricht für eine Interaktion mit der Fahrzeug-Komponente des Fahrzeugs von der Fremd-SW-Anwendung. Des Weiteren umfasst das Verfahren das Simulieren einer Bearbeitung der Nachricht durch ein Sicherheits-Gateway des Fahrzeugs, sowie das Freigeben oder Unterbinden der Bearbeitung der Nachricht durch das Sicherheits-Gateway in Abhängigkeit von dem Ergebnis der Simulation.
-
Gemäß einem weiteren Aspekt wird ein Software (SW) Programm beschrieben. Das SW Programm kann eingerichtet werden, um auf einem Prozessor (z.B. auf einem Steuergerät eines Fahrzeugs) ausgeführt zu werden, und um dadurch das in diesem Dokument beschriebene Verfahren auszuführen.
-
Gemäß einem weiteren Aspekt wird ein Speichermedium beschrieben. Das Speichermedium kann ein SW Programm umfassen, welches eingerichtet ist, um auf einem Prozessor ausgeführt zu werden, und um dadurch das in diesem Dokument beschriebene Verfahren auszuführen.
-
Es ist zu beachten, dass die in diesem Dokument beschriebenen Verfahren, Vorrichtungen und Systeme sowohl alleine, als auch in Kombination mit anderen in diesem Dokument beschriebenen Verfahren, Vorrichtungen und Systemen verwendet werden können. Des Weiteren können jegliche Aspekte der in diesem Dokument beschriebenen Verfahren, Vorrichtungen und Systemen in vielfältiger Weise miteinander kombiniert werden. Insbesondere können die Merkmale der Ansprüche in vielfältiger Weise miteinander kombiniert werden.
-
Im Weiteren wird die Erfindung anhand von Ausführungsbeispielen näher beschrieben. Dabei zeigen
- 1 ein beispielhaftes Fahrzeug mit einem Sicherheits-Gateway;
- 2 ein beispielhaftes System zur Ausführung einer Fremd-SW-Anwendung in einem Fahrzeug;
- 3 ein beispielhaftes Signaldiagramm zur Bearbeitung einer Nachricht einer SW-Anwendung;
- 4a und 4b beispielhafte Signaldiagramme zur Bearbeitung einer im Vorfeld überprüften Nachricht einer SW-Anwendung; und
- 5 ein Ablaufdiagramm eines beispielhaften Verfahrens zur Bearbeitung einer Nachricht von einer Fremd-SW-Anwendung an eine Fahrzeug-Komponente.
-
Wie eingangs dargelegt, befasst sich das vorliegende Dokument mit der Bereitstellung einer sicheren Interaktion zwischen einer Fremd-SW (Software)-Anwendung und zumindest einer Fahrzeug-Komponente. In diesem Zusammenhang zeigt 1 ein beispielhaftes Fahrzeug 100, das eine Plattform 103, z.B. ein Steuergerät, aufweist, auf die eine Fremd-SW-Anwendung aufgespielt werden kann. Beispielsweise kann es einem Nutzer des Fahrzeugs 100 ermöglicht werden, die Fremd-SW-Anwendung über eine (drahtlose) Kommunikationsverbindung von einer Datenbank auf die Plattform 103 zu laden, wobei auf der Datenbank eine Vielzahl von unterschiedlichen Fremd-SW-Anwendungen gespeichert sein können.
-
Eine Fremd-SW-Anwendung, kurz eine SW-Anwendung, kann darauf ausgelegt sein, den Funktionsumfang des Fahrzeugs 100 zu erweitern. Zu diesem Zweck kann es der SW-Anwendung ermöglicht werden, mit ein oder mehreren Fahrzeug-Komponenten 102, insbesondere mit ein oder mehreren Steuergeräten, des Fahrzeugs 100 zu interagieren. Beispielsweise kann es einer SW-Anwendung ermöglicht werden, eine Anfrage für Daten, z.B. für Sensordaten, an eine Fahrzeug-Komponente 102 zu senden. Beispielhafte Fahrzeug-Komponenten 102 sind Fahrzeug-Sensoren, wie z.B. ein Geschwindigkeitssensor, eine intertiale Messeinheit, d.h. eine Inertial Measurement Unit, etc., oder Fahrzeug-Aktoren, wie z.B. ein Klimagerät des Fahrzeugs 100. Die SW-Anwendung kann ausgebildet sein, Nachrichten an ein oder mehrere Fahrzeug-Komponenten 102 zu senden, z.B. um Daten von einer Fahrzeug-Komponente 102 anzufragen oder um eine Steuer-Anweisung für eine bestimmte Aktion an eine Fahrzeug-Komponente 102 zu senden. Beispielsweise kann die SW-Anwendung ausgebildet sein, Sensordaten in Bezug auf das von ein oder mehreren Fahrzeug-Sensoren erfasste Fahrzeugklima zu erfragen und basierend darauf eine Steuer-Anweisung zur Steuerung des Klimageräts an das Klimagerät zu senden.
-
Das Fahrzeug 100 umfasst typischerweise ein Sicherheits-Gateway 101, das ausgebildet ist, eine von einer SW-Anwendung kommende Nachricht auf Sicherheit zu überprüfen. Dabei kann es ggf. vorkommen, dass das Sicherheits-Gateway 101 ein Sicherheitslücke aufweist, die von einem böswilligen Anbieter einer SW-Anwendung ausgenutzt wird, um sich Zugang zu einer Fahrzeug-Komponente 102 zu verschaffen, z.B. über eine drahtlose Kommunikationsverbindung.
-
2 zeigt ein beispielhaftes System 200 zur Verarbeitung einer Nachricht von einer Fremd-SW-Anwendung 201 in einem Fahrzeug 100. Die SW-Anwendung 201 kann auf einer Plattform 103 für SW-Anwendungen gespeichert sein. Das System 200 umfasst eine Überprüfungseinheit 202, die ausgebildet ist, eine von der SW-Anwendung 201 empfangene Nachricht 221 daraufhin zu überprüfen, welche Auswirkungen die Nachricht 221 auf das Sicherheits-Gateway 101 des Fahrzeugs 100 bewirkt. Insbesondere kann die Überprüfungseinheit 202 ausgebildet sein, die Ausführung bzw. die Bearbeitung der Nachricht 221 auf dem Sicherheits-Gateway 101 zu modellieren bzw. zu simulieren, ohne dass dazu die Nachricht 221, d.h. die in der Nachricht 221 enthaltenen ein oder mehreren Anweisungen, tatsächlich ausgeführt werden müssen. Zu diesem Zweck kann ein Modell 206 des Sicherheits-Gateways 101 verwendet werden, wobei das Modell 206 z.B. auf einem Simulationsmodul 205 der Überprüfungseinheit 202 ausgeführt wird.
-
Wenn die Simulation der Ausführung bzw. der Bearbeitung der Nachricht 221 kein (sicherheitsrelevantes) Fehlverhalten des Sicherheits-Gateways 101 angezeigt hat, so kann die Nachricht 221 von der Überprüfungseinheit 202 signiert werden, und somit als signierte Nachricht 222 bereitgestellt werden. Die von der Überprüfungseinheit 202 signierte Nachricht 222 zeigt dabei dem Sicherheits-Gateway 101 an, dass die Nachricht 222 sicher von dem Sicherheits-Gateway 101 ausgeführt bzw. bearbeitet werden kann. Die signierte Nachricht 222 kann indirekt über die Fremd-SW-Anwendung 201 oder direkt an das Sicherheits-Gateway 101 gesendet werden.
-
Das Sicherheits-Gateway 101 kann ausgebildet sein, die Signatur der signierten Nachricht 222 zu überprüfen (in Modul 207). Nach erfolgreicher Überprüfung der Signatur kann die (ursprüngliche) Nachricht 221 von dem Sicherheits-Gateway 101 analysiert und/oder ausgeführt werden (in Modul 209), und es kann eine Teil-Nachricht für eine bestimmte Fahrzeug-Komponente 102 generiert werden (in dem Konverter-Modul 210). Ferner kann die Teil-Nachricht 223 für die Fahrzeug-Komponente 102 an die Fahrzeug-Komponente 102 gesendet werden (von einem Modul 208), und es kann eine Rückmeldung 224 von der Fahrzeug-Komponente 102 empfangen und ggf. konvertiert werden (von einem Modul 211). Die ggf. konvertierte Rückmeldung 225 kann dann an die SW-Anwendung 201 gesendet werden.
-
3 zeigt ein beispielhaftes Signaldiagramm 300 mit Verfahrensschritten, die durch die unterschiedlichen Komponenten 201, 202, 101, 102 des Systems 200 im Rahmen der Bearbeitung einer Nachricht 221 von einer SW-Anwendung 201 ausgeführt werden. Dabei können die unterschiedlichen Komponenten 201, 202, 101, 102 jeweils zumindest einen dedizierten Prozessor 321 aufweisen. In Schritt 301 wird von der SW-Anwendung eine Nachricht 221 an die Überprüfungseinheit 202 gesendet. Die Überprüfungseinheit 202 überprüft daraufhin die Nachricht 221 auf etwaige Verletzungen der Spezifikation des Sicherheits-Gateways 101 (Schritt 302). Zu diesem Zweck kann ein Modell 206 des Sicherheits-Gateways 101 verwendet werden. Nach erfolgreicher Simulation der Nachricht 221 kann die signierte Nachricht 221 generiert und an die SW-Anwendung 201 gesendet werden (Schritt 303).
-
Die SW-Anwendung 201 kann die signierte Nachricht 222 an das Sicherheits-Gateway 101 senden (Schritt 304). Das Sicherheits-Gateway 101 überprüft die Signatur (Schritt 305), und analysiert die Nachricht 221 bzw. führt die Nachricht 221 aus (Schritt 305). Ferner kann aus der Nachricht 221 eine Teil-Nachricht 223 für eine Fahrzeug-Komponente 102 generiert werden (Schritt 307) und an die Fahrzeug-Komponente 102 gesendet werden (Schritt 308).
-
Die Fahrzeug-Komponente 102 kann die Teil-Nachricht 223 analysieren und/oder ausführen (Schritt 309), und eine Rückmeldung 224 auf die Teil-Nachricht 223 generieren und an das Sicherheits-Gateway 101 senden (Schritt 310). Die Rückmeldung 224 kann von dem Sicherheits-Gateway 101 ggf. konvertiert (Schritt 312) und als konvertierte Rückmeldung 225 an die SW-Anwendung 201 gesendet werden (Schritt 313), wo die Rückmeldung 225 von der SW-Anwendung 201 empfangen wird (Schritt 314).
-
Zur Reduzierung des Rechenaufwands der Überprüfungseinheit 202 und/oder zur Reduzierung des Zeitverzugs bei der Bearbeitung einer Nachricht 221 kann das System 200 ausgebildet sein, sich wiederholende Nachrichten 221 zwischenzuspeichern, insbesondere zu cachen. Insbesondere kann es der SW-Anwendung 201 ermöglicht werden (wie beispielhaft in dem Signaldiagramm 410 aus 4a dargestellt), ein zuvor signierte Nachricht 222 erneut an das Sicherheits-Gateway 101 zu senden, ohne dass eine erneute Überprüfung durch die Überprüfungseinheit 202 erforderlich ist.
-
4b zeigt ein Signaldiagramm 420, bei dem eine zuvor signierte Nachricht 222 der SW-Anwendung 201 in einem Speicher (nicht dargestellt) des Systems 200 gespeichert wird, und mittels eines Indexes bei Bedarf ausgelesen werden kann. Die SW-Anwendung 201 kann eingerichtet sein, statt der Nachricht 221, 222 den Index auf die signierte Nachricht 222 an das Sicherheits-Gateway 101 zu senden (Schritt 421). Anhand des Indexes kann dann direkt die Teil-Nachricht 223 für die Fahrzeug-Komponente 102 ermittelt, insbesondere aus dem Speicher ausgelesen, werden (Schritt 422). Die Teil-Nachricht 223 kann dann an die Fahrzeug-Komponente 102 gesendet werden (Schritt 308). So kann der Rechenaufwand für die Überprüfungseinheit 202 und/oder für das Sicherheits-Gateway 101 reduziert werden.
-
Wie weiter oben dargelegt, kann die Überprüfung einer Nachricht 221 anhand eines Modells 206 des Software-Gateways 101 durchgeführt werden. Zu diesem Zweck kann z.B. der Quellcode des Software-Gateways 101 in Logik kompiliert werden und ggf. durch einen SMT (satisfiability modulo theories)-Solver verwendet werden. Alternativ oder ergänzend kann eine symbolische Ausführung des Quercodes des Software-Gateways 101 durchgeführt werden. So kann in effizienter und zuverlässiger Weise überprüft werden, ob eine Nachricht 221 ein Sicherheitsproblem des Software-Gateways 101 verursachen könnte bzw. verursachen wird.
-
5 zeigt ein Ablaufdiagramm eines beispielhaften (ggf. Computerimplementierten) Verfahrens 500 zur Überwachung der Interaktion zwischen einer Fremd-SW-Anwendung 201 und einer Fahrzeug-Komponente 102 eines Fahrzeugs 100. Die Fahrzeug-Komponente 102 kann z.B. einen Sensor oder einen Aktor umfassen, der an der Bereitstellung einer inhärenten Fahrzeugfunktion des Fahrzeugs 100 mitwirkt.
-
Das Verfahren 500 umfasst das Empfangen 501 einer Nachricht 221 für eine Interaktion mit der Fahrzeug-Komponente 102 des Fahrzeugs 100 von der Fremd-SW-Anwendung 201. Die Nachricht 221 kann z.B. eine Anfrage zur Bereitstellung von Daten durch die Fahrzeug-Komponente 102 umfassen. Alternativ oder ergänzend kann die Nachricht 221 eine Steuer-Anweisung zur Steuerung der Fahrzeug-Komponente 102 umfassen.
-
Das Verfahren 500 umfasst ferner das Simulieren 502 einer Bearbeitung der Nachricht 221 durch ein Sicherheits-Gateway 101 des Fahrzeugs 100. Mit anderen Worten, es kann simuliert werden, wie die Nachricht 221 durch das Sicherheits-Gateway 101 bearbeitet werden wird, wenn die Nachricht 221 an das Sicherheits-Gateway 101 weitergeleitet wird. Dabei kann insbesondere im Rahmen einer Simulation überprüft werden, ob die Nachricht 221 durch das Sicherheits-Gateway 101 bearbeitet werden kann, ohne, dass dabei eine mögliche Sicherheitslücke des Sicherheits-Gateways 101 ausgenutzt wird und/oder ohne, dass dabei die von dem Sicherheits-Gateway 101 bewirkte Zugangsbeschränkung zu den ein oder mehreren Fahrzeug-Komponenten 102 des Fahrzeugs 100 umgangen oder zumindest teilweise aufgehoben wird.
-
Des Weiteren umfasst das Verfahren 500 das Freigeben oder das Unterbinden 503 der Bearbeitung der Nachricht 221 durch das Sicherheits-Gateway 101 in Abhängigkeit von dem Ergebnis der Simulation. Beispielsweise kann die Nachricht 221 signiert werden, um anzuzeigen, dass die Nachricht 221 zur Bearbeitung freigegeben wurde.
-
Durch die in diesem Dokument beschriebenen Maßnahmen kann die Sicherheit der Ausführung von Fremd-SW-Anwendungen auf einer Fahrzeug-Plattform 103 in effizienter und zuverlässiger Weise erhöht werden.
-
Die vorliegende Erfindung ist nicht auf die gezeigten Ausführungsbeispiele beschränkt. Insbesondere ist zu beachten, dass die Beschreibung und die Figuren nur beispielhaft das Prinzip der vorgeschlagenen Verfahren, Vorrichtungen und Systeme veranschaulichen sollen.