EP1616232A1 - Verfahren zur sicherstellung der integrität und authentizität von flashware für steuergeräte - Google Patents
Verfahren zur sicherstellung der integrität und authentizität von flashware für steuergeräteInfo
- Publication number
- EP1616232A1 EP1616232A1 EP04717070A EP04717070A EP1616232A1 EP 1616232 A1 EP1616232 A1 EP 1616232A1 EP 04717070 A EP04717070 A EP 04717070A EP 04717070 A EP04717070 A EP 04717070A EP 1616232 A1 EP1616232 A1 EP 1616232A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- application program
- authentication code
- hmac
- flashware
- hash 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/572—Secure firmware programming, e.g. of basic input output system [BIOS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
Definitions
- the invention relates to a security concept for the download process of software in a control unit.
- control units are used for control in various areas of technology today.
- these control units are often connected to each other via a bus system and there are usually possibilities to access this bus from the outside and to communicate with the individual control units.
- the functionality of the control units is determined by application programs.
- application programs have mostly been stored in a non-programmable memory, preferably in the control unit. This means that the software cannot be easily manipulated. For example, the complete replacement of a memory module with another memory module can be recognized and reacted to accordingly.
- flash-programmable control devices in the vehicle increases the risk that unauthorized manipulation of the application programs and thus of the way the control devices work. Measures must therefore be taken to prevent unauthorized overwriting of application programs in the control units.
- a typical download process of an application program, a so-called flashware is disclosed in patent specification DE 195 06 957 C2.
- an application program, a so-called flashware is stored in a non-volatile, electrically erasable and programmable memory, known in the art as flash EPROM memory or, briefly, known as flash.
- flash EPROM memory non-volatile, electrically erasable and programmable memory
- an initialization routine is stored in the boot area in the electrically erasable and programmable read / write memory (flash).
- the initialization routine additionally contains a so-called reload routine.
- This reload routine is activated via a system interface using a special command. After activation, the reload routine first saves the new application program in a buffer. A cyclic block backup procedure is used to check whether the storage of the new application program was incorrect or not. If the new application program has been correctly transferred and buffered, the user program to be exchanged is initiated and executed. For this purpose, the old application program in the erasable and programmable read / write memory (flash) is overwritten with the new application program.
- This programming or copying process into the flash can also be checked by means of a cyclic block backup method.
- the check using a cyclic block backup procedure only allows a check to what extent the program was copied correctly.
- a check for data integrity and authenticity is not possible with cyclic block backup procedures.
- An unauthorized program or an unauthorized flashware cannot be recognized with cyclic block protection procedures.
- Encryption and digital signature processes are familiar with the Internet, particularly for home banking and home shopping applications.
- the basis of all encryption methods common today is the so-called public key encryption.
- These encryption algorithms work with a secret and a public key, in which the public key may be publicly known, whereas the secret key may only be known to an authorized body, for example a trust center.
- Such cryptographic algorithms are e.g. B. Rivest, Shamir and Adleman (RSA algorithm), data encryption algorithm (DEA algorithm) or the like.
- the secret or public key can be used to generate a digital signature for an electronic document, similar to a handwritten signature. Only the owner of the secret or public key can create a valid signature. The authenticity of the document can then be checked by verifying the signature using the associated public or secret key.
- the secret key is sometimes referred to as a private key.
- the electronic signature has become known as the signature process. Electronic signature is about ensuring that a message is certain to come from a particular sender and that this message has not been tampered with during transmission.
- the sender of the information encrypts a message with its own private key, which can be read with the sender's public key.
- a message that can be read with a public key can only come from the sender, because only the sender has the appropriate private key.
- the rule here is that you can only encrypt with the private key, while you can only decrypt or read with the public key. So there are messages that can only be written by one person but can be read by anyone with the public key.
- the sender calculates a kind of summary or cross-sum of the message, the so-called hash code.
- the calculation rule is such that it is almost impossible to change the message without changing the hash code at the same time.
- the sender then encrypts the hash code with its private key. That is the electronic signature.
- the signature is therefore different for each message, only the length of the signature is always the same, regardless of the length of the message. This is the property of the hash codes, which are always the same length.
- the recipient decrypts the signature using the sender's public key and receives the hash code determined by the sender.
- the recipient can determine the hash code of the original message and compare it with the hash code that was sent by the sender. If both hash codes match, it is ensured that the message really comes from the one sender and that it has not been tampered with in the transmission path.
- the aforementioned signature mechanism is based on the RSA public key method for decoding and the RIPEMD-160 hash function for calculating the hash code.
- the solution is achieved with a simplified, symmetrical, cryptographic procedure.
- This procedure is based on an authentication code.
- This authentication code is calculated in a secure area, a so-called trust center, by concatenating the application program, the so-called flashware, with a secret data string and calculating a hash value by the concatenated application program.
- This hash value is calculated both via the application program and via the secret data string.
- This hash value is the authentication code for the application program to be checked.
- the authentication code is checked in the microprocessor system or in the control unit in which the application program is to be used. For this purpose, a second, identical, secret data string is stored in the microprocessor system or the control device.
- the unencrypted application program and the authentication code are first transmitted to the microprocessor system or the control device.
- the unencrypted application program is then concatenated in the microprocessor system or in the control device with the second identical, secret data string.
- a hash value is calculated from this concatenated application program in the microprocessor system or in the control unit. If the calculated hash value and the transmitted authentication code match, the transmitted application program or the transmitted flashware is considered authentic and may be stored in the flash memory and used in the control unit or in the microprocessor system.
- the hash value is then calculated using the application program concatenated on both sides.
- the unencrypted application program is concatenated in the microprocessor system or in the control unit with the second, secret data string stored in the control unit, also concatenated on both sides, and a hash value is formed in the control unit or in the microprocessor system via the concatenated application program. If the hash value calculated in the control device or microprocessor system matches the transmitted authentication code, the transmitted application program is considered authentic.
- the concatenation on both sides has the advantage of improved protection against unauthorized manipulation of the application software.
- a hash value is calculated by the unilaterally concatenated application program.
- the concatenation can be at the beginning or end of the program.
- This first hash value HMAC1 is in turn concatenated on one side with the secret data string. Concatenation can take place on either side of the first hash value.
- a second hash value HMAC is then calculated for the calculation of an authentication code over the entire structure of the data string and the first hash value HMAC1.
- Flashware and authentication code can be transmitted together on the same distribution channel or the authentication code can be transmitted by the application program on separate distribution channels. In the case of separate transmission, it is advantageous to distribute the flashware or the application program on hardware storage media. Compact discs, EPROMs or memory cards can be used as preferred storage media.
- the new application program is preferably provided with an identifier, a so-called flag. This identifier distinguishes the application program as the respectively valid application program.
- control units are able to calculate the public key algorithms, since some of them do not support floating point arithmetic or cannot provide enough memory space to be able to perform the required encryption calculations.
- at least 1024 bytes should currently be selected as the key length. Since many control units in motor vehicles only have a memory area of 4 KB, the key alone would occupy a large part of the memory.
- the invention manages here without encryption algorithms. The only calculation method that is used is hash value calculation. With the aid of the symmetrical, cryptographic method according to the invention, those control devices can also be equipped with an authenticity check for which the public key method cannot be used.
- the method according to the invention is a so-called message authentication code method, which is based on the calculation of a hash value. It is therefore not a signature process.
- a signature process requires that the recipient of a message is unable to reproduce the supplied signature.
- a signature process is not required because the receiving control device does not independently form the message authentication code for a message.
- the control device only checks a given secret data string for a given message.
- the hash value calculation is required to secure the transmission path. According to the invention, only the hash value of a message authentication code is transmitted and not the secret data string.
- the hash value method proposed according to the invention is considerably more runtime and memory space efficient than encryption and decryption methods, such as e.g. B. the public key algorithms.
- Flashware meta information can be included in the authentication code. Flashware meta information is e.g. B. the location of the flashware, the identification number of the flashware, the identification number of the control unit or the vehicle identification number. This flashware meta information is integrated into the secret data string. The hash value formation via the flashware and the secret data string ensures that the flashware meta information on the transmission path is also secured against manipulation.
- the flashware download process in the various control units can be selected with this authentication code by including the flashware meta information in the authentication code. Since different control units have different identification numbers and the storage locations for the flashware in the different control device is different, a control device-specific authentication code results in each case even with the same flashware according to the inventive method.
- FIG. 1 schematically shows a download process of a flashware from a data memory into the control unit of a motor vehicle
- FIG. 2 shows a download process for flashware, in which the flashware and the authentication code arrive in the control unit of a motor vehicle on separate distribution channels;
- FIG. 3 shows a flowchart for the calculation of an authentication code for the download process according to FIG. 1;
- FIG. 4 shows a more complex flowchart for the calculation of an authentication code for the download process according to FIG. 1;
- Fig. 5 is a flowchart for calculating a Authentifi- z istscodes for the download process according to ' Figure 2;
- FIG. 6 shows a more complex flow chart for the calculation of an authentication code for the download process according to FIG. 2;
- FIG. 7 shows a block diagram of a microprocessor system or of a control device with a flash memory, into which an application program can be downloaded using the method according to the invention.
- FIG. 1 shows one possibility of a download process in which the invention is used.
- the application programs or the flashware are collected in a data memory 1.
- the individual application programs or application RAM are Packets 2 transferred to a so-called trust center 3.
- the application programs are identified with an authentication code.
- the processes in the trust center itself are explained in more detail below in connection with FIGS. 3 to 6.
- the unencrypted flashware together with the authentication code HMAC is transferred from the trust center to an external system interface 4.
- the system interface itself can consist of a diagnostic connection in the motor vehicle. As a rule, however, the system interface will be formed by the diagnostic system in the motor vehicle workshops.
- the usual data communication paths can be used for the transmission from the trust center to the system interface, in particular landline connections, internet connections and also mobile radio connections.
- the download process of the transmitted program package or the transmitted flashware and the authentication code HMAC into a control unit of a motor vehicle is initiated by the system interface.
- the system interface sends a special command to the control unit in the motor vehicle, with which the flash memory in the motor vehicle is prepared for the download process.
- the programming of the new application program into the flash memory is explained in more detail below in connection with FIG. 7.
- the transmitted authentication code HMAC is checked in the control unit of the motor vehicle and, if the check is successful, the flashware which is also transmitted is programmed into the flash memory of the control unit.
- FIG. 2 shows another possibility of a download process according to the invention.
- the application programs are collected in a data memory 1.
- the application programs, the so-called flashware are then transferred to a trust center as program packages 2.
- An authentication code is generated in the trust center 3 for the flashware.
- the calculation of the authentication code is explained in more detail below in connection with FIGS. 5 and 6.
- only one authentication code HMAC is transmitted from the trust center to the system interface 4 in the download process described here.
- the application program itself is transmitted via a separate distribution channel.
- the flashware is preferably recorded on compact discs, memory cards, EPROMs or other hardware-related storage means 6 and transferred to the control unit 5 of the motor vehicle using a suitable reading device 7.
- the suitable reading device 7 in the motor vehicle can be formed by an infotainment system such as is used today in vehicles, in particular by a CD-ROM drive or a DVD drive.
- the download process is initiated in the vehicle by a special command from the system interface 4.
- the system interface 4 has access to the data buses of the vehicle electrical system in the motor vehicle.
- the system interface can be formed in the simplest case by a diagnostic connection in the motor vehicle.
- the system interface is preferably the diagnostic system in the motor vehicle workshop.
- the verification of the authentication code described above applies regardless of the choice of transmission path for the flashware.
- the authentication procedure for downloading the flashware from CD-Rom or DVD is the same as for downloading the flashware directly from a central system using wireless or wired data transmission.
- a hash value is calculated.
- a test value a so-called print, of fixed length, can be generated for data of any length. This imprint is called the hash value.
- the hash function and hash value have the following properties:
- the hash value is easy to calculate.
- the hash function can only be used for data or data records with a maximum bit length of 2 64 - 1. In the case of shorter data records, the data records are padded with zeros until the length of the padded data record has an integer multiple of 512 bits. The padded data record is then divided into blocks that are at least 512 bits long. Applying the hash function to the 512-bit blocks ultimately results in a 160-bit hash value.
- the hash function can be applied to any data record, especially flashware.
- FIG. 3 shows a flowchart for calculating an authentication code within a secure area 3, which is referred to below as the trust center.
- Secret identifications or identifications in the form of data strings are managed in digital form in the trust center in a separate, secured area, preferably a separate, secured data memory 8.
- the flashware for which an authentication code is to be calculated is first concatenated with a data string at both ends of the application program. This means that a digital data string from the memory 8 of the trust center is attached to the digital data record of the application program at the beginning and at the end.
- a hash value is calculated for the flashware that is concatenated on both sides. This hash value now contains all information about the flashware and the secret data string.
- this hash value is suitable as an authentication code HMAC for the authenticity and the data integrity of the flashware.
- the authentication code HMAC is added to the unencrypted application program, the so-called flashware and transmitted from the trust center to the system interface for further transmission into the motor vehicle.
- FIG. 4 shows a more complex process for calculating an authentication code in a trust center.
- the flashware is first concatenated on one side with a secret data string. The concatenation can take place either at the beginning or at the end of the data record of the flashware.
- a first hash value calculation is carried out using the concatenated flashware.
- a first hash value HMAC1 is obtained.
- This first hash value HMAC1 is in turn concatenated on one side with a secret data string from the memory 8.
- concatenation can take place at the beginning or at the end of the first hash value.
- a second hash value calculation is carried out using the entire structure comprising the secret data string and the first hash value. The result of this last hash value calculation gives the authentication code HMAC.
- Unencrypted original flashware is then added to the authentication code and transmitted to the system interface.
- the exemplary embodiment in FIG. 4 is suitable for a download process in accordance with FIG. 1.
- FIG. 5 shows a flow chart for calculating an authentication code within a trust center for use in the download process according to FIG. 2.
- the unencrypted original flashware is concatenated on both sides with a secret data string.
- a hash value calculation is carried out for the flashware that is concatenated on both sides.
- the result of this hash value calculation is the authentication code HMAC.
- only the authentication code is transmitted to the system interface in the exemplary embodiment in FIG.
- the distribution the original and unencrypted flashware is carried out on separate distribution channels.
- the flashware is preferably transmitted on hardware storage elements and read into the motor vehicle (for more information, see FIG. 2).
- FIG. 6 shows a further exemplary embodiment of a more complex calculation of an authentication code, as is used in connection with the download process according to FIG. 2.
- the unencrypted flashware is first concatenated on one side with a secret data string in the trust center.
- the concatenation can take place both at the beginning and at the end of the data record of the flashware.
- a hash value calculation is carried out using the concatenated flashware.
- the result is a first hash value HMAC1.
- This first hash value HMAC1 is in turn concatenated on one side with a secret data string from the memory 8.
- concatenation can take place at the beginning or at the end of the first hash value.
- a second hash value calculation is carried out over the entire structure of the secret data string and the first hash value.
- the result of this last hash value calculation gives the authentication code HMAC.
- This authentication code is transmitted to the system interface.
- only the authentication code is transmitted to the system interface in the exemplary embodiment in FIG.
- the unencrypted original software is read into the motor vehicle analogously to FIG. 2 via storage media, preferably compact discs.
- a typical control unit also as an electronic ronic control unit ECU, contains a computing unit, a so-called microprocessor CPU, which is connected to various memories or memory sectors via a processor bus PBUS. Via an interface, the control unit can either be addressed from the outside or communicate with other units connected to the interface.
- the memory of the control unit consists of a boot sector, a flash memory and a RAM.
- the flash memory flash is an electrically erasable and programmable memory, for example an EEPROM.
- the operating system of the microprocessor, a so-called flash boot loader, and the RIPEMD-160 algorithm for the hash function are stored in the boot sector.
- a secret data string is stored in the control unit in a memory or memory area that is particularly protected from external access.
- This particularly protected data area 9 can also be arranged in the boot area.
- Another possibility is to design this specially protected data memory 9 in the form of a memory card which cannot be overwritten and is protected against unauthorized reading, or in the form of a so-called crypto processor which deletes its contents when an unauthorized access is attempted.
- These measures or this configuration of the specially protected memory area 9 ensures that the data string stored therein is kept secret.
- Which data strings are programmed into the specially protected data area 9 must be coordinated with the data strings for calculating the authentication codes in the trust center.
- the data string in the control unit must match the data string that was used to calculate the authentication code.
- the application programs are stored in the flash of the control unit and can be updated as flashware.
- An overwriting of already stored user programs with new flashware basically takes place in the following way.
- the control device is prepared for a download process and for a flash process using a special software command that is transmitted from an external system interface via the interface of the control device.
- the so-called Flash Boot Loader is activated with the software command.
- the Flash Boot Loader is essentially a reload routine with which application programs are written into the flash memory of the control unit.
- the new flashware and the transmitted authentication code are first temporarily stored in the main memory of the control unit.
- the cached flashware and the cached authentication code are checked for authenticity and data integrity in the microprocessor of the control unit.
- This check is carried out in such a way that the same process steps that were used to generate the transmitted authentication code are carried out in the microprocessor with the unencrypted software and the secret data string stored in the control device.
- the process steps that were carried out in the trust center in order to generate the authentication code are thus repeated in the microprocessor of the control device.
- Has z For example, if the authentication code is generated according to the exemplary embodiment in FIG. 3, the temporarily stored flashware is concatenated on both sides with the secret data string stored in the control unit in the microprocessor of the control unit.
- the RIPEMD-160 algorithm is used to calculate the hash value of the flashware that is concatenated on both sides.
- the result of this hash value calculation in the control unit is compared with the transmitted identification code HMAC. If both hash values are identical, the flashware temporarily stored in the working memory is considered to be authentic and integer.
- Has the authentication 3, 4, 5 or 6 the concatenations of the temporarily stored flashware with the secret data string stored in the control unit and the hash code must be checked in the control unit or in the microprocessor of the control unit. Value calculations of the concatenated flashware are carried out in the manner in which they were carried out in the trust center in order to generate the transmitted authentication code.
- the flash boot loader After a successful check of the newly downloaded and cached flashware, the flash boot loader writes the new cached flashware into the flash memory of the control unit.
- the copying process from the main memory into the flash memory can also be checked for completeness using a cyclic block backup method. If the authenticity check and the copying process were error-free, a so-called flag is set for the flashware now in flash.
- This flag identifies the application program now in flash as the valid application program to be used.
- the flag can be set, for example, as shown in FIG. 7, for example in the flash memory itself, preferably the flash memory is designed as an EEPROM.
- the control unit can now go into the application and will use the application programs marked with a valid flag.
- the flash boot loader is preferably activated by the diagnostic system in a workshop.
- the diagnostic system of the workshop forms the system interface 4.
- unencrypted flashware and authentication code can be buffered together by the system interface via the interface in the main memory of the control device.
- the authentication code is temporarily stored in the main memory of the control unit via the system interface, while the unencrypted flashware is temporarily stored in the main memory of the control unit via a further reading device, preferably a CD-ROM drive or a chip card reader.
- the reload routine of the Flash Boot Loader must therefore download the required data records from different IT systems, if necessary.
- communication in the motor vehicle takes place via the motor vehicle internal data buses.
- a data bus that is widely used in motor vehicles today is the so-called CAN bus.
- the existing flash memory is deleted.
- the new flashware is downloaded and programmed.
- the downloaded flashware is then verified, i.e. checked for transmission errors.
- the authenticity check is then carried out as in the previous exemplary embodiments.
- the downloaded flashware is identified and activated by setting a flag in the form of a status bit.
- Direct downloading without buffering the flashware has the additional advantage of "end-to-end” protection, since write errors are also recognized during the download process.
- the flashware can be supplemented with so-called meta information.
- This flashware meta information is in particular a vehicle identification number, a control unit number or a special storage location for the flashware.
- the Flashware meta information e.g. B. Select the location for the new flashware to be downloaded. Because the flashware meta information is included in the calculation of the authentication code, there is also protection against manipulation of this flashware meta information.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10318031A DE10318031A1 (de) | 2003-04-19 | 2003-04-19 | Verfahren zur Sicherstellung der Integrität und Authentizität von Flashware für Steuergeräte |
PCT/EP2004/002194 WO2004095238A1 (de) | 2003-04-19 | 2004-03-04 | Verfahren zur sicherstellung der integrität und authentizität von flashware für steuergeräte |
Publications (1)
Publication Number | Publication Date |
---|---|
EP1616232A1 true EP1616232A1 (de) | 2006-01-18 |
Family
ID=33103521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP04717070A Withdrawn EP1616232A1 (de) | 2003-04-19 | 2004-03-04 | Verfahren zur sicherstellung der integrität und authentizität von flashware für steuergeräte |
Country Status (5)
Country | Link |
---|---|
US (1) | US20070028115A1 (de) |
EP (1) | EP1616232A1 (de) |
JP (1) | JP2006524377A (de) |
DE (1) | DE10318031A1 (de) |
WO (1) | WO2004095238A1 (de) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ATE388446T1 (de) * | 2004-08-23 | 2008-03-15 | Nokia Siemens Networks Gmbh | Verfahren und anordnung zur vergebührung in einem peer-to-peer netzwerk |
DE102006038428A1 (de) * | 2006-08-17 | 2008-02-21 | Bayerische Motoren Werke Ag | Verfahren zur Programmierung eines Steuergerätes eines Kraftfahrzeugs |
US20080101613A1 (en) * | 2006-10-27 | 2008-05-01 | Brunts Randall T | Autonomous Field Reprogramming |
DE102007049151B4 (de) * | 2007-10-12 | 2014-05-28 | Robert Bosch Gmbh | Verfahren zur Durchführung einer automotiven Anwendung |
DE102008008969B4 (de) * | 2008-02-13 | 2022-07-14 | Bayerische Motoren Werke Aktiengesellschaft | Bordnetz-System eines Kraftfahrzeugs mit einer Authentifizierungs-Vorrichtung |
DE102009045133A1 (de) | 2009-09-29 | 2011-03-31 | Robert Bosch Gmbh | Verfahren zum Manipulationsschutz von Sensordaten und Sensor hierzu |
KR101328167B1 (ko) * | 2009-12-04 | 2013-11-13 | 한국전자통신연구원 | 차량의 소프트웨어 플랫폼 검증 방법 및 그 시스템 |
US8312137B1 (en) * | 2010-01-04 | 2012-11-13 | Google Inc. | Live experiment framework |
JP2012003679A (ja) * | 2010-06-21 | 2012-01-05 | Kyocera Mita Corp | 画像形成装置用追加アプリケーションのセキュリティ確保方法、画像形成システム及び画像形成装置 |
WO2012043167A1 (ja) * | 2010-09-27 | 2012-04-05 | 日本電気株式会社 | 情報処理システム、車両のチェック方法、及び、車両のチェックプログラム |
DE102010038179B4 (de) * | 2010-10-14 | 2013-10-24 | Kobil Systems Gmbh | Individuelle Aktualisierung von Computerprogrammen |
DE102011109426A1 (de) | 2011-08-04 | 2012-12-27 | Daimler Ag | Verfahren zur Erkennung von Datenänderungen in einem Steuergerät |
JP6009290B2 (ja) * | 2012-09-12 | 2016-10-19 | 株式会社ケーヒン | 車両の電子制御装置 |
JP6181493B2 (ja) * | 2013-09-20 | 2017-08-16 | 国立大学法人名古屋大学 | 書換検出システム、書換検出装置及び情報処理装置 |
CN104092725A (zh) * | 2014-06-05 | 2014-10-08 | 潍柴动力股份有限公司 | 一种ecu刷写方法及客户端 |
JP6342281B2 (ja) * | 2014-09-26 | 2018-06-13 | 国立大学法人名古屋大学 | 書換検出システム及び情報処理装置 |
CN104333576B (zh) * | 2014-10-21 | 2019-03-19 | 普华基础软件股份有限公司 | 一种ecu升级装置及方法 |
US10402561B2 (en) * | 2015-10-01 | 2019-09-03 | Samsung Electronics Co., Ltd. | Apparatus and method for protection of critical embedded system components via hardware-isolated secure element-based monitor |
DE102016210786A1 (de) | 2016-02-18 | 2017-08-24 | Volkswagen Aktiengesellschaft | Komponente zur Anbindung an einen Datenbus und Verfahren zur Umsetzung einer kryptografischen Funktionalität in einer solchen Komponente |
KR101967755B1 (ko) * | 2017-02-02 | 2019-04-10 | 주식회사 다산네트웍스 | 복사 플래시 사용 방지 기능을 구비한 ecu 부팅 시스템 |
US10491392B2 (en) * | 2017-03-01 | 2019-11-26 | Ford Global Technologies, Llc | End-to-end vehicle secure ECU unlock in a semi-offline environment |
ES2869256T3 (es) * | 2017-10-23 | 2021-10-25 | Siemens Ag | Procedimiento y sistema de control para el control y/o la supervisión de dispositivos |
DE102017222387A1 (de) * | 2017-12-11 | 2019-06-13 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren und System zum Autorisieren einer älteren Applikation eines Steuergeräts eines Fahrzeugs |
US11030347B2 (en) | 2019-03-14 | 2021-06-08 | Hewlett Packard Enterprise Development Lp | Protect computing device using hash based on power event |
US11329983B2 (en) * | 2019-03-25 | 2022-05-10 | Micron Technology, Inc. | Validating an electronic control unit of a vehicle |
CN110109690B (zh) * | 2019-07-02 | 2019-10-15 | 潍柴动力股份有限公司 | 一种ecu数据的刷写方法及系统 |
JP7234096B2 (ja) * | 2019-11-01 | 2023-03-07 | 株式会社東芝 | セキュリティ管理システム及びセキュリティ管理方法 |
DE102020200436A1 (de) * | 2020-01-15 | 2021-07-15 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfahren zum Erkennen einer Manipulation von Daten |
JP7279668B2 (ja) * | 2020-03-12 | 2023-05-23 | トヨタ自動車株式会社 | 車載用制御装置 |
DE102021214183B3 (de) * | 2021-12-13 | 2023-05-17 | Continental Automotive Technologies GmbH | Verfahren und Prozessorschaltung zum Absichern eines Codes gegen Manipulationen einer Anwendungssoftware, sowie Kraftfahrzeug-Steuergerät und Kraftfahrzeug mit einem solchen Steuergerät |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4315732C1 (de) * | 1993-05-11 | 1994-06-01 | Siemens Nixdorf Inf Syst | Verfahren zum authentischen Booten und Testen der Integrität von Software auf PC-Architekturen |
US6079021A (en) * | 1997-06-02 | 2000-06-20 | Digital Equipment Corporation | Method and apparatus for strengthening passwords for protection of computer systems |
US6272631B1 (en) * | 1997-06-30 | 2001-08-07 | Microsoft Corporation | Protected storage of core data secrets |
JP2001184472A (ja) * | 1999-12-27 | 2001-07-06 | Hitachi Ltd | アプリケーションプログラムの供給方法、スマートカード、スクリプト供給方法、端末装置およびアプリケーションプログラムを有する記憶媒体 |
DE10008974B4 (de) * | 2000-02-25 | 2005-12-29 | Bayerische Motoren Werke Ag | Signaturverfahren |
US7562220B2 (en) * | 2004-11-15 | 2009-07-14 | Microsoft Corporation | System and method for programming an isolated computing environment |
-
2003
- 2003-04-19 DE DE10318031A patent/DE10318031A1/de not_active Withdrawn
-
2004
- 2004-03-04 US US10/553,599 patent/US20070028115A1/en not_active Abandoned
- 2004-03-04 EP EP04717070A patent/EP1616232A1/de not_active Withdrawn
- 2004-03-04 JP JP2006504534A patent/JP2006524377A/ja not_active Abandoned
- 2004-03-04 WO PCT/EP2004/002194 patent/WO2004095238A1/de active Application Filing
Non-Patent Citations (2)
Title |
---|
MENEZES A.J. ET AL, HANDBOOK OF APPLIED CRYPTOGRAPHY, CHAPT. 9, 1 October 1996 (1996-10-01), pages 321 - 383, XP001525009, ISBN: 978-0-8493-8523-0, Retrieved from the Internet <URL:http://www.cacr.math.uwaterloo.ca/hac/> * |
See also references of WO2004095238A1 * |
Also Published As
Publication number | Publication date |
---|---|
US20070028115A1 (en) | 2007-02-01 |
DE10318031A1 (de) | 2004-11-04 |
WO2004095238A1 (de) | 2004-11-04 |
JP2006524377A (ja) | 2006-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2004095238A1 (de) | Verfahren zur sicherstellung der integrität und authentizität von flashware für steuergeräte | |
DE10008974B4 (de) | Signaturverfahren | |
EP1127756B1 (de) | Autorisierungsverfahren mit Zertifikat | |
DE102015209116A1 (de) | Verfahren und Aktualisierungsgateway zum Aktualisieren eines eingebetteten Steuergerätes | |
EP3136285B1 (de) | Verfahren und speichermodul für sicherheitsgeschützte schreibvorgänge und/oder lesevorgänge auf dem speichermodul | |
EP1883906B1 (de) | Tragbarer datenträger mit sicherer datenverarbeitung | |
DE102012109617A1 (de) | Verfahren zum Ersetzen eines öffentlichen Schlüssels eines Bootloaders | |
DE102016221108A1 (de) | Verfahren zum Aktualisieren einer Software eines Steuergeräts eines Fahrzeugs | |
DE112020001061T5 (de) | Verschlüsselte gang-programmierung | |
EP3337085B1 (de) | Nachladen kryptographischer programminstruktionen | |
EP3552344B1 (de) | Bidirektional verkettete blockchainstruktur | |
EP1273994A2 (de) | Verfahren zum Schutz eines Mikrorechner-Systems gegen Manipulation von in einer Speicheranordnung des Mikrorechner-Systems gespeicherten Daten | |
DE102005031611B4 (de) | Nachweis einer Veränderung der Daten eines Datensatzes | |
EP3811260B1 (de) | Kryptografiemodul und betriebsverfahren hierfür | |
EP1661069B1 (de) | Prozessorschaltung und verfahren zum zuordnen eines logikchips zu einem speicherchip | |
DE10316951A1 (de) | Verfahren zur Überprüfung der Datenintegrität von Software in Steuergeräten | |
WO2004114131A1 (de) | Verfahren zum nachladen einer software in den bootsektor eines programmierbaren lesespeicher | |
DE102018211139A1 (de) | Steuergerät sowie Verfahren zu dessen Betrieb | |
EP1482453A2 (de) | Verfahren zum Laden von Daten in eine Speichereinrichtung | |
EP1529257B1 (de) | Übernehmen eines datensatzes in eine recheneinheit | |
DE102021126509B4 (de) | Tragbare Chipvorrichtung und Verfahren zum Ausführen eines Softwaremodul-Updates in einer tragbaren Chipvorrichtung | |
DE10215626B4 (de) | Verfahren zur Änderung von Verschlüsselungsalgorithmen bei geschützter Software oder geschützten Daten | |
DE102020206066A1 (de) | Aktualisierungsmodul für einen programmierbaren Digitalbaustein | |
EP4275138A1 (de) | Verfahren zur überprüfung digitaler signaturen, fahrzeug-recheneinheit und fahrzeug | |
DE102022200544A1 (de) | Verfahren zur abgesicherten Bereitstellung eines zu schützenden Computerpro-gramms in einer Recheneinheit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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 |
|
17P | Request for examination filed |
Effective date: 20051006 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PL PT RO SE SI SK TR |
|
AX | Request for extension of the european patent |
Extension state: AL LT LV MK |
|
DAX | Request for extension of the european patent (deleted) | ||
RBV | Designated contracting states (corrected) |
Designated state(s): DE |
|
RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: WIESER, EVA Inventor name: SORG, MICHAEL Inventor name: SCHNEIDER, JUTTA Inventor name: KOBER, HEIKO |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: DAIMLERCHRYSLER AG |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: DAIMLER AG |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN |
|
17Q | First examination report despatched |
Effective date: 20120127 |
|
18W | Application withdrawn |
Effective date: 20120214 |