
Die vorliegende Erfindung betrifft ein Verfahren zur verschlüsselten Datenübertragung zwischen zwei Komponenten eines Steuergeräts.The present invention relates to a method for encrypted data transmission between two components of a control device.
Stand der TechnikState of the art
In Steuergeräten beispielsweise zur Steuerung von Maschinen, Anlagen, Kraftbzw. Nutzfahrzeugen oder in der Unterhaltungselektronik, z.B. in Mobiltelefonen oder Fernsehgeräten, kommunizieren die einzelnen Komponenten des Steuergeräts miteinander. Die Aufgabe eines Motorsteuergeräts einer Brennkraftmaschine besteht beispielsweise darin, Ausgangsgrößen für Stellglieder (wie Einspritzdüse oder Zündanlage) aus einer Vielzahl von Eingangssignalen (wie z.B. Drehzahl, Temperatur oder Druck) zu berechnen. Dazu besitzet ein Steuergerät als Komponenten integrierte Schaltungen (ICs), wie Mikrocontroller, ASIC, ASSP usw.In control units, for example, to control machines, systems, Kraftbzw. Commercial vehicles or in consumer electronics, e.g. in mobile phones or televisions, communicate the individual components of the controller with each other. The object of an engine control unit of an internal combustion engine is, for example, to calculate outputs for actuators (such as injector or ignition system) from a plurality of input signals (such as speed, temperature or pressure). For this purpose, a controller has as components integrated circuits (ICs), such as microcontroller, ASIC, ASSP, etc.
Mikrocontroller sind kleine, komplette Computersysteme unter anderem mit eigenem Prozessor und Speicher, welche als ein einziger integrierter Schaltkreis ausgebildet sind. Als ASICs werden anwendungsspezifische integrierte Schaltungen bezeichnet (engl.: application specific integrated circuit). Als ASSPs werden anwendungsspezifisches Standardprodukte (engl. application specific standard products) bezeichnet.Microcontrollers are small, complete computer systems, including their own processor and memory, which are designed as a single integrated circuit. ASICs are application-specific integrated circuits (application-specific integrated circuits). ASSPs are application specific standard products.
Durch die komplexen Funktionen, welche ein Mikrocontroller ausführen kann, ist dieser häufig die zentrale Komponente eines Steuergeräts und steuert sämtliche andere Komponenten des Steuergeräts, insbesondere andere ICs. In dem Mikrocontroller sind meist auch die für den Betrieb notwendigen Daten, Kennfelder und/oder Programme, auch für andere Komponenten ohne oder mit zu geringem eigenem Speicher, abgespeichert.Due to the complex functions that a microcontroller can perform, this is often the central component of a controller and controls all other components of the controller, in particular other ICs. In the microcontroller are usually necessary for the operation of data, maps and / or programs, even for other components without or with too little private memory stored.
Die Daten, die zwischen den einzelnen Komponenten eines Steuergeräts ausgetauscht werden, können beispielsweise spezielle Ansteuerungsbefehle, technische Daten, Steuer- oder Kennwerte umfassen. Diese Befehle bzw. Werte wurden von dem Hersteller oft in jahrelangen Entwicklungsprozessen mit hohem Forschungsaufwand durch lang andauernde und aufwendige Testreihen ermittelt und optimiert. Es ist somit im Sinne des Herstellers, dass diese Daten nicht von einer dritten Partei, einem Angreifer, ausgelesen werden können, um einen "Know-How-Schutz" zu garantieren.The data that is exchanged between the individual components of a control unit, for example, include special control commands, technical data, control or characteristic values. These commands or values were often determined and optimized by the manufacturer in years of development processes with high research effort through long-lasting and complex test series. It is therefore within the meaning of the manufacturer that these data can not be read out by a third party, an attacker, in order to guarantee a "know-how protection".
Des Weiteren kann durch verschlüsselte Datenübertragung beispielsweise unseriöses "Chiptuning" in Kraftfahrzeugen unterbunden werden. Für das "Chiptuning" werden Steuerparameter des Steuergeräts verändert, um Leistungssteigerungen herbeizuführen. Dies kann zu Bauteilschäden und Umweltverschmutzung führen, sogar zu Personenschäden, da die gesamte Fahrzeugauslegung (Antrieb, Bremsanlage) beeinträchtigt werden kann.Furthermore, by encrypted data transmission, for example, dubious "chip tuning" in motor vehicles can be prevented. For the "chip tuning" control parameters of the controller are changed to increase performance. This can lead to component damage and environmental pollution, even personal injury, since the entire vehicle design (drive, brake system) can be affected.
Zur Verschlüsselung von Daten unterscheidet man zwischen einem symmetrischen und einem asymmetrischen Verschlüsselungsverfahren. Bei einem symmetrischen Verschlüsselungsverfahren werden zu übermittelnde Daten, im Allgemeinen als Klartext bezeichnet, vom Absender mittels eines gemeinsamen geheimen Schlüssels verschlüsselt. Die verschlüsselten Daten werden dabei im Allgemeinen als Geheimtext bezeichnet. Der Empfänger kann die Daten mittels desselben gemeinsamen Schlüssels entschlüsseln. Sowohl Sender als auch Empfänger müssen über den gemeinsamen Schlüssel verfügen und der Schlüssel muss dabei geheim gehalten werden.For the encryption of data, a distinction is made between a symmetric and an asymmetric encryption method. In a symmetric encryption method, data to be transmitted, generally referred to as plain text, is encrypted by the sender using a shared secret key. The encrypted data is generally referred to as ciphertext. The recipient can decrypt the data using the same shared key. Both sender and receiver must have the shared key and the key must be kept secret.
Bei einem asymmetrischen Verschlüsselungsverfahren werden Schlüsselpaare aus einem öffentlichen und einem privaten Schlüssel verwendet. Verschlüsselungen erfolgen dabei mit einem öffentlichen, nicht geheimen Schlüssel. Entschlüsselt wird mit dem privaten, geheimen Schlüssel.In an asymmetric encryption method, public-key and private-key pairs are used. Encryption takes place with a public, non-secret key. Decrypting is done with the private, secret key.
Kommunizieren unterschiedliche Komponenten eines Steuergeräts verschlüsselt miteinander, benötigen beide Komponenten einen geheimen Schlüssel. Im Falle eines symmetrischen Verschlüsselungsverfahrens benötigen beide Komponenten den geheimen, gemeinsamen Schlüssel. Im Falle eines asymmetrischen Verschlüsselungsverfahrens benötigt die Komponente, welche Daten verschlüsselt, den öffentlichen Schlüssel und die Komponente, welche die verschlüsselten Daten entschlüsselt, benötigt den privaten, geheimen Schlüssel.If different components of a controller communicate encrypted with each other, both components require a secret key. In the case of a symmetric encryption method, both components require the secret, shared key. In the case of an asymmetric encryption method, the component that encrypts data requires the public key and the component that decrypts the encrypted data needs the private, secret key.
Werden die geheimen Schlüssel von einem Angreifer ausgelesen, ist der Schutz hinfällig und das Steuergerät ist nicht mehr gegen Sabotage und Spionage geschützt. Da die geheimen Schlüssel in jeder Komponente gespeichert sind, bieten sich somit einem Angreifer zwei Angriffspunkte. Einen weiteren Angriffspunkt bietet der Fertigungsprozess des Steuergeräts. Im Zuge des Fertigungsprozesses können die geheimen Schlüssel in einer externen Recheneinheit erstellt und in die jeweiligen Komponenten des Steuergeräts einprogrammiert werden. Das Personal des Fertigungsprozesses hat somit die Möglichkeit, die geheimen Schlüssel in Erfahrung zu bringen.If the secret keys are read by an attacker, the protection is void and the control unit is no longer protected against sabotage and espionage. Since the secret keys are stored in each component, thus offering an attacker two attack points. Another point of attack is the production process of the control unit. In the course of the manufacturing process, the secret keys can be created in an external arithmetic unit and programmed into the respective components of the control unit. The staff of the manufacturing process thus has the opportunity to find out the secret keys.
Es ist daher wünschenswert eine Möglichkeit bereitzustellen, um den Datenaustausch zwischen Komponenten eines Steuergeräts sicherer zu gestalten und die potentiellen Angriffspunkte und somit die Anfälligkeit gegenüber Spionage und Missbrauch zu reduzieren.It is therefore desirable to provide a way to make the exchange of data between components of a controller safer and to reduce the potential targets and thus the vulnerability to espionage and abuse.
Offenbarung der Erfindung Disclosure of the invention
Erfindungsgemäß wird ein Verfahren zur verschlüsselten Datenübertragung zwischen zwei Komponenten eines Steuergeräts mit den Merkmalen des Patentanspruchs 1 vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung.According to the invention, a method for encrypted data transmission between two components of a control device with the features of patent claim 1 is proposed. Advantageous embodiments are the subject of the dependent claims and the following description.
In einem erfindungsgemäßen Verfahren werden verschlüsselte Daten zu einem zweiten Zeitpunkt von einer ersten Komponente des Steuergeräts an eine zweite Komponente des Steuergeräts übertragen. Die verschlüsselten Daten werden in der zweiten Komponente des Steuergeräts mittels eines Schlüssels entschlüsselt. Dieser Schlüssel wurde zu einem ersten Zeitpunkt erzeugt, wobei der erste Zeitpunkt zeitlich vor dem zweiten Zeitpunkt liegt. Der Schlüssel ist dabei nur in der zweiten Komponente des Steuergeräts, vorzugsweise in einem sicheren, nicht auslesbaren Speicherbereich, gespeichert. Die Daten liegen bereits verschlüsselt in der ersten Komponente des Steuergeräts vor, der Schlüssel wird in der ersten Komponente nicht benötigt.In a method according to the invention, encrypted data are transmitted from a first component of the control unit to a second component of the control unit at a second time. The encrypted data is decrypted in the second component of the controller by means of a key. This key was generated at a first time, the first time being before the second time. The key is stored only in the second component of the control unit, preferably in a secure, non-readable memory area. The data is already encrypted in the first component of the controller, the key is not needed in the first component.
Vorteile der ErfindungAdvantages of the invention
Die Erfindung bietet einem potentiellen Angreifer keinen Angriffspunkt für das Auslesen des Schlüssels in der ersten Komponente. Des Weiteren wird nicht nur sichergestellt, dass der Datenweg für die Übertragung der Daten gesichert ist, sondern auch, dass der Speicherort der Daten in der ersten Komponente geschützt ist.The invention offers a potential attacker no point of attack for reading the key in the first component. Furthermore, not only is it ensured that the data path for the transmission of the data is secured, but also that the location of the data in the first component is protected.
Das erfindungsgemäße Verfahren eignet sich dabei sowohl für symmetrische als auch asymmetrische Verschlüsselungsmethoden. Im Fall einer symmetrischen Verschlüsselung ist der in der zweiten Komponente gespeicherte Schlüssel der gemeinsame Schlüssel der symmetrischen Verschlüsselung. Hier existiert vorteilhaft trotz Einsatz einer symmetrischen Verschlüsselung nur ein Angriffspunkt, nämlich in der zweiten Komponente. Im Fall einer asymmetrischen Verschlüsselung ist der in der zweiten Komponente gespeicherte Schlüssel als ein privater Schlüssel der asymmetrischen Verschlüsselung ausgebildet.The inventive method is suitable for both symmetric and asymmetric encryption methods. In the case of symmetric encryption, the key stored in the second component is the shared key of symmetric encryption. Here, despite the use of symmetrical encryption, there is advantageously only one point of attack, namely in the second component. In the case of asymmetric encryption, the key stored in the second component is designed as a private key of the asymmetric encryption.
Bevorzugt umfassen die verschlüsselten Daten einen verschlüsselten Programmcode, insbesondere zur Ausführung durch die zweite Komponente. Da der Schlüssel nicht mehr in der ersten Komponente vorhanden ist, ist es der ersten Komponente nicht mehr möglich weitere Daten zu verschlüsseln und somit geschützt an die zweite Komponente zu übertragen. Sämtliche Arbeitsanweisungen der ersten Komponente an die zweite Komponente sollten also bereits verschlüsselt in der ersten Komponente vorliegen. Insbesondere betreffen diese Arbeitsanweisungen Programmcodes, welche von der zweiten Komponente ausgeführt werden sollen.The encrypted data preferably comprises an encrypted program code, in particular for execution by the second component. Since the key is no longer present in the first component, it is no longer possible for the first component to encrypt further data and thus transmit it protected to the second component. All work instructions of the first component to the second component should therefore already be encrypted in the first component. In particular, these work instructions relate to program codes to be executed by the second component.
Vorteilhafterweise wird der verschlüsselte Programmcode von der ersten an die zweite Komponente übertragen, in der zweiten Komponente mittels des Schlüssels entschlüsselt und der entschlüsselte Programmcode wird in der zweiten Komponente ausgeführt. Sämtliche Arbeitsanweisungen in Form von Programmcodes der ersten Komponente an die zweite Komponente liegen also verschlüsselt in der ersten Komponente vor. Ein potentieller Angreifer kann die Programmcodes also nicht einsehen und manipulieren.Advantageously, the encrypted program code is transmitted from the first to the second component, decrypted in the second component by means of the key, and the decrypted program code is executed in the second component. All work instructions in the form of program codes of the first component to the second component are thus encoded in the first component. A potential attacker can not see and manipulate the program codes.
In einer vorteilhaften Ausgestaltung der Erfindung wird der Schlüssel zu dem ersten Zeitpunkt in der ersten Komponente des Steuergeräts erzeugt, beispielsweise mittels eines echten Zufallsgenerators. Der Schlüssel wird von der ersten Komponente an die zweite Komponente des Steuergeräts übertragen und dort, vorzugsweise in einem sicheren, nicht auslesbaren Speicherbereich, abgelegt. Die jeweiligen Daten, beispielsweise den Programmcode, die zu dem zweiten Zeitpunkt an die zweite Komponente übertragen werden, liegen zunächst noch unverschlüsselt in der ersten Komponente vor. Diese Daten werden mit dem Schlüssel in der erste Komponente verschlüsselt und liegen danach nur noch verschlüsselt in der ersten Komponente vor. Nachdem die Daten verschlüsselt wurden wird der Schlüssel endgültig und unwiderruflich aus der ersten Komponente des Steuergeräts gelöscht. Der Speicher in der zweiten Komponente, in dem der Schlüssel abgelegt wird, ist vorzugsweise nur einmalig beschreibbar (engl.: one time programming OTP). Der Schlüssel muss also nicht in einer externen Recheneinheit erstellt und in die jeweiligen Komponenten des Steuergeräts einprogrammiert werden. Der Schlüssel wird während des regulären Betriebs des Steuergeräts völlig automatisch ohne menschliches Zutun von dem Steuergerät selbst erzeugt. Der Schlüssel ist somit nur dem Steuergerät bekannt. Jedes einzelne Steuergerät hat seinen eigenen, individuellen Schlüssel, welcher nur diesem einzelnen Steuergerät bekannt ist, nur in einer einzigen Komponente des Steuergeräts gespeichert ist und das Steuergerät niemals verlässt. Somit bestehen keine Probleme bezüglich der Geheimhaltung des Schlüssels.In an advantageous embodiment of the invention, the key is generated at the first time in the first component of the control device, for example by means of a true random number generator. The key is transmitted from the first component to the second component of the control unit and stored there, preferably in a secure, non-readable memory area. The respective data, for example the program code, which are transmitted to the second component at the second time, initially are still unencrypted in the first component. These data are encrypted with the key in the first component and are then present only encrypted in the first component. After the data has been encrypted, the key is finally and irrevocably deleted from the first component of the controller. The memory in the second component in which the key is stored is preferably only one-time-programmable (OTP). The key does not have to be created in an external arithmetic unit and programmed into the respective components of the control unit. The key is generated completely automatically during the regular operation of the control unit without human intervention by the control unit itself. The key is thus known only to the controller. Each individual control unit has its own individual key, which is known only to this individual control unit, is stored only in a single component of the control unit and never leaves the control unit. Thus, there are no problems regarding the secrecy of the key.
Es kann sich für einen Angreifer nicht die Möglichkeit ergeben über eine Person, beispielsweise einen Mitarbeiter des Fertigungsprozesses, einen Servicemitarbeiter, welcher das Steuergerät wartet, an den Schlüssel zu gelangen. Auch die Möglichkeit über einen Angriff auf eine externe Recheneinheit, in welcher der Schlüssel erzeugt oder hinterlegt ist, Zugriff auf den Schlüssel zu erlangen, ist somit ausgeschlossen.It may not be possible for an attacker to have a person, such as an employee of the manufacturing process, a service representative who is waiting for the controller to access the key. Also, the possibility of an attack on an external processing unit in which the key is generated or deposited to gain access to the key is thus excluded.
In einer besonders vorteilhaften Ausgestaltung der Erfindung findet der erste Zeitpunkt bei einem ersten Starten des Steuergeräts statt. Die einzelnen Verfahrensschritte des ersten Zeitpunkts werden also nur beim ersten Starten des Steuergeräts durchgeführt, vorzugsweise bevor das Steuergerät den Fertigungsprozess verlässt. In a particularly advantageous embodiment of the invention, the first time takes place at a first start of the control unit. The individual method steps of the first point in time are thus carried out only when the control device is first started, preferably before the control device leaves the production process.
Das Durchführen der einzelnen Verfahrensschritte des ersten Zeitpunkts beim ersten Starten des Steuergeräts kann beispielsweise mittels einer initialen Sequenz stattfinden. Die initiale Sequenz wird beim ersten Starten des Steuergeräts ausgeführt und sorgt dafür, dass die einzelnen Verfahrensschritte des ersten Zeitpunkts durchgeführt werden. Anschließend wird die initiale Sequenz gelöscht, sodass das Steuergerät beim nächsten Starten regulär starten kann. Der Schlüssel kann beispielsweise mittels eines echten Zufallsgenerators erzeugt werden, welcher in der ersten Komponente vorhanden ist.The execution of the individual method steps of the first time at the first start of the control unit can take place, for example, by means of an initial sequence. The initial sequence is executed at the first start of the controller and ensures that the individual process steps of the first time point are performed. Subsequently, the initial sequence is deleted, so that the controller can start regularly at the next start. The key may be generated, for example, by means of a true random number generator present in the first component.
Bevorzugt ist die erste Komponente als ein Mikrocontroller ausgebildet. Mikrocontroller können eine Vielzahl komplexer Funktionen und Operationen ausführen und können daher als die zentrale Komponente eines Steuergeräts ausgebildet sein. Daher eignen sich Mikrocontroller sehr gut, um in Ihnen den Schlüssel zu erzeugen.Preferably, the first component is designed as a microcontroller. Microcontrollers can perform a variety of complex functions and operations and thus can be configured as the central component of a controller. That's why microcontrollers are very good at generating the key in you.
Vorzugsweise ist die zweite Komponente als integrierte Schaltung (IC), z.B. als ASIC oder ASSP ausgebildet. Solche ICs verfügen meist nur über begrenzten Speicherplatz. Daher ist es gegebenenfalls nicht möglich, alle Daten bzw. Programmcodes, welche der IC für den laufenden Betrieb benötigt, in dem IC selbst zu speichern. Im Sinne der Erfindung ist es daher effizienter, die entsprechenden Daten bzw. Programmcodes in der ersten Komponente, beispielsweise dem Mikrocontroller, verschlüsselt zu speichern und nur den Schüssel in dem IC permanent zu speichern. Benötigt der IC die jeweiligen Daten oder soll der IC beispielsweise einen Programmcode ausführen, werden die entsprechenden Daten von der ersten Komponente beispielsweise in den RAM-Speicher des ICs übertragen. Der IC kann die Daten mit dem Schlüssel entschlüsseln. Benötigt der IC die Daten bzw. Programmcodes nicht mehr, werden sie aus dem IC wieder gelöscht.Preferably, the second component is an integrated circuit (IC), e.g. trained as ASIC or ASSP. Such ICs usually have limited storage space. Therefore, it may not be possible to store all the data or program codes which the IC requires for running operation in the IC itself. For the purposes of the invention, it is therefore more efficient to store the corresponding data or program codes in the first component, for example the microcontroller, in an encrypted manner and to permanently store only the bowl in the IC. For example, if the IC requires the particular data, or if the IC is to execute program code, for example, the corresponding data will be transferred from the first component to the RAM of the IC. The IC can decrypt the data with the key. If the IC no longer needs the data or program codes, they are deleted from the IC.
Vorteilhafterweise kann der Schlüssel in der ersten Komponente durch Überschreiben eines Speicherbereichs, in welchem der Schlüssel gespeichert ist, gelöscht werden. Beispielsweise kann der entsprechende Speicherbereich mit zufälligen Werten überschrieben werden. Diese zufälligen Werte können beispielsweise mittels eines Zufallsgenerators erzeugt werden. Dadurch, dass der Schlüssel nicht einfach nur gelöscht wird, sondern sofort mit neuen Daten beschrieben wird, kann gewährleistet werden, dass keine Datenfragmente des Schlüssels in der ersten Komponente zurückbleiben. Solche Datenfragmente könnten einen weiteren Angriffspunkt darstellen. Angreifer könnten aus den Datenfragmenten den Schlüssel wieder rekonstruieren.Advantageously, the key in the first component can be deleted by overwriting a memory area in which the key is stored. For example, the corresponding memory area can be overwritten with random values. These random values can be generated, for example, by means of a random number generator. The fact that the key is not simply deleted, but is immediately described with new data can ensure that no data fragments of the key remain in the first component. Such data fragments could represent another point of attack. Attackers could reconstruct the key from the data fragments.
Voreilhafterweise kann in der ersten Komponente ein zweiter Schlüssel erzeugt werden. Dieser zweite Schlüssel kann ebenfalls an die zweite Komponente übertragen werden. Vorzugsweise handelt es sich um einen symmetrischen Schlüssel, der dann in der ersten Komponente nicht gelöscht, sondern sowohl in der ersten Komponente als auch in der zweiten Komponente gespeichert wird. Somit kann auch eine gegenseitige Kommunikation zwischen den zwei Komponenten garantiert werden. Dabei werden zweckmäßigerweise der Mikrocode und andere sensible Daten, welche besonders gesichert sein sollen, mit dem ersten Schlüssel verschlüsselt. Weniger sensible Daten (z.B. aktuelle Messdaten) können mittels des zweiten Schlüssels ausgetauscht werden. Beispielsweise kann mittels des zweiten Schlüssels ein Datenaustausch zwischen den zwei Komponenten während des regulären Betriebs des Steuergeräts erfolgen. Ist die zweite Komponente beispielsweise als ein Sensor, wie ein Temperatursensor, ausgebildet, der gemessene Werte an die erste Komponente übermitteln soll, kann für die Verschlüsselung dieser gemessenen Werte der zweite Schlüssel genutzt werden.Advantageously, a second key can be generated in the first component. This second key can also be transferred to the second component. Preferably, it is a symmetric key, which is then not deleted in the first component but stored in both the first component and the second component. Thus, a mutual communication between the two components can be guaranteed. Expediently, the microcode and other sensitive data, which should be particularly secure, are encrypted with the first key. Less sensitive data (e.g., current measurement data) may be exchanged using the second key. For example, the second key can be used to exchange data between the two components during regular operation of the control unit. If, for example, the second component is designed as a sensor, such as a temperature sensor, which is to transmit measured values to the first component, the second key can be used to encrypt these measured values.
Um einen Datenaustausch der zwei Komponenten während des regulären Betriebs des Steuergeräts sicherer zu gestalten, kann auch beispielsweise ein asymmetrisches Verschlüsselungsverfahren genutzt werden. Bei dem an die zweite Komponente übertragenen zweiten Schlüssel handelt es sich dann vorzugsweise um den öffentlichen Schlüssel, mit dem die zweite Komponente die an die erste Komponente zu übertragenden Daten oder Teile davon (z.B. Prüfsummen "Hashes")) verschlüsselt. Für die Übertragung von Daten von der zweiten Komponente an die erste Komponente erstellt die zweite Komponente einen Hash-Wert, beispielsweise eine Prüfsumme, über die zu übertragenden Daten und verschlüsselt diesen Hash-Wert mit dem zweiten Schlüssel. Der verschlüsselte Hash-Wert und die unverschlüsselten Daten werden von der zweiten Komponente an die erste Komponente übertragen. Die erste Komponente entschlüsselt den Hash-Wert mit dem eigenen privaten Schlüssel und kann somit die Echtheit der Daten überprüfen.In order to make a data exchange of the two components more secure during the regular operation of the controller, an asymmetric encryption method can also be used, for example. The second key transmitted to the second component is then preferably the public key with which the second component encrypts the data or portions thereof (e.g., "hash" checksums) to be transmitted to the first component). For the transmission of data from the second component to the first component, the second component creates a hash value, for example a checksum, over the data to be transmitted and encrypts this hash value with the second key. The encrypted hash value and the unencrypted data are transmitted from the second component to the first component. The first component decrypts the hash value with its own private key and thus can verify the authenticity of the data.
Auch der zweite Schlüssel kann in einer initialen Sequenz beim ersten Starten des Steuergeräts im regulären Betrieb erzeugt werden. Somit wird auch dieser zweite Schlüssel in dem Steuergerät selbst erzeugt und ist keinem Menschen bekannt.The second key can also be generated in an initial sequence during the first start of the control unit in regular operation. Thus, this second key is generated in the control unit itself and is not known to anyone.
Eine erfindungsgemäße Recheneinheit, z.B. ein Steuergerät eines Kraftfahrzeugs, ist, insbesondere programmtechnisch, dazu eingerichtet, ein erfindungsgemäßes Verfahren durchzuführen.A computing unit according to the invention, eg a control unit of a motor vehicle, is in particular programmatically, adapted to carry out a method according to the invention.
Auch die Implementierung des Verfahrens in Form von Software ist vorteilhaft, da dies besonders geringe Kosten verursacht, insbesondere wenn ein ausführendes Steuergerät noch für weitere Aufgaben genutzt wird und daher ohnehin vorhanden ist. Geeignete Datenträger zur Bereitstellung des Computerprogramms sind insbesondere Disketten, Festplatten, Flash-Speicher, EEPROMs, CD-ROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich.The implementation of the method in the form of software is also advantageous, since this causes particularly low costs, in particular if an executing control device is still used for further tasks and therefore exists anyway. Suitable data carriers for providing the computer program are, in particular, floppy disks, hard disks, flash memories, EEPROMs, CD-ROMs, DVDs and the like. It is also possible to download a program via computer networks (Internet, intranet, etc.).
Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.Further advantages and embodiments of the invention will become apparent from the description and the accompanying drawings.
Es versteht sich, dass die vorstehend genannten und die nachfolgend noch zu erläuternden Merkmale nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen oder in Alleinstellung verwendbar sind, ohne den Rahmen der vorliegenden Erfindung zu verlassen.It is understood that the features mentioned above and those yet to be explained below can be used not only in the particular combination indicated, but also in other combinations or in isolation, without departing from the scope of the present invention.
Die Erfindung ist anhand von Ausführungsbeispielen in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung ausführlich beschrieben.The invention is illustrated schematically by means of exemplary embodiments in the drawing and will be described in detail below with reference to the drawing.
Kurze Beschreibung der ZeichnungenBrief description of the drawings
In den Figuren sind einander entsprechende Elemente mit identischen Bezugszeichen angegeben. Sie werden der Übersichtlichkeit halber nicht wiederholt erläutert.In the figures, corresponding elements with identical reference numerals are given. They are not explained repeatedly for the sake of clarity.
In
Die Verfahrensschritte in dem Block
Mit dem ersten Starten des Steuergeräts wird in Schritt
In Schritt
Des Weiteren wird in Schritt
Der Schlüssel ist jetzt nur noch in dem ASIC
In
Der Mikrocontroller
In Schritt
Nachdem die entschlüsselten Daten im ASIC
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE201310202322DE102013202322A1 (en) | 2013-02-13 | 2013-02-13 | Method for encrypted transmission of data between two components of control unit, involves transferring encrypted data from first component of control unit to second component of control unit, where encrypted data is decrypted |
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE201310202322DE102013202322A1 (en) | 2013-02-13 | 2013-02-13 | Method for encrypted transmission of data between two components of control unit, involves transferring encrypted data from first component of control unit to second component of control unit, where encrypted data is decrypted |
| Publication Number | Publication Date |
|---|---|
| DE102013202322A1true DE102013202322A1 (en) | 2014-08-14 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE201310202322PendingDE102013202322A1 (en) | 2013-02-13 | 2013-02-13 | Method for encrypted transmission of data between two components of control unit, involves transferring encrypted data from first component of control unit to second component of control unit, where encrypted data is decrypted |
| Country | Link |
|---|---|
| DE (1) | DE102013202322A1 (en) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2016206977A1 (en)* | 2015-06-23 | 2016-12-29 | Bayerische Motoren Werke Aktiengesellschaft | Method, server, firewall, control device, and system for programming a control device of a vehicle |
| DE102016106197A1 (en) | 2016-04-05 | 2017-10-05 | Marc Dissel | A method for encrypted transmission of a plain text from a transmitting device to a receiving device, encryption device, decryption device and computer program product |
| EP3528165A1 (en)* | 2018-02-15 | 2019-08-21 | Bundesdruckerei GmbH | Method for processing a cryptographic key and processor chip card |
| US10423401B2 (en) | 2016-10-26 | 2019-09-24 | Volkswagen Ag | Method for updating software of a control device of a vehicle |
| DE102024203190A1 (en) | 2024-04-09 | 2025-10-09 | Robert Bosch Gesellschaft mit beschränkter Haftung | Data processing device and method for operating a data processing device |
| DE102024203188A1 (en) | 2024-04-09 | 2025-10-09 | Robert Bosch Gesellschaft mit beschränkter Haftung | Data processing device and method for operating a data processing device |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2016206977A1 (en)* | 2015-06-23 | 2016-12-29 | Bayerische Motoren Werke Aktiengesellschaft | Method, server, firewall, control device, and system for programming a control device of a vehicle |
| US10650137B2 (en) | 2015-06-23 | 2020-05-12 | Bayerische Motoren Werke Aktiengesellschaft | Method, server, firewall, control device, and system for programming a control device of a vehicle |
| DE102016106197A1 (en) | 2016-04-05 | 2017-10-05 | Marc Dissel | A method for encrypted transmission of a plain text from a transmitting device to a receiving device, encryption device, decryption device and computer program product |
| US10423401B2 (en) | 2016-10-26 | 2019-09-24 | Volkswagen Ag | Method for updating software of a control device of a vehicle |
| EP3528165A1 (en)* | 2018-02-15 | 2019-08-21 | Bundesdruckerei GmbH | Method for processing a cryptographic key and processor chip card |
| DE102018202357A1 (en)* | 2018-02-15 | 2019-08-22 | Bundesdruckerei Gmbh | Method for processing a cryptographic key and processor chip card |
| DE102024203190A1 (en) | 2024-04-09 | 2025-10-09 | Robert Bosch Gesellschaft mit beschränkter Haftung | Data processing device and method for operating a data processing device |
| DE102024203188A1 (en) | 2024-04-09 | 2025-10-09 | Robert Bosch Gesellschaft mit beschränkter Haftung | Data processing device and method for operating a data processing device |
| Publication | Publication Date | Title |
|---|---|---|
| EP2689553B1 (en) | Motor vehicle control unit having a cryptographic device | |
| DE102012110499B4 (en) | Safety access procedure for electronic automotive control units | |
| EP2899714B1 (en) | Secure provision of a key | |
| DE102013227184A1 (en) | Method for securing a system-on-a-chip | |
| DE102013202322A1 (en) | Method for encrypted transmission of data between two components of control unit, involves transferring encrypted data from first component of control unit to second component of control unit, where encrypted data is decrypted | |
| DE102015111530A1 (en) | Safely providing diagnostics data from a vehicle to a remote server using a diagnostic tool | |
| DE102013206202A1 (en) | Sensor module and method for operating a sensor module | |
| WO2013083375A1 (en) | Device and method for decrypting data | |
| DE102018101479A1 (en) | CONTROL INTERFACE FOR AN AUTONOMOUS VEHICLE | |
| DE102019113026A1 (en) | AUTOMOBILE NONCE MISUSE-RESISTANT AUTHENTICATED ENCRYPTION | |
| DE112019003096T5 (en) | SECURE COMMUNICATION FROM A NON-VOLATILE STORAGE DEVICE | |
| DE112018003506T5 (en) | Methods and systems for linear key agreement with Forward Secrecy using an insecure shared communication medium | |
| DE10213658B4 (en) | Method for data transmission between components of the on-board electronics of mobile systems and such components | |
| WO2016165930A1 (en) | Device and method for generating a key in a programmable hardware module | |
| EP3552344B1 (en) | Bidirectionally linked blockchain structure | |
| DE102014222181A1 (en) | Method for operating a control device | |
| EP3371733B1 (en) | Encrypting the memory content of a memory in an embedded system | |
| EP3819804A1 (en) | Integrity check of a register content | |
| DE102019101213A1 (en) | Authentication and decryption of programmable devices | |
| DE102014019496A1 (en) | Method for controlling an authentication key exchange in vehicle networks and a motor vehicle | |
| DE102014213454A1 (en) | Method and system for detecting a manipulation of data records | |
| EP3595256A1 (en) | Device and method for operating a designed by software processing unit for an apparatus | |
| EP3439228B1 (en) | Method and devices for achieving a safety function, particularly in the vicinity of a device control and/or system control | |
| EP1455312B1 (en) | Method and apparatus for maintenance of security sensitive program code of a vehicle | |
| DE102023205541B3 (en) | Procedures for implementing secure data communication |
| Date | Code | Title | Description |
|---|---|---|---|
| R012 | Request for examination validly filed |