DE102016222599A1 - Method for securing data transmission in a data bus - Google Patents
Method for securing data transmission in a data bus Download PDFInfo
- Publication number
- DE102016222599A1 DE102016222599A1 DE102016222599.5A DE102016222599A DE102016222599A1 DE 102016222599 A1 DE102016222599 A1 DE 102016222599A1 DE 102016222599 A DE102016222599 A DE 102016222599A DE 102016222599 A1 DE102016222599 A1 DE 102016222599A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- receiver
- secret
- data word
- secret data
- 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
- 238000000034 method Methods 0.000 title claims abstract description 42
- 230000005540 biological transmission Effects 0.000 title claims abstract description 31
- 230000015654 memory Effects 0.000 claims description 8
- 230000007704 transition Effects 0.000 claims description 2
- 238000004891 communication Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- BUHVIAUBTBOHAG-FOYDDCNASA-N (2r,3r,4s,5r)-2-[6-[[2-(3,5-dimethoxyphenyl)-2-(2-methylphenyl)ethyl]amino]purin-9-yl]-5-(hydroxymethyl)oxolane-3,4-diol Chemical compound COC1=CC(OC)=CC(C(CNC=2C=3N=CN(C=3N=CN=2)[C@H]2[C@@H]([C@H](O)[C@@H](CO)O2)O)C=2C(=CC=CC=2)C)=C1 BUHVIAUBTBOHAG-FOYDDCNASA-N 0.000 description 1
- 101001094044 Mus musculus Solute carrier family 26 member 6 Proteins 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/63—Joint error correction and other techniques
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zur Absicherung der Datenübertragung in einem Datenbus, über den Datenprotokolle von mindestens einem Sender an wenigstens einen Empfänger übermittelt werden, wobei die Datenprotokolle zur Übermittlung von physikalisch übertragbaren Nutzdaten und einer CRC-Prüfsumme ein Datenfeld mit vorgegebener Länge enthalten. Erfindungsgemäß ist vorgesehen, dass wenigstens ein geheimes Datenwort in dem Sender und dem Empfänger bereitgestellt wird und die CRC-Prüfsumme aus den zu übertragenden Nutzdaten und dem geheimen Datenwort berechnet wird.The invention relates to a method for securing the data transmission in a data bus, are transmitted over the data protocols of at least one transmitter to at least one receiver, wherein the data protocols for the transmission of physically transferable user data and a CRC checksum contain a data field with a predetermined length. According to the invention, it is provided that at least one secret data word is provided in the sender and the receiver, and the CRC checksum is calculated from the user data to be transmitted and the secret data word.
Description
Die Erfindung betrifft ein Verfahren zur Absicherung der Datenübertragung in einem Datenbus, über den Datenprotokolle mindestens eines Senders an wenigstens einen Empfänger weitergegeben werden, die mindestens ein Datenfeld mit vorgegebener Länge und ein Sicherungsfeld mit einer CRC-Prüfsumme enthalten.The invention relates to a method for securing the data transmission in a data bus, via which data protocols of at least one transmitter are forwarded to at least one receiver, which contain at least one data field with a predetermined length and a security field with a CRC checksum.
Für die Kommunikation zwischen Steuergeräten in einem Fahrzeug sind verschiedene Bussysteme bekannt, wie bspw. der bekannte CAN-Bus (Controller Area Network). Daneben gibt es aber auch andere Bussysteme, die ebenfalls im Automobilbau Anwendung finden, wie LIN (Local Interconnect Network), FlexRay, MOST (Media Oriented Systems Transport), PSI5 (Peripheral Sensor Interface 5), sowie das aus dem Computerbereich bekannte Ethernet.For communication between control units in a vehicle, various bus systems are known, such as, for example, the known CAN bus (Controller Area Network). But there are also other bus systems that are also used in the automotive industry, such as LIN (Local Interconnect Network), FlexRay, MOST (Media Oriented Systems Transport), PSI5 (Peripheral Sensor Interface 5), as well as the well-known from the computer area Ethernet.
Über ein CAN-Netzwerk werden die zwischen Steuergeräten im Fahrzeug ausgetauschten Informationen in Datentelegrammen bzw. Botschaften, sogenannten CAN-Frames, im Folgenden auch Datenprotokolle genannt, zusammengefasst. Ein solches Datenprotokoll ist in bekannter Weise aus folgenden Feldern zusammengesetzt: Einem Anfangsfeld (Start of Frame), einem Arbitrations-Feld (Arbitration Field), einem Kontrollfeld (Control Field), einem Datenfeld (Data Field), einem Sicherungsfeld (CRC Field), einem Bestätigungsfeld (ACK Field), einem Endfeld (End of Frame) und einem Ruhezustands-Feld (Inter Frame Space).Via a CAN network, the information exchanged between control units in the vehicle is summarized in data telegrams or messages, so-called CAN frames, also referred to below as data protocols. Such a data protocol is composed of the following fields in a known manner: a start field, an arbitration field, a control field, a data field, a safety field (CRC field), an acknowledgment field (ACK Field), an end field (End of Frame), and an Inter Frame Space.
Dieses CAN-Datenprotokoll enthält die an den jeweiligen Busteilnehmer zu übertragende Information im Datenfeld (Data Field), das heißt die Nutzdaten, die in Form einer Bitfolge mit einer fest vorgegebenen Bitanzahl vorliegen. Ein CAN-Frame kann dabei bis zu 64 Bit an Nutzdaten übertragen. Diese Daten können sicherheitsrelevante Steuerbefehle oder Zustandsdaten enthalten. Falsch gesendete, falsch übertragene oder falsch empfangene Daten können in modernen Fahrzeugen zu Gefahren für die Gesundheit und das Leben der Fahrzeuginsassen oder anderer Verkehrsteilnehmer führen.This CAN data protocol contains the information to be transmitted to the respective bus subscriber in the data field (data field), that is to say the user data which is present in the form of a bit sequence with a fixed number of bits. A CAN frame can transmit up to 64 bits of user data. This data can contain safety-relevant control commands or status data. Incorrectly transmitted, incorrectly transmitted or incorrectly received data can lead to dangers for the health and life of the vehicle occupants or other road users in modern vehicles.
Die Absicherung der Datenkommunikation wird im Rahmen der standardisierten Softwarearchitektur AUTOSAR® (AUTomotive Open System ARchitecture) zwischen den Software-Komponenten durch einen softwarebasierten E2E(End-to-End)-Schutzmechanismus realisiert. Hierbei werden mittels Prüfsummen (CRC) und Botschaftszählern Übertragungsfehler erkannt (vgl. Specification of SW-C End-to-End Communication Protection Library AUTOSAR Release 4.2.2).The protection of the data communication is standardized in the context of software architecture AUTOSAR ® (Automotive Open System Architecture) between the software components through a software-based E2E (End-to-End) -Schutzmechanismus realized. In this case, transmission errors are detected by means of checksums (CRC) and message counters (see Specification of SW-C End-to-End Communication Protection Library AUTOSAR Release 4.2.2).
Um gemäß diesem E2E-Schutzmechanismus die zu übertragenden Nutzdaten, bspw. über einen CAN-Bus gegen zufällige Übertragungsfehler abzusichern, werden Prüfdaten in dem Datenfeld mitgesendet, die eine Verfälschung der Daten erkennen lassen. Üblicherweise werden dafür - wie oben ausgeführt - CRC-Prüfsummen und Botschaftszähler eingesetzt, die vom sendenden Steuergerät in den 64 Bit des Datenfeldes der CAN-Botschaft mitgesendet werden. Das Datenfeld eines solchen Datenprotokolls zeigt
Nach der Übermittlung eines solchen Datenfeldes gemäß
Diese CRC-Prüfsummen und Botschaftszähler sind ausreichend geeignet, um zufällige Verfälschungen aufgrund von physikalischen Einflüssen (z.B. Hardware-Fehler oder Störeinstrahlung) im empfangenden Steuergerät zu erkennen.These CRC checksums and message counters are sufficient to detect random corruption due to physical influences (e.g., hardware failure or interference) in the receiving controller.
Die Datenprotokolle inklusive der Prüfdaten sind bei dem bekannten CAN-Bus nicht gegen böswillige Manipulation abgesichert. Ein Angreifer, der Zugang zum CAN-Bus eines Fahrzeugs gefunden hat, kann CAN-Botschaften mit korrekt errechneten Prüfdaten verschicken. Diese Botschaften werden von den anderen Steuergeräten im Fahrzeug als gültig angesehen. Somit kann ein Angreifer mit Zugriff auf das CAN-Netzwerk auch Botschaften senden, die das Leben der Fahrzeuginsassen gefährden.The data protocols including the test data are not protected against malicious manipulation in the known CAN bus. An attacker who has found access to the CAN bus of a vehicle can send CAN messages with correctly calculated test data. These messages are from the others Control units in the vehicle considered valid. Thus, an attacker with access to the CAN network can also send messages that endanger the lives of the vehicle occupants.
Hinsichtlich dieses Problems schlägt bspw. die
Die Signatur gemäß dieser
Damit gemäß dieser
Wird dieses bekannte Verfahren gemäß der
Der Nachteil dieses bekannten Verfahrens gemäß der
Des Weiteren beschreibt die
Dieses bekannte Verfahren gemäß der
Schließlich ist auch aus der
Das Datenprotokoll zur Übertragung von Nutzdaten umfasst Header-Daten, welche eine Sendeknotenadresse, eine Empfangsknotenadresse und den aktuellen Zählwert des sendenden Netzwerkknotens umfassen. Empfangsseitig vergleicht der Empfangsnetzwerkknoten den in der Nachricht übertragenen Zählwert des Sendenetzwerkknotens mit einem anhand der in der Nachricht übertragenen Sendeknotenadresse selektierten Zählwert eines internen Zählers des Empfangsnetzwerkknotens und bildet aus dem übertragenen Zählwert, aus dem gemeinsamen Konstantwert und aus der übertragenen Sendeknotenadresse einen empfangsseitigen NONCE-Wert, falls der übertragene Zählwert aktueller ist als der selektierte Zählwert, wobei der empfangsseitig gebildete NONCE-Wert und ein in dem Empfangsnetzwerkknoten gespeicherter Schlüssel zur Entschlüsselung der in der Nachricht verschlüsselt übertragenen Daten benutzt werden.The data protocol for transmitting payload data includes header data, which includes a sending node address, a receiving node address, and the current counting value of the sending network node. At the receiving end, the receiving network node compares the transmission network node's count value transmitted in the message with a count value of an internal counter of the receiving network node selected from the transmission node address and forms a NONCE value at the receiving end, from the common constant value and from the transmitted transmitting node address. if the transmitted count is more recent than the selected count, using the NONCE value formed at the receive end and a key stored in the receive network node to decrypt the data encrypted in the message.
Dieses bekannte Verfahren gemäß der
Der Vollständigkeit halber sei noch auf die
Mit dem Verfahren zur Prüfung der Integrität von Nachrichten zwischen einer mobilen Station und einem Mobilfunknetz gemäß dieser
Die Aufgabe der Erfindung besteht darin, ein Verfahren zur Absicherung der Datenübertragung in einem Datenbus eines Fahrzeugs anzugeben, welches die Datenübertragung in dem Datenbus, insbesondere in einem CAN-Bus widerstandsfähiger gegen Hackerangriffe macht und mit geringem Aufwand realisierbar ist.The object of the invention is to provide a method for securing the data transmission in a data bus of a vehicle, which makes the data transmission in the data bus, in particular in a CAN bus more resistant to hacker attacks and can be implemented with little effort.
Die Aufgabe wird gelöst durch ein Verfahren mit den Merkmalen des Patentanspruchs 1.The object is achieved by a method having the features of
Bei diesem Verfahren zur Absicherung der Datenübertragung in einem Datenbus, über den Datenprotokolle von mindestens einem Sender an wenigstens einen Empfänger übermittelt werden, wobei die Datenprotokolle zur Übermittlung von physikalischen übertragbaren Nutzdaten und einer CRC-Prüfsumme ein Datenfeld mit vorgegebener Länge enthalten, ist erfindungsgemäß vorgesehen, dass
- - wenigstens ein geheimes Datenwort in dem Sender und dem Empfänger bereitgestellt wird, und
- - die CRC-Prüfsumme aus den zu übertragenden Nutzdaten und dem geheimen Datenwort berechnet wird.
- at least one secret data word is provided in the sender and the receiver, and
- - The CRC checksum is calculated from the user data to be transmitted and the secret data word.
Bei diesem erfindungsgemäßen Verfahren wird das geheime Datenwort lediglich dazu benutzt, zusammen mit den Nutzdaten des Datenfeldes eine CRC-Prüfsumme zu bilden, die einschließlich der Nutzdaten in dem Datenfeld übertragen wird. Eine solche CRC-Prüfsumme unterscheidet sich von derjenigen, die ohne ein solches geheimes Datenwort berechnet wird.In this inventive method, the secret data word is used only to form together with the payload of the data field, a CRC checksum, which is transmitted including the payload data in the data field. Such a CRC checksum differs from that calculated without such a secret data word.
Unter physikalisch übertragbaren Nutzdaten werden solche als bitserielle Datenströme vorliegenden Nutzdaten bezeichnet, welche von einem Datenbus, bspw. dem CAN-Bus als Übertragungsmedium in die entsprechenden BUS-Signale umsetzbar sind.The term "payload data" which is physically transferable refers to useful data which are present as bit-serial data streams and which can be converted by a data bus, for example the CAN bus, as the transmission medium into the corresponding BUS signals.
Nach einer vorteilhaften Weiterbildung des erfindungsgemäßen Verfahrens wird das geheime Datenwort mit einer Länge bereitgestellt, die größer ist als die Länge der CRC-Prüf-summe. Wird bspw. eine 8-Bit-CRC verwendet, ist die Länge des geheimen Datenwortes länger als 8 Bit, also bspw. ein Vielfaches von 1 Byte. Die Länge eines solchen geheimen Datenwortes kann dann bspw. 64 oder 128 Bit usw. sein. According to an advantageous development of the method according to the invention, the secret data word is provided with a length that is greater than the length of the CRC check sum. If, for example, an 8-bit CRC is used, the length of the secret data word is longer than 8 bits, that is, for example, a multiple of 1 byte. The length of such a secret data word can then be, for example, 64 or 128 bits, etc.
Durch die gegenüber der CRC-Prüfsumme größere Länge des geheimen Datenwortes wird bewirkt, dass das geheime Datenwort von einem böswilligen Angreifer sehr viel schwerer erraten werden kann. Bei einer Länge des geheimen Datenwortes von bspw. 64 Bit beträgt die Chance des Erratens 1:2^64, also 1:18.446.744.073.709.551.616. In der Praxis ist somit ein Erraten des geheimen Datenwortes für einen böswilligen Angreifer nicht mehr durchführbar.The greater length of the secret data word compared with the CRC checksum causes the secret data word to be much more difficult to guess by a malicious attacker. With a length of the secret data word of, for example, 64 bits, the chance of guessing is 1: 2 ^ 64, ie 1: 18,446,744,073,709,551,616. In practice, guessing the secret data word is no longer feasible for a malicious attacker.
Da bei dem Empfänger das gleiche geheime Datenwort zur Verfügung steht, kann empfängerseitig aus den Nutzdaten zusammen mit dem geheimen Datenwort die CRC-Prüfsumme berechnet und mit der empfangenen CRC-Prüfsumme verglichen werden. Wenn die derart vorliegenden CRC-Prüfsummen nicht übereinstimmen, wird das übermittelte Datenprotokoll und damit auch die empfangenen Nutzdaten verworfen.Since the same secret data word is available at the receiver, the CRC checksum can be calculated on the receiver side from the user data together with the secret data word and compared with the received CRC checksum. If the CRC checksums thus present do not match, the transmitted data protocol and thus also the received user data are discarded.
Bei Verwendung dieses erfindungsgemäßen Verfahrens müssen die in dem Datenbus bereits definierten und implementierten Sicherheitskonzepte und Fehlerreaktionen auf falsche Nutzdaten nicht verändert werden. Dies gilt insbesondere, wenn der Datenbus als CAN-Bus ausgebildet ist. Auch müssen bei einem solchen CAN-Bus die sicherheitsrelevanten CAN-Datenproto-kolle nicht angepasst werden, wenn bereits ausreichende CRC-Prüfsummen mit ausreichender Lücke für ein geheimes Datenwort eingesetzt werden. Schließlich erfordert der Einsatz dieses erfindungsgemäßen Verfahrens auf der Ebene des mit dem Datenbus realisierten Netzwerkes keine zusätzliche Hardware, um mit diesem erfindungsgemäßen Verfahren dieses Netzwerk gegen Hackerangriffe zu schützen.When using this method according to the invention, the security concepts and error responses to incorrect user data already defined and implemented in the data bus need not be changed. This is especially true if the data bus is designed as a CAN bus. Also, in such a CAN bus, the safety-relevant CAN data protocols do not have to be adapted if sufficient CRC checksums with sufficient gap are already used for a secret data word. Finally, the use of this method according to the invention at the level of the network realized with the data bus requires no additional hardware in order to protect this network against hacker attacks with this inventive method.
Es ist nach einer weiteren bevorzugten Weiterbildung der Erfindung auch möglich, das geheime Datenwort mittels eines kryptographischen Verfahrens in Speichereinheiten des Senders und des Empfängers zu speichern. Hierfür können gehärtete Krypto-Speicher sowohl für den Sender als auch für den Empfänger eingesetzt werden. Bei Verwendung des geheimen Datenwortes werden abgesicherte Krypto-Algorithmen und Krypto-Hardware, wie bspw. ein Hardware-Sicherheitsmodul (Hardware Security Module) eingesetzt. Ein solches Hardware-Sicherheitsmodul ist eine Komponente für die effiziente und sichere Ausführung von kryptographischen Operationen oder Applikationen, wie bspw. die Erzeugung von kryptographischen Schlüsseln, um die Vertrauenswürdigkeit und die Integrität von Daten sicherzustellen. Mit einem solchen Hardware-Sicherheitsmodul ist es daher auch möglich das geheime Datenwort gemäß des erfindungsgemäßen Verfahrens zu erzeugen oder dieses zu speichern, um es vor unberechtigtem Zugriff zu schützen.It is according to a further preferred embodiment of the invention also possible to store the secret data word by means of a cryptographic method in memory units of the transmitter and the receiver. For this purpose, hardened crypto memories can be used both for the transmitter and for the receiver. When using the secret data word secured crypto algorithms and crypto hardware, such as, for example, a hardware security module (Hardware Security Module) are used. Such a hardware security module is a component for the efficient and secure execution of cryptographic operations or applications, such as the generation of cryptographic keys, to ensure the trustworthiness and integrity of data. With such a hardware security module, it is therefore also possible to generate the secret data word according to the method according to the invention or to store this in order to protect it against unauthorized access.
Nach einer weiteren bevorzugten Ausgestaltung der Erfindung wird das geheime Datenwort nach einer vorgegebenen Anzahl von versendeten Datenprotokollen gegen ein anderes geheimes Datenwort ausgetauscht. Insbesondere ist es damit möglich, nach jeder versendeten Nachricht ein Wechsel des geheimen Datenwortes vorzunehmen, d. h. jedes geheime Datenwort wird nur einmalig verwendet.According to a further preferred embodiment of the invention, the secret data word is exchanged for another predetermined data word after a predetermined number of sent data protocols. In particular, it is thus possible to make a change of the secret data word after each message sent, d. H. every secret data word is used only once.
Hierzu wird ein neues geheimes Datenwort mittels des Algorithmus erzeugt oder ein weiteres in dem gehärteten Krypto-Speicher abgelegtes Datenwort als neues geheimes Datenwort verwendet. Dies setzt natürlich voraus, dass in dem gehärteten Krypto-Speicher mehrerer solcher geheimen Datenwörter vorgehalten werden. Die Gültigkeitsdauer eines aktuellen geheimen Datenwortes ist auch dem Empfänger bekannt, so dass der senderseitige Wechsel des geheimen Datenwortes dem Empfänger nicht mitgeteilt zu werden braucht.For this purpose, a new secret data word is generated by means of the algorithm, or another data word stored in the hardened crypto memory is used as a new secret data word. Of course, this presupposes that several such secret data words are stored in the hardened crypto memory. The period of validity of a current secret data word is also known to the receiver, so that the transmitter-side change of the secret data word does not need to be communicated to the receiver.
Der Austausch des geheimen Datenwortes erschwert Hackerangriffe, bei denen das geheime Datenwort durch Mithören und Analysieren des Datenverkehrs auf dem CAN-Bus errechnet wird oder bei denen das geheime Datenwort erraten oder ausprobiert wird.The exchange of the secret data word hacker attacks, where the secret data word is calculated by listening in and analyzing the traffic on the CAN bus or in which the secret data word is guessed or tried.
Ein Austausch des geheimen Datenwortes kann gemäß einer weiteren Ausgestaltung des erfindungsgemäßen Verfahrens auch dann vorgenommen werden, wenn ein kryptografisch abgesichertes Datenprotokoll vom Sender an den Empfänger oder umgekehrt vom Empfänger an den Sender übertragen wurde. Bei einem kryptografisch abgesicherten Datenprotokoll werden die Nutzdaten in dem Datenfeld nicht unverschlüsselt, sondern mittels eines Schlüssels vor der Übertragung an den Empfänger verschlüsselt.An exchange of the secret data word can also be carried out according to a further embodiment of the method according to the invention if a cryptographically secured data protocol has been transmitted from the sender to the receiver or conversely from the receiver to the sender. In a cryptographically secured data protocol, the user data in the data field is not encrypted, but encrypted by means of a key before transmission to the recipient.
Eine weitere vorteilhafte Ausgestaltung der Erfindung sieht vor, dass nach einer vorgegebenen Folge von fehlerhaft von dem Empfänger empfangenen Prüfsummen das geheime Datenwort ausgetauscht wird und dem Sender vom Empfänger der Austausch des geheimen Datenwortes mitgeteilt wird. So kann bspw. bereits nach einem einzigen fehlerhaft übermittelten Datenprotokoll das geheime Datenwort ausgetauscht werden. Es ist auch möglich, nach einer vorgegebenen Anzahl von direkt aufeinanderfolgenden oder nicht direkt aufeinanderfolgenden fehlerhaft übermittelten Datenprotokollen das geheime Datenwort auszutauschen.A further advantageous embodiment of the invention provides that after a predetermined sequence of incorrectly received by the receiver checksums the secret data word is exchanged and the sender is informed by the recipient of the exchange of the secret data word. So, for example, already after a single incorrectly transmitted data protocol the secret data word are exchanged. It is also possible, after a predetermined number of directly consecutive or not directly consecutive incorrectly transmitted data protocols to exchange the secret data word.
Zudem ist es weiterbildungsgemäß vorgesehen, dass nach einer vorgegebenen Folge von fehlerhaft von dem Empfänger empfangenen Prüfsummen dieser Empfänger in einen Notbetrieb übergeht, in welchem keine Datenprotokolle von dem Empfänger akzeptiert werden. So kann bspw. bereits nach einem einzigen fehlerhaft übermittelten Datenprotokoll der Empfänger in den Notbetrieb übergehen. Es ist auch möglich, dass nach einer vorgegebenen Anzahl von direkt aufeinanderfolgenden oder nicht direkt aufeinanderfolgenden fehlerhaft übermittelten Datenprotokollen der Empfänger in den Notbetrieb übergeht.In addition, it is provided according to further development that after a predetermined sequence of checksums incorrectly received by the receiver, this receiver changes to an emergency mode in which no data protocols are accepted by the receiver. Thus, for example, the receiver can switch to emergency operation already after a single incorrectly transmitted data protocol. It is also possible that, after a predetermined number of directly successive or not directly consecutive incorrectly transmitted data protocols, the receiver switches to emergency mode.
Um den Austausch von geheimen Datenworten zu ermöglichen, werden diese in Speichereinheiten des Senders und des Empfängers abgelegt. Weiterbildungsgemäß ist es vorgesehen, dass die Abfolge der zum Austausch bereitgestellten geheimen Datenworte vorab festgelegt wird.To enable the exchange of secret data words, these are stored in storage units of the sender and the recipient. According to a further development, it is provided that the sequence of the secret data words provided for exchange is determined in advance.
Das erfindungsgemäße Verfahren ist besonders zur Anwendung bei einem CAN-Bus als Übertragungsmedium zwischen Steuergeräten eines Fahrzeugs geeignet. Anwendbar ist es auch in Flexray-, CAN-FD-, LIN-, MOST- und Ethernet-Netzwerken.The method according to the invention is particularly suitable for use with a CAN bus as a transmission medium between control units of a vehicle. It is also applicable in Flexray, CAN FD, LIN, MOST and Ethernet networks.
Das erfindungsgemäße Verfahren wird nachfolgend anhand von Ausführungsbeispielen des erfindungsgemäßen Verfahrens unter Bezugnahme auf die beigefügten Figuren beschrieben und erläutert. Es zeigen:
-
1 eine schematische Darstellung der erfindungsgemäßen Erzeugung einer CRC-Prüfsumme für die Übertragung eines CAN-Datentelegramms, und -
2 ein Datenfeld eines Datenprotokolls gemäß AUTOSAR®-Spezifikationen.
-
1 a schematic representation of the inventive generation of a CRC checksum for the transmission of a CAN data telegram, and -
2 a data field of a data protocol according to AUTOSAR® specifications.
Das Datenfeld gemäß
Die CRC-Prüfsumme, die mit einer CAN-Botschaft bzw. einem CAN-Datenprotokoll mitgesendet wird, dient wie eingangs bereits beschrieben der Fehlererkennung. Die CRC-Prüfsumme wird berechnet, indem die 0-1-Folge der zu übertragenden Nutzdaten des Datenfeldes als binäres Polynom interpretiert und durch ein ausgewähltes CRC-Polynom (Generator-Polynom) mod(2) dividiert wird, wobei der Rest der Division die CRC-Prüfsumme bildet.The CRC checksum, which is sent along with a CAN message or a CAN data protocol, serves as previously described for error detection. The CRC checksum is computed by interpreting the 0-1 string of the data field payload data to be transmitted as a binary polynomial and dividing it by a selected CRC polynomial (mod polynomial) mod (2), the remainder of the division being the CRC Checksum forms.
Die Länge der CRC-Prüfsumme richtet sich nach der Anzahl der abzusichernden Nutzdatenbits der Nutzdaten und nach der benötigten Übertragungssicherheit, also der Hamming-Distanz. Eine große Anzahl von abzusichernden Datenbits erfordert bei gleicher Hamming-Distanz eine längere Prüfsumme. In der Regel richtet sich die Länge der Prüfsumme nach der maximal möglichen Anzahl von abzusichernden Datenbits.The length of the CRC checksum depends on the number of useful data bits of the user data to be protected and on the required transmission reliability, ie the Hamming distance. A large number of data bits to be backed up require a longer checksum for the same Hamming distance. As a rule, the length of the checksum depends on the maximum possible number of data bits to be protected.
Das Datenfeld gemäß
Wird bspw. das 8-Bit-CRC-Polynom ‘0x97:
Damit beträgt die Differenz zwischen der Anzahl der mit diesem CRC-Polynom ‘ 0x97 absicherbaren Bits (
Zur Bestimmung der CRC-Prüfsumme wird das entsprechend den oben beschriebenen Methoden bereitgestellte geheime Datenwort, welches aus einer 0-1-Folge besteht, an die Nutzdaten angehängt und zusammen als Eingangsparameter einem CRC-Rechenwerk zugeführt, wie dies in
Diese derart aus den Nutzdaten und dem geheimen Datenwort berechnete CRC-Prüfsumme wird in dem Datenfeldabschnitt Data [0] nach
Das geheime Datenwort ist nur dem Sender des CAN-Datenproto-kolls und dem Empfänger dieser CAN-Botschaft bekannt.The secret data word is known only to the sender of the CAN data protocol and the receiver of this CAN message.
Die mit dem oben beschriebenen CRC-Polynom ‘0x97 berechnete Prüfsumme ist 1 Byte lang und weist eine ausreichend hohe Hamming-Distanz zur Absicherung von sicherheitsrelevanten Botschaften auf. Die Chance eine falsche Nachricht ohne Kenntnis des geheimen Datenwortes zu erzeugen, die vom Empfänger des CAN-Datenprotokolls als Botschaft akzeptiert wird, ist gleich 2^ (-Anzahl der CRC-Bits), dies entspricht 2^ (-8) = 1/256 = 0,39%.The checksum calculated with the above-described CRC polynomial '0x97 is 1 byte long and has a sufficiently high Hamming distance to secure security-relevant messages. The chance of generating a false message without knowledge of the secret data word accepted as a message by the receiver of the CAN data protocol is equal to 2 ^ (number of CRC bits), this corresponds to 2 ^ (-8) = 1/256 = 0.39%.
Das in dem Sender als auch in dem Empfänger des CAN-Netz-werks bereitgestellte geheime Datenwort wird mittels eines vorgegebenen Algorithmus sowohl in dem Sender als auch in dem Empfänger erzeugt. Somit kann für jede Datenübertragung mittels des CAN-Datenprotokolls ein neues geheimes Datenwort verwendet werden, wodurch sich die Sicherheit der Datenübertragung verbessert, insbesondere Hackerangriffe erschwert werden.The secret data word provided in the transmitter as well as in the receiver of the CAN network is generated by means of a predetermined algorithm both in the transmitter and in the receiver. Thus, a new secret data word can be used for each data transmission by means of the CAN data protocol, whereby the security of the data transmission is improved, in particular hacker attacks are made more difficult.
Es ist auch möglich eine vorgegebene Anzahl von geheimen Datenworten jeweils in einer Speichereinheit des Senders und des Empfängers des CAN-Netzwerks bereitzustellen, um somit ggf. das geheime Datenwort zu wechseln.It is also possible to provide a predetermined number of secret data words in each case in a memory unit of the transmitter and of the receiver of the CAN network, in order to thus possibly change the secret data word.
Um ein solches in der Speichereinheit gespeicherte geheime Datenwort gegen Ausspähung zu sichern können folgende Maßnahmen realisiert werden:
- - Verwendung von gehärteten Krypto-Speichern für das geheime Datenwort in den als Steuergeräte ausgebildeten Sendern und Empfängern des CAN-Netzwerks.
- - Verwendung von abgesicherten Krypto-Algorithmen und Krypto-Hardware, bspw. Hardware-Sicherheitsmodulen (Hardware Security Module) bei Verwendung des geheimen Datenwortes.
- - Einrichten von Schutzmaßnahmen vor Ausspähung des geheimen Datenwortes während des Entwicklungs-und Produktionsprozesses der als Sender und Empfänger eingesetzten Steuergeräte des CAN-Netzwerks.
- Use of hardened crypto memories for the secret data word in the transmitters and receivers of the CAN network designed as controllers.
- Use of secure crypto algorithms and crypto hardware, for example hardware security modules using the secret data word.
- - Establishment of protective measures against spying of the secret data word during the development and production process of the control units used as transmitter and receiver of the CAN network.
Das geheime Datenwort kann auch nach einer vorgegebenen Anzahl von versendeten Datenprotokollen ausgetauscht werden, bspw. nach jeder versendeten Nachricht, d.h. jedes geheime Datenwort wird nur einmalig verwendet.The secret data word may also be exchanged after a predetermined number of sent data protocols, for example after every message sent, i. every secret data word is used only once.
Ein Austausch des geheimen Datenwortes kann auch dann vorgenommen werden, wenn ein kryptografisch abgesichertes Datenprotokoll vom Sender an den Empfänger oder umgekehrt vom Empfänger an den Sender übertragen wurde. Bei einem kryptografisch abgesicherten Datenprotokoll werden die Nutzdaten in dem Datenfeld nicht unverschlüsselt, sondern mittels eines Schlüssels vor der Übertragung an den Empfänger verschlüsselt.An exchange of the secret data word can also be made when a cryptographically secured data protocol has been transmitted from the sender to the receiver or vice versa from the receiver to the sender. In a cryptographically secured data protocol, the user data in the data field is not encrypted, but encrypted by means of a key before transmission to the recipient.
Ferner ist ein Austausch des geheimen Datenwortes nach einer vorgegebenen Folge von fehlerhaft von dem Empfänger empfangenen Prüfsummen durchführbar. In diesem Fall wird der Sender vom Empfänger über den Austausch des geheimen Datenwortes informiert. So kann bspw. bereits nach einem einzigen fehlerhaft übermittelten Datenprotokoll das geheime Datenwort ausgetauscht werden. Es ist auch möglich, nach einer vorgegebenen Anzahl von direkt aufeinanderfolgenden oder nicht direkt aufeinanderfolgenden fehlerhaft übermittelten Datenprotokollen das geheime Datenwort auszutauschen.Furthermore, an exchange of the secret data word according to a predetermined sequence of incorrectly received by the receiver checksums feasible. In this case, the sender is informed by the receiver about the exchange of the secret data word. So, for example, can already after a single erroneously transmitted data protocol the secret data word are exchanged. It is also possible, after a predetermined number of directly consecutive or not directly consecutive incorrectly transmitted data protocols to exchange the secret data word.
Zudem kann das CAN-Netzwerk so eingerichtet werden, dass nach einer vorgegebenen Folge von fehlerhaft von dem Empfänger empfangenen CRC-Prüfsummen dieser Empfänger in einen Notbetrieb übergeht, in welchem keine Datenprotokolle von dem Empfänger akzeptiert werden. So kann bspw. bereits nach einem einzigen fehlerhaft übermittelten Datenprotokoll der Empfänger in den Notbetrieb übergehen. Es ist auch möglich, dass nach einer vorgegebenen Anzahl von direkt aufeinanderfolgenden oder nicht direkt aufeinanderfolgenden fehlerhaft übermittelten Datenprotokollen der Empfänger in den Notbetrieb übergeht.In addition, the CAN network can be set up so that after a predetermined sequence of CRC checksums erroneously received by the receiver, this receiver transitions to an emergency mode in which no data protocols are accepted by the receiver. Thus, for example, the receiver can switch to emergency operation already after a single incorrectly transmitted data protocol. It is also possible that, after a predetermined number of directly successive or not directly consecutive incorrectly transmitted data protocols, the receiver switches to emergency mode.
Die Abfolge der zu verwendenden geheimen Datenworte kann bereits vorab softwaremäßig in dem Sender und dem Empfänger festgelegt werden. Es ist auch möglich, dass die Abfolge der zum Austausch bereitgestellten geheimen Datenworte aus dem Inhalt der übertragenen Datenworte des Datenfeldes berechnet wird.The sequence of the secret data words to be used can already be determined beforehand by software in the sender and the receiver. It is also possible that the sequence of the secret data words provided for exchange is calculated from the content of the transmitted data words of the data field.
ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- DE 102012210327 A1 [0010, 0011, 0012, 0013, 0014]DE 102012210327 A1 [0010, 0011, 0012, 0013, 0014]
- DE 102010033229 A1 [0015, 0016]DE 102010033229 A1 [0015, 0016]
- DE 102008046563 A1 [0017, 0019]DE 102008046563 A1 [0017, 0019]
- US 2002/0174332 A1 [0020, 0021]US 2002/0174332 A1 [0020, 0021]
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102016222599.5A DE102016222599A1 (en) | 2016-11-16 | 2016-11-16 | Method for securing data transmission in a data bus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102016222599.5A DE102016222599A1 (en) | 2016-11-16 | 2016-11-16 | Method for securing data transmission in a data bus |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102016222599A1 true DE102016222599A1 (en) | 2018-05-17 |
Family
ID=62026274
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102016222599.5A Withdrawn DE102016222599A1 (en) | 2016-11-16 | 2016-11-16 | Method for securing data transmission in a data bus |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102016222599A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112817805A (en) * | 2021-01-22 | 2021-05-18 | 中汽创智科技有限公司 | Memory data security verification system and method based on self-adaptive platform automobile open system architecture |
DE102023203706A1 (en) | 2023-04-21 | 2024-10-24 | Continental Automotive Technologies GmbH | Method for sending and receiving data via a bus system, transmitter, receiver and bus system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020174332A1 (en) | 2000-11-08 | 2002-11-21 | Nokia Corporation | Adaptive message authentication code |
US7457410B2 (en) * | 2003-05-07 | 2008-11-25 | Panasonic Corporation | Transmission/reception system |
DE102008046563A1 (en) | 2008-09-10 | 2010-03-11 | Siemens Aktiengesellschaft | Method for data transmission between network nodes |
DE102010033229A1 (en) | 2010-08-03 | 2012-02-09 | Siemens Aktiengesellschaft | Method and system for tamper-proof transmission of control data |
DE102012210327A1 (en) | 2012-06-19 | 2013-12-19 | Bayerische Motoren Werke Aktiengesellschaft | Method for transferring e.g. motor rotation speeds in communication system of motor car, involves containing signature in useful information field of signature-messages, where field includes size preset according to preset specification |
-
2016
- 2016-11-16 DE DE102016222599.5A patent/DE102016222599A1/en not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020174332A1 (en) | 2000-11-08 | 2002-11-21 | Nokia Corporation | Adaptive message authentication code |
US7457410B2 (en) * | 2003-05-07 | 2008-11-25 | Panasonic Corporation | Transmission/reception system |
DE102008046563A1 (en) | 2008-09-10 | 2010-03-11 | Siemens Aktiengesellschaft | Method for data transmission between network nodes |
DE102010033229A1 (en) | 2010-08-03 | 2012-02-09 | Siemens Aktiengesellschaft | Method and system for tamper-proof transmission of control data |
DE102012210327A1 (en) | 2012-06-19 | 2013-12-19 | Bayerische Motoren Werke Aktiengesellschaft | Method for transferring e.g. motor rotation speeds in communication system of motor car, involves containing signature in useful information field of signature-messages, where field includes size preset according to preset specification |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112817805A (en) * | 2021-01-22 | 2021-05-18 | 中汽创智科技有限公司 | Memory data security verification system and method based on self-adaptive platform automobile open system architecture |
DE102023203706A1 (en) | 2023-04-21 | 2024-10-24 | Continental Automotive Technologies GmbH | Method for sending and receiving data via a bus system, transmitter, receiver and bus system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102010042539B4 (en) | Data senders with a secure but efficient signature | |
DE102013206185A1 (en) | Method for detecting a manipulation of a sensor and / or sensor data of the sensor | |
WO2018068965A1 (en) | Provision of secure communication in a communications network capable of operating in real time | |
EP2454864B1 (en) | Prevention of masquerade by using identification sequences | |
DE102009000869A1 (en) | Method and device for tamper-proof transmission of data | |
DE102010040688A1 (en) | Method and device for authenticating multicast messages | |
EP2260609A1 (en) | Method and device for transmitting messages in real time | |
DE102013218212A1 (en) | Method for secure transmission of data | |
WO2016034349A1 (en) | Method for serially transmitting a frame from a transmitter to at least one receiver by means of a bus system, and a subscriber station for a bus system | |
DE102014007820B4 (en) | Data frame for protected data transmissions | |
DE102015202935A1 (en) | Method for manipulation protection | |
EP1622320B1 (en) | A telecommunication method for at least two system components of a motor vehicle | |
DE102019005608A1 (en) | Transport layer authenticity and security for automotive communications | |
WO2019129417A1 (en) | Method and system for checking the integrity of a communication | |
DE102019204608B3 (en) | Devices and methods for generating and authenticating at least one data packet to be transmitted in a bus system (BU) of a motor vehicle | |
DE102020212451A1 (en) | Method of digitally signing a message | |
DE102016222599A1 (en) | Method for securing data transmission in a data bus | |
DE102012210327A1 (en) | Method for transferring e.g. motor rotation speeds in communication system of motor car, involves containing signature in useful information field of signature-messages, where field includes size preset according to preset specification | |
EP1455311A2 (en) | Method for secure exchange of data | |
WO2013174578A1 (en) | Method and device for generating cryptographically protected redundant data packets | |
DE102011081036A1 (en) | Method for sending messages with integrity protection | |
DE102014001270A1 (en) | Method and system for calculating codewords for protected data transmissions | |
EP2839601B1 (en) | Field bus data transmission | |
EP3556071B1 (en) | Method, device, and computer-readable storage medium comprising instructions for signing measurement values of a sensor | |
DE102013108006B4 (en) | communication system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |