EP4689978A1 - Sperren und entsperren einer kommunikationsschnittstelle eines elektronischen geräts für ein kraftfahrzeug - Google Patents

Sperren und entsperren einer kommunikationsschnittstelle eines elektronischen geräts für ein kraftfahrzeug

Info

Publication number
EP4689978A1
EP4689978A1 EP24716759.6A EP24716759A EP4689978A1 EP 4689978 A1 EP4689978 A1 EP 4689978A1 EP 24716759 A EP24716759 A EP 24716759A EP 4689978 A1 EP4689978 A1 EP 4689978A1
Authority
EP
European Patent Office
Prior art keywords
computing unit
identifier
historical
electronic device
input 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.)
Pending
Application number
EP24716759.6A
Other languages
English (en)
French (fr)
Inventor
Thomas Mohr
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Connaught Electronics Ltd
Original Assignee
Connaught Electronics Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Connaught Electronics Ltd filed Critical Connaught Electronics Ltd
Publication of EP4689978A1 publication Critical patent/EP4689978A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices

Definitions

  • the present invention relates to a method for blocking a communication interface of an electronic device for a motor vehicle and a corresponding method for unlocking a communication interface of an electronic device for a motor vehicle.
  • the invention further relates to data processing devices and a computer program product.
  • Electronic devices for motor vehicles such as control units or sensors, can have communication interfaces for different purposes.
  • Such communication interfaces are used during manufacture, for example, to load software into the electronic device and/or to test the electronic device's software or for troubleshooting. In normal operation, they are usually not required and can therefore be blocked, in particular by means of password protection.
  • the document US 2017/0090909 A1 describes a method for securely writing patch code into a memory of a SoC.
  • a JT AG interface can be used to test the functionality of the SoC.
  • the JT AG interface can be unlocked by the SoC manufacturer entering an interface password. In a password-locked state, values stored in components of the SoC and/or other functionality of the SoC cannot be modified via the JT AG interface. It is an object of the present invention to provide secure access protection for a communication interface of an electronic device for a motor vehicle.
  • the invention is based on the idea of using a key, also referred to simply as a password, to lock the communication interface.
  • This key is derived from an identifier assigned to the individual electronic device, but also from at least one identifier assigned to a hardware component or a software component of a computing unit that comes from a production line in which the electronic device was manufactured.
  • the key can be subsequently reconstructed using the first-mentioned part-specific identifier and the last-mentioned production line-specific identifier.
  • two factors are implemented for authentication, so that security is increased.
  • a method for example a computer-implemented method, is specified for blocking a communication interface of an electronic device for a motor vehicle.
  • a first identifier is determined which identifies a hardware component of a computing unit of a production line in which the electronic device was manufactured or which identifies a software component of the computing unit.
  • the first identifier is determined in particular by means of the computing unit.
  • a second identifier is obtained, in particular by the computing unit, which identifies the electronic device, in particular uniquely identifies it.
  • a first input value for a predetermined key derivation function is generated depending on the first identifier and a second input value for the key derivation function is generated depending on the second identifier.
  • a key in particular a cryptographic key, is generated using the key derivation function depending on the first input value and the second input value.
  • the communication interface is blocked using the key, in particular by means of the computing unit, preferably automatically.
  • the first identifier is such that the knowledge of the first identifier allows the individual hardware or software component identified by it to be clearly identified. For example, this can be a serial number or the like.
  • the second identifier so that if the second identifier is known, the individual electronic device identified by it can be clearly identified. Here, too, this can be a serial number or the like.
  • the first input value can be identical to the first identifier or the first input value is derived from the first identifier according to a predetermined rule.
  • the second input value can therefore be identical to the second identifier or derived from it, possibly depending on the second identifier and one or more further second identifiers that identify the electronic device.
  • the corresponding further hardware or software component can be clearly identified from the further first identifiers.
  • these can also enable the electronic device to be clearly identified, depending on the embodiment. However, this is not necessarily the case, so that the further second identifiers, in contrast to the second identifier, can also be ambiguous.
  • the further second identifiers can contain a model identifier, a production period, a batch number, a production location, and so on of the electronic device.
  • the key derivation function is designed, for example, to uniquely derive a corresponding key from two separate input values, in this case the first input value and the second input value, and is therefore in this case a function two variables. Accordingly, identical input values always result in the same key.
  • the two input values can also be linked or calculated to produce a common input value and the key derivation function generates the key from the common input value, so in this case it is a function of a variable.
  • the communication interface By locking the communication interface using the key, the communication interface is put into a locked or encrypted state, meaning that a user from outside the electronic device cannot access the electronic device via the communication interface.
  • the communication interface can be unlocked, i.e. put into an unlocked or decrypted state, by entering the key used for locking via the communication interface or another interface of the electronic device.
  • the communication interface is in particular a communication interface for wired or cable-based communication of an external computing unit with a processor or a memory element or another component of the electronic device.
  • the communication interface includes in particular a hardware interface and/or a software interface.
  • the method according to the invention therefore achieves a high level of security with regard to unauthorized or unwanted access to the electronic device via the communication interface by using the first and second identifiers as two independent factors to generate the key.
  • Using the second identifier ensures that the generated key is clearly assigned to the individual electronic device.
  • the first identifier is independent of this in terms of content and, above all, cannot be easily identified by a party potentially accessing the communication interface without authorization.
  • the key can be reliably reconstructed if the communication interface needs to be unlocked.
  • the first identifier is used which is based on a hardware component or software component of the key generation processing unit which is also used to derive the input values for the Key derivation function and is used to generate the key based on it. This can further increase security.
  • the computing unit is part of the production line in which the electronic device was manufactured. This means in particular that steps for manufacturing the electronic device were carried out by means of the computing unit before carrying out the method according to the invention, for example for equipping the electronic device with software and/or for testing the software.
  • a computing unit can be understood in particular as a data processing device that contains a processing circuit.
  • the computing unit can therefore in particular process data to carry out computing operations. This may also include operations to carry out indexed access to a data structure, for example a conversion table, LUT (English: "look-up table").
  • the computing unit can in particular contain one or more computers, one or more microcontrollers and/or one or more integrated circuits, for example one or more application-specific integrated circuits (ASICs), one or more field-programmable gate arrays (FPGAs), and/or one or more single-chip systems (SoCs).
  • the computing unit can also contain one or more processors, for example one or more microprocessors, one or more central processing units (CPUs), one or more graphics processing units (GPUs) and/or one or more signal processors, in particular one or more digital signal processors (DSPs).
  • the computing unit can also contain a physical or virtual network of computers or other of the aforementioned units.
  • the computing unit includes one or more hardware and/or software interfaces and/or one or more memory units.
  • a memory unit can be a volatile data memory, for example a dynamic random access memory (DRAM) or a static random access memory (SRAM), or a non-volatile data memory, for example a read-only memory (ROM), a programmable read-only memory (PROM).
  • DRAM dynamic random access memory
  • SRAM static random access memory
  • non-volatile data memory for example a read-only memory (ROM), a programmable read-only memory (PROM).
  • ROM read-only memory
  • PROM programmable read-only memory
  • EPROM English: “erasable programmable read-only memory”
  • EEPROM English:
  • the memory can be designed as a flash memory (ESM) or a programmable read-only memory (EEPROM), as a ferroelectric random access memory (FRAM), as a magnetoresistive random access memory (MRAM), or as a phase-change random access memory (PCRAM).
  • ECM flash memory
  • EEPROM programmable read-only memory
  • FRAM ferroelectric random access memory
  • MRAM magnetoresistive random access memory
  • PCRAM phase-change random access memory
  • the electronic device is at least partially programmed and/or tested by means of the computing unit before the first identifier is determined and/or the electronic device is software loaded by means of the computing unit before the first identifier is determined and/or the electronic device is troubleshooted by means of the computing unit.
  • the steps mentioned can be considered part of the manufacture of the electronic device. These can be carried out at least in part via the communication interface.
  • the computing unit is connected to the electronic device via the communication interface and can then, for example, remain connected to it in order to automatically use the key to lock the communication interface.
  • the communication interface is a debugging interface of the electronic device.
  • the invention can be used particularly advantageously with such error-finding interfaces, which are also referred to as debugging interfaces, since these can be used in warranty cases or in the event of errors in the field in order to be able to access the electronic device again after the actual production of the device.
  • the debugging interface is standardized according to the industry standard IEEE1149.1, commonly referred to as JTAG (joint test action group).
  • JTAG joint test action group
  • the second identifier is determined depending on a serial number of the electronic device.
  • the second identifier may be identical to the serial number of the electronic device or the second identifier may be determined depending on the serial number together with other part-specific information.
  • the serial number of the electronic device is suitable for uniquely identifying the electronic device; on the other hand, the serial number is usually present on the electronic device electronically or analogously, for example in the form of character strings or an optically or electronically readable code, even after the actual production has been completed.
  • the first identifier is determined depending on a serial number of the hardware component of the computing unit and/or depending on a serial number of the software component of the computing unit.
  • the hardware component can be, for example, a mainboard, also known as a mainboard or motherboard, of the computing unit or a data storage device, such as an SSD drive or an HDD drive, of the computing unit.
  • the software component can be, for example, an operating system or firmware, such as BIOS firmware, of the computing unit.
  • the serial number of the hardware component or the software component can, for example, be automatically read and determined by the computing unit itself, so that the security of the process can be further increased.
  • a further first identifier is determined which identifies a further hardware component of the computing unit or identifies a further software component of the computing unit, in particular by means of the computing unit.
  • the first input value is generated depending on the first identifier and the further first identifier.
  • more than just one further first identifier can be determined and treated accordingly.
  • the first identifier and the further first identifier(s) can be chained together or linked via a logical operation, for example an XOR operation, or a other rule to generate the first input value. This further increases the security of the key.
  • the key is generated with a bit length of at least 32 bits or at least 64 bits. In this way, a high level of security can be achieved.
  • the electronic device is a sensor for the motor vehicle or an electronic control device for the motor vehicle.
  • the electronic control unit can also be designed as a zone control unit (ZCU) or a domain control unit (DCU).
  • ZCU zone control unit
  • DCU domain control unit
  • the sensor can be, for example, an environmental sensor, such as a camera, a lidar system, a radar system or an ultrasonic sensor system, or another sensor for the motor vehicle, such as a steering angle sensor, an acceleration sensor, an inertial measurement unit (IMU), and so on.
  • an environmental sensor such as a camera, a lidar system, a radar system or an ultrasonic sensor system
  • another sensor for the motor vehicle such as a steering angle sensor, an acceleration sensor, an inertial measurement unit (IMU), and so on.
  • IMU inertial measurement unit
  • Electronic control units and sensors for motor vehicles are, in some cases, highly safety-relevant components that must be reliably protected from unwanted or unauthorized access and for which authorized access must still be possible after production. This is where the invention has a particularly advantageous effect.
  • At least one historical data set is provided on a storage device.
  • Each historical data set of the at least one historical data set contains corresponding historical identification information for the hardware component or the software component of the computing unit and a production period associated with the historical identification information.
  • Most recent historical identification information of a most recent historical data set of the at least one historical data set is read from the storage device, in particular by means of the computing unit.
  • the most recent historical identification information is associated with a most recent production period.
  • a most recent historical first input value is determined.
  • a hash value is generated depending on the first input value, in particular by means of the computing unit.
  • a further hash value is generated depending on the most recent historical first input value, in particular by means of the computing unit. It is checked, in particular by means of the computing unit, whether the hash value matches the further hash value. If the hash value does not match the further hash value, a further historical data set is stored on the storage device, in particular by means of the computing unit.
  • the further historical data set contains the first input value and a production period assigned to the first input value, or the further historical data set contains the first identifier and a production period assigned to the first identifier.
  • the individual historical data records also contain, as respective historical identification information, either a corresponding historical first input value for the key derivation function or a respective historical first identifier.
  • the most recent historical first input value is determined by reading it from the corresponding most recent historical data record.
  • a most recent historical first identifier is read from the corresponding most recent historical data record and, based on this, the most recent historical first input value is determined, in particular as explained above with regard to the generation of the first input value.
  • the historical identification information therefore directly or indirectly identifies a historical hardware component or historical software component of the computing unit that was present in the computing unit during the corresponding associated production period.
  • the most recent historical production period can be understood in such a way that no more recent production period is present in the historical data records of the at least one historical data record.
  • the most recent historical data record is then the historical data record that contains the most recent production period and the most recent historical identification information is that contained in the most recent historical data record.
  • the storage device is in particular a storage device provided externally to the computing unit, which in particular represents a secure, access-restricted environment. If the hash value matches the other hash value, this means that the first input value matches the most recent historical first input value or that the first identifier matches the most recent historical first identifier. This means that the hardware component or software component of the computing unit that is identified by the first identifier or by the first input value matches the software component or hardware component of the computing unit that is identified by the most recent historical first input value or the most recent historical identifier.
  • the at least one historical data record on the storage device is used to reconstruct the password for unlocking the communication interface of an electronic device, all the necessary information is stored on the storage device. If this is not the case, i.e. if the hash value does not match the further hash value, the method for locking the communication interface or for generating the key can be interrupted until the further historical data record has been saved on the storage device and the corresponding verification steps can be carried out again. When carried out again, the hash value then matches the further hash value.
  • the hash value is generated independently of the most recent historical first input value or only dependent on the first input value.
  • the further hash value is generated independently of the first input value or only dependent on the most recent historical input value.
  • the hash function is in particular a cryptographic hash function, for example a SHA-2 function, in particular a SHA-256 function.
  • an error message and/or a request to enter user feedback is issued and/or a default setting and/or a predetermined initial state is set.
  • a method for unlocking a communication interface of an electronic device for a motor vehicle is specified, wherein the electronic device has been locked by means of a method according to the invention for locking a communication interface.
  • the at least one historical data set is provided on the storage device, i.e.
  • each historical data set of the at least one historical data set contains the corresponding historical identification information and the production period associated with the historical identification information.
  • a device identifier that identifies the electronic device with the communication interface to be unlocked is determined and, depending on the device identifier, a production period of the electronic device with the communication interface to be unlocked is determined, in particular by means of a further computing unit.
  • one of the historical data records is selected, in particular the one that corresponds to the production period determined depending on the device identifier, in particular by means of the further computing unit.
  • a historical first input value is generated for the key derivation function, in particular by means of the further computing unit.
  • a current second input value is generated for the key derivation function, in particular by means of the further computing unit.
  • a key is reconstructed depending on the historical first input value and the current second input value, in particular by means of the further computing unit.
  • the communication interface is unlocked using the reconstructed key, in particular by means of the further computing unit.
  • the historical first input values and their relation to the historical identifiers reference is made to the procedure for blocking the communication interface described above.
  • a data processing device which has a computing unit which is configured to carry out a method according to the invention for blocking a communication interface of an electronic device for a motor vehicle.
  • a further data processing device having a further computing unit is specified, wherein the further computing unit is configured to carry out a method according to the invention for unlocking a communication interface of an electronic device for a motor vehicle.
  • a computer program with instructions is specified, wherein the instructions, when executed by a data processing device, in particular a data processing device according to the invention, cause the data processing device to carry out a method according to the invention for blocking a communication interface of an electronic device for a motor vehicle.
  • the instructions can be in the form of program code, for example.
  • the program code can be provided, for example, as binary code or assembler and/or as source code of a programming language, for example C, and/or as a program script, for example Python.
  • a further computer program with further instructions is specified, wherein the further instructions, when executed by a further data processing device, in particular a further data processing device according to the invention, cause the further data processing device to carry out a method according to the invention for unlocking a communication interface of an electronic device for a motor vehicle.
  • the additional instructions can be in the form of program code, for example.
  • the program code can be provided, for example, as binary code or assembler and/or as source code of a programming language, for example C, and/or as a program script, for example Python.
  • a computer-readable storage medium which stores a computer program according to the invention or a further computer program according to the invention.
  • the computer program, the further computer program and the computer-readable storage medium can be referred to as respective computer program products comprising the instructions or the further instructions.
  • Fig. 1 is a flow chart of an exemplary embodiment of a method according to the invention for blocking a Communication interface of an electronic device for a motor vehicle;
  • Fig. 2 is a flow chart of another exemplary embodiment of a method according to the invention for blocking a communication interface of an electronic device for a motor vehicle;
  • Fig. 3 is a flow chart of another exemplary embodiment of a method according to the invention for unlocking a communication interface of an electronic device for a motor vehicle.
  • Fig. 1 shows a schematic flow diagram of an exemplary embodiment of a method according to the invention for blocking a communication interface of an electronic device 1, for example a control unit or a sensor, for a motor vehicle.
  • the electronic device 1 was manufactured in a production line which has a computing unit 2, for example a programming station.
  • a computing unit 2 for example a programming station.
  • software installation and/or troubleshooting of the electronic device 1 was carried out and/or the electronic device was tested by means of the computing unit 2.
  • the electronic device 1 has a communication interface, in particular a debugging interface, for example a JTAG interface, which can be locked or unlocked by means of a cryptographic key.
  • a debugging interface for example a JTAG interface
  • a first identifier 3 is determined which identifies a hardware component, for example an SSD memory or a motherboard, which identifies the computing unit 2 or a software component, for example an operating system or firmware, of the computing unit 2.
  • the first identifier 3 can be, for example, a serial number of the hardware component or the software component.
  • at least one further first identifier can be determined which identifies at least one further hardware component and/or at least one further software component of the computing unit 2.
  • the computing unit 2 receives a second identifier 4 that identifies the electronic device 1, for example a serial number of the electronic device 1.
  • the computing unit 2 can determine the second identifier 4 automatically, for example if it is stored electronically on the electronic device 1, or a user can provide the computing unit 2 with the second identifier using an input device, for example a keyboard or an optical reader or an RFID reader. If necessary, the optical reader or the RFID reader can also be positioned such that the second identifier 4 can be read automatically.
  • an input device for example a keyboard or an optical reader or an RFID reader. If necessary, the optical reader or the RFID reader can also be positioned such that the second identifier 4 can be read automatically.
  • step 160 the computing unit 2 applies the key derivation function to the first input value and the second input value and thus generates a key.
  • step 180 the communication interface is locked using the key, in particular automatically by means of the computing unit 2.
  • the computing unit 2 is connected to the communication interface or another communication interface of the electronic device 1 for this purpose.
  • Fig. 2 shows a schematic flow diagram of a further exemplary embodiment of a method according to the invention for blocking the communication interface, which is based on the embodiment according to Fig. 1.
  • step 100 is also carried out here.
  • At least one historical data set is stored on a storage device 5, which is provided in particular externally to the computing unit 2.
  • the storage device stores several such historical data sets; in the case of a single historical data set, the procedure follows analog.
  • Each of the historical data records contains corresponding historical identification information for the hardware component or the software component of the computing unit 2 as well as a production period associated with the historical identification information. For different production periods, this may involve different hardware components or software components, which, however, always have the same function in the computing unit 2. Therefore, we still speak of "the" hardware component or "the” software component.
  • the production periods are in particular unique, so that they can be clearly ordered chronologically. Consequently, one of the production periods is clearly a most recent production period.
  • the associated historical data record is referred to as the most recent historical data record and its historical identification information as the most recent historical identification information 6.
  • the computing unit 2 reads the most recent historical identification information from the storage device s in step 200.
  • the computing unit 2 determines a most recent historical first input value for the key derivation function depending on the most recent historical identification information 6.
  • the historical identification information of the historical data records can be identical to the respective historical first input value.
  • the historical identification information can each contain a historical first identifier and optionally at least one further historical first identifier, analogously to that described above with regard to the first identifier and the at least one further first identifier.
  • the most recent historical first input value is then derived from the historical first identifier and optionally the at least one further historical first identifier of the most recent historical identification information 6, analogously to that described above with regard to the first input value.
  • step 240 the computing unit 2 generates a hash value 8 depending on the first input value using a predetermined hash function and in step 260, the computing unit 2 generates a further hash value 7 depending on the most recent historical first input value using the hash function.
  • Fig. 3 shows a schematic flow diagram of an exemplary embodiment of a method according to the invention for unlocking a communication interface of an electronic device 1 that has been locked by means of a method according to the invention as described with reference to Fig. 1 and Fig. 2.
  • a further computing unit 9 different from the computing unit 2 receives a device identifier 10 of the electronic device 1, which corresponds to the second identifier.
  • the further computing unit 9 determines a production period of the electronic device 1 depending on the device identifier 10.
  • the further computing unit 9 selects the one of the historical data records that contains the production period of the electronic device 1. Depending on the historical identification information of the selected historical data record, the further computing unit 9 generates a historical first input value for the key derivation function and, depending on the device identifier 10, a current second input value for the key derivation function, analogously to that described above with regard to the first input value and the second input value.
  • step 360 the further computing unit 9 reconstructs the key 11 using the key derivation function depending on the historical first input value and the current second input value.
  • step 380 the communication interface is unlocked using the reconstructed key 11.
  • the invention enables secure access protection for a communication interface of an electronic device for a motor vehicle. For this purpose, in particular part-specific keys are generated, which, however, do not have to be stored but can be reconstructed if necessary.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Lock And Its Accessories (AREA)

Abstract

Zum Sperren einer Kommunikationsschnittstelle eines elektronischen Geräts (1) für ein Kraftfahrzeug, wird ein erster Identifikator (3) bestimmt, welcher eine Hardwarekomponente einer Recheneinheit (2) einer Fertigungslinie, in der das elektronische Gerät (1) gefertigt wurde, kennzeichnet oder eine Softwarekomponente der Recheneinheit (2) kennzeichnet. Ein zweiter Identifikator (4) wird erhalten, der das elektronische Gerät (1) kennzeichnet. Mittels der Recheneinheit (2) wird abhängig von dem ersten Identifikator (3) ein erster Eingabewert für eine vorgegebene Schlüsselableitungsfunktion erzeugt wird und abhängig von dem zweiten Identifikator (4) ein zweiter Eingabewert für die Schlüsselableitungsfunktion erzeugt. Mittels der Recheneinheit (2) wird unter Verwendung der Schlüsselableitungsfunktion abhängig von dem ersten Eingabewert und dem zweiten Eingabewert ein Schlüssel erzeugt. Die Kommunikationsschnittstelle wird unter Verwendung des Schlüssels gesperrt.

Description

Sperren und Entsperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug
Die vorliegende Erfindung betrifft ein Verfahren zum Sperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug sowie ein entsprechendes Verfahren zum Entsperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug. Ferner betrifft die Erfindung Datenverarbeitungsvorrichtungen und ein Computerprogrammprodukt.
Elektronische Geräte für Kraftfahrzeuge, zum Beispiel Steuergeräte oder Sensoren, können Kommunikationsschnittstellen für unterschiedliche Zwecke aufweisen.
Gegebenenfalls kann es aus Sicherheitsgründen oder zur Vermeidung von Fehlgebrauch wünschenswert sein, solche Kommunikationsschnittstellen zu sperren, sobald das elektronische Gerät nach dessen Fertigung für einen Normalbetrieb eingesetzt wird. Dies kann unter anderem bei Fehlersuchschnittstellen, auch als Debugging-Schnittstellen, wie etwa JTAG-Schnittstellen, der Fall sein. Solche Kommunikationsschnittstellen werden während der Fertigung beispielsweise zur Softwarebestückung des elektronischen Geräts und/oder zum Testen von Software des elektronischen Geräts beziehungsweise zur Fehlersuche verwendet. Im Normalbetrieb sind sie mitunter in der Regel nicht erforderlich und können daher gesperrt werden, insbesondere mittels Passwortschutz.
Es kann jedoch auch nach der Fertigung notwendig sein, über die Kommunikationsschnittelle auf das elektronische Gerät zuzugreifen, beispielsweise zur Fehlersuche oder zur Änderung der auf dem elektronischen Gerät gespeicherten Software oder zum Speichern beziehungsweise Auslesen sonstiger Daten. Um Zugriff zu erhalten, muss ein Nutzer daher gegebenenfalls das korrekte Passwort eingeben.
Das Dokument US 2017/0090909 A1 beschreibt ein Verfahren zum sicheren Schreiben von Patch Code in einen Speicher eines SoC. Eine JT AG-Schnittstelle kann dazu verwendet werden, die Funktionalität des SoC zu prüfen. Die JT AG-Schnittstelle kann durch Eingabe eines Schnittstellenpassworts durch den SoC-Hersteller entsperrt werden. In einem durch ein Passwort gesperrten Zustand können Werte, die in Komponenten des SoC und/oder einer anderen Funktionalität des SoC gespeichert sind, nicht über die JT AG-Schnittstelle modifiziert werden. Es ist eine Aufgabe der vorliegenden Erfindung, einen sicheren Zugriffsschutz für eine Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug anzugeben.
Diese Aufgabe wird durch den jeweiligen Gegenstand der unabhängigen Ansprüche gelöst. Vorteilhafte Weiterbildungen und bevorzugte Ausführungsformen sind Gegenstand der abhängigen Ansprüche.
Die Erfindung beruht auf der Idee zum Sperren der Kommunikationsschnittstelle ein Schlüssel, vereinfacht auch als Passwort bezeichnet, zu verwenden, der zum einen aus einem dem individuellen elektronischen Gerät zugeordneten Identifikator abgeleitet wird, zum anderen jedoch auch aus wenigstens einem Identifikator, der einer Hardware- Komponente oder einer Software-Komponente einer Recheneinheit zugeordnet ist, die aus einer Fertigungslinie stammt, in welcher das elektronische Gerät hergestellt wurde. Durch den erstgenannten teilespezifischen Identifikator und den letztgenannten fertigungslinienspezifischen Identifikator ist der Schlüssel nachträglich rekonstruierbar. Ferner werden zwei Faktoren zur Authentifizierung implementiert, sodass die Sicherheit erhöht wird.
Gemäß einem Aspekt der Erfindung wird ein Verfahren, beispielsweise ein computerimplementiertes Verfahren, zum Sperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug angegeben. Dabei wird ein erster Identifikator bestimmt, welcher eine Hardwarekomponente einer Recheneinheit einer Fertigungslinie, in der das elektronische Gerät gefertigt wurde, kennzeichnet oder eine Softwarekomponente der Recheneinheit kennzeichnet. Der erste Identifikator wird dabei insbesondere mittels der Recheneinheit bestimmt. Es wird ein zweiter Identifikator erhalten, insbesondere durch die Recheneinheit, der das elektronische Gerät kennzeichnet, insbesondere eindeutig kennzeichnet. Mittels der Recheneinheit wird abhängig von dem ersten Identifikator ein erster Eingabewert für eine vorgegebene Schlüsselableitungsfunktion erzeugt und abhängig von dem zweiten Identifikator wird ein zweiter Eingabewert für die Schlüsselableitungsfunktion erzeugt. Mittels der Recheneinheit wird unter Verwendung der Schlüsselableitungsfunktion abhängig von dem ersten Eingabewert und dem zweiten Eingabewert ein Schlüssel erzeugt, insbesondere ein kryptografischer Schlüssel. Die Kommunikationsschnittstelle wird unter Verwendung des Schlüssels gesperrt, insbesondere mittels der Recheneinheit, vorzugsweise automatisch. Der erste Identifikator ist dergestalt, dass sich aus der Kenntnis des ersten Identifikators die damit gekennzeichnete individuelle Hardware- oder Softwarekomponente eindeutig bestimmen lässt. Es kann sich beispielsweise um eine Seriennummer oder dergleichen handeln. Dies gilt analog für den zweiten Identifikator, sodass bei Kenntnis des zweiten Identifikators das durch diesen gekennzeichnete individuelle elektronische Gerät eindeutig bestimmt werden kann. Auch hier kann es sich beispielsweise um eine Seriennummer oder dergleichen handeln.
Je nach Ausführungsform kann der erste Eingabewert identisch zum ersten Identifikator sein oder der erste Eingabewert wird gemäß einer vorgegebenen Vorschrift aus dem ersten Identifikator abgeleitet. In verschiedenen Ausführungsformen ist es auch möglich, neben dem ersten Identifikator einen oder mehrere weitere erste Identifikatoren der Software- oder Hardwarekomponente beziehungsweise einer oder mehrerer weiterer Hardware- oder Softwarekomponenten der Recheneinheit zu bestimmen und den ersten Eingabewert abhängig von dem ersten Identifikator und den weiteren Identifikatoren abzuleiten beziehungsweise zu berechnen.
Dasselbe gilt analog für den zweiten Identifikator beziehungsweise den zweiten Eingabewert. Der zweite Eingabewert kann also identisch zum zweiten Identifikator sein oder aus diesem abgeleitet werden, gegebenenfalls abhängig von dem zweiten Identifikator und einem oder mehreren weiteren zweiten Identifikatoren, welche das elektronische Gerät kennzeichnen.
Werden neben dem ersten Identifikator weitere erste Identifikatoren für weitere Hardwareoder Softwarekomponenten verwendet, so lässt sich aus den weiteren ersten Identifikatoren jeweils eindeutig die entsprechende weitere Hardware- oder Softwarekomponente bestimmen. Bei der Verwendung eines oder mehrerer weiterer zweiter Identifikatoren können diese je nach Ausführungsform ebenfalls eine eindeutige Bestimmung des elektronischen Geräts ermöglichen. Dies ist jedoch nicht zwingend der Fall, sodass die weiteren zweiten Identifikatoren, im Gegensatz zum zweiten Identifikator, auch mehrdeutig sein können. Beispielsweise können die weiteren zweiten Identifikatoren eine Modellkennung, einen Fertigungszeitraum, eine Chargennummer, einen Fertigungsstandort und so weiter des elektronischen Geräts beinhalten.
Die Schlüsselableitungsfunktion ist beispielsweise dazu ausgelegt, aus zwei separaten Eingabewerten, vorliegend dem ersten Eingabewert und dem zweiten Eingabewert, einen entsprechenden Schlüssel eindeutig abzuleiten, ist also in diesem Fall eine Funktion zweier Variablen. Dementsprechend ergibt sich bei identischen Eingabewerten stets derselbe Schlüssel. Je nach Ausführungsform können die beiden Eingabewerte auch verknüpft oder verrechnet werden, um einen gemeinsamen Eingabewert zu erzeugen und die Schlüsselableitungsfunktion erzeugt aus dem gemeinsamen Eingabewert den Schlüssel, ist also in diesem Fall eine Funktion einer Variablen.
Durch das Sperren der Kommunikationsschnittstelle mittels des Schlüssels wird die Kommunikationsschnittstelle also in einen gesperrten oder verschlüsselten Zustand versetzt, indem ein Nutzer von außerhalb des elektronischen Geräts über die Kommunikationsschnittstelle nicht auf das elektronische Gerät zugreifen kann. Die Kommunikationsschnittstelle kann entsperrt werden, also in einen entsperrten oder entschlüsselten Zustand versetzt werden, indem über die Kommunikationsschnittstelle oder eine weitere Schnittstelle des elektronischen Geräts der zum Sperren verwendete Schlüssel eingegeben wird.
Bei der Kommunikationsschnittstelle handelt es sich insbesondere um eine Kommunikationsschnittstelle zur kabelgebundenen oder drahtgebundenen Kommunikation einer externen Recheneinheit mit einem Prozessor oder einem Speicherelement oder einer sonstigen Komponente des elektronischen Geräts. Die Kommunikationsschnittstelle beinhaltet insbesondere eine Hardware-Schnittstelle und/oder eine Software-Schnittstelle.
Durch das erfindungsgemäße Verfahren wird also zum einen eine hohe Sicherheit bezüglich unberechtigtem oder unerwünschtem Zugriff auf das elektronische Gerät über die Kommunikationsschnittstelle erreicht, indem der erste und der zweite Identifikator als zwei voneinander unabhängige Faktoren zur Erzeugung des Schlüssels verwendet werden. Durch die Verwendung des zweiten Identifikators wird eine eindeutige Zuordnung des erzeugten Schlüssels zu dem individuellen elektronischen Gerät erreicht. Der erste Identifikator ist davon inhaltlich unabhängig und vor allem durch eine potentiell unberechtigterweise auf die Kommunikationsschnittstelle zugreifende Partei nicht in einfacher Weise identifizierbar. Darüber hinaus kann jedoch bei Kenntnis des erfindungsgemäßen Verfahrens der Schlüssel zuverlässig rekonstruiert werden, sollte die Kommunikationsschnittstelle entsperrt werden müssen.
Ferner wird bei dem erfindungsgemäßen Verfahren der erste Identifikator verwendet, der eine Hardware-Komponente oder Software-Komponente derjenigen Recheneinheit der Schlüsselerzeugung zugrunde gelegt, die auch zum Ableiten der Eingabewerte für die Schlüsselableitungsfunktion und zum Erzeugen des Schlüssels basierend darauf verwendet wird. Dadurch kann die Sicherheit weiter erhöht werden.
Die Recheneinheit ist Teil der Fertigungslinie, in der das elektronische Gerät gefertigt wurde. Das bedeutet insbesondere, dass mittels der Recheneinheit vor der Durchführung des erfindungsgemäßen Verfahrens Schritte zur Fertigung des elektronischen Geräts durchgeführt wurden, beispielsweise zur Bestückung des elektronischen Geräts mit Software und/oder zum Testen der Software.
Unter einer Recheneinheit kann insbesondere ein Datenverarbeitungsgerät verstanden werden, das einen Verarbeitungsschaltkreis enthält. Die Recheneinheit kann also insbesondere Daten zur Durchführung von Rechenoperationen verarbeiten. Darunter fallen gegebenenfalls auch Operationen, um indizierte Zugriffe auf eine Datenstruktur, beispielsweise eine Umsetzungstabelle, LUT (englisch: „look-up table“), durchzuführen.
Die Recheneinheit kann insbesondere einen oder mehrere Computer, einen oder mehrere Mikrocontroller und/oder einen oder mehrere integrierte Schaltkreise enthalten, beispielsweise eine oder mehrere anwendungsspezifische integrierte Schaltungen, ASIC (englisch: „application-specific integrated circuit“), eines oder mehrere feldprogrammierbare Gate-Arrays, FPGA, und/oder eines oder mehrere Einchipsysteme, SoC (englisch: „system on a chip“). Die Recheneinheit kann auch einen oder mehrere Prozessoren, beispielsweise einen oder mehrere Mikroprozessoren, eine oder mehrere zentrale Prozessoreinheiten, CPU (englisch: „central processing unit“), eine oder mehrere Grafikprozessoreinheiten, GPU (englisch: „graphics processing unit“) und/oder einen oder mehrere Signalprozessoren, insbesondere einen oder mehrere Digitalsignalprozessoren, DSP, enthalten. Die Recheneinheit kann auch einen physischen oder einen virtuellen Verbund von Computern oder sonstigen der genannten Einheiten beinhalten.
In verschiedenen Ausführungsbeispielen beinhaltet die Recheneinheit eine oder mehrere Hardware- und/oder Softwareschnittstellen und/oder eine oder mehrere Speichereinheiten.
Eine Speichereinheit kann als flüchtiger Datenspeicher, beispielsweise als dynamischer Speicher mit wahlfreiem Zugriff, DRAM (englisch: „dynamic random access memory“) oder statischer Speicher mit wahlfreiem Zugriff, SRAM (englisch: „static random access memory“), oder als nicht-flüchtiger Datenspeicher, beispielsweise als Festwertspeicher, ROM (englisch: „read-only memory“), als programmierbarer Festwertspeicher, PROM (englisch: „programmable read-only memory“), als löschbarer programmierbarer Festwertspeicher, EPROM (englisch: „erasable programmable read-only memory“), als elektrisch löschbarer programmierbarer Festwertspeicher, EEPROM (englisch:
„electrically erasable programmable read-only memory“), als Flash-Speicher oder Flash- EEPROM, als ferroelektrischer Speicher mit wahlfreiem Zugriff, FRAM (englisch: „ferroelectric random access memory“), als magnetoresistiver Speicher mit wahlfreiem Zugriff, MRAM (englisch: „magnetoresistive random access memory“) oder als Phasenänderungsspeicher mit wahlfreiem Zugriff, PCRAM (englisch: „phase-change random access memory“), ausgestaltet sein.
Gemäß zumindest einer Ausführungsform des Verfahrens zum Sperren einer Kommunikationsschnittstelle wird das elektronische Gerät vor der Bestimmung des ersten Identifikators wenigstens zum Teil mittels der Recheneinheit programmiert und/oder getestet und/oder es wird vor der Bestimmung des ersten Identifikators mittels der Recheneinheit eine Softwarebestückung des elektronischen Geräts durchgeführt und/oder mittels der Recheneinheit eine Fehlersuche für das elektronische Gerät durchgeführt.
Die genannten Schritte können als Teil der Fertigung des elektronischen Geräts aufgefasst werden. Diese können wenigstens zum Teil über die Kommunikationsschnittstelle durchgeführt werden. Die Recheneinheit ist in diesem Fall also über die Kommunikationsschnittstelle mit dem elektronischen Gerät verbunden und kann dann beispielsweise mit diesem verbunden bleiben, um automatisch den Schlüssel zum Sperren der Kommunikationsschnittstelle einzusetzen.
Gemäß zumindest einer Ausführungsform handelt es sich bei der Kommunikationsschnittstelle um eine Fehlersuchschnittstelle des elektronischen Geräts.
Bei solchen Fehlersuchschnittstellen, die auch als Debugging-Schnittstellen bezeichnet werden, ist die Erfindung besonders vorteilhaft einsetzbar, da diese in Gewährleistungsfällen oder bei Fehlern im Feld gegebenenfalls verwendet werden, um nach der eigentlichen Fertigung des elektronischen Geräts wieder auf dieses zugreifen zu können.
Beispielsweise ist die Fehlersuchschnittstelle gemäß dem Industriestandard IEEE1149.1 , der gemeinhin als JTAG (englisch: joint test action group) bezeichnet wird, standardisiert. Gemäß zumindest einer Ausführungsform wird er zweite Identifikator abhängig von einer Seriennummer des elektronischen Geräts bestimmt.
Beispielsweise kann der zweite Identifikator identisch zur Seriennummer des elektronischen Geräts sein oder der zweite Identifikator kann abhängig von der Seriennummer zusammen mit weiteren teilespezifischen Informationen bestimmt werden.
Die Seriennummer des elektronischen Geräts ist zum einen geeignet, das elektronische Gerät eindeutig zu bestimmen, zum anderen ist die Seriennummer in aller Regel elektronisch oder analog, beispielsweise in Form von Zeichenketten oder eines optisch oder elektronisch lesbaren Codes, auf dem elektronischen Gerät vorhanden auch nachdem die eigentliche Fertigung abgeschlossen ist.
Gemäß zumindest einer Ausführungsform wird der erste Identifikator abhängig von einer Seriennummer der Hardware-Komponente der Recheneinheit und/oder abhängig von einer Seriennummer der Software-Komponente der Recheneinheit bestimmt.
Die Hardware-Komponente kann beispielsweise eine Hauptplatine, auch als Mainboard oder Motherboard bezeichnet, der Recheneinheit sein oder ein Datenspeicher, beispielsweise ein SSD-Laufwerk oder ein HDD-Laufwerk, der Recheneinheit sein. Bei der Softwarekomponente kann es sich beispielsweise um ein Betriebssystem oder um eine Firmware, beispielsweise eine BIOS-Firmware, der Recheneinheit handeln.
Die Seriennummer der Hardware-Komponente beziehungsweise der Software- Komponente kann beispielsweise durch die Recheneinheit selbst automatisch gelesen und bestimmt werden, sodass die Sicherheit des Verfahrens weiter erhöht werden kann.
Gemäß zumindest einer Ausführungsform wird ein weiterer erster Identifikator bestimmt, welcher eine weitere Hardware-Komponente der Recheneinheit kennzeichnet oder eine weitere Software-Komponente der Recheneinheit kennzeichnet, insbesondere mittels der Recheneinheit. Der erste Eingabewert wird abhängig von dem ersten Identifikator und dem weiteren ersten Identifikator erzeugt.
Beispielsweise können in weiteren Ausführungsformen mehr als nur ein weiterer erster Identifikator bestimmt und entsprechend analog behandelt werden. Der erste Identifikator und der oder die weiteren ersten Identifikatoren können miteinander verkettet werden oder über eine logische Operation, beispielsweise eine XOR-Operation, oder eine sonstige Vorschrift miteinander verknüpft werden, um den ersten Eingabewert zu erzeugen. Auf diese Weise wird die Sicherheit des Schlüssels weiter erhöht.
Gemäß zumindest einer Ausführungsform wird der Schlüssel mit einer Bitlänge von mindestens 32 Bit oder mindestens 64 Bit erzeugt. Auf diese Weise kann eine hohe Sicherheit erreicht werden.
Gemäß zumindest einer Ausführungsform handelt es sich bei dem elektronischen Gerät um einen Sensor für das Kraftfahrzeug oder um ein elektronisches Steuergerät für das Kraftfahrzeug.
Das elektronische Steuergerät, ECU (englisch: electronic control unit), kann auch als ein Zonensteuergerät, ZCU (englisch: zone control unit) oder ein Bereichssteuergerät, DCU (englisch: domain control unit) ausgestaltet sein.
Bei dem Sensor kann es sich beispielsweise um einen Umfeldsensor, beispielsweise eine Kamera, ein Lidar-System, ein Radarsystem oder ein Ultraschallsensorsystem, handeln oder um einen sonstigen Sensor für das Kraftfahrzeug, beispielsweise einen Lenkwinkelsensor, einen Beschleunigungssensor, eine inertiale Messeinheit, IMU (englisch: inertial measurement unit), und so weiter.
Bei elektronischen Steuergeräten und Sensoren für Kraftfahrzeuge handelt es sich zum Teil um hochgradig sicherheitsrelevante Komponenten, die zum einen zuverlässig vor unerwünschtem oder unberechtigtem Zugriff geschützt werden müssen und für die zum anderen nach der Fertigung ein berechtigter Zugriff dennoch möglich sein muss. Hier wirkt sich die Erfindung besonders vorteilhaft aus.
Gemäß zumindest einer Ausführungsform des Verfahrens wird auf einem Speichergerät wenigstens ein historischer Datensatz bereitgestellt. Jeder historische Datensatz des wenigstens einen historischen Datensatzes beinhaltet entsprechende historische Identifikationsinformationen für die Hardware-Komponente oder die Software- Komponente der Recheneinheit und einen den historischen Identifikationsinformationen zugeordneten Fertigungszeitraum. Jüngste historische Identifikationsinformationen eines jüngsten historischen Datensatzes des wenigstens einen historischen Datensatzes werden aus dem Speichergerät gelesen, insbesondere mittels der Recheneinheit. Dabei ist den jüngsten historischen Identifikationsinformationen ein jüngster Fertigungszeitraum zugeordnet. Abhängig von den jüngsten historischen Identifikationsinformationen wird ein jüngster historischer erster Eingabewert bestimmt.
Unter Verwendung einer vorgegebenen Hashfunktion wird ein Hashwert abhängig von dem ersten Eingabewert erzeugt, insbesondere mittels der Recheneinheit. Unter Verwendung der Hashfunktion wird ein weiterer Hashwert abhängig von dem jüngsten historischen ersten Eingabewert erzeugt, insbesondere mittels der Recheneinheit. Es wird überprüft, insbesondere mittels der Recheneinheit, ob der Hashwert mit dem weiteren Hashwert übereinstimmt. Falls der Hashwert nicht mit dem weiteren Hashwert übereinstimmt, wird, insbesondere mittels der Recheneinheit, ein weiterer historischer Datensatz auf dem Speichergerät gespeichert. Der weitere historische Datensatz enthält den ersten Eingabewert und einen dem ersten Eingabewert zugeordneten Fertigungszeitraum oder der weitere historische Datensatz enthält den ersten Identifikator und einen dem ersten Identifikator zugeordneten Fertigungszeitraum.
Insbesondere enthalten die einzelnen historischen Datensätze als jeweilige historische Identifikationsinformationen ebenfalls entweder einen entsprechenden historischen ersten Eingabewert für die Schlüsselableitungsfunktion oder einen jeweiligen historischen ersten Identifikator. Im ersteren Fall wird der jüngste historische erste Eingabewert bestimmt, in dem er aus dem entsprechenden jüngsten historischen Datensatz ausgelesen wird. In letzterem Fall wird ein jüngster historischer erster Identifikator aus dem entsprechenden jüngsten historischen Datensatz ausgelesen und basierend darauf der jüngste historische erste Eingabewert bestimmt, insbesondere wie oben bezüglich der Erzeugung des ersten Eingabewerts erläutert.
Die historischen Identifikationsinformationen kennzeichnen daher direkt oder indirekt jeweils eine historische Hardware-Komponente oder historische Software-Komponente der Recheneinheit, die zu dem entsprechenden zugeordneten Fertigungszeitraum in der Recheneinheit vorhanden war. Der jüngste historische Fertigungszeitraum kann derart verstanden werden, dass kein jüngerer Fertigungszeitraum in den historischen Datensätzen des wenigstens einen historischen Datensatzes vorhanden ist. Der jüngste historische Datensatz ist dann derjenige historische Datensatz, der den jüngsten Fertigungszeitraum enthält und die jüngsten historischen Identifikationsinformationen sind diejenigen, die von dem jüngsten historischen Datensatz enthalten sind.
Das Speichergerät ist insbesondere ein extern zu der Recheneinheit vorgesehenes Speichergerät, das insbesondere eine sichere, zugangsbeschränkte Umgebung darstellt. Falls der Hashwert mit dem weiteren Hashwert übereinstimmt, so bedeutet dies, dass der erste Eingabewert mit dem jüngsten historischen ersten Eingabewert übereinstimmt beziehungsweise dass der erste Identifikator mit dem jüngsten historischen ersten Identifikator übereinstimmt. Dies bedeutet also, dass die Hardware-Komponente oder Software-Komponente der Recheneinheit, welche durch den ersten Identifikator gekennzeichnet ist, beziehungsweise durch den ersten Eingabewert, mit derjenigen Software-Komponente oder Hardware-Komponente der Recheneinheit übereinstimmt, die durch den jüngsten historischen ersten Eingabewert beziehungsweise den jüngsten historischen Identifikator gekennzeichnet ist.
Dementsprechend kann sichergestellt werden, dass, wenn der wenigstens eine historische Datensatz auf dem Speichergerät zur Rekonstruktion des Passworts zum Entsperren der Kommunikationsschnittstelle eines elektronischen Geräts verwendet wird, alle erforderlichen Informationen auf dem Speichergerät gespeichert sind. Falls dem nicht so ist, falls der Hashwert also nicht mit dem weiteren Hashwert übereinstimmt, kann das Verfahren zum Sperren der Kommunikationsschnittstelle beziehungsweise zum Erzeugen des Schlüssels unterbrochen werden, bis der weitere historische Datensatz auf dem Speichergerät gespeichert wurde und die entsprechenden Schritte zur Überprüfung können erneut durchgeführt werden. Bei der erneuten Durchführung stimmt dann der Hashwert mit dem weiteren Hashwert überein.
Der Hashwert wird insbesondere unabhängig von dem jüngsten historischen ersten Eingabewert beziehungsweise nur abhängig von dem ersten Eingabewert erzeugt. Analog wird der weitere Hashwert unabhängig von dem ersten Eingabewert beziehungsweise abhängig nur von dem jüngsten historischen Eingabewert erzeugt.
Die Hashfunktion ist insbesondere eine kryptologische Hashfunktion, beispielsweise eine SHA-2-Funktion, insbesondere eine SHA-256-Funktion.
Für Anwendungsfälle oder Anwendungssituationen, die sich bei dem Verfahren ergeben können und die hier nicht explizit beschrieben sind, kann vorgesehen sein, dass gemäß dem Verfahren eine Fehlermeldung und/oder eine Aufforderung zur Eingabe einer Nutzerrückmeldung ausgegeben und/oder eine Standardeinstellung und/oder ein vorbestimmter Initialzustand eingestellt wird. Gemäß einem weiteren Aspekt der Erfindung wird ein Verfahren zum Entsperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug angegeben, wobei das elektronische Gerät mittels eines erfindungsgemäßen Verfahrens zum Sperren einer Kommunikationsschnittstelle gesperrt wurde. Gemäß dem Verfahren zum Entsperren der Kommunikationsschnittstelle wird auf dem Speichergerät, also insbesondere dem externen Speichergerät, der wenigstens eine historische Datensatz bereitgestellt, wobei jeder historische Datensatz des wenigstens einen historischen Datensatzes die entsprechenden historischen Identifikationsinformationen und den historischen Identifikationsinformationen zugeordneten Fertigungszeitraum beinhaltet. Ein Geräteidentifikator, der das elektronische Gerät mit der zu entsperrenden Kommunikationsschnittstelle kennzeichnet wird bestimmt und abhängig von dem Geräteidentifikator wird ein Fertigungszeitraum des elektronischen Geräts mit der zu entsperrenden Kommunikationsschnittstelle bestimmt, insbesondere mittels einer weiteren Recheneinheit.
Abhängig von dem so bestimmten Fertigungszeitraum wird einer der historischen Datensätze ausgewählt, insbesondere derjenige, der mit dem abhängig von dem Geräteidentifikator bestimmten Fertigungszeitraum übereinstimmt, insbesondere mittels der weiteren Recheneinheit. Abhängig von den historischen Identifikationsinformationen des ausgewählten historischen Datensatzes wird ein historischer erster Eingabewert für die Schlüsselableitungsfunktion erzeugt, insbesondere mittels der weiteren Recheneinheit. Abhängig von dem Geräteidentifikator wird ein aktueller zweiter Eingabewert für die Schlüsselableitungsfunktion erzeugt, insbesondere mittels der weiteren Recheneinheit. Unter Verwendung der Schlüsselableitungsfunktion wird abhängig von dem historischen ersten Eingabewert und dem aktuellen zweiten Eingabewert ein Schlüssel rekonstruiert, insbesondere mittels der weiteren Recheneinheit. Die Kommunikationsschnittstelle wird unter Verwendung des rekonstruierten Schlüssels entsperrt, insbesondere mittels der weiteren Recheneinheit.
Bezüglich der historischen Identifikationsinformationen, der historischen ersten Eingabewerte und deren Bezug zu den historischen Identifikatoren wird auf das oben beschriebene Verfahren zum Sperren der Kommunikationsschnittstelle verwiesen.
Auf diese Weise wird also eine Möglichkeit zum Entsperren der Kommunikationsschnittstelle angegeben, bei dem der Schlüssel selbst nicht gespeichert werden muss, sondern zuverlässig für alle Fertigungszeiträume und dementsprechend alle relevanten elektronischen Geräte rekonstruiert werden kann. Für Anwendungsfälle oder Anwendungssituationen, die sich bei dem Verfahren ergeben können und die hier nicht explizit beschrieben sind, kann vorgesehen sein, dass gemäß dem Verfahren eine Fehlermeldung und/oder eine Aufforderung zur Eingabe einer Nutzerrückmeldung ausgegeben und/oder eine Standardeinstellung und/oder ein vorbestimmter Initialzustand eingestellt wird.
Gemäß einem weiteren Aspekt der Erfindung wird eine Datenverarbeitungsvorrichtung angegeben, welche eine Recheneinheit aufweist, die dazu eingerichtet ist, ein erfindungsgemäßes Verfahren zum Sperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug durchzuführen.
Gemäß einem weiteren Aspekt der Erfindung wird eine weitere Datenverarbeitungsvorrichtung aufweisend eine weitere Recheneinheit angegeben, wobei die weitere Recheneinheit dazu eingerichtet ist, ein erfindungsgemäßes Verfahren zum Entsperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug durchzuführen.
Gemäß einem weiteren Aspekt der Erfindung wird ein Computerprogramm mit Befehlen angegeben, wobei die Befehle bei Ausführung durch eine Datenverarbeitungsvorrichtung, insbesondere eine erfindungsgemäße Datenverarbeitungsvorrichtung, die Datenverarbeitungsvorrichtung dazu veranlassen, ein erfindungsgemäßes Verfahren zum Sperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug durchzuführen.
Die Befehle können beispielsweise als Programmcode vorliegen. Der Programmcode kann beispielsweise als Binärcode oder Assembler und/oder als Quellcode einer Programmiersprache, zum Beispiel C, und/oder als Programmskript, zum Beispiel Python, bereitgestellt sein.
Gemäß einem weiteren Aspekt der Erfindung wird ein weiteres Computerprogramm mit weiteren Befehlen angegeben, wobei die weiteren Befehle bei Ausführung durch eine weitere Datenverarbeitungsvorrichtung, insbesondere eine erfindungsgemäße weitere Datenverarbeitungsvorrichtung, die weitere Datenverarbeitungsvorrichtung dazu veranlassen, ein erfindungsgemäßes Verfahren zum Entsperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug durchzuführen. Die weiteren Befehle können beispielsweise als Programmcode vorliegen. Der Programmcode kann beispielsweise als Binärcode oder Assembler und/oder als Quellcode einer Programmiersprache, zum Beispiel C, und/oder als Programmskript, zum Beispiel Python, bereitgestellt sein.
Gemäß einem weiteren Aspekt der Erfindung wird ein computerlesbares Speichermedium angegeben, welches ein erfindungsgemäßes Computerprogramm oder ein erfindungsgemäßes weiteres Computerprogramm speichert.
Das Computerprogramm, das weitere Computerprogramm sowie das computerlesbare Speichermedium können als jeweilige Computerprogrammprodukte aufweisend die Befehle beziehungsweise die weiteren Befehle bezeichnet werden.
Weitere Merkmale der Erfindung ergeben sich aus den Ansprüchen, den Figuren und der Figurenbeschreibung. Die vorstehend in der Beschreibung genannten Merkmale und Merkmalskombinationen sowie die nachfolgend in der Figurenbeschreibung genannten und/oder in den Figuren gezeigten Merkmale und Merkmalskombinationen können nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen von der Erfindung umfasst sein. Es können insbesondere auch Ausführungen und Merkmalskombinationen von der Erfindung umfasst sein, die nicht alle Merkmale eines ursprünglich formulierten Anspruchs aufweisen. Es können darüber hinaus Ausführungen und Merkmalskombinationen von der Erfindung umfasst, die über die in den Rückbezügen der Ansprüche dargelegten Merkmalskombinationen hinausgehen oder von diesen abweichen.
Die Erfindung wird im Folgenden anhand konkreter Ausführungsbeispiele und zugehöriger schematischer Zeichnungen näher erläutert. In den Figuren können gleiche oder funktionsgleiche Elemente mit denselben Bezugszeichen versehen sein. Die Beschreibung gleicher oder funktionsgleicher Elemente wird gegebenenfalls nicht notwendigerweise bezüglich verschiedener Figuren wiederholt.
In den Figuren zeigen jeweils schematisch
Fig. 1 ein Ablaufdiagramm einer beispielhaften Ausführungsform eines erfindungsgemäßen Verfahrens zum Sperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug;
Fig. 2 ein Ablaufdiagramm einer weiteren beispielhaften Ausführungsform eines erfindungsgemäßen Verfahrens zum Sperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug; und
Fig. 3 ein Ablaufdiagramm einer weiteren beispielhaften Ausführungsform eines erfindungsgemäßen Verfahrens zum Entsperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug.
Fig. 1 zeigt ein schematisches Ablaufdiagramm einer beispielhaften Ausführungsform eines erfindungsgemäßen Verfahrens zum Sperren einer Kommunikationsschnittstelle eines elektronischen Geräts 1 , beispielsweise eines Steuergeräts oder eines Sensors, für ein Kraftfahrzeug.
Das elektronische Gerät 1 wurde in einer Fertigungslinie gefertigt, welche eine Recheneinheit 2, beispielsweise eine Programmierstation, aufweist. Mittels der Recheneinheit 2 wurde beispielsweise eine Softwarebestückung und/oder eine Fehlersuche des elektronischen Geräts 1 durchgeführt und/oder das elektronische Gerät wurde mittels der Recheneinheit 2 getestet.
Das elektronische Gerät 1 weist eine Kommunikationsschnittstelle auf, insbesondere eine Fehlersuchschnittstelle, zum Beispiel eine JTAG-Schnittstelle, die mittels eines kryptologischen Schlüssels gesperrt beziehungsweise entsperrt werden kann.
In Schritt 100 wird, insbesondere mittels der Recheneinheit 2, ein erster Identifikator 3 bestimmt, welcher eine Hardwarekomponente, beispielsweise einen SSD-Speicher oder eine Hauptplatine, der die Recheneinheit 2 kennzeichnet oder eine Softwarekomponente, beispielsweise ein Betriebssystem oder eine Firmware, der Recheneinheit 2 kennzeichnet. Der erste Identifikator 3 kann beispielsweise ein Seriennummer der Hardwarekomponente beziehungsweise der Softwarekomponente sein. Optional kann wenigstens ein weiterer erster Identifikator bestimmt werden, der wenigstens eine weitere Hardwarekomponente und/oder wenigstens eine weitere Softwarekomponente der Recheneinheit 2 kennzeichnet. In Schritt 120 erhält die Recheneinheit 2 einen zweiten Identifikator 4, der das elektronische Gerät 1 kennzeichnet, zum Beispiel eine Seriennummer des elektronischen Geräts 1. Die Recheneinheit 2 kann den zweiten Identifikator 4 automatisch bestimmen, beispielsweise wenn dieser elektronisch auf dem elektronischen Gerät 1 gespeichert ist, oder ein Nutzer kann der Recheneinheit 2 den zweiten Identifikator durch ein Eingabegerät, beispielsweise eine Tastatur oder ein optisches Lesegerät oder ein RFID- Lesegerät, bereitstellen. Gegebenenfalls kann das optische Lesegerät oder der RFID- Lesegerät auch derart positioniert sein, dass der zweite Identifikator 4 damit automatisch gelesen werden kann.
In Schritt 140 wird erzeugt die Recheneinheit 2 abhängig von dem ersten Identifikator 3 einen ersten Eingabewert für eine vorgegebene Schlüsselableitungsfunktion. Falls der wenigstens eine weitere erste Identifikator bestimmt wurde, erzeugt die Recheneinheit 2 den ersten Eingabewert abhängig von dem ersten Identifikator 3 und abhängig von dem wenigstens einen weiteren ersten Identifikator. Beispielsweise kann die Recheneinheit 2 den ersten Identifikator 3 den wenigstens einen weiteren ersten Identifikator verketten oder durch eine logische Operation, zum Beispiel XOR, verknüpfen um den ersten Eingabewert zu erzeugt oder durch eine sonstige Operation in den ersten Eingabewert umwandeln. Die Recheneinheit 2 erzeugt abhängig von dem zweiten Identifikator 4 einen zweiten Eingabewert für die Schlüsselableitungsfunktion
In Schritt 160 erzeugt wendet die Recheneinheit 2 die Schlüsselableitungsfunktion auf den ersten Eingabewert und den zweiten Eingabewert an und erzeugt so einen Schlüssel. In Schritt 180 wird die Kommunikationsschnittstelle unter Verwendung des Schlüssels gesperrt, insbesondere automatisch mittels der Recheneinheit 2. Insbesondere ist die Recheneinheit 2 dazu mit der Kommunikationsschnittstelle oder einer weiteren Kommunikationsschnittstelle des elektronischen Geräts 1 verbunden.
In Fig. 2 ist ein schematisches Ablaufdiagramm einer weiteren beispielhaften Ausführungsform eines erfindungsgemäßen Verfahrens zum Sperren der Kommunikationsschnittstelle gezeigt, die auf der Ausführungsform gemäß Fig. 1 beruht.
Zunächst wird Schritt 100 wird hier ebenfalls durchgeführt. Auf einem, insbesondere extern zu der Recheneinheit 2 vorgesehenen, Speichergerät 5 ist wenigstens ein historischer Datensatz gespeichert. Im Folgenden wird der Einfachheit halber davon ausgegangen, dass das Speichergerät mehrere solcher historischer Datensätze speichert, für den Fall eines einzigen historischen Datensatzes folgt das Vorgehen analog. Jeder der historischen Datensätze enthält entsprechende historische Identifikationsinformationen für die Hardwarekomponente oder die Softwarekomponente der Recheneinheit 2 sowie und einen den historischen Identifikationsinformationen zugeordneten Fertigungszeitraum. Für unterschiedliche Fertigungszeiträume kann es sich dabei um unterschiedliche Hardwarekomponenten beziehungsweise Softwarekomponenten handeln, die jedoch insbesondere stets dieselbe Funktion in der Recheneinheit 2 haben. Es wird daher dennoch von "der" Hardwarekomponente beziehungsweise "der" Softwarekomponente gesprochen.
Die Fertigungszeiträume sind insbesondere eindeutig, sodass sie zeitlich eindeutig geordnet werden können. Demzufolge ist einer der Fertigungszeiträume eindeutig ein jüngster Fertigungszeitraum. Der zugehörige historische Datensatz wird als jüngster historischer Datensatz bezeichnet und dessen historische Identifikationsinformationen als jüngste historische Identifikationsinformationen 6. Die Recheneinheit 2 liest in Schritt 200 die jüngsten historischen Identifikationsinformationen aus dem Speichergerät s.
In Schritt 220 bestimmt die Recheneinheit 2 abhängig von den jüngsten historischen Identifikationsinformationen 6 einen jüngsten historischen ersten Eingabewert für die Schlüsselableitungsfunktion. Beispielsweise können die historischen Identifikationsinformationen der historischen Datensätze identisch zum jeweiligen historischen ersten Eingabewert sein. Alternativ können die historischen Identifikationsinformationen je einen historischen ersten Identifikator enthalten und optional wenigstens einen weiteren historischen ersten Identifikator, analog wie oben bezüglich des ersten Identifikators und des wenigstens einen weiteren ersten Identifikators beschrieben. Der jüngste historische erste Eingabewert wird dann analog wie oben bezüglich des ersten Eingabewerts beschrieben aus dem historischen ersten Identifikator und optional dem wenigstens einen weiteren historischen ersten Identifikator der jüngsten historischen Identifikationsinformationen 6.
In Schritt 240 erzeugt die Recheneinheit 2 unter Verwendung einer vorgegebenen Hashfunktion einen Hashwert 8 abhängig von dem ersten Eingabewert und in Schritt 260 erzeugt die Recheneinheit 2 unter Verwendung der Hashfunktion einen weiteren Hashwert 7 abhängig von dem jüngsten historischen ersten Eingabewert.
In Schritt 260 überprüft die Recheneinheit 2, ob der Hashwert 8 mit dem weiteren Hashwert 7 übereinstimmt. Ist dies der Fall, so werden die Schritte 120 bis 180 wie oben beschrieben ausgeführt. Anderenfalls speichert die Recheneinheit 2 in Schritt 280 einen weiteren historischen Datensatz auf dem Speichergerät 5, welcher den ersten Eingabewert und einen dem ersten Eingabewert zugeordneten Fertigungszeitraum enthält oder welcher den ersten Identifikator und einem dem ersten Identifikator zugeordneten Fertigungszeitraum enthält. Der weitere historische Datensatz ist danach der jüngste historische Datensatz.
Dadurch können Änderungen in der Hardwarekomponente beziehungsweise der Softwarekomponente identifiziert werden, die zu einem abweichenden ersten Eingabewert führen würden. Das Sperren der Kommunikationsschnittstelle kann dann zunächst abgebrochen werden und beispielsweise eine Fehlermeldung oder Warnmeldung ausgegeben werden. Sodann können die Schritte 100 und 200 bis 260 wiederholt werden. Nun stimmt der Hashwert 8 mit dem weiteren Hashwert 7 überein, sodass die Schritte 120 bis 180 wie oben beschrieben ausgeführt werden können.
In Fig. 3 ist ein schematisches Ablaufdiagramm einer beispielhaften Ausführungsform eines erfindungsgemäßen Verfahrens zum Entsperren einer Kommunikationsschnittstelle eines elektronischen Geräts 1 gezeigt, das mittels eines erfindungsgemäßen Verfahren wie bezüglich Fig. 1 und Fig. 2 beschrieben gesperrt wurde.
In Schritt 300 erhält eine von der Recheneinheit 2 verschiedene weitere Recheneinheit 9 einen Geräteidentifikator 10 des elektronischen Geräts 1 , welcher dem zweiten Identifikator entspricht. In Schritt 320 bestimmt die weitere Recheneinheit 9 abhängig von dem Geräteidentifikator 10 einen Fertigungszeitraum des elektronischen Geräts 1. In Schritt 340 wählt die weitere Recheneinheit 9 denjenigen der historischen Datensätze aus, der den Fertigungszeitraum des elektronischen Geräts 1 enthält. Abhängig von den historischen Identifikationsinformationen des ausgewählten historischen Datensatzes erzeugt die weitere Recheneinheit 9 einen historischen ersten Eingabewert für die Schlüsselableitungsfunktion und abhängig von dem Geräteidentifikator 10 einen aktuellen zweiten Eingabewert für die Schlüsselableitungsfunktion, analog wie oben bezüglich des ersten Eingabewerts und des zweiten Eingabewerts beschrieben.
In Schritt 360 rekonstruiert die weitere Recheneinheit 9 unter Verwendung der Schlüsselableitungsfunktion abhängig von dem historischen ersten Eingabewert und dem aktuellen zweiten Eingabewert den Schlüssel 11 . In Schritt 380 wird die Kommunikationsschnittstelle unter Verwendung des rekonstruierten Schlüssels 11 entsperrt. Wie beschrieben, insbesondere unter Bezugnahme auf die Figuren, ermöglicht die Erfindung einen sicheren Zugriffsschutz für eine Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug. Dazu werden insbesondere teilespezifische Schlüssel erzeugt, die jedoch nicht gespeichert werden müssen, sondern bei Bedarf rekonstruiert werden können.

Claims

Patentansprüche
1 . Verfahren zum Sperren einer Kommunikationsschnittstelle eines elektronischen Geräts (1 ) für ein Kraftfahrzeug, wobei ein erster Identifikator (3) bestimmt wird, welcher eine Hardwarekomponente einer Recheneinheit (2) einer Fertigungslinie, in der das elektronische Gerät (1) gefertigt wurde, kennzeichnet oder eine Softwarekomponente der Recheneinheit (2) kennzeichnet; ein zweiter Identifikator (4) erhalten wird, der das elektronische Gerät (1) kennzeichnet; mittels der Recheneinheit (2) abhängig von dem ersten Identifikator (3) ein erster Eingabewert für eine vorgegebene Schlüsselableitungsfunktion erzeugt wird und abhängig von dem zweiten Identifikator (4) ein zweiter Eingabewert für die Schlüsselableitungsfunktion erzeugt wird; mittels der Recheneinheit (2) unter Verwendung der Schlüsselableitungsfunktion abhängig von dem ersten Eingabewert und dem zweiten Eingabewert ein Schlüssel erzeugt wird; und die Kommunikationsschnittstelle unter Verwendung des Schlüssels gesperrt wird.
2. Verfahren nach Anspruch 1 , wobei das elektronische Gerät (1) vor der Bestimmung des ersten Identifikators (3) wenigstens zum Teil mittels der Recheneinheit (2) programmiert wird und/oder getestet wird und/oder mittels der Recheneinheit (2) eine Softwarebestückung des elektronischen Geräts durchgeführt wird und/oder mittels der Recheneinheit (2) eine Fehlersuche für das elektronische Gerät (1 ) durchgeführt wird.
3. Verfahren nach einem der vorhergehenden Ansprüche, wobei es sich bei der Kommunikationsschnittstelle um eine Fehlersuchschnittstelle des elektronischen Geräts (1 ) handelt.
4. Verfahren nach einem der vorhergehenden Ansprüche, wobei der zweite Identifikator (4) abhängig von einer Seriennummer des elektronischen Geräts (1) bestimmt wird.
5. Verfahren nach einem der vorhergehenden Ansprüche, wobei der erste Identifikator abhängig von einer Seriennummer der Hardwarekomponente der Recheneinheit (2) und/oder abhängig von Seriennummer der Softwarekomponente der Recheneinheit (2) bestimmt wird.
6. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Softwarekomponente ein Betriebssystem der Recheneinheit (2) oder eine Firmware der Recheneinheit (2) ist und/oder wobei die Hardwarekomponente eine Hauptplatine der Recheneinheit (2) oder ein Datenspeicher der Recheneinheit (2) ist.
7. Verfahren nach einem der vorhergehenden Ansprüche, wobei ein weiterer erster Identifikator bestimmt wird, welcher eine weitere Hardwarekomponente der Recheneinheit (2) kennzeichnet oder eine weitere Softwarekomponente der Recheneinheit (2) kennzeichnet; und der erste Eingabewert abhängig von dem ersten Identifikator und dem weiteren ersten Identifikator erzeugt wird.
8. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Schlüssel mit einer Bitlänge von mindestens 32bit oder mindestens 64bit erzeugt wird.
9. Verfahren nach einem der vorhergehenden Ansprüche, wobei es sich bei dem elektronischen Gerät um einen Sensor für das Kraftfahrzeug handelt oder um ein elektronisches Steuergerät für das Kraftfahrzeug.
10. Verfahren nach einem der vorhergehenden Ansprüche, wobei auf einem Speichergerät (5) wenigstens ein historischer Datensatz bereitgestellt wird, wobei jeder historische Datensatz des wenigstens einen historischen Datensatzes entsprechende historische Identifikationsinformationen für die Hardwarekomponente oder die Softwarekomponente der Recheneinheit (2) und einen den historischen Identifikationsinformationen zugeordneten Fertigungszeitraum beinhaltet; jüngste historische Identifikationsinformationen (6) eines jüngsten historischen Datensatzes des wenigstens einen historischen Datensatzes aus dem Speichergerät (5) gelesen werden, wobei den jüngsten historischen Identifikationsinformationen (6) ein jüngster Fertigungszeitraum zugeordnet ist; abhängig von den jüngsten historischen Identifikationsinformationen ein jüngster historischer erster Eingabewert bestimmt wird; unter Verwendung einer vorgegebenen Hashfunktion ein Hashwert (8) abhängig von dem ersten Eingabewert erzeugt wird; unter Verwendung der Hashfunktion ein weiterer Hashwert (7) abhängig von dem jüngsten historischen ersten Eingabewert (6) erzeugt wird; falls der Hashwert (7) nicht mit dem weiteren Hashwert (8) übereinstimmt, ein weiterer historischer Datensatz auf dem Speichergerät (5) gespeichert wird, welcher den ersten Eingabewert und einen dem ersten Eingabewert zugeordneten Fertigungszeitraum enthält oder weicher den ersten Identifikator und einem dem ersten Identifikator zugeordneten Fertigungszeitraum enthält.
11 . Verfahren nach Anspruch 10, wobei für jeder historische Datensatz des wenigstens einen historischen Datensatzes als jeweilige historische Identifikationsinformationen einen jeweiligen historischen ersten Eingabewert für die Schlüsselableitungsfunktion beinhaltet; oder einen jeweiligen historischen ersten Identifikator beinhaltet.
12. Verfahren zum Entsperren einer Kommunikationsschnittstelle eines elektronischen Geräts (1 ) für ein Kraftfahrzeug, welche mittels eines Verfahrens gemäß einem der Ansprüche 1 bis 9 gesperrt wurde, wobei auf einem Speichergerät (5) wenigstens ein historischer Datensatz bereitgestellt wird, wobei jeder historische Datensatz des wenigstens einen historischen Datensatzes entsprechende historische Identifikationsinformationen und einen den historischen Identifikationsinformationen zugeordneten Fertigungszeitraum beinhaltet; ein Geräteidentifikator (10), der das elektronische Gerät (1) kennzeichnet, bestimmt wird; abhängig von dem Geräteidentifikator (10) ein Fertigungszeitraum des elektronischen Geräts (1) bestimmt wird; abhängig von dem Fertigungszeitraum des elektronischen Geräts (1) einer der historischen Datensätze ausgewählt wird; abhängig von den historischen Identifikationsinformationen des ausgewählten historischen Datensatzes ein historischer erster Eingabewert für die Schlüsselableitungsfunktion erzeugt wird; abhängig von dem Geräteidentifikator (10) ein aktueller zweiter Eingabewert für die Schlüsselableitungsfunktion erzeugt wird; unter Verwendung der Schlüsselableitungsfunktion abhängig von dem historischen ersten Eingabewert und dem aktuellen zweiten Eingabewert ein Schlüssel (1 ) rekonstruiert wird; und die Kommunikationsschnittstelle unter Verwendung des rekonstruierten Schlüssels (11 ) entsperrt wird.
13. Datenverarbeitungsvorrichtung aufweisend eine Recheneinheit (2), die dazu eingerichtet ist, ein Verfahren nach einem der Ansprüche 1 bis 11 durchzuführen.
14. Datenverarbeitungsvorrichtung aufweisend eine weitere Recheneinheit (9), die dazu eingerichtet ist, ein Verfahren nach Anspruch 12 durchzuführen.
15. Computerprogrammprodukt aufweisend Befehle, die bei Ausführung durch eine Datenverarbeitungsvorrichtung die Datenverarbeitungsvorrichtung dazu veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 12 durchzuführen.
EP24716759.6A 2023-04-06 2024-04-02 Sperren und entsperren einer kommunikationsschnittstelle eines elektronischen geräts für ein kraftfahrzeug Pending EP4689978A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102023108877.7A DE102023108877A1 (de) 2023-04-06 2023-04-06 Sperren und Entsperren einer Kommunikationsschnittstelle eines elektronischen Geräts für ein Kraftfahrzeug
PCT/EP2024/058909 WO2024208814A1 (de) 2023-04-06 2024-04-02 Sperren und entsperren einer kommunikationsschnittstelle eines elektronischen geräts für ein kraftfahrzeug

Publications (1)

Publication Number Publication Date
EP4689978A1 true EP4689978A1 (de) 2026-02-11

Family

ID=90718751

Family Applications (1)

Application Number Title Priority Date Filing Date
EP24716759.6A Pending EP4689978A1 (de) 2023-04-06 2024-04-02 Sperren und entsperren einer kommunikationsschnittstelle eines elektronischen geräts für ein kraftfahrzeug

Country Status (6)

Country Link
EP (1) EP4689978A1 (de)
JP (1) JP2026511990A (de)
KR (1) KR20250165663A (de)
CN (1) CN120917445A (de)
DE (1) DE102023108877A1 (de)
WO (1) WO2024208814A1 (de)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015211540A1 (de) * 2015-06-23 2016-12-29 Bayerische Motoren Werke Aktiengesellschaft Verfahren, Server, Firewall, Steuergerät, und System zur Programmierung eines Steuergeräts eines Fahrzeugs
US10129035B2 (en) 2015-08-10 2018-11-13 Data I/O Corporation Device birth certificate
US20170090909A1 (en) 2015-09-25 2017-03-30 Qualcomm Incorporated Secure patch updates for programmable memories
US10728249B2 (en) 2016-04-26 2020-07-28 Garrett Transporation I Inc. Approach for securing a vehicle access port
US10267858B2 (en) * 2017-04-07 2019-04-23 Hamilton Sundstrand Corporation JTAG lockout for embedded processors in programmable devices
US10505931B2 (en) * 2017-06-02 2019-12-10 Nxp B.V. Method for authenticating an integrated circuit device
DE102018219719A1 (de) 2018-11-16 2020-05-20 Volkswagen Aktiengesellschaft Fahrzeug, Netzwerkkomponente, Verfahren, Computerprogramm und Vorrichtung zum Generieren einer Kennung für einen Ausrüstungszustand eines Fahrzeugs
US11280829B1 (en) * 2019-12-19 2022-03-22 Xlnx, Inc. System-on-chip having secure debug mode

Also Published As

Publication number Publication date
DE102023108877A1 (de) 2024-10-10
JP2026511990A (ja) 2026-04-14
KR20250165663A (ko) 2025-11-26
WO2024208814A1 (de) 2024-10-10
CN120917445A (zh) 2025-11-07

Similar Documents

Publication Publication Date Title
DE69717063T2 (de) Verfahren und System zur sicheren Datenverarbeitung
DE102015210651B4 (de) Schaltung und Verfahren zum Testen einer Fehlerkorrektur-Fähigkeit
DE112016002785T5 (de) Elektronische Steuereinheiten für Fahrzeuge
DE2225841B2 (de) Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers
DE102016210788B4 (de) Komponente zur Verarbeitung eines schützenswerten Datums und Verfahren zur Umsetzung einer Sicherheitsfunktion zum Schutz eines schützenswerten Datums in einer solchen Komponente
EP3811263B1 (de) Kryptografiemodul und betriebsverfahren hierfür
DE10238093B4 (de) Fahrzeug-Steuergerät
DE102005016050A1 (de) Speicherfehlererkennungsvorrichtung und Verfahren zum Erkennen eines Speicherfehlers
DE102022111126A1 (de) Datenverarbeitungsvorrichtung und verfahren zum prüfen der integrität eines speichers
EP4689978A1 (de) Sperren und entsperren einer kommunikationsschnittstelle eines elektronischen geräts für ein kraftfahrzeug
WO2020088908A1 (de) Vorrichtung und betriebsverfahren zum überprüfen von betriebsdaten einer gesicherten start-betriebsphase eines insbesondere in einer industriellen anlagenumgebung verwendbaren gerätes
DE10238094B4 (de) Verfahren zum Schutz gegen Manipulationen in einem Steuergerät für mindestens eine Kfz-Komponente und Steuergerät
EP1293858B1 (de) Verfahren zum Schutz eines Mikrorechner-Systems gegen Manipulation seines Programms
DE112023006636T5 (de) Informationsverarbeitungsvorrichtung und Informationsverarbeitungsverfahren
DE102006036386A1 (de) Mikroprozessorsystem zur Steuerung bzw. Regelung von zumindest zum Teil sicherheitskritischen Prozessen
EP4513282A1 (de) Verfahren zum betreiben eines technischen systems mittels eines automatisierungssystems, computerprogrammprodukt, computerlesbares speichermedium sowie automatisierungssystem
EP3876123B1 (de) Anordnung und betriebsverfahren für einen sicheren hochfahrablauf einer elektronischen einrichtung
DE102018102386A1 (de) Verfahren zum Senden von Daten, Verfahren zum Empfangen von Daten, Master-, Slave-, und Master-Slave-System
DE102006036384A1 (de) Mikroprozessorsystem zur Steuerung bzw. Regelung von zumindest zum Teil sicherheitskritischen Prozessen
DE102022129335A1 (de) Integritätsvalidierung von Daten
DE102009012142B4 (de) Verfahren zur Sicherung sicherheitskritischer Variablen
DE102023113788A1 (de) Halbleitervorrichtung
DE102022130951A1 (de) Steuerungsanordnung umfassend ein Steuergerät mit Fehlersuchschnittstellen und Verfahren zum Betreiben eines Steuergeräts
DE102022212287A1 (de) Verfahren und System zum Ermitteln von Freigaben von Steuergerätefunktionen in einem Steuergerät einer technischen Einrichtung
DE10215626B4 (de) Verfahren zur Änderung von Verschlüsselungsalgorithmen bei geschützter Software oder geschützten Daten

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20250915

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR