DE102022124552A1 - Method for secure communication between a transmitter and a receiver in a motor vehicle and communication system - Google Patents
Method for secure communication between a transmitter and a receiver in a motor vehicle and communication system Download PDFInfo
- Publication number
- DE102022124552A1 DE102022124552A1 DE102022124552.7A DE102022124552A DE102022124552A1 DE 102022124552 A1 DE102022124552 A1 DE 102022124552A1 DE 102022124552 A DE102022124552 A DE 102022124552A DE 102022124552 A1 DE102022124552 A1 DE 102022124552A1
- Authority
- DE
- Germany
- Prior art keywords
- receiver
- message
- key
- transmitter
- communication
- 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
Links
- 230000006854 communication Effects 0.000 title claims abstract description 73
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000004364 calculation method Methods 0.000 claims description 8
- 125000004122 cyclic group Chemical group 0.000 description 6
- 230000002085 persistent effect Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000010354 integration 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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
- H04L9/3242—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 involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Small-Scale Networks (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zur sicheren Kommunikation zwischen einem Sender (12) und einem Empfänger (14) in einem Kraftfahrzeug. Der Sender (12) übermittelt in einer Initialisierungsphase eine mit einem vertrauenswürdigen Schlüssel verschlüsselte Initialisierungsnachricht an den Empfänger (14), die einen temporären Schlüssel enthält. Der Empfänger (14) entschlüsselt die verschlüsselte Initialisierungsnachricht mit dem vertrauenswürdigen Schlüssel, um den temporären Schlüssel zu erhalten. Ferner ist ein Kommunikationssystem (10) für ein Kraftfahrzeug beschrieben.The invention relates to a method for secure communication between a transmitter (12) and a receiver (14) in a motor vehicle. In an initialization phase, the sender (12) transmits an initialization message encrypted with a trustworthy key to the receiver (14), which contains a temporary key. The receiver (14) decrypts the encrypted initialization message with the trusted key to obtain the temporary key. A communication system (10) for a motor vehicle is also described.
Description
Die Erfindung betrifft ein Verfahren zur sicheren Kommunikation zwischen einem Sender und einem Empfänger in einem Kraftfahrzeug. Ferner betrifft die Erfindung ein Kommunikationssystem für ein Kraftfahrzeug, das zumindest einen Sender und einen Empfänger umfasst.The invention relates to a method for secure communication between a transmitter and a receiver in a motor vehicle. The invention further relates to a communication system for a motor vehicle, which comprises at least one transmitter and one receiver.
In modernen Kraftfahrzeugen nimmt die Anzahl der Baugruppen stetig zu, die miteinander kommunizieren, um Informationen untereinander auszutauschen bzw. Steuerungsbefehle zu übermitteln. Aus Sicherheitsgründen ist dabei vorgesehen, dass die entsprechende Kommunikation der Baugruppen, also die Kommunikation von einem Sender zu einem Empfänger, abgesichert ist, wozu Verschlüsselungstechniken verwendet werden.In modern motor vehicles, the number of components that communicate with each other in order to exchange information or transmit control commands is constantly increasing. For security reasons, the corresponding communication between the components, i.e. the communication from a sender to a receiver, is secured, for which purpose encryption techniques are used.
Aus dem Stand der Technik sind hierzu Standards bekannt, beispielsweise die in Autosar standardisierte Secure Onboard Communication (SecOC), welche typischerweise zwischen Steuergeräten innerhalb eines Kraftfahrzeugs erfolgt. Hierbei wird beispielweise mittels eines Verschlüsselungsstandards, insbesondere dem Verschlüsselungsstandard „Advanced Encryption Standard (AES)“ ein Authentifizierungskennzeichen unter Verwendung eines hardwarebasierten Sicherheitsmoduls erzeugt, bei dem das hardwarebasierte Sicherheitsmodul die gesamte Kommunikation entsprechend absichert, was in Kombination hochfrequenter Kommunikation, insbesondere kleiner fünf Millisekunden, zu einer hohen Last des hardwarebasierten Sicherheitsmoduls führt.Standards for this are known from the prior art, for example Secure Onboard Communication (SecOC) standardized in Autosar, which typically takes place between control devices within a motor vehicle. Here, for example, by means of an encryption standard, in particular the “Advanced Encryption Standard (AES)” encryption standard, an authentication identifier is generated using a hardware-based security module, in which the hardware-based security module secures the entire communication accordingly, which in combination with high-frequency communication, in particular less than five milliseconds a high load on the hardware-based security module.
Insofern gibt es Probleme bei der Absicherung der Kommunikation, die mit schnellen Zyklenzeiten, insbesondere Zyklenzeiten kleiner fünf Millisekunden, zu erfolgen hat.In this respect, there are problems with securing communication, which has to be carried out with fast cycle times, especially cycle times of less than five milliseconds.
Um die Last des hardwarebasierten Sicherheitsmoduls zu reduzieren, ist es zudem aus dem Stand der Technik bekannt, die Nachrichten lediglich in Blöcken abzusichern, was jedoch zur Folge hat, dass die einzelnen Nachrichten innerhalb eines Blocks nicht abgesichert sind.In order to reduce the load on the hardware-based security module, it is also known from the prior art to only secure the messages in blocks, which, however, means that the individual messages within a block are not secured.
Die Aufgabe der Erfindung ist es, eine sichere Kommunikation in einem Kraftfahrzeug zu realisieren, die auch für eine Kommunikation mit schnellen Zyklenzeiten geeignet ist.The object of the invention is to realize a secure communication in a motor vehicle, which is also suitable for communication with fast cycle times.
Die Aufgabe wird erfindungsgemäß gelöst durch en Verfahren zur sicheren Kommunikation zwischen einem Sender und einem Empfänger in einem Kraftfahrzeug. Der Sender übermittelt in einer Initialisierungsphase eine mit einem vertrauenswürdigen Schlüssel verschlüsselte Initialisierungsnachricht an den Empfänger, die einen temporären Schlüssel enthält. Der Empfänger entschlüsselt die verschlüsselte Initialisierungsnachricht mit dem vertrauenswürdigen Schlüssel, um den temporären Schlüssel zu erhalten.The object is achieved according to the invention by a method for secure communication between a transmitter and a receiver in a motor vehicle. In an initialization phase, the sender transmits an initialization message encrypted with a trusted key to the recipient, which contains a temporary key. The recipient decrypts the encrypted initialization message with the trusted key to obtain the temporary key.
Der Grundgedanke der Erfindung ist es, dass für die spätere gesicherte Kommunikation zwischen dem Sender und dem Empfänger ein temporärer Schlüssel anstatt eines dauerhaften Schlüssels verwendet wird, wodurch eine hohe Sicherheit gegeben ist, da der Schlüssel lediglich temporär vorliegt. Der temporäre Schlüssel ist also ein nicht-persistenter Schlüssel, wohingegen es sich bei dem vertrauenswürdigen Schlüssel um einen persistenten Schlüssel handelt. Zudem kann die Last für ein hardwarebasiertes Sicherheitsmodul bei der gesicherten Kommunikation deutlich reduziert und auf eine Initialisierungsphase begrenzt werden, da die für die Kommunikation vorgesehene Absicherung basierend auf dem temporären Schlüssel erfolgt, sodass eine dauerhafte Einbindung des hardwarebasierten Sicherheitsmoduls für die zyklische Kommunikation nicht notwendig ist. Mit anderen Worten kann vermieden werden, dass das hardwarebasierte Sicherheitsmodul bei der hochfrequenten Kommunikation involviert ist.The basic idea of the invention is that a temporary key is used for the subsequent secure communication between the sender and the receiver instead of a permanent key, which ensures a high level of security because the key is only available temporarily. The temporary key is therefore a non-persistent key, whereas the trusted key is a persistent key. In addition, the load on a hardware-based security module during secure communication can be significantly reduced and limited to an initialization phase because the security provided for the communication is based on the temporary key, so that permanent integration of the hardware-based security module for cyclic communication is not necessary. In other words, the hardware-based security module can be avoided from being involved in high-frequency communication.
Ein Aspekt sieht vor, dass der Empfänger vor dem Empfang der verschlüsselten Initialisierungsnachricht einen Initialisierungsvektor erzeugt und an den Sender übergibt. Insbesondere ist der Initialisierungsvektor eindeutig für das entsprechende Sender-Empfänger-Paar. Zudem kann der Initialisierungsvektor durch den Sender für die Verschlüsselung der verschlüsselten Initialisierungsnachricht herangezogen werden, da der Initialisierungsvektor als Initialwert für die Verschlüsselung der verschlüsselten Initialisierungsnachricht dient. Insofern fordert der Empfänger vom Sender die verschlüsselte Initialisierungsnachricht an, indem der Empfänger den Initialisierungsvektor an den Sender übermittelt. Die Initialisierungsnachricht wird basierend auf dem Initialisierungsvektor verschlüsselt, was gewährleistet, dass die verschlüsselte Initialisierungsnachricht eindeutig für das Sender-Empfänger-Paar ist, da der Initialisierungsvektor eindeutig für den Empfänger und somit auch für das entsprechende Sender-Empfänger-Paar ist. Der Initialisierungsvektor dient grundsätzlich auch dazu, die Aktualität der Kommunikation sicherzustellen.One aspect provides that the receiver generates an initialization vector before receiving the encrypted initialization message and passes it on to the sender. In particular, the initialization vector is unique for the corresponding transmitter-receiver pair. In addition, the initialization vector can be used by the sender to encrypt the encrypted initialization message, since the initialization vector serves as an initial value for encrypting the encrypted initialization message. In this respect, the receiver requests the encrypted initialization message from the sender by sending the receiver the initialization vector to the sender. The initialization message is encrypted based on the initialization vector, which ensures that the encrypted initialization message is unique for the sender-receiver pair because the initialization vector is unique for the receiver and therefore also for the corresponding sender-receiver pair. The initialization vector basically also serves to ensure that the communication is up to date.
Der temporäre Schlüssel kann auf einer Zufallszahl basieren, insbesondere auf einer hardware-erzeugten Zufallszahl. Insbesondere wird die (hardware-erzeugte) Zufallszahl als temporärer Schlüssel verwendet. Dies gilt in analoger Weise für den Initialisierungsvektor, der ebenfalls auf einer Zufallszahl basieren kann, insbesondere auf einer hardware-erzeugten Zufallszahl. Die hardware-erzeugte Zufallszahl wird auch als „True Random Number“ (TRN) bezeichnet. Über die zufällig generierte Zufallszahl ist sichergestellt, dass es sich um einen temporären Schlüssel handelt, da die Zufallszahl für jede Session neu gebildet wird. Eine Session kann dabei über das Einschalten einer Zündung getriggert werden. Insofern wird jedes Mal, wenn die Zündung eingeschaltet wird, eine neue Zufallszahl generiert, basierend auf der der temporäre Schlüssel und/oder der Initialisierungsvektor generiert wird. Der temporäre Schlüssel wird seitens des Senders und der Initialisierungsvektor wird seitens des Empfängers generiert. Der Sender und der Empfänger generieren demnach jeweils eine Zufallszahl, die jedoch voneinander unterschiedlich ist, da es sich jeweils um Zufallszahlen handelt.The temporary key can be based on a random number, in particular on a hardware-generated random number. In particular, the (hardware-generated) random number is used as a temporary key. This applies in an analogous manner to the initialization vector, which can also be based on a random number, in particular on a hardware-generated random number. The hardware-generated random number is also called “True Random Number” (TRN). The randomly generated random number ensures that it is a temporary key, as the random number is generated anew for each session. A session can be triggered by switching on an ignition. In this respect, every time the ignition is switched on, a new random number is generated, based on which the temporary key and/or the initialization vector is generated. The temporary key is generated by the sender and the initialization vector is generated by the receiver. The sender and the receiver each generate a random number, which, however, is different from each other because they are both random numbers.
Ein weiterer Aspekt sieht vor, dass der Sender ein hardwarebasiertes Sicherheitsmodul aufweist, das eingerichtet ist, den vertrauenswürdigen Schlüssel bereitzustellen. Insbesondere wird basierend auf dem vertrauenswürdigen Schlüssel eine Zufallszahl verschlüsselt. Ferner kann der Empfänger ein hardwarebasiertes Sicherheitsmodul aufweisen, das eingerichtet ist, den vertrauenswürdigen Schlüssel bereitzustellen. Insbesondere basierend auf dem vertrauenswürdigen Schlüssel wird die verschlüsselte Initialisierungsnachricht seitens des Empfängers entschlüsselt, um die Zufallszahl zu erhalten, die später als temporärer Schlüssel dient und unter anderem mittels der verschlüsselten Initialisierungsnachricht vom Sender an den Empfänger übermittelt worden ist. Das jeweilige hardwarebasierte Sicherheitsmodul wird demnach lediglich in der Initialisierungsphase für die Kommunikation verwendet, um den vertrauenswürdigen Schlüssel bereitzustellen, der für die Verschlüsselung der Zufallszahl bzw. des temporären Schlüssels verwendet wird, insbesondere für die Verschlüsselung der verschlüsselten Initialisierungsnachricht.Another aspect provides that the sender has a hardware-based security module that is set up to provide the trusted key. Specifically, a random number is encrypted based on the trusted key. Furthermore, the recipient can have a hardware-based security module that is set up to provide the trusted key. In particular, based on the trusted key, the encrypted initialization message is decrypted by the recipient in order to obtain the random number, which later serves as a temporary key and has been transmitted from the sender to the recipient, among other things, by means of the encrypted initialization message. The respective hardware-based security module is therefore only used in the initialization phase for communication in order to provide the trustworthy key that is used for the encryption of the random number or the temporary key, in particular for the encryption of the encrypted initialization message.
Darüber hinaus kann sowohl der Sender als auch der Empfänger jeweils einen hardwarebasierten Zufallsgenerator aufweisen, mit dem die hardwarebasierte Zufallszahl bereitgestellt wird. Der hardwarebasierte Zufallsgenerator kann separat zum jeweiligen hardwarebasierten Sicherheitsmodul ausgebildet sein oder als Teil des jeweiligen hardwarebasierten Sicherheitsmoduls.In addition, both the transmitter and the receiver can each have a hardware-based random generator with which the hardware-based random number is provided. The hardware-based random generator can be designed separately from the respective hardware-based security module or as part of the respective hardware-based security module.
Grundsätzlich kann der Initialisierungsvektor, der basierend auf der empfängerseitig bereitgestellten Zufallszahl durch den Empfänger erzeugt wird, unverschlüsselt an den Sender übersandt werden.In principle, the initialization vector, which is generated by the receiver based on the random number provided at the receiver, can be sent to the sender unencrypted.
Der Sender empfängt den Initialisierungsvektor und verschlüsselt basierend auf dem Initialisierungsvektor und dem vertrauenswürdigen Schlüssel die senderseitig bereitgestellte Zufallszahl, die später als temporärer Schlüssel dient, um die verschlüsselte Initialisierungsnachricht zu erhalten. Die verschlüsselte Initialisierungsnachricht wird vom Sender an den Empfänger übersandt, der diese entschlüsseln kann, da der Empfänger ebenfalls Zugriff auf den vertrauenswürdigen Schlüssel (und den zuvor erzeugten Initialisierungsvektor) hat.The sender receives the initialization vector and, based on the initialization vector and the trusted key, encrypts the random number provided by the sender, which later serves as a temporary key to receive the encrypted initialization message. The encrypted initialization message is sent from the sender to the recipient, who can decrypt it because the recipient also has access to the trusted key (and the previously generated initialization vector).
Bei dem vertrauenswürdigen Schlüssel handelt es sich demnach um einen persistent gespeicherten symmetrischen Schlüssel, welcher unter Verwendung geeigneter PKI (Public Key Infrastruktur) von einer vertrauenswürdigen Stelle auf sicherem Wege in das Steuergerät übermittelt wurde. Mit anderen Worten ist der vertrauenswürdige Schlüssel ein authentischer, persistenter Schlüssel, der unter Verwendung einer Infrastruktur für öffentliche Schlüssel („Public-Key Infrastructure“ - PKI) an das Kraftfahrzeug bereitgestellt wird.The trustworthy key is therefore a persistently stored symmetrical key, which was transmitted securely to the control unit from a trustworthy location using a suitable PKI (Public Key Infrastructure). In other words, the trusted key is an authentic, persistent key that is provided to the motor vehicle using a public-key infrastructure (PKI).
Bei dem temporären Schlüssel, der zwischen Sender und Empfänger ausgetauscht worden ist, handelt es sich insbesondere dann auch um einen vertrauenswürdigen Schlüssel, insbesondere vertrauenswürdigen symmetrischen Schlüssel. Der Schlüssel wird vertrauenswürdig durch die Art des Austausches. Mit anderen Worten wird die Vertrauenswürdigkeit vom persisten Schlüssel vererbt.The temporary key that has been exchanged between the sender and receiver is in particular a trustworthy key, in particular a trustworthy symmetrical key. The key becomes trustworthy through the nature of the exchange. In other words, trustworthiness is inherited from the persistent key.
Ferner kann der Sender ein Authentifizierungskennzeichen („Message Authentication Code“ - MAC) erzeugen, das an den Empfänger übermittelt wird, der das Authentifizierungskennzeichen prüft. Insbesondere wird das Authentifizierungskennzeichen zusammen mit der verschlüsselten Initialisierungsnachricht übersandt. Zudem wird das Authentifizierungskennzeichen gemeinsam mit der Verschlüsselung der verschlüsselten Initialisierungsnachricht erzeugt, beispielsweise basierend auf dem vertrauenswürdigen Schlüssel und/oder dem Initialisierungsvektor. Bei dem Authentifizierungskennzeichen handelt es sich um einen Hash-Wert. Mittels des Authentifizierungskennzeichens kann der Empfänger sicherstellen, dass die verschlüsselte Nachricht empfängerseitig richtig entschlüsselt worden ist, wodurch eine sichere und zuverlässige Kommunikation gewährleistet werden kann, da eine Attacke ausgeschlossen werden kann. Der zuvor vom Empfänger an den Sender übermittelte Initialisierungsvektor kann einen Startpunkt für das Erstellen des Authentifizierungskennzeichens darstellen. Insofern ist das Authentifizierungskennzeichen basierend auf dem Initialisierungsvektor erstellt worden.Furthermore, the sender can generate an authentication code (“Message Authentication Code” - MAC), which is transmitted to the recipient, who checks the authentication code. In particular, the authentication identifier is sent together with the encrypted initialization message. In addition, the authentication identifier is generated together with the encryption of the encrypted initialization message, for example based on the trusted key and/or the initialization vector. The authentication identifier is a hash value. Using the authentication identifier, the recipient can ensure that the encrypted message has been correctly decrypted on the recipient side, which ensures secure and reliable communication because an attack can be ruled out. The initialization vector previously transmitted from the receiver to the sender can represent a starting point for creating the authentication label. In this respect, the authentication label has been created based on the initialization vector.
Der Empfänger, der die verschlüsselte Initialisierungsnachricht erhält und entschlüsselt, kann sich direkt und zu beliebiger Zeit aufschalten. Eine Bestätigung des Empfangs oder ähnliches wird daher nicht benötigt.The recipient who receives and decrypts the encrypted initialization message can connect directly and at any time. A confirmation of receipt or similar is therefore not required.
Ein weiterer Aspekt sieht vor, dass eine abgesicherte Kommunikation zwischen dem Sender und dem Empfänger gestartet wird, wenn der temporäre Schlüssel ausgetauscht worden ist, also die Initialisierungsphase abgeschlossen ist. Einzelne Nachrichten der abgesicherten Kommunikation sind, insbesondere mittels einer Absicherung basierend auf einer sicheren Hash Funktion aus der ARX-Algorithmenfamilie, abgesichert, bei der der temporäre Schlüssel genutzt wird. Die einzelnen Nachrichten können mit einem „Hash-based Message Authentication Code“ (HMAC) abgesichert sein, also einen „Message Authentication Code“ (MAC), was auch als Nachrichtenauthentifizierungscode bezeichnet wird, der den temporären Schlüssel in Verbindung mit einer Hash-Funktion nutzt. Anders ausgedrückt werden die einzelnen Nachrichten jeweils mit einem Hash-Wert abgesichert, der aus der Berechnung des Nachrichtenauthentifizierungscodes erhalten wird. Die Berechnung des Nachrichtenauthentifizierungscodes kann basierend auf dem temporären Schlüssel erfolgen, weswegen dieser für die Absicherung der einzelnen Nachrichten entsprechend genutzt wird.Another aspect provides for secure communication between the sender and the recipient when the temporary key has been exchanged, i.e. the initialization phase is complete. Individual messages of the secured communication are secured, in particular by means of security based on a secure hash function from the ARX algorithm family, in which the temporary key is used. The individual messages can be secured with a "hash-based message authentication code" (HMAC), i.e. a "message authentication code" (MAC), which is also referred to as a message authentication code, which uses the temporary key in conjunction with a hash function. In other words, the individual messages are each secured with a hash value that is obtained from the calculation of the message authentication code. The message authentication code can be calculated based on the temporary key, which is why this is used accordingly to secure the individual messages.
Die abgesicherte Kommunikation kann seitens des Senders gestartet werden, sobald der temporäre Schlüssel mittels Zufallszahl erzeugt wurde. Der wenigstens eine Empfänger, insbesondere alle jeweiligen Empfänger, kann die Korrektheit der Nachrichtenauthentifizierungscodes prüfen, nachdem die Initialisierungsphase abgeschlossen ist. Der temporäre Schlüssel, insbesondere die Zufallszahl, ist demnach vom Sender an den Empfänger, insbesondere alle Empfänger, bereits übermittelt worden.Secure communication can be started by the sender as soon as the temporary key has been generated using a random number. The at least one recipient, in particular all respective recipients, can check the correctness of the message authentication codes after the initialization phase has been completed. The temporary key, in particular the random number, has therefore already been transmitted from the sender to the recipient, in particular to all recipients.
Bei der ARX-basierten Absicherung handelt es sich grundsätzlich um die Anwendung von ARX-Hash-Algorithmen zur Berechnung des Nachrichtenauthentifizierungscodes, was außerhalb des hardwarebasierten Sicherheitsmoduls erfolgen kann. „ARX“ steht dabei für „Addition, Rotation, and XOR“, womit die Operationen bezeichnet werden, die bei der ARX-basierten Absicherung verwendet werden. Es kann sich bei der ARX-basierten Absicherung um „Chaskey“ handeln.ARX-based security is basically the application of ARX hash algorithms to calculate the message authentication code, which can be done outside of the hardware-based security module. “ARX” stands for “Addition, Rotation, and XOR”, which refers to the operations used in ARX-based protection. The ARX-based protection can be “Chaskey”.
Nachdem bei der ARX-basierten Absicherung der temporäre Schlüssel verwendet werden kann, ist wiederum sichergestellt, dass die Last für das hardwarebasierte Sicherheitsmodul reduziert wird, da das hardwarebasierte Sicherheitsmodul bei der Absicherung der einzelnen Nachrichten nicht (mehr) einbezogen wird, also während der zyklischen Phase („ComCyclic“). Hierdurch ist es möglich, eine abgesicherte Kommunikation mit schnellen Zyklenzeiten zwischen dem Sender und dem Empfänger zu gewährleisten, insbesondere Zyklenzeiten kleiner als fünf Millisekunden.Since the temporary key can be used in ARX-based security, it is in turn ensured that the load on the hardware-based security module is reduced, since the hardware-based security module is no longer (or no longer) involved in securing the individual messages, i.e. during the cyclic phase (“ComCyclic”). This makes it possible to ensure secure communication with fast cycle times between the transmitter and the receiver, in particular cycle times less than five milliseconds.
Ferner können der Sender und der Empfänger jeweils einen Prozessor aufweisen, wobei der jeweilige Prozessor eingerichtet ist, einen Nachrichtenauthentifizierungscode zu berechnen. Insofern erfolgt die Absicherung mittels des Prozessors, sodass das hardwarebasierte Sicherheitsmodul entsprechend entlastet wird.Furthermore, the sender and the receiver can each have a processor, with the respective processor being set up to calculate a message authentication code. In this respect, the protection is carried out by means of the processor, so that the hardware-based security module is relieved accordingly.
Der Nachrichtenauthentifizierungscode („Message Authentication Code“ - MAC) wird mit einem Algorithmus berechnet, der zwei Eingabeparameter erfordert, nämlich zu schützende Daten sowie einen geheimen Schlüssel, wobei der Algorithmus aus den beiden Eingabeparametern eine Prüfsumme berechnet, nämlich den Nachrichtenauthentifizierungscode.The message authentication code (MAC) is calculated using an algorithm that requires two input parameters, namely data to be protected and a secret key, whereby the algorithm calculates a checksum from the two input parameters, namely the message authentication code.
Bei dem geheimen Schlüssel handelt es sich vorliegend um den temporären Schlüssel.The secret key in this case is the temporary key.
Die zyklische Kommunikation wird also abgesichert, indem der MAC (Message Authentication Code) unter Verwendung des temporären Schlüssels mit Hash Algorithmen der ARX-Familie (Add Rotate Xor) außerhalb des hardwarebasierten Sicherheitsmoduls berechnet wird. Die zyklische Kommunikation kann demnach ohne Verwendung eines hardwarebasierten Sicherheitsmoduls effizient in Bezug auf Rechenlast abgesichert werden. Hierfür ist die Verwendung eines Schlüssels außerhalb des hardwarebasierten Sicherheitsmoduls und somit außerhalb des vertrauenswürdigen Speicherbereiches notwendig.The cyclic communication is secured by calculating the MAC (Message Authentication Code) using the temporary key with hash algorithms of the ARX family (Add Rotate Xor) outside the hardware-based security module. Cyclic communication can therefore be efficiently secured in terms of computing load without using a hardware-based security module. This requires the use of a key outside the hardware-based security module and therefore outside the trusted memory area.
Des Weiteren kann ein Nachrichtenzähler, der die Anzahl der abgesicherten Nachrichten innerhalb eines Blocks zählt, und/oder ein Blockzähler vorgesehen sein, der die Anzahl der Blöcke zählt. Insbesondere sind Informationen des Nachrichtenzählers in den abgesicherten Nachrichten enthalten. Mit dem Nachrichtenzähler ist sichergestellt, dass die Kommunikation gegen Replay-Attacken abgesichert ist. Des Weiteren können die Informationen des Nachrichtenzählers bzw. des Blockzählers für die Berechnung des Nachrichtenauthentifizierungscodes herangezogen werden.Furthermore, a message counter that counts the number of secured messages within a block and/or a block counter that counts the number of blocks can be provided. In particular, message counter information is included in the secured messages. The message counter ensures that communication is protected against replay attacks. Furthermore, the information from the message counter or the block counter can be used to calculate the message authentication code.
Ferner wird die Aufgabe erfindungsgemäß durch ein Kommunikationssystem für ein Kraftfahrzeug gelöst, das zumindest einen Sender oder einen Empfänger umfasst, wobei das Kommunikationssystem eingerichtet ist, das Verfahren der zuvor beschriebenen Art auszuführen. Die zuvor genannten Vorteile ergeben sich somit in analoger Weise für das Kommunikationssystem in ähnlicher Weise.Furthermore, the object is achieved according to the invention by a communication system for a motor vehicle which comprises at least one transmitter or a receiver, the communication system being set up to carry out the method of the type described above. The aforementioned advantages therefore arise in a similar manner for the communication system.
Grundsätzlich wird demnach der vertrauenswürdige Schlüssel, welcher von dem jeweiligen hardwarebasierten Sicherheitsmodul zur Verfügung gestellt wird, nur indirekt verwendet, um den temporären Schlüssel zwischen dem Sender und dem Empfänger auszutauschen, insbesondere mittels der verschlüsselten Initialisierungsnachricht in der Initialisierungsphase. Während der gesicherten Kommunikation, also der zyklischen Kommunikationsphase, ist ein Zugriff auf das hardwarebasierte Sicherheitsmodul jedoch nicht notwendig.Basically, the trusted key provided by the respective hardware-based security module is is only used indirectly to exchange the temporary key between the sender and the receiver, in particular by means of the encrypted initialization message in the initialization phase. However, during secure communication, i.e. the cyclic communication phase, access to the hardware-based security module is not necessary.
Mit anderen Worten wird zur endgültigen abgesicherten Kommunikation, also nach der Initialisierungsphase, eine sichere Hash Funktion aus der ARX-Algorithmenfamilie verwendet, bei der die Nachrichten basierend auf dem temporären Schlüssel abgesichert werden. Der temporäre Schlüssel ist, wie bereits erläutert, in der Initialisierungsphase mittels der verschlüsselten Initialisierungsnachricht, die basierend auf dem vertrauenswürdigen Schlüssel verschlüsselt worden ist, vom Sender an den Empfänger übergeben worden.In other words, for the final secured communication, i.e. after the initialization phase, a secure hash function from the ARX algorithm family is used, in which the messages are secured based on the temporary key. As already explained, the temporary key was passed from the sender to the recipient in the initialization phase by means of the encrypted initialization message, which was encrypted based on the trusted key.
Es ist also erfindungsgemäß möglich, die Rechenlast und Latenzanforderung an das hardwarebasierte Sicherheitsmodul (HSM) für eine abgesicherte Kommunikation mit schnellen Zyklenzeiten zu reduzieren, insbesondere Zyklenzeiten kleiner fünf Millisekunden. Die Berechnung des Hash-Werts bzw. des Nachrichtenauthentifizierungscodes, also der MAC (Message Authentication Code), erfolgt außerhalb des hardwarebasierten Sicherheitsmoduls (HSM) mit ARX-Algorithmen, welche für die Berechnung der Nachrichtenauthentifizierungscodes auf Prozessoren optimiert sind. Dabei wird der vertrauenswürdige Schlüssel, welcher im hardwarebasierten Sicherheitsmoduls (HSM) hinterlegt ist, indirekt verwendet, um den temporären geheimen Schlüssel zu übermitteln, sodass es sich um einen temporären geheimen gemeinsamen Schlüssel handelt. Als temporärer Schlüssel kann die Zufallszahl verwendet werden.According to the invention, it is therefore possible to reduce the computing load and latency requirement on the hardware-based security module (HSM) for secure communication with fast cycle times, in particular cycle times of less than five milliseconds. The calculation of the hash value or the message authentication code, i.e. the MAC (Message Authentication Code), takes place outside the hardware-based security module (HSM) using ARX algorithms, which are optimized for calculating the message authentication codes on processors. The trusted key, which is stored in the hardware-based security module (HSM), is used indirectly to transmit the temporary secret key, so that it is a temporary secret shared key. The random number can be used as a temporary key.
Die verschlüsselte Initialisierungsnachricht, die an den Empfänger übermittelt wird, kann also den temporären Schlüssel sowie Informationen vom Nachrichtenzähler und vom Blockzähler enthalten, insbesondere die jeweiligen Zählerstände.The encrypted initialization message that is transmitted to the recipient can therefore contain the temporary key as well as information from the message counter and the block counter, in particular the respective counter readings.
Der Empfänger kann demnach die verschlüsselte Initialisierungsnachricht mit dem vertrauenswürdigen Schlüssel entschlüsseln, um den temporären Schlüssel und die Informationen Zähler zu erhalten, also die jeweiligen Zählerstände.The recipient can therefore decrypt the encrypted initialization message with the trusted key in order to obtain the temporary key and the counter information, i.e. the respective counter readings.
Wie bereits beschrieben, handelt es sich bei dem vertrauenswürdigen Schlüssel um einen gemeinsamen Schlüssel. Folglich kann dieser auch als vertrauenswürdiger, gemeinsamer Schlüssel bezeichnet werden.As already described, the trusted key is a shared key. Consequently, this can also be referred to as a trustworthy, shared key.
Die abgesicherte Kommunikation wird gestartet, wenn der temporäre Schlüssel ausgetauscht und Informationen der Nachrichten- sowie Blockzähler synchronisiert worden sind, also deren Zählerstände. Die Synchronisation kann erfolgen, indem bei der nächsten empfangenen Nachricht geprüft wird, ob der Nachrichtenzähler, insbesondere dessen Zählerstand, kleiner dem aus der Initialisierungsnachricht ist. Wenn dies der Fall ist, so hat ein neuer Block begonnen, und der Blockzähler muss um eins inkrementiert werden. Es wurde somit ein Synchronisationsfenster für den Blockzähler in Größe des Nachrichtenzählers geschaffen.Secure communication is started when the temporary key has been exchanged and information from the message and block counters has been synchronized, i.e. their counter readings. The synchronization can be carried out by checking with the next message received whether the message counter, in particular its count, is less than that in the initialization message. If this is the case, a new block has begun and the block counter must be incremented by one. This created a synchronization window for the block counter the same size as the message counter.
Weitere Vorteile und Eigenschaften der Erfindung ergeben sich aus der nachfolgenden Beschreibung und der Zeichnung, auf die Bezug genommen wird. In den Zeichnungen zeigen:
- -
1 eine schematische Darstellung eines erfindungsgemäßen Kommunikationssystems für ein Kraftfahrzeug, - -
2 eine Übersicht eines spezifischen Ausführungsbeispiels des erfindungsgemäßen Kommunikationssystems im Vergleich mit aus dem Stand der Technik bekannten Kommunikationssystemen, und - -
3 eine Übersicht, die das erfindungsgemäße Verfahren zur sicheren Kommunikation verdeutlicht, welches mit dem Kommunikationssystem gemäß1 oder2 ausgeführt werden kann.
- -
1 a schematic representation of a communication system according to the invention for a motor vehicle, - -
2 an overview of a specific embodiment of the communication system according to the invention in comparison with communication systems known from the prior art, and - -
3 an overview that illustrates the method according to the invention for secure communication, which can be used with the communication system according to1 or2 can be executed.
In
Der Kommunikationskanal 16 ist als ein bidirektionaler Kommunikationskanal ausgebildet, da Nachrichten vom Sender 12 an den Empfänger 14 gesandt werden können, aber auch der Empfänger 14 Nachrichten über den Kommunikationskanal 16 an den Sender 12 übermitteln kann.The
Der Sender 12 weist in der gezeigten Ausführungsform ein hardwarebasiertes Sicherheitsmodul 18 auf, welches eingerichtet ist, einen vertrauenswürdigen Schlüssel bereitzustellen, der genutzt wird, um eine Kommunikation zwischen dem Sender 12 und dem Empfänger 14 herzustellen, wie nachfolgend noch erläutert wird.In the embodiment shown, the
Der Empfänger 14 weist ebenfalls ein hardwarebasiertes Sicherheitsmodul 20 auf, das ebenfalls eingerichtet ist, den vertrauenswürdigen Schlüssel bereitzustellen, um eine vom Sender 12 verschlüsselte Nachricht zu entschlüsseln. Insofern weisen sowohl der Sender 12 als auch der Empfänger 14 jeweils ein hardwarebasiertes Sicherheitsmodul 18, 20 auf.The
Darüber hinaus weist der Sender 12 einen Prozessor 22 auf, der mit dem hardwarebasierten Sicherheitsmodul 18 ebenfalls in Kommunikationsverbindung steht. Hierbei handelt es sich um eine bidirektionale Verbindung, bei welcher Arbeitsaufträge durch den Prozessor 22 an das hardwarebasierte Sicherheitsmodul 18 übergeben und von diesem beantwortet werden. Insbesondere handelt es sich bei den Arbeitsaufträgen um Berechnungen zur Cyber Security wie Ver- und Entschlüsselung oder MAC-Berechnungen. Dabei ist sichergestellt, dass nur das hardwarebasierte Sicherheitsmodul 18 auf den vertrauenswürdigen Schlüssel zugreifen kann und keine Lesezugriffe seitens des Prozessors 22 in Bezug auf den vertrauenswürdigen Schlüssel bestehen.In addition, the
Der Empfänger 14 weist ebenfalls einen Prozessor 24 auf, der mit dem hardwarebasierten Sicherheitsmodul 20 des Empfängers 14 in Kommunikationsverbindung steht, insbesondere auch ohne direkten Zugriff auf den vertrauenswürdigen Schlüssel.The
Des Weiteren umfassen sowohl der Sender 12 als auch der Empfänger 14 jeweils einen Zufallszahlgenerator 26, 28, über den jeweils eine Zufallszahl generiert werden kann.Furthermore, both the
Die jeweilige Zufallszahl wird dabei vom entsprechenden Zufallszahlgenerator 26, 28 für eine Session generiert. Die Session kann dabei durch die Zündung des Kraftfahrzeugs getriggert werden, sodass der jeweilige Zufallszahlgenerator 26, 28 beim Neustarten des Motors des Kraftfahrzeugs eine neue Zufallszahl generieren. Die Zufallszahlgeneratoren 26, 28 können insbesondere im jeweiligen hardwarebasierten Sicherheitsmodul 18, 20 integriert sein.The respective random number is generated for a session by the corresponding
Mittels des Zufallszahlgenerators 26 des Senders 12 wird ein temporärer Schlüssel erzeugt, wie nachfolgend noch in Bezug auf die
Darüber hinaus weist der Sender 12 noch einen Nachrichtenzähler 30 sowie einen Blockzähler 32 auf, die bspw. durch den Prozessor 22 bereitgestellt werden, wie nachfolgend anhand der
In
Ebenso sind in
Wie bereits in Bezug auf
Zudem ist zwischen dem Sender 12 und dem Empfänger 14 der Kommunikationskanal 16 ausgebildet, sodass der Sender 12 Nachrichten an den Empfänger 14 übermitteln kann. Wie in
Die entsprechenden Nachrichten sind in
Darüber hinaus sind in
Hieraus wird deutlich, dass die Lasten erfindungsgemäß vom hardwarebasierten Sicherheitsmodul 18, 20 in Richtung des jeweiligen Prozessors 22, 24 verlagert worden sind, da zumindest die Berechnung für die abgesicherte Kommunikation, insbesondere die Berechnung eines Nachrichtenauthentifizierungscodes („Message authentication code“ - MAC), durch den jeweiligen Prozessor 22, 24 durchgeführt wird und nicht mehr durch die hardwarebasierten Sicherheitsmodule 18, 20.It is clear from this that, according to the invention, the loads have been shifted from the hardware-based
Die hardwarebasierten Sicherheitsmodul 18, 20 werden erfindungsgemäß lediglich zu Beginn, nämlich während einer Initialisierungsphase, mit einer entsprechenden Aufgabe betreut, wie nachfolgend noch mit Bezug auf
Dennoch ist sichergestellt, wie ein Vergleich der
In
In einer Startphase „ComStart“ wird vom Zufallszahlgenerator 26 des Senders 12 eine Zufallszahl generiert.In a starting phase “ComStart”, a random number is generated by the
Der Zufallszahlgenerator 26 kann im hardwarebasierten Sicherheitsmodul („HSM“) 18 des Senders 12 vorgesehen sein, was durch den Ausdruck „HSM_TrueRandomNumberGen()“ angegeben ist. Die Zufallszahl TRNX kann 128 Bit umfassen.The
In einer Initialisierungsphase „ComJoin“ erzeugt der Empfänger 14 zunächst einen Initialisierungsvektor („IV“), der 128 Bit umfassen kann. Der Initialisierungsvektor kann basierend auf der vom Zufallszahlgenerator 28 des Empfängers 14 bereitgestellten Zufallszahl erzeugt werden, was durch den Ausdruck „IV[128] = HSM_TrueRandomNumberGen()“ entsprechend in
Der Empfänger 14 übermittelt dem Initialisierungsvektor über den Kommunikationskanal 16 an den Sender 12 („ArxComJoin“), der den Initialisierungsvektor entsprechend empfängt.The
Der Sender 12 erzeugt während der Initialisierungsphase eine verschlüsselte Initialisierungsnachricht („CiphTxt“), die den temporären Schlüssel enthält, welcher auf der Zufallszahl („TRNX“) basiert, die der Zufallszahlgenerator 26 des Senders 12 erzeugt hat. Insbesondere entspricht der temporäre Schlüssel der Zufallszahl, die der Zufallszahlgenerator 26 des Senders 12 in der Anfangsphase „ComStart“ erzeugt hat.During the initialization phase, the
Die verschlüsselte Initialisierungsnachricht („CiphTxt“) wird dabei mithilfe des vertrauenswürdigen Schlüssels erzeugt bzw. verschlüsselt, indem der Prozessor 22 des Senders 12 einen Verschlüsselungsauftrag an das hardwarebasierte Sicherheitsmodul („HSM“) 18 erhalten hat.The encrypted initialization message (“CiphTxt”) is generated or encrypted using the trustworthy key in that the
Grundsätzlich wird zumindest der temporäre Schlüssel, also die vom Zufallszahlgenerator 26 des Senders 12 erzeugte Zufallszahl, basierend auf dem vom Empfänger 14 empfangenen Initialisierungsvektor und dem vertrauenswürdigen Schlüssel verschlüsselt. Weiterhin werden der Nachrichtenzähler und der Blockzähler in der verschlüsselten Initialisierungsnachricht („CiphTxt“) vertraulich bereitgestellt, um ein synchronisiertes Einsteigen in eine laufende Kommunikation zu ermöglichen.Basically, at least the temporary key, i.e. the random number generated by the
Darüber hinaus erzeugt der Sender 12 ein Authentifizierungskennzeichen („AuthTag“), das zusammen mit der verschlüsselten Initialisierungsnachricht („CiphTxt“) an den Empfänger 14 übermittelt wird.In addition, the
Das Authentifizierungskennzeichen („AuthTag“) wird basierend auf dem vertrauenswürdigen Schlüssel erzeugt.The authentication tag (“AuthTag”) is generated based on the trusted key.
Insofern werden die verschlüsselte Initialisierungsnachricht („CiphTxt“) und das Authentifizierungskennzeichen („AuthTag“) gemeinsam an den Empfänger 14 übermittelt („ArxComSecret“).In this respect, the encrypted initialization message (“CiphTxt”) and the authentication tag (“AuthTag”) are transmitted together to the recipient 14 (“ArxComSecret”).
Der Empfänger 14 empfängt die verschlüsselte Initialisierungsnachricht zusammen mit dem Authentifizierungskennzeichen, wobei der Empfänger 14 das Authentifizierungskennzeichen prüft, also mithilfe des vertrauenswürdigen Schlüssels abgleicht.The
Zudem entschlüsselt der Empfänger 14 die verschlüsselte Initialisierungsnachricht mit dem vertrauenswürdigen Schlüssel (und basierend auf dem zuvor erzeugten Initialisierungsvektor), welcher über das hardwarebasierte Sicherheitsmodul 20 des Empfängers 14 bereitgestellt wird.In addition, the
Der Empfänger 14, welcher über den vertrauenswürdigen Schlüssel verfügt, kann somit den temporären Schlüssel sowie Nachrichtenzähler und Blockzähler aus der verschlüsselten Initialisierungsnachricht entschlüsseln, sodass der Empfänger 14 über die vom Sender 12 erzeugte Zufallszahl und die aktuellen Zäherlinhalte verfügt.The
Mithilfe des Authentifizierungskennzeichen („AuthTag“) kann der Empfänger 14 zudem überprüfen, ob die Entschlüsselung der verschlüsselten Initialisierungsnachricht erfolgreich war.Using the authentication tag (“AuthTag”), the
Insofern ist der Empfänger 14 in der Lage, den temporären Schlüssel zu entschlüsseln und später zu verwenden. Durch die Werte von Nachrichtenzähler und Blockzähler ist der Empfänger 14 zudem in der Lage, diese mit dem Sender 12 zu synchronisieren.In this respect, the
Die Initialisierungsphase „ComJoin“ ist abgeschlossen, sofern der Empfänger 14 den temporären Schlüssel sowie die Informationen des Nachrichtenzählers und Blockzählers erfolgreich aus der verschlüsselten Initialisierungsnachricht entschlüsseln konnte, sodass sich der Empfänger 14 aufschalten und eine abgesicherte Kommunikation, insbesondere eine zyklische Kommunikation, mit dem Sender 12 erfolgen kann („ComCyclic“).The initialization phase “ComJoin” is completed if the
In der Initialisierungsphase sind die hardwarebasierten Sicherheitsmodule („HSM“) 18, 20 demnach lediglich einmal zum Einsatz gekommen, wie auch aus
In der abgesicherten Kommunikation werden die einzelnen Nachrichten mittels einer ARX-basierten Absicherung basierend auf Hash-Algorithmen aus der ARX Familie abgesichert, bei der der temporäre Schlüssel genutzt wird.In secured communication, the individual messages are secured using ARX-based protection based on hash algorithms from the ARX family, in which the temporary key is used.
Der ARX-basierte Algorithmus kann bspw. Chaskey sein.The ARX-based algorithm can be, for example, Chaskey.
Konkret wird die ARX-basierte Absicherung verwendet, um Nachrichtenauthentifizierungscodes („Message Authentication Code“ - MAC) basierend auf dem zuvor ausgetauschten temporären Schlüssel zu erzeugen, wobei die Nachrichtenauthentifizierungscodes zur Absicherung der einzelnen Nachrichten dienen. Bei den Nachrichtenauthentifizierungscodes handelt es sich insbesondere um Hash-Werte.Specifically, ARX-based security is used to generate message authentication codes (“MAC”) based on the previously exchanged temporary key, where the message authentication codes are used to secure individual messages. The message authentication codes are, in particular, hash values.
Die einzelnen Nachrichten werden also mittels des Nachrichtenauthentifizierungscodes („Message Authentication Code“ - MAC) abgesichert, welcher von dem entsprechenden Prozessor 22, 24 des Senders 12 bzw. des Empfängers 14 basierend auf dem ausgetauschten temporären Schlüssel berechnet wird, wie auch aus
Der Nachrichtenauthentifizierungscode wird dabei mit einem Algorithmus berechnet, der zwei Eingabeparameter erfordert, nämlich die zu schützenden Daten, also den Inhalt der zu übermittelnden Nachricht inklusive Informationen (Zählerwerte) vom Nachrichtenzähler und Blockzähler als Aktualität („Freshness“), sowie einen geheimen Schlüssel, welcher dem temporären Schlüssel entspricht. Der Algorithmus berechnet aus den beiden Parametern eine Prüfsumme („Hash-Wert“), nämlich den Nachrichtenauthentifizierungscode („MAC“ bzw. „HMAC“), welcher der jeweiligen Nachricht angehängt ist, um diese abzusichern.The message authentication code is calculated using an algorithm that requires two input parameters, namely the data to be protected, i.e. the content of the message to be transmitted including information (counter values) from the message counter and block counter as freshness, as well as a secret key, which corresponds to the temporary key. The algorithm calculates a checksum (“hash value”) from the two parameters, namely the message authentication code (“MAC” or “HMAC”), which is attached to the respective message in order to secure it.
Des Weiteren ist in
Anschließend läuft der Nachrichtenzähler 30 über, sodass ein neuer Block gestartet wird, der wiederum vom Blockzähler 32 gezählt wird, um die Aktualität („Freshness“) der Kommunikation zu ermitteln.The message counter 30 then overflows, so that a new block is started, which in turn is counted by the
Der Blockzähler 32 wird bei jeder neuen Session mit 0 initialisiert, sodass dieser für jeden temporären Schlüssel von neuem beginnt. Ferner wird Blockzähler 32 um 1 inkrementiert, was bspw. bei einem Inkrement alle 256 ms und einer Blocklänge von 32bit dazu führt, dass der Blockzähler 32 erst nach 35 Jahren überläuft bei einer Kommunikation mit einer Zykluszeit von 1 ms.The
Offensichtlich ist eine sichere Kommunikation zwischen dem Sender 12 und dem Empfänger 14 gewährleistet.Obviously, secure communication between the
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022124552.7A DE102022124552A1 (en) | 2022-09-23 | 2022-09-23 | Method for secure communication between a transmitter and a receiver in a motor vehicle and communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022124552.7A DE102022124552A1 (en) | 2022-09-23 | 2022-09-23 | Method for secure communication between a transmitter and a receiver in a motor vehicle and communication system |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102022124552A1 true DE102022124552A1 (en) | 2024-03-28 |
Family
ID=90140063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102022124552.7A Pending DE102022124552A1 (en) | 2022-09-23 | 2022-09-23 | Method for secure communication between a transmitter and a receiver in a motor vehicle and communication system |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102022124552A1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140270163A1 (en) | 2013-03-14 | 2014-09-18 | Robert Bosch Gmbh | System And Method For Counter Mode Encrypted Communication With Reduced Bandwidth |
DE102020200726A1 (en) | 2020-01-22 | 2021-07-22 | Robert Bosch Gesellschaft mit beschränkter Haftung | Method for exchanging cryptographic keys for quantum-secure communication between a server and a client |
-
2022
- 2022-09-23 DE DE102022124552.7A patent/DE102022124552A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140270163A1 (en) | 2013-03-14 | 2014-09-18 | Robert Bosch Gmbh | System And Method For Counter Mode Encrypted Communication With Reduced Bandwidth |
DE102020200726A1 (en) | 2020-01-22 | 2021-07-22 | Robert Bosch Gesellschaft mit beschränkter Haftung | Method for exchanging cryptographic keys for quantum-secure communication between a server and a client |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60314060T2 (en) | Method and device for key management for secure data transmission | |
DE102013206185A1 (en) | Method for detecting a manipulation of a sensor and / or sensor data of the sensor | |
DE102005018676B4 (en) | Key management procedure for cryptographic modules | |
DE60119857T2 (en) | Method and device for executing secure transactions | |
DE102018216915A1 (en) | System and method for secure communications between controllers in a vehicle network | |
WO1997047109A1 (en) | Process for cryptographic code management between a first computer unit and a second computer unit | |
EP2567501B1 (en) | Method for cryptographic protection of an application | |
EP3443705B1 (en) | Method and assembly for establishing a secure communication between a first network device (initiator) and a second network device (responder) | |
DE102004032057A1 (en) | Method and device for generating a secret session key | |
EP3157192B1 (en) | Method and system for asymmetric key derivision | |
DE102020003739A1 (en) | Procedure for the distribution and negotiation of key material | |
DE102018202176A1 (en) | Master-slave system for communication via a Bluetooth low-energy connection | |
EP3661113A1 (en) | Method and device for the transmission of data in a publish-subscribe system | |
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 | |
DE102019107932A1 (en) | Digital certificate and procedure for the secure transmission of a public key | |
EP0948158A2 (en) | Method for secure key distribution | |
EP0937845A1 (en) | Releasing system as means of releasing functions | |
DE102018102608A1 (en) | Method for user management of a field device | |
DE102022124552A1 (en) | Method for secure communication between a transmitter and a receiver in a motor vehicle and communication system | |
DE102019109341B4 (en) | Procedure for the secure exchange of encrypted messages | |
DE102016106602A1 (en) | Method and device for establishing a secure communication between a first network device (initiator) and a second network device (responder) | |
DE102012205010A1 (en) | Programming method, battery with an arrangement for carrying out the programming method and a motor vehicle with such a battery | |
DE102019216203A1 (en) | Proof-of-work based on block encryption | |
EP3909217A1 (en) | Method and system for information transmission | |
DE102021000645B3 (en) | Procedure for checking cryptographic secrets for equality |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified |