-
Die vorliegende Erfindung betrifft ein Verfahren zum Betreiben eines Fahrzeugs, um auf mindestens ein Steuergerät des Fahrzeugs neue Software zu übertragen. Darüber hinaus betrifft die vorliegende Erfindung eine entsprechend ausgestaltete Vorrichtung und ein entsprechend ausgestaltetes Fahrzeug.
-
Die
US 2005 / 0 256 614 A1 offenbart ein Übertragen einer Softwareaktualisierung zu einer Gruppe von Fahrzeugen und ein Installieren der Softwareaktualisierung in einem Steuergerät dieser Fahrzeuge.
-
Die
DE 600 07 883 T2 beschreibt das Durchführen von elektronischen Transaktionen.
-
Eine Änderung an einer bestehenden Software eines Fahrzeugs oder eine Installation neuer Software für das Fahrzeug wird heute typischerweise in einer Werkstatt vorgenommen. Daher ist für jeden Softwaretausch oder bei jedem Erwerb von Software die Werkstatt aufzusuchen und es sind kostenintensive Werkzeuge (Tester) und Arbeitsschritte nötig, um die Software zu tauschen oder die Daten von softwarebasierten Systemen zu ändern oder neue Software zu installieren. Zugehörige Sicherheitskonzepte sind proprietär und zum Teil nicht ausreichend, um beispielsweise das Aufspielen von Raubkopien oder von beschädigter Software zu verhindern.
-
Daher ist es eine Aufgabe der vorliegenden Erfindung, die nach dem Stand der Technik bestehenden Probleme zumindest abzumildern.
-
Erfindungsgemäß wird diese Aufgabe durch ein Verfahren zum Betreiben eines Fahrzeugs nach Anspruch 1, eine Vorrichtung zum Laden oder Ändern einer Software für ein Fahrzeug nach Anspruch 7 sowie ein entsprechend ausgestaltetes Fahrzeug nach Anspruch 9 gelöst. Die abhängigen Ansprüche definieren bevorzugte und vorteilhafte Ausführungsformen der vorliegenden Erfindung.
-
Es wird ein Verfahren zum Betreiben eines Fahrzeugs beschrieben, welches mehrere Steuergeräte umfasst. Dabei wird in dem Fahrzeug ein zentraler oder dezentraler Softwaremanager bereitgestellt, um die Software der einzelnen Steuergeräte mit Hilfe eines Prozessors zu verwalten. Dabei wird unter einem zentralen Softwaremanager verstanden, dass der Softwaremanager zentral in einer Steuervorrichtung läuft, während der dezentrale Softwaremanager auf mehrere Steuervorrichtungen verteilt ist. Um bestehende Software der Steuergeräte automatisch zu ändern oder neue Software für die Steuergeräte automatisch zu laden, werden dem Softwaremanager über seine physikalische Schnittstelle, z.B. eine Schnittstelle zu einem Datenträger (beispielsweise zum Lesen einer CD) oder eine Schnittstelle zu einem Kommunikationsnetz (beispielsweise eine drahtlose Internetverbindung), Daten übertragen, welche zum Laden oder Ändern der Software der Steuergeräte notwendig sind. Diese zum Laden oder Ändern der Software notwendigen Daten werden von dem Softwaremanager entsprechend über eine fahrzeuginterne Kommunikation (z.B. den CAN-Bus) an die Steuergeräte verteilt.
-
Da die Software über die physikalische Schnittstelle beispielsweise mittels einer CD übertragen wird und dann mit Hilfe des Softwaremanagers automatisch an die entsprechenden Steuergeräte, welche zu aktualisieren sind, übertragen wird, ist es vorteilhafterweise nicht mehr notwendig, für eine Softwareaktualisierung oder für eine Installation von neuer Software die Werkstatt aufsuchen zu müssen.
-
Die zur Übertragung der zum Laden oder Ändern der Software notwendigen Daten erhält der Softwaremanager dabei über die physikalische Schnittstelle, welche entweder eine Schnittstelle zu einem Datenträger (z.B. CD, DVD, USB-Speicher, SD-Karte) oder eine Onlineverbindung (z.B. über WLAN, GPRS/UMTS, EDGE, Bluetooth) sein kann.
-
Die zum Laden oder Ändern der Software notwendigen Daten umfassen dabei insbesondere mindestens eine Information aus folgender Informationsmenge:
- • Einen Programmcode für mindestens eines der Steuergeräte, d.h. einen Programmcode, welcher auf mindestens einem der Steuergeräte ausgeführt werden kann.
- • Ein Freischaltcode, mit welchem zumindest eine Funktion eines der Steuergeräte aktiviert oder deaktiviert werden kann. Durch den Freischaltcode können also bereits in einem Steuergerät vorhandene Softwarekomponenten aktiviert oder deaktiviert werden.
- • Codierungen und Anpasskanäle, womit bereits in einem Steuergerät installierte Software angepasst werden kann.
- • Parametrisierungen für mindestens eine Funktion eines der Steuergeräte. Unter Parametrisierungen werden dabei Parametersätze für eine Funktion verstanden, was auch Kennlinienfelder umfasst. Aus einem Kennlinienfeld können abhängig von einer oder von mehreren Eingangsvariablen eine oder mehrere Ausgangsvariablen zur Steuerung der Funktion entnommen werden. Kennlinienfelder umfassen bisweilen größere Datensätze.
- • Ein oder mehrere Hinweise oder eine oder mehrere Beschreibungen bezüglich einer Funktion eines der Steuergeräte, wobei der entsprechende Hinweis oder die entsprechende Beschreibung im Fahrzeug angezeigt werden kann, um einem Menschen, z.B. dem Fahrer des Fahrzeugs, bei der Bedienung der entsprechenden Software oder des entsprechenden Steuergeräts zu helfen.
- • Ein oder mehrere Installationshinweise oder eine oder mehrere Installationsbeschreibungen, wobei der entsprechende Installationshinweis oder die entsprechende Installationsbeschreibung im Fahrzeug angezeigt werden kann, um einen Menschen bei der Installation der entsprechenden Software oder bei der Änderung der entsprechenden Software zu unterstützen.
- • Eine oder mehrere Informationen über eine Kompatibilität oder eine nicht vorhandene Kompatibilität zwischen verschiedenen Funktionen und/oder verschiedenen Softwareständen und/oder verschiedenen Hardwareständen für die Steuergeräte. Dabei kann diese Information entweder angezeigt werden, um eine Installation von inkompatibler Software zu vermeiden oder aber diese Information wird verwendet, um eine Installation von inkompatibler Software zu verhindern, so dass es unmöglich ist, inkompatible Software auf einem Steuergerät installieren.
- • Metadaten zur Durchführung der Installation oder der Änderung der Software. Diese Metadaten enthalten insbesondere Informationen über die Art und Weise der Installation oder Änderung der Software. Beispielsweise wird mittels der Metadaten eine korrekte Reihenfolge von Arbeitsschritten bei der Installation oder Freischaltung von Software sichergestellt.
-
Bevor die entsprechende Software auf einem Steuergerät installiert wird, wird die Software bzw. die zum Laden oder Ändern der Software notwendigen Daten von dem Softwaremanager auf Korrektheit und/oder Unversehrtheit geprüft.
-
Dadurch ist sichergestellt, dass keine beschädigte, d.h. mit Fehlern versehene, Software in einem der Steuergeräte installiert wird. Darüber hinaus wird durch die Überprüfung auf Korrektheit auch sichergestellt, dass nur diejenige Software in einem Steuergerät installiert wird, welche auch für das entsprechende Steuergerät vorgesehen ist.
-
Bei einer Ausführungsform umfasst die physikalische Schnittstelle, über welche die zum Laden oder Ändern der Software notwendigen Daten zu dem Softwaremanager übertragen werden, eine Firewall, wobei sichergestellt ist, dass die zum Laden oder Ändern der Software notwendigen Daten über diese Firewall übertragen werden. Eine solche Netzwerk- oder Hardware-Firewall ist eine Netzwerk-Sicherheitskomponente wobei ein Netzwerkverkehr zu dem Softwaremanager anhand eines definierten Firewall-Regelwerks erlaubt oder verboten wird. Das Ziel der Firewall ist, den Datenverkehr zu (und von) dem Softwaremanager vor Unberechtigten abzusichern.
-
Darüber hinaus können die zum Laden oder Ändern der Software notwendigen Daten auch durch eine Signatur abgesichert sein. Dabei wird vor der Übertragung dieser Daten ausgehend von diesen Daten über eine bestimmte Funktion automatisch eine Signatur erstellt. Mit derselben Funktion wird nach der Übertragung der Daten eine weitere Signatur ausgehend von den zum Softwaremanager übertragenen Daten automatisch erstellt. Die nach der Übertragung erstellte Signatur wird mit der vor der Übertragung erstellten und an den Softwaremanager übertragenen Signatur verglichen. Nur wenn dieser Vergleich positiv ausfällt, d.h. die beiden Signaturen sind gleich, verwendet der Softwaremanager die an ihn übertragenen Daten. Dabei wird insbesondere eine Signatur für alle Daten erstellt, welche zu einem Vorgang (z.B. Installation, Aktualisierung oder Reparatur von Software) gehören. Dazu werden diese Daten, welche Code, Codierdaten, Parametrierdaten, Metadaten und Texte umfassen können, zu einem Datenpaket zusammengefasst, wobei dann eine Signatur bezüglich dieses Datenpakets gebildet wird.
-
Eine Überprüfung von Authentizität und Integrität von Software, Freischaltcodes oder Codierwörtern auf der Ebene der einzelnen mit Daten zu versehenden Steuergeräte ist weiterhin möglich und sinnvoll, da hiermit auch die Kommunikationswege im Fahrzeug selbst abgesichert werden können.
-
Es ist auch möglich, eine Übertragung von Daten zum Softwaremanager mittels einer Authentifizierung eines Benutzers abzusichern. Dabei ist eine Übertragung von Daten zu dem Softwaremanager nur durch einen Benutzer möglich, welcher sich vorher beispielsweise bei dem Softwaremanager authentifiziert hat.
-
Bei einer weiteren Ausführungsform, wird eine Konfiguration der Steuergeräte von dem Softwaremanager erfasst. Anschließend überprüft der Softwaremanager die zum Laden oder Ändern der Software notwendigen Daten dahingehend, ob diese Daten oder die in den Daten enthaltende zu installierende Software mit der erfassten Konfiguration kompatibel ist. Der Softwaremanager verteilt nur dann die zum Laden oder Ändern der Software notwendigen Daten an die Steuergeräte, wenn diese entsprechenden Daten zu der Konfiguration der Steuergeräte kompatibel sind. Dadurch wird verhindert, dass eine zu der Konfiguration der Steuergeräte inkompatible Software installiert wird. Dabei ist eine Konfiguration sowohl von den Hardwareständen als auch von den Softwareständen der Steuergeräte abhängig.
-
Darüber hinaus ist es möglich, dass der Softwaremanager die zum Laden oder Ändern der Software notwendigen Daten transaktionsgesichert an die Steuergeräte verteilt. Dabei wird der gesamte Installationsvorgang (umfasst auch einen Freischaltvorgang) oder ein bestimmter Teil des Infoinstallationsvorgangs als eine Transaktion betrachtet. Wenn während dieses Vorgangs ein Fehler auftritt, kann der gesamte Vorgang rückgängig gemacht werden (rollback), so dass der vor dem Vorgang bestehende Zustand wiederhergestellt wird. Zu diesem Zweck müssen gegebenenfalls bestehende Software-Versionen, Codierworte und Parameter von dem Softwaremanager aus den Steuergeräten gewonnen (uploaded) und gespeichert werden, damit sie im Fehlerfall für die Rückgewinnung des ursprünglichen Zustands (dem Zustand vor dem entsprechenden Installationsvorgang) verwendet werden können.
-
Im Rahmen der vorliegenden Erfindung wird ein Verfahren zum Betreiben eines Fahrzeugs bereitgestellt. Dabei umfasst ein Datenträger mindestens ein Software-Produkt für mindestens eines der Steuergeräte. Dieser Datenträger, z.B. ein USB-Stick, eine SD-Karte oder eine CD, wird zum Lesen mit dem Fahrzeug gekoppelt. Dann werden Informationen über das mindestens eine Software-Produkt, welches auf dem Datenträger gespeichert ist, angezeigt. Mindestens eines der auf dem Datenträger gespeicherten Softwareprodukte wird ausgewählt und die zum Laden oder Ändern der Software notwendigen Daten werden von dem Datenträger zu dem Fahrzeug übertragen, um das ausgewählte Software-Produkt installieren zu können. Eine Information, mit welcher das ausgewählte Software-Produkt identifiziert werden kann, wird zusammen mit Daten, welche für einen Kauf von Software notwendig sind, wie z.B. ein Kundenlogin, eine Kreditkarteninformation, eine Konteninformation oder eine Rechnungsadresse, über ein Kommunikationsnetz, wie z.B. ein Mobiltelefonnetz und das Internet, zu einer Verkaufsstelle übertragen. Bei der Verkaufsstelle werden die Information über das ausgewählte Software-Produkt und die zum Kauf notwendigen Daten überprüft und bei einem positiven Ergebnis werden Daten, insbesondere ein Freischaltschlüssel, wiederum über ein Kommunikationsnetz an das Fahrzeug übertragen, mit welchen das ausgewählte Software-Produkt freigeschaltet werden kann.
-
Anschließend wird das mindestens eine ausgewählte Software-Produkt auf dem oder den entsprechenden Steuergeräten installiert.
-
Durch das vorab beschriebene Verfahren ist beispielsweise ein Fahrer des Fahrzeugs in der Lage ein Software-Produkt für sein Fahrzeug, genauer für ein oder mehrere Steuergeräte seines Fahrzeugs, zu kaufen und ohne Hilfe seiner Werkstatt selbst zu installieren.
-
Unabhängig davon, ob es sich bei der zu aktualisierenden Software um eine gekaufte Software handelt oder nicht, sind bei jedem Steuergerät des Fahrzeugs folgende zwei Möglichkeiten zu unterscheiden:
- • Die Installation der Fahrzeugfunktionen erfordert die Ersetzung oder die Erweiterung der bestehenden Software. Dazu muss ausführbarer Code eingebracht werden, was im Allgemeinen als „Flashen“ bezeichnet wird.
- • Die Software mit den gewünschten Softwaremerkmalen befindet sich bereits auf dem entsprechenden Steuergerät und muss lediglich freigeschaltet werden.
-
Sind mehrere Steuergeräte involviert, kann eine Kombination der beiden vorab beschriebenen Möglichkeiten auftreten. Das Flashen und Freischalten kann dabei durch kryptologische Verfahren abgesichert werden, so dass dazu Signaturen (insbesondere zur Absicherung des Freischaltcodes) erforderlich sind, welche in die betroffenen Steuergeräte übertragen werden. Diese Signaturen werden unter Verwendung von Schlüsseln erzeugt und in den betroffenen Steuergeräten überprüft. In bestimmten Fällen kann es genügen, diese Absicherung auf einen Teil der betroffenen Steuergeräte zu beschränken. Ein Kunde erwirbt dazu eine Nutzungslizenz in Form des oder der Freischaltcodes, d.h. die Freischaltcodes werden mit dem erworbenen Software-Produkt identifiziert.
-
Bei einer bevorzugten erfindungsgemäßen Ausführungsform werden nur diejenigen Software-Produkte des mindestens einen auf dem Datenträger befindlichen Software-Produkts angezeigt, welche mit einer aktuellen Konfiguration der Steuergeräte kompatibel sind.
-
Indem nur diejenigen Software-Produkte angezeigt werden, welche mit der aktuellen Konfiguration der Steuergeräte kompatibel sind, wird vermieden, dass ein potentieller Käufer ein Software-Produkt kauft, welches nicht in dem Fahrzeug zu installieren ist, da es mit der aktuellen Konfiguration der Steuergeräte nicht zusammenpasst.
-
Die Überprüfung, welche Software-Produkte auf dem Datenträger mit der aktuellen Konfiguration der Steuergeräte kompatibel ist, kann dabei anhand von Kompatibilitätslisten und einer entsprechenden Information über die aktuelle Konfiguration der Steuergeräte innerhalb oder außerhalb des Fahrzeugs erfolgen. Mit anderen Worten kann diese Überprüfung entweder in dem Fahrzeug selbst vorgenommen werden oder sie kann beispielsweise auf einem Server eines Verkäufers (bei der Verkaufsstelle) vorgenommen werden. Dazu muss dieser Server allerdings die Kompatibilitätslisten, welche beispielsweise auf dem Datenträger vorhanden sind, und die entsprechende Information über die aktuelle Konfiguration der Steuergeräte kennen, was dadurch gewährleistet werden kann, indem die Kompatibilitätslisten und die entsprechende Information über das Kommunikationsnetz zu dem Server übertragen werden.
-
Das mindestens eine auf dem Datenträger gespeicherte Software-Produkt kann auch mit Hilfe einer Sprachausgabe angezeigt werden.
-
Indem das Anzeigen des mindestens einen Software-Produkts durch eine Sprachausgabe unterstützt wird, kann das erfindungsgemäße Verfahren vorteilhafterweise auch bei Fahrzeugen in kundenfreundlicher Art und Weise ausgeführt werden, welche nur über eine eingeschränkte optische Anzeigemöglichkeit verfügen.
-
Es wird auch eine Vorrichtung zum Laden oder Ändern einer Software für ein Fahrzeug bereitgestellt. Dabei ist diese Vorrichtung mit mehreren Steuergeräten des Fahrzeugs zu koppeln. Die Vorrichtung umfasst eine physikalische Schnittstelle für eine Übertragung von zum Laden oder Ändern von Software der Steuergeräte notwendigen Daten an die Vorrichtung, einen Prozessor, um die Daten zu bearbeiten, und einen Speicher, um die Daten, bearbeitete Daten oder zumindest einen Teil der Daten zu speichern. Die Vorrichtung verwaltet mit Hilfe des Prozessors die zum Laden oder Ändern der Software notwendigen Daten und verteilt diese Daten in entsprechender Weise an die Steuergeräte.
-
Die Vorteile der Vorrichtung entsprechen im Wesentlichen den Vorteilen des entsprechenden Verfahrens, welche vorab im Detail diskutiert werden, weshalb hier auf eine Wiederholung verzichtet wird.
-
Bei der Vorrichtung kann es sich um ein Radiogerät oder um ein Navigationsgerät des Fahrzeugs handeln.
-
Indem es sich bei der Vorrichtung um ein Radiogerät oder um ein Navigationsgerät handelt, kann eine entsprechende Kommunikationsschnittstelle, welche ein solches Radiogerät oder ein solches Navigationsgerät in der Regel aufweist, vorteilhafterweise auch für die Übertragung der zum Laden oder Ändern der Software notwendigen Daten eingesetzt werden. Da zumindest eine aktuelles Navigationsgerät auch einen Speicher und einen Prozessor umfasst, kann dieser Prozessor und dieser Speicher auch von der Vorrichtung in vorteilhafter Weise eingesetzt werden, so dass die Vorrichtung in diesem Fall keinen eigenen Prozessor und keinen eigenen Speicher benötigt.
-
Bei einer bevorzugten Ausführungsform umfasst die Vorrichtung eine von den restlichen Bestandteilen, wie z.B. der physikalischen Schnittstelle oder dem Prozessor, der Vorrichtung abgesetzte, d.h. beabstandete, Komponente. Diese abgesetzte Komponente ist derart ausgestaltet, dass auf ihr Verfahren durchgeführt werden können, mit welchen eine Authentizität und Integrität der zum Laden oder Ändern der Software notwendigen Daten sichergestellt werden kann.
-
Indem die Komponente zur Durchführung von sicherheitskritischen Verfahren zur Sicherstellung der Authentizität und Integrität von dem Rest der Vorrichtung abgesetzt ist, ist eine Manipulation der Vorrichtung, um fälschlicherweise eine Authentizität oder Integrität von manipulierten Daten vorzugaukeln, schwieriger durchzuführen, als wenn diese Komponente in der Nähe der weiteren Komponenten der Vorrichtung angeordnet wäre, da diese abgesetzte Komponente zur Manipulation erst einmal aufgefunden werden muss. Durch diese physikalische Trennung zwischen der Komponente zur Durchführung von sicherheitskritischen Verfahren und den weiteren Komponenten (beispielsweise für den Fahrbetrieb notwendige Steuergeräte) ist darüber hinaus ein Übergreifen von Malware bzw. korrupter Software auf diese weiteren Komponenten unwahrscheinlicher.
-
Im Rahmen der vorliegenden Erfindung wird eine Vorrichtung zum Laden oder Ändern einer Software für ein Fahrzeug bereitgestellt. Auch in diesem Fall ist die Vorrichtung mit mehreren Steuergeräten des Fahrzeugs zu koppeln. Die Vorrichtung umfasst eine Leseeinheit, um Daten von einem Datenträger zu lesen, einen Prozessor, um Daten zu bearbeiten, einen Speicher, um Daten zu speichern, eine physikalische Schnittstelle, um Daten von und in ein Kommunikationsnetz zu übertragen, und eine Anzeige. Mittels der Anzeige zeigt die Vorrichtung bestimmte Informationen über mindestens ein auf dem Datenträger gespeichertes Software-Produkt an. Mit Hilfe der Anzeige wird dann mindestens eines des mindestens einen Software-Produkts ausgewählt. Das heißt, wenn sich auf dem Datenträger nur ein Software-Produkt befindet, kann dieses ausgewählt (oder nicht ausgewählt) werden, und wenn sich auf dem Datenträger mehrere Software-Produkte befinden, kann eines oder mehrere dieser Software-Produkte ausgesucht werden. Die Vorrichtung ist in der Lage, von dem Datenträger zum Laden oder Ändern der Software notwendige Daten zu mindestens einem der Steuergeräte des Fahrzeugs zu übertragen. Ausgehend von dem ausgewählten mindestens einen Softwareprodukt erzeugt die Vorrichtung eine das ausgewählte mindestens eine Softwareprodukt identifizierende Information und überträgt diese Information zusammen mit Daten, welche für einen Kauf eines Software-Produkts notwendig sind, über die physikalische Schnittstelle in das Kommunikationsnetz. Anschließend empfängt die Vorrichtung über die physikalische Schnittstelle Daten aus dem Kommunikationsnetz, mit welchen das ausgewählte mindestens eine Software-Produkt freigeschaltet werden kann bzw. freigeschaltet wird. Mit Hilfe dieser Freischaltung installiert die Vorrichtung das ausgewählte mindestens eine Software-Produkt auf dem oder den entsprechenden Steuergeräten.
-
Auch die Vorteile der erfindungsgemäßen Vorrichtung sind vorab bei der Diskussion des erfindungsgemäßen Verfahrens im Detail ausgeführt.
-
Schließlich wird im Rahmen der vorliegenden Erfindung ein Fahrzeug bereitgestellt, welches die erfindungsgemäße Vorrichtung umfasst.
-
Der bevorzugte Anwendungsbereich der vorliegenden Erfindung ist der allgemeine Download oder Upload von Fahrzeugsoftware und der Kauf und die Installation von Fahrzeugssoftware mittels eines Datenträgers. Selbstverständlich ist die vorliegende Erfindung nicht auf diesen bevorzugten Anwendungsbereich beschränkt, sondern kann beispielsweise auch zur Installation von Software bei Schiffen, Flugzeugen oder gleisgebundenen Fahrzeugen eingesetzt werden. Darüber hinaus ist es natürlich auch möglich, eine gekaufte Software nicht über einen Datenträger sondern über ein Kommunikationsnetz in das Fahrzeug und schließlich auf die Steuergeräte des Fahrzeugs zu übertragen.
-
Es sei darauf hingewiesen, dass die beiden vorab diskutierten eigenständigen Verfahren auch kombiniert werden können. Zum Beispiel kann der Softwaremanager auch zur Installation von gekaufter auf einem Datenträger befindlicher Software eingesetzt werden.
-
Die vorliegende Erfindung wird nun anhand bevorzugter Ausführungsformen mit Bezug auf die Zeichnung erläutert.
- 1 stellt schematisch eine erfindungsgemäße Vorrichtung mit Softwaremanager und seinen Schnittstellen dar.
- In 2 ist schematisch eine zur erfindungsgemäßen Installation notwendige Kommunikationsverbindung zwischen einem erfindungsgemäßen Kraftfahrzeug und einem Server dargestellt.
-
In 1 ist schematisch eine in Steuergeräten 5 eines in 1 nicht dargestellten Kraftfahrzeugs zu installierende Software 4 zusammen mit einer Vorrichtung 7, welche diese Installation bewerkstelligen soll, dargestellt. Die Vorrichtung 7 umfasst einen Softwaremanager 1, einen nicht flüchtigen Speicher bzw. eine Datenbank 2, eine Anzeige 3 und eine abgesetzte Komponente 20. Der Softwaremanager 1 umfasst wiederum einen Prozessor 19, eine physikalische Schnittstelle 6 und eine Schnittstelle 8 zu den Steuergeräten 5.
-
Mit Hilfe einer drahtlosen Internetverbindung oder einem Mobilfunknetz oder aber durch drahtgebundene Verbindungen, wie z.B. USB, oder aber durch eine Verbindung von einem Lesegerät, welches einen Datenträger, wie z.B. eine CD oder DVD, liest, werden dem Softwaremanager 1 über die physikalische Schnittstelle 6 die zum Laden oder Ändern der Software notwendigen Daten 4 übertragen. Der Softwaremanager 1 bearbeitet diese Daten, speichert die gesamten Daten oder einen Teil davon in einer Datenbank 2 und überträgt entsprechende Daten über seine Schnittstelle 8 zu einem oder mehreren der Steuergeräte 5, um die Software der entsprechenden Steuergeräte 5 zu aktualisieren oder neu zu installieren. Dabei können bestimmte Informationen, beispielsweise eine Fortschrittsanzeige der Installation oder zur Installation notwendige Fragen, auf der Anzeige 3 ausgegeben werden. Darüber hinaus können über diese Anzeige 3, welche gleichzeitig als eine Benutzerschnittstelle fungiert, auch die Installation verändernde Daten dem Softwaremanager 1 zugeführt werden.
-
Mit Hilfe der abgesetzten Komponente 20, welche von den restlichen Komponenten der Vorrichtung 7 örtlich abgesetzt ist, werden sicherheitskritische Verfahren durchgeführt, um eine Authentizität und Integrität der zum Laden oder Ändern der Software notwendigen Daten 4 sicherzustellen.
-
In 2 sind schematisch alle Kommunikationsverbindungen dargestellt, um eine gekaufte Software erfindungsgemäß in einem Kraftfahrzeug 10 zu installieren. Dazu wird in einem ersten Schritt ein Datenträger, wie z.B. eine CD 9, von einem Benutzer 11 derart mit dem Kraftfahrzeug 10 gekoppelt, dass das Kraftfahrzeug 10, genauer die entsprechende in 2 nicht dargestellte Vorrichtung 7, die auf dem Datenträger 9 gespeicherten Daten, z.B. mit Hilfe eines entsprechenden Lesegeräts, lesen kann. Bei diesen auf dem Datenträger 9 gespeicherten Daten handelt es sich um mehrere Software-Produkte, welche in den Steuergeräten 5 des Kraftfahrzeugs 10 installiert werden können. Diese Daten-CD oder Daten-DVD 9 (oder einen anderen Datenträger, wie z.B. einen USB-Stick oder eine SD-Karte) hat der Benutzer (gleich Fahrer oder Käufer) 11 beispielsweise als eine Zeitschriftenbeilage erhalten. Neben den in den Steuergeräten 5 zu installierenden Software-Produkten, welche meist als ausführbarer Code (Flashcode) auf dem Datenträger 9 gespeichert sind, enthält der Datenträger 9 in der Regel Kompatibilitätslisten für jedes Software-Produkt und optional Produktbeschreibungen und Preise für die Software-Produkte. Mit Hilfe der Kompatibilitätslisten kann entschieden werden, welche Software-Produkte zu der aktuellen Konfiguration der Steuergeräte 5 kompatibel sind.
-
Anhand der aktuellen Konfiguration der Steuergeräte 5 überprüft die Vorrichtung 7 beispielsweise, welche Software-Produkte auf dem Datenträger 9 mit der aktuellen Konfiguration der Steuergeräte 5 kompatibel sind und zeigt nur diese Software-Produkte auf der Anzeige 3 an. Die Kompatibilität wird mit Hilfe der aktuellen Fahrzeugdokumentation, welche im Fahrzeug 10 gehalten wird oder jeweils dynamisch erzeugt wird, mittels des Prozessors 19 für jedes auf dem Datenträger 9 gespeichertes Software-Produkt überprüft. Alternativ können natürlich auch alle auf dem Datenträger 9 abgespeicherten Software-Produkte unabhängig von der Kompatibilität auf der Anzeige 3 dargestellt werden. Es ist auch möglich, dass die Kompatibilität auf Seiten des Servers 12, welcher die Software und die Freischaltcodes an das Fahrzeug übergibt, sichergestellt wird. Auf der Anzeige 3 werden dem Fahrer 11 die Software-Produkte beschrieben, was durch eine lokale Sprachausgabe unterstützt werden kann. Anschließend wählt der Benutzer 11 eines dieser Software-Produkte (oder mehrere) aus, um es käuflich zu erwerben. Daraufhin erzeugt die Vorrichtung 7 eine dieses Software-Produkt identifizierende Information oder liest die entsprechende Information von dem Datenträger 9. Diese Information wird dann von der Vorrichtung 7 über ein Kommunikationsnetz, beispielsweise das Internet 14 oder ein Mobilfunknetz 15, zusammen mit für den Kauf des Software-Produkts wichtigen persönlichen Daten des Käufers 11 (damit ein Verkäufer des Software-Produkts das Geld von dem Käufer automatisch einziehen kann) an einen Server 12 des Verkäufers übertragen. Zur Übertragung dieser Information und Daten kann entweder ein Mobiltelefon 17, welches beispielsweise über Bluetooth mit einem Infotainment-System des Fahrzeugs 10 verbunden ist und über GSM/GPRS oder UMTS Daten über das Mobilfunknetz 15 austauscht, oder ein WLAN-Access-Point 18 verwendet werden. Die zum Kauf eines Software-Produkts wichtigen persönlichen Daten des Käufers 11 können entweder in dem Speicher 2 der Vorrichtung 7 abgespeichert sein oder sie werden nach der Auswahl des oder der Software-Produkte von dem Fahrer 11 beispielsweise über die Anzeige 3 eingegeben. Wichtig ist dabei, dass das Fahrzeug 10 eine Online-Datenverbindung mit dem Server 12 herstellen kann, über welche Daten des Kaufvorgangs, ausführbarer Code, Schlüssel 13 und gegebenenfalls Anfragen, Produktinformationen, usw. übertragen werden können.
-
Auf der Seite des Verkäufers, d.h. auf dem Server 12, werden nun die übermittelten Daten des Käufers 11 überprüft und bei einem positiven Ergebnis der Überprüfung wird ein Freischaltcode 13 für das nun gekaufte Software-Produkt erstellt. Dieser Freischaltcode 13 wird auf demselben Weg, wie die das gekaufte Software-Produkt identifizierende Information zusammen mit den persönlichen Daten des Käufers 11 vom Fahrzeug 10 zu dem Server 12 übermittelt wurde, in der anderen Richtung von dem Server 12 zu dem Fahrzeug 10 übertragen. Mittels des Freischaltcodes 13 läuft nun die Installation des gekauften Software-Produkts oder eine entsprechende Freischaltung in dem Fahrzeug 10, d.h. z.B. mittels des CAN-Busses auf den entsprechenden Steuergeräten 5, automatisch ab. Nach der erfolgreichen Installation oder Freischaltung des gekauften Software-Produkts wird der Fahrer oder Käufer 11 des Fahrzeugs 10 über die Anzeige 3 über den erfolgreichen Kauf und die erfolgreiche Installation oder Freischaltung informiert, worauf dieser den Datenträger 9, z.B. eine CD, aus dem entsprechenden Lesegerät entfernt. Nach der erfolgreichen Installation oder Freischaltung kann auch die Fahrzeugdokumentation oder Bauzustanddokumentation automatisch entsprechend aktualisiert werden. Ein Geldtransfer (Rechnungsstellung oder Abbuchung) wird in der Regel nach der erfolgreichen Übertragung des Freischaltcodes automatisch veranlasst.
-
Die Überprüfung, ob ein bestimmtes auf dem Datenträger 9 abgespeichertes Software-Produkt mit der aktuellen Konfiguration der Steuergeräte 5 kompatibel ist, kann auch auf dem Server 12 erfolgen. Dazu wird die VIN zum Server übertragen, über welche die auf dem Datenträger 9 abgespeicherten Software-Produkte auf dem Server 12 identifiziert werden können. Der Server ermittelt die kompatiblen Produkte und überträgt Verweise auf diese (d.h. Informationen, mit welchen die kompatiblen Software-Produkte identifiziert werden können) auf demselben Weg zum Fahrzeug 10 zurück, auf welchem der Server 12 auch den Freischaltcode 13 an das Fahrzeug 10 überträgt. Für dieses Vorgehen müssen die Fahrzeugdokumentation und die Kompatibilitätslisten auf dem Server 12 verfügbar sein. Die Beschreibungen der Software-Produkte selbst werden nicht zum Server 12 übertragen.
-
Das Lesen der Software-Produkte von dem Datenträger 9, der Dialog samt notwendiger Datenaufbereitung und Datenerzeugung mit dem IT-System bzw. Server 12 des Verkäufers, die Bearbeitung der auf dem Datenträger 9 gespeicherten Daten und der von dem Server 12 übertragenen Daten (z.B. Freischaltcode) und das Installieren oder Freischalten des gekauften Software-Produkts auf dem oder den entsprechenden Steuergeräten 5 wird dabei insbesondere von dem Softwaremanager 1 ausgeführt.
-
Bezugszeichenliste
-
- 1
- Softwaremanager
- 2
- Datenbank
- 3
- Anzeige
- 4
- Software
- 5
- Steuergerät
- 6
- physikalische Schnittstelle
- 7
- Vorrichtung
- 8
- Schnittstelle
- 9
- Datenträger
- 10
- Kraftfahrzeug
- 11
- Benutzer
- 12
- Server
- 13
- Freischaltschlüssel
- 14
- Internet
- 15
- Mobiltelefonnetz
- 16
- Schnittstelle
- 17
- Mobiltelefon
- 18
- WLAN-Access-Point
- 19
- Prozessor
- 20
- abgesetzte Komponente