-
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.
-
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 oder Anspruch 10, eine Vorrichtung zum Laden oder Ändern einer
Software für
ein Fahrzeug nach Anspruch 16 oder 20 sowie ein entsprechend ausgestaltetes
Fahrzeug nach Anspruch 22 gelöst. Die
abhängigen
Ansprüche
definieren bevorzugte und vorteilhafte Ausführungsformen der vorliegenden
Erfindung.
-
Im
Rahmen der vorliegenden Erfindung wird ein Verfahren zum Betreiben
eines Fahrzeugs bereitgestellt, 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 erfindungsgemäßen 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 erfindungsgemäßen 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 auch ein weiteres 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.
-
Im
Rahmen der vorliegenden Erfindung 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 erfindungsgemäßen Vorrichtung
entsprechen im Wesentlichen den Vorteilen des entsprechenden erfindungsgemäßen 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 erfindungsgemäßen Vorrichtung in vorteilhafter
Weise eingesetzt werden, so dass die erfindungsgemäße Vorrichtung
in diesem Fall keinen eigenen Prozessor und keinen eigenen Speicher
benötigt.
-
Bei
einer bevorzugten erfindungsgemäßen 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 auch eine weitere 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 dieser erfindungsgemäßen Vorrichtung sind vorab
bei der Diskussion des entsprechenden erfindungsgemäßen Verfahrens
im Detail ausgeführt.
-
Schließlich wird
im Rahmen der vorliegenden Erfindung ein Fahrzeug bereitgestellt,
welches eine entsprechende 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 Senner 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.
-
- 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