-
Die
vorliegende Erfindung betrifft ein Kraftfahrzeugssteuergerätedatenübertragungssystem
und -verfahren. Insbesondere betrifft sie ein solches System und
Verfahren zur Übertragung
manipulationsgefährdeter
Daten von einer zentralen Datenverarbeitungseinheit bei einem Kraftfahrzeughersteller
an eine Kraftfahrzeugdatenverarbeitungseinheit, wie einem elektronischen
Antriebsmotorregelgerät,
wobei eine manipulationsfreie Datenübertragung gewährleistet
wird.
-
Aus
dem Stand der Technik sind Kraftfahrzeuge, insbesondere landwirtschaftliche
Nutzfahrzeuge, z. B. Ackerschlepper mit Verbrennungsmotoren, insbesondere
Dieselmotoren, bekannt. Deren einzelne Bestandteile, wie beispielsweise
Antriebsmotor oder Wegfahrsperre, werden über elektronische Steuervorrichtungen
gesteuert. Bei derartigen Fahrzeugen ist es erforderlich, dass diese
Steuergeräte
beim Abschluss der Fertigung mit Daten programmiert werden, um das
Fahrzeug in einen betriebsbereiten Zustand zu versetzen. Bei dem
Beispiel eines Antriebsmotorregelgeräts und eines Wegfahrsperrensteuergeräts bedeutet
dies zum Einen, dass das Wegfahrsperrensteuergerät mit Merkmalen zulässiger Zündschlüssel programmiert
wird. Zum Anderen bedeutet dies, dass das Antriebsmotorregelgerät mit einem
Kommunikationsschlüssel
zur Kommunikation mit demjenigen Wegfahrsperrensteuergerät programmiert
wird, von dem es ausschließlich
eine Startanweisung akzeptieren wird. Um einen unbefugten Gebrauch
des Fahrzeuges zu verhindern, ist es erforderlich, dass diese Datenübertragung
hohen Sicherheitsanforderungen genügt und nicht manipuliert oder
kompromittiert werden kann.
-
Darüber hinaus
wird das Antriebsmotorregelgerät
mit Steuerdaten programmiert, die insbesondere situationsabhängig zulässige Maximaldrehmomente
repräsentieren.
Dies sind beispielsweise Funktionen, die abhängig von der aktuellen Motordrehzahl
ein maximal anwählbares
Wunschdrehmoment des Antriebsmotors hinsichtlich verschiedener Aspekte,
wie Überhitzungsschutz, Überlastungsschutz,
Emission bzw. Leistungsklasse des Antriebsmotors beschränken. Hierüber werden
auch Antriebsmotoren einer Modellreihe in ihrer Leistung unterschiedlich
beschränkt,
um so zwar baugleiche, aber unterschiedlich leistungsfähige Antriebsmotormodelle
zu erhalten. Um eine Leistungsmanipulation oder eine Fehlfunktion
des Antriebsmotors durch Veränderung
der Programmierung des Antriebsmotorregelgeräts zu verhindern, wird beim
Betrieb des Fahrzeuges ein Abgleich zwischen den Steuerdaten und
den in dem Wegfahrsperrensteuergerät hinterlegten Referenzdaten
erfolgen. Um eine unbefugte oder rechtswidrige Leistungssteigerung
durch Manipulation der Steuerdaten zu verhindern, ist es erforderlich,
dass auch diese Datenübertragung
hohen Sicherheitsansprüchen
genügt
und nicht manipuliert oder kompromittiert werden kann.
-
Eine
solche sichere Übertragung
dieser sicherheitsrelevanten Daten ist innerhalb eines kontrollierten
Bereiches, wie beispielsweise der Fertigungsstätte des Fahrzeugs beim Hersteller,
insbesondere durch organisatorische Maßnahmen relativ einfach durchführbar. Wird
aber durch einen Fahrzeugdefekt oder eine Fehlfunktion eine Neuprogrammierung
der elektronischen Steuergeräte
des Kraftfahrzeugs erforderlich, musste das Kraftfahrzeug bisher
in einen solchen kontrollierten Bereich verbracht werden, wenn ausgeschlossen
werden sollte, dass Dritte unbefugt Zugang zu den zu übertragenden
Daten bekommen können
oder dass Unbefugte die Datenübertragung
manipulieren können.
Dies ist beispielsweise dann der Fall, wenn die Wegfahrsperre sperrt
und einen Fahrzeugbetrieb unterbindet. Dies führt insbesondere bei nur aufwendig
zu transportierenden landwirtschaftlichen Nutzfahrzeugen zu erheblichem
Aufwand und Kosten.
-
Druckschrift
DE 100 08 973 A1 offenbart
ein Verfahren zur Sicherstellung der Datenintegrität einer Software
für ein
Steuergerät
eines Kraftfahrzeugs, in dem in einem Speicher eine das Steuergerät in seiner
Wirkungsweise beeinflussende Software speicherbar ist. Das Verfahren
weist folgende Schritte auf: Bereitstellen eines Steuergeräteschlüsselpaars
mit einem ersten und einem zweiten Schlüssel, Bereitstellen einer bestimmen
Anzahl n von Zertifikats-Schlüsselpaare
mit jeweils einem ersten und einem zweiten Schlüssel, Hinterlegen des ersten Schlüssels des
Steuergeräteschlüsselpaars
in oder für
das Steuergerät
in dem Kraftfahrzeug, Erstellen von der bestimmten Anzahl n entsprechenden
Zertifikaten, wobei jedes Zertifikat eine Zertifikatsinformation
umfasst, in der Zertifikatsinformationen des letzten Zertifikats
zumindest ein Schlüssel
zur Überprüfung der
Software und – falls
mehrere Zertifikate verwendet werden – in den anderen Zertifikatsinformationen
zumindest ein Schlüssel
zur Überprüfung des nachfolgenden
Zertifikats abgelegt sind, Signieren der Zertifikatsinformation
des ersten Zertifikats mit dem zweiten Schlüssel des Steuergeräteschlüsselpaares
und – falls
mehr als ein Zertifikat vorhanden ist – Signieren der übrigen Zertifikate
mit dem jeweils zweiten Schlüssel
eines Zertifikatschlüsselpaars,
von dem der jeweils erste Schlüssel
in der Zertifikatsinformation des vorhergehenden Zertifikats abgelegt
ist, Signieren einer neu einzuspielenden Software mit dem zweiten
Schlüssel
eines Zertifikats-Schlüsselpaars,
von dem der erste Schlüssel
in der Zertifikatsinformation des letzten Zertifikats abgelegt ist,
Einspielen aller signierten Zertifikate in das Steuergerät, Einspielen
der signierten Software in das Steuergerät, Überprüfen der Signatur des ersten
Zertifikats mit dem im oder für
das Steuergerät
hinterlegten ersten Schlüssel
des Steuergeräte-Schlüsselpaars
und – falls
mehr als ein Zertifikat vorhanden ist – Überprüfen der Signatur jeden weiteren
Zertifikats mittels dem in der Zertifikatsinformation des vorhergehenden
Zertifikats enthaltenen ersten Schlüssels, Akzeptieren der Zertifikatsinformation
eines jeweiligen Zertifikats, wenn die jeweilige Überprüfung mit
positivem Ergebnis verläuft,
und Überprüfen der
Signatur der Software mit dem in der Zertifikatsinformation des letzten
Zertifikats hinterlegten ersten Schlüssels und Akzeptieren der eingespielten
Software, wenn auch diese Überprüfung mit
positivem Ergebnis verläuft.
-
Es
ist Aufgabe der vorliegenden Erfindung, dieses Problem zu lösen. Insbesondere
ist es Aufgabe der vorliegenden Erfindung, ein Kraftfahrzeugssteuergerätedatenübertragungssystem
und -verfahren bereitzustellen, das es erlaubt, Steuerdaten manipulationssicher
auf Steuergeräte zu übertragen,
selbst wenn die Steuergeräte
nicht in einen kontrollierten Bereich verbracht werden.
-
Die
Aufgabe wird gelöst
durch ein System gemäß Anspruch
1 und ein Verfahren gemäß Anspruch
17. Vorteilhafte Weiterbildungen sind Gegenstand der Unteransprüche.
-
Nach
einem Aspekt der Erfindung wird ein Datenübertragungssystem zur Programmierung
von Kraftfahrzeugsteuergeräten
bereitgestellt, das aufweist: eine erste Datenverarbeitungsvorrichtung,
die daran angepasst ist, Daten zu speichern, die vor un autorisiertem
Zugriff zu schützen
sind, eine zweite Datenverarbeitungsvorrichtung und eine dritte
Datenverarbeitungsvorrichtung die daran angepasst ist, Daten zu
enthalten, die vor unautorisiertem Zugriff zu schützen sind
und auf die erste Datenverarbeitungsvorrichtung zu übertragen
sind. Hierbei sind die erste Datenverarbeitungsvorrichtung und die
zweite Datenverarbeitungsvorrichtung daran angepasst, über eine
erste Datenübertragungsvorrichtung
miteinander verbunden zu werden und auf der ersten Datenverarbeitungsvorrichtung
gespeicherte Daten als erste Übermittlungsdaten
auf die zweite Datenverarbeitungsvorrichtung zu übertragen. Gleichzeitig sind
die zweite Datenverarbeitungsvorrichtung und die dritte Datenverarbeitungsvorrichtung
daran angepasst, die zweite Datenverarbeitungsvorrichtung von einem
Bereich bei der ersten Datenverarbeitungsvorrichtung in einen räumlichen
Bereich zu verbringen, in dem die zweite Datenverarbeitungsvorrichtung
mit der dritten Datenverarbeitungseinrichtung mittelbar oder unmittelbar über eine
zweite Datenübertragungsvorrichtung
verbunden werden kann, die zweite Datenverarbeitungsvorrichtung
und die dritte Datenverarbeitungsvorrichtung mittelbar oder unmittelbar über die zweite
Datenübertragungsvorrichtung
zu verbinden und mindestens einen Anteil der ersten Übermittlungsdaten
von der zweiten Datenverarbeitungsvorrichtung an die dritte Datenverarbeitungsvorrichtung als
zweite Übermittlungsdaten
zu übertragen.
Dabei ist die dritte Datenverarbeitungsvorrichtung daran angepasst,
aus den ersten Übermittlungsdaten
oder einem Anteil daraus mittels einer Erzeugungsfunktion einen
Authentisierungserwiderungswert zu erzeugen. Gleichzeitig sind die
zweite Datenverarbeitungsvorrichtung und die dritte Datenverarbeitungsvorrichtung
daran angepasst, den Authentisierungserwiderungswert und Daten,
die in der dritten Datenverarbeitungsvorrichtung gespeichert sind,
als dritte Übermittlungsdaten
an die zweite Datenverarbeitungsvorrichtung zu übertragen.
-
Hierbei
sind die erste Datenverarbeitungsvorrichtung und die zweite Datenverarbeitungsvorrichtung
daran angepasst, den Authentisierungserwiderungswert und die übrigen dritten Übermittlungsdaten
oder einen Anteil davon an die erste Datenverarbeitungsvorrichtung
als vierte Übermittlungsdaten zu übertragen.
Gleichzeitig ist die erste Datenverarbeitungsvorrichtung daran angepasst,
die Korrektheit des Authentisierungserwiderungswertes mittels der ersten Übermittlungsdaten
oder Anteilen davon zu überprüfen und
die vierten Übermittlungsdaten
weiterzuverarbeiten.
-
In
einer Weiterbildung der Erfindung werden mindestens über die
dritten Übermittlungsdaten
und die vierten Übermittlungsdaten
Streuwerte erzeugt und mit den jeweiligen Übermittlungsdaten mitgesendet.
So kann verhindert werden, dass die übertragenen Daten unerkannt
verändert
werden.
-
Die
Erfindung weiterführend
können
die Bestandteile des Datenübertragungssystems
so ausgestaltet sein, dass die ersten Übermittlungsdaten und die vierten Übermittlungsdaten
mittels eines ersten Verschlüsselungsmechanismus
verschlüsselt
werden und/oder die zweiten Übermittlungsdaten
und die dritten Übermittlungsdaten
mittels eines zweiten Verschlüsselungsmechanismus
verschlüsselt
werden. Hierbei besteht keine Notwendigkeit, dass der erste Verschlüsselungsmechanismus
und der zweite Verschlüsselungsmechanismus
unterschiedliche Mechanismen sind. So kann nicht nur sichergestellt werden,
dass die übermittelten
Daten von einer autorisierten Stelle stammen, und während der
Datenübertragung
nicht verändert
wurden, sondern auch dass Unbefugte keine Einsicht in die übermittelten Daten
erlangen.
-
In
einer Weiterbildung der Erfindung können die erste und zweite Datenverarbeitungsvorrichtung daran
angepasst sein, dass eine Authentifizierung von erster bzw. zweiter
Datenverarbeitungsvorrichtung mittels eines Challenge-Response-Verfahrens erfolgt.
So kann sichergestellt werden, dass das Datenübertragungssystem nicht mit
einem nicht autorisierten, möglicherweise
manipulierten Gerät
kompromittiert wird.
-
In
einer Weiterbildung der Erfindung werden die zweiten Übermittlungsdaten
von der dritten Datenverarbeitungsvorrichtung oder von einem an
die dritte Datenverarbeitungsanlage angeschlossenen Datenspeicher
dauerhaft gespeichert. Dies ermöglicht
eine Protokollierung der durchgeführten Änderungen an der ersten Datenverarbeitungsvorrichtung.
-
Vorzugsweise
beinhalten die zweiten Übermittlungsdaten
Identifikationsmerkmale der zweiten Datenverarbeitungsvorrichtung
und/oder dessen Benutzers, was eine Protokollierung derselben ermöglicht.
In einem Fall, in dem diese Merkmale als Teil der dritten Übermittlungsdaten übermittelt
werden und anschließend
durch die zweite Datenverarbeitungsvorrichtung ausgewertet werden,
kann sichergestellt werden, dass die dritten Übertragungsdaten nicht von
anderen zweiten Datenverarbeitungsvorrichtungen verarbeitet werden.
-
Weitere
Merkmale der Erfindung werden aus der folgenden Beschreibung eines
Ausführungsbeispiels
und den begleitenden Zeichnungen offensichtlich.
-
1 zeigt
ein Blockschaltbild eines Ackerschleppers mit Servicewerkzeugen
gemäß einem Ausführungsbeispiel
der Erfindung.
-
2 zeigt
einen 1 ergänzenden
Teil des Datenverarbeitungssystems gemäß dem Ausführungsbeispiel.
-
3 zeigt
ein Ablaufdiagramm der Datenkommunikation des Ausführungsbeispiels.
-
4 zeigt
ein Ablaufdiagramm für
die Erstellung eines Anforderungspakets gemäß dem Ausführungsbeispiel.
-
5 zeigt
ein Ablaufdiagramm der Verarbeitung des Anforderungspakets und der
Erstellung eines Freischaltpakets.
-
6 zeigt
ein Ablaufdiagramm des Einspielens von Daten aus dem Freischaltpaket
gemäß dem Ausführungsbeispiel.
-
Im
Folgenden wird ein Ausführungsbeispiel der
Erfindung beschrieben.
-
1 zeigt
ein Blockschaltbild eines Teils des Datenübertragungssystems der Erfindung
gemäß einem
Ausführungsbeispiel.
-
Das
System weist ein landwirtschaftliches Nutzfahrzeug, insbesondere
einen Ackerschlepper 1, auf. Teil des Ackerschleppers ist
ein Motor, insbesondere ein Dieselmotor 2 mit Common-Rail-Einspritzung. In üblicher
Weise wird durch die Verbrennung von Kraftstoff eine Rotation einer
Kurbelwelle des Dieselmotors 2 erzeugt und auf nicht gezeigte
Antriebsräder
und eine oder mehrere Zapfwellen übertragen. Eine Leistungsabgabe
bzw. ein Drehmoment des Dieselmotors 2 wird in erster Linie
durch eine für eine
Verbrennung eingespritzte Kraftstoffmenge bestimmt.
-
Die
einzuspritzende Kraftstoffmenge wird durch eine elektronische Motorregeleinrichtung 3 (im Folgenden ”Electronic
Motor Control, EMC”;
in den Ansprüchen ”erste Datenverarbeitungsvorrichtung”) bestimmt.
Die EMC 3 weist mehrere Schnittstellen zur Ein- und Ausgabe
von Signalen auf. Darüber
hinaus besitzt die EMC 3 einen Steuerdatenspeicher 4. Dieser
Steuerdatenspeicher 4 ist ein nichtflüchtiger elektronischer Speicher
wie ein EPROM oder ein batteriegepufferter RAM. Der Steuerdatenspeicher 4 beinhaltet
Datenbereiche für
Steuerdaten, die insbesondere situationsabhängig zulässige Maximaldrehmomente repräsentieren.
Dies sind beispielsweise Funktionen, die abhängig von der aktuellen Motordrehzahl
ein maximal anwählbares
Wunschdrehmoment des Antriebsmotors hinsichtlich verschiedener Aspekte,
wie Überhitzungsschutz, Überlastungsschutz,
Emission bzw. Leistungsklasse des Antriebsmotors beschränken. Hierüber werden
auch Antriebsmotoren einer Modellreihe in ihrer Leistung unterschiedlich
beschränkt
und so zwar baugleiche aber unterschiedlich leistungsfähige Antriebsmotormodelle
erhalten. Die Funktion, die eine Leistungsklasse des Antriebsmotors
bestimmt, wird im folgenden Dachkurve genannt. Alternativ können hier
anstelle eines Drehmoments auch eine Treibstoffmenge, Ansteuerungsdauer,
Bestromung, Leistung oder ein Druck verwendet werden.
-
Darüber hinaus
beinhaltet der Steuerdatenspeicher einen Bereich für eine Seriennummer
und einen Kommunikationsschlüssel
eines Wegfahrsperrensteuergeräts.
-
Der
Ackerschlepper 1 beinhaltet ferner ein Wegfahrsperrensteuergerät 5 (ebenfalls „erste
Datenverarbeitungsvorrichtung”).
Das Wegfahrsperrensteuergerät
beinhaltet einen Referenzspeicher 6, in welchem Teile der
Steuerdaten aus dem Steuerdatenspeicher 4 als Referenzsteuerdaten
gespeichert werden. Darüber
hinaus besitzt das Wegfahrsperrensteuergerät einen Schlüsselmerkmalsspeicher 7,
in dem Merkmale von Zündschlüsseln gespei chert
werden, die dazu berechtigen, den Ackerschlepper 1 zu starten.
-
EMC 3 und
Wegfahrsperrensteuergerät 5 sind über einen
CAN-Bus 8 derart miteinander verbunden, dass sie Daten
untereinander austauschen können.
Die Integrität
der übermittelten
Daten wird über
ein herkömmliches
Challenge-Response-Verfahren, eine herkömmliche Hash-Wert-Bildung und eine
herkömmliche
symmetrische Verschlüsselung der
Daten erreicht.
-
Beim
Startvorgang des Ackerschleppers 1 identifiziert das Wegfahrsperrensteuergerät 5 einen gültigen Zündschlüssel anhand
dessen Merkmale und übermittelt
eine Startfreigabe an die EMC 3. Die EMC 3 wiederum
hat eine Identifizierungsnummer des Wegfahrsperrensteuergeräts 14 gespeichert
und erteilt eine Treibstoff-Startmengenfreigabe nur, wenn sie von
demjenigen Wegfahrsperrengerät
mit dieser Identifizierungsnummer eine Startfreigabe übermittelt
bekommt. Während
des Betriebes des Ackerschleppers 1 werden die Steuerdaten
in dem Steuerdatenspeicher 4 mit den Referenzsteuerdaten
aus dem Referenzdatenspeicher 6 abgeglichen, um eine Veränderung
der Steuerdaten zu erkennen. Wird eine Veränderung der Steuerdaten erkannt,
kann eine leistungssenkende Veränderung
der Steuerdaten erfolgen oder eine Weiterverwendung des Ackerschleppers 1 mittels
Sperren der Wegfahrsperre unterbunden werden.
-
Die
EMC 3 verfügt über eine
Schnittstelle zum Anschließen
eines Motorservicewerkzeugs 9. Das Motorservicewerkzeug 9 besteht
aus einer tragbaren Datenverarbeitungsvorrichtung wie einem mobilen
PC und speichert ein Programm zum Beschreiben des Steuerdatenspeichers 4 der
EMC 3. Das Programm ist gemäß einem herkömmlichen
Verschlüsselungsverfahren
verschlüsselt
und wird erst bei Programmaufruf im Speicher entschlüsselt.
-
Zugleich
wird ein Auslesen des entschlüsselten
Programms aus dem Speicher mittels herkömmlicher „debugging”-Verhinderungsmechanismen unterbunden.
Das Programm überprüft zur Laufzeit Merkmale
der tragbaren Datenverarbeitungsvorrichtung, anhand derer die Identität des Motorservicewerkzeugs 9 eindeutig
bestimmt werden kann. Entspricht die Identität des Motorservicewerkzeugs 9 der Identität eines
autorisierten Gerätes,
wird die Programmausführung
fortgesetzt. Ansonsten wird das Programm abgebrochen. So ist sichergestellt,
dass das Programm nicht durch einfaches Kopieren auf eine andere
Datenverarbeitungsvorrichtung übertragen
werden kann. Darüber
hinaus überprüft das Programm
seine Laufzeit. Liegt seine Laufzeit innerhalb eines erlaubten Intervalls,
wird die Programmausführung
fortgesetzt. Andernfalls wird die Programmausführung abgebrochen. Hiermit
wird sichergestellt, dass, wenn ein Programm kompromittiert wurde,
dies nur für
begrenzte Zeit verwendbar bleibt. Das Programm erfasst die Identität und die
Authentität
eines Benutzers des Motorservicewerkzeugs 9. Entspricht die
Identität
des Benutzers der eines von einer zentralen Stelle autorisierten
Benutzers, wird das Programm fortgesetzt. Andernfalls wird die Programmausführung abgebrochen.
-
An
dem Wegfahrsperrensteuergerät 6 ist
ein Wegfahrsperrenservicewerkzeug 10 anschließbar. Bei
diesem handelt es sich wie bei dem Motorservicewerkzeug 9 um
eine tragbare Datenverarbeitungsvorrichtung mit einem Programm, über das
das Wegfahrsperrensteuergerät 5 programmiert,
bzw. dessen Datenspeicher beschrieben werden kann. Das Programm
ist in gleicher Weise wie das Programm des Motorservicewerkzeugs 9 gegen
Missbrauch geschützt.
-
Die
Programme des Motorservicewerkzeugs 9 und des Wegfahrsperrenservicewerkzeugs 10 können auch
auf einer gemeinsamen trag baren Datenverarbeitungsvorrichtung gespeichert
werden oder als ein Programm ausgeführt werden. Da das Motorservicewerkzeug 9 und
das Wegfahrsperrenservicewerkzeug 10 die gleichen erfindungsrelevanten Merkmale
aufweisen, bzw. die gleichen erfindungsrelevanten Schritte durchführen, wird
im Folgenden nur noch auf ein gemeinsames Servicewerkzeug 9 (zweite
Datenverarbeitungsvorrichtung) Bezug genommen.
-
Im
Herstellungsprozess des Ackerschleppers 1 ist es nach dessen
Endfertigung erforderlich, dass der Steuerdatenspeicher 4 der
EMC 3 mit Steuerdaten beschrieben wird. Hierzu wird das
Servicewerkzeug 9 an die EMC 3 angeschlossen und
das Programm auf dem Servicewerkzeug 9 gestartet. Gleichzeitig
wird die EMC 3 durch das Servicewerkzeug 9 in
einen Anlernbereitschaftszustand für ein Wegfahrsperrensteuergerät gebracht.
Dies geschieht dadurch, dass ein vorbestimmter Schlüsselwert
an die EMC 3 übertragen
wird. In gleicher Weise wird das Servicewerkzeug 9 mit
dem Wegfahrsperrensteuergerät 5 verbunden,
die Referenzsteuerdaten in den Referenzdatenspeicher 6 übertragen
und die Merkmale zulässiger
Zündschlüssel in
den Schlüsselmerkmalsspeicher 7 übertragen.
Von dem Wegfahrsperrensteuergerät
wird dessen Seriennummer und der Kommunikationsschlüssel auf
die EMC 3 übertragen
und da diese sich in dem Anlernbereitschaftszustand befindet, dauerhaft
gespeichert. Darauf hin beendet die EMC 3 den Anlernbereitschaftszustand.
-
Unter
Bezugnahme auf 2 werden weitere Elemente des
Datenübertragungssystems
nach einem Ausführungsbeispiel
der Erfindung beschrieben.
-
Das
Servicewerkzeug 9 besitzt eine Schnittstelle, mit der es
mit einen Datenübertragungsnetz 11 verbunden
werden kann. Das Datenübertragungsnetz 11 kann
hierbei ein kabelgebundenes Netz, wie ein Datenübertragungsnetz des Herstellers,
ein Telefonnetz oder das Internet sein. Es kann sich auch um ein
kabelloses Netz wie GSM oder UMTS handeln. Eine zentrale Datenverarbeitungsanlage,
im Folgenden Server 12 ist ebenfalls mit dem Datenübertragungsnetz 11 verbunden.
Der Server 12 ist über
das Datenübertragungsnetz 11 oder
anderweitig mit einer Datenbank 13 verbunden, so dass Daten
zwischen dem Server 12 und der Datenbank 13 übertragen werden
können.
-
Während des
Betriebs des Ackerschleppers 1 nach Auslieferung kann es
zu einer Fehlfunktion kommen. Beispielsweise kann es durch einen
Defekt erforderlich sein, dass die Seriennummer oder der Kommunikationsschlüssel des
Wegfahrsperrensteuergeräts
5 im Steuerdatenspeicher 4 der EMC 3 erneut gespeichert
wird. Des Weiteren kann es durch Verlust eines Zündschlüssels oder dergleichen erforderlich
werden, dass Merkmale eines weiteren zulässigen Zündschlüssels in den Schlüsselmerkmalsspeicher 7 übertragen
werden. Darüber
hinaus könnte
es erforderlich sein, dass die Steuerdaten in dem Steuerdatenspeicher 4 und
in dem Referenzdatenspeicher 5 erneut übertragen werden müssen, nachdem
bei einem Abgleich von Steuerdaten im Steuerdatenspeicher 4 und
Referenzsteuerdaten im Referenzdatenspeicher 6 eine unzulässige Abweichung festgestellt
wurde. In diesem Fall wird das Servicewerkzeug 9 zum Standort
des Ackerschleppers 1 verbracht und mit EMC 3 und
Wegfahrsperrensteuergerät 5 verbunden
und die Schritte des Ablaufdiagramms aus 3 durchgeführt.
-
In
einem Schritt S100 wird durch das Servicewerkzeug 9 ein
Anforderungspaket erstellt, das Daten spezifiziert, die zur Fehlerbeseitigung
erforderlich sind und den Ackerschlepper 1 identifizieren.
-
In
einem Schritt S200 wird durch den Server 12 auf Grundlage
des Anforderungspakets ein Freischaltpaket erzeugt, das die erforderlichen
Daten enthält.
-
In
einem Schritt S300 werden die Daten aus dem Freischaltpaket je nach
Bedarf in die EMC 3 oder das Wegfahrsperrensteuergeräts 5 übertragen und
gespeichert oder anderweitig verarbeitet.
-
Unter
Bezugnahme auf 4 wird der Ablauf der Erstellung
und Übertragung
des Anforderungspakets durch das Wegfahrsperrensteuergerät beschrieben.
-
In
Schritt S101 wird das Programm auf dem Servicewerkzeug 9 entschlüsselt und
gestartet und ein Benutzer und dessen Autorisierung überprüft. Dies
geschieht hier dadurch, dass ein Benutzername und ein Kennwort abgefragt
werden, die mit einem in dem Programm hinterlegten Benutzernamen
und Kennwort verglichen werden.
-
In
Schritt S102 wird auf Veranlassung des Benutzers durch das Programm
auf dem Servicewerkzeug 9 von dem Wegfahrsperrensteuergerät 5 die
Erstellung einer Transaktionsnummer, im Folgenden TAN (Authentisierungsanfragewert),
angefordert.
-
In
Schritt S103 bestimmt das Wegfahrsperrensteuergerät 5 über einen
herkömmlichen
Mechanismus eine Pseudozufallszahl (im folgenden Zufallszahl), eine
TAN. Die TAN wird in dem Wegfahsperrensteuergerät 5 gespeichert.
-
In
einem Schritt S104 fordert das Servicewerkzeug 9 von dem
Wegfahrsperrensteuergerät 5 die Übermittlung
der TAN gemeinsam mit weiteren in dem Wegfahrsperrensteuergerät gespeicherten Daten
wie Fahrgestellnummer, Schlüsselmerkmalen, Seriennummer
des Wegfahrsperrensteuergeräts, Ausstattungsliste
und Steuerdaten als erste Übermittlungsdaten
an. Zur Authentifizierung des Servicewerkzeugs 9 und des
Wegfahrsperrensteuergeräts 5 wird
von beiden Seiten jeweils ein Challenge-Response-Verfahren angewendet. Das bedeutet,
dass das Wegfahrsperrensteuergerät 5 eine
Zufallszahl Z1 und das Servicewerkzeug 9 eine Zufallszahl
Z2 erzeugt. Die Zufallszahl Z1 wird an das Servicewerkzeug 9 übertragen
und die Zufallszahl Z2 wird an das Wegfahrsperrensteuergerät 5 übertragen.
Das Servicewerkzeug 9 verschlüsselt mittels eines Verschlüsselungsverfahrens,
beispielsweise XTEA, und eines in dem Servicewerkzeug 9 gespeicherten Schlüssels K1
die Zufallszahl Z1 zu einem verschlüsselten Wert K1(Z1). Der verschlüsselte Wert
K1(Z1) wird gemeinsam mit der Anforderung, die ersten Übermittlungsdaten
zu übertragen,
an das Wegfahrsperrensteuergerät übertragen.
Das Wegfahrsperrensteuergerät 5 berechnet
in gleicher Weise aus der Zufallszahl Z1 mit Hilfe des Verschlüsselungsalgorithmus
und des auch in dem Wegfahrsperrensteuergerät gespeicherten Schlüssel K1
den verschlüsselten
Wert K1(Z1) und vergleicht diesen mit dem verschlüsselten
Wert K1(Z1), der von dem Servicewerkzeug 9 übertragen
wurde. Stimmen die beiden verschlüsselten Werte überein,
bedeutet dies, dass beiden Geräte
der gleiche Schlüssel
K1 bekannt ist, und das Wegfahrsperrensteuergerät 5 betrachtet dieses Servicewerkzeug 9 als
autorisiert an, die ersten Übermittlungsdaten
anzufordern. Hierbei sind für
unterschiedliche Vorgänge,
wie Datenlesevorgänge oder
Datenveränderungsvorgänge unterschiedliche Schlüssel K1i vorgesehen.
-
In
Schritt S105 erzeugt das Wegfahrsperrensteuergerät 5 aus der Zufallszahl
Z2 mit Hilfe eines Verschlüsselungsalgorithmus
aus einem in dem Wegfahrsperrensteuergerät gespeicherten Schlüssel K2
einen verschlüsselten
Wert K2(Z2) und überträgt diesen
gemeinsam mit den ersten Übermittlungsdaten
an das Servicewerkzeug 9. Das Servicewerkzeug 9 erzeugt
in gleicher Weise aus der Zufallszahl Z2 mit Hilfe des Verschlüsselungsalgorithmus
und des auch in dem Servicewerkzeug gespeicherten Schlüssels K2
den verschlüsselten
Wert K2(Z2). Stimmt dieser verschlüsselte Wert K2(Z2) mit dem
von dem Wegfahrsperrensteuergerät 5 übertragenen
verschlüsselten
Wert K2(Z2) überein,
betrachtet das Servicewerkzeug 9 die ersten Übermittlungsdaten
als authentisch.
-
Um
eine Manipulation der Daten bei der Übertragung zu verhindern, wird
deren Integrität
dadurch sichergestellt, dass eine Einweg-Hash-Funktion wie SHA1
auf die ersten Übermittlungsdaten
angewendet wird und der erzeugte Hash-Wert mit den ersten Übermittlungsdaten
mitgesendet wird. Um ein unbefugtes Auslesen der ersten Übermittlungsdaten zu
verhindern, werden diese mittels eines ersten Verschlüsselungsverfahrens,
in diesem Fall XTEA, und einem der Schlüssel K1 oder K2 oder eines
weiteren Schlüssels
kryptografisch verschlüsselt.
-
Hat
das Servicewerkzeug 9 die ersten Übermittlungsdaten erhalten,
werden in Schritt S106 diesen ersten Übermittlungsdaten weitere Daten
hinzugefügt,
wie eine Identifizierungsnummer des Servicewerkzeugs 9 und
eine Identifizierungsnummer des Benutzers des Servicewerkzeugs 9.
Diese Daten werden in Schritt S107 zu einer Datei aggregiert, mit einem
zweiten Verschlüsselungsverfahren,
beispielsweise AES, und eines in dem Servicewerkzeug 9 gespeicherten
Schlüssels
K4 verschlüsselt
und als Anforderungspaket (zweite Übermittlungsdaten) gespeichert.
Das Servicewerkzeug 9 wird vom Ackerschlepper 1 getrennt
und in eine Umgebung gebracht, in der es über das Datenübertragungsnetz 11 mit
dem Server 12 verbunden werden kann.
-
Wird
in Schritt S108 festgestellt, dass das Servicewerkzeug mit der Server 12 verbunden
ist, dann wird das Anforderungspaket in Schritt S107 an den Server 12 übertragen.
Die Übertragung
kann beispielsweise mittels der Protokolle SMTP, FTP, HTTP oder
dergleichen erfolgen. Daraufhin wird die Erstellung und Übertragung
des Anforderungspakets durch das Servicewerkzeug 9 beendet.
-
Unter
Bezugnahme auf 5 wird die Verarbeitung des
Anforderungspakets und Erstellung des Freischaltpakets durch den
Server 12 beschrieben.
-
In
Schritt S201 wird das Anforderungspaket von dem Servicewerkzeug 9 durch
den Server 12 empfangen. In Schritt S202 wird das Anforderungspaket
auf dem Server 12 mittels der Umkehrfunktion des zweiten
Verschlüsselungsverfahrens
und des auf auch auf dem Server 12 gespeicherten Schlüssels K4
entschlüsselt.
In Schritt S203 wird überprüft, ob der
Benutzer mit der übertragenen
Benutzer-ID oder das Servicewerkzeug 9 mit der übertragenen
Servicewerkzeug-ID zu den gewünschten
Veränderungen
des Wegfahrsperrengeräts 5 berechtigt
ist. Ist dies der Fall, werden in Schritt S204 diese entschlüsselten
Daten aus dem Anforderungspaket in der Datenbank 13 gespeichert.
Im Anschluss hieran wird in Schritt S205 aus der übertragenen
TAN mit Hilfe eines Verschlüsselungsalgorithmuses
(Erzeugungsfunktion), in diesem Fall XTEA, und eines auf dem Server 12 gespeicherten
Schlüssels
K3, der verschlüsselte
Wert K3(TAN) (Authentisierungserwiderungswert) berechnet. In Schritt
S206 wird aus dem verschlüsselten
Wert K3(TAN), der Servicewerkzeug-ID und der Benutzer-ID aus dem
Anforderungspaket, der Fahrgestellnummer des Ackerschleppers 1 und
Freischaltwerten, wie Merkmalen eines neuen Zündschlüssels, neue Steuerdaten für den Steuerdatenbereich 4 und
Referenzsteuerdaten für
den Referenzdatenbereich 6 oder Daten wie einem Schlüsselwert
zum Herstellen der Anlernbereitschaft der EMC 3 zu einer
Datei aggregiert, mittels des zweiten Verschlüsselungsverfahrens verschlüsselt und
als Freischaltpaket (dritte Übermittlungsdaten)
gespeichert. Wird in Schritt S207 festgestellt, dass das Servicewerkzeug 9 noch
oder erneut mit dem Server 12 verbunden ist, werden die
Daten in Schritt S208 auf das Servicewerkzeug übertragen und die Verarbeitung des
Anforderungspakets und Erstellung des Freischaltpakets durch den
Server 12 beendet. Wird festgestellt dass derzeit keine
Verbindung zwischen Servicewerkzeug 9 und dem Server 12 besteht,
wird bis zur Vollendung eines Verbindungsaufbaus gewartet, das Freischaltpaket
dann beispielsweise mittels HTTP oder FTP übertragen und die Verarbeitung
des Anforderungspakets und Erstellung des Freischaltpakets durch
den Server 12 beendet. Alternativ kann das Freischaltpaket
aber auch an eine dazwischengeschaltete Datenverarbeitungsvorrichtung,
beispielsweise einen nicht weiter beschriebenen SMTP-Server übermittelt
werden, der bei Verbindungsaufbau des Servicewerkzeugs 9 eine Übermittlung
des Freischaltpakets vollendet.
-
Unter
Bezugnahme auf 6 wird das Einspielen der Daten
aus dem Freischaltpaket durch das Servicewerkzeug 5 beschrieben.
-
In
Schritt S301 wird das Programm auf dem Servicewerkzeug wie in Schritt
S101 gestartet. In Schritt S302 wird das Freischaltpaket von dem
Server 12 empfangen und entschlüsselt. In Schritt S303 überprüft das Programm,
ob die Servicewerkzeug-ID aus dem Freischaltpaket mit der Servicewerkzeug-ID des
Servicewerkzeugs übereinstimmt.
Ist dies der Fall, wird von dem Programm überprüft, ob die Benutzer-ID aus
dem Freischaltpaket mit der Benutzer-ID des Benutzers, der das Programm
bedient, übereinstimmt.
Ist dies der Fall, wird in Schritt S305 von dem Servicewerkzeug 9 die
Fahrgestellnummer aus dem Wegfahrsperrengerät 5 in gleicher Weise wie
in den Schritten S104 und S105 ausgelesen. Entspricht die Fahrgestellnummer
aus dem Freischaltpaket der Fahrgestellnummer aus dem Wegfahrsperrensteuergerät, übermittelt
das Servicewerkzeug 9 die Daten aus dem Freischaltpaket
als vierte Übermittlungsdaten
an das Wegfahrsperrensteuergerät 5. Die Übermittlung
der Daten erfolgt in gleicher Weise wie in Schritten S104 und S105.
Das Wegfahrsperrensteuergerät 5 berechnet
aus der TAN mittels eines Verschlüsselungsverfahrens, in diesem
Fall XTEA, und des auch in dem Wegfahrsperrensteuergerät gespeicherten
Schlüssels
K3 den verschlüsselten
Wert K3(TAN) und vergleicht diesen mit dem verschlüsselten
Wert K3(TAN) aus den vierten Übertragungsdaten.
Stimmen beide Werte überein,
werden die Daten aus dem Freischaltpaket von dem Wegfahrsperrensteuergerät 5 übernommen
und je nach Daten in den Steuerdatenspeicher 4, dem Referenzdatenspeicher 6 oder
dem Schlüsselmerkmalsspeicher 7 gespeichert.
Der Freischaltwert zur Herstellung der Anlernbereitschaft der EMC 3 wird
an die EMC 3 übertragen,
so dass eine von dem Wegfahrsperrensteuergerät 5 an die EMC 3 übertragene
Seriennummer oder ein Kommunikationsschlüssel in der EMC 3 gespeichert
wird, um das Wegfahrsperrensteuergerät zu identifizieren und mit
ihm zu kommunizieren, über das
eine Startfreigabe erfolgen kann. Abschließend wird der Anlernbereitschaftszustand
durch die EMC 3 beendet und die TAN durch das Wegfahrsperrensteuergerät gelöscht.
-
Es
ist dem Fachmann offensichtlich, dass es neben dem beschriebenen
Ausführungsbeispiel
weitere Ausführungsformen
der Erfindung gibt.
-
So
wurden in diesem Ausführungsbeispiel zwischen
dem Wegfahrsperrensteuergerät 5 und dem
Servicewerkzeug 9 zur Verschlüsselung und zur Authentifizierung
der Verschlüsselungsalgorithmus XTEA
verwendet. Hierzu können
auch andere symmetrische Verschlüsselungsalgorithmen
verwendet werden. Anstelle der Verschlüsselungsverfahren zur Erzeugung
der verschlüsselten
Werte K1(Z1), K2(Z2) kann auch eine Einweg-Hash-Funktion verwendet werden.
Das Gleiche gilt auch für
die Authentifizierung zwischen dem Wegfahrsperrensteuergerät 9 und
dem Server 12 bezüglich
des Verschlüsselungsalgorithmus
zur Erzeugung des verschlüsselten
Wertes K3(TAN). Zur Verschlüsselung
der Kommunikation zwischen dem Servicewerkzeug 9 und dem
Server 12 wurde in diesem Ausführungsbeispiel als Verschlüsselungsalgorithmus
AES verwendet. Auch hier kann jeder andere sichere symmetrische
Verschlüsselungsalgorithmus
verwendet werden. Über
die Verwendung eines asymmetrischen Verschlüsselungsverfahrens oder eines
Hybridverfahrens für
die Daten können
hierbei die bekannten Vorteile einer Public Key Infrastructure verwendet
werden.
-
In
diesem Ausführungsbeispiel
galt die sichere Datenübertragung
einem Datenaustausch mit der EMC 3 oder dem Wegfahrsperrensteuergerät 5. Anstelle
dieser Geräte
kommen weitere Geräte
wie ein Fahrzeugführungsrechner,
ein Kombiinstrument oder ein Zentralelektrikgerät in Betracht.
-
In
diesem Ausführungsbeispiel
wurde eine Zufallszahl als TAN verwendet. Hierbei können aber auch
andere Daten der ersten Übermittlungsdaten, wie
beispielsweise die Seriennummer des Wegfahrsperrensteuergeräts mit einem
Zeitstempel als TAN verwendet werden.