WO2012019659A1 - Kraftwagen umfassend eine elektronische komponente mit datenspeicher und verfahren zum erkennen einer manipulation von daten in dem datenspeicher - Google Patents
Kraftwagen umfassend eine elektronische komponente mit datenspeicher und verfahren zum erkennen einer manipulation von daten in dem datenspeicher Download PDFInfo
- Publication number
- WO2012019659A1 WO2012019659A1 PCT/EP2011/002060 EP2011002060W WO2012019659A1 WO 2012019659 A1 WO2012019659 A1 WO 2012019659A1 EP 2011002060 W EP2011002060 W EP 2011002060W WO 2012019659 A1 WO2012019659 A1 WO 2012019659A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- memory
- secure
- electronic component
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Definitions
- a motor vehicle comprising an electronic component with data memory and method for detecting a manipulation of data in the data memory
- the invention relates to a method for detecting a manipulation of data in a data memory of an electronic component of a motor vehicle.
- the invention further relates to a motor vehicle with an electronic component, which has a data memory, as well as with an additional secure memory device, which has a secure data memory, which is protected against writing from outside the secure memory device.
- an additional secure memory device which has a secure data memory, which is protected against writing from outside the secure memory device.
- it must be ensured that some information stored in the motor vehicle, such as the total mileage of the vehicle, ie the odometer reading, or an anti-theft identification number, is protected against manipulation by an unauthorized person.
- it is known to store such data in a secure storage device of the motor vehicle.
- the data can be encrypted by a microcontroller and written in encrypted form in a non-volatile memory. Since the mechanism of encryption from outside the microcontroller is not visible, it is not possible to read the data stored in the non-volatile data memory in encrypted form in readable form directly from the data memory, ie bypassing the microcontroller, or in the non-volatile memory Data storage stored information, so for example, the tachograph, specifically overwrite with a false information. The necessary step of decryption or encryption can only be performed by the microcontroller. The secure data storage rather the secure storage device is thus protected by a write from outside the secure storage device.
- a car may have other electronic components in which data is stored in a data storage unencrypted.
- the software and payload for a display of a dashboard of the motor vehicle may be stored in such a data store, although in principle it is possible to manipulate the unencrypted data in the data memory
- This also opens up the possibility of indirectly falsifying sensitive data stored in the secure storage device: If the electronic component is, for example, a control device of a display device for the mileage, it can be achieved by an appropriate manipulation of a (unencrypted) data memory of this control device that a read out from the secure memory area value for the mileage in the controller v changed and this changed value is shown on the display device. This has been observed in connection with a sale of used cars. Fraudsters have thereby tried to simulate a lower mileage of used vehicles.
- the object is achieved by the method according to claim 1.
- the object is also achieved by a motor vehicle according to claim 8.
- Advantageous developments of the method and the motor vehicle according to the invention are given by the dependent claims.
- a manipulation of data in a data memory of an electronic component of a motor vehicle is detected.
- the data memory of the electronic component is coupled to a secure memory device of the motor vehicle.
- the secure storage device has a secure data storage that is protected against unauthorized writing from outside the secure storage device.
- Data is read from at least one memory area of the data memory of the electronic component. At least one initial test value is determined on the basis of this read-out data.
- a determination of a test value means that a value is determined by means of an imaging or calculation rule as a function of the data read out.
- An example of such a check value is a checksum, which is calculated from the read-out data.
- the at least one initial check value is stored in the secure data memory of the secure memory device.
- data are read again from the at least one memory area of the electronic component and again at least one test value is determined on the basis of the read-out data.
- this at least one test value is determined according to the same mapping or calculation rule as the at least one initial test value.
- the at least one check value determined again is then compared with the at least one initial check value stored in the secure data memory.
- the secure storage device with the secure data storage may be a storage device of the type known per se from the prior art.
- the secured memory device can be coupled directly or indirectly with the data memory of the electronic component. Indirect coupling can be provided, for example, by a microcontroller of the electronic components, which reads out data from the data memory and transmits them in unchanged or changed form to the secure memory device.
- a microcontroller of the electronic components which reads out data from the data memory and transmits them in unchanged or changed form to the secure memory device.
- the at least one memory area from which the data is read out may comprise the entire data memory. It is also possible to read only individual memory cells or smaller memory areas and to base them on the calculation of the test values. This advantageously reduces the computational effort in the calculation of the test values.
- the calculation of the test values is preferably carried out in the secure memory device.
- the test value can be the read-out data itself.
- a copy of the data from the at least one memory area is stored in the secure data memory in this case.
- one or more test values are calculated from the read-out data, which together require less memory space than the read-out data itself.
- a hash value is calculated by means of a hash function or a message authentication code (message verification code) by means of a symmetric authentication function or by means of a hash function for determining the respective at least one check value on the basis of the respective read data.
- the calculation of hash values by means of hash functions and the calculation of a message authentication code is known per se.
- the use of such functions in connection with the calculation of the test values has the advantage that even if a relatively large amount of data is read from the data memory of the electronic component, only a very small number of test values, possibly even a single test value, is sufficient. to reliably detect a manipulation of the data in the data memory.
- the at least one storage area is replaced by the secured storage facility. at random.
- the calculation of test values preferably takes place by the saved memory device. It can be provided that for determining a respective at least one test value on the basis of respective read-out data, at least one intermediate test value is initially determined by the electronic component itself. In this case, it is then provided that the at least one intermediate check value requires less memory than the read-out data itself. The at least one intermediate check value is then transmitted to the secure data storage device. There, on the basis of the at least one transmitted intermediate check value, the at least one check value is determined by the saved memory device. By not transmitting the individually read-out data, but only the intermediate check values calculated therefrom, from the electronic component to the saved memory device, the amount of data to be transmitted between these two components for checking the data can advantageously be reduced.
- the checking of the data in the data memory of the electronic component takes place in two stages.
- only a part of the entire data memory of the electronic component is included by the at least one memory area from which the data is read out.
- the initial test value is stored in the stored data storage of the secure storage device in the manner described.
- another initial check value is determined, which is determined on the basis of the data from the entire data store. In other words, an initial total check value is determined.
- the at least one test value for the at least one memory area is first compared in a first stage with the corresponding initial test value for this at least one memory area.
- a test value is then determined again for the entire data memory. This is then compared with the further initial check value for the entire data store, ie the initial total check value.
- This embodiment of the method according to the invention has the advantage that in the first stage the detection of a manipulation of the data in the at least one storage area can be carried out in a relatively short time due to the smaller amount of data. The first stage can therefore be carried out, for example, at a start of the motor vehicle, without the initialization of the data and the calculation of the test values, the initialization of the electronic component is significantly delayed.
- the entire data is checked. It can be done at a later, more favorable for undisturbed operation of the electronic component time.
- a key value stored in the saved memory device can additionally be used as the basis.
- a check value then depends not only on the data read, but also on the key value.
- a key value is used in the calculation of a test value if the calculation of the test value is based on the data of the entire data memory of the electronic component.
- a driving-mode-relevant component of the motor vehicle is controlled by means of a control signal.
- a control signal may be, for example, an immobilizer of the motor vehicle. If a difference of the compared test value is detected, a warning signal can also be generated by which a user of the motor vehicle is made aware of the detected manipulation of the data.
- Another aspect of the invention relates to a motor vehicle with an electronic component, which has a data memory, as well as with an additional secure memory device, which has a secure data memory.
- a secure data memory is to be understood as one which is protected against writing from outside the secure storage device.
- the secure storage device is coupled to the data memory of the electronic component.
- the secure storage device is designed to at least one memory area of the data memory of the electronic component to determine at least one initial test value. As in the case of the method according to the invention, this initial check value here again depends on data stored in the at least one memory area of the electronic component.
- the secure storage device is further configured to store the at least one initial check value in the secure data store. Finally, it is designed to determine a test value from data from the at least one memory area again at a later time, that is to say after the initial test value has been stored, and to compare this with the stored initial test value.
- the electronic component of the motor vehicle may be a control device for controlling a display device of the motor vehicle.
- this is a display device for displaying such information stored in the secure data memory, e.g. a tacho stand.
- the secure storage device can be installed as a separate device in the motor vehicle and, for example, be coupled to the data memory of the electronic component via a data bus, such as a CAN bus (CAN - Controller Area Network).
- the secure storage device may also be provided together with the electronic component as a single device.
- the electronic component and the secure storage device are integrated in an instrument cluster of the motor vehicle.
- Such an instrument cluster is the one device that displays the milage of the motor vehicle, ie its total mileage. It comprises the display device for the odometer reading and also the control device for controlling the display device.
- Fig. 1 is a schematic representation of a combination instrument of a
- FIG. 2 shows a flow chart of an embodiment of the method according to the invention, which is executed during operation of the instrument cluster shown in FIG.
- an instrument cluster 10 is shown schematically, which is installed in a passenger car, not shown.
- the instrument cluster 10 is arranged in the passenger car in a dashboard above a steering column of the passenger car.
- a display device 12 of the instrument cluster 10 can be viewed by a driver during the drive of the passenger car by spokes of a steering wheel through.
- the display device 12 has a numeric display for a tacho stand of the passenger car.
- the display device further display instruments, such as a speedometer, a speed indicator or a fuel gauge, have.
- the display on the display device 12 is controlled by a control device 14 of the instrument cluster 10.
- the controller 14 includes a microcontroller 16 and a flash memory 18.
- the flash memory 18 is a block addressable nonvolatile data memory. Instead of the flash memory 18, another digital storage medium may be provided.
- the microcontroller 16 is connected in each case to the display device 12 and the flash memory 18 via data buses 20 'and 20 ", respectively, A program for operating the microcontroller 16 is stored in the memory 18. Further, in the memory 18 there are graphic Information stored for generating a display by means of the display device 12 is also stored in the combination instrument 10, a secure memory device 22 having a microcontroller 24 and a memory module 26.
- the memory module 26 is a nonvolatile memory in which stored information is also stored is then maintained if the memory module 26 is not supplied with voltage
- the memory module 26 may be an EEPROM (electrically erasable programmable read-only memory)
- the memory module 26 is connected to the microcontroller 24 via a bus 20 " coupled.
- the microcontroller 24 has an encryption unit 28 and a calculation unit 30.
- the latter accesses the memory 26 via the encryption unit 28.
- the data is transmitted to the encryption device 28 where it is encrypted and then stored via the bus 20 '' in the memory module 20.
- To read out a date the same is transferred from the memory module 26 Transfer the bus 20 "'to the encryption unit 28, there decrypted and then provided to the computing unit 30 in unencrypted form. All information stored in the memory module 26 is in the form of encrypted data, whereby the information against a Targeted changing protected from outside the secure storage device.
- the microcontroller 24 is an internal memory 31, in which an identification number 10 'of the instrument cluster 10 is stored.
- the identification number 10 ' has been stored in the flash memory 31 during the manufacture of the instrument cluster 10. In each copy of the series of instrument cluster from which the instrument cluster 10 is derived, another identification number is stored.
- the microcontroller 24 of the secure memory device 22 and the microcontroller 16 of the control device 14 are coupled via a data bus 32. Via the data bus 32, digital data can be exchanged between the microcontroller 24 and the microcontroller 16.
- the microcontroller 24 is also coupled to the flash memory 18 via the microcontroller 16.
- the control device 14 and the secure storage device 22 may be provided on a common printed circuit board or as separate components.
- the data bus 32 may be provided as a private data bus, i. H. in the form of lines used exclusively to transfer data between microcontrollers 24 and 16.
- the data bus 32 may also be a data bus to which other devices may be connected.
- the value for the odometer reading, as displayed on the numeric display of the display device 12, is stored in the memory module 26 as a tachograph value 34.
- the calculation unit 30 periodically reads out the tachograph value 34 from the memory module 24.
- the read-out speed value 34 is decrypted by the encryption unit 28.
- the decrypted odometer value is then transmitted via the data bus 32 to the microcontroller 16.
- the microcontroller 16 executes a corresponding program for displaying the tachometer value, which is stored in the flash memory 18.
- the microcontroller 16 is caused to receive the tachometer value 34 transmitted via the data bus 32 and to form therefrom a graphic representation of the tacho-level value on the basis of image information from the flash memory 18. This is then displayed on the numeric display of the display device 12.
- the data in the flash memory 18 is not encrypted. Therefore, they can be read out using other aids without the aid of the controller 16 and can also be modified in a targeted manner. This also allows you to change the program for displaying the speedometer value.
- the combination instrument 10 ensures that such manipulation of the data in the flash memory 18 is independently detected by the combination instrument 10 and shown to a user of the passenger car. This ensures that, for example, when the passenger car is purchased, the user can experience the actual odometer reading of the passenger vehicle by looking at the display device 12.
- the saving of the combination instrument 10 against unnoticed manipulation of the data in the flash memory 18 takes place in two phases.
- an initialization phase P1 it is assumed that the flash memory 18 contains unadulterated data.
- an image of such unadulterated data is therefore determined from the flash memory 18 and stored in the memory module 26.
- a subsequent monitoring phase P2 the content of the flash memory 18 is checked using the image to see if the data in the flash memory 18 has been manipulated.
- a program executed by the microcontroller 24 of the saved memory device 22 determines, in a step S210, memory areas 36 in the flash memory 18 whose data is to be monitored during the monitoring phase P2.
- the determination of the memory areas 36 can be effected, for example, by generating values for memory addresses or memory address areas of memory cells of the flash memory 18 by the microcontroller 24.
- the values can be generated in a random manner so that different values result for different combination instruments. It may also be provided to limit the possible values for such memory addresses in such a way that only those data which are particularly important for a reliable operation of the control device 14 are detected by the monitoring.
- the calculation device 30 causes the microcontroller 16 to read out the data from the memory areas 36 of the flash memory 18 by means of corresponding instructions transmitted via the data bus 32 and the read-out data to the calculation unit via the data bus 32 30 to transfer.
- the transmission of the data is shown symbolically in FIG. 1 by dashed lines.
- intermediate values such as checksums, hash values or authentication values, are first calculated by the microcontroller 16 from the read-out data.
- a check value is calculated from the data transmitted by the microcontroller, that is to say the data read from the memory areas 36 or the values calculated therefrom, in a step S214.
- a hash function or a symmetric authentication function can be used to calculate the check value.
- Such functions are collision-free, ie similar but not identical data result in completely different checksums.
- Each bit of the underlying data affects the result of the calculation of the test value.
- the check value is transmitted from the calculation unit 30 to the encryption unit 28 and stored by the latter via the bus 20 '"as an initial check value 38 in encrypted form in the memory module 26. Instead of a single initial check value 38, a plurality of such check values can also be calculated and stored in the memory device 26.
- a check value based on the entire contents of the flash memory 18 can still be calculated by the computing unit 30.
- the calculation unit 30 generates a corresponding command, by which the microcontroller 16 is caused either to transfer the entire contents of the flash memory 18 to the calculation unit 30 or to calculate intermediate values in the manner already described for the entire content and then to Calculation unit 30 transmitted.
- the calculation unit 30 then calculates from this received data a second check value, which is likewise encrypted by the encryption unit 28 and stored as an initial total check value 40 in the memory module 26 in encrypted form.
- the initialization phase P1 has ended.
- the initialization can be carried out at a first commissioning of the instrument cluster 10, for example, the manufacturer of the same.
- the initialization phase P1 can be performed again if, for example, in the context of servicing the passenger car, a new operating program or new user data is stored in the flash memory 8. This is then done by an authorized person who is able to restart the already described corresponding program of the microcontroller 24.
- the combination instrument 10 automatically checks whether the data in the memory areas 36 coincide with those which were stored therein during the initialization phase P1. During the monitoring phase P2, it is checked by the calculation unit 30 in a step S218 whether a predetermined test condition is fulfilled.
- a check of the data at a start of the car can be done.
- a command to read the data from the memory areas 36 of the flash memory 18 is again generated by the computing unit 30 and transmitted to the microcontroller 16.
- This reads out the data from the storage areas 36 in a step S220.
- a corresponding transmission takes place with the data read again.
- the calculation unit 30 again calculates a check value from the received data.
- the calculation unit 30 reads out the initial test value 38 with the aid of the encryption unit 28.
- the test value calculated during the monitoring phase P2 is then used with the.
- Initial check value 38 compared. If these two values match, this means that the data in the memory areas 36 were not manipulated with high probability. In this case, it waits again until the test condition is fulfilled again (S218).
- a warning is displayed on the display 12 in a step S226.
- a user of the car can read that a change in the data in the flash memory 18 has been detected. It can also be provided to activate an immobilizer of the passenger car in the case of a detected manipulation in step S226.
- the initial total check value 40 is stored in the memory module 26, when a second test condition is met, it may be provided to check the integrity of the entire contents of the flash memory 18.
- the flash memory 18 may be a very large memory.
- the checking of the entire flash memory 18 therefore preferably takes place during a period in which the processing of the data by the microcontroller 16 or the microcontroller 24 and the transmission of the data via the data bus 32 does not lead to another functionality of the Kom - biinstruments is affected. It can also be provided that the check of the entire memory contents of the flash memory 18 is carried out during a servicing of the passenger car.
- the steps for checking the content of the entire flash memory 18 correspond to steps S220 to S226, so that they will not be explained separately here.
- the examples show how the manipulation security in a graphics system of a combination instrument can be achieved without great effort from a secure area, i.e. the secure storage device, by monitoring the data integrity of an "insecure memory".
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
Bei einem Kraftwagen soll verhindert werden, dass ein Datenspeicher (18) einer elektronischen Komponente (14) durch eine nicht berechtigte Person manipuliert und dadurch die Funktionsweise der elektronischen Komponente (14) beeinträchtigt wird. Erfindungsgemäß ist der Datenspeicher (18) dazu mit einer gesicherten Speichereinrichtung (22) gekoppelt, welche einen sicheren Datenspeicher (26) aufweist, der gegen ein unautorisiertes Beschreiben geschützt ist. Aus wenigstens einem Speicherbereich (36) des Speichers (18) werden Daten ausgelesen und daraus ein initialer Prüfwert (38) berechnet, der in dem sicheren Datenspeicher (26) gespeichert wird. Zum Erkennen einer Manipulation von Daten in dem Speicher (18) werden erneut Daten aus den Speicherbereichen (36) ausgelesen und daraus erneut ein Prüfwert berechnet. Durch Vergleichen dieses erneut berechneten Prüfwerts mit dem initialen Prüfwert (38) wird dann gegebenenfalls eine Manipulation der Daten in den Speicherbereichen (36) erkannt.
Description
Kraftwagen umfassend eine elektronische Komponente mit Datenspeicher und Verfahren zum Erkennen einer Manipulation von Daten in dem Datenspeicher
BESCHREIBUNG:
Die Erfindung betrifft ein Verfahren zum Erkennen einer Manipulation von Daten in einem Datenspeicher einer elektronischen Komponente eines Kraftwagens. Die Erfindung betrifft des Weiteren einen Kraftwagen mit einer elektronischen Komponente, welche einen Datenspeicher aufweist, sowie mit einer zusätzlichen gesicherten Speichereinrichtung, welche einen sicheren Datenspeicher aufweist, der gegen ein Beschreiben von außerhalb der gesicherten Speichereinrichtung geschützt ist. Bei einem Kraftwagen muss sichergestellt sein, dass einige in dem Kraftwagen gespeicherte Informationen, wie z.B. die Gesamtlaufleistung des Fahrzeugs, d.h. der Tachostand, oder eine Identifizierungsnummer für einen Diebstahlschutz, vor einer Manipulation durch eine nicht autorisierte Person geschützt sind. Dazu ist bekannt, solche Daten in einer gesicherten Spei- chereinrichtung des Kraftwagens zu speichern. Darin können die Daten durch einen Mikrocontroller verschlüsselt und in verschlüsselter Form in einen nichtflüchtigen Datenspeicher geschrieben werden. Da der Mechanismus der Verschlüsselung von außerhalb des Mikrocontrollers nicht einsehbar ist, ist es nicht möglich, die in dem nichtflüchtigen Datenspeicher in ver- schlüsselter Form gespeicherten Daten unmittelbar, also unter Umgehung des Mikrocontrollers, in lesbarer Form aus dem Datenspeicher auszulesen oder eine in dem nichtflüchtigen Datenspeicher gespeicherte Information, also beispielsweise den Tachostand, gezielt mit einer falschen Information zu überschreiben. Der dazu nötige Schritt der Ent- bzw. Verschlüsselung kann nur von dem Mikrocontroller durchgeführt werden. Der sichere Datenspei-
eher der gesicherte Speichereinrichtung ist damit durch ein Beschreiben von außerhalb der gesicherten Speichereinrichtung geschützt.
Neben Speichereinrichtungen mit einem sicheren Datenspeicher kann ein Kraftwagen andere elektronische Komponenten aufweisen, bei denen Daten in einem Datenspeicher unverschlüsselt gespeichert sind. Solche„unsicheren" Datenspeicher lassen sich mit geringeren Kosten bereitstellen. Beispielsweise können die Software und die Nutzdaten für eine Anzeigeeinrichtung eines Armaturenbretts des Kraftwagens in einem solchen Datenspei- eher gespeichert sein. Hierbei besteht allerdings prinzipiell die Möglichkeit, die unverschlüsselten Daten in dem Datenspeicher zu manipulieren und hierdurch Einfluss auf die Betriebsweise der elektronischen Komponente zu nehmen. Dies eröffnet auch die Möglichkeit, auf indirektem Wege sensible Daten, die in der gesicherten Speichereinrichtung gespeichert sind, zu ver- fälschen: Handelt es sich bei der elektronischen Komponente beispielsweise um ein Steuergerät einer Anzeigeeinrichtung für den Kilometerstand, so lässt sich durch eine entsprechende Manipulation eines (unverschlüsselten) Datenspeichers dieser Steuereinrichtung erreichen, dass ein aus dem gesicherten Speicherbereich ausgelesener Wert für den Kilometerstand in der Steu- ereinrichtung verändert und dieser veränderte Wert auf der Anzeigeeinrichtung gezeigt wird. Dies ist im Zusammenhang mit einem Verkauf von gebrauchten Kraftwagen beobachtet worden. Betrüger haben hierdurch versucht, eine geringere Laufleistung der gebrauchten Fahrzeuge vorzutäuschen.
Es ist Aufgabe der vorliegenden Erfindung, eine Veränderung einer Funktionsweise einer elektronischen Komponente eines Kraftwagens zu erkennen.
Die Aufgabe wird durch das Verfahren gemäß Patentanspruch 1 gelöst. Die Aufgabe wird auch durch einen Kraftwagen gemäß Patentanspruch 8 gelöst. Vorteilhafte Weiterbildungen des erfindungsgemäßen Verfahrens und des erfindungsgemäßen Kraftwagens sind durch die Unteransprüche gegeben.
Mit dem erfindungsgemäßen Verfahren wird eine Manipulation von Daten in einem Datenspeicher einer elektronischen Komponente eines Kraftwagens erkannt. Dazu wird der Datenspeicher der elektronischen Komponente mit einer gesicherten Speichereinrichtung des Kraftwagens gekoppelt. Die gesi- cherte Speichereinrichtung weist einen sicheren Datenspeicher auf, der gegen ein unautorisiertes Beschreiben von außerhalb der gesicherten Speichereinrichtung geschützt ist. Aus wenigstens einem Speicherbereich des Datenspeichers der elektronischen Komponente werden Daten ausgelesen. Auf Grundlage dieser ausgelesenen Daten wird wenigstens ein initialer Prüf- wert bestimmt. Im Zusammenhang mit der Erfindung ist unter einer Bestimmung eines Prüfwerts zu verstehen, dass mittels einer Abbildungs- oder Berechnungsvorschrift in Abhängigkeit von den ausgelesenen Daten ein Wert ermittelt wird. Ein Beispiel für einen solchen Prüfwert ist eine Prüfsumme, die aus den ausgelesenen Daten berechnet ist. Gemäß dem erfindungsgemä- ßen Verfahren wird der wenigstens eine initiale Prüfwert in dem sicheren Datenspeicher der gesicherten Speichereinrichtung gespeichert. Zu einem späteren Zeitpunkt werden erneut Daten aus dem wenigstens einen Speicherbereich der elektronischen Komponente ausgelesenen und erneut wenigstens ein Prüfwert auf Grundlage der erneut ausgelesenen Daten bestimmt. Natür- lieh wird dieser wenigstens eine Prüfwert hierbei nach derselben Abbildungsoder Berechnungsvorschrift ermittelt, wie schon der wenigstens eine initiale Prüfwert. Der erneut bestimmte wenigstens eine Prüfwert wird dann mit dem in dem sicheren Datenspeicher gespeicherten wenigstens einen initialen Prüfwert verglichen.
Bei der gesicherten Speichereinrichtung mit dem sicheren Datenspeicher kann es sich um eine Speichereinrichtung des Typs handeln, wie er an sich aus dem Stand der Technik bekannt ist. Die gesicherte Speichereinrichtung kann mit dem Datenspeicher der elektronischen Komponente direkt oder in- direkt gekoppelt sein. Eine indirekte Kopplung kann beispielsweise durch einen MikroController der elektronischen Komponenten gegeben sein, welcher Daten aus dem Datenspeicher ausliest und diese in unveränderter oder veränderter Form an die gesicherte Speichereinrichtung überträgt.
Mittels des erfindungsgemäßen Verfahrens ist es möglich, auch eine Manipulation solcher Daten zu erkennen, die in einer elektronischen Komponente in einem Datenspeicher gespeichert sind, der nicht gegen ein unautorisiertes Beschreiben geschützt ist. Der wenigstens eine Speicherbereich, aus dem die Daten ausgelesen werden, kann dabei den gesamten Datenspeicher umfassen. Es ist auch möglich, lediglich einzelne Speicherzellen oder kleinere Speicherbereiche auszulesen und der Berechnung der Prüfwerte zugrunde zu legen. Dies reduziert in vorteilhafter Weise den Rechenaufwand bei der Berechnung der Prüfwerte. Die Berechnung der Prüfwerte wird bevorzugt in der gesicherten Speichereinrichtung durchgeführt.
Bei dem Prüfwert kann es sich im einfachsten Fall um die ausgelesenen Daten selbst handeln. Mit anderen Worten wird in dem sicheren Datenspeicher in diesem Fall eine Kopie der Daten aus dem wenigstens einen Speicherbe- reich gespeichert. Bevorzugt werden aus den ausgelesenen Daten aber ein oder mehrere Prüfwerte berechnet, die zusammen weniger Speicherplatz benötigen als die ausgelesenen Daten selbst.
So wird in einer bevorzugten Ausführungsform der Erfindung zum Bestim- men des jeweiligen wenigstens einen Prüfwerts auf Grundlage der jeweiligen ausgelesenen Daten ein Hashwert mittels einer Hashfunktion oder ein Mes- sage-Authentication-Code (Nachrichtenverifizierungscode) mittels einer symmetrischen Authentifizierungsfunktion oder mittels einer Hashfunktion berechnet. Die Berechnung von Hashwerten mittels Hashfunktionen und die Berechnung eines Message-Authentication-Codes ist an sich bekannt. Durch die Verwendung solcher Funktionen im Zusammenhang mit der Berechnung der Prüfwerte ergibt sich der Vorteil, dass auch dann, wenn verhältnismäßig viele Daten aus dem Datenspeicher der elektronischen Komponente ausgelesen werden, nur eine sehr geringe Anzahl von Prüfwerten, eventuell sogar ein einziger Prüfwert, ausreicht, um eine Manipulation der Daten in den Datenspeicher zuverlässig zu erkennen.
In einer anderen Ausführungsform des erfindungsgemäßen Verfahrens wird der wenigstens eine Speicherbereich durch die gesicherte Speichereinrich-
tung zufällig festgelegt. Dadurch ergibt sich der Vorteil, dass in jedem Kraftwagen, bei dem eine Manipulation von Daten in einem Datenspeicher einer elektronischen Komponente erkannt werden soll, unterschiedliche Bereiche in dem Speicher für das Auslesen der Daten bestimmt werden. Somit ergibt sich für jede Komponente selbst dann eine andere Prüfsumme, wenn im Speicher jeder Komponente dieselben Daten, also z. B. dasselbe Programm, gespeichert ist. Dies gewährleistet, dass Kenntnisse, die bei einer Untersuchung einer bestimmten elektronischen Komponente eines Kraftwagens gewonnen wurden, nicht zur Verschleierung einer Manipulation der Daten eines Speichers einer anderen elektronischen Komponente genutzt werden können.
Die Berechnung von Prüfwerten erfolgt bevorzugt durch die gesicherte Speichereinrichtung. Dabei kann vorgesehen sein, dass zum Bestimmen eines jeweiligen wenigstens einen Prüfwerts auf Grundlage von jeweiligen ausgelesenen Daten zunächst durch die elektronische Komponente selbst wenigstens ein Zwischenprüfwert bestimmt wird. In diesem Fall ist dann vorgesehen, dass der wenigstens eine Zwischenprüfwert weniger Speicher benötigt als die ausgelesenen Daten selbst. Der wenigstens eine Zwischenprüfwert wird dann in die gesicherte Datenspeichereinrichtung übertragen. Dort wird auf Grundlage des wenigstens einen übertragenen Zwischenprüfwerts der wenigstens eine Prüfwert durch die gesicherte Speichereinrichtung bestimmt. Indem nicht die einzeln ausgelesenen Daten, sondern nur die daraus berechneten Zwischenprüfwerte von der elektronischen Komponente zu der gesicherten Speichereinrichtung übertragen werden, kann in vorteilhafter Weise die zum Überprüfen der Daten zwischen diesen beiden Komponenten zu übertragene Datenmenge verringert werden.
Bei einer weiteren Ausführungsform des erfindungsgemäßen Verfahrens er- folgt die Überprüfung der Daten in dem Datenspeicher der elektronischen Komponente in zwei Stufen. In diesem Fall ist durch den wenigstens einen Speicherbereich, aus dem die Daten ausgelesen werden, nur ein Teil des gesamten Datenspeichers der elektronischen Komponente umfasst. Zu diesem wenigstens einen Speicherbereich wird der initale Prüfwert in dem si-
cheren Datenspeicher der gesicherten Speichereinrichtung in der beschriebenen Weise gespeichert. Zusätzlich wird noch ein weiterer initialer Prüfwert bestimmt, der auf Grundlage der Daten aus dem gesamten Datenspeicher ermittelt wird. Mit anderen Worten wird ein Initialgesamtprüfwert bestimmt. Für die zweistufige Erkennung einer Manipulation der Daten in dem Datenspeicher der elektronischen Komponente wird zunächst in einer ersten Stufe der erneut bestimmte wenigstens eine Prüfwert für den wenigstens einen Speicherbereich mit dem entsprechenden initialen Prüfwert für diesen wenigstens einen Speicherbereich verglichen. In einer zweiten Stufe wird dann erneut ein Prüfwert für den gesamten Datenspeicher bestimmt. Dieser wird dann mit dem weiteren initalen Prüfwert für den gesamten Datenspeicher, also dem Initialgesamtprüfwert, verglichen. Diese Ausführungsform des erfindungsgemäßen Verfahrens weist den Vorteil auf, dass in der ersten Stufe das Erkennen einer Manipulation der Daten in dem wenigstens einen Spei- cherbereich aufgrund der geringeren Datenmenge in verhältnismäßig kurzer Zeit durchgeführt werden kann. Die erste Stufe kann daher z.B. bei einem Start des Kraftwagens durchgeführt werden, ohne dass durch das Auslesen der Daten und die Berechnung der Prüfwerte die Initalisierung der elektronischen Komponente signifikant verzögert wird. In der zweiten Stufe erfolgt dann eine Überprüfung der gesamten Daten. Sie kann zu einem späteren, für einen ungestörten Betrieb der elektronischen Komponente günstigeren Zeitpunkt erfolgen.
Bei der Bestimmung des jeweiligen wenigstens einen Prüfwerts kann neben den ausgelesenen Daten zusätzlich auch ein in der gesicherten Speichereinrichtung gespeicherter Schlüsselwert zugrundegelegt wird. Mit anderen Worten hängt ein Prüfwert dann nicht nur von den ausgelesenen Daten ab, sondern auch von dem Schlüsselwert. Dadurch ergibt sich der Vorteil, dass durch Abspeichern von unterschiedlichen Schlüsselwerten in verschiedenen gesicherten Speichereinrichtungen durch selbige auch dann unterschiedliche Prüfwerte bestimmt werden, wenn diese Speichereinrichtungen jeweils mit Datenspeichern von elektronischen Komponenten gekoppelt sind, in denen gleiche Daten gespeichert sind. Ein Beispiel für einen solchen Fall ist eine Serie von Kraftwagen, bei denen jeweils eine gesicherte Speichereinrichtung
mit dem Datenspeicher eines Steuergeräts für eine Anzeigeeinrichtung gekoppelt ist. In diesem Datenspeicher kann dann bei jedem Kraftwagen dasselbe Programm für den Betrieb der Anzeigeeinrichtung gespeichert sein. Durch Verwendung von unterschiedlichen Schlüsselwerten in den gesicher- ten Speichereinrichtungen ist stets sichergestellt, dass durch eine Untersuchung der gesicherten Speichereinrichtungen eines der Kraftwagen keine Kenntnisse über die Überwindung der Schutzwirkung einer anderen Speichereinrichtung desselben Typs in einem anderen Kraftwagen gewonnen werden können. Bevorzugt wird ein Schlüsselwert bei der Berechnung eines Prüfwerts dann verwendet, wenn der Berechnung des Prüfwerts die Daten des gesamten Datenspeichers der elektronischen Komponente zugrundegelegt werden.
Gemäß einer weiteren Ausführungsform des erfindungsgemäßen Verfahrens wird nach einem Erkennen eines Unterschieds von miteinander verglichenen Prüfwerten durch die gesicherte Speichereinrichtung eine fahrbetriebsrele- vante Komponente des Kraftwagens mittels eines Steuersignals angesteuert. Eine solche Komponente kann beispielsweise eine Wegfahrsperre des Kraftwagens sein. Bei Erkennen eines Unterschieds der verglichenen Prüf- wert kann auch ein Warnsignal erzeugt werden, durch welches ein Benutzer des Kraftwagens auf die erkannte Manipulation der Daten aufmerksam gemacht wird.
Ein weiterer Aspekt der Erfindung betrifft einen Kraftwagen mit einer elektro- nischen Komponente, welche einen Datenspeicher aufweist, sowie mit einer zusätzlichen gesicherten Speichereinrichtung, welche einen sicheren Datenspeicher aufweist. Wie schon im Zusammenhang mit dem erfindungsgemäßen Verfahren ist auch bei dem erfindungsgemäßen Kraftwagen unter einem sicheren Datenspeicher ein solcher zu verstehen, der gegen ein Beschreiben von außerhalb der gesicherten Speichereinrichtung geschützt ist. Bei dem erfindungsgemäßen Kraftwagen ist die gesicherte Speichereinrichtung mit dem Datenspeicher der elektronischen Komponente gekoppelt. Des Weiteren ist die gesicherte Speichereinrichtung dazu ausgelegt, zu wenigstens einem Speicherbereich des Datenspeichers der elektronischen Komponente
wenigstens einen initialen Prüfwert zu ermitteln. Wie beim erfindungsgemäßen Verfahren ist dieser initiale Prüfwert auch hier wieder von Daten abhängig, welche in dem wenigstens einen Speicherbereich der elektronischen Komponente gespeichert sind. Die gesicherte Speichereinrichtung ist des Weiteren dazu ausgelegt, den wenigstens einen initialen Prüfwert in dem sicheren Datenspeicher zu speichern. Sie ist schließlich dazu ausgelegt, zu einem späteren Zeitpunkt, also nach dem Speichern des initialen Prüfwerts, erneut einen Prüfwert aus Daten aus dem wenigstens einen Speicherbereich zu ermitteln und diesen mit dem gespeicherten initialen Prüfwert zu verglei- chen.
Bei dem erfindungsgemäßen Kraftwagen ist somit die Möglichkeit gegeben, eine Manipulation von Daten in dem Datenspeicher der elektronischen Komponente dadurch zu erkennen, dass ein aus den Daten ermittelter Prüfwert mit dem initialen Prüfwert verglichen wird, welcher in dem sicheren Datenspeicher gespeichert ist.
Die elektronische Komponente des Kraftwagens kann eine Steuereinrichtung zum Steuern einer Anzeigeeinrichtung des Kraftwagens sein. Bevorzugt handelt es sich dabei um eine Anzeigeeinrichtung zum Darstellen solcher Informationen, welche in dem sicheren Datenspeicher gespeichert sind, also z.B. einen Tachostand. Durch Überprüfen der Integrität der Daten in einer Steuereinrichtung für eine Anzeigeeinrichtung ist in vorteilhafter Weise sichergestellt, dass ein Benutzer des Kraftwagens nicht über einen Zustand des Kraftwagens getäuscht werden kann, indem ihm von einem manipulierten Steuerprogramm der Steuereinrichtung falsche Informationen auf der Anzeigeeinrichtung angezeigt werden.
Die gesicherte Speichereinrichtung kann als eigenständiges Gerät in dem Kraftwagen eingebaut sein und beispielsweise über einen Datenbus, wie z.B. einen CAN-Bus (CAN - Controller Area Network), mit dem Datenspeicher der elektronischen Komponente gekoppelt sein.
Die gesicherte Speichereinrichtung kann auch zusammen mit der elektronischen Komponente als ein einziges Gerät bereitgestellt sein. In diesem Sinne sind bei einer Ausführungsform des erfindungsgemäßen Kraftwagens die elektronische Komponente und die gesicherte Speichereinrichtung in einem Kombiinstrument des Kraftwagens integriert. Ein solches Kombiinstrument ist dasjenige Gerät, das den Tachostand des Kraftwagens, d. h. seine Gesamtfahrleistung, anzeigt. Es umfasst die Anzeigeeinrichtung für den Tachostand und auch die Steuereinrichtung zum Steuern der Anzeigeeinrichtung. Die Erfindung wird im Folgenden im Zusammenhang mit den Zeichnungen anhand von Ausführungsbeispielen näher erläutert. Von den Zeichnungen zeigt im Einzelnen:
Fig. 1 eine schematische Darstellung eines Kombiinstruments eines
Kraftwagens gemäß einer Ausführungsform des erfindungsgemäßen Kraftwagens; und
Fig. 2 ein Flussschaubild einer Ausführungsform des erfindungsgemäßen Verfahrens, welches im Betrieb des in Fig. 1 dargestellten Kombiinstruments ausgeführt wird.
Die Beispiele stellen bevorzugte Ausführungsformen der Erfindung dar.
In Fig. 1 ist schematisch ein Kombiinstrument 10 dargestellt, das in einem nicht näher dargestellten Personenkraftwagen eingebaut ist. Das Kombiinstrument 10 ist in dem Personenkraftwagen in einem Armaturenbrett über einer Lenksäule des Personenkraftwagens angeordnet. Eine Anzeigeeinrichtung 12 des Kombiinstruments 10 kann von einem Fahrer während der Fahrt des Personenkraftwagens durch Speichen eines Lenkrads hindurch betrach- tet werden. Die Anzeigeeinrichtung 12 weist eine Ziffernanzeige für einen Tachostand des Personenkraftwagens auf. Daneben kann die Anzeigeeinrichtung weitere Anzeigeinstrumente, wie beispielsweise einen Tachometer, einen Drehzahlanzeiger oder eine Tankuhr, aufweisen.
Die Anzeige auf der Anzeigeeinrichtung 12 wird durch eine Steuereinrichtung 14 des Kombiinstruments 10 gesteuert. Die Steuereinrichtung 14 umfasst einen MikroController 16 und einen Flash-Speicher 18. Der Flash-Speicher 18 ist ein blockweise addressierbarer nichtflüchtiger Datenspeicher. Anstelle des Flash-Speichers 18 kann auch ein anderes digitales Speichermedium vorgesehen sein.
Der MikroController 16 ist mit der Anzeigeeinrichtung 12 und dem Flash- Speicher 18 jeweils über Datenbusse 20' bzw. 20" verbunden. In dem Spei- eher 18 ist ein Programm zum Betrieb des Mikrocontrollers 16 gespeichert. Des Weiteren* sind in dem Speicher 18 graphische Informationen gespeichert, die zum Erzeugen einer Anzeige mittels der Anzeigeeinrichtung 12 verwendet werden. In dem Kombiinstrument 10 befindet sich des Weiteren eine gesicherte Speichereinrichtung 22 mit einem Mikrocontroller 24 und einem Speicherbaustein 26. Der Speicherbaustein 26 ist ein nichtflüchtiger Speicher, bei dem eine gespeicherte Information auch dann erhalten bleibt, wenn der Speicherbaustein 26 nicht mit Spannung versorgt wird. Der Speicherbaustein 26 kann ein EEPROM (electrically erasable programmable read-only memory - elektrisch löschbarer programmierbarer Festwertspeicher) sein. Der Speicherbaustein 26 ist über einen Bus 20"' mit dem Mikrocontroller 24 gekoppelt.
Der Mikrocontroller 24 weist eine Verschlüsselungseinheit 28 und eine Be- rechnungseinheit 30 auf. Letztere greift über die Verschlüsselungseinheit 28 auf den Speicher 26 zu. Um ein von der Berechnungseinheit 30 ermitteltes Datum in den Speicherbaustein 26 zu speichern, wird das Datum zur Verschlüsselungseinrichtung 28 übertragen, dort verschlüsselt und anschließend über den Bus 20"' in den Speicherbaustein 20 gespeichert. Zum Auslesen eines Datums wird selbiges aus dem Speicherbaustein 26 über den Bus 20"' zur Verschlüsselungseinheit 28 übertragen, dort entschlüsselt und anschließend der Berechnungseinheit 30 in unverschlüsselter Form bereitgestellt. Sämtliche in dem Speicherbaustein 26 gespeicherten Informationen liegen in Form von verschlüsselten Daten vor, wodurch die Informationen gegen ein
gezieltes Verändern von außerhalb der gesicherten Speichereinrichtung geschützt sind.
In dem Mikrocontroller 24 befindet sich ein interner Speicher 31 , in dem eine Kennnummer 10' des Kombiinstruments 10 gespeichert ist. Die Kennnummer 10' ist bei der Herstellung des Kombiinstruments 10 in dem Flash- Speicher 31 gespeichert worden. In jedem Exemplar der Serie von Kombiinstrumenten, aus welcher das Kombiinstrument 10 stammt, ist eine andere Kennnummer gespeichert.
Der Mikrocontroller 24 der gesicherten Speichereinrichtung 22 und der Mikrocontroller 16 der Steuereinrichtung 14 sind über einen Datenbus 32 gekoppelt. Über den Datenbus 32 können digitale Daten zwischen dem Mikrocontroller 24 und dem Mikrocontroller 16 ausgetauscht werden. Der Mikro- Controller 24 ist über den Mikrocontroller 16 auch mit dem Flash-Speicher 18 gekoppelt.
Die Steuereinrichtung 14 und die gesicherte Speichereinrichtung 22 können auf einer gemeinsamen Leiterplatte oder als separate Bauteile bereitgestellt sein. Der Datenbus 32 kann als privater Datenbus bereitgestellt sein, d. h. in Form von Leitungen, die ausschließlich zur Übertragung von Daten zwischen den Mikrocontrollern 24 und 16 verwendet werden. Bei dem Datenbus 32 kann es sich auch um einen Datenbus handeln, an dem weitere Geräte angeschlossen sein können.
Der Wert für den Tachostand, wie er auf der Ziffernanzeige der Anzeigeeinrichtung 12 angezeigt wird, ist in dem Speicherbaustein 26 als Tachostandswert 34 gespeichert. Die Berechnungseinheit 30 liest den Tachostandswert 34 periodisch aus dem Speicherbaustein 24 aus. Dabei wird der ausge- lesene Tachostandswert 34 durch die Verschlüsselungseinheit 28 entschlüsselt. Der entschlüsselte Tachostandswert wird anschließend über den Datenbus 32 zum Mikrocontroller 16 übertragen.
Zum Anzeigen des Tachostandswerts 34 auf der Anzeigeeinrichtung 12 führt der Mikrocontroller 16 ein entsprechendes Programm zur Anzeige des Tachostandswerts aus, das in dem Flash-Speicher 18 gespeichert ist. Durch Ausführen dieses Programms wird der Mikrocontroller 16 dazu veranlasst, den über den Datenbus 32 übertragenen Tachostandswerts 34 entgegenzunehmen und daraus auf Grundlage von Bildinformationen aus dem Flash- Speicher 18 eine graphische Repräsentation des Tachostandswerts zu bilden. Diese wird anschließend auf der Ziffernanzeige der Anzeigeeinrichtung 12 dargestellt.
Die Daten in dem Flash-Speicher 18 sind nicht verschlüsselt. Sie können daher ohne Zuhilfenahme des Controllers 16 über anderweitige Hilfsmittel ausgelesen und auch gezielt verändert werden. Dadurch lässt sich auch das Programm zum Anzeigen des Tachostandswerts verändern. Bei dem Kombi- Instrument 10 ist sichergestellt, dass eine solche Manipulation der Daten in dem Flash-Speicher 18 selbstständig durch das Kombiinstrument 10 erkannt wird und einem Benutzer des Personenkraftwagens gezeigt wird. Dadurch ist sichergestellt, dass der Benutzer beispielsweise beim Kauf des Personenkraftwagens durch einen Blick auf die Anzeigeeinrichtung 12 den tatsächli- chen Tachostand des Personenkraftwagens erfahren kann.
Die selbsttätige Erkennung einer Manipulation von Daten in dem Flash- Speicher 18 durch das Kombiinstrument 10 wird im Folgenden in Verbindung mit den Figuren 1 und 2 erörtert.
Das Sichern des Kombiinstruments 10 gegen eine unbemerkte Manipulation der Daten in dem Flash-Speicher 18 erfolgt in zwei Phasen. Für eine Initialisierungsphase P1 wird dabei davon ausgegangen, dass der Flash-Speicher 18 unverfälschte Daten enthält. In der Initialisierungsphase P1 wird deshalb ein Abbild solcher unverfälschten Daten aus dem Flash-Speicher 18 ermittelt und in dem Speicherbaustein 26 gespeichert. In einer anschließenden Überwachungsphase P2 wird der Inhalt des Flash-Speichers 18 mithilfe des Abbilds daraufhin überprüft, ob die Daten in dem Flash-Speicher 18 manipuliert wurden.
In der Initialisierungsphase P1 werden von einem von dem Mikrocontroller 24 der gesicherten Speichereinrichtung 22 ausgeführten Programm in einem Schritt S210 Speicherbereiche 36 in dem Flash-Speicher 18 festgelegt, de- ren Daten während der Überwachungsphase P2 überwacht werden sollen. Das Bestimmen der Speicherbereiche 36 kann beispielsweise dadurch erfolgen, dass durch den Mikrocontroller 24 Werte für Speicheradressen oder Speicheradressbereiche von Speicherzellen des Flash-Speichers 18 erzeugt werden. Das Erzeugen der Werte kann in der Weise nach einem Zufallsprin- zip erfolgen, dass sich bei unterschiedlichen Kombiinstrumenten unterschiedliche Werte ergeben. Es kann auch vorgesehen sein, die möglichen Werte für solche Speicheradressen dahingehend zu begrenzen, dass ausschließlich solche Daten von der Überwachung erfasst sind, die für einen zuverlässigen Betrieb der Steuereinrichtung 14 besonders wichtig sind.
Nach der Bestimmung der Speicherbereiche 36 veranlasst die Berechnungseinrichtung 30 in einem anschließenden Schritt S212 den Mikrocontroller 16 durch entsprechende, über den Datenbus 32 übertragene Befehle, die Daten aus den Speicherbereichen 36 des Flash-Speichers 18 auszulesen und die ausgelesenen Daten über den Datenbus 32 zur Berechnungseinheit 30 zu übertragen. Die Übertragung der Daten ist in Fig. 1 symbolisch durch gestrichelte Linien dargestellt. Bei dem Schritt 212 des Auslesens der Daten kann vorgesehen sein, dass durch den Mikrocontroller 16 aus den ausgelesenen Daten zunächst Zwischenwerte, wie Prüfsummen, Hashwerte oder Authentifizierungswerte, berechnet werden.
Durch die Berechnungseinheit 30 wird aus den vom Mikrocontroller übermittelten Daten, also den ausgelesenen Daten aus den Speicherbreichen 36 oder den daraus berechneten Werten, in einem Schritt S214 ein Prüfwert berechnet. Für die Berechnung des Prüfwerts kann eine Hashfunktion oder eine symmetrische Authentifizierungsfunktion verwendet werden. Solche Funktionen sind kollisionsfrei, d. h. ähnliche, aber nicht identische Daten führen zu völlig unterschiedlichen Prüfsummen. Jedes Bit der zugrunde gelegten Daten beeinflusst das Ergebnis der Berechnung des Prüfwerts.
In einem Schritt S216 wird der Prüfwert von der Berechnungseinheit 30 an die Verschlüsselungseinheit 28 übertragen und von dieser über den Bus 20'" als Initialprüfwert 38 in verschlüsselter Form im Speicherbaustein 26 gespei- chert. Anstelle eines einzigen Initialprüfwerts 38 können auch mehrere solcher Prüfwerte berechnet und in dem Speicherbaustein 26 gespeichert werden.
Zusätzlich zu dem Initialprüfwert 38 für die Speicherbereiche 36 kann durch die Berechnungseinheit 30 noch ein Prüfwert berechnet werden, der auf dem gesamten Inhalt des Flash-Speichers 18 beruht. Dazu erzeugt die Berechnungseinheit 30 einen entsprechenden Befehl, durch welchen der Mikrocont- roller 16 veranlasst wird, entweder den gesamten Inhalt des Flash-Speichers 18 zur Berechnungseinheit 30 zu übertragen oder zu dem gesamten Inhalt Zwischenwerte in der bereits beschriebenen Weise zu berechnen und diese dann zur Berechnungseinheit 30 übertragen. Die Berechnungseinheit 30 berechnet dann aus diesen empfangenen Daten einen zweiten Prüfwert, der ebenfalls durch die Verschlüsselungseinheit 28 verschlüsselt und als Initial- gesamtprüfwert 40 in dem Speicherbaustein 26 in verschlüsselter Form gespeichert wird. Bei der Berechnung des Initialprüfwerts 38 und des Initialge- samtprüfwerts 40 kann vorgesehen sein, die Identifikationsnummer 10' als weiteren Parameter für die Berechnung der Prüfwerte zugrunde zu legen.
Mit dem Abspeichern des Initialprüfwerts 38 (und gegebenenfalls des Initial- gesamtprüfwerts 40) ist die Initialisierungsphase P1 beendet. Die Initialisierung kann bei einer Erstinbetriebnahme des Kombiinstruments 10 beispielsweise beim Hersteller desselben erfolgen. Die Initialisierungsphase P1 kann erneut durchgeführt werden, wenn beispielsweise im Rahmen einer Wartung des Personenkraftwagens ein neues Betriebsprogramm oder neue Nutzda- ten in den Flash-Speicher 8 abgespeichert werden. Dies erfolgt dann durch eine autorisierte Person, die in der Lage ist, das bereits beschriebene entsprechende Programm des MikroControllers 24 erneut zu starten.
In der Überwachungsphase P2 wird durch das Kombiinstrument 10 selbsttätig überprüft, ob die Daten in den Speicherbereichen 36 mit denjenigen übereinstimmen, die während der Initialisierungsphase P1 darin gespeichert waren. Während der Überwachungsphase P2 wird durch die Berechnungsein- heit 30 in einem Schritt S218 überprüft, ob eine vorbestimmte Prüfbedingung erfüllt ist. Beispielsweise kann eine Überprüfung der Daten bei einem Start des Personenkraftwagens erfolgen. Bei Erfülltsein der Prüfbedingung wird durch die Berechnungseinheit 30 wieder ein Befehl zum Auslesen der Daten aus den Speicherbereichen 36 des Flash-Speichers 18 erzeugt und an den Mikrocontroller 16 übertragen. Dieser liest die Daten aus den Speicherbereichen 36 in einem Schritt S220 aus. In Abhängigkeit davon, in welcher Form die Daten während der Initialisierungsphase P1 vom Mikrocontroller 16 zum Mikrocontroller 24 übertragen wurden, erfolgt eine entsprechende Übertragung mit den erneut ausgelesenen Daten. In einem Schritt S222 wird durch die Berechnungseinheit 30 erneut ein Prüfwert aus den empfangenen Daten berechnet.
In einem anschließenden Schritt S224 liest die Berechnungseinheit 30 mithil- fe der Verschlüsselungseinheit 28 den Initialprüfwert 38 aus. Der während der Überwachungsphase P2 berechnete Prüfwert wird dann mit dem . Initialprüfwert 38 verglichen. Falls diese beiden Werte übereinstimmen, bedeutet dies, dass die Daten in den Speicherbereichen 36 mit hoher Wahrscheinlichkeit nicht manipuliert wurden. In diesem Fall wird wieder abgewartet, bis die Prüfbedingung wieder erfüllt ist (S218).
Falls sich der in der Überwachungsphase P2 berechnete Prüfwert von dem Initialprüfwert 38 unterscheidet, wird in einem Schritt S226 auf der Anzeigeeinrichtung 12 ein Warnhinweis angezeigt. Ein Benutzer des Personenkraftwagens kann daran ablesen, dass eine Veränderung der Daten in dem Flash-Speicher 18 erkannt wurde. Es kann auch vorgesehen sein, für den Fall einer erkannten Manipulation in dem Schritt S226 eine Wegfahrsperre des Personenkraftwagens zu aktivieren.
Für den Fall, dass neben dem Initialprüfwert 38 noch der Initialgesamtprüf- wert 40 in dem Speicherbaustein 26 gespeichert ist, kann bei Erfülltsein einer zweiten Prüfbedingung vorgesehen sein, den gesamten Inhalt des Flash- Speichers 18 auf seine Integrität hin zu überprüfen. Bei dem Flash-Speicher 18 kann es sich um einen sehr großen Speicher handeln. Das Überprüfen des gesamten Flash-Speichers 18 findet daher vorzugsweise während eines Zeitraums statt, in welchem die Verarbeitung der Daten durch den Mikrocontroller 16 bzw. den Mikrocontroller 24 und die Übertragung der Daten über den Datenbus 32 nicht dazu führt, dass eine andere Funktionalität des Kom- biinstruments beeinträchtigt wird. Es kann auch vorgesehen sein, dass die Überprüfung des gesamten Speicherinhalts des Flash-Speichers 18 während einer Wartung des Personenkraftwagens durchgeführt wird. Die Schritte zur Überprüfung des Inhalts des gesamten Flash-Speichers 18 entsprechen den Schritten S220 bis S226, so dass sie hier nicht noch einem gesondert erläu- tert werden.
Durch die Beispiele ist gezeigt, wie die Manipulationssicherheit in einem Graphiksystem eines Kombiinstruments durch die Überwachung der Datenintegrität eines„unsicheren Speichers" ohne großen Aufwand aus einem si- cheren Bereich heraus, d.h. der gesicherten Speichereinrichtung, erfolgen kann.
Claims
1. Verfahren zum Erkennen einer Manipulation von Daten in einem Da- tenspeicher (18) einer elektronischen Komponente (14) eines Kraftwagens,
mit den Schritten:
- Koppeln des Datenspeichers (18) der elektronischen Komponente (14) mit einer gesicherten Speichereinrichtung (22) des Kraftwagens, welche einen sicheren Datenspeicher (26) aufweist, der gegen ein unautorisiertes Beschreiben von außerhalb der gesicherten Speichereinrichtung (22) geschützt ist,
- Auslesen von Daten aus wenigstens einem Speicherbereich (36, 18) des Datenspeichers (18) der elektronischen Komponente (14) und Bestimmen wenigstens eines von den ausgelesenen Daten abhängigen initialen Prüfwerts (38, 40),
- Speichern des wenigstens einen initialen Prüfwerts (38, 40) in dem sicheren Datenspeicher (26),
- Erneutes Auslesen von Daten aus dem wenigstens einen Speicher- bereich (36, 18), erneutes Bestimmen wenigstens eines Prüfwerts auf
Grundlage der erneut ausgelesenen Daten und Vergleichen des erneut bestimmten wenigstens einen Prüfwerts mit dem in dem sicheren Datenspeicher (26) gespeicherten wenigstens einen initialen Prüfwert (38, 40).
2. Verfahren nach Anspruch 1 , bei dem
zum Bestimmen des jeweiligen wenigstens einen Prüfwerts (38, 40) auf Grundlage der jeweiligen ausgelesenen Daten ein Hashwert mittels einer Hashfunktion oder ein Message Authentication Code mittels einer symmetrischen Authentifizierungsfunktion oder mittels einer
Hashfunktion berechnet wird.
3. Verfahren nach Anspruch 1 oder 2, bei dem
der wenigstens eine Speicherbereich (36) durch die gesicherte Speichereinrichtung (22) zufällig festgelegt wird.
4. Verfahren nach einem der vorhergehenden Ansprüche, bei dem
zum Bestimmen des jeweiligen wenigstens einen Prüfwerts (38, 40) auf Grundlage der jeweiligen ausgelesenen Daten zunächst wenigs- tens ein Zwischenprüfwert durch die elektronische Komponente (14) bestimmt wird, der wenigstens eine Zwischenprüfwert in die gesicherte Datenspeichereinrichtung (22) übertragen wird und auf Grundlage des wenigstens einen übertragenen Zwischenprüfwerts der wenigstens eine Prüfwert (38, 40) durch die gesicherte Datenspeichereinrichtung bestimmt wird.
5. Verfahren nach einem der vorhergehenden Ansprüche, bei dem
der wenigstens eine Speicherbereich (36) nur einen Teil des gesamten Datenspeichers (18) der elektronischen Komponente (14) umfasst und zusätzlich zu dem initialen Prüfwert (38) für den wenigstens einen Speicherbereich (36) noch ein weiterer initialer Prüfwert (40) auf Grundlage von Daten aus dem gesamten Datenspeicher (18) bestimmt wird, wobei
das Erkennen einer Manipulation zweistufig durchgeführt wird und hierbei in einer ersten Stufe der erneut bestimmte wenigstens eine Prüfwert für den wenigstens einen Speicherbereich (36) mit dem initialen Prüfwert (38) für den wenigstens einen Speicherbereich (36) verglichen wird und in einer zweiten Stufe ein erneut bestimmter Prüfwert für den gesamten Datenspeicher (18) mit dem weiteren initialen Prüfwert (40) für den gesamten Datenspeicher ( 8) verglichen wird.
6. Verfahren nach einem der vorhergehenden Ansprüche, bei dem
zum Bestimmen wenigstens eines Prüfwerts zusätzlich ein in der gesicherten Speichereinrichtung gespeicherter Schlüsselwert (10') zugrunde gelegt wird.
7. Verfahren nach einem der vorhergehenden Ansprüche, bei dem nach Erkennen eines Unterschieds von miteinander verglichenen Prüfwerten durch die gesicherte Speichereinrichtung (22) eine fahrbetriebsre- levante Komponente des Kraftwagens, beispielsweise eine Wegfahrsperre, mittels eines Steuersignals angesteuert wird.
8. Kraftwagen mit einer elektronischen Komponente (14), welche einen Datenspeicher (18) aufweist, und mit einer zusätzlichen, gesicherten Speichereinrichtung (22), welche einen sicheren Datenspeicher (26) aufweist, der gegen ein Beschreiben von außerhalb der gesicherten Speichereinrichtung (22) geschützt ist,
dadurch gekennzeichnet, dass die gesicherte Speichereinrichtung mit dem Datenspeicher (18) der elektronischen Komponente (14) gekoppelt und dazu ausgelegt ist,
- zu wenigstens einem Speicherbereich (36, 18) des Datenspeichers (18) der elektronischen Komponente (14) einen initialen Prüfwert (38, 40) zu ermitteln, welcher von Daten abhängig ist, welche in dem wenigstens einen Speicherbereich (36, 18) gespeichert sind,
- den initialen Prüfwert (38, 40) in dem sicheren Datenspeicher (26) zu speichern und
- zu einem späteren Zeitpunkt erneut einen Prüfwert aus Daten aus dem wenigstens einen Speicherbereich (36, 18) zu ermitteln und diesen mit dem initialen Prüfwert (38, 40) zu vergleichen.
Kraftwagen nach Anspruch 8, bei dem
die elektronische Komponente (14) eine Steuereinrichtung zum Steuern einer Anzeigeeinrichtung (12) des Kraftwagens ist, insbesondere einer Anzeigeeinrichtung (12) zum Darstellen von Informationen (34), welche in dem sicheren Speicher (26) gespeichert sind.
10. Kraftwagen nach Anspruch 8 oder 9, bei dem
die elektronische Komponente (14) und die gesicherte Speichereinrichtung (22) in einem Kombiinstrument (10) des Kraftwagens integriert sind.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102010033716 | 2010-08-07 | ||
| DE102010033716.1 | 2010-08-07 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2012019659A1 true WO2012019659A1 (de) | 2012-02-16 |
Family
ID=44227826
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/EP2011/002060 Ceased WO2012019659A1 (de) | 2010-08-07 | 2011-04-21 | Kraftwagen umfassend eine elektronische komponente mit datenspeicher und verfahren zum erkennen einer manipulation von daten in dem datenspeicher |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2012019659A1 (de) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102013221489A1 (de) * | 2013-10-23 | 2015-04-23 | Volkswagen Aktiengesellschaft | Verfahren und Vorrichtung zur Prüfung eines Zählerstandes eines Wegzählers in einem Fahrzeug |
| EP2980662A1 (de) * | 2014-07-30 | 2016-02-03 | Siemens Aktiengesellschaft | Schutz einer automatisierungskomponente vor programmmanipulationen durch signaturabgleich |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030055552A1 (en) * | 2001-09-14 | 2003-03-20 | Mark Akins | Tamper detection for vehicle controller |
| EP1760623A2 (de) * | 2005-08-18 | 2007-03-07 | Siemens Aktiengesellschaft | Sicherheitseinrichtung für elektronische Geräte |
| WO2008019189A2 (en) * | 2006-08-03 | 2008-02-14 | Motorola, Inc. | Secure storage of data |
-
2011
- 2011-04-21 WO PCT/EP2011/002060 patent/WO2012019659A1/de not_active Ceased
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030055552A1 (en) * | 2001-09-14 | 2003-03-20 | Mark Akins | Tamper detection for vehicle controller |
| EP1760623A2 (de) * | 2005-08-18 | 2007-03-07 | Siemens Aktiengesellschaft | Sicherheitseinrichtung für elektronische Geräte |
| WO2008019189A2 (en) * | 2006-08-03 | 2008-02-14 | Motorola, Inc. | Secure storage of data |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102013221489A1 (de) * | 2013-10-23 | 2015-04-23 | Volkswagen Aktiengesellschaft | Verfahren und Vorrichtung zur Prüfung eines Zählerstandes eines Wegzählers in einem Fahrzeug |
| DE102013221489B4 (de) * | 2013-10-23 | 2016-11-03 | Volkswagen Aktiengesellschaft | Verfahren und Vorrichtung zur Prüfung eines Zählerstandes eines Wegzählers in einem Fahrzeug |
| EP2980662A1 (de) * | 2014-07-30 | 2016-02-03 | Siemens Aktiengesellschaft | Schutz einer automatisierungskomponente vor programmmanipulationen durch signaturabgleich |
| US10007783B2 (en) | 2014-07-30 | 2018-06-26 | Siemens Aktiengesellschaft | Method for protecting an automation component against program manipulations by signature reconciliation |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE102008021030B4 (de) | Verfahren zum Betreiben eines Fahrzeugs sowie entsprechende Vorrichtung und entsprechendes Fahrzeug | |
| EP3531333B1 (de) | Manipulationsgeschützte speicherung beweiserheblicher daten | |
| EP1113404B1 (de) | Verfahren und Vorrichtung zur Manipulationssicherung eines Wegstreckenzählers oder eines Fahrzeugschreibers | |
| DE102008007171A1 (de) | Verfahren und System zum sicheren Speichern von Wegstreckenzählerinformationen in einem Kraftfahrzeug | |
| EP3743688B1 (de) | Verfahren und vorrichtung zum speichern von wegstreckendaten | |
| EP3811564B1 (de) | Verfahren zur sicherung von fahrzeugkomponenten und entsprechende fahrzeugkomponente | |
| DE102008015195A1 (de) | Fahrzeugkomponente | |
| DE102013221489B4 (de) | Verfahren und Vorrichtung zur Prüfung eines Zählerstandes eines Wegzählers in einem Fahrzeug | |
| EP4180281A1 (de) | Featuremodell und featuremodellbasierte ansteuerung einer waschanlage | |
| DE112020007053T5 (de) | Steuervorrichtung und Steuerverfahren | |
| DE102004036046A1 (de) | System und Verfahren zur Steuerung oder Regelung der Betriebsabläufe bei einem Fahrzeug | |
| DE102021207956A1 (de) | Verfahren zur Datensicherung in einem Fahrzeug, entsprechendes Steuergerät, Computerprogramm und Kraftfahrzeug | |
| DE102018207791A1 (de) | Verfahren zur Authentifizierung eines von einem Kfz-System eines Fahrzeugs erzeugten Diagnosefehlercodes | |
| DE10238094B4 (de) | Verfahren zum Schutz gegen Manipulationen in einem Steuergerät für mindestens eine Kfz-Komponente und Steuergerät | |
| DE102023133269A1 (de) | Informationsverarbeitungssystem, speichermedium und datenbeschreibungszähler-managementverfahren | |
| DE102004060333A1 (de) | Erkennung und Anzeige von Modifikationen an Softwareständen für Motorsteuergerätesoftware | |
| DE102019201953B4 (de) | Verfahren und Detektionsvorrichtung zum Detektieren eines Eingriffs in ein Kraftfahrzeug sowie Kraftfahrzeug mit einer Detektionsvorrichtung | |
| WO2008040686A1 (de) | Fahrtschreiberanordnung und verfahren zum einbringen einer kennung in einen adapter für die fahrtschreiberanordnung | |
| EP3488303B1 (de) | Überwachen einer anzeige eines führerstands eines verkehrsmittels | |
| DE102008039121A1 (de) | Verfahren zur Codierung einer Zeichenkette für ein Fahrzeug sowie entsprechend ausgestaltetes Steuergerät und Fahrzeug | |
| DE102022203871A1 (de) | Steuersystem | |
| DE102021205844B3 (de) | Verfahren zum Detektieren eines digitalen Angriffs auf ein fahrdynamisches Steuergerät eines Kraftfahrzeugs, Computerprogrammprodukt sowie Angriffsdetektionssystem | |
| DE102013100665A1 (de) | Digitaler Tachograph | |
| DE102018200807A1 (de) | Verfahren und Servervorrichtung zum Bereitstellen eines digitalen Fahrzeugbegleitbuchs für ein Kraftfahrzeug | |
| DE102018208634A1 (de) | Verfahren und Vorrichtung zur Speicherung von in einem Fahrzeug erfassten Daten |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 11718662 Country of ref document: EP Kind code of ref document: A1 |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 11718662 Country of ref document: EP Kind code of ref document: A1 |