DE102021117324A1 - Sending unit and receiving unit for sending and receiving data packets - Google Patents

Sending unit and receiving unit for sending and receiving data packets Download PDF

Info

Publication number
DE102021117324A1
DE102021117324A1 DE102021117324.8A DE102021117324A DE102021117324A1 DE 102021117324 A1 DE102021117324 A1 DE 102021117324A1 DE 102021117324 A DE102021117324 A DE 102021117324A DE 102021117324 A1 DE102021117324 A1 DE 102021117324A1
Authority
DE
Germany
Prior art keywords
data packets
verification
unit
information
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.)
Pending
Application number
DE102021117324.8A
Other languages
German (de)
Inventor
Gerald Conrad
Martin Kuemmel
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bayerische Motoren Werke AG
Original Assignee
Bayerische Motoren Werke AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bayerische Motoren Werke AG filed Critical Bayerische Motoren Werke AG
Priority to DE102021117324.8A priority Critical patent/DE102021117324A1/en
Publication of DE102021117324A1 publication Critical patent/DE102021117324A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Abstract

Es wird eine Sendeeinheit zum Senden von Datenpaketen, die Nutzinformationen enthalten, vorgeschlagen, wobei die Sendeeinheit dazu eingerichtet ist, mehrere Datenpakete eines Datenblocks aufeinanderfolgend zu versenden. Die Sendeeinheit ist dazu eingerichtet, eine Verifizierungsanfrage zu erhalten, wobei die Verifizierungsanfrage einen zu verifizierenden Datenblock definiert, und eine Verifizierungsantwort mit einer Verifizierungsinformation des definierten Datenblocks zu erzeugen und zu versenden. Es wird des Weiteren eine Empfangseinheit zum Empfangen von Datenpaketen, die Nutzinformationen enthalten, vorgeschlagen, wobei die Empfangseinheit dazu eingerichtet ist, mehrere Datenpakete eines Datenblocks aufeinanderfolgend von einer Sendeeinheit zu empfangen und zur Verwendung weiterzuleiten. Die Empfangseinheit ist dazu eingerichtet, eine Verifizierungsanfrage zu erzeugen, wobei die Verifizierungsanfrage einen zu verifizierenden Datenblock definiert, und eine Verifizierungsantwort in Antwort auf die Verifizierungsanfrage von der Sendeeinheit zu empfangen, unter Verwendung der in der Verifizierungsantwort enthaltenen Verifizierungsinformation die bereits empfangenen und zur Verwendung weitergeleiteten Datenpakete zu verifizieren und basierend auf einem Ergebnis der Verifizierung weitere Schritte durchzuführen.A transmission unit for transmitting data packets that contain useful information is proposed, the transmission unit being set up to send a plurality of data packets of a data block in succession. The sending unit is set up to receive a verification request, the verification request defining a data block to be verified, and to generate and send a verification response with verification information of the defined data block. Furthermore, a receiving unit for receiving data packets containing useful information is proposed, the receiving unit being set up to receive a number of data packets of a data block in succession from a transmitting unit and to forward them for use. The receiving unit is set up to generate a verification request, wherein the verification request defines a data block to be verified, and to receive a verification response in response to the verification request from the transmitting unit, using the verification information contained in the verification response, the data packets already received and forwarded for use to verify and perform further steps based on a result of the verification.

Description

Die vorliegende Erfindung betrifft eine Sendeeinheit zum Senden von Datenpaketen gemäß Patentanspruch 1. Die vorliegende Erfindung betrifft des Weiteren eine Empfangseinheit zum Empfangen von Datenpaketen gemäß Patentanspruch 7 sowie ein System mit einer Sendeeinheit und einer Empfangseinheit gemäß Patentanspruch 10.The present invention relates to a transmitter unit for transmitting data packets according to patent claim 1. The present invention also relates to a receiver unit for receiving data packets according to patent claim 7 and a system with a transmitter unit and a receiver unit according to patent claim 10.

In verschiedenen Anwendungsgebieten, wie beispielsweise in Fahrzeugen, werden Datenbusse verwendet, um eine Datenübertragung zwischen verschiedenen Einheiten, beispielsweise in Regelkreisen eines Fahrzeugs, zu ermöglichen. Ein solcher Daten- oder Kommunikationsbus, der von mehreren Einheiten verwendet wird, kann beispielsweise ein CAN-Bus oder ein FlexRay-Bus sein. Die Übertragung von Daten wird üblicherweise abgesichert, um eine sichere Übertragung bezüglich der funktionalen Sicherheit (d.h. der fehlerfreien Übertragung der Daten, als Safety bezeichnet) als auch bezüglich einer Manipulation (als Security bezeichnet) sicherzustellen. Hierbei ist es bislang üblich, zusätzlich zu den übertragenen Nutzdaten noch etliche Bytes an Sicherungsdaten zu übertragen. Beispielsweise kann eine Absicherung der Übertragung durch eine Ende-zu-Ende-Absicherung erfolgen.In various fields of application, such as in vehicles, data buses are used to enable data transmission between different units, for example in control circuits of a vehicle. Such a data or communication bus, which is used by several units, can be a CAN bus or a FlexRay bus, for example. The transmission of data is usually secured in order to ensure secure transmission with regard to functional safety (i.e. the error-free transmission of data, referred to as safety) and with regard to manipulation (referred to as security). Up to now it has been customary here to transmit a number of bytes of backup data in addition to the transmitted user data. For example, the transmission can be protected by end-to-end protection.

Da eine Absicherung sowohl hinsichtlich Safety als auch Security erfolgen muss, führt dies zu einer hohen Buslast und einer hohen Latenz, die gerade bei schnellen Regelkreisen, d. h. Regelkreisen, die eine schnelle Reaktion und damit eine schnelle Datenübertragung erfordern, nachteilig ist. Des Weiteren gibt es Systeme, in denen eine Verwendung von übertragenen Daten erst nach einer Überprüfung bzw. Authentifizierung oder Verifizierung der jeweiligen Daten erfolgen kann. Auch dies führt zu einer hohen Latenz bei der Verwendung der übertragenen Daten.Since protection has to be provided with regard to both safety and security, this leads to a high bus load and high latency, which is particularly important in the case of fast control loops, i. H. Control loops that require a fast response and thus fast data transmission is disadvantageous. There are also systems in which transmitted data can only be used after the respective data has been checked, authenticated or verified. This also leads to high latency when using the transmitted data.

Der vorliegenden Erfindung liegt daher die Aufgabe zugrunde, eine Übertragung von Daten über einen Datenbus, insbesondere in einem Fahrzeug, mit einer reduzierten Latenz und einer reduzierten Buslast zu ermöglichen.The present invention is therefore based on the object of enabling data to be transmitted via a data bus, in particular in a vehicle, with reduced latency and a reduced bus load.

Diese Aufgabe wird durch eine Sendeeinheit zum Senden von Datenpaketen gemäß Patentanspruch 1, eine Empfangseinheit zum Empfangen von Datenpaketen gemäß Patentanspruch 7 sowie ein System mit einer Sende- und Empfangseinheit gemäß Patentanspruch 10 gelöst.This object is achieved by a transmitting unit for transmitting data packets according to patent claim 1, a receiving unit for receiving data packets according to patent claim 7 and a system with a transmitting and receiving unit according to patent claim 10.

Die vorgeschlagene Sendeeinheit ist dazu eingerichtet, Datenpakete, die Nutzinformationen enthalten, zu versenden. Das Versenden von Datenpaketen erfolgt dabei insbesondere über einen Datenbus, beispielsweise einen CAN-Bus in einem Kraftfahrzeug. Die Datenpakete sind dabei in Datenblöcke unterteilt und die Sendeeinheit ist dazu eingerichtet, mehrere Datenpakete eines Datenblocks aufeinanderfolgend zu versenden. Die mehreren Datenpakete können insbesondere Nutzdaten bzw. Nutzinformationen aus derselben Regelungsfunktion enthalten. Das bedeutet, dass sich die Daten auf denselben Regelkreis innerhalb des Kraftfahrzeugs beziehen.The proposed transmission unit is set up to send data packets that contain useful information. In this case, data packets are sent in particular via a data bus, for example a CAN bus in a motor vehicle. The data packets are divided into data blocks and the transmission unit is set up to send a number of data packets of a data block in succession. The multiple data packets can in particular contain useful data or useful information from the same control function. This means that the data relate to the same control circuit within the motor vehicle.

Um nun im Vergleich zu bisherigen Systemen eine Latenz in der Übertragung und damit in den Regelkreisen zu verringern, ist die Sendeeinheit dazu eingerichtet, zunächst die Datenpakete, vor einer Verifizierung von diesen, zu versenden. Wenn die Sendeeinheit eine Verifizierungsanfrage von einer Empfangseinheit erhält, die einen zu verifizierenden Datenblock definiert, ist die Sendeeinheit dazu eingerichtet, eine Verifizierungsantwort mit einer Verifizierungsinformation des definierten Datenblocks zu erzeugen und zu versenden. Unter der Verifizierungsantwort wird in diesem Zusammenhang eine Nachricht verstanden, die eine oder mehrere Verifizierungsinformationen enthalten kann.In order to reduce latency in the transmission and thus in the control loops compared to previous systems, the transmission unit is set up to first send the data packets before verifying them. If the sending unit receives a verification request from a receiving unit that defines a data block to be verified, the sending unit is set up to generate and send a verification response with verification information for the defined data block. In this context, the verification response is understood to be a message that can contain one or more items of verification information.

Die Verifizierungsinformation kann dabei eine Verifizierungsinformation über den kompletten Datenblock sein. Alternativ kann die Verifizierungsinformation auch aus mehreren Verifizierungsinformationen für die einzelnen Datenpakete des Datenblocks bestehen.The verification information can be verification information about the complete data block. Alternatively, the verification information can also consist of multiple pieces of verification information for the individual data packets of the data block.

Da die Sendeeinheit die Verifizierungsinformation erst erzeugt, wenn dies durch die Empfangseinheit angefordert wird, bedeutet das, dass die Sendeeinheit die Datenpakete, die die Nutzdaten enthalten, fortlaufend versenden kann, und nicht darauf warten muss, bis eine bestimmte Menge an Datenpaketen vorhanden ist, um für diese Datenpakete eine Verifizierungsinformation zu erzeugen und zu versenden. Die Erzeugung der Verifizierungsantwort mit der zugehörigen Verifizierungsinformation ist dabei unabhängig von dem Zeitpunkt des Versendens der Datenpakete.Since the sending unit only generates the verification information when this is requested by the receiving unit, this means that the sending unit can send the data packets containing the payload data continuously and does not have to wait until a certain amount of data packets is available in order to to generate and send verification information for these data packets. The generation of the verification response with the associated verification information is independent of the time at which the data packets were sent.

Die Verifizierungsantwort, bzw. die in der Verifizierungsantwort enthaltene Verifizierungsinformation, kann auf Empfängerseite verwendet werden, um eine Manipulation der Daten oder eine Verfälschung der Daten aufgrund eines Übertragungsfehlers der Daten zu erkennen. Dies erhöht die Sicherheit des Gesamtsystems, da erkannt werden kann, ob es sich bei den übertragenen Datenpaketen um die ursprünglichen Datenpakete oder um manipulierte bzw. fehlerhafte Datenpakete handelt. Auf diese Weise kann die Übertragung sowohl hinsichtlich Safety als auch Security abgesichert werden.The verification response, or the verification information contained in the verification response, can be used on the receiver side to detect manipulation of the data or corruption of the data due to a transmission error in the data. This increases the security of the overall system since it can be recognized whether the transmitted data packets are the original data packets or manipulated or faulty data packets. In this way, the transmission can be protected both in terms of safety and security.

Des Weiteren muss die Sendeeinheit nicht für jedes Datenpaket eine einzelne Verifizierungsinformation erzeugen und direkt mit dem Datenpaket mitschicken. Dies reduziert den Datenverkehr auf dem Datenbus. Vielmehr kann die Sendeeinheit auf Aufforderung durch eine Empfangseinheit, d.h. nach Empfang der Verifizierungsanfrage, eine Verifizierungsantwort für mehrere Datenpakete als eine einzelne Nachricht versenden, die sich auf mehrere Datenpakete bezieht. Des Weiteren wurden die Datenpakete, auf die sich die Verifizierungsantwort bezieht, bereits versendet. Dies reduziert ebenfalls die Latenz, da zum einen der gesamte Datenverkehr reduziert wird und zum anderen es nicht erforderlich ist, mit dem Versenden der Datenpakete zu warten.Furthermore, the sending unit does not have to carry out an individual verification for each data packet generate formation and send it directly with the data package. This reduces data traffic on the data bus. Rather, the sending unit can, when requested by a receiving unit, ie after receiving the verification request, send a verification response for a number of data packets as a single message which relates to a number of data packets. Furthermore, the data packets to which the verification response refers have already been sent. This also reduces latency, since on the one hand the overall data traffic is reduced and on the other hand there is no need to wait before sending the data packets.

In einer Ausführungsform ist es möglich, die Datenpakete mit Nutzinformationen und die Verifizierungsanfrage und/oder Verifizierungsantwort auf verschiedenen Datenbussen zu übertragen. Dies kann die Sicherheit weiter erhöhen, da bei einer Manipulation oder einem Übertragungsfehler auf einem Datenbus ein anderer Datenbus möglicherweise unbeeinträchtigt ist.In one embodiment it is possible to transmit the data packets with useful information and the verification request and/or verification response on different data buses. This can further increase security, since in the event of manipulation or a transmission error on one data bus, another data bus may be unaffected.

Die Verifizierungsinformation kann entweder direkt eine Information darüber enthalten, ob die auf der Empfangsseite empfangenen Datenpakete manipuliert oder fehlerhaft sind. In diesem Fall wird die Verifizierung auf der Senderseite durchgeführt und die Empfangsseite wird nur entsprechend informiert. Alternativ kann die Verifizierungsinformation auch nur Informationen enthalten, die auf der Empfangsseite verwendet werden können, um die empfangenen Datenpakete zu verifizieren. In diesem Fall erfolgt die Verifizierung auf der Empfangsseite und nicht auf der Senderseite.The verification information can either directly contain information about whether the data packets received on the receiving side are manipulated or incorrect. In this case, the verification is done on the sending side and the receiving side is only informed accordingly. Alternatively, the verification information can also only contain information that can be used on the receiving side to verify the received data packets. In this case, the verification is done on the receiving side and not on the sender side.

Gemäß einer Ausführungsform ist die Sendeeinheit dazu eingerichtet, mit den Datenpaketen eine Identifizierungsinformation des Datenblocks und/oder der Datenpakete zu versenden. Eine solche Identifizierungsinformation kann beispielsweise ein Index sein, der die Datenpakete oder den Datenblock eindeutig identifiziert.According to one embodiment, the transmission unit is set up to send identification information for the data block and/or the data packets with the data packets. Such identification information can, for example, be an index that uniquely identifies the data packets or the data block.

Die Verifizierungsanfrage der Empfangseinheit kann dann die Identifizierungsinformationen der empfangenen Datenpakete enthalten. Die Sendeeinheit ist gemäß dieser Ausführungsform dazu eingerichtet, basierend auf der Verifizierungsanfrage zu verifizieren, ob die gesendeten Datenpakete den empfangenen Datenpaketen entsprechen. Die Sendeeinheit kann hier bestimmen, ob von den gesendeten Datenpakete auf der Empfangsseite alle Datenpakete erhalten wurden.The verification request from the receiving unit can then contain the identification information of the received data packets. According to this embodiment, the transmission unit is set up to verify, based on the verification request, whether the transmitted data packets correspond to the received data packets. The sending unit can determine here whether all data packets from the sent data packets have been received on the receiving side.

Auf diese Weise kann sich zum einen die Verifizierungsinformation auf die tatsächlich empfangenen Datenpakete beziehen, wodurch die Erzeugung unnötiger Verifizierungsinformationen vermieden wird. Insbesondere kann die Sendeeinheit die Verifizierungsinformation als eine einzige Gesamtverifizierungsinformation für alle identifizierten, d.h. tatsächlich empfangenen, Datenpakete erzeugen. Auf der Empfangsseite kann diese Verifizierungsinformation dann verwendet werden, um die tatsächlich empfangenen Datenpakete unter Verwendung der Gesamtverifizierungsinformation zu verifizieren. Hierdurch besteht eine Toleranz in der Verifizierung gegenüber einem Verlust von einzelnen Datenpaketen, da die Verifizierung nur über die tatsächlich empfangenen Datenpakete durchgeführt wird. Sofern einige Datenpakete nicht empfangen wurden, ist somit trotzdem eine Verifizierung möglich.In this way, on the one hand, the verification information can relate to the actually received data packets, which avoids the generation of unnecessary verification information. In particular, the sending unit can generate the verification information as a single overall verification information for all identified, i.e. actually received, data packets. This verification information can then be used on the receiving side to verify the actually received data packets using the overall verification information. As a result, there is a tolerance in the verification against the loss of individual data packets, since the verification is only carried out using the data packets that are actually received. If some data packets were not received, verification is still possible.

Um zusätzlich zu einer Toleranz gegenüber dem Verlust einzelner Datenpakete auch eine Toleranz gegenüber dem Verlust von Verifizierungsanfragen und Verifizierungsantworten zu realisieren, kann in einer weiteren Ausführungsform der Bereich von Datenpaketen, der durch einen Austausch einer Verifizierungsanfrage und Verifizierungsantwort abgedeckt wird, mit dem Bereich der folgenden, insbesondere zwei, Verifizierungsanfragen und Verifizierungsantworten überlappt werden. Das bedeutet, dass mehrere Verifizierungsanfragen und die zugehörigen Verifizierungsantworten sich auf, zumindest teilweise, dieselben Datenpakete beziehen. Auf diese Weise können bis zu zwei Verifizierungsanfragen und -antworten verloren gehen, ohne dass die Vollständigkeit der Verifizierung der Datenpakete gefährdet wird.In order to implement a tolerance for the loss of verification requests and verification responses in addition to a tolerance for the loss of individual data packets, in a further embodiment the range of data packets that is covered by an exchange of a verification request and verification response can be combined with the range of the following, two in particular, verification requests and verification responses are overlapped. This means that multiple verification requests and the associated verification responses relate, at least in part, to the same data packets. In this way, up to two verification requests and responses can be lost without jeopardizing the completeness of the verification of the data packets.

Des Weiteren kann die Sendeeinheit basierend auf den Identifizierungsinformationen entscheiden, ob Datenpakete erneut gesendet werden sollen. Dies erhöht die Sicherheit, da Übertragungsfehler bzw. Übertragungsausfälle erkannt werden.Furthermore, based on the identification information, the sending unit can decide whether data packets should be sent again. This increases security since transmission errors or transmission failures are detected.

Gemäß einer weiteren Ausführungsform enthält die Verifizierungsanfrage eine Authentifizierungsinformation, z.B. eine Prüfsumme, der empfangenen Datenpakete. Die Sendeeinheit kann in dieser Ausführungsform dazu eingerichtet sein, basierend auf den Identifizierungsinformationen in der Verifizierungsanfrage eine Authentifizierungsinformation der durch die Identifizierungsinformationen angegebenen Datenpakete zu erzeugen. Die Sendeeinheit kann des Weiteren basierend auf der empfangenen Authentifizierungsinformation sowie der selbst erzeugten Authentifizierungsinformation verifizieren, ob die gesendeten Datenpakete den empfangenen Datenpaketen entsprechen.According to a further embodiment, the verification request contains authentication information, e.g. a checksum, of the received data packets. In this embodiment, the transmission unit can be set up to generate authentication information for the data packets indicated by the identification information based on the identification information in the verification request. Furthermore, based on the received authentication information and the self-generated authentication information, the transmission unit can verify whether the transmitted data packets correspond to the received data packets.

Bei der Authentifizierungsinformation kann es sich beispielsweise um eine Prüfsumme oder einen Hash-Wert der durch die Identifizierungsinformation angegebenen Datenpakete handeln. Eine weitere Möglichkeit der Authentifizierungsinformation ist ein Message Authentication Code. Weitere Möglichkeiten, die einen eindeutigen Rückschluss auf eine Veränderung oder Verfälschung der Signalnachrichten ermöglichen, sind ebenfalls möglich. Dazu zählen z.B. CRC, Min/Max-Werte, Mittelwerte, mittlere Steigung (Trend), aber auch eine Auflistung aller Signale.The authentication information can be, for example, a checksum or a hash value of the data packets indicated by the identification information. Another option for authentication information is a message authentication code. Further Possibilities that allow a clear conclusion about a change or falsification of the signal messages are also possible. These include, for example, CRC, min/max values, mean values, mean gradient (trend), but also a list of all signals.

Wird durch die Sendeeinheit aufgrund der empfangenen und der erzeugten Authentifizierungsinformation eine Manipulation oder eine Verfälschung aufgrund eines Übertragungsfehlers der Daten erkannt, kann die Verifizierungsantwort diese Information als ein Ergebnis des Vergleichs der empfangenen und der erzeugten Authentifizierungsinformation enthalten. Des Weiteren kann die Sendeeinheit basierend darauf die bereits gesendeten Daten erneut übertragen. Dies kann auch auf Aufforderung durch die Empfangseinheit erfolgen.If the transmission unit detects manipulation or falsification due to a transmission error in the data based on the received and generated authentication information, the verification response can contain this information as a result of the comparison of the received and generated authentication information. Furthermore, based on this, the transmission unit can retransmit the data that has already been transmitted. This can also be done at the request of the receiving unit.

Des Weiteren kann die Verifizierungsantwort die erzeugte Authentifizierungsinformation enthalten. In diesem Fall kann die Empfangseinheit selbst die Verifizierung durchführen, indem die auf der Empfangsseite und auf der Senderseite erzeugten Authentifizierungsinformationen durch die Empfangseinheit verglichen werden.Furthermore, the verification response may contain the generated authentication information. In this case, the receiving unit itself can perform the verification by comparing the authentication information generated on the receiving side and the sender side by the receiving unit.

Gemäß einer weiteren Ausführungsform enthält die Verifizierungsanfrage einen Zufallswert. Die Sendeeinheit kann hier dazu eingerichtet sein, die Verifizierungsantwort basierend auf dem Zufallswert zu erzeugen. Insbesondere kann die Authentifizierungsinformation nicht nur unter Verwendung der identifizierten Datenpakete, z.B. als ein Message Authentication Code dieser Datenpakete, sondern zusätzlich als eine Funktion des Zufallswert erzeugt werden. Dies erhöht die Sicherheit weiter, da die Authentifizierungsinformation nicht bereits vorab, ohne die Verifizierungsanfrage mit dem Zufallswert, erzeugt werden kann. Somit kann sichergestellt werden, dass nur eine Verifizierungsantwort tatsächlich in Antwort auf eine Verifizierungsanfrage erzeugt wird. Eine Manipulation der Verifizierungsantwort bzw. der vorherigen Datenpakete und der Verifizierungsantwort kann somit ausgeschlossen werden.According to a further embodiment, the verification request contains a random value. The sending unit can be set up here to generate the verification response based on the random value. In particular, the authentication information can be generated not only using the identified data packets, e.g. as a message authentication code of these data packets, but also as a function of the random value. This further increases security since the authentication information cannot be generated in advance without the verification request with the random value. It can thus be ensured that only one verification response is actually generated in response to a verification request. A manipulation of the verification response or the previous data packets and the verification response can thus be ruled out.

Gemäß einem weiteren Aspekt wird eine Empfangseinheit zum Empfangen von Datenpaketen, die Nutzinformationen enthalten, vorgeschlagen. Die Empfangseinheit ist dazu eingerichtet, mehrere Datenpakete eines Datenblocks aufeinanderfolgend von einer Sendeeinheit, beispielsweise der oben beschriebenen Sendeeinheit, zu empfangen und zur Verwendung weiterzuleiten. Die Empfangseinheit kann die empfangenen Datenpakete an beliebige Einheiten innerhalb eines Gesamtsystems, insbesondere einem Fahrzeug, weiterleiten. Insbesondere können die Datenpakete, insbesondere die darin enthaltene Nutzinformationen, dazu dienen, bestimmte Regelungen in einem Fahrzeug vorzunehmen bzw. Regelkreise zu steuern.According to a further aspect, a receiving unit for receiving data packets containing useful information is proposed. The receiving unit is set up to receive a number of data packets of a data block in succession from a transmitting unit, for example the transmitting unit described above, and forward them for use. The receiving unit can forward the received data packets to any units within an overall system, in particular a vehicle. In particular, the data packets, in particular the useful information contained therein, can be used to carry out specific regulations in a vehicle or to control control loops.

Um eine Manipulation oder eine Verfälschung aufgrund eines Übertragungsfehlers der Datenpakete bzw. der Nutzinformationen erkennen zu können, ist die Empfangseinheit dazu eingerichtet, nach Empfang von mehreren Datenpaketen eine Verifizierungsanfrage an die Sendeeinheit zu übermitteln.In order to be able to detect manipulation or corruption due to a transmission error in the data packets or in the useful information, the receiving unit is set up to transmit a verification request to the transmitting unit after it has received a number of data packets.

Die Anzahl der Datenpakete, nach deren Empfang eine solche Verifizierungsanfrage versendet wird, oder ein Zeitraum, nach welchem eine Verifizierungsanfrage versendet wird, kann basierend auf einer akzeptablen Fehlertoleranzzeit bestimmt werden. Es kann dabei ermittelt werden, wie lange ein fehlerhafter bzw. manipulierter Wert durch das System (bzw. die Einheiten, die die Datenpakete verwenden) akzeptiert werden kann, bevor ein unsicherer oder inakzeptabler Zustand eintritt. Dies kann sich je nach Inhalt der Datenpakete bzw. betroffenen Regelkreise unterscheiden.The number of data packets upon receipt of which such a verification request is sent, or a period of time after which a verification request is sent, can be determined based on an acceptable error tolerance time. It can be determined how long an incorrect or manipulated value can be accepted by the system (or the units that use the data packets) before an unsafe or unacceptable state occurs. This can differ depending on the content of the data packets or the affected control loops.

