-
Die Erfindung betrifft ein Verfahren zum Verarbeiten von Fahrzeug-zu-X-Nachrichten in einem Verarbeitungsmodul sowie ein Verfahren zum Verarbeiten von Fahrzeug-zu-X-Nachrichten in einem Steuerungsmodul.
-
Fahrzeug-zu-X-Kommunikation, auch als Car-to-X-Kommunikation oder kurz C2X- bzw. V2X-Kommunikation bezeichnet, ist Stand der Forschung bzw. Vorentwicklung und befindet sich zurzeit in der Standardisierung. Insbesondere kann diese auf dem Standard IEEE 802.11p basieren.
-
Da es sich bei dieser Kommunikationum eine für den Straßenverkehr sehr kritische Kommunikation handelt ist typischerweise eine Absicherung gegen Manipulationen erforderlich. Hierfür kann insbesondere ein Verfahren eingesetzt werden, bei dem die Kommunikation mit Hilfe kryptografischer Prüf-summen verifizierbar gemacht wird. Typischerweise basieren diese Prüfsummen auf asymmetrischen kryptographischen Verfahren, beispielsweise ECDSA. Als Basis für diese Verifikation sind alle zugelassenen Fahrzeuge mit den von ihnen verwendeten öffentlichen Schlüsseln über eine zentrale Infrastruktur registriert, welche auch als Public Key Infrastructure (PKI) bezeichnet werden kann.
-
Wie sich gezeigt hat, erfordert die Verifizierung aller hereinkommenden bzw. von einem Fahrzeug empfangenen Nachrichten sehr viel Rechenleistung, was entsprechende Lösungen verteuert. Anstelle dieses sogenannten „Verify-All“-Ansatzes wurde deshalb bereits der sogenannte „Verification-on-Demand“-Ansatz entwickelt, bei welchem nur diejenigen Nachrichten geprüft werden, die von Anwendungen für wichtig erachtet werden oder durch einen anderen Algorithmus als wichtig eingestuft werden. Damit spart ein „Verification-on-Demand“-Ansatz eine erhebliche Menge an Rechenleistung im Vergleich zu einem „Verify-All“-Ansatz.
-
Typischerweise wird versucht, baulich jene Elemente zusammenzufassen, die für die Fahrzeug-zu-X-Kommunikation unbedingt notwendig sind bzw. wo sich die Fahrzeug-zu-X-Kommunikation von anderen im Fahrzeug bereits vorhandenen Lösungen unterscheidet. Das sind vor allem ein Transceiver sowie eine Security-Unterstützung. Die Anwendungen können jedoch teilweise auf bereits vorhandenen Steuergeräten untergebracht werden.
-
Eine solche aufgelöste Bauweise sorgt jedoch für Schwierigkeiten bei dem „Verification-on-Demand“-Ansatz, da die Entscheidung, ob eine Botschaft wichtig ist, in einem Steuergerät getroffen wird, wo die Implementierung der Sicherheitslösungen bzw. Security fehlt, da diese im Gerät untergebracht sind, welches für die Fahrzeug-zu-X-Kommunikation spezifisch ist.
-
Es ist deshalb eine Aufgabe der Erfindung, Maßnahmen vorzuschlagen, welche insbesondere eine Implementierung von Sicherheitslösungen bei der Fahrzeug-zu-X-Kommunikation erleichtern.
-
Dies wird erfindungsgemäß durch ein Verfahren nach Anspruch 1 sowie durch ein Verfahren nach Anspruch 10 erreicht. Vorteilhafte Ausgestaltungen können beispielsweise den jeweiligen Unteransprüchen entnommen werden. Der Inhalt der Ansprüche wird durch ausdrückliche Inbezugnahme zum Inhalt der Beschreibung gemacht.
-
Die Erfindung betrifft ein Verfahren zum Verarbeiten von Fahrzeug-zu-X-Nachrichten in einem Verarbeitungsmodul. Ein solches Verarbeitungsmodul ist typischerweise ein Modul, bei welchem eingehende bzw. empfangene Fahrzeug-zu-X-Nachrichten zuerst bzw. in einem sehr frühen Stadium der Verarbeitung innerhalb eines Fahrzeugs vorliegen. Insbesondere ist es bei einem Empfang von Fahrzeug-zu-X-Nachrichten typischerweise dem weiter unten beschriebenen Steuerungsmodul vorgeschaltet.
-
Das Verfahren weist folgende Schritte auf:
- – Empfangen einer Anzahl von Fahrzeug-zu-X-Nachrichten,
- – Speichern der Fahrzeug-zu-X-Nachrichten in einem Pufferspeicher,
- – Weiterleiten der Fahrzeug-zu-X-Nachrichten an zumindest ein Steuerungsmodul,
- – Empfangen einer Überprüfungsanforderung von dem Steuerungsmodul für zumindest eine der Fahrzeug-zu-X-Nachrichten, und ansprechend darauf Durchführen einer Verifizierung dieser Fahrzeug-zu-X-Nachricht und Senden eines Ergebnisses der Verifizierung an das Steuerungsmodul.
-
Mittels des erfindungsgemäßen Verfahrens ist es möglich, nur diejenigen Fahrzeug-zu-X-Nachrichten zu verifizieren, für welche dies bei einem Steuerungsmodul auch tatsächlich als notwendig erachtet wird. Ein Steuerungsmodul ist dabei typischerweise ein Modul, welches eine Anwendung ausführt, in welcher Fahrzeug-zu-X-Nachrichten verarbeitet werden.
-
Durch das Speichern der Fahrzeug-zu-X-Nachrichten in dem Pufferspeicher ist es dabei nicht mehr nötig, die zu verifizierende Fahrzeug-zu-X-Nachricht von dem Steuerungsmodul an das Verarbeitungsmodul zurückzuschicken, sondern es genügt die Übermittlung von wesentlich kürzeren Informationen, welche zur Identifizierung der gespeicherten Nachricht ausreichen.
-
Es sei verstanden, dass sowohl beim Speichern einer Fahrzeug-zu-X-Nachricht wie auch beim Weiterleiten einer Fahrzeug-zu-X-Nachricht die jeweilige Fahrzeug-zu-X-Nachricht sowohl vollständig gespeichert bzw. weitergeleitet werden kann wie auch nur teilweise gespeichert bzw. weitergeleitet werden kann. Darauf wird weiter unten näher eingegangen werden.
-
Gemäß einer bevorzugten Ausführung weist das Verfahren ferner folgenden Schritt auf:
- – Durchführen einer Vorverarbeitung der Fahrzeug-zu-X-Nachrichten,
- – wobei abhängig von der Vorverarbeitung nur ein Teil der Fahrzeug-zu-X-Nachrichten gespeichert und/oder gesendet wird.
-
Damit kann die Anzahl der überhaupt zu verarbeitenden, beispielsweise zu speichernden bzw. zu sendenden Fahrzeug-zu-X-Nachrichten typischerweise deutlich reduziert werden, da im Rahmen einer Vorverarbeitung Nachrichten aussortiert werden, welche für das jeweilige Fahrzeug nicht wichtig sind.
-
Gemäß einer bevorzugten Ausführung werden die Fahrzeug-zu-X-Nachrichten ohne jeweilige abzutrennende Bestandteile, insbesondere Sicherheitsteile, weitergeleitet. Damit kann der Datenverkehr weiter reduziert werden, da nur diejenigen Teile einer jeweiligen Fahrzeug-zu-X-Nachricht an das Steuerungsmodul weitergeleitet werden, welche für das Steuerungsmodul auch relevant sind. Sicherheitsteile, welche lediglich für die Verifizierung erforderlich sind, können dabei typischerweise von der Weiterleitung ausgeschlossen werden.
-
Gemäß einer Weiterbildung weist das Verfahren ferner folgende Schritte auf:
- – Erkennen einer niedrigen Systemlast des Verarbeitungsmoduls, und ansprechend darauf
- – Durchführen einer Verifizierung von gespeicherten Fahrzeug-zu-X-Nachrichten.
-
Dies ermöglicht die Ausnutzung von Phasen niedriger Systemlast des Verarbeitungsmoduls, wenn also das Verarbeitungsmodul beispielsweise nicht gerade mit der Durchführung anderer Aufgaben beschäftigt ist. Beispielsweise kann für die Systemlast ein Wert einer Prozessorauslastung herangezogen werden. Es kann beispielsweise vorgesehen sein, dass diese Verifizierung, welche ansprechend auf die niedrige Systemlast erfolgen soll, ausgelöst wird, wenn die Systemlast, also beispielsweise eine Prozessorauslastung, einen bestimmten Schwellenwert unterschreitet oder einen bestimmten Schwellenwert für eine vorgegebene Zeit unterschreitet.
-
Gemäß einer bevorzugten Ausführung weist das Verfahren ferner folgenden Schritt auf:
- – Empfangen einer Anzahl von Priorisierungsinformationen für die gespeicherten Fahrzeug-zu-X-Nachrichten,
- – wobei bei der Verifizierung ansprechend auf niedrige Systemlast eine Reihenfolge zu verifizierender Fahrzeug-zu-X-Nachrichten basierend auf den Priorisierungsinformationen festgelegt wird.
-
Dies ermöglicht eine Priorisierung der gespeicherten Fahrzeug-zu-X-Nachrichten basierend auf Vorgaben insbesondere von Steuerungsmodulen, so dass diejenigen Nachrichten zuerst verifiziert werden, welche für die Anwendungen am wichtigsten sind.
-
Es sei verstanden, dass eine Priorisierung von Nachrichten auch als eigenständiger Erfindungsaspekt betrachtet werden kann, welcher unabhängig von der Aufteilung in Verarbeitungsmodul und Steuerungsmodul realisiert werden kann. Die Priorisierung kann insbesondere dazu verwendet werden, eine Reihenfolge festzulegen, in welcher Nachrichten verifiziert werden, beispielsweise ohne spezifische Anforderung hierzu und/oder bei niedriger Systemlast.
-
Gemäß einer bevorzugten Ausführung wird beim Empfang einer Überprüfungsanforderung für eine bereits verifizierte Nachricht ein Ergebnis dieser Verifizierung an das Steuerungsmodul gesendet. Damit kann auf eine Verifizierung zurückgegriffen werden, welche bereits in einer Phase niedriger Systemlast durchgeführt wurde, und es kann eine erneute Verifizierung mit entsprechender Zeitverzögerung vermieden werden. Auch damit kann eine bessere Auslastung der Rechenkapazität des Verarbeitungsmoduls erreicht werden.
-
Bevorzugt wird für jede im Pufferspeicher gespeicherte Nachricht eine Kennung zur Identifizierung der Fahrzeug-zu-X-Nachricht abgespeichert. Eine jeweilige Überprüfungsanforderung enthält dabei typischerweise eine jeweilige Kennung der zu verifizierenden Fahrzeug-zu-X-Nachricht. Dies kann den Datenverkehr zwischen Verarbeitungsmodul und Steuerungsmodul deutlich verringern, insbesondere im Vergleich zu einer vollständigen Übermittlung der Nachricht.
-
Als Kennung einer jeweiligen Fahrzeug-zu-X-Nachricht kann insbesondere ein Bestandteil der Fahrzeug-zu-X-Nachricht verwendet werden. Dabei kann auf Kennungen bzw. Bestandteile zurückgegriffen werden, welche typischerweise ohnehin zur Identifizierung in Fahrzeug-zu-X-Nachrichten enthalten sind. Es kann jedoch auch eine separate Kennung erzeugt und entsprechend verwendet werden.
-
Gemäß einer bevorzugten Ausführung weist das Verfahren ferner folgenden Schritt auf:
- – Ansprechend auf das Durchführen einer Verifizierung für eine Fahrzeug-zu-X-Nachricht Entfernen der Fahrzeug-zu-X-Nachricht aus dem Pufferspeicher.
-
Damit kann Platz im Pufferspeicher freigegeben werden, insbesondere für solche Fahrzeug-zu-X-Nachrichten, welche bereits verifiziert sind und für welche somit ein weiteres Speichern typischerweise nicht mehr notwendig ist. Insbesondere können bereits weitergeleitete Fahrzeug-zu-X-Nachrichten entfernt werden. Es können auch beispielsweise lediglich eine Kennung und das Ergebnis der Verifizierung weiter gespeichert bleiben, wenn die jeweilige Nachricht entfernt wird.
-
Gemäß einer Weiterbildung weist das Verfahren ferner folgenden Schritt auf:
- – Ansprechend auf das Durchführen einer Verifizierung sofortiges Versenden eines Ergebnisses der Verifizierung an das Steuerungsmodul.
-
Dies erlaubt eine weitere Verringerung der notwendigen Schritte, falls das Steuerungsmodul eine Nachricht als notwendig einstuft, die bereits verifiziert wurde. In diesem Fall kann das Senden der Überprüfungsanforderung an das Verarbeitungsmodul entfallen, da das benötigte Ergebnis bereits im Steuerungsmodul vorliegt.
-
Es sei verstanden, dass die vorgenannten Schritte (insbesondere Zwischenspeicherung von Ergebnissen der Verifizierung im Verarbeitungsmodul, sowie sofortiges Senden von Verifikationsergebnissen) sowohl jeweils einzeln, als auch kombiniert implementiert werden können.
-
Die Erfindung betrifft des Weiteren ein Verfahren zum Verarbeiten von Fahrzeug-zu-X-Nachrichten in einem Steuerungsmodul, welches folgende Schritte aufweist:
- – Empfangen einer Anzahl von Fahrzeug-zu-X-Nachrichten von einem Verarbeitungsmodul,
- – Ermitteln für jede der Fahrzeug-zu-X-Nachrichten, ob die jeweilige Fahrzeug-zu-X-Nachricht verifiziert werden soll und ansprechend darauf, dass eine jeweilige Fahrzeug-zu-X-Nachricht verifiziert werden soll, Senden einer Überprüfungsanforderung für diese Fahrzeug-zu-X-Nachricht an das Verarbeitungsmodul.
-
Dieses Verfahren bildet insbesondere das entsprechende Gegenstück des eingangs erwähnten Verfahrens nunmehr bei einem Steuerungsmodul. Bei einem Steuerungsmodul handelt es sich, wie eingangs bereits erwähnt, typischerweise um ein Modul, in welchem Anwendungen ausgeführt werden, welche Fahrzeug-zu-X-Nachrichten verwenden. Beispielsweise kann es sich dabei um eine Funktion zum autonomen Fahren oder um eine Funktion zur Verhinderung von Kollisionen handeln.
-
Gemäß einer Ausführung weist das Verfahren folgenden Schritt auf:
- – Ermittlung der Priorisierungsinformationen basierend auf Fahrzeug-zu-X-Teilnehmern.
-
Gemäß einer Ausführung weist das Verfahren folgenden Schritt auf:
- – Senden einer Überprüfungsanforderung basierend auf Fahrzeug-zu-X-Teilnehmern an das Verarbeitungsmodul
-
Diese Schritte unterstützten insbesondere die Tatsache, dass in der Fahrzeug-zu-X-Kommunikation verwendete Algorithmen typischerweise auf Objekten rechnen, welche Fahrzeug-zu-X-Nachrichten versenden. Ein solches Objekt kann beispielsweise ein anderes Fahrzeug in der Umgebung oder ein sonstiger Fahrzeug-zu-X-Teilnehmer sein. Fahrzeug-zu-X-Nachrichten beinhalten typischerweise eine Identifikationsinformation, anhand derer Fahrzeug-zu-X-Nachrichten den jeweiligen Fahrzeug-zu-X-Teilnehmern zugeordnet werden können.
-
Indem das Steuerungsmodul nun sein Feedback an das Verarbeitungsmodul anhand dieser Objektidentifikationen aufbaut, kann die Kommunikation zwischen Steuerungsmodul und Verarbeitungsmodul weiter optimiert werden, weil eine einzige Priorisierungsinformation potentiell für mehrere Fahrzeug-zu-X-Nachrichten angewendet werden kann. Zusätzlich kann das Verarbeitungsmodul eine solche Priorisierungsinformation automatisch für alle weiteren Fahrzeug-zu-X-Nachrichten übernehmen, welche vom selben Fahrzeug-zu-X-Teilnehmer empfangen werden, ohne dass eine zusätzliche Aktualisierung durch das Steuerungsmodul notwendig ist.
-
Durch einen Austausch von Priorisierungsinformation und Überprüfungsanforderungen basierend auf einer Identifikation der Fahrzeug-zu-X-Teilnehmer, welche alle zugehörigen Fahrzeug-zu-X-Nachrichten (auch bisher noch nicht empfangene) identifiziert, kann eine besondere Vereinfachung erzielt werden.
-
Ein Steuerungsmodul kann nunmehr selbst entscheiden, bei welchen Nachrichten aufgrund der Kritikalität eine Verifizierung angezeigt ist und entsprechend durch Senden einer Überprüfungsanforderung für diese Fahrzeug-zu-X-Nachricht eine Verifizierung auslösen.
-
Gemäß einer bevorzugten Ausführung weist das Verfahren ferner folgenden Schritt auf:
- – Durchführen einer Decodierung, insbesondere einer ASN.1-Decodierung, für die Fahrzeug-zu-X-Nachrichten.
-
Es sei erwähnt, dass dieser Schritt insbesondere vorteilhaft in dem Steuerungsmodul und nicht in dem Verifizierungsmodul durchgeführt wird, da er für die Verifizierung typischerweise nicht notwendig ist. Vorteilhaft wird also ein Schritt einer Decodierung, insbesondere einer ASN.1-Decodierung, für die Fahrzeug-zu-X-Nachrichten im Verarbeitungsmodul nicht durchgeführt. Es sei jedoch verstanden, dass es grundsätzlich auch möglich ist, im Verarbeitungsmodul einen solchen Schritt einer Decodierung durchzuführen.
-
Gemäß einer bevorzugten Ausführung weist das Verfahren ferner folgenden Schritt auf:
- – Empfangen jeweiliger Ergebnisse der Verifizierung für die Fahrzeug-zu-X-Nachrichten.
-
Dadurch erhält das Steuerungsmodul ein Ergebnis der Verifizierung, kann sich also bei einem positiven Ergebnis insbesondere sicher sein, dass es sich um eine gültige Nachricht handelt, bzw. kann sich bei einem negativen Ergebnis nicht mehr auf die jeweilige Nachricht verlassen.
-
Gemäß einer bevorzugten Ausführung weist das Verfahren ferner folgenden Schritt auf:
- – Ermitteln und Senden jeweiliger Priorisierungsinformationen für die Fahrzeug-zu-X-Nachrichten an das Verarbeitungsmodul.
-
Diese Priorisierungsinformationen können insbesondere auf internen Berechnungen oder sonstigen Algorithmen basieren, welche eine Relevanz einer jeweiligen Fahrzeug-zu-X-Nachricht für das Steuerungsmodul ermitteln. Es kann sich auch um eine Relevanz bestimmter Gruppen oder Typen von Fahrzeug-zu-X-Nachrichten handeln. Damit kann das Verarbeitungsmodul darin unterstützt werden, Nachrichten auszuwählen, welche bei einer Verifizierung ansprechend auf eine niedrige Systemauslastung oder auch sonst zuerst verifiziert werden bzw. um eine entsprechende Reihenfolge festzulegen. Dies ermöglicht es, die besonders relevanten Nachrichten zuerst zu verifizieren, so dass diese mit höherer Wahrscheinlichkeit bereits verifiziert sind, wenn eine Verifizierung erforderlich ist.
-
Bevorzugt enthält jede Überprüfungsanforderung eine jeweilige Kennung der zu verifizierenden Nachricht. Damit kann die jeweilige Nachricht eindeutig identifiziert werden. Auf ein vollständiges Senden der jeweiligen Nachricht oder auf das Senden eines wesentlichen Teils davon kann vorteilhaft verzichtet werden.
-
Die Erfindung betrifft des Weiteren ein Verfahren zum Verarbeiten von Fahrzeug-zu-X-Nachrichten in einem Verarbeitungsmodul und einem Steuerungsmodul, wobei das Verarbeitungsmodul ein Verfahren wie weiter oben mit Bezug auf ein in einem Verarbeitungsmodul auszuführendes Verfahren beschrieben ausführt, und wobei das Steuerungsmodul ein Verfahren wie weiter oben mit Bezug auf ein in einem Steuerungsmodul auszuführendes Verfahren beschrieben ausführt. Hinsichtlich der jeweiligen Verfahren in einem Verarbeitungsmodul bzw. in einem Steuerungsmodul kann dabei auf alle beschriebenen Ausführungen und Varianten zurückgegriffen werden. Damit kann insbesondere ein besonders gutes Zusammenspiel von Verarbeitungsmodul und Steuerungsmodul erreicht werden. Es sei verstanden, dass von einem Verarbeitungsmodul aus typischerweise mehrere Steuerungsmodule mit Fahrzeug-zu-X-Nachrichten versorgt werden können. Das hier beschriebene Verfahren ist also entsprechend erweiterbar auf mehrere Steuerungsmodule oder auch auf mehrere Verarbeitungsmodule, welche hier entsprechend zusammenarbeiten können.
-
Die Erfindung betrifft des Weiteren ein Verarbeitungsmodul, welches dazu konfiguriert ist, ein Verfahren wie weiter oben mit Bezug auf ein in einem Verarbeitungsmodul auszuführendes Verfahren beschrieben auszuführen. Die Erfindung betrifft des Weiteren ein Steuerungsmodul, welches dazu konfiguriert ist, ein Verfahren wie weiter oben mit Bezug auf ein in einem Steuerungsmodul auszuführendes Verfahren beschrieben auszuführen. Hinsichtlich der jeweiligen Verfahren kann auf alle hierin beschriebenen Ausführungen und Varianten zurückgegriffen werden.
-
Die Erfindung betrifft des Weiteren ein nichtflüchtiges computerlesbares Speichermedium, welches Programmcode enthält, bei dessen Ausführung durch einen Prozessor ein erfindungsgemäßes Verfahren ausgeführt wird. Dabei kann auf alle hierin beschriebenen Ausführungen und Varianten zurückgegriffen werden.
-
Allgemein sei erwähnt, dass die Erfindung beispielsweise in einer Systemaufteilung gesehen werden kann. Fahrzeug-zu-X-Nachrichten werden dabei beispielsweise von einem Verarbeitungsmodul an ein Steuerungsmodul weitergegeben. Gleichzeitig kann das Verarbeitungsmodul die Nachrichten temporär in einem Pufferspeicher speichern. Benötigt das Steuerungsmodul die Verifikation einer Nachricht, so muss es nicht wie bei bisherigen Systemen die gesamte Botschaft zur Verifikation zurück an das Verarbeitungsmodul senden, sondern nur eine Identifikation bzw. ID der Nachricht. Das Verarbeitungsmodul kann die zu prüfende Nachricht anhand der ID im Pufferspeicher finden, in einer Security-Einheit prüfen und dann das Ergebnis der Prüfung zurück an das Steuerungsmodul schicken. Die Nachrichten werden dabei im Pufferspeicher immer in Originalform gespeichert, um eine Prüfung zu ermöglichen.
-
Für die Übertragung der Nachrichten zwischen den beiden Modulen kann der Security-Teil von der Nachricht abgeschnitten werden, da das Steuerungsmodul hierfür sowieso keine Verwendung hat. Dadurch wird erheblich Bandbreite für die Kommunikation zwischen den beiden Modulen gespart.
-
Als Identifikation bzw. ID kann dabei direkt eine ID der empfangenen Nachricht verwendet werden, was den Aufwand für doppelte Buchhaltung verringert. Es kann jedoch auch eine neue ID verwendet werden, die optimiert ist, die Botschaft im Pufferspeicher möglichst schnell wiederzufinden. Idealerweise findet in dem Verarbeitungsmodul eine Reduktion der weitergereichten Botschaften mittels einer Vorverarbeitung statt. Dadurch kann die Anzahl der für eine mögliche Verifikation im Pufferspeicher gespeicherten Botschaften deutlich reduziert werden. Die Größe des Pufferspeichers wird typischerweise abhängig von der Reduktionsmethode, den Anwendungstypen (beispielsweise basierend auf Ereignisnachrichten oder auf periodischen Nachrichten) sowie der Anwendungslogik (wie alte Nachrichten überhaupt noch in Betracht gezogen werden) gewählt.
-
In einer bevorzugten Ausführung kommt als Identifikation bzw. Kennung auch die ID des Fahrzeug-zu-X-Teilnehmers in Frage, der eine entsprechende Nachricht versendet hat. Anhand dieser Information kann das Verarbeitungsmodul automatisch alle Nachrichten entsprechend einordnen, welche vom selben Teilnehmer empfangen wurden. Diese Ausführung ist insbesondere dann sinnvoll, wenn die im System verwendeten Algorithmen auf der Basis von Objekten statt auf einzelnen Nachrichten rechnen.
-
Um Rechenzeit im Verarbeitungsmodul zu sparen, kann die ASN.1-Decodierung beispielsweise erst in dem Steuerungsmodul stattfinden. Der Inhalt des ASN.1-codierten Teils der Nachrichten wird im Verarbeitungsmodul typischerweise nicht benötigt, weshalb dies keine einschränkende Funktionalität bedeutet. Bei sehr ungleicher Anzahl empfangener Nachrichten pro Zeiteinheit kann, falls noch Rechenleistung für Verifikationen übrig ist, eine Überprüfung der Nachrichten im Pufferspeicher auf Verdacht durchgeführt werden. Sollte eine solche vorab geprüfte Nachricht dann von den Anwendungen zur Prüfung angefragt werden, kann die Latenz bis zur Antwort deutlich reduziert werden. Idealerweise wird für diese Überprüfung auf Verdacht zu jeder Nachricht im Pufferspeicher zusätzlich der Prüfungszustand festgehalten. Einmal als geprüft an das Steuerungsmodul weitergereichte Botschaften können aus dem Pufferspeicher typischerweise entfernt werden, da das Steuerungsmodul die Nachricht jetzt selbst als geprüft speichern kann. Alternativ oder zusätzlich kann das Verarbeitungsmodul das Ergebnis jeder Verifizierung bzw. Verdachtsüberprüfung direkt an das Steuerungsmodul weiterleiten, um die Latenz im Fall einer Überprüfungsnotwendigkeit noch weiter zu reduzieren.
-
Die Überprüfung auf Verdacht kann idealerweise dadurch optimiert werden, dass das Steuerungsmodul für jede empfangene Botschaft ein Feedback bereitstellt, wie wichtig diese Nachricht eingeschätzt wird (zum Beispiel „unwichtig“, „potentiell wichtig“, „sehr wichtig“). Das Steuerungsmodul kann anhand dieses Feedbacks die noch nicht überprüften Botschaften entsprechend ihrer Kritikalität für die Verifikation sortieren. So können beispielsweise im Fall von großer Rechenlast ausschließlich die als „sehr wichtig“ gemeldeten Nachrichten verifiziert werden. Bei geringerer Rechenlast können dann auch die Nachrichten, die als „potenziell wichtig“ klassifiziert wurden, ebenfalls geprüft bzw. verifiziert werden.
-
Die Kommunikation zwischen den beiden Modulen kann zur Erhöhung des Sicherheitslevels bzw. Security-Levels verschlüsselt oder zumindest abgesichert ablaufen. Hierzu ist jedoch nicht zwingend eine Public-Key-Infrastruktur notwendig; ein symmetrisches Verschlüsselungsverfahren wie AES reicht aus, das keinen Zusammenhang zum Sicherheitssystem der Fahrzeug-zu-X-Kommunikation zu haben braucht.
-
In einer speziellen Variante erfolgt die Aufteilung der Funktionen nicht auf verschiedene Steuergeräte bzw. Module, sondern auf verschiedene Partitionen einer Steuergerätesoftware bzw. Modulsoftware, welche als virtuell getrennte Steuergeräte bzw. Module darstellbar sind. Die Kommunikation zwischen den Partitionen erfolgt in diesem Fall typischerweise über einen virtuellen Bus, zum Beispiel Interprozess-Kommunikations-Ports. Alle anderen beschriebenen Mechanismen sind identisch anwendbar.
-
Durch die beschriebene Systematik für die Security-Prüfung bzw. Verifizierung in einem verteilten Fahrzeug-zu-X-System ist es möglich, Anwendungen auf bereits vorhandenen Steuergeräten bzw. Modulen unterzubringen, ohne dass die Steuergeräte entsprechende Security-Mechanismen benötigen. Damit kann Fahrzeug-zu-X inklusive Security-on-Demand sehr einfach in bestehende Fahrzeugarchitekturen integriert werden.
-
Insbesondere die Aufteilung auf verschiedene Partitionen auf einem Steuergerät bzw. Modul bietet den Vorteil, dass die beschriebenen Funktionen in verschiedene Betriebssysteme integrierbar sind. Die Implementierungen von Transceiver-Treibern, Protokoll-Stack und Security-Libraries sind häufig für POSIX/Linux-ähnliche Systeme ausgelegt. Die App-Berechnung hingegen kann zum Beispiel in einem AUTOSAR-ähnlichen Betriebssystem erfolgen, zum Beispiel wenn ein OEM eigene Applikationen in das Steuergerät bzw. das Modul integrieren will. Mit der beschriebenen Erfindung lassen sich beide Welten mit minimalem Aufwand auf einem Steuergerät bzw. einem Modul vereinen.
-
Weitere Merkmale und Vorteile wird der Fachmann dem nachfolgend mit Bezug auf die beigefügte Zeichnung beschriebenen Ausführungsbeispiel entnehmen. Dabei zeigt:
-
1: ein Fahrzeug, welches zur Ausführung eines erfindungsgemäßen Verfahrens konfiguriert ist.
-
1 zeigt ein Fahrzeug 10, welches zur Durchführung eines erfindungsgemäßen Verfahrens gemäß einem möglichen Ausführungsbeispiel konfiguriert ist.
-
Das Fahrzeug 10 ist dabei lediglich schematisch dargestellt. Es weist ein linkes Vorderrad 20, ein rechtes Vorderrad 22, ein linkes Hinterrad 24 und ein rechtes Hinterrad 26 auf.
-
Das Fahrzeug 10 weist ein Verarbeitungsmodul 30 auf. Das Verarbeitungsmodul 30 ist mit einer Antenne 32 verbunden, welche zum Empfangen von Fahrzeug-zu-X-Nachrichten konfiguriert ist. Somit werden alle Fahrzeug-zu-X-Nachrichten, welche in einem Gebiet, in welchem sich das Fahrzeug 10 befindet, empfangbar sind, von dem Verarbeitungsmodul 30 empfangen.
-
Das Verarbeitungsmodul 30 weist ferner einen Pufferspeicher 34 auf.
-
Des Weiteren weist das Fahrzeug 10 ein Steuerungsmodul 40 auf. Dieses Steuerungsmodul 40 ist hier ebenfalls lediglich schematisch dargestellt und ist dazu konfiguriert, eine oder mehrere Anwendungen auszuführen, für welche Fahrzeug-zu-X-Nachrichten verwendet werden. Beispielsweise kann es sich dabei um eine Funktion eines autonomen Fahrens oder um eine Kollisionsvermeidung handeln. Es sei verstanden, dass das Fahrzeug 10 auch mehrere Steuerungsmodule aufweisen kann, welche entsprechend funktionieren können.
-
Wie gezeigt sind das Verarbeitungsmodul 30 und das Steuerungsmodul 40 miteinander verbunden, um Daten auszutauschen. Die implementierte Funktionalität läuft dabei wie nachfolgend beschrieben ab.
-
Bei einer hereinkommenden Fahrzeug-zu-X-Nachricht, welche über die Antenne 32 empfangen wird, wird zunächst eine Vorverarbeitung durchgeführt, um herauszufinden, ob die entsprechende Fahrzeug-zu-X-Nachricht für das Fahrzeug 10 überhaupt eine Relevanz haben kann. Handelt es sich um eine Nachricht, welche für das Fahrzeug 10 erkennbar irrelevant ist, so wird sie unmittelbar verworfen.
-
Anschließend wird die jeweilige Fahrzeug-zu-X-Nachricht im Pufferspeicher 34 gespeichert und wird auch an das Steuerungsmodul 40 weitergeleitet.
-
Das Steuerungsmodul 40 überprüft, ob die Fahrzeug-zu-X-Nachricht so sicherheitsrelevant ist, dass eine Verifizierung erforderlich ist. Wenn dies der Fall ist, so überträgt es eine Überprüfungsanforderung mit einer Identifikation der Fahrzeug-zu-X-Nachricht zurück an das Verarbeitungsmodul 30. Dabei kann insbesondere eine ID einer Fahrzeug-zu-X-Nachricht verwendet werden, welche in dieser Nachricht typischerweise ohnehin bereits vorhanden ist.
-
Ansprechend auf den Empfang einer solchen Überprüfungsanforderung verifiziert das Verarbeitungsmodul 30 die jeweilige im Pufferspeicher gespeicherte Fahrzeug-zu-X-Nachricht. Dabei kann als Ergebnis herauskommen, dass die Fahrzeug-zu-X-Nachricht entweder sicher ist oder dass sie unsicher ist. Dieses Ergebnis wird an das Steuerungsmodul 40 gesendet. Das Steuerungsmodul 40 weiß somit, ob die jeweilige Fahrzeug-zu-X-Nachricht sicher und somit vertrauenswürdig ist oder nicht. Beispielsweise kann bei einer unsicheren Fahrzeug-zu-X-Nachricht darauf verzichtet werden, diese für die Zwecke einer autonomen Fahrzeugsteuerung zu verwenden.
-
Sofern bei einer Fahrzeug-zu-X-Nachricht eine Verifikation nicht oder zumindest nicht unmittelbar erforderlich ist, sendet das Steuerungsmodul 40 eine jeweilige Priorisierungsinformation bezüglich der Fahrzeug-zu-X-Nachricht an das Verarbeitungsmodul 30 zurück. Dabei ist angegeben, für wie wichtig das Steuerungsmodul 40 die jeweilige Fahrzeug-zu-X-Nachricht hält. Insbesondere kann ein Prioritätswert umso höher angegeben werden, je höher die Wahrscheinlichkeit ist, dass eine Verifizierung dieser Fahrzeug-zu-X-Nachricht doch noch erforderlich werden wird.
-
Wenn eine Prozessorlast eines Prozessors des Verarbeitungsmoduls 30 unter eine bestimmte Schwelle abfällt, so verifiziert das Verarbeitungsmodul 30 die in dem Pufferspeicher 34 gespeicherten Fahrzeug-zu-X-Nachrichten unabhängig von einer konkret dafür vorliegenden Überprüfungsanforderung. Sollte dann eine Überprüfungsanforderung kommen, so steht das jeweilige Ergebnis der Verifizierung bereits zur Verfügung und kann unmittelbar an das Steuerungsmodul 40 gesendet werden.
-
Verifizierte Fahrzeug-zu-X-Nachrichten werden typischerweise aus dem Pufferspeicher 34 gelöscht, wobei zum Aufbewahren des Ergebnisses einer Verifizierung die Speicherung von ID bzw. Kennung sowie Ergebnis der Verifizierung genügt. Damit können erhebliche Mengen an Speicherplatz eingespart werden.
-
Im Vergleich zu Ausführungen, welche aus dem Stand der Technik bekannt sind, bei welchen die komplette Fahrzeug-zu-X-Nachricht von dem Steuerungsmodul 40 zurück zu dem Verarbeitungsmodul 30 gesendet werden musste, werden durch die erfindungsgemäße Ausführung gemäß dem gezeigten Ausführungsbeispiel erhebliche Mengen an notwendiger Übertragungskapazität zwischen dem Verarbeitungsmodul 30 und dem Steuerungsmodul 40 eingespart.
-
Allgemein sei darauf hingewiesen, dass unter Fahrzeug-zu-X-Kommunikation insbesondere eine direkte Kommunikation zwischen Fahrzeugen und/oder zwischen Fahrzeugen und Infrastruktureinrichtungen verstanden wird. Beispielsweise kann es sich also um Fahrzeug-zu-Fahrzeug-Kommunikation oder um Fahrzeug-zu-Infrastruktur-Kommunikation handeln. Sofern im Rahmen dieser Anmeldung auf eine Kommunikation zwischen Fahrzeugen Bezug genommen wird, so kann diese grundsätzlich beispielsweise im Rahmen einer Fahrzeug-zu-Fahrzeug-Kommunikation erfolgen, welche typischerweise ohne Vermittlung durch ein Mobilfunknetz oder eine ähnliche externe Infrastruktur erfolgt und welche deshalb von anderen Lösungen, welche beispielsweise auf ein Mobilfunknetz aufbauen, abzugrenzen ist. Beispielsweise kann eine Fahrzeug-zu-X-Kommunikation unter Verwendung der Standards IEEE 802.11p oder IEEE 1609.4 erfolgen. Eine Fahrzeug-zu-X-Kommunikation kann auch als C2X-Kommunikation bezeichnet werden. Die Teilbereiche können als C2C (Car-to-Car) oder C2I (Car-to-Infrastructure) bezeichnet werden. Die Erfindung schließt jedoch Fahrzeug-zu-X-Kommunikation mit Vermittlung beispielsweise über ein Mobilfunknetz explizit nicht aus.
-
Erwähnte Schritte des erfindungsgemäßen Verfahrens können in der angegebenen Reihenfolge ausgeführt werden. Sie können jedoch auch in einer anderen Reihenfolge ausgeführt werden. Das erfindungsgemäße Verfahren kann in einer seiner Ausführungen, beispielsweise mit einer bestimmten Zusammenstellung von Schritten, in der Weise ausgeführt werden, dass keine weiteren Schritte ausgeführt werden. Es können jedoch grundsätzlich auch weitere Schritte ausgeführt werden, auch solche welche nicht erwähnt sind.
-
Die zur Anmeldung gehörigen Ansprüche stellen keinen Verzicht auf die Erzielung weitergehenden Schutzes dar.
-
Sofern sich im Laufe des Verfahrens herausstellt, dass ein Merkmal oder eine Gruppe von Merkmalen nicht zwingend nötig ist, so wird anmelderseitig bereits jetzt eine Formulierung zumindest eines unabhängigen Anspruchs angestrebt, welcher das Merkmal oder die Gruppe von Merkmalen nicht mehr aufweist. Hierbei kann es sich beispielsweise um eine Unterkombination eines am Anmeldetag vorliegenden Anspruchs oder um eine durch weitere Merkmale eingeschränkte Unterkombination eines am Anmeldetag vorliegenden Anspruchs handeln. Derartige neu zu formulierende Ansprüche oder Merkmalskombinationen sind als von der Offenbarung dieser Anmeldung mit abgedeckt zu verstehen.
-
Es sei ferner darauf hingewiesen, dass Ausgestaltungen, Merkmale und Varianten der Erfindung, welche in den verschiedenen Ausführungen oder Ausführungsbeispielen beschriebenen und/oder in den Figuren gezeigt sind, beliebig untereinander kombinierbar sind. Einzelne oder mehrere Merkmale sind beliebig gegeneinander austauschbar. Hieraus entstehende Merkmalskombinationen sind als von der Offenbarung dieser Anmeldung mit abgedeckt zu verstehen.
-
Rückbezüge in abhängigen Ansprüchen sind nicht als ein Verzicht auf die Erzielung eines selbständigen, gegenständlichen Schutzes für die Merkmale der rückbezogenen Unteransprüche zu verstehen. Diese Merkmale können auch beliebig mit anderen Merkmalen kombiniert werden.
-
Merkmale, die lediglich in der Beschreibung offenbart sind oder Merkmale, welche in der Beschreibung oder in einem Anspruch nur in Verbindung mit anderen Merkmalen offenbart sind, können grundsätzlich von eigenständiger erfindungswesentlicher Bedeutung sein. Sie können deshalb auch einzeln zur Abgrenzung vom Stand der Technik in Ansprüche aufgenommen werden.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- Standard IEEE 802.11p [0002]
- Standards IEEE 802.11p [0074]
- IEEE 1609.4 [0074]