DE102018101479A1 - Steuerungsschnittstelle für ein autonomes fahrzeug - Google Patents

Steuerungsschnittstelle für ein autonomes fahrzeug Download PDF

Info

Publication number
DE102018101479A1
DE102018101479A1 DE102018101479.1A DE102018101479A DE102018101479A1 DE 102018101479 A1 DE102018101479 A1 DE 102018101479A1 DE 102018101479 A DE102018101479 A DE 102018101479A DE 102018101479 A1 DE102018101479 A1 DE 102018101479A1
Authority
DE
Germany
Prior art keywords
computer
vehicle
authentication
control
message
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
DE102018101479.1A
Other languages
English (en)
Inventor
Michael Talamonti
Walter Joseph Talamonti
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.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies LLC
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 Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of DE102018101479A1 publication Critical patent/DE102018101479A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/08Interaction between the driver and the control system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/08Interaction between the driver and the control system
    • B60W50/082Selecting or switching between different modes of propelling
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0011Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement
    • G05D1/0022Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement characterised by the communication link
    • G05D1/226
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2540/00Input parameters relating to occupants
    • B60W2540/043Identity of occupants
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2540/00Input parameters relating to occupants
    • B60W2540/215Selection or confirmation of options
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/4026Bus for use in automation systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles

Abstract

Ein System beinhaltet einen Steuerungscomputer, der dazu programmiert ist, eine auf einem Chiffrierungsschlüssel basierende Authentifizierung durchzuführen, nachdem er mit einem Fahrzeugkommunikationsnetzwerk verbunden wird. Der Rechner ist dazu programmiert, nach Authentifizierung durch einen Fahrzeugcomputer, der physisch ans Kommunikationsnetzwerk angeschlossen ist, den Fahrzeugbetrieb zu steuern, einschließlich mindestens eines von Antrieb, Bremsen und Lenken.

Description

  • STAND DER TECHNIK
  • Ein Fahrzeug kann ganz oder zumindest teilweise ohne Eingreifen eines Betreibers betrieben werden. Ein derartiges Fahrzeug wird manchmal als autonomes oder selbstfahrendes Fahrzeug bezeichnet. Beispielsweise kann ein Fahrzeugcomputer ein oder mehrere Fahrzeugvorgänge steuern, wie zum Beispiel Lenken, Bremsen, Antriebsstrang usw. Beispielsweise kann einem autonomen Fahrzeug das Lenkrad, ein Bremspedal usw. fehlen. Doch in manchen Fällen, wie zum Beispiel bei Reparatur, Wartung usw., ist eine manuelle Steuerung des Fahrzeugbetriebs notwendig. Daher kann ein externes Gerät benutzt werden, um manuell zumindest Teil eines Fahrzeugvorgangs zu steuern.
  • Figurenliste
    • 1 ist ein Diagramm, das ein beispielhaftes Fahrzeug und einen beispielhaften Steuerungscomputer zeigt, der mit einem Fahrzeugcomputer verbunden ist.
    • 2 ist ein Ablaufdiagramm eines beispielhaften Prozesses für den Steuerungscomputer aus 1, um das Fahrzeug zu steuern.
    • 3A-3B beinhalten ein Ablaufdiagramm eines beispielhaften Prozesses für einen Fahrzeugcomputer, um den Steuerungscomputer zu authentifizieren.
    • 4 ist ein Ablaufdiagramm eines beispielhaften Prozesses für einen Ferncomputer, um Authentifizierungsdaten bereitzustellen.
  • DETAILLIERTE BESCHREIBUNG
  • EINFÜHRUNG
  • Hierin wird ein System offenbart, das einen Steuerungscomputer umfasst, der nach Verbinden mit einem Fahrzeugkommunikationsnetzwerk zur Durchführung einer Authentifizierung basierend auf einem Schlüssel programmiert ist, der von einem Chiffrierungstoken empfangen wird. Der Computer ist dazu programmiert, nach Authentifizierung durch einen Fahrzeugcomputer, der permanent und physisch an das Kommunikationsnetzwerk angeschlossen ist, den Fahrzeugbetrieb zu steuern, einschließlich mindestens eines von Antrieb, Bremsen und Lenken.
  • BEISPIELHAFTE SYSTEMELEMENTE
  • 1 zeigt ein beispielhaftes Fahrzeug 100, eine Steuerungsvorrichtung 150 und einen Ferncomputer 180. Das Fahrzeug 100 kann auf verschiedene bekannte Weisen angetrieben werden, wie zum Beispiel mit einem Elektromotor und/oder einem Verbrennungsmotor. Das Fahrzeug 100 beinhaltet den Computer 110, Aktuator(en) 120, Sensor(en) 130, eine Benutzerschnittstellenvorrichtung 140 und andere Komponenten wie im Folgenden besprochen.
  • Der Computer 110 beinhaltet einen Prozessor und einen Speicher wie bekannt. Der Speicher beinhaltet eine oder mehrere Formen computerlesbarer Medien und speichert vom Computer 110 ausführbare Anweisungen zum Durchführen verschiedener Vorgänge, einschließlich wie hierin offenbart.
  • Der Computer 110 kann das Fahrzeug 100 in einem autonomen, halbautonomen oder nichtautonomen Modus betreiben. Zu den Zwecken dieser Offenbarung wird ein autonomer Modus als ein Modus definiert, in dem jedes von Antrieb, Bremsen und Lenken des Fahrzeugs 100 vom Computer 110 gesteuert werden; in einem halbautonomen Modus steuert der Computer 110 ein oder zwei von Antrieb, Bremsen und Lenken des Fahrzeugs 100; in einem nichtautonomen Modus steuert ein Benutzer des Fahrzeugs 100 Antrieb, Bremsen und Lenken des Fahrzeugs 100.
  • Der Computer 110 kann Programmierungen beinhalten, um eines oder mehrere der Folgenden zu steuern: Fahrzeugbremsen, Antrieb (z. B. Steuerung der Beschleunigung im Fahrzeug durch Steuern eines oder mehrerer eines Verbrennungsmotors, Elektromotors, Hybridmotors usw.), Lenkung, Klimaanlage, Innen- und/oder Außenbeleuchtung usw., sowie um zu bestimmen, ob und wann der Computer 110 im Gegensatz zu einem menschlichen Betreiber derartige Vorgänge steuern soll.
  • Der Computer 110 kann mehr als eine andere Rechenvorrichtung beinhalten oder beispielsweise über einen Fahrzeugkommunikationsbus wie unten genauer beschrieben gekoppelt sein, zum Beispiel Steuerungen oder Ähnliches, die im Fahrzeug mit enthalten sind, um verschiedene Fahrzeugkomponenten zu überwachen und/oder zu steuern; beispielsweise können Steuerungen elektronische Steuerungseinheiten (ECU) wie zum Beispiel eine Antriebssteuerung, eine Bremssteuerung, eine Lenksteuerung usw. beinhalten. Der Computer 110 ist allgemein zur Kommunikation auf einem Fahrzeugkommunikationsnetzwerk ausgestaltet, wie zum Beispiel einem Controller Area Network (CAN) oder Ähnlichem.
  • Über das Netzwerk des Fahrzeugs 100 kann der Computer 110 Nachrichten an verschiedene Vorrichtungen im Fahrzeug 100 senden und/oder Nachrichten von den verschiedenen Vorrichtungen empfangen; z. B. Steuerungen, Aktuatoren 120, Sensoren 130 usw. Alternativ oder zusätzlich dazu, in Fällen, wenn der Computer 110 tatsächlich mehrere Vorrichtungen umfasst, kann das Fahrzeugkommunikationsnetzwerk für Kommunikationen zwischen Vorrichtungen benutzt werden, die in dieser Offenbarung als der Computer 110 dargestellt werden. Ferner können, wie unten erwähnt, verschiedene Steuerungen und/oder Sensoren 130 dem Computer 110 über das Fahrzeugkommunikationsnetzwerk Daten bereitstellen. Zudem kann der Computer 110 über das Kommunikationsnetzwerk des Fahrzeugs 100 Nachrichten an eine externe Steuerungsvorrichtung 150 senden und/oder Nachrichten von der externen Steuerungsvorrichtung 150 empfangen, z. B. über eine verdrahtete und/oder drahtlose Verbindung zwischen der Steuerungsvorrichtung 150 und einer Kommunikationsschnittstelle eines Fahrzeugs 100.
  • Zudem kann der Computer 110 dazu konfiguriert sein, über eine Fahrzeug-an-Infrastruktur-(V-to-I)Schnittstelle mit einem Ferncomputer 180 via ein Netzwerk 190 zu kommunizieren. Das Netzwerk 190 stellt einen oder mehrere Mechanismen dar, durch die der Computer 110 und der Ferncomputer 180 miteinander kommunizieren können, und kann ein oder mehrere verschiedener verdrahteter oder drahtloser Kommunikationsmechanismen sein, einschließlich einer beliebigen Kombination verdrahteter (z. B. Kabel und Faser) und/oder drahtloser (z. B. Mobil-, Drahtlos-, Satellit-, Mikrowellen- und Radiofrequenz-) Kommunikationsmechanismen und einer beliebigen gewünschten Netzwerktopologie (oder Topologien, falls mehrere Kommunikationsmechanismen benutzt werden). Zu beispielhaften Kommunikationsnetzwerken zählen drahtlose Kommunikationsnetzwerke (z. B. Benutzen eines oder mehrerer Mobilnetzwerke, Bluetooth, IEEE 802.11 usw.), dedizierte Nahbereichskommunikation (Dedicated Short Range Communications, DSRC), Lokalnetze (Local Area Network, LAN) und/oder Großraumnetze (Wide Area Networks, WAN), einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.
  • Wie bereits erwähnt, beinhalten die im Speicher gespeicherten und in den vom Computer 110 ausgeführten Anweisungen Programmierungen zum Betreiben einer oder mehrerer der Komponenten des Fahrzeugs 100, z. B. Bremsen, Lenken, Antrieb usw., ohne Eingriff eines menschlichen Betreibers. Mithilfe von im Computer 110 empfangenen Daten, z. B. den Sensordaten von den Sensoren 130 usw., kann der Computer 110 ohne einen Fahrer zum Betreiben des Fahrzeugs verschiedene Bestimmungen treffen und/oder verschiedene Fahrzeugkomponenten und/oder -vorgänge steuern. Beispielsweise kann der Computer 110 Programmierungen beinhalten, um Fahrzeugverhalten wie zum Beispiel Geschwindigkeit, Beschleunigung, Lenkung usw. zu regeln, sowie taktisches Verhalten wie zum Beispiel eine Entfernung zwischen Fahrzeugen und/oder einen Zeitraum zwischen Fahrzeugen, einen Minimalabstand zwischen Fahrzeugen für Spurwechsel, minimaler Linksabbiegeweg, Mindestzeit bis zur Ankunft an einem bestimmten Ort, Mindestzeit zur Überquerung einer Kreuzung (ohne Ampel) usw.
  • Die Sensoren 130 können eine Vielzahl von bekannten Vorrichtungen zur Bereitstellung von Daten über den Kommunikationsbus des Fahrzeugs beinhalten. Beispielsweise können die Sensoren 130 einen oder mehrere Kamerasensoren 130 usw. beinhalten, die zur Bereitstellung von Daten, die zumindest einen Teil des Fahrzeuginneren und/oder -äußeren mit einschließen, im Fahrzeug 100 angeordnet sind. Die Daten können vom Computer 110 über eine beliebige geeignete Schnittstelle empfangen werden.
  • Die Aktuatoren 120 sind eine Vielzahl bekannter, via Schaltkreise, Chips oder andere elektronische Komponenten umgesetzte Vorrichtungen, die gemäß den jeweiligen Steuersignalen, wie bekannt, verschiedene Fahrzeugsubsysteme auslösen können. Die Aktuatoren 120 können daher dazu benutzt werden, Bremsen, Beschleunigung und Lenkung des Fahrzeugs 100 zu steuern.
  • Die Benutzerschnittstellenvorrichtung 140 kann einen Touchscreen, ein Interactive Voice Response (IVR)-System und/oder bekannte Eingabe-/Ausgabemechanismen beinhalten und kann Eingabedaten von einem Benutzer und/oder Ausgabedaten an den Benutzer empfangen. Beispielsweise kann die Benutzerschnittstellenvorrichtung 140 einen Touchscreen aufweisen, um einen Zugangscode einzugeben und/oder eine Konfiguration des Fahrzeugs 100 abzuändern, z. B. einen Betriebsmodus des Fahrzeugs 100 zu einem nichtautonomen Modus zu ändern. In einem Beispiel ist die Benutzerschnittstellenvorrichtung 140 in einem Inneren des Fahrzeugs 100 angeordnet und an einem Armaturenbrett des Fahrzeugs 100 montiert.
  • Der Ferncomputer 180 ist ein oder mehrere Ferncomputer, der bzw. die mit dem Computer 110 über das Netzwerk 190 kommunizieren, beispielsweise ein drahtloses Kommunikationsnetzwerk wie z. B. Long-Term Evolution (LTE) und/oder ein verdrahtetes Kommunikationsnetzwerk wie z. B. Ethernet.
  • Wie oben erwähnt kann der Computer 110 des Fahrzeugs 100 den Betrieb des Fahrzeugs 100 steuern, einschließlich mindestens eines von Antrieb, Bremsen und Lenken, z. B. in einem autonomen oder halbautonomen Modus. Aus verschiedenen Gründen, wie zum Beispiel Wartung, Reparatur usw. des Fahrzeugs 100, kann jedoch ein Benutzer zumindest Teil des Betriebs des Fahrzeugs 100, wie zum Beispiel die Lenkung eines Fahrzeugs 100, über die Steuerungsvorrichtung 150 steuern, z. B. ein Handgerät einschließlich Button(s), einen Touchscreen, einen Hebel usw. Die Steuerungsvorrichtung 150 kann mit dem Kommunikationsnetzwerk des Fahrzeugs 100 über eine verdrahtete und/oder eine drahtlose Kommunikationsschnittstelle kommunizieren.
  • Die Steuerungsvorrichtung 150 kann einen Steuerungscomputer 160 beinhalten. Der Steuerungscomputer 160 beinhaltet einen Prozessor und einen Speicher wie bekannt. Der Speicher beinhaltet eine oder mehrere Formen computerlesbarer Medien und speichert vom Computer 160 ausführbare Anweisungen zum Durchführen verschiedener Vorgänge, einschließlich der hierin offenbarten. Beispielsweise kann der Steuerungscomputer 160 eine Nachricht senden, einschließlich eines Befehls zum Auslösen beispielsweise eines Bremsaktuators 120 des Fahrzeugs 100.
  • In einem Beispiel, um zu verhindern, dass ein Eindringlingscomputer einen Vorgang des Fahrzeugs 100 steuert, kann der Computer 110 des Fahrzeugs 100 dazu programmiert werden, einen Steuerungscomputer 160 zu authentifizieren, der anfragt, auf den Computer 110 des Fahrzeugs 100 zuzugreifen und einen Vorgang des Fahrzeugs 100 zu steuern. Der Steuerungscomputer 160 kann dazu programmiert sein, eine Authentifizierung basierend auf einem Schlüssel durchzuführen, z. B. einer Kombination aus Zahlen und/oder Buchstaben, der von einem Chiffrierungstoken 170 der Steuerungsvorrichtung 150 nach Verbindung mit einem Kommunikationsnetzwerk des Fahrzeugs 100 empfangen wird. Der Steuerungscomputer 160 kann dazu programmiert sein, nach Authentifizierung durch einen Computer 110 des Fahrzeugs 100, der permanent und physisch an Kommunikationssystem angeschlossen ist, einen Vorgang des Fahrzeugs 100 zu steuern, einschließlich mindestens eines von Antrieb, Bremsen, Lenken. „Permanent und physisch“ im Kontext der vorliegenden Offenbarung bedeutet, während der Herstellung des Fahrzeugs 100 am Fahrzeug 100 montiert zu werden, z. B. mithilfe von Schrauben, Clips usw. mechanisch an eine Karosseriekomponente des Fahrzeugs 100 gekoppelt zu werden, und möglicherweise auch während der elektrischen Verkabelung des Fahrzeugs 100 elektrisch an andere elektrische Komponente(n) des Fahrzeugs 100 gekoppelt zu werden. Damit kann der Computer 110 des Fahrzeugs 100 verhindern, dass ein Eindringlingscomputer so tut, als sei er ein Steuerungscomputer 160 einer autorisierten Steuerungsvorrichtung 150, z. B. sich als einen solchen ausgibt, um den Betrieb des Fahrzeugs 100 zu steuern. In einem Beispiel kann eine autorisierte Steuerungsvorrichtung 150 Vorrichtung(en) beinhalten, die von einem Hersteller des Fahrzeugs 100 hergestellt wurden, oder eine zugelassene Drittparteienvorrichtung. Zudem kann der Computer 110 des Fahrzeugs 100 und ein Steuerungscomputer 160 Techniken wie zum Beispiel Chiffrierung benutzen, um sichere und vertrauliche Kommunikationen miteinander zu erzielen.
  • In einem weiteren Beispiel kann der Computer 110 des Fahrzeugs 100 dazu programmiert sein, von einer Benutzerschnittstellenvorrichtung 140 des Fahrzeugs 100 eine Anfrage einschließlich eines Zugangscodes zu empfangen, z. B. eines Geheimcodes, der bestimmten Parteien bekannt ist, wie Fahrzeugvertriebshändlern, z. B. Autohäusern, zum Aktivieren eines nichtautonomen Modus des Fahrzeugs 100. Der Computer 110 des Fahrzeugs 100 kann den nichtautonomen Modus des Fahrzeugs 100 aktivieren, wenn bestimmt wurde, dass der empfangene Zugangscode mit einem erwarteten Zugangscode übereinstimmt, z. B. basierend auf im Computer 110 des Fahrzeugs 100 gespeicherten Informationen.
  • In einem Beispiel, wenn der Computer 110 des Fahrzeugs 100 bestimmt, dass der empfangene Zugangscode mit einem erwarteten Zugangscode übereinstimmt, kann der Computer 110 des Fahrzeugs 100 einen nichtautonomen Modus des Fahrzeugs 100 zu aktivieren. Beispielsweise kann der Computer 110 des Fahrzeugs 100 dazu programmiert sein, den Betrieb des Fahrzeugs 100 basierend auf Befehlen zu steuern, die vom Steuerungscomputer 160 empfangen werden. In einem anderen Beispiel kann der Computer 110 des Fahrzeugs 100 zusätzlich den Steuerungscomputer 160 authentifizieren, nachdem der Zugangscode verifiziert wurde. Alternativ dazu kann der Computer 110 des Fahrzeugs 100 dazu programmiert sein, den Steuerungscomputer 160 zuerst zu authentifizieren und dann die Verifizierung des Zugangscodes durchzuführen, bevor ein nichtautonomer Modus des Fahrzeugs 100 aktiviert wird.
  • Chiffrierung ist bekanntermaßen eine Technik zum Konvertieren von Informationen von einem verständlichen in einen unverständlichen Zustand. Der Absender und ein beabsichtigter Empfänger einer chiffrierten Nachricht, z. B. der Steuerungscomputer 160 und der Computer 110 des Fahrzeugs 100, können eine Chiffrierungs- (Konvertierung zum ursprünglichen verständlichen Zustand) Technik teilen, z. B. einschließlich eines geteilten Schlüssels oder Ähnlichem, die notwendig ist, um die ursprünglichen verständlichen Informationen wiederherzustellen. Der Absender und der beabsichtigte Empfänger halten damit eine ungewollte Partei, wie zum Beispiel einen Eindringlingscomputer, davon ab, die Informationen zu dechiffrieren. Verschiedene bekannte Techniken wie zum Beispiel RSA (Rivest, Shamir und Adleman) können dazu benutzt werden, eine chiffrierte Kommunikation zwischen den beiden Parteien bereitzustellen, zum Beispiel dem Steuerungscomputer 160 und dem Computer 110 des Fahrzeugs 100. Beispielsweise ist in einer RSA-basierten Chiffrierung ein Chiffrierungsschlüssel zur Kommunikation mit einer beabsichtigten empfangenden Partei jedem bekannt. Jedoch hat nur die beabsichtigte empfangende Partei Zugang auf einen Chiffrierungsschlüssel, der eine Dechiffrierung einer Nachricht ermöglicht, die basierend auf dem Chiffrierungsschlüssel chiffriert ist.
  • Die Authentifizierung einer digitalen Kommunikation oder Nachricht wie hierin beschrieben bedeutet das Umsetzen eines Plans zum Bestimmen einer Authentizität (oder deren Mangels) der Kommunikation oder Nachricht, z. B. eine Nachricht von einem Steuerungscomputer 160 an den Computer 110 des Fahrzeugs 100 zur Anfrage eines Bremsvorgangs. Im Gegensatz zur Identifizierung, die sich auf einen Akt des Angebens oder anderweitigen Anzeigens einer Identität bezieht, z. B. eine Verschickt-Nachricht vom Steuerungscomputer 160 einschließlich einer Kennung einer bekannten Steuerungsvorrichtung 150, beinhaltet Authentifizierung das Bestätigen dieser Identität. Im Gegensatz zur Chiffrierung, die sich aufs Schützen einer Kommunikation zwischen zwei Parteien vor einer Drittpartei bezieht, beinhaltet Authentifizierung das Bestätigen, dass die empfangene Nachricht von einem bekannten Sender statt einer anderen Partei erstellt wurde. Verschiedene bekannte Techniken wie zum Beispiel eine Authentifizierungsunterschrift (oder digitale Unterschrift) können zur Authentifizierung benutzt werden. Eine gültige Authentifizierungsunterschrift, die in einer empfangenen Nachricht enthalten ist, kann dem Computer 110 des Fahrzeugs 100 einen Grund geben, zu schlussfolgern, dass die Nachricht von einem bekannten Sender erstellt wurde, z. B. einer bekannten Steuerungsvorrichtung 150.
  • Beispielsweise kann der Steuerungscomputer 160 programmiert sein, um die Authentifizierung durch das Senden einer Nachricht durchzuführen, indem eine Nachricht einschließlich einer Authentifizierungsunterschrift an den Computer 110 des Fahrzeugs 100 geschickt wird. Die Authentifizierungsunterschrift kann auf Daten basieren, die beiden Parteien bekannt sind, z. B. eine Kennung des Senders, eine Ortszeit usw. und/oder eines Schlüssels, der von einem Chiffrierungstoken 170 der Steuerungsvorrichtung 150 empfangen wird. Daher kann ein Empfänger die Authentifizierungsunterschrift basierend auf dem Chiffrierungsschlüssel, dem Dechiffrierungsschlüssel und/oder den bekannten Daten, wie zum Beispiel der Kennung des Steuerungscomputers 160, verifizieren.
  • Der Computer 110 des Fahrzeugs 100 kann dazu programmiert sein, eine Nachricht zu empfangen, die von dem Steuerungscomputer 160 gesendet wird, und den Steuerungscomputer 160 basierend auf der Authentifizierungsunterschrift authentifizieren. In einem Beispiel kann der Computer 110 des Fahrzeugs 100 programmiert sein, den Steuerungscomputer 160 basierend auf in dem Computer 110 des Fahrzeugs 100 gespeicherten oder anderweitig von dem Computer 110 des Fahrzeugs 100 zugreifbare Daten zu authentifizieren. Beispielsweise kann der Computer 110 des Fahrzeugs 100 den Steuerungscomputer 160 authentifizieren, indem bestimmt wird, ob die Authentifizierungsunterschrift in einer Liste gültiger, im Computer 110 des Fahrzeugs 100 oder einem vom Computer 110 des Fahrzeugs 100 zugreifbaren Speicher gespeicherten Authentifizierungsunterschriften enthalten ist. In einem weiteren Beispiel kann der Computer 110 des Fahrzeugs 100 eine erwartete Unterschrift für die jeweilige Steuerungsvorrichtung 150 bestimmen, z. B. eine Kombination einer Kennung der bekannten Steuerungsvorrichtung 150 und der aktuellen Zeit, und verifizieren, ob die Authentifizierungsunterschrift der empfangenen Nachricht die erwartete Unterschrift enthält. In einem anderen Beispiel kann der Computer 110 des Fahrzeugs 100 die erwartete Unterschrift basierend auf einem Ergebnis eines Vorgangs, z. B. Multiplikation, einer Kennung der Steuerungsvorrichtung 150, der aktuellen Zeit usw. bestimmen. etc. Anders ausgedrückt kann der Computer 110 des Fahrzeugs 100 sich im Klaren darüber sein, wie der Steuerungscomputer 160 seine Authentifizierungsunterschrift bestimmt.
  • In einem weiteren Beispiel, zur Verhinderung von Identitätsbetrug und um Vertraulichkeit zu erzielen, können Techniken benutzt werden, die sowohl Chiffrierung einer Nachricht als auch Authentifizierung eines Nachrichtensenders beinhalten. Anders ausgedrückt kann ein beabsichtigter Empfänger einer solchen Nachricht nicht nur eine vertrauliche Kommunikation mit dem Sender haben, jedoch auch den Sender authentifizieren. Beispielsweise kann der Steuerungscomputer 160 dazu programmiert sein, die Authentifizierung durch Chiffrierung der Nachricht basierend auf dem von dem vom Chiffrierungstoken 170 der Steuerungsvorrichtung 150 erhaltenen Schlüssel durchzuführen. Anders ausgedrückt kann ein Steuerungscomputer 160 eine gesamte Nachricht basierend auf dem Schlüssel chiffrieren, der auf Daten wie einer aktuellen Zeit, einer eindeutigen Kennung für jeden Steuerungscomputer 160 wie zum Beispiel einer Seriennummer, einer Kennung des Fahrzeugs 100 usw. basiert. Daher kann eine von dem Computer 110 des Fahrzeugs 100 empfangene Nachricht basierend auf einem Chiffrierungsschlüssel chiffriert werden, der zumindest teilweise von Daten abhängt, die spezifisch für einen jeweiligen Sender sind, z. B. einer Kennung, einer Seriennummer usw.
  • In einem Beispiel kann ein Chiffrierungstoken 170 der Steuerungsvorrichtung 150 den Schlüssel basierend auf Daten und einer Funktion erzeugen, die sowohl dem Chiffrierungstoken 170 und dem Computer 110 des Fahrzeugs 100 bekannt ist. Beispielsweise können die bekannten Daten Informationen wie zum Beispiel die aktuelle Zeit, eine Kennung des Steuerungscomputers 110, eine aus einer Zahl bekannter Zahlen ausgewählte Zahl usw. beinhalten. Eine Funktion kann mindestens ein Verfahren zum Erzeugen eines Chiffrierungsschlüssels basierend auf den bekannten Daten wie zum Beispiel einer aktuellen Zeit usw. beinhalten. Eine Funktion kann einen Vorgang beinhalten, z. B. einen mathematischen Vorgang wie Multiplikation, Division usw., um den Chiffrierungsschlüssel zu erzeugen. Der Empfänger, z. B. der Computer 110 des Fahrzeugs 100, kann Zugang auf die bekannten Daten und/oder die Funktion haben, um einen Dechiffrierungsschlüssel zu erzeugen, der dazu benutzt werden kann, die empfangene Nachricht in eine verständliche Nachricht zu konvertieren.
  • Daher können Chiffrierung und Dechiffrierung zumindest teilweise auf Informationen basieren, die von einem Chiffrierungstoken 170 der Steuerungsvorrichtung 150 erzeugt wurden. Daher kann der Computer 110 des Fahrzeugs 100 dazu in der Lage sein, eine Identifizierung der Steuerungsvorrichtung 150 zu authentifizieren. Beispielsweise kann der Computer 110 des Fahrzeugs 100 dazu programmiert sein, die empfangene chiffrierte Nachricht basierend auf einem Dechiffrierungsschlüssel zu dechiffrieren, der vom Computer 110 des Fahrzeugs 100 erzeugt wird. Zudem kann der Computer 110 des Fahrzeugs 100 dazu programmiert sein, eine Authentifizierungsunterschrift zu dechiffrieren, die in der empfangenen Nachricht enthalten ist, und den Sender basierend auf der dechiffrierten Authentifizierungsunterschrift zu authentifizieren. Ein Chiffrierungstoken 170 kann in Form elektronischer Komponenten wie z. B. einem Chip und/oder einem Programm umgesetzt sein, das beispielsweise auf einem Prozessor ausführbar ist, der im Steuerungscomputer 160 beinhaltet ist.
  • In einem anderen Beispiel kann ein Dreiparteien-Authentifizierungs- und/oder Chiffrierungsmechanismus benutzt werden. Beispielsweise kann ein Steuerungscomputer 160 und ein Computer 110 des Fahrzeugs 100 die Schlüssel und/oder die Authentifizierungsunterschrift zumindest teilweise auf Informationen bestimmen, die von einer Drittpartei empfangen werden, z. B. einem Ferncomputer 180. Anders ausgedrückt kann der Steuerungscomputer 160 und der Computer 110 des Fahrzeugs 100 sich nicht nur auf dem Computer 110 des Fahrzeugs 100 und dem jeweiligen Steuerungscomputer 160 bekannte Informationen, sondern auch auf von einer Drittpartei, wie z. B. dem Ferncomputer 180, empfangene Informationen verlassen.
  • In einem Beispiel kann der Steuerungscomputer 160 dazu programmiert sein, die Authentifizierung durchzuführen, indem eine Nachricht einschließlich z. B. einer Kennung des Steuerungscomputers 160, einer Kennung des Fahrzeugs 100 und/oder des von dem Chiffrierungstoken 170 des Steuerungscomputers 160 erzeugten Schlüssels an den Ferncomputer 180 gesendet wird. Der Steuerungscomputer 160 kann dann eine vorläufige Authentifizierungsunterschrift vom Ferncomputer 180 erhalten, zumindest teilweise basierend auf der gesendeten Nachricht. Die vorläufige Authentifizierungsunterschrift kann vom Ferncomputer 180 basierend auf den empfangenen Informationen und/oder Daten, die nur dem Ferncomputer 180 bekannt sind, z. B. einem zufälligen Zahlenerzeuger, erzeugt werden.
  • In einem anderen Beispiel wird die vorläufige Authentifizierungsunterschrift zumindest teilweise basierend auf einer Identifikationsnummer des Fahrzeugs 100, einer aktuellen Zeit und einer Kennung des Steuerungscomputers 160 erzeugt. Der Steuerungscomputer 160 kann eine Authentifizierungsanfrage an den Computer 110 des Fahrzeugs 100 senden, zumindest teilweise basierend auf der vorläufigen Authentifizierungsunterschrift. Da die empfangene Nachricht zumindest teilweise von den von der Drittpartei empfangenen Informationen abhängt, z. B. dem Ferncomputer 180, ist es möglich, dass der Computer 110 des Fahrzeugs 100 Informationen von dem Ferncomputer 180 braucht, um die empfangene Nachricht zu verstehen. In einem Beispiel kann der Computer 110 des Fahrzeugs 100 dazu programmiert sein, Daten zu empfangen, die mit der vorläufigen Authentifizierungsunterschrift vom Ferncomputer 180 assoziiert sind. Beispielsweise kann der Ferncomputer 180 Daten an den Computer 110 des Fahrzeugs 100 senden, die den Computer 110 des Fahrzeugs 100 in die Lage versetzen, die vorläufige Authentifizierungsunterschrift zu bestimmen. Der Computer 110 des Fahrzeugs 100 kann die vorläufige Authentifizierungsunterschrift basierend auf den empfangenen Daten und anderen, dem Computer 110 des Fahrzeugs 100 bekannten Daten, wie zum Beispiel der Kennung des Fahrzeugs 100, bestimmen. Der Computer 110 des Fahrzeugs 100 kann den Steuerungscomputer 160 zumindest teilweise auf den empfangenen Daten authentifizieren. In einem weiteren Beispiel kann eine Kommunikation zwischen dem Ferncomputer 180 und dem Computer 110 des Fahrzeugs 100 chiffriert sein, und/oder eine Kommunikation zwischen dem Ferncomputer 180 und dem Steuerungscomputer 160 kann chiffriert sein. Beispielsweise kann der Ferncomputer 180 Nachrichten an den Computer 110 des Fahrzeugs 100 senden, die mit einem mit dem Computer 110 des Fahrzeugs 100 assoziierten Chiffrierungsschlüssel (auch öffentlicher Schlüssel genannt) chiffriert sind. Der Computer 110 des Fahrzeugs 100 kann die empfangenen Nachrichten basierend auf dem mit dem öffentlichen Schlüssel assoziierten Dechiffrierungsschüssel (auch Geheimschlüssel genannt), der nur dem Computer 110 des Fahrzeugs 100 bekannt ist, dechiffrieren.
  • VERARBEITUNG
  • 2 ist ein Ablaufdiagramm eines beispielhaften Prozesses 200 für den Steuerungscomputer 160 zum Steuern des Fahrzeugs 100. In einem Beispiel kann ein Steuerungscomputer 160 der Steuerungsvorrichtung 150 dazu programmiert sein, Schritte des Prozesses 200 auszuführen.
  • Der Prozess 200 beginnt in einem Entscheidungsblock 205, in dem der Steuerungscomputer 160 bestimmt, ob der Steuerungscomputer 160 mit einem Fahrzeugkommunikationsnetzwerk, z. B. CAN, Ethernet, einem drahtlosen Netzwerk usw. verbunden ist. Beispielsweise kann der Steuerungscomputer 160 basierend auf dem Observieren von Verkehrsdaten auf einem Fahrzeug-CAN oder anderem Kommunikationsbus, z. B. zwischen ECU im Fahrzeug 100 ausgetauschten Nachrichten, bestimmen, dass der Steuerungscomputer 160 mit einem Fahrzeugkommunikationsnetzwerk verbunden ist. Wenn der Steuerungscomputer 160 bestimmt, dass der Steuerungscomputer 160 ist mit einem Fahrzeugkommunikationsnetzwerk des Fahrzeugs 100 verbunden ist, fährt der Prozess 200 mit einem Entscheidungsblock 210 fort; andernfalls kehrt der Prozess 200 zum Entscheidungsblock 205 zurück.
  • Im Entscheidungsblock 210 bestimmt der Steuerungscomputer 160, ob das Fahrzeug 100 in einem nichtautonomen Modus betrieben wird. Beispielsweise kann der Steuerungscomputer 160 vom Computer 110 des Fahrzeugs 100 eine Nachricht erhalten, die anzeigt, dass das Fahrzeug 100 in einem nichtautonomen Modus betrieben wird. Falls der Steuerungscomputer 160 bestimmt, dass das Fahrzeug 100 in einem nichtautonomen Modus betrieben wird, fährt der Prozess 200 mit einem Block 215 fort; andernfalls kehrt der Prozess 200 zum Entscheidungsblock 210 zurück.
  • In Block 215 empfängt der Steuerungscomputer 160 einen Schlüssel von dem Chiffrierungstoken 170, z. B. einen auf einer Kennung des Steuerungscomputers 160, einer aktuellen Zeit, einer Zahlenliste usw. basierenden Schlüssel.
  • Als Nächstes, in einem Entscheidungsblock 220, bestimmt der Steuerungscomputer 160, ob eine Dreiparteien-Authentifizierung zur Kommunikation mit einem Computer 110 des Fahrzeugs 100 benutzt werden kann. In einem Beispiel kann der Steuerungscomputer 160 eine Nachricht vom Computer 110 des Fahrzeugs 100 dahingehend empfangen, ob der Computer 110 des Fahrzeugs 100 eine Dreiparteien-Authentifizierung benutzt. Falls der Steuerungscomputer 160 bestimmt, dass der Computer 110 des Fahrzeugs 100 Dreiparteien-Authentifizierung benutzt, fährt der Prozess 200 mit einem Block 225 fort; andernfalls fährt der Prozess 200 mit einem Block 240 fort.
  • In Block 225 sendet der Steuerungscomputer 160 eine Nachricht einschließlich, in einem Beispiel, des erzeugten Schlüssels, einer Kennung des Steuerungscomputers 160 und einer Kennung des Fahrzeugs 100, an einen Ferncomputer 180. Die versandte Nachricht kann basierend auf einem öffentlichen Schlüssel des Ferncomputers 180 chiffriert sein.
  • Als Nächstes, in einem Entscheidungsblock 230, bestimmt der Steuerungscomputer 160, ob eine vorläufige Authentifizierungsunterschrift vom Ferncomputer 180 empfangen wird. Zusätzlich oder alternativ dazu kann der Steuerungscomputer 160 Daten vom Ferncomputer 180 empfangen und einen neuen Schlüssel basierend auf den vom Ferncomputer 180 empfangenen Daten erzeugen. Empfängt der Steuerungscomputer 160 die vorläufige Authentifizierungsunterschrift, fährt der Prozess 200 mit Block 240 fort; andernfalls kehrt der Prozess zu Entscheidungsblock 230 zurück.
  • In Block 240 sendet der Steuerungscomputer 160 eine Nachricht mit einer Authentifizierungsunterschrift an den Computer 110 des Fahrzeugs 100. Beispielsweise sendet, wenn der Block 240 vom Entscheidungsblock 220 erreicht wird, der Steuerungscomputer 160 eine Nachricht einschließlich einer Authentifizierungsunterschrift, z. B. aus einer Liste von Authentifizierungsunterschriften, die dem Steuerungscomputer 110 und dem Computer 110 des Fahrzeugs 100 bekannt sind. In einem weiteren Beispiel, wenn der Block 240 vom Entscheidungsblock 230 erreicht wird, kann der Steuerungscomputer 160 eine Nachricht einschließlich der vorläufigen Authentifizierungsunterschrift senden. Zusätzlich oder alternativ dazu kann der Steuerungscomputer 160 die Nachricht basierend auf vom Ferncomputer 180 empfangenen Daten chiffrieren.
  • Als Nächstes, in einem Entscheidungsblock 245, bestimmt der Steuerungscomputer 160, ob die Authentifizierung des Steuerungscomputers 160 vom Computer 110 des Fahrzeugs 100 anerkannt wird. Beispielsweise kann der Steuerungscomputer 160 eine Nachricht vom Computer 110 des Fahrzeugs 100 erhalten, die anzeigt, dass der Computer 110 des Fahrzeugs 100 die Authentifizierung des Steuerungscomputers 160 anerkennt und/oder Anweisungen vom Steuerungscomputer 160 zur Steuerung des Betriebs des Fahrzeugs 100 akzeptiert. Bestimmt der Steuerungscomputer 160, dass der Computer 110 des Fahrzeugs 100 die Authentifizierung anerkannt hat, fährt der Prozess 200 mit einem Block 250 fort; andernfalls endet der Prozess 200 oder, alternativ dazu, kann der Prozess 200 zum Block 215 zurückkehren, obwohl dies in 2 nicht gezeigt wird.
  • In Block 250 empfängt der Steuerungscomputer 160 Benutzereingaben von beispielsweise Benutzerschnittstellen der Steuerungsvorrichtung 150 wie z. B. Drucktaste, Hebel usw. Beispielsweise kann eine Benutzereingabe Daten beinhalten, die mit dem Drücken einer Bremsdrucktaste assoziiert sind. In einem Beispiel kann der Steuerungscomputer 160 dazu programmiert sein, ein von einem Benutzer auf die Bremsdrucktaste ausgeübtes Druckvolumen mit einem Bremsdruck zu assoziieren, z. B. 500 Kilospascal (kPa), auch als Brake-by-Wire bekannt.
  • Als Nächstes, in einem Block 255, sendet der Steuerungscomputer 160 einen chiffrierten Befehl an den Computer 110 des Fahrzeugs 100, der z. B. anzeigt, dass das der Bremsaktuator 120 des Fahrzeugs 100 einen Bremsdruck von 500 kPa ausüben kann. Zudem kann der Steuerungscomputer 160 eine Authentifizierungsunterschrift in jedem Befehl beinhalten, der an den Computer 110 des Fahrzeugs 100 gesendet wird.
  • Als Nächstes, in einem Entscheidungsblock 260, bestimmt der Steuerungscomputer 160, ob eine Steuerungssession abgelaufen ist. Eine „Steuerungssession“ im Kontext dieser Offenbarung bezieht sich auf einen Zeitraum ab einer Steuerungsanfrage, die an den Computer 110 des Fahrzeugs 100 gesendet wird, bis zu dem Zeitpunkt, an dem aus jedwedem Grunde die Steuerung des Betriebs des Fahrzeugs 100 endet. Beispielsweise kann eine Steuerungssession enden, weil der Steuerungscomputer 160 vom Netzwerk des Fahrzeugs 100 getrennt wird. Bestimmt der Steuerungscomputer 160, dass die Steuerungssession geendet hat, endet der Prozess 200; andernfalls kehrt der Prozess 200 zu Block 250 zurück.
  • 3A-3B beinhaltet ein Ablaufdiagramm eines beispielhaften Prozesses 300 für den Computer 110 des Fahrzeugs 100 zur Authentifizierung eines Steuerungscomputers 160, z. B. gemäß Prozess 200 programmiert. Beispielsweise kann der Computer 110 des Fahrzeugs 100 dazu programmiert sein, Blöcke des Prozesses 300 auszuführen.
  • Unter Bezugnahme auf 3A beginnt der Prozess 300 in einem Entscheidungsblock 305, in dem der Computer 110 des Fahrzeugs 100 bestimmt, ob der Computer 110 des Fahrzeugs 100 einen Zugangscode empfangen hat, wie zum Beispiel ein Passwort von einem Autohaus usw. Beispielsweise könnte ein Benutzer ein Passwort in eine Benutzerschnittstelle 140 des Fahrzeugs 100 eingeben. Falls der Computer 110 des Fahrzeugs 100 bestimmt, dass ein Zugangscode empfangen wurde, fährt der Prozess 300 mit einem Entscheidungsblock 310 fort; andernfalls kehrt der Prozess 300 zum Entscheidungsblock 305 zurück.
  • Im Entscheidungsblock 310 bestimmt der Computer 110 des Fahrzeugs 100, ob der empfangene Zugangscode mit einem erwarteten Zugangscode übereinstimmt. Beispielsweise kann eine Liste erwarteter Zugangscodes in einem Speicher des Computers 110 des Fahrzeugs 100 gespeichert sein. Falls der Computer 110 des Fahrzeugs 100 bestimmt, dass der empfangene Zugangscode mit einem erwarteten Zugangscode übereinstimmt, fährt der Prozess 300 mit einem Block 315 fort; andernfalls kehrt der Prozess 300 zum Entscheidungsblock 305 zurück.
  • In Block 315 setzt der Computer 110 des Fahrzeugs 100 einen Betriebsmodus des Fahrzeugs 100 in einen nichtautonomen Modus. Daher verhindert der Computer 110 des Fahrzeugs 100 vorteilhafterweise eine Aktivierung des nichtautonomen Modus durch einen Eindringlingscomputer. Beispielsweise kann, in dem Fall, dass es einem Eindringling misslingt, sich Zugang ins Innere des Fahrzeugs 100 zu verschaffen, es dem Eindringling misslingen, den erwarteten Zugangscode über die Benutzerschnittstelle 140 einzugeben. Daher kann es einem Eindringlingscomputer, der mit dem Kommunikationsnetzwerk des Fahrzeugs 100 verbunden ist, z. B. unter einer Motorhaube des Fahrzeugs 100, misslingen, den Betrieb des Fahrzeugs 100 zu steuern.
  • Als Nächstes, in einem Entscheidungsblock 320, bestimmt der Computer 110 des Fahrzeugs 100, ob eine chiffrierte Nachricht von einem Steuerungscomputer 160 empfangen wird. Beispielsweise kann die Nachricht zusätzliche nichtchiffrierte Informationen enthalten, die eine Senderkennung, eine mit der Steuerungsvorrichtung 140 assoziierte CAN-Nachricht-Kennung anzeigen. Anders ausgedrückt kann eine Kennung einer Nachricht eine nichtchiffrierte Information sein, die eine Identität eines Senders anzeigen kann. Daher kann der Computer 110 des Fahrzeugs 100 wissen, welche Identität ein Sender der empfangenen Nachricht zu haben vorgibt. Wie unten besprochen, kann dies hilfreich sein, um zu verifizieren, ob die Nachricht von dem Sender empfangen wird, der in der empfangenen Nachricht angezeigt ist. Bestimmt der Computer 110 des Fahrzeugs 100, dass eine chiffrierte Nachricht empfangen wurde, fährt der Prozess 300 mit einem Entscheidungsblock 340 fort; andernfalls kehrt der Prozess 300 zum Entscheidungsblock 300 zurück.
  • Im Entscheidungsblock 340 bestimmt der Computer 110 des Fahrzeugs 100, ob eine Dreiparteien-Authentifizierung benutzt wird. Beispielsweise können beim Computer 110 des Fahrzeugs 100 Daten in einem Speicher gespeichert sein, die anzeigen, ob eine Dreiparteien-Authentifizierung benutzt wird. Zusätzlich oder alternativ dazu kann ein Ferncomputer 180 konfigurieren, z. B. über eine an den Computer 110 des Fahrzeugs 100 gesendete Nachricht, ob eine Dreiparteien-Authentifizierung benutzt wird. Zusätzlich kann der Computer 110 des Fahrzeugs 100 eine Nachricht an einen mit dem Kommunikationsnetzwerk des Fahrzeugs 100 verbundenen Steuerungscomputer 160 senden, z. B. periodisch, die anzeigt, ob eine Dreiparteien-Authentifizierung benutzt wird. Bestimmt der Computer 110 des Fahrzeugs 100, dass eine Dreiparteien-Authentifizierung benutzt wird, fährt der Prozess 300 mit einem Block 325 fort; andernfalls fährt der Prozess 300 mit einem Entscheidungsblock 345 fort.
  • In Block 325 sendet der Computer 110 des Fahrzeugs 100 eine Anfrage an einen Ferncomputer 180, einschließlich Daten, wie eine Kennung des Fahrzeugs 100, einer Kennung des Steuerungscomputers 160, die eine authentifizierte Kommunikation, aktuelle Zeit usw. anfragt.
  • Als Nächstes, in einem Entscheidungsblock 330, bestimmt der Computer 110 des Fahrzeugs 100, ob Daten vom Ferncomputer 180 empfangen werden. Beispielsweise können die empfangenen Daten mit einer vorläufigen Authentifizierungsunterschrift, die der Ferncomputer 180 separat dem Steuerungscomputer 160 bereitstellt (siehe 4), assoziierte Daten beinhalten. Zusätzlich oder alternativ dazu kann der Computer 110 des Fahrzeugs 100 einen Dechiffrierungsschlüssel und/oder eine Authentifizierungsunterschrift bestimmen, die von dem jeweiligen Steuerungscomputer 160 zumindest teilweise basierend auf den empfangenen Daten erwartet wird. Bestimmt der Computer 110 des Fahrzeugs 100, dass die Daten vom Ferncomputer 180 empfangen werden, fährt der Prozess 300 mit dem Entscheidungsblock 345 fort; andernfalls kehrt der Prozess 300 zum Entscheidungsblock 330 zurück.
  • Im Entscheidungsblock 345 bestimmt der Computer 110 des Fahrzeugs 100, ob die empfangene Nachricht authentifiziert ist. Anders ausgedrückt bestimmt der Computer 110 des Fahrzeugs 100, ob die Nachricht von der bekannten Steuerungsvorrichtung 150 empfangen wird und/oder die Steuerungsvorrichtung 150 eine bekannte Vorrichtung ist, der gestattet ist, den Betrieb des Fahrzeugs 100 zu steuern. In einem Beispiel, wenn der Entscheidungsblock 345 vom Entscheidungsblock 340 erreicht wird, bestimmt der Computer 110 des Fahrzeugs 100 basierend auf dem Computer 110 des Fahrzeugs 100 bekannten Informationen, wie zum Beispiel eine Liste gültiger Authentifizierungsunterschriften, Funktionen, Kennung der Steuerungsvorrichtung 150 usw., ob die empfangene Authentifizierungsunterschrift gültig ist. In einem anderen Beispiel, wenn der Entscheidungsblock 345 vom Entscheidungsblock 330 erreicht wird, bestimmt der Computer 110 des Fahrzeugs 100 zumindest teilweise basierend auf den vom Ferncomputer 180 empfangenen Daten, ob die Authentifizierungsunterschrift der empfangen Nachricht gültig ist. Bestimmt der Computer 110 des Fahrzeugs 100, dass die Authentifizierung gültig ist, dann fährt der Prozess 300 mit einem Block 355 fort (siehe 3B); andernfalls fährt der Prozess 300 mit einem Block 350 fort.
  • In Block 350 lehnt der Computer 110 des Fahrzeugs 100 die Authentifizierungsanfrage des Senders ab, z. B. durch Senden einer Nachricht, die anzeigt, dass der Sender es versäumt hat, eine Nachricht mit einer gültigen Authentifizierungsunterschrift zu senden. Nach Block 350 endet der Prozess 300 oder kehrt alternativ zum Entscheidungsblock 305 zurück, obwohl dies in 3A nicht gezeigt wird.
  • Unter Bezugnahme auf 3B, in Block 355, erkennt der Computer 110 des Fahrzeugs 100 die Authentifizierung des Steuerungscomputers 160 an. Beispielsweise sendet der Computer 110 des Fahrzeugs 100 eine Nachricht an den Steuerungscomputer 160, in der die Authentifizierung anerkannt wird.
  • Als Nächstes, in einem Entscheidungsblock 360, bestimmt der Computer 110 des Fahrzeugs 100, ob ein Befehl vom Steuerungscomputer 160 empfangen wird. In einem Beispiel beinhaltet der empfangene Befehl eine chiffrierte, über das Kommunikationsnetzwerk des Fahrzeugs 100 empfangene Nachricht. Falls der Computer 110 des Fahrzeugs 100 bestimmt, dass eine Nachricht vom Steuerungscomputer 160 empfangen wird, fährt der Prozess 300 mit einem Block 365 fort; andernfalls kehrt der Prozess 300 zum Entscheidungsblock 360 zurück.
  • In Block 365 dechiffriert der Computer 110 des Fahrzeugs 100 einen vom Steuerungscomputer 160 empfangenen Befehl. Zusätzlich kann jeder vom Steuerungscomputer 160 empfangene Befehl eine Authentifizierungsunterschrift beinhalten und der Computer 110 des Fahrzeugs 100 kann jeden von dem Steuerungscomputer 160 empfangenen Befehl individuell authentifizieren.
  • Als Nächstes, in einem Block 370, veranlasst der Computer 110 des Fahrzeugs 100 eine Maßnahme basierend auf dem empfangenen Befehl. Beispielsweise kann der Computer 110 des Fahrzeugs 100 eine Nachricht an den Bremsaktuator des Fahrzeugs 100 senden, einschließlich eines angefragten Bremsdrucks von 500 kPa.
  • Als Nächstes, in einem Entscheidungsblock 375, bestimmt der Computer 110 des Fahrzeugs 100, ob eine Steuerungssession geendet hat, z. B. ob der Steuerungscomputer 160 vom Kommunikationsnetzwerk des Fahrzeugs 100 getrennt ist. Bestimmt der Computer 110 des Fahrzeugs 100, dass die Steuerungssession geendet hat, endet der Prozess 300; andernfalls kehrt der Prozess 300 zum Entscheidungsblock 360 zurück.
  • 4 ist ein Ablaufdiagramm eines beispielhaften Prozesses 400 für einen Ferncomputer 180, der dem Steuerungscomputer 160 und dem Computer 110 des Fahrzeugs 100 Authentifizierungsdaten bereitstellt. Beispielsweise kann ein Ferncomputer 180 dazu programmiert sein, Blöcke des Prozesses 400 auszuführen.
  • Der Prozess 400 beginnt in einem Entscheidungsblock 405, in dem der Ferncomputer 180 bestimmt, ob eine Anfrage, z. B. auf vorläufige Authentifizierungsdaten, von einem Steuerungscomputer 160 empfangen wird. Die Anfrage kann eine Kennung des Steuerungscomputers 160, eine Kennung des Fahrzeugs 100, einen von dem Chiffrierungstoken 170 der Steuerungsvorrichtung 150 erzeugten Schlüssel usw. beinhalten. Bestimmt der Ferncomputer 180, dass eine Anfrage von einem Steuerungscomputer 160 empfangen wird, fährt der Prozess 400 mit einem Block 410 fort; andernfalls kehrt Prozess 400 zum Entscheidungsblock 405 zurück.
  • In Block 410 erzeugt und sendet der Ferncomputer 180 vorläufige Authentifizierungsdaten, z. B. eine vorläufige Authentifizierungsunterschrift, an den Steuerungscomputer 160. In einem Beispiel wird die vorläufige Authentifizierungsunterschrift zumindest teilweise basierend auf einer Kennung des Fahrzeugs 100, einer aktuellen Zeit und einer Kennung des Steuerungscomputers 160 erzeugt. Zusätzlich kann der Ferncomputer 180 Daten einschließlich der vorläufigen Authentifizierungsunterschrift an den identifizierten Computer 110 des Fahrzeugs 100 senden.
  • Als Nächstes, in einem Entscheidungsblock 415, bestimmt der Ferncomputer 180, ob eine Anfrage vom Computer 110 des Fahrzeugs 100 empfangen wird. Zusätzlich oder alternativ kann der Ferncomputer 180 bestimmen, ob eine Anfrage von einem Computer 110 des Fahrzeugs 100 empfangen wird, der bereits in einer zuvor von einem Steuerungscomputer 160 empfangenen Anfrage identifiziert wurde, z. B. basierend auf der Kennung des Fahrzeugs 100. Bestimmt der Ferncomputer 180, dass eine Anfrage vom Computer 110 des Fahrzeugs 100 empfangen wird, dann fährt der Prozess 400 bei einem Block 420 fort; andernfalls kehrt der Prozess 400 zum Entscheidungsblock 415 zurück.
  • In Block 420 bestimmt und sendet der Ferncomputer 180 Daten an den Computer 110 des Fahrzeugs 100. In einem Beispiel beinhalten die gesendeten Daten die vorläufige Authentifizierungsunterschrift, die ebenfalls an den Steuerungscomputer 160 gesendet wurde. In einem weiteren Beispiel beinhalten die gesendeten Daten Daten wie zum Beispiel einen neuen Schlüssel, eine Funktion usw., die vom Computer 110 des Fahrzeugs 100 benutzt werden können, um Nachrichten vom Steuerungscomputer 160 zu authentifizieren, die an den Computer 110 des Fahrzeugs 100 gesendet wurden. Zudem kann der Ferncomputer 180 dazu programmiert sein, eine Nachricht zu senden, die vorläufige Authentifizierungsdaten für den anfragenden Computer 110 des Fahrzeugs 100 ablehnt, nachdem bestimmt wurde, dass der Ferncomputer 180 keine Anfrage vom Steuerungscomputer 160 einschließlich einer Kennung des Fahrzeugs 100 empfangen hat. Anders ausgedrückt kann der Ferncomputer 180 ablehnen, vorläufige Authentifizierungsdaten bereitzustellen, wenn eine zuvor empfangene Anfrage von einem Steuerungscomputer 160 fehlt, die einen Start einer Steuerungssession mit dem Computer 110 des Fahrzeugs 100 anzeigt.
  • Nach Block 420 endet der Prozess 400 oder kehrt alternativ dazu zum Entscheidungsblock 405 zurück, obwohl dies in 4 nicht gezeigt wird.
  • Rechenvorrichtungen, wie hierin erläutert, weisen im Allgemeinen jeweils Anweisungen auf, die von einer oder mehreren Rechenvorrichtungen, wie die oben angegebenen, ausführbar sind, und führen Blöcke oder Schritte von Prozessen aus, die oben beschrieben sind. Computerausführbare Anweisungen können aus Computerprogrammen kompiliert oder interpretiert werden, die unter Verwendung einer Vielzahl von Programmiersprachen und/oder Technologien erzeugt werden, einschließlich, ohne Einschränkung und entweder an sich oder in Kombination, Java™, C, C++, Visual Basic, Java Script, Perl, HTML usw. Im Allgemeinen empfängt ein Prozessor (z. B. ein Mikroprozessor) Anweisungen, z. B. von einem Speicher, einem computerlesbaren Medium usw., und führt diese Anweisungen aus, wodurch ein oder mehrere Prozesse, einschließlich eines oder mehrerer der hier beschriebenen Prozesse, durchgeführt werden. Solche Anweisungen und andere Daten können unter Verwendung einer Vielzahl von computerlesbaren Medien gespeichert und übertragen werden. Eine Datei in der Rechenvorrichtung ist im Allgemeinen eine Sammlung von Daten, die auf einem computerlesbaren Medium wie einem Speichermedium, einem Direktzugangsspeicher usw. gespeichert sind.
  • Ein computerlesbares Medium schließt ein beliebiges Medium ein, das an der Bereitstellung von Daten (z. B. Anweisungen) beteiligt ist, die von einem Computer gelesen werden können. Ein solches Medium kann viele Formen annehmen, einschließlich, jedoch nicht beschränkt auf, nichtflüchtige Medien, flüchtige Medien usw. Nichtflüchtige Medien schließen beispielsweise optische oder magnetische Platten und anderer Dauerspeicher ein. Flüchtige Medien schließen dynamischen Direktzugangsspeicher (DRAM) ein, der typischerweise einen Hauptspeicher bildet. Übliche Formen von computerlesbaren Medien schließen beispielsweise eine Diskette, eine flexible Platte, eine Festplatte, ein Magnetband, ein beliebiges anderes magnetisches Medium, eine CD-ROM, eine DVD, ein beliebiges anderes optisches Medium, Lochkarten, Papierbänder ein anderes physikalisches Medium mit Lochmustern, einen RAM, einen PROM, einen EPROM, einen FLASH, einen EEPROM, einen beliebigen anderen Speicherchip oder eine andere Kassette oder irgendein anderes Medium ein, aus dem ein Computer lesen kann.
  • Im Hinblick auf die hierin beschriebenen Medien, Prozesse, Systeme, Verfahren usw. versteht es sich, dass, wenngleich die Schritte solcher Prozesse usw. derart beschrieben wurden, dass sie gemäß einer bestimmten geordneten Abfolge stattfinden, solche Prozesse mit den beschriebenen Schritten, die in einer anderen Reihenfolge als der hier beschriebenen Reihenfolge ausgeführt werden, umgesetzt werden könnten. Es versteht sich ferner, dass bestimmte Schritte gleichzeitig ausgeführt werden könnten, dass andere Schritte hinzugefügt werden könnten oder dass bestimmte hier beschriebene Schritte weggelassen werden könnten. Mit anderen Worten werden die Beschreibungen von Systemen und/oder Prozessen hierin zum Zweck der Veranschaulichung bestimmter Ausführungsformen bereitgestellt und sind in keiner Weise so auszulegen, dass sie den offenbarten Gegenstand einschränken.
  • Dementsprechend versteht es sich, dass die vorliegende Offenbarung, einschließlich der obigen Beschreibung und der beiliegenden Figuren und der nachfolgenden Ansprüche, veranschaulichend und nicht einschränkend sein soll. Für den Fachmann werden beim Lesen der obigen Beschreibung viele Ausführungsformen und Anwendungen ersichtlich, die andere als die bereitgestellten Beispiele sind. Der Schutzumfang der Erfindung soll nicht unter Bezugnahme auf die obige Beschreibung bestimmt werden, sondern vielmehr unter Bezugnahme auf die beigefügten Ansprüche und/oder in einer nicht vorläufigen Patentanmeldung, die hierauf basiert, zusammen mit dem vollen Schutzumfang von Äquivalenten, zu welchen solche Ansprüche berechtigt sind, bestimmt werden. Es ist vorhersehbar und wird beabsichtigt, dass zukünftige Entwicklungen in den hier erläuterten Techniken stattfinden werden und dass die offenbarten Systeme und Verfahren in solche zukünftigen Ausführungsformen aufgenommen werden. Zusammenfassend versteht es sich, dass der offenbarte Gegenstand modifiziert und variiert werden kann.

Claims (14)

  1. Verfahren, Folgendes umfassend: nach Verbinden eines Steuerungscomputers mit einem Fahrzeugkommunikationsnetzwerk, Durchführen einer Authentifizierung basierend auf einem Chiffrierungsschlüssel; und nach Authentifizieren durch einen Fahrzeugcomputer, der physisch an das Kommunikationsnetzwerk angeschlossen ist, Steuern des Fahrzeugbetriebs einschließlich mindestens eines von Antrieb, Bremsen und Lenken.
  2. Verfahren nach Anspruch 1, wobei das Durchführen der Authentifizierung ferner das Senden einer Nachricht durch den Steuerungscomputer an den Fahrzeugcomputer beinhaltet, wobei die Nachricht eine Authentifizierungsunterschrift beinhaltet, die zumindest teilweise auf dem Chiffrierungsschlüssel basiert.
  3. Verfahren nach Anspruch 2, ferner umfassend: Empfangen, am Fahrzeugcomputer, der vom Steuerungscomputer gesandten Nachricht; und Authentifizieren des Steuerungscomputers, basierend auf der Authentifizierungsunterschrift.
  4. Verfahren nach Anspruch 1, wobei das Durchführen der Authentifizierung ferner Folgendes umfasst: Senden, vom Steuerungscomputer, einer Nachricht an einen Ferncomputer einschließlich des Schlüssels; Empfangen, am Fahrzeugcomputer, einer vorläufigen Authentifizierungsunterschrift von dem Ferncomputer, zumindest teilweise basierend auf der Nachricht; und Senden, vom Steuerungscomputer, einer Authentifizierungsanfrage an den Fahrzeugcomputer, zumindest teilweise basierend auf der vorläufigen Authentifizierungsunterschrift.
  5. Verfahren nach Anspruch 4, wobei die vorläufige Authentifizierungsunterschrift ferner zumindest teilweise auf einem der Folgenden basiert: einer Fahrzeugidentifikationsnummer, einer aktuellen Zeit und einer Computerkennung.
  6. Verfahren nach Anspruch 4, ferner umfassend das Empfangen am Fahrzeugcomputer von mit der vorläufigen Authentifizierungsunterschrift assoziierten Daten vom Ferncomputer.
  7. Verfahren nach Anspruch 6, ferner umfassend das Authentifizieren des Steuerungscomputers am Fahrzeugcomputer, basierend zumindest teilweise auf den mit der vorläufigen Authentifizierungsunterschrift assoziierten Daten.
  8. Verfahren nach Anspruch 7, wobei die vom Ferncomputer empfangenen Daten mit einem öffentlichen Schlüssel chiffriert sind, der vom Fahrzeugcomputer bereitgestellt wird.
  9. Verfahren nach Anspruch 1, ferner umfassend: Empfangen, am Fahrzeugcomputer von einer Fahrzeugbenutzerschnittstelle, einer Anfrage zur Aktivierung des Fahrzeugs im nichtautonomen Modus, wobei die Anfrage einen Zugangscode beinhaltet; Aktivieren des nichtautonomen Fahrzeugmodus, wenn bestimmt wurde, dass der Zugangscode einem erwarteten Zugangscode entspricht; und Steuern des Fahrzeugbetriebs basierend auf einer Nachricht vom Steuerungscomputer, wenn bestimmt wurde, dass der Fahrzeugcomputer sich im nichtautonomen Modus befindet, und Authentifizierung durch den Fahrzeugcomputer.
  10. Verfahren nach Anspruch 1, ferner umfassend das Durchführen der Authentifizierung am Steuerungscomputer, indem die Nachricht basierend auf dem Chiffrierungsschlüssel chiffriert wird.
  11. Verfahren nach Anspruch 10, ferner umfassend das Dechiffrieren der chiffrierten Nachricht am Fahrzeugcomputer basierend auf einem Dechiffrierungsschlüssel, der vom Fahrzeugcomputer erzeugt wird, und das Authentifizieren des Steuerungscomputers basierend auf der Authentifizierungsunterschrift.
  12. Rechenvorrichtung, dazu programmiert, das Verfahren eines der Ansprüche 1, 3, 6-9 und 11 auszuführen.
  13. Computerprogrammprodukt, ein computerlesbares Medium umfassend, das von einem Computerprozessor ausführbare Anweisungen speichert, um das Verfahren eines der Ansprüche 1, 3, 6-9 und 11 auszuführen.
  14. Bodenfahrzeug, eine Rechenvorrichtung umfassend, die dazu programmiert ist, das Verfahren eines der Ansprüche 1, 3, 6-9 und 11 auszuführen.
DE102018101479.1A 2017-01-25 2018-01-23 Steuerungsschnittstelle für ein autonomes fahrzeug Pending DE102018101479A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/415,205 2017-01-25
US15/415,205 US11924353B2 (en) 2017-01-25 2017-01-25 Control interface for autonomous vehicle

Publications (1)

Publication Number Publication Date
DE102018101479A1 true DE102018101479A1 (de) 2018-07-26

Family

ID=61283731

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018101479.1A Pending DE102018101479A1 (de) 2017-01-25 2018-01-23 Steuerungsschnittstelle für ein autonomes fahrzeug

Country Status (6)

Country Link
US (1) US11924353B2 (de)
CN (1) CN108347431A (de)
DE (1) DE102018101479A1 (de)
GB (1) GB2560626A (de)
MX (1) MX2018000855A (de)
RU (1) RU2018101903A (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107819572B (zh) * 2017-09-29 2021-01-22 北京比特大陆科技有限公司 命令传输方法、装置及电子设备
EP3618385B1 (de) * 2018-08-31 2020-06-24 Zenuity AB Verfahren und anordnung zur codierung/decodierung eines signals an einem ersten und zweiten kommunikationsknoten in einem strassenfahrzeug
CN110958288A (zh) * 2018-09-27 2020-04-03 北京奇虎科技有限公司 防闯红灯控制系统及方法
US11726473B2 (en) * 2018-11-08 2023-08-15 Zoox, Inc. Autonomous vehicle guidance authority framework
US11029702B2 (en) 2019-02-01 2021-06-08 Ford Global Technologies, Llc Vehicle service controller
US11265713B2 (en) * 2019-10-14 2022-03-01 Ford Global Technologies, Llc Validating vehicles traveling within specific regions
US11792014B2 (en) * 2020-03-16 2023-10-17 Uatc, Llc Systems and methods for vehicle message signing
US11663907B2 (en) * 2021-06-21 2023-05-30 Ettifos Co. Method and apparatus for transmitting and receiving vehicle-to-pedestrian (V2P) message

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7549046B2 (en) 2002-06-28 2009-06-16 Temic Automotive Of North America, Inc. Method and system for vehicle authorization of a service technician
US7010682B2 (en) * 2002-06-28 2006-03-07 Motorola, Inc. Method and system for vehicle authentication of a component
WO2009147734A1 (ja) 2008-06-04 2009-12-10 株式会社ルネサステクノロジ 車両、メンテナンス装置、メンテナンスサービスシステム及びメンテナンスサービス方法
US20100036546A1 (en) * 2008-08-07 2010-02-11 Patriot Lift Co., Llc Security apparatus for pneumatically operated devices mounted on a vehicle
US9077542B2 (en) * 2008-09-23 2015-07-07 GM Global Technology Operations LLC System and method for confirming that a user of an electronic device is an authorized user of a vehicle
JP5393500B2 (ja) 2010-01-20 2014-01-22 株式会社Ihiエアロスペース 無人移動体の制御方法及び遠隔操縦装置
CN101934779A (zh) * 2010-08-31 2011-01-05 中山大学 一种智能车辆防盗方法以及系统
KR101881167B1 (ko) * 2011-06-13 2018-07-23 주식회사 케이티 차량 제어 시스템
GB201220468D0 (en) 2012-11-14 2012-12-26 Provost Fellows Foundation Scholars And The Other Members Of Board Of A control interface
CN102991458B (zh) * 2012-11-29 2016-06-29 浙江吉利汽车研究院有限公司杭州分公司 远程控制车辆断油的方法和系统
US9135758B2 (en) * 2013-05-13 2015-09-15 Moj.Io Inc. Vehicle status notification and operator identification
CN103809574A (zh) * 2014-02-28 2014-05-21 北京经纬恒润科技有限公司 一种提高远程控制车辆安全性的方法
US10106106B2 (en) 2014-09-19 2018-10-23 Ford Global Technologies, Llc Automated driving solution gateway
DE102014219638A1 (de) 2014-09-29 2016-03-31 Robert Bosch Gmbh Verfahren zur Durchführung eines Fahrmanövers und Parkassistenzsystem
JP6354541B2 (ja) 2014-11-26 2018-07-11 株式会社デンソー 車両遠隔操作システム、携帯通信機
CN105988422B (zh) * 2015-01-27 2019-05-21 上海海马汽车研发有限公司 一种车辆的远程驾驶控制系统及方法
GB2542474A (en) * 2015-07-17 2017-03-22 Relmatech Ltd An aircraft controlled by a secure integrated airspace management system
CN105471845B (zh) * 2015-11-16 2018-10-19 数据通信科学技术研究所 防止中间人攻击的通信方法及系统
US20180012197A1 (en) * 2016-07-07 2018-01-11 NextEv USA, Inc. Battery exchange licensing program based on state of charge of battery pack
US9963106B1 (en) * 2016-11-07 2018-05-08 Nio Usa, Inc. Method and system for authentication in autonomous vehicles

Also Published As

Publication number Publication date
MX2018000855A (es) 2018-11-09
US11924353B2 (en) 2024-03-05
US20180212780A1 (en) 2018-07-26
CN108347431A (zh) 2018-07-31
GB2560626A (en) 2018-09-19
GB201801030D0 (en) 2018-03-07
RU2018101903A (ru) 2019-07-18

Similar Documents

Publication Publication Date Title
DE102018101479A1 (de) Steuerungsschnittstelle für ein autonomes fahrzeug
EP2689553B1 (de) Kraftwagen-steuergerät mit kryptographischer einrichtung
DE102011120968B4 (de) Erzeugen von sicheren Schlüsseln auf Anforderung
EP1999725B1 (de) Verfahren zum schutz eines beweglichen gutes, insbesondere eines fahrzeugs, gegen unberechtigte nutzung
DE102015103020B4 (de) Verfahren zum bereitstellen einer benutzerinformation in einem fahrzeug unter verwendung eines kryptografischen schlüssels
DE102017125826A1 (de) Nachrichtenauthentifizierung über controller area network
DE102018103101A1 (de) Sichere sitzungskommunikation zwischen einem mobilgerät und einer basisstation
DE102016218986B4 (de) Verfahren zur Zugriffsverwaltung eines Fahrzeugs
DE102017102539A1 (de) Sicheres tunneln für sicherheit verbundener anwendungen
DE102017102388A1 (de) Regeln des fahrzeugzugangs unter verwendung kryptografischer verfahren
DE102014114607A1 (de) Programmierung von Fahrzeugmodulen mit Remotevorrichtungen und zugehörige Methoden und Systeme
DE102013205051A1 (de) Aktualisieren eines digitalen Geräte-Zertifikats eines Automatisierungsgeräts
DE102018104079A1 (de) Sichere end-to-end-fahrzeug-ecu-freischaltung in einer halb-offline-umgebung
DE102019121164A1 (de) Fahrzeugbasiertes passwort
WO2018210567A1 (de) Verfahren, computerlesbares medium, system und fahrzeug umfassend das system zum bereitstellen eines datensatzes eines fahrzeugs an einen dritten
EP2454701A1 (de) Kommunikationsverfahren, computerprogrammprodukt, vorrichtung und computersystem
DE10213658B4 (de) Verfahren zur Datenübertragung zwischen Komponenten der Bordelektronik mobiler Systeme und solche Komponenten
DE102011002713A1 (de) Verfahren und Vorrichtung zum Bereitstellen von kyptographischen Credentials für Steuergeräte eines Fahrzeugs
WO2018007049A1 (de) Verfahren zur sicheren authentifizierung von steuervorrichtungen in einem kraftfahrzeug
EP3244360A1 (de) Verfahren zur registrierung von geräten, insbesondere von zugangskontrollvorrichtungen oder bezahl- bzw. verkaufsautomaten bei einem server eines systems, welches mehrere derartige geräte umfasst
EP3276911A1 (de) Authentifizierte verbindung zwischen mindestens zwei kommunikationspartnern
DE102020126909A1 (de) Sitzungsspezifischer zugriffstoken
DE102018132979A1 (de) Abgesichertes und intelligentes Betreiben einer Ladeinfrastruktur
DE102018206541A1 (de) Verfahren zum Betrieb einer berührungssensitiven, flächigen Eingabevorrichtung einer Gesamtvorrichtung und Gesamtvorrichtung
DE102018204842A1 (de) Verfahren zum Betreiben eines Kraftfahrzeugs, Authentifizierungseinrichtung, Speichermedium, Kraftfahrzeug, mobiles portables Endgerät, Datenservereinrichtung zum Betreiben im Internet

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: BONSMANN - BONSMANN - FRANK PATENTANWAELTE, DE