Des Weiteren kann die Anzahl oder der Zeitraum dynamisch angepasst werden. Beispielsweise kann abhängig von der Fahrsituation die Fehlertoleranzzeit variieren. In diesem Fall kann auch die Anzahl oder der Zeitraum von der Empfangseinheit dynamisch verändert werden.Furthermore, the number or the period can be adjusted dynamically. For example, the error tolerance time can vary depending on the driving situation. In this case, the number or the period of time can also be changed dynamically by the receiving unit.

Die Verifizierungsanfrage definiert einen zu verifizierenden Datenblock. Hierbei kann entweder ein kompletter Datenblock definiert werden oder alternativ einzelne Datenpakete des Datenblocks. Da die Verifizierungsinformation nur über die empfangenen Datenpakete, die in der Verifizierungsanfrage enthalten sind, erzeugt wird, kann sichergestellt werden, dass die tatsächlich empfangenen Datenpakete eines Datenblocks verifiziert werden.The verification request defines a data block to be verified. Here either a complete data block can be defined or alternatively individual data packets of the data block. Since the verification information is only generated via the received data packets contained in the verification request, it can be ensured that the actually received data packets of a data block are verified.

Nachdem die Sendeeinheit eine Verifizierungsantwort in Antwort auf die Verifizierungsanfrage erzeugt hat, wie oben beschrieben ist, wird diese Verifizierungsantwort von der Empfangseinheit empfangen und die Empfangseinheit kann unter Verwendung der enthaltenen Verifizierungsinformation die bereits empfangenen und zur Verwendung weitergeleiteten Datenpakete verifizieren.After the sending unit has generated a verification reply in response to the verification request as described above, this verification reply is received by the receiving unit and the receiving unit can, using the included verification information, verify the data packets already received and forwarded for use.

Die Empfangseinheit kann dann die empfangene Verifizierungsantwort bzw. die darin enthaltene Verifizierungsinformation verwenden, um die bereits empfangenen und zur Verwendung weitergeleiteten Datenpakete zu verifizieren und basierend auf einem Ergebnis der Verifizierung weitere Schritte durchzuführen.The receiving unit can then use the verification response received or the verification information contained therein in order to verify the data packets that have already been received and forwarded for use and to carry out further steps based on a result of the verification.

Der Zeitpunkt des Empfangs der Verifizierungsantwort und damit der Verifizierung der empfangenen Datenpakete und der Zeitpunkt des Empfangs der Datenpakete ist daher unabhängig voneinander, wie auch oben in Zusammenhang mit dem Versenden beschrieben ist. Die empfangenen Datenpakete können daher direkt zur Verwendung weitergeleitet werden, unabhängig von dem Empfang der späteren Verifizierungsantwort.The time of receipt of the verification response and thus the verification of the emp The data packets caught and the time at which the data packets are received are therefore independent of one another, as is also described above in connection with the sending. The received data packets can therefore be forwarded directly for use, independently of the later verification response being received.

Dies hat im Vergleich zu bisherigen Systemen den Vorteil, dass zum einen die Verarbeitungslatenz reduziert wird, da die Datenpakete mit Nutzinformationen bereits vor ihrer Verifizierung zur Verwendung weitergeleitet werden können, und hat des Weiteren den Vorteil, dass lediglich eine einzige Verifizierungsantwort für mehrere Datenpakete empfangen werden muss, wodurch der Datenverkehr reduziert werden kann. Die Datenpakete können dabei insbesondere über einen Datenbus, beispielsweise einen CAN-Bus oder ähnliches, in einem Kraftfahrzeug empfangen werden. Die Nutzinformationen können Informationen sein, die dazu verwendet werden, um verschiedene Einheiten oder Regelkreise innerhalb eines Kraftfahrzeugs zu steuern. Bei einer solchen Regelungseinheit kann es sich beispielsweise um einen elektrischen Antrieb oder eine Lenkungsansteuerung handeln.Compared to previous systems, this has the advantage that, on the one hand, the processing latency is reduced, since the data packets with payload information can be forwarded for use before they are verified, and, on the other hand, it has the advantage that only a single verification response is received for several data packets must, which can reduce data traffic. The data packets can be received in a motor vehicle in particular via a data bus, for example a CAN bus or the like. The useful information can be information that is used to control various units or control circuits within a motor vehicle. Such a control unit can be, for example, an electric drive or a steering control.

Wie bereits oben erläutert, können die Datenpakete mit Nutzinformationen und die Verifizierungsanfrage und die Verifizierungsantwort auf verschiedenen Datenbussen übertragen werden.As already explained above, the data packets with user information and the verification request and the verification response can be transmitted on different data buses.

Gemäß einer Ausführungsform ist die Empfangseinheit dazu eingerichtet, als weiteren Schritt eine Einheit, die die Datenpakete verwendet, über das Ergebnis der Verifizierung zu informieren. Wird durch die Empfangseinheit eine Manipulation oder eine Verfälschung aufgrund eines Übertragungsfehlers der Daten erkannt, kann die Empfangseinheit die Einheit, die die Datenpakete verwendet, über eine Manipulation oder eine Verfälschung aufgrund eines Übertragungsfehlers der Daten informieren. In der Einheit können dann entsprechende Maßnahmen ergriffen werden, wie beispielsweise ein sicherer Zustand eingenommen werden. Des Weiteren kann die Empfangseinheit auch eine dritte Einheit (z.B. eine Abschalteinrichtung) über eine Manipulation oder eine Verfälschung aufgrund eines Übertragungsfehlers der Daten informieren, um damit den Wechsel in den sicheren Zustand einzuleiten.According to one embodiment, the receiving unit is set up to inform a unit that uses the data packets about the result of the verification as a further step. If the receiving unit detects manipulation or corruption due to a transmission error in the data, the receiving unit can inform the unit that uses the data packets about manipulation or corruption due to a transmission error in the data. Appropriate measures can then be taken in the unit, for example a safe state can be assumed. Furthermore, the receiving unit can also inform a third unit (e.g. a shutdown device) about manipulation or corruption due to a transmission error in the data in order to initiate the change to the safe state.

Die Empfangseinheit sowie die weitere Einheit, die die Datenpakete verwendet, oder die dritte Einheit können als physikalisch getrennte Einheiten implementiert sein. Alternativ können zwei oder mehr Einheiten in einer einzigen Einheit integriert sein und lediglich als logisch getrennte Komponenten vorhanden sein.The receiving unit and the further unit that uses the data packets or the third unit can be implemented as physically separate units. Alternatively, two or more units may be integrated into a single unit and merely exist as logically separate components.

Des Weiteren kann die Empfangseinheit die Sendeeinheit nach einer erkannten Manipulation oder Verfälschung aufgrund eines Übertragungsfehlers der Daten auffordern, die manipulierten oder verfälschten Daten erneut zu senden. Die Sendeeinheit kann basierend darauf die bereits gesendeten Daten erneut übertragen.Furthermore, after a detected manipulation or corruption due to a transmission error in the data, the receiving unit can request the transmitting unit to resend the manipulated or corrupted data. Based on this, the transmission unit can retransmit the data that has already been transmitted.

Gemäß einer weiteren Ausführungsform ist die Empfangseinheit dazu eingerichtet, Identifizierungsinformationen von empfangenen Datenpaketen zu bestimmen und die Verifizierungsanfrage mit den Identifizierungsinformationen der empfangenen Datenpakete zu erzeugen. Da hier die Sendeeinheit durch die Empfangseinheit darüber informiert wird, welche Datenpakete tatsächlich empfangen wurden, kann die Sendeeinheit die Verifizierung konkret auf die tatsächlich empfangenen Datenpakete richten. Dies erhöht die Sicherheit des Gesamtsystems weiter, da nur eine Verifizierung von tatsächlich empfangenen Datenpaketen erfolgt. Auch wird dadurch der Datenverkehr reduziert, da weniger unnötige Informationen versendet werden.According to a further embodiment, the receiving unit is set up to determine identification information from received data packets and to generate the verification request with the identification information from the received data packets. Since the sending unit is informed here by the receiving unit as to which data packets were actually received, the sending unit can direct the verification specifically to the data packets actually received. This further increases the security of the overall system, since only data packets actually received are verified. This also reduces data traffic, since less unnecessary information is sent.

Gemäß einem weiteren Aspekt wird ein System zum Senden und Empfangen von Datenpaketen, insbesondere in einem Kraftfahrzeug, vorgeschlagen, wobei das System eine Sendeeinheit, wie sie oben beschrieben ist, und eine Empfangseinheit, wie sie oben beschrieben ist, aufweist.According to a further aspect, a system for sending and receiving data packets, in particular in a motor vehicle, is proposed, the system having a sending unit as described above and a receiving unit as described above.

Bei dem System kann es sich beispielsweise um ein Kraftfahrzeug und/oder einen Regelkreis eines Kraftfahrzeugs handeln. Ein solcher Regelkreis kann beispielsweise ein elektrischer Antrieb oder eine Lenkungssteuerung sein. Bei einem elektrischen Antrieb ist beispielsweise ein Ziel, eine komfortable Regelung durch eine Reduktion von Antriebsstrangschwingungen durchzuführen. Eine solche Regelung erfordert eine kleine Zykluszeit von wenigen Millisekunden (1-5 ms). Eine Zykluszeit bedeutet in diesem Zusammenhang, in welchen Abständen die Datenpakete mit Nutzinformationen gesendet werden. Eine gefährliche Fahrzeugreaktion kommt erst nach einer längeren fehlerhaften Ansteuerung zustande, insbesondere nach 20-100 ms, sodass erst nach einer bestimmten Anzahl von Datenpaketen mit Nutzinformationen eine Authentifizierung der Datenpakete erforderlich ist. Ein anderes Beispiel ist die Lenkungsansteuerung. Hier ist eine Regelung so auszulegen, dass das haptische Lenkgefühl für den Benutzer angenehm ist. Hierzu ist eine kleine Zykluszeit, d. h. ein Abstand zwischen den Datenpaketen, von 1-5 ms erforderlich. Eine gefährliche Fahrzeugreaktion, d. h. eine Reaktion, die zu einem unsicheren Zustand des Fahrzeugs führen würde, würde bei einer fehlerhaften Ansteuerung der Lenkung, beispielsweise aufgrund einer Manipulation oder Verfälschung von Daten, erst nach 20-50 ms erfolgen. Auch hier ist somit der Nutzdatenzyklus, d. h. der Abstand zwischen den Datenpaketen mit Nutzinformationen, und die Fehlertoleranzzeit, d. h. die Zeit, ab der eine Authentifizierung, d. h. eine Erkennung einer Manipulation, zwingend erforderlich ist, deutlich unterschiedlich.The system can be, for example, a motor vehicle and/or a control loop of a motor vehicle. Such a control circuit can be, for example, an electric drive or a steering control. In the case of an electric drive, for example, one goal is to carry out comfortable control by reducing drive train vibrations. Such a control requires a small cycle time of a few milliseconds (1-5 ms). In this context, a cycle time means the intervals at which the data packets with useful information are sent. A dangerous vehicle reaction only comes about after a longer incorrect activation, in particular after 20-100 ms, so that an authentication of the data packets is only necessary after a certain number of data packets with useful information. Another example is the steering control. Here, a regulation is to be designed in such a way that the haptic steering feel is pleasant for the user. This requires a short cycle time, ie a gap between the data packets of 1-5 ms. A dangerous vehicle reaction, ie a reaction that would lead to an unsafe state of the vehicle, would only take place after 20-50 ms if the steering were activated incorrectly, for example due to manipulation or falsification of data. Here, too, the user data cycle is ie the distance between the data packets with useful information and the error tolerance time, ie the time after which authentication, ie detection of manipulation, is absolutely necessary, differ significantly.

Dieser Unterschied kann verwendet werden, um sowohl auf der Senderseite als auch der Empfangsseite festzulegen, wie viele, oder über welchen Zeitraum, Datenpakete versendet, empfangen und verwendet werden können, bevor eine Verifizierung erforderlich ist und daher eine Verifizierungsantwort angefragt, erzeugt, versendet und empfangen werden muss.This difference can be used to specify on both the sender side and the receiver side how many, or over what period of time, data packets can be sent, received and used before verification is required and therefore a verification response is requested, generated, sent and received must become.

Durch das hier vorgeschlagene System mit einer Sendeeinheit und einer Empfangseinheit kann eine Übertragung von Datenpaketen mit Nutzinformationen, bzw. deren Verifizierung, optimiert werden, sodass die Nutzdaten übertragen werden können, ohne dass jedes einzelne Datenpaket abgesichert werden muss. Die Verifizierungsantwort enthält beispielsweise eine Prüfsumme der Nutzdaten als Verifizierungsinformation und überträgt diese in einer separaten Nachricht. Durch diese Verifizierungsinformation können sicherheitsrelevante Verfälschungen bzw. Manipulationen der Nutzdaten oder deren Datenpaketen erkannt und entsprechende Maßnahmen beim Empfänger ausgelöst werden. Da die Verifizierungsantwort lediglich zu einer bestimmten Anzahl von Datenpaketen oder für einen bestimmten Zeitraum übertragen wird, wird die Datenlast auf dem Bus reduziert.The system proposed here with a transmitter unit and a receiver unit can be used to optimize the transmission of data packets with user information, or their verification, so that the user data can be transmitted without each individual data packet having to be secured. The verification response contains, for example, a checksum of the user data as verification information and transmits this in a separate message. This verification information can be used to detect security-relevant falsifications or manipulations of the user data or their data packets and to trigger appropriate measures at the recipient. Since the verification response is only transmitted for a certain number of data packets or for a certain period of time, the data load on the bus is reduced.

Gemäß einem weiteren Aspekt wird ein Verfahren zum Senden von Datenpaketen, die Nutzinformationen enthalten, vorgeschlagen, wobei mehrere Datenpakete eines Datenblocks aufeinanderfolgend versendet werden. Das Verfahren weist die folgenden Schritte auf: Erhalten einer Verifizierungsanfrage, wobei die Verifizierungsanfrage einen zu verifizierenden Datenblock definiert, und Erzeugen und Versenden einer Verifizierungsantwort mit einer Verifizierungsinformation des definierten Datenblocks.According to a further aspect, a method for sending data packets containing useful information is proposed, with a plurality of data packets of a data block being sent in succession. The method has the following steps: receiving a verification request, the verification request defining a data block to be verified, and generating and sending a verification response with verification information of the defined data block.

Gemäß einem weiteren Aspekt wird ein Verfahren zum Empfangen von Datenpaketen, die Nutzinformationen enthalten, vorgeschlagen, wobei mehrere Datenpakete eines Datenblocks aufeinanderfolgend empfangen und zur Verwendung weitergeleitet werden. Das Verfahren weist die folgenden Schritte auf: Erzeugen einer Verifizierungsanfrage, wobei die Verifizierungsanfrage einen zu verifizierenden Datenblock definiert, Empfangen einer Verifizierungsantwort in Antwort auf die Verifizierungsanfrage, unter Verwendung der in der Verifizierungsantwort enthaltenen Verifizierungsinformation, Verifizieren der bereits empfangenen und zur Verwendung weitergeleiteten Datenpakete und Durchführen weiterer Schritte basierend auf einem Ergebnis der Verifizierung.According to a further aspect, a method for receiving data packets containing useful information is proposed, multiple data packets of a data block being received in succession and forwarded for use. The method has the following steps: generating a verification request, wherein the verification request defines a block of data to be verified, receiving a verification response in response to the verification request, using the verification information contained in the verification response, verifying the data packets already received and forwarded for use, and performing further steps based on a result of the verification.

Die für die vorgeschlagene Sendeeinheit bzw. Empfangseinheit beschriebenen Ausführungsformen und Merkmale gelten für die vorgeschlagenen Verfahren entsprechend.The embodiments and features described for the proposed transmitter unit and receiver unit apply correspondingly to the proposed method.

Weiterhin wird ein Computerprogrammprodukt vorgeschlagen, welches einen Programmcode aufweist, der dazu ausgebildet ist, auf einem Computer die Durchführung des wie oben erläuterten Verfahrens zu veranlassen.Furthermore, a computer program product is proposed which has a program code which is designed to cause the method explained above to be carried out on a computer.

Ein Computerprogrammprodukt, wie z.B. ein Computerprogramm-Mittel, kann beispielsweise als Speichermedium, wie z.B. Speicherkarte, USB-Stick, CD-ROM, DVD, oder auch in Form einer herunterladbaren Datei von einem Server in einem Netzwerk bereitgestellt oder geliefert werden. Dies kann zum Beispiel in einem drahtlosen Kommunikationsnetzwerk durch die Übertragung einer entsprechenden Datei mit dem Computerprogrammprodukt oder dem Computerprogramm-Mittel erfolgen.A computer program product, such as a computer program means, can be made available or supplied by a server in a network, for example, as a storage medium such as a memory card, USB stick, CD-ROM, DVD, or in the form of a downloadable file. This can be done, for example, in a wireless communication network by transferring a corresponding file with the computer program product or the computer program means.

Weitere mögliche Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Merkmale oder Ausführungsformen. Dabei wird der Fachmann auch Einzelaspekte als Verbesserungen oder Ergänzungen zu der jeweiligen Grundform der Erfindung hinzufügen.Further possible implementations of the invention also include combinations of features or embodiments described above or below with regard to the exemplary embodiments that are not explicitly mentioned. The person skilled in the art will also add individual aspects as improvements or additions to the respective basic form of the invention.

Weitere Vorteile und vorteilhafte Ausführungsformen sind in der Beschreibung, den Zeichnungen und den Ansprüchen angegeben. Dabei sind insbesondere die in der Beschreibung und in den Zeichnungen angegebenen Kombinationen der Merkmale rein exemplarisch, so dass die Merkmale auch einzeln oder anders kombiniert vorliegen können.Further advantages and advantageous embodiments are specified in the description, the drawings and the claims. In particular, the combinations of features specified in the description and in the drawings are purely exemplary, so that the features can also be present individually or in a different combination.

Im Folgenden soll die Erfindung anhand von in den Zeichnungen dargestellten Ausführungsbeispielen näher beschrieben werden. Dabei sind die Ausführungsbeispiele und die in den Ausführungsbeispielen gezeigten Kombinationen rein exemplarisch und sollen nicht den Schutzbereich der Erfindung festlegen. Dieser wird allein durch die anhängigen Ansprüche definiert.The invention is to be described in more detail below with reference to exemplary embodiments illustrated in the drawings. The exemplary embodiments and the combinations shown in the exemplary embodiments are purely exemplary and are not intended to define the scope of protection of the invention. This is defined solely by the appended claims.

Es zeigen:

  • 1: ein schematisches Blockdiagramm eines Systems zum Senden und Empfangen von Datenpaketen, und
  • 2: ein Flussdiagramm der übertragenen Daten in dem System von 1.
Show it:
  • 1 : a schematic block diagram of a system for sending and receiving data packets, and
  • 2 : a flow chart of the transmitted data in the system of 1 .

Im Folgenden werden gleiche oder funktionell gleichwirkende Elemente mit denselben Bezugszeichen gekennzeichnet.Elements that are identical or have the same functional effect are identified below with the same reference symbols.

1 zeigt ein System 1 zum Senden und Empfangen von Datenpaketen. 1 shows a system 1 for sending and receiving data packets.

Bei dem System 1 kann es sich beispielsweise um einen Regelkreis in einem Kraftfahrzeug handeln. Ein solcher Regelkreis kann zum Beispiel eine Regelung eines elektrischen Antriebs oder eine Lenkungsansteuerung sein. Andere Regelkreise sind ebenfalls möglich.The system 1 can be a control circuit in a motor vehicle, for example. Such a control loop can be, for example, a regulation of an electric drive or a steering control. Other control loops are also possible.

Das System 1 weist eine Sendeeinheit 2 und eine Empfangseinheit 4 auf, um für den Regelkreis erforderliche Daten über einen Datenbus 6, beispielsweise einen CAN-Bus, übertragen zu können. Die Kommunikation zwischen der Sendeeinheit 2 und der Empfangseinheit 4 ist in 2 gezeigt. Hier werden Datenpakete D1-D5 eines Datenblocks von der Sendeeinheit 2 an die Empfangseinheit 4 gesendet. Dies wird für beliebig viele Datenblocks wiederholt (nicht dargestellt).The system 1 has a transmitter unit 2 and a receiver unit 4 in order to be able to transmit data required for the control loop via a data bus 6, for example a CAN bus. The communication between the transmitter unit 2 and the receiver unit 4 is in 2 shown. Here, data packets D1-D5 of a data block are sent from the transmitting unit 2 to the receiving unit 4. This is repeated for any number of data blocks (not shown).

Um sicherzustellen, dass die übertragenen Daten nicht manipuliert oder aufgrund eines Übertragungsfehlers verfälscht sind, und um damit die Sicherheit des Systems 1 zu erhöhen, können Verifizierungs- oder Authentifizierungsinformationen der übertragenen Datenpakete D1-D5 von der Sendeeinheit 2 an die Empfangseinheit 4 übertragen werden.In order to ensure that the transmitted data is not manipulated or falsified due to a transmission error, and thus to increase the security of the system 1, verification or authentication information of the transmitted data packets D1-D5 can be transmitted from the transmitting unit 2 to the receiving unit 4.

Allerdings erhöht sich durch eine häufige Übertragung von Verifizierungs- oder Authentifizierungsinformationen, insbesondere durch Übertragung der Verifizierungs- oder Authentifizierungsinformationen mit jedem Datenpaket D1-D5, der Datenverkehr auf dem Datenbus 6 und damit die Latenz. Durch die Berechnung und Entschlüsselung der Verifizierungs- oder Authentifizierungsinformationen entsteht eine zusätzliche Rechenlast auf der Senderseite 2 und der Empfangsseite 4. Das erhöht ebenfalls die Signallaufzeiten, d. h. Latenzen, die insbesondere bei schnellen Regelkreisen zu einer regelungstechnisch schwer zu beherrschenden Signallaufzeit bzw. Totzeit führen.However, frequent transmission of verification or authentication information, in particular transmission of the verification or authentication information with each data packet D1-D5, increases the data traffic on the data bus 6 and thus the latency. The calculation and decryption of the verification or authentication information creates an additional computing load on the sender side 2 and the receiver side 4. This also increases the signal propagation times, i. H. Latencies, which lead to a signal propagation time or dead time that is difficult to control, particularly in the case of fast control loops.

Um nun zum einen eine Erkennung von Manipulationen von Datenpaketen D1-D5, die zur Regelung solche Regelkreise verwendet werden, zu verbessern als auch um den Datenverkehr auf dem Kommunikationsbus 6 in dem System 1 zu verringern, ist die Empfangseinheit 4 dazu eingerichtet, nach einer bestimmten Anzahl an Datenpaketen D1-D5, die Nutzinformationen zur Regelung enthalten, oder nach einem bestimmten Zeitraum, in dem Datenpakete empfangen wurden, eine Verifizierungsanfrage VA (2) an die Sendeeinheit 2 zu senden. Eine solche Verifizierungsanfrage VA fordert eine Verifizierung bzw. Authentifizierung der empfangenen Datenpakete an.In order to firstly improve detection of manipulations of data packets D1-D5, which are used to control such control circuits, and to reduce data traffic on the communication bus 6 in the system 1, the receiving unit 4 is set up to after a specific Number of data packets D1-D5 containing useful information for regulation, or after a certain period of time in which data packets were received, a verification request VA ( 2 ) to transmit unit 2. Such a verification request VA requests a verification or authentication of the received data packets.

Die Verifizierungsanfrage VA kann eine Identifizierungsinformation, z.B. einen Index, der empfangenen Datenpakete D1-D5 enthalten. Auf diese Weise kann der Sendeeinheit 2 mitgeteilt werden, welche Datenpakete D1-D5 tatsächlich empfangen wurden, und die Sendeeinheit 2 kann für diese empfangenen Datenpakete D1-D5 eine Verifizierung durchführen.The verification request VA can contain identification information, e.g. an index, of the received data packets D1-D5. In this way, the transmission unit 2 can be informed of which data packets D1-D5 were actually received, and the transmission unit 2 can carry out a verification for these received data packets D1-D5.

Des Weiteren kann die Verifizierungsanfrage VA eine Authentifizierungsinformation der empfangenen Datenpakete D1-D5 enthalten. Das bedeutet, dass die Empfangseinheit 4 eine Authentifizierungsinformation der empfangenen Datenpakete D1-D5 erzeugt, beispielsweise eine Prüfsumme oder einen Hashwert, und dieses Ergebnis mit der Verifizierungsanfrage VA an die Sendeeinheit 2 überträgt. Die Authentifizierungsinformation kann zusätzlich unter Verwendung einer Zufallszahl erzeugt werden, die der Sendeeinheit 2 entweder ebenfalls mitgeteilt wird, oder die sowohl auf der Empfangsseite 4 als auch auf der Senderseite 2 unter Verwendung des gleichen Prinzips (z.B. ein bekannter Schlüssel etc.) ausgewählt wird.Furthermore, the verification request VA can contain authentication information for the received data packets D1-D5. This means that the receiving unit 4 generates authentication information for the received data packets D1-D5, for example a checksum or a hash value, and transmits this result to the transmitting unit 2 with the verification request VA. The authentication information can also be generated using a random number, which is either also communicated to the transmitter unit 2, or which is selected both on the receiver side 4 and on the transmitter side 2 using the same principle (e.g. a known key, etc.).

Die Sendeeinheit 2 kann anschließend basierend auf den empfangenen Identifizierungsinformationen ebenfalls eine Authentifizierungsinformation der identifizierten Datenpakete D1-D5 erzeugen. Die Sendeeinheit 2 kann dann eine Verifizierung durchführen, indem sie die Authentifizierungsinformation, die sie von der Empfangseinheit 4 empfangen hat, und die selbst erzeugte Authentifizierungsinformation vergleicht. Das Ergebnis dieses Vergleichs kann als Verifizierungsinformation in einer Verifizierungsantwort VR an die Empfangseinheit 4 gesendet werden.The transmission unit 2 can then likewise generate authentication information for the identified data packets D1-D5 based on the identification information received. The sending unit 2 can then carry out a verification by comparing the authentication information which it has received from the receiving unit 4 and the self-generated authentication information. The result of this comparison can be sent to the receiving unit 4 as verification information in a verification reply VR.

Alternativ kann die Sendeeinheit 2 mit der Verifizierungsantwort VR die erzeugte Authentifizierungsinformation an die Empfangseinheit 4 senden. In diesem Fall kann die Empfangseinheit 4 selbst den Vergleich der beiden Authentifizierungsinformationen und die Verifizierung durchführen.Alternatively, the sending unit 2 can send the generated authentication information to the receiving unit 4 with the verification response VR. In this case, the receiving unit 4 can carry out the comparison of the two pieces of authentication information and the verification itself.

Das Senden einer Verifizierungsanfrage VA und einer entsprechenden Verifizierungsantwort VR mit einer Verifizierung der Datenpakete hat den Vorteil, dass nicht eine einzelne Verifizierungsinformation für jedes Datenpaket gesendet werden muss, sondern lediglich eine einzige Verifizierungsantwort VR mit den Verifizierungs-bzw. Authentifizierungsinformationen für mehrere Datenpakete. Durch die in der Verifizierungsantwort VR enthaltenen Authentifizierungsinformationen (oder alternativ nur der Verifizierungsinformation) kann dann eine Manipulation oder Verfälschung der bestimmten Anzahl von Datenpaketen D1-D5 oder der Datenpakete, die in dem bestimmten Zeitraum empfangen wurden, erkannt werden. Dies reduziert die Anzahl an Daten auf dem Kommunikationsbus 6.Sending a verification request VA and a corresponding verification response VR with a verification of the data packets has the advantage that it is not necessary to send individual verification information for each data packet, but only a single verification response VR with the verification or Authentication information for multiple data packets. The authentication information contained in the verification response VR (or alternatively only the verification information) can then be manipulated or falsification of the specific number of data packets D1-D5 or of the data packets that were received in the specific time period can be detected. This reduces the amount of data on the communication bus 6.

Vor Erzeugung der Verifizierungsanfrage VA und Empfang der Verifizierungsantwort VR kann die Empfangseinheit 4 die Datenpakete D1-D5 bereits empfangen und direkt zur Weiterverarbeitung und Verwendung weiterleiten, beispielsweise an eine Einheit 8. Da dies bereits vor einer Verifizierung der Datenpakete D1-D5 erfolgen kann, wird die Verarbeitungslatenz auf der Empfängerseite 4 reduziert.Before the verification request VA is generated and the verification response VR is received, the receiving unit 4 can already receive the data packets D1-D5 and forward them directly for further processing and use, for example to a unit 8. Since this can already be done before the data packets D1-D5 are verified, it is the processing latency on the receiver side 4 is reduced.

Wenn die Empfangseinheit 4 dann die Verifizierungsantwort VR von der Sendeeinheit 2 erhält, kann die Empfangseinheit 4 die zu der Verifizierungsantwort VR gehörenden Datenpakete D1-D5 nachträglich verifizieren. Sollte sich dabei herausstellen, dass ein oder mehrere der Datenpakete D1-D5 offensichtlich manipuliert oder verfälscht wurden, kann die Empfangseinheit 4 diese Information an die Einheit 8 weiterleiten, die die Datenpakete D1-D5 verwendet. In der Einheit 8 können dann entsprechende Maßnahmen ergriffen werden, wie beispielsweise ein sicherer Zustand eingenommen werden. Auf diese Weise kann die Sicherheit des Systems 1 gewährleistet werden, während gleichzeitig eine Latenz des Systems 1 reduziert wird.If the receiving unit 4 then receives the verification response VR from the transmitting unit 2, the receiving unit 4 can subsequently verify the data packets D1-D5 belonging to the verification response VR. If it turns out that one or more of the data packets D1-D5 have obviously been manipulated or falsified, the receiving unit 4 can forward this information to the unit 8, which is using the data packets D1-D5. Appropriate measures can then be taken in the unit 8, such as for example a safe state. In this way, the security of the system 1 can be guaranteed while a latency of the system 1 is reduced at the same time.

Hierbei wird ausgenutzt, dass die Fehlertoleranzzeit bei Regelkreisen des Systems 1 größer ist als die Zykluszeit der Übertragung der Datenpakete. Das bedeutet, dass mehrere potenziell manipulierte oder verfälschte Datenpakete übertragen und verwendet werden können, bevor es zu einer sicherheitskritischen Situation des Systems 1 kommt. Daher können Datenpakete übertragen und verwendet werden und erst im Anschluss der entsprechende Austausch von Verifizierungsanfrage VA und Verifizierungsantwort VR und damit eine Verifizierung der Datenpakete erfolgen.This exploits the fact that the error tolerance time in control circuits of the system 1 is greater than the cycle time of the transmission of the data packets. This means that a number of potentially manipulated or corrupted data packets can be transmitted and used before the system 1 becomes a security-critical situation. Therefore, data packets can be transmitted and used and the corresponding exchange of verification request VA and verification response VR and thus a verification of the data packets only then take place.

Die Empfangseinheit 4 kann auch bei einer erkannten Manipulation oder Verfälschung der Datenpakete D1-D5 die Sendeeinheit 2 auffordern, die Datenpakete erneut zu übermitteln. Des Weiteren kann die Empfangseinheit 4 auch eine dritte Einheit 10 (z.B. eine Abschalteinrichtung) über eine Manipulation oder eine Verfälschung aufgrund eines Übertragungsfehlers der Daten informieren, um damit den Wechsel in den sicheren Zustand einzuleiten.If manipulation or corruption of the data packets D1-D5 is detected, the receiving unit 4 can also request the transmitting unit 2 to transmit the data packets again. Furthermore, the receiving unit 4 can also inform a third unit 10 (e.g. a shutdown device) about manipulation or corruption due to a transmission error in the data in order to initiate the change to the safe state.

Die Empfangseinheit 4 sowie die weiteren Einheiten 8, 10 können als physikalisch getrennte Einheiten implementiert sein, wie es in 1 dargestellt ist. Alternativ können zwei oder mehr der Einheiten 4, 8, 10 in einer einzigen Einheit integriert sein und lediglich als logisch getrennte Komponenten vorhanden sein.The receiving unit 4 and the other units 8, 10 can be implemented as physically separate units, as is shown in 1 is shown. Alternatively, two or more of the units 4, 8, 10 can be integrated into a single unit and only exist as logically separate components.

Durch das beschriebene System ist es somit möglich, eine Manipulation von Datenpaketen zu erkennen und gleichzeitig die Latenz und den Datenverkehr in dem System zu reduzieren.The system described thus makes it possible to detect manipulation of data packets and at the same time to reduce the latency and the data traffic in the system.

BezugszeichenlisteReference List

11
Systemsystem
22
Sendeeinheittransmitter unit
44
Empfangseinheitreceiving unit
66
Datenbusdata bus
8, 108, 10
weitere Einheitenmore units
D1-D5D1-D5
Datenpaketedata packets
VAv.a
Verifizierungsanfrageverification request
VRVR
Verifizierungsantwortverification response

Claims (10)

Sendeeinheit (2) zum Senden von Datenpaketen (D1-D5), die Nutzinformationen enthalten, wobei die Sendeeinheit (2) dazu eingerichtet ist, mehrere Datenpakete (D1-D5) eines Datenblocks aufeinanderfolgend zu versenden, dadurch gekennzeichnet, dass die Sendeeinheit (2) dazu eingerichtet ist, eine Verifizierungsanfrage (VA) zu erhalten, wobei die Verifizierungsanfrage (VA) einen zu verifizierenden Datenblock definiert, und wobei die Sendeeinheit (2) des Weiteren dazu eingerichtet ist, eine Verifizierungsantwort (VR) mit einer Verifizierungsinformation des definierten Datenblocks zu erzeugen und zu versenden.Transmission unit (2) for transmitting data packets (D1-D5) containing useful information, the transmission unit (2) being set up to successively transmit a plurality of data packets (D1-D5) of a data block, characterized in that the transmission unit (2) is set up to receive a verification request (VA), wherein the verification request (VA) defines a data block to be verified, and wherein the transmission unit (2) is further set up to generate a verification response (VR) with verification information of the defined data block and to send. Sendeeinheit gemäß Anspruch 1, wobei die Sendeeinheit (2) dazu eingerichtet ist, mit den Datenpaketen (D1-D5) eine Identifizierungsinformation des Datenblocks und/oder der Datenpakete (D1-D5) zu versenden.Sending unit according to claim 1 , wherein the transmission unit (2) is set up to send identification information for the data block and/or the data packets (D1-D5) with the data packets (D1-D5). Sendeeinheit gemäß Anspruch 2, wobei die Verifizierungsanfrage (VA) die Identifizierungsinformationen von empfangenen Datenpaketen (D1-D5) enthält und wobei die Sendeeinheit (2) dazu eingerichtet ist, basierend auf der Verifizierungsanfrage (VA) zu verifizieren, ob die gesendeten Datenpakete (D1-D5) den empfangenen Datenpaketen (D1-D5) entsprechen.Sending unit according to claim 2 , wherein the verification request (VA) contains the identification information of received data packets (D1-D5) and wherein the sending unit (2) is set up to verify based on the verification request (VA) whether the sent data packets (D1-D5) the received correspond to data packets (D1-D5). Sendeeinheit gemäß einem der Ansprüche 2 oder 3, wobei die Verifizierungsanfrage (VA) eine Authentifizierungsinformation der empfangenen Datenpakete (D1-D5) enthält und wobei die Sendeeinheit (2) dazu eingerichtet ist, basierend auf den Identifizierungsinformationen in der Verifizierungsanfrage (VA) eine Authentifizierungsinformation der Datenpakete (D1-D5) zu erzeugen, die durch die Identifizierungsinformation identifiziert sind, und basierend auf der empfangenen Authentifizierungsinformation und der erzeugten Authentifizierungsinformation zu verifizieren, ob die gesendeten Datenpakete (D1-D5) den empfangenen Datenpaketen (D1-D5) entsprechen.Transmission unit according to one of claims 2 or 3 , wherein the verification request (VA) contains authentication information of the received data packets (D1-D5) and wherein the transmission unit (2) is set up to, based on the identification information in the verification request (VA) authentication information generate data packets (D1-D5) identified by the identification information and verify based on the received authentication information and the generated authentication information whether the transmitted data packets (D1-D5) correspond to the received data packets (D1-D5). Sendeeinheit gemäß Anspruch 4, wobei die Verifizierungsantwort (VR) die Authentifizierungsinformation enthält und/oder wobei die Verifizierungsinformation ein Ergebnis eines Vergleichs der empfangenen Authentifizierungsinformation und der erzeugten Authentifizierungsinformation enthält.Sending unit according to claim 4 , wherein the verification response (VR) contains the authentication information and/or wherein the verification information contains a result of a comparison of the received authentication information and the generated authentication information. Sendeeinheit gemäß Anspruch 4 oder 5, wobei die Verifizierungsanfrage (VA) einen Zufallswert enthält und wobei die Sendeeinheit (2) dazu eingerichtet ist, die Authentifizierungsinformation basierend auf dem Zufallswert zu erzeugen.Sending unit according to claim 4 or 5 , wherein the verification request (VA) contains a random value and wherein the transmission unit (2) is set up to generate the authentication information based on the random value. Empfangseinheit (4) zum Empfangen von Datenpaketen (D1-D5), die Nutzinformationen enthalten, wobei die Empfangseinheit (4) dazu eingerichtet ist, mehrere Datenpakete (D1-D5) eines Datenblocks aufeinanderfolgend von einer Sendeeinheit (2) gemäß einem Ansprüche 1 bis 6 zu empfangen und zur Verwendung weiterzuleiten, dadurch gekennzeichnet, dass die Empfangseinheit (4) dazu eingerichtet ist, eine Verifizierungsanfrage (VA) zu erzeugen, wobei die Verifizierungsanfrage (VA) einen zu verifizierenden Datenblock definiert, und eine Verifizierungsantwort (VR) in Antwort auf die Verifizierungsanfrage (VA) von der Sendeeinheit (2) zu empfangen, unter Verwendung der in der Verifizierungsantwort (VR) enthaltenen Verifizierungsinformation die bereits empfangenen und zur Verwendung weitergeleiteten Datenpakete (D1-D5) zu verifizieren und basierend auf einem Ergebnis der Verifizierung weitere Schritte durchzuführen.Receiving unit (4) for receiving data packets (D1-D5) containing useful information, wherein the receiving unit (4) is set up to multiple data packets (D1-D5) of a data block consecutively from a transmitting unit (2) according to a Claims 1 until 6 to receive and forward for use, characterized in that the receiving unit (4) is arranged to generate a verification request (VA), wherein the verification request (VA) defines a data block to be verified, and a verification response (VR) in response to the Receiving verification request (VA) from the transmission unit (2), using the verification information contained in the verification response (VR) to verify the data packets (D1-D5) already received and forwarded for use and to carry out further steps based on a result of the verification. Empfangseinheit gemäß Anspruch 7, wobei die Empfangseinheit (4) dazu eingerichtet ist, als weiteren Schritt eine Einheit (8, 10), die die Datenpakete (D1-D5) verwendet, über die Verifizierung zu informieren.receiving unit according to claim 7 , wherein the receiving unit (4) is set up, as a further step, to inform a unit (8, 10) that uses the data packets (D1-D5) about the verification. Empfangseinheit gemäß Anspruch 7 oder 8, wobei die Empfangseinheit dazu eingerichtet ist, Identifizierungsinformationen von empfangenen Datenpaketen (D1-D5) zu bestimmen und die Verifizierungsanfrage (VA) mit den Identifizierungsinformationen der empfangenen Datenpakete (D1-D5) zu erzeugen.receiving unit according to claim 7 or 8th , wherein the receiving unit is set up to determine identification information of received data packets (D1-D5) and to generate the verification request (VA) with the identification information of the received data packets (D1-D5). System (1) zum Senden und Empfangen von Datenpaketen (D1-D5), insbesondere in einem Kraftfahrzeug, wobei das System (1) eine Sendeeinheit (2) zum Senden von Datenpaketen (D1-D5) gemäß einem der Ansprüche 1 bis 6 und eine Empfangseinheit (4) zum Empfangen von Datenpaketen (D1-D5) gemäß einem der Ansprüche 7 bis 9 aufweist.System (1) for sending and receiving data packets (D1-D5), in particular in a motor vehicle, the system (1) having a transmission unit (2) for sending data packets (D1-D5) according to one of Claims 1 until 6 and a receiving unit (4) for receiving data packets (D1-D5) according to one of Claims 7 until 9 having.
DE102021117324.8A 2021-07-05 2021-07-05 Sending unit and receiving unit for sending and receiving data packets Pending DE102021117324A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102021117324.8A DE102021117324A1 (en) 2021-07-05 2021-07-05 Sending unit and receiving unit for sending and receiving data packets

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021117324.8A DE102021117324A1 (en) 2021-07-05 2021-07-05 Sending unit and receiving unit for sending and receiving data packets

Publications (1)

Publication Number Publication Date
DE102021117324A1 true DE102021117324A1 (en) 2023-01-05

Family

ID=84492815

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021117324.8A Pending DE102021117324A1 (en) 2021-07-05 2021-07-05 Sending unit and receiving unit for sending and receiving data packets

Country Status (1)

Country Link
DE (1) DE102021117324A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070028099A1 (en) 2003-09-11 2007-02-01 Bamboo Mediacasting Ltd. Secure multicast transmission
CN102064906A (en) 2009-11-18 2011-05-18 突触计算机系统(上海)有限公司 Method and device for checking data blocks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070028099A1 (en) 2003-09-11 2007-02-01 Bamboo Mediacasting Ltd. Secure multicast transmission
CN102064906A (en) 2009-11-18 2011-05-18 突触计算机系统(上海)有限公司 Method and device for checking data blocks

Similar Documents

Publication Publication Date Title
DE10152235B4 (en) Method for detecting errors during data transmission within a CAN controller and a CAN controller for carrying out this method
EP1012003B1 (en) Method and device for controlling data transmission between two modules located in a motor vehicle
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
DE102016206630A1 (en) Method and device for avoiding manipulation of a data transmission
DE102013218212A1 (en) Method for secure transmission of data
DE112008000795B4 (en) In-vehicle forwarding connection unit
WO2018077528A1 (en) Detection of manipulations in a can network by checking can identifiers
EP2171585B1 (en) Method for the operation of a microcontroller and an execution unit and a microcontroller and an execution unit
DE102018116676A1 (en) Vehicle network with implementation of XCP protocol policy and procedures
DE102017218134B3 (en) A method and apparatus for transmitting a message sequence over a data bus and method and apparatus for detecting an attack on a message sequence thus transmitted
EP0570338B1 (en) Method and apparatus for monitoring access and access protection in communication networks
EP3412018B1 (en) Method for exchanging messages between security-relevant devices
DE112014003345B4 (en) data exclusion device
DE102020208536A1 (en) GATEWAY DEVICE, ABNORMITY MONITORING PROCEDURES AND STORAGE MEDIUM
DE102013108006B4 (en) communication system
DE102021117324A1 (en) Sending unit and receiving unit for sending and receiving data packets
EP1596517B1 (en) Method of transmission of redundantly provided data over a single channel
DE102007028767B4 (en) Bus communication circuit for the secure serial transmission of data and their use
WO2011138061A1 (en) Method and device for securing data packets to be transmitted via an interface
DE102021208459B4 (en) Method for authentic data transmission between control units in a vehicle, arrangement with control units, computer program and vehicle
EP3871393B1 (en) Method for monitoring a data transmission system, data transmission system and motor vehicle
DE102020210876B4 (en) Procedure for ensuring the integrity of data to ensure operational safety and vehicle-to-X device
DE102020113451A1 (en) Sending unit and receiving unit for sending and receiving data packets
DE102020212452B3 (en) Method for reducing the impact of a message injected on a communication bus
DE102021127310B4 (en) System and method for data transmission

Legal Events

Date Code Title Description
R163 Identified publications notified