DE102015204658A1 - Verfahren, Gerät, und Fahrzeug zum Validieren von Steuerbefehlen einer Haupteinheit - Google Patents

Verfahren, Gerät, und Fahrzeug zum Validieren von Steuerbefehlen einer Haupteinheit Download PDF

Info

Publication number
DE102015204658A1
DE102015204658A1 DE102015204658.3A DE102015204658A DE102015204658A1 DE 102015204658 A1 DE102015204658 A1 DE 102015204658A1 DE 102015204658 A DE102015204658 A DE 102015204658A DE 102015204658 A1 DE102015204658 A1 DE 102015204658A1
Authority
DE
Germany
Prior art keywords
input
control command
command
commands
main unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102015204658.3A
Other languages
English (en)
Inventor
Daniel Adam
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bayerische Motoren Werke AG
Original Assignee
Bayerische Motoren Werke AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bayerische Motoren Werke AG filed Critical Bayerische Motoren Werke AG
Priority to DE102015204658.3A priority Critical patent/DE102015204658A1/de
Publication of DE102015204658A1 publication Critical patent/DE102015204658A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/629Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application

Abstract

Verfahren zum Validieren von Steuerbefehlen einer Haupteinheit eines Fahrzeugs, das Verfahren umfassend: empfangen eines Steuerbefehls; empfangen eines oder mehrerer Eingabebefehle eines Eingabehandlers (106, 206); speichern der empfangenen Eingabebefehle in einem Cache; bestimmen eines Eingabebefehl, der mit dem empfangenen Steuerbefehl verknüpft ist; validieren des empfangenen Steuerbefehls mittels wenigstens einem der gespeicherten Eingabebefehle, umfassend: überprüfen, ob der bestimmte Eingabebefehl mit wenigstens einem der gespeicherten Eingabefehle übereinstimmt; und weiterleiten des empfangenen Steuerbefehls, falls der empfangene Steuerbefehl erfolgreich validiert wurde.

Description

  • Die Erfindung betrifft ein Verfahren, ein Gerät, und ein Fahrzeug umfassend das Gerät zum Validieren von Steuerbefehlen einer Haupteinheit.
  • Eine Haupteinheit, oft auch als Head-Unit bezeichnet, eines Infotainmentsystems eines Fahrzeugs ist häufig ein geschlossenes System, dessen Funktionsumfang meist durch den Hersteller eines Fahrzeugs vorgegeben wird. Eine Erweiterung des Funktionsumfangs kann nur von dem Hersteller des Fahrzeugs vorgenommen werden. Es ist beispielsweise bekannt, dass die Haupteinheit es ermöglicht, Fahrzeuginformationen und/oder Informationen von externen Internet-basierten Diensten wie soziale Netzwerke, Kartendienste und/oder verkehrsbezogene Dienste anzuzeigen.
  • Es ist eine Aufgabe der Erfindung, eine verbesserte Haupteinheit eines Fahrzeugs bereitzustellen. Insbesondere ist es eine Aufgabe der Erfindung, den Funktionsumfang der Haupteinheit eines Infotainmentsystems zu erweitern und/oder die funktionale Sicherheit zu erhöhen.
  • Gelöst wird diese Aufgabe durch ein Verfahren sowie durch ein Gerät mit den Merkmalen gemäß den jeweiligen unabhängigen Patentansprüchen. Vorteilhafte Ausgestaltungen der Erfindung sind Gegenstand der abhängigen Patentansprüche, der Beschreibung und/oder der Figuren.
  • Ein erfindungsgemäßes Verfahren dient zum Validieren von Steuerbefehlen einer Haupteinheit eines Fahrzeugs. Das Verfahren umfasst das Empfangen eines Steuerbefehls. Beispielsweise kann der Steuerbefehl von einer Validierungskomponente durch die Haupteinheit empfangen werden. Der Steuerbefehl kann beispielsweise eine Fahrzeugfunktion steuern. Das Verfahren umfasst ferner das Empfangen eines oder mehrerer Eingabebefehle eines Eingabehandlers. Die empfangenen Eingabebefehle werden in einem Cache gespeichert. Vorzugsweise werden die empfangenen Eingabebefehle in dem Cache einer Validierungskomponente gespeichert. Das Verfahren umfasst ferner das Bestimmen eines Eingabebefehls, der mit dem empfangenen Steuerbefehl verknüpft ist. Das Verfahren umfasst weiterhin das Validieren des empfangenen Steuerbefehls mittels wenigstens einem der gespeicherten Eingabebefehle, wobei überprüft wird, ob der bestimmte Eingabebefehl mit wenigstens einem der gespeicherten Eingabefehle übereinstimmt. Falls der empfangene Steuerbefehl erfolgreich validiert wurde, wird der empfangene Steuerbefehl weitergeleitet.
  • Durch das Validieren eines Steuerbefehls mittels einem oder mehrerer Eingabebefehle ist eine sehr einfache Überprüfung möglich, ob ein Steuerbefehl auf eine tatsächliche Benutzereingabe zurückzuführen ist und/oder ob der Steuerbefehle ohne dazugehörige Benutzereingabe erzeugt wurde. Dadurch wird sichergestellt, dass Steuerbefehle nur auf expliziten Wunsch des Benutzers weitergeleitet und/oder ausgeführt werden. Somit können Steuerbefehle auch von nicht-vertrauenswürdigen Komponenten der Haupteinheit in das Bordnetzwerk weitergeleitet werden. Die Funktionalität der Haupteinheit eines Infotainmentsystems kann somit effizient erweitert und/oder die funktionale Sicherheit garantiert werden.
  • Gemäß einer vorteilhaften Ausgestaltung kann das Verfahren weiterhin ein Senden einer Anfrage an den Eingabehandler umfassen, um einen oder mehrere Eingabebefehle von dem Eingabehandler zu empfangen. Somit können mehr Steuerbefehle erfolgreich validiert werden und/oder Fehler bei der Validierung vermieden werden.
  • Gemäß einer weiteren vorteilhaften Ausgestaltung kann das Bestimmen des Eingabebefehls das Bestimmen einer Regel für den empfangenen Steuerbefehl aus einer Menge vordefinierter Regeln für Steuerbefehle umfassen, wobei jede Regel den Eingabebefehl für einen Steuerbefehl definiert. Durch die Verwendung von Regeln kann eine einfache Aktualisierung der Validierungskomponente an neue oder geänderte Eingabebefehle und/oder Steuerbefehle vorgenommen werden.
  • Gemäß einer weiteren vorteilhaften Ausgestaltung kann das Validieren des empfangenen Steuerbefehls das Ausführen der bestimmten Regel auf die gespeicherten Eingabebefehle umfassen und/oder kann das Überprüfen, ob der bestimmte Eingabebefehl mit wenigstens einem der gespeicherten Eingabefehle übereinstimmt, ein Vergleichen der Definition der Eingabefehls der Regel für den empfangenen Steuerbefehl mit den gespeicherten Eingabebefehlen umfassen. Durch Anwendung von Regeln auf die gespeicherten Befehle kann eine flexible und effiziente Verarbeitung der Eingabebefehle erreicht werden.
  • Gemäß einer weiteren vorteilhaften Ausgestaltung kann der empfangene Steuerbefehl der Haupteinheit an ein Bordnetzwerk des Fahrzeugs weitergeleitet werden. Hiermit wird es ermöglicht, dass Steuerbefehle an das Bordnetzwerk validiert werden.
  • Gemäß einer weiteren vorteilhaften Ausgestaltung kann der empfangene Steuerbefehl von einem nicht-vertrauenswürdiges Gastsystem an ein vertrauenswürdiges Gastsystem weitergeleitet werden. Hiermit wird es ermöglicht, dass Steuerbefehle zwischen Gastsystemen der Haupteinheit validiert werden.
  • Gemäß einer weiteren vorteilhaften Ausgestaltung kann das Validieren des empfangenen Steuerbefehls mittels wenigstens einem der gespeicherten Eingabebefehle ferner umfassen:
    • – vergleichen, ob die Art der Benutzerinteraktion des bestimmten Eingabefehls mit wenigstens einem der gespeicherten Eingabefehle übereinstimmt;
    • – überprüfen, ob die gespeicherten Eingabefehle innerhalb einer vorgegeben Zeitspanne vor Empfang des Steuerbefehls empfangen wurden; und/oder
    • – bestimmen, ob die Position der Benutzerinteraktion des bestimmten Eingabefehls mit wenigstens einem der gespeicherten Eingabefehle übereinstimmt.
    Hiermit kann die Validierung des Steuerbefehls flexibel an die Art der Eingabebefehle angepasst werden. Die Flexibilität der Validierung kann somit erhöht werden.
  • Gemäß einer weiteren vorteilhaften Ausgestaltung kann das Verfahren ferner umfassen, dass, falls der empfangene Steuerbefehl nicht erfolgreich validiert wurde, der empfangene Steuerbefehl verworfen wird. Durch das Verwerfen des Steuerbefehls kann einfach verhindert werden, dass der Steuerbefehl nicht in das Bordnetzwerk weitergeleitet wird.
  • Die Erfindung betrifft außerdem ein Gerät zum Validieren von Steuerbefehlen einer Haupteinheit eines Fahrzeugs, wobei das Gerät dazu ausgebildet ist, das erfindungsgemäße Verfahren auszuführen.
  • Die Erfindung betrifft außerdem ein Fahrzeug umfassend ein Gerät zum Validieren von Steuerbefehlen einer Haupteinheit, wobei das Gerät dazu ausgebildet ist, das erfindungsgemäße Verfahren auszuführen.
  • Weitere Merkmale der Erfindung ergeben sich aus den Ansprüchen, den Figuren und/ der Figurenbeschreibung. Alle vorstehend in der Beschreibung genannten Merkmale und Merkmalskombinationen sowie die nachfolgend in der Figurenbeschreibung genannten und/oder in den Figuren alleine gezeigten Merkmale und Merkmalkombinationen sind nicht nur in der jeweils angegebene Kombination, sondern auch in anderen Kombinationen oder aber in Alleinstellung verwendbar.
  • Die Erfindung beruht auf den nachfolgend dargelegten Überlegungen:
    Zukünftig werden verschiedene mobile und/oder eingebettete Betriebssysteme in einem Infotainmentsystem eines Fahrzeugs eingesetzt werden. Dies kann teilweise durch zusätzlich Hardware, z.B. durch weitere Prozessoren, oder durch Software, z.B. durch Virtualisierung der bestehenden Hardware, realisiert werden.
  • Ferner kann die fortschreitende Verschmelzung von externen Internet-basierten Diensten, Entertainmentfunktionen und/oder Fahrzeugfunktionen in der Haupteinheit dazu führen, dass die Haupteinheit für den Betrieb des Fahrzeug sicherheitsrelevante Komponenten und für den Betrieb des Fahrzeug nicht-sicherheitsrelevante Komponenten steuern kann. Beispielsweise kann es möglich sein, dass die Haupteinheit mit einem Steuerbefehl die Stabilitätskontrolle des Fahrzeugs oder den Motor an/-ausschalten kann. Dies kann besonders kritisch sein, falls in der Haupteinheit ungeprüfte bzw. nicht abgesicherte Komponenten ausgeführt werden, die Steuerbefehle in das Bordnetzwerk des Fahrzeugs senden können.
  • Um eine gemeinsame und einheitliche Bedienung von externen Internet-basierten Diensten, Entertainmentfunktionen und Fahrzeugfunktionen zu gewährleisten, können Steuerbefehle, insbesondere kritische Steuerbefehle für Fahrzeugfunktionen von einem unkritischen Bereich in einen kritischen Bereich weitergeleitet bzw. kommuniziert werden. In dem unkritischen Bereich kann ein Steuerbefehl erzeugt werden. Eine Ausführung des Steuerbefehls kann jedoch nur in dem kritischen Bereich stattfinden. Deshalb muss verhindert werden, dass nur Steuerbefehle von einem unkritischen Bereich in einen kritischen Bereich weitergeleitet werden, die auch von dem Benutzer gewollt sind. Steuerbefehle, die durch eine Manipulation und/oder durch eine Funktionsstörung erzeugt wurden, dürfen nicht in den kritischen Bereich weitergeleitet werden. Der kritische Bereich kann beispielsweise das Bordnetzwerk eines Fahrzeugs und/oder die im Bordnetzwerk des Fahrzeugs miteinander vernetzten Steuergeräte umfassen. Ferner kann der kritische Bereich Softwarekomponenten umfassen, die von dem Hersteller des Fahrzeugs und/oder vertrauenswürdigen Dritten geprüft worden sind.
  • Um die gewollte Weiterleitung sicherzustellen und/oder die nicht-gewollte Weiterleitung zu verhindern, kann eine Validierungskomponente zwischen dem kritischen Bereich und dem unkritischen Bereich des Infotainmentsystems hinzugefügt werden. Die Entscheidung über die Weiterleitung eines Steuerbefehls kann dynamisch aufgrund einer Historie von Benutzerinterkationen mit einem Bedienelement erfolgen. Als Benutzerinteraktion kann beispielsweise ein Drücken oder Drehen eines Knopfes, oder eine Position einer Eingabe eines Touchscreens zu einem bestimmten Zeitpunkt oder innerhalb einer bestimmten Zeitspanne sein.
  • Im Folgenden wird anhand der beigefügten Zeichnungen ein bevorzugtes Ausführungsbeispiel der Erfindung beschrieben. Daraus ergeben sich weitere Details, bevorzugte Ausgestaltungen und Weiterbildungen der Erfindung. Im Einzelnen zeigen schematisch
  • 1 eine Hardwareimplementierung eines Systems zum Validieren von Steuerbefehlen einer Haupteinheit;
  • 2 eine Softwareimplementierung eines Systems zum Validieren von Steuerbefehlen einer Haupteinheit; und
  • 3 ein Sequenzdiagramm eines Systems zum Validieren von Steuerbefehlen einer Haupteinheit.
  • 1 zeigt eine Hardwareimplementierung 100 eines Systems zum Validieren von Steuerbefehlen einer Haupteinheit bzw. Head-Unit. Ein Benutzer kann die Funktionen der Haupteinheit über einen Touchscreen 102 und/oder eine zentrale Bedieneinheit 104. Insbesondere kann der Benutzer die Fahrzeugfunktionen und/oder die Entertainmentfunktionen der Haupteinheit des Infotainmentsystems über den Touchscreen 102 und/oder die zentrale Bedieneinheit 104 bedienen. Der Touchscreen 102, insbesondere der Controller des Touchscreens 102, ist mit einem Eingabehandler 106 verbunden. Die zentrale Bedieneinheit 104, insbesondere der Controller der zentralen Bedieneinheit 104, kann mit dem Eingabehandler 106 verbunden sein. Alternativ oder zusätzlich können weitere Bedieneinheiten wie eine Bedieneinheit mit einer Gestensteuerung und/oder eine Bedieneinheit zur Spracheingabe mit dem Eingabehandler 106 verbunden sein. Der Touchscreen 102 und/oder die zentrale Bedieneinheit 104 können Teil einer Haupteinheit sein und/oder außerhalb der Haupteinheit angeordnet sein.
  • Wird eine Benutzerinteraktion mit dem Touchscreen 102 und/oder mit der zentralen Bedieneinheit 104 durchgeführt, übermitteln der Controller der jeweiligen Bedieneinheit einen Eingabebefehl an den Eingabehandler 106. Vorzugsweise werden alle Eingabebefehle an den Eingabehandler 106 übermittelt. Bedient beispielsweise ein Benutzer den Touchscreen 102, so wird ein Eingabefehl von dem Controller des Touchscreens 102 an den Eingabehandler 106 geschickt. Der Eingabebefehl kann beispielsweise die Position der Berührung des Touchscreen 102 umfassen. Analog zu einer Benutzerinteraktion mit dem Touchscreen 102 kann die zentrale Bedieneinheit 104 Eingabebefehle, die beispielsweise durch Drücken oder Drehen eines Knopfs, Schalters oder Reglers erzeugt wurden, an den Eingabehandler 106 übermitteln.
  • Der Eingabehandler 106 kann selbst die dazugehörige Funktion bestimmen oder den Eingabebefehl an eine weitere Komponente der Haupteinheit weiterleiten, die die dazugehörige Funktion des Eingabebefehls ermittelt. Die weitere Komponente kann beispielsweise eine Softwarekomponente, z.B. eine Betriebssystem, ein Gerätetreiber, und/oder eine Anwendungssoftware sein, und/oder eine Hardwarekomponente der Haupteinheit sein. Ist beispielsweise die Position der Berührung des Touchscreens mit einer Funktion zum Abschalten der Stabilitätsteuerung des Fahrzeugs verknüpft, kann der Eingabehandler 106 als Ausgabe einen Steuerbefehl zum Abschalten der Stabilitätssteuerung erzeugen bzw. von der weiteren Komponente erhalten. Vorzugweise kann jeder Steuerbefehl von dem Eingabehandler 106 an eine Validierungskomponente 108 übermittelt werden. Alternativ kann eine weitere Komponente der Haupteinheit jeden Steuerbefehl an die Validierungskomponente 108 übermitteln. Die Validierungskomponente 108 kann in einem Kabel zwischen der Haupteinheit und dem Bordnetzwerk 110 angeordnet sein. Ist die Validierungskomponente 108 in einem Kabel zwischen der Haupteinheit und dem Bordnetzwerk 110 eingebaut, muss die Haupteinheit nicht geändert werde, um die Validierung der Steuerbefehle zu realisieren. Alternativ kann die Validierungskomponente 108 ein Teil der Haupteinheit sein.
  • Weiterhin kann der Eingabehandler 106 einen Eingabebefehl oder mehrere Eingabebefehle des Touchscreen 102 und/oder des zentralen Bedienelements 104 an die Validierungskomponente 108 weiterleiten. Vorzugsweise werden alle Eingabebefehle an die Validierungskomponente 108 weitergeleitet. Die Validierungskomponente kann einen Cache für die Eingabebefehle umfassen. Der Cache kann die Eingabebefehle für eine vorgegebene Zeitspanne und/oder eine vordefinierte Anzahl von Eingabebefehlen zwischenspeichern.
  • Zusätzlich oder alternativ kann ein Eingabebefehl von einer Bedieneinheit, z.B. dem Touchscreen 102 und/oder der zentralen Bedieneinheit 104, direkt an die Validierungskomponente 108 übermittelt werden. Eine direkt Übermittlung von einem Eingabebefehl an die Validierungskomponente 108 kann ein Mitlesen des Eingabebefehls zwischen einem Bedienelement bzw. dem Controller des Bedienelements und dem Eingabehandler 106 umfassen. Vorzugsweise werden alle Eingabebefehle einer Bedieneinheit an die Validierungskomponente 108 direkt übermittelt. Somit kann die Validierungskomponente 108 Eingabebefehle von einem Bedienelement ohne weitere Verarbeitung durch zwischengeschaltete Verarbeitungseinheiteneinheiten erhalten. Durch die direkte Übermittelung kann verhindert werden, dass ein Eingabebefehl durch eine zwischengeschaltete Verarbeitungskomponente manipuliert wird.
  • Die Validierungskomponente 108 kann ferner einen Steuerbefehl empfangen. Der Steuerbefehl kann von dem Eingabehandler 106, einer Komponente der Haupteinheit, und/oder der Haupteinheit empfangen werden. Der empfangene Steuerbefehl kann von der Validierungskomponente 108 validiert werden. Die Validierungskomponente 108 validiert den Steuerbefehl mithilfe wenigstens eines Eingabebefehls des Eingabehandlers 106. Alternativ kann die Validierungskomponente den Steuerbefehl mithilfe mehrerer Eingabebefehle validieren. Der Eingabebefehl kann dabei in dem Cache der Validierungskomponente 108 gespeichert sein. Die Validierungskomponente 108 prüft zur Validierung des Steuerbefehls, ob ein Eingabebefehl durch den Touchscreen 102 und/oder durch die zentrale Bedieneinheit 104 ausgeführt wurde, der zu dem empfangenen Steuerbefehl führen kann.
  • Im Detail bestimmt die Validierungskomponente 108 einen Eingabebefehl, der mit dem empfangenen Steuerbefehl verknüpft ist. Dazu kann die Validierungskomponente 108 eine Menge von Regeln verwenden, die für jeden Steuerbefehl den dazugehörigen Eingabebefehl definiert. Durch Anwenden der Regel auf die von dem Eingabehandler empfangenen und gespeicherten Eingabebefehle kann festgestellt werden, ob ein Eingabebefehl zu dem empfangenen Steuerbefehl passt. In anderen Worten, es wird geprüft, ob der mit dem empfangenen Steuerbefehl verknüpfte Eingabebefehl mit dem empfangenen Eingabebefehl übereinstimmt. Für die Überprüfung der Übereinstimmung können unterschiedliche Kriterien verwendet werden. Beispielsweise kann die Validierungskomponente folgende Bedingungen überprüfen:
    • – vergleichen, ob die Art der Benutzerinteraktion des bestimmten Eingabefehls mit wenigstens einem der gespeicherten Eingabefehle übereinstimmt,
    • – überprüfen, ob die gespeicherten Eingabefehle innerhalb einer vorgegeben Zeitspanne vor einem Empfang des Steuerbefehls empfangen wurden; und/oder
    • – bestimmen, ob die Position der Benutzerinteraktion des bestimmten Eingabefehls mit wenigstens einem der gespeicherten Eingabefehle übereinstimmt.
  • Jede dieser Bedingungen kann individuell für jeden Steuerbefehl definiert werden. So kann beispielsweise bei einer Eingabe durch den Touchscreen 102, die Position der Eingabe des Touchscreens mit der definierten Eingabe des Touchscreen 102 für einen bestimmten Steuerbefehl verglichen werden. Die definierte Eingabe kann hierbei auch ein definierter Eingabebereich sein, innerhalb dessen die Eingabe des Benutzers durch den Touchscreen sein sollte.
  • Ist die Validierung durch die Validierungskomponente 108 erfolgreich, kann der Steuerbefehl in das Bordnetzwerk 110 weitergeleitet werden. In anderen Worten, der Steuerbefehl wird in den kritischen Bereich weitergeleitet, wo er von dem entsprechenden Steuergerät verarbeitet werden kann. Ist die Validierung durch die Validierungskomponente 108 nicht erfolgreich, verwirft die Validierungskomponente 108 den Steuerbefehl. In anderen Worten, kann die Validierungskomponente keinen passenden Eingabebefehl zu dem Steuerbefehl bestimmen, ist der Steuerbefehl nicht valide, d.h. der Steuerbefehl basiert nicht auf einer Benutzereingabe, und wird von der Validierungskomponente verworfen. Eine Weiterleitung des Steuerbefehls in den kritischen Bereich findet nicht statt.
  • Vorteilhafterweise ermöglicht die Validierung eines Steuerbefehls, Funktionen in die Haupteinheit zu integrieren, die bisher nur von Komponenten innerhalb des Bordnetzwerks 110 möglich waren. Dadurch kann den Funktionsumfang der Haupteinheit und/oder eines Infotainmentsystems erhöht werden, ohne die funktionale Sicherheit des Bordnetzwerks des Fahrzeugs zu gefährden. Ferner kann die Flexibilität der Haupteinheit bei der Funktionsgestaltung erweitert werden. Eine Trennung zwischen den kritischen Bereich des Bordnetzwerks 110 und dem unkritischen Bereich der Entertainmentfunktionen kann durch die Validierungskomponente 108 effizient realisiert werden. Damit wird die Integration von Funktionen des kritischen Bereichs in ein Infotainmentsystem effizient verbessert ohne die Sicherheit des Bordnetzwerks 110 zu gefährden. In anderen Worten, die Symbiose von Funktionen aus dem kritischen Bereich und dem unkritischen Bereich kann erweitert bzw. verbessert werden. Dem Benutzer wird ferner die Möglichkeit gegeben mehr Funktionen über die Haupteinheit steuern zu können. Dies kann zu einer Reduzierung von Bedienelementen führen, die bisher zusätzlich benötigt wurden, um Funktionen des kritischen Bereichs, z.B. Funktionen des Bordnetzwerks 110, zu steuern.
  • 2 zeigt eine Softwareimplementierung eines Systems 200 zum Validieren von Steuerbefehlen einer Haupteinheit eines Fahrzeugs. Ein Touchscreen 202 und/oder eine zentrale Bedieneinheit 204 können Eingabebefehle an einen Eingabehandler 206 übermitteln. Der Eingabehandler 206 kann als eine Komponente eines Hypervisor 210, auch Virtual Machine Manager VMM genannt, implementiert werden. Ferner kann eine Validierungskomponente 208 als eine Komponente des Hypervisor 210 implementiert werden.
  • Im Allgemeinen erlaubt ein Hypervisor einen Betrieb eines oder mehrerer Gastsysteme, oft auch als virtuelle Maschinen VM bezeichnet, auf einem Hostsystem. Im Beispiel von 2 werden zwei Gastsysteme, ein Gastsystem 212 und ein Gastsystem 214, auf dem Hostsystem betrieben. Das Hostsystem kann dabei die Hardware der Haupteinheit eines Infotainmentsystems sein. Die Hardware der Haupteinheit kann beispielsweise den Touchscreen 202 und/oder die zentrale Bedieneinheit 204 umfassen. Die Gastsysteme können verschiedenen Funktionen der Haupteinheit implementieren, z.B. Entertainmentfunktionen und/oder Fahrzeugfunktionen.
  • Das Gastsystem 212 kann ein Betriebssystem und eine oder mehrere Anwendungen umfassen. Das Gastsystem 212 kann ein Gastsystem sein, das nicht-vertrauenswürdige Komponenten umfasst. Beispielsweise kann das Gastsystem 212 eine Anwendung ausführen, die nicht von Hersteller des Fahrzeugs überprüft und/oder zertifiziert wurde, und/oder eine Anwendung ausführen, die von einem Angreifer manipuliert wurde. Eine solche nicht-vertrauenswürdige Anwendung in einer unkritischen Umgebung kann einen Steuerbefehl an das Gastsystem 214 über den Hypervisor 210 übermitteln.
  • Im Gegensatz zu dem Gastsystem 212 kann das Gastsystem 214 vertrauenswürdige Komponenten umfassen. Beispielsweise kann das Gastsystem 214 ein vom Hersteller überprüftes Betriebssystem und vertrauenswürdige Softwarekomponenten und/oder Anwendungen umfassen. Ferner kann das Gastsystem 214 den Steuerbefehl ausführen oder den Steuerbefehl an das Bordnetzwerk weiterleiten, damit der Steuerbefehl von einem Steuergerät des Bordnetzwerks ausgeführt wird.
  • Die Validierungskomponente 208 kann Steuerbefehle des Gastsystems 212 empfangen. Vorzugsweise kann die Validierungskomponente alle Steuerbefehle des Gastsystems 212 empfangen. Ferner kann die Validierungskomponente 208 Eingabebefehle des Touchscreens 202 und/oder der zentralen Bedieneinheit 204 mittels des Eingabehandlers 206 empfangen. Vorzugsweise kann die Validierungskomponente 208 alle Eingabebefehle der Eingabehandlers 206 empfangen. Jeden Steuerbefehl, der von dem Gastsystem 212 durch die Validierungskomponente 208 empfangen wurde, kann die Validierungskomponente 206 mittels der von dem Eingabehandler 206 empfangenen Eingabebefehlen validieren. Die Validierung eines Steuerbefehls erfolgt analog zu dem Prozess wie in Zusammenhang mit 1 beschrieben. Ist die Validierung des Steuerbefehls erfolgreich, kann der Steuerbefehl an das Gastsystem 214 weitergeleitet werden. Zusätzlich oder alternativ kann der Steuerbefehl an das Bordnetzwerk weitergeleitet werden. Ist die Validierung des Steuerbefehls nicht erfolgreich, kann der Steuerbefehl durch die Validierungskomponente 208 verworfen werden.
  • Ferner kann die Validierungskomponente überprüfen, ob das Gastsystem 212 zum Zeitpunkt eines Eingabebefehls aktiv war, z.B. ob das Gastsystem 212 eine Eingabemaske angezeigt hat. War das Gastsystem 212 zum Zeitpunkt des Eingabebefehls aktiv, kann der Steuerbefehl an das Gastsystem 214 und/oder an das Bordnetzwerk weitergeleitet werden.
  • Vorteilhafterweise ermöglicht eine Softwareimplementierung der Validierung von Steuerungsbefehlen eine bessere Integration von Entertainmentfunktionen und Fahrzeugfunktionen in einer Haupteinheit eines Infotainmentsystems. Drittanbietern kann es ermöglicht werden, Fahrzeugfunktionen zu steuern, solange der Benutzer explizit einen Bedienbefehl gegeben hat. Dadurch kann die Flexibilität bei der Umsetzung von Funktionen in der Haupteinheit erhöht werden, ohne Einschränkungen bei der funktionellen Sicherheit vornehmen zu müssen.
  • 3 zeigt ein Sequenzdiagramm 300 eines Systems zum Validieren von Steuerbefehlen einer Haupteinheit, z.B. ein System nach 1 und/oder 2. Ein Benutzer 302 bedient 312 eine Bedieneinheit 304, z.B. einen Touchscreen 102, 202 oder eine zentrale Bedieneinheit 104, 204 einer Haupteinheit. Die Bedieneinheit 304 kann einen Eingabebefehl, der durch die Bedienung des Benutzers 302 erzeugt wurde, an eine Validierungskomponente 308 übermitteln 314. Die Bedieneinheit 304 kann ferner den Eingabebefehl an eine Verarbeitungseinheit 306 übermitteln 316. Die Verarbeitungseinheit 306 kann beispielsweise eine Haupteinheit und/oder ein Eingabehandler 106, 206 und/oder ein Gastsystem 212 sein. Die Bedieneinheit 304 kann den Eingabebefehl gleichzeitig oder sequenziell an die Validierungskomponente 308 und/oder die Verarbeitungseinheit 306 übermitteln. Die Verarbeitungseinheit 306 kann den Eingabebefehl verarbeiten und einen Steuerbefehl erzeugen. Die Verarbeitungseinheit 306 kann den Steuerbefehl an die Validierungskomponente 308 übermitteln 318. Die Validierungskomponente 308 kann die in Verbindung mit 1 und/oder 2 beschriebenen Verarbeitungsschritte und/oder Prozesse ausführen. Vorzugsweise kann die Validierungskomponente 308 einen Steuerbefehl mithilfe eines oder mehrerer Eingabebefehle validieren. Kann der Steuerbefehl validiert werden, übermittelt 320 die Validierungskomponente 308 den Steuerbefehl an ein Bordnetzwerk 310 und/oder ein vertrauenswürdiges Gastsystem (nicht dargestellt).
  • Bezugszeichenliste
  • 100
    Hardwareimplementierung eines Systems zum Validieren von Steuerbefehlen einer Haupteinheit eines Fahrzeugs
    102
    Touchscreen
    104
    zentrale Bedieneinheit
    106
    Eingabehandler bzw. Input-Handler
    108
    Validierungskomponente
    110
    Bordnetzwerk
    200
    Softwareimplementierung eines Systems zum Validieren von Steuerbefehlen einer Haupteinheit eines Fahrzeugs
    202
    Touchscreen
    204
    zentrale Bedieneinheit
    206
    Eingabehandler bzw. Input-Handler
    208
    Validierungskomponente
    210
    Hypervisor
    212
    Gastsystem
    214
    Gastsystem
    300
    Sequenzdiagramm
    302
    Benutzer
    304
    Bedieneinheit
    306
    Verarbeitungseinheit
    308
    Validierungskomponente
    310
    Bordnetzwerk
    312
    Bedienen einer Bedieneinheit
    314
    Übermitteln eines Eingabebefehls
    316
    Übermitteln eines Eingabebefehls
    318
    Übermitteln eines Steuerbefehls
    320
    Weiterleiten eines Steuerbefehls

Claims (10)

  1. Verfahren zum Validieren von Steuerbefehlen einer Haupteinheit eines Fahrzeugs, das Verfahren umfassend: empfangen eines Steuerbefehls; empfangen eines oder mehrerer Eingabebefehle eines Eingabehandlers (106, 206); speichern der empfangenen Eingabebefehle in einem Cache; bestimmen eines Eingabebefehls, der mit dem empfangenen Steuerbefehl verknüpft ist; validieren des empfangenen Steuerbefehls mittels wenigstens einem der gespeicherten Eingabebefehle, umfassend: überprüfen, ob der bestimmte Eingabebefehl mit wenigstens einem der gespeicherten Eingabefehle übereinstimmt; und weiterleiten des empfangenen Steuerbefehls, falls der empfangene Steuerbefehl erfolgreich validiert wurde.
  2. Verfahren nach Anspruch 1, das Verfahren weiterhin umfassend: senden einer Anfrage an den Eingabehandler (106, 206), um einen oder mehrere Eingabebefehle von dem Eingabehandler (106, 206) zu empfangen.
  3. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Bestimmen des Eingabebefehls das Bestimmen einer Regel für den empfangenen Steuerbefehl aus einer Menge vordefinierter Regeln für Steuerbefehle umfasst, wobei jede Regel den Eingabebefehl für einen Steuerbefehl definiert.
  4. Verfahren nach Anspruch 3, wobei das Validieren des empfangenen Steuerbefehls das Ausführen der bestimmten Regel auf die gespeicherten Eingabebefehle umfasst; und/oder wobei das Überprüfen, ob der bestimmte Eingabebefehl mit wenigstens einem der gespeicherten Eingabefehle übereinstimmt, ein Vergleichen der Definition der Eingabefehls der Regel für den empfangenen Steuerbefehl mit den gespeicherten Eingabebefehlen umfasst.
  5. Verfahren nach einem der vorhergehenden Ansprüche, wobei der empfangene Steuerbefehl der Haupteinheit an ein Bordnetzwerk (110) des Fahrzeugs weitergeleitet wird.
  6. Verfahren nach einem der vorhergehenden Ansprüche, wobei der empfangene Steuerbefehl von einem nicht-vertrauenswürdiges Gastsystem (212) an ein vertrauenswürdiges Gastsystem (214) weitergeleitet wird.
  7. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Validieren des empfangenen Steuerbefehls mittels wenigstens einem der gespeicherten Eingabebefehle ferner umfasst: vergleichen, ob die Art der Benutzerinteraktion des bestimmten Eingabefehls mit wenigstens einem der gespeicherten Eingabefehle übereinstimmt; überprüfen, ob die gespeicherten Eingabefehle innerhalb einer vorgegeben Zeitspanne vor Empfang des Steuerbefehls empfangen wurden; und/oder bestimmen, ob die Position der Benutzerinteraktion des bestimmten Eingabefehls mit wenigstens einem der gespeicherten Eingabefehle übereinstimmt.
  8. Verfahren nach einem der vorhergehenden Ansprüche, das Verfahren ferner umfassend: falls der empfangene Steuerbefehl nicht erfolgreich validiert wurde, verwerfen des empfangenen Steuerbefehls.
  9. Gerät zum Validieren von Steuerbefehlen einer Haupteinheit eines Fahrzeugs, wobei das Gerät dazu ausgebildet ist das Verfahren nach einem der Ansprüche 1 bis 8 auszuführen.
  10. Fahrzeug umfassend ein Gerät zum Validieren von Steuerbefehlen einer Haupteinheit, wobei das Gerät dazu ausgebildet ist, das Verfahren nach einem der Ansprüche 1 bis 8 auszuführen.
DE102015204658.3A 2015-03-16 2015-03-16 Verfahren, Gerät, und Fahrzeug zum Validieren von Steuerbefehlen einer Haupteinheit Pending DE102015204658A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102015204658.3A DE102015204658A1 (de) 2015-03-16 2015-03-16 Verfahren, Gerät, und Fahrzeug zum Validieren von Steuerbefehlen einer Haupteinheit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015204658.3A DE102015204658A1 (de) 2015-03-16 2015-03-16 Verfahren, Gerät, und Fahrzeug zum Validieren von Steuerbefehlen einer Haupteinheit

Publications (1)

Publication Number Publication Date
DE102015204658A1 true DE102015204658A1 (de) 2016-09-22

Family

ID=56853068

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015204658.3A Pending DE102015204658A1 (de) 2015-03-16 2015-03-16 Verfahren, Gerät, und Fahrzeug zum Validieren von Steuerbefehlen einer Haupteinheit

Country Status (1)

Country Link
DE (1) DE102015204658A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220197283A1 (en) * 2017-09-07 2022-06-23 Tusimple, Inc. System and method for using human driving patterns to manage speed control for autonomous vehicles
US11983008B2 (en) * 2022-03-09 2024-05-14 Tusimple, Inc. System and method for using human driving patterns to manage speed control for autonomous vehicles

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110023115A1 (en) * 2009-07-21 2011-01-27 Wright Clifford C Host intrusion prevention system using software and user behavior analysis
US20110197276A1 (en) * 2008-10-10 2011-08-11 Leonid Dorrendorf System and method for validating and controlling applications

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110197276A1 (en) * 2008-10-10 2011-08-11 Leonid Dorrendorf System and method for validating and controlling applications
US20110023115A1 (en) * 2009-07-21 2011-01-27 Wright Clifford C Host intrusion prevention system using software and user behavior analysis

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220197283A1 (en) * 2017-09-07 2022-06-23 Tusimple, Inc. System and method for using human driving patterns to manage speed control for autonomous vehicles
US11983008B2 (en) * 2022-03-09 2024-05-14 Tusimple, Inc. System and method for using human driving patterns to manage speed control for autonomous vehicles

Similar Documents

Publication Publication Date Title
DE102013003040B4 (de) Kraftfahrzeug mit nachträglich per Anwendungsprogramm veränderbarem Fahrverhalten sowie Verfahren hierzu
EP3437012B1 (de) Verfahren, prozessor und gerät zur integritätsprüfung von nutzerdaten
DE102013202253A1 (de) Schaltung zur Steuerung eines Beschleunigungs-, Brems- und Lenksystems eines Fahrzeugs
DE102012205301A1 (de) Rechner-Architektur zur Steuerung einer elektronischen Datenverarbeitung in einem Fahrzeug
WO2019072840A1 (de) Vorrichtung zur absicherung von diagnosebefehlen an ein steuergerät und entsprechendes kraftfahrzeug
DE102014117971B4 (de) Verfahren zur Datenverarbeitung zum Ermitteln, ob bei einer Ausführung eines Programms ein Fehler aufgetreten ist, und Datenverarbeitungsanordnungen zum Erzeugen von Programm-Code
WO2019242971A1 (de) Recheneinrichtung und betriebsverfahren hierfür
EP3139354B1 (de) Verfahren zur einstellung einer betriebsart eines sicherheitssystems
DE102015204658A1 (de) Verfahren, Gerät, und Fahrzeug zum Validieren von Steuerbefehlen einer Haupteinheit
DE102017218329A1 (de) Verfahren und System zum Steuern des Zugangs zu einer authentifizierungsbehafteten Funktion
DE112020002799T5 (de) Fahrzeugsteuervorrichtung, fahrzeuganzeigesystem und fahrzeuganzeigesteuerverfahren
DE102015204659A1 (de) Verfahren, Gerät, und Fahrzeug umfassend das Gerät zur Zustandsattestierung einer Haupteinheit
EP3819804A1 (de) Integritätsüberprüfung eines registerinhalts
EP3682317B1 (de) Verfahren zum betrieb einer berührungssensitiven, flächigen eingabevorrichtung einer gesamtvorrichtung und gesamtvorrichtung
DE102015113207A1 (de) Verfahren zum Autorisieren neu angeschlossener Geräte beim Anschließen an einen Computer über eine Schnittstelle
EP3323050A1 (de) Zwischenmodul zur steuerung einer kommunikation zwischen einem datenverarbeitungsgerät und einem peripheriegerät
DE102020210734A1 (de) Befehlsfolgenvalidierung
DE102015218882A1 (de) Verfahren und Vorrichtung zum Prüfen von Berechnungsergebnissen in einem System mit mehreren Recheneinheiten
EP3752911A1 (de) Verfahren zum installieren eines programmcodepakets in ein gerät sowie gerät und kraftfahrzeug
DE202019104521U1 (de) Gerät zur Auswahl einer Betriebsart eines Sicherheitssystems
DE102017202787A1 (de) Verfahren und Validierungseinheit zum Steuern des Ladens von in IT-Systemen, insbesondere Eingebetteten Systemen, benutzbaren Krypto-Schlüsseln, insbesondere "Key BLOBs"
WO2024056443A1 (de) Verfahren zum überprüfen von daten in einer recheneinheit
DE10345468B4 (de) Verfahren zur sicheren Ausführung von Programmen
EP3347848B1 (de) Speicherprogrammierbarer baustein und verfahren zur geschützten übertragung von daten auf einen speicherprogrammierbaren baustein
DE102020002055A1 (de) Datenverarbeitungsvorrichtung zur Provisionierung eines Hardware-Prozessorsystems

Legal Events

Date Code Title Description
R163 Identified publications notified
R012 Request for examination validly filed