DE112020002661T5 - Elektronische steuereinheit und kommunikationssystem - Google Patents

Elektronische steuereinheit und kommunikationssystem Download PDF

Info

Publication number
DE112020002661T5
DE112020002661T5 DE112020002661.2T DE112020002661T DE112020002661T5 DE 112020002661 T5 DE112020002661 T5 DE 112020002661T5 DE 112020002661 T DE112020002661 T DE 112020002661T DE 112020002661 T5 DE112020002661 T5 DE 112020002661T5
Authority
DE
Germany
Prior art keywords
value
received
list
message
unit
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
DE112020002661.2T
Other languages
English (en)
Inventor
Akira Komedani
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.)
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Publication of DE112020002661T5 publication Critical patent/DE112020002661T5/de
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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • 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
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Small-Scale Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Eine elektronische Steuereinheit (200, 210) ist dazu aufgebaut, eine Nachricht und einen der Nachricht zugeordneten Aktualitätswert von einer sendeseitigen ECU (100, 110) unter Verwendung einer drahtlosen Kommunikation zu empfangen. Der Aktualitätswert umfasst (i) obere Bits, die gemäß einer vorab festgelegten oberen Updatebedingung aktualisierbar sind, und (ii) untere Bits, die gemäß einer vorab festgelegten unteren Updatebedingung aktualisierbar sind. Die elektronische Steuereinheit umfasst eine Speichereinheit (202), eine Empfangseinheit (201), eine Aktualitätswert-Verifizierungseinheit (203) und eine Listenaktualisierungseinheit (204). Die Speichereinheit (202) ist dazu aufgebaut, Folgendes zu speichern:eine Aktualitätswertliste, die eine vorab festgelegte Anzahl von Aktualitätswerten in einer absteigenden Reihenfolge von einem Referenzwert anzeigt, der der größte Aktualitätswert unter den in der Vergangenheit empfangenen Aktualitätswerten ist. Die Empfangseinheit (201) ist dazu aufgebaut, die Nachricht und den Aktualitätswert zu empfangen, die von der sendeseitigen ECU übertragen werden. Die Aktualitätswert-Verifizierungseinheit (203) ist dazu aufgebaut, einen empfangenen Wert, der der von der Empfangseinheit empfangene Aktualitätswert ist, mit der Aktualitätswertliste zu vergleichen,um ein Verifizierungsergebnis bereitzustellen. Die Listenaktualisierungseinheit (204) ist dazu aufgebaut, ein Update der Aktualitätswertliste so zu erstellen, dass sie den empfangenen Wert als Antwort auf das Ergebnis der Verifizierung durch die Aktualitätswert-Verifizierungseinheit enthält, das anzeigt, dass (i) der empfangene Wert nicht größer als der Referenzwert ist und nicht kleiner als ein zulässiger Wert ist, der ein kleinster Aktualitätswert in der Aktualitätswertliste, und sich (ii) der empfangene Wert nicht in der Aktualitätswertliste befindet.

Description

  • QUERVERWEIS AUF VERWANDTE ANMELDUNG
  • Diese Anmeldung basiert auf der japanischen Patentanmeldung Nr. 2019 - 104708 , die am 04. Juni 2019 eingereicht wurde, bzw. der JP 2019-104 708 A , deren Beschreibung hier durch Bezugnahme aufgenommen ist.
  • TECHNISCHES GEBIET
  • Diese Anmeldung bezieht sich auf eine Verifizierung einer Nachricht zur Gewährleistung der Sicherheit einer elektronischen Steuereinheit (ECU, electronic control unit) und wird hauptsächlich für eine elektronische Steuereinheit im Fahrzeug verwendet.
  • STAND DER TECHNIK
  • In den letzten Jahren wurden elektronische Steuereinheiten in Fahrzeugen wie z.B. Automobilen nicht nur für das Fahren und Bremsen, sondern auch für das gesamte Umfeld innerhalb des Fahrzeugs und zur Kommunikation verwendet. Darüber hinaus werden die Entwicklungen von (i) sicheren Fahrunterstützungssystemen, die den Fahrer beim Fahren unterstützen, und (ii) automatischen Fahrsystemen, die den Fahrer selbst nicht benötigen, immer ausgeprägter. Bei diesen Trends wird der unbefugte Zugriff auf das mit den elektronischen Steuereinheiten verbundene bordeigene Netz zu einem großen Problem. Wenn die elektronische Steuereinheit durch den unberechtigten Zugriff eines böswilligen Dritten illegal kontrolliert wird, ist die Sicherheit beim Führen eines Fahrzeugs gefährdet. Daher wurden verschiedene Techniken hinsichtlich der Sicherheit von elektronischen Steuereinheiten für Fahrzeuge vorgeschlagen.
  • Einer der unbefugten Zugriffe ist der so genannte Replay-Angriff, bei dem eine legitime Nachricht gestohlen und die gestohlene Nachricht als die legitime Nachricht ausgegeben wird. Gegen einen solchen Replay-Angriff wurde ein Verfahren vorgeschlagen, bei dem anhand eines Zählers oder eines Zeitstempels für die Nachricht festgestellt wird, ob die Nachricht aufgrund des Replay-Angriffs eine korrekte oder eine gefälschte bzw. inkorrekte Nachricht ist.
  • Die Patentliteratur 1 offenbart zum Beispiel, dass eine illegale Nachricht aufgrund eines Replay-Angriffs erkannt wird, indem der Zählwert, der der Nachricht zugeteilt wurde, mit dem Zählwert verglichen wird, der von einer Steuereinheit auf der Empfangsseite gehalten wird. Des Weiteren setzt sich der Zähler nach dem Verfahren der Patentliteratur 1 aus einer Vielzahl von Zählwerttypen zusammen. Dies erschwert es dem Zählwert, eine Abweichung zwischen der sendenden Seite und der empfangenden Seite zu erzeugen. Selbst wenn der Zählwert die Abweichung erzeugt, ist es leicht möglich, die erneute Synchronisation zwischen der Sende- und der Empfangsseite wiederherzustellen.
  • Übrigens gibt es zwei Arten von Kommunikation: (i) eine Verbindungskommunikation, bei der eine Kommunikation gestartet wird, nachdem eine Verbindung hergestellt wurde, und (ii) eine verbindungslose bzw. drahtlose Kommunikation, bei der eine Kommunikation durchgeführt wird, ohne zuvor eine Verbindung herzustellen. Im Gegensatz zur Verbindungskommunikation ist bei der drahtlosen Kommunikation die Reihenfolge des Paketempfangs nicht garantiert. Die Reihenfolge der Paketübertragung auf der Sendeseite kann sich daher von der Reihenfolge des Paketempfangs auf der Empfangsseite unterscheiden. Es sei ein Fall angenommen, dass bei einer drahtlosen Kommunikation die Korrektheit / Falschheit der Nachricht anhand des Zählwerts bestimmt werden soll. In einem solchen Fall kann es vorkommen, dass die Empfangsseite die Zählwerte nicht fortlaufend empfängt; eine korrekte Nachricht kann somit unzutreffend als gefälscht erkannt werden.
  • Um auf einen solchen Fehler zu reagieren, beschreibt die Nicht-Patentliteratur 1 und 2 die folgende Technik. Das heißt, es wird ein zulässiger Bereich (ein Fenster) für die Sequenznummer festgelegt, und die Korrektheit / Falschheit der Nachricht wird basierend darauf bestimmt, ob die Sequenznummer, die in der von der übertragenden elektronischen Steuereinheit gesendeten Nachricht enthalten ist, innerhalb des vorgegebenen zulässigen Bereichs liegt oder nicht. Der zulässige Bereich der Nicht-Patentliteratur 1 und 2 wird anhand des Maximalwertes der in der Vergangenheit empfangenen Sequenznummer und des Wertes festgelegt, den man durch Subtraktion eines vorbestimmten Wertes vom Maximalwert erhält.
  • LITERATUR ZUM STAND DER TECHNIK
  • PATENTLITERATUR
  • Druckschrift 1: JP 2017-38 365 A
  • NICHT-PATENTLITERATUR
    • Nicht-Patentliteratur 1: Datagram Transport Layer Security, https://tools. ietf.org/rfc/rfc4347.txt
    • Nicht-Patentliteratur 2: IP Encapsulating Security Payload (ESP), https://tools. ietf.org/rfc/rfc2406.txt
  • KURZE ERLÄUTERUNG DER ERFINDUNG
  • Durch die Festlegung eines solchen zulässigen Bereichs ist es möglich, eine fehlerhafte Bestimmung von Nachrichten bei einer Änderung der Empfangsreihenfolge bis zu einem gewissen Grad zu unterdrücken. Mit der Technik der Nicht-Patentliteratur 1 und 2 ist es jedoch nicht möglich, einen zulässigen Bereich passend zu der tatsächlichen Kommunikationssituation einzustellen. Darüber hinaus hat der aktuelle Erfinder Folgendes festgestellt. Wenn der Zähler wie in der Patentliteratur 1 aus mehreren Arten von Zählwerten besteht, kann sich der Zählerwert plötzlich ändern, und die Empfangsreihenfolge wird zu dem Zeitpunkt geändert, zu dem eine solche plötzliche Änderung eintritt. Selbst wenn der in den Nicht-Patentliteraturstellen 1 und 2 beschriebene zulässige Bereich verwendet wird, kann es dann zu einer fehlerhaften Bestimmung kommen.
  • Es ist eine Aufgabe der vorliegenden Offenbarung, eine elektronische Steuereinheit bereitzustellen, die in der Lage ist, die Korrektheit / Falschheit einer Nachricht mit einer hohen Genauigkeit zu bestimmen.
  • Gemäß einem ersten Aspekt der vorliegenden Offenbarung wird eine elektronische Steuereinheit bereitgestellt, um eine Nachricht und einen der Nachricht zugeordneten Freshness-Value (FV) bzw. Aktualitätswert (AW) von einer sendeseitigen ECU (electronic control unit bzw. elektronische Steuereinheit) mittels einer drahtlosen Kommunikation zu empfangen. Der Aktualitätswert umfasst (i) obere Bits, die gemäß einer vorab festgelegten oberen Updatebedingung aktualisierbar sind, und (ii) untere Bits, die gemäß einer vorab festgelegten unteren Updatebedingung aktualisierbar sind. Die elektronische Steuereinheit umfasst eine Speichereinheit, eine Empfangseinheit, eine Einheit zur Überprüfung des Aktualitätswertes und eine Listenaktualisierungseinheit. Die Speichereinheit ist dazu aufgebaut, eine Aktualitätswertliste zu speichern, die eine vorab festgelegte Anzahl von Aktualitätswerten in absteigender Reihenfolge von einem Referenzwert anzeigt, der ein größter Aktualitätswert unter den in der Vergangenheit empfangenen Aktualitätswerten ist. Die Empfangseinheit ist dazu aufgebaut, die Nachricht und den Aktualitätswert zu empfangen, die von der sendeseitigen ECU übertragen werden. Die Aktualitätswert-Prüfeinheit bzw. AW-Verifizierungseinheit ist dazu aufgebaut, einen empfangenen Wert, der der von der Empfangseinheit empfangene Aktualitätswert ist, mit der Aktualitätswertliste zu vergleichen, um ein Prüfergebnis zu liefern. Die Listenaktualisierungseinheit ist dazu aufgebaut, ein Update der Aktualitätswertliste so zu erstellen, dass sie den empfangenen Wert als Antwort auf das Ergebnis der Verifizierung durch die Aktualitätswert-Verifizierungseinheit enthält, das anzeigt, dass (i) der empfangene Wert nicht größer als der Referenzwert und nicht kleiner als ein zulässiger Wert ist, der ein kleinster Aktualitätswert in der Aktualitätswertliste ist, und dass sich (ii) der empfangene Wert nicht in der Aktualitätswertliste befindet.
  • Gemäß einem zweiten Aspekt der vorliegenden Offenbarung wird ein Kommunikationssystem bereitgestellt, das eine sendeseitige ECU, die eine Nachricht unter Verwendung einer drahtlosen Kommunikation sendet, und eine empfangsseitige ECU umfasst, die die Nachricht empfängt. Die sendeseitige ECU umfasst eine Sendeeinheit, die dazu aufgebaut ist, die Nachricht und einen der Nachricht zugewiesenen Aktualitätswert zu senden. Der Aktualitätswert umfasst (i) obere Bits, die gemäß einer vorab festgelegten oberen Updatebedingung aktualisierbar sind, und (ii) untere Bits, die gemäß einer vorab festgelegten unteren Updatebedingung aktualisierbar sind. Die empfangsseitige ECU umfasst eine Speichereinheit, eine Empfängereinheit, eine Einheit zur Überprüfung des Aktualitätswertes und eine Einheit zur Aktualisierung der Liste. Die Speichereinheit ist dazu aufgebaut, eine Aktualitätswertliste bzw. AW-Liste zu speichern, die eine vorbestimmte Anzahl von Aktualitätswerten in absteigender Reihenfolge von einem Referenzwert anzeigt, der ein größter Aktualitätswert unter den Aktualitätswerten ist, die in der Vergangenheit von der empfangsseitigen ECU empfangen wurden. Die Empfangseinheit ist dazu aufgebaut, die Nachricht und den Aktualitätswert zu empfangen, die von der sendeseitigen ECU übertragen werden. Die AW-Prüfeinheit bzw. AW-Verifizierungseinheit ist dazu aufgebaut, einen empfangenen Wert, der der von der Empfangseinheit empfangene Aktualitätswert ist, mit der Aktualitätswertliste zu vergleichen, um ein Prüf- bzw. Verifizierungsergebnis zu liefern. Die Listenaktualisierungseinheit ist dazu aufgebaut, die Aktualitätswertliste zu aktualisieren, um den empfangenen Wert als Antwort auf das Verifizierungsergebnis mittels der AW-Verifizierungseinheit beizubehalten, das anzeigt, dass (i) der empfangene Wert nicht größer als der Referenzwert und nicht kleiner als ein zulässiger Wert ist, der ein kleinster Aktualitätswert in der Aktualitätswertliste ist, und sich (ii) der empfangene Wert nicht in der Aktualitätswertliste befindet.
  • Gemäß einem dritten Aspekt der vorliegenden Offenbarung wird ein Nachrichtenempfangsprogramm bereitgestellt, das von einer empfangsseitigen ECU ausführbar ist, die dazu aufgebaut ist, eine Nachricht und einen Aktualitätswert, der der Nachricht von einer sendeseitigen ECU zugeordnet wird, mittels einer drahtlosen Kommunikation zu empfangen. Der Aktualitätswert umfasst (i) obere Bits, die gemäß einer vorab festgelegten oberen Updatebedingung aktualisierbar sind, und (ii) untere Bits, die gemäß einer vorab festgelegten unteren Updatebedingung aktualisierbar sind. Das Nachrichtenempfangsprogramm enthält Anweisungen zum: (i) Empfangen der Nachricht und des von der sendeseitigen ECU übertragenen Aktualitätswertes; (ii) Vergleichen eines empfangenen Wertes, der der empfangene Aktualitätswert ist, mit einer Aktualitätswertliste, die eine vorab festgelegte Anzahl von Aktualitätswerten in einer absteigenden Reihenfolge ausgehend von einem Referenzwert anzeigt, der ein größter Aktualitätswert unter den von der empfangsseitigen ECU empfangenen Aktualitätswerten ist, um ein Verifizierungsergebnis bereitzustellen; und (iii) Erstellen eines Updates der Aktualitätswertliste, um den empfangenen Wert als Antwort auf das Verifizierungsergebnis beizubehalten, das anzeigt, dass (a) der empfangene Wert nicht größer als der Referenzwert und nicht kleiner als ein zulässiger Wert ist, der ein kleinster Aktualitätswert in der Aktualitätswertliste ist, und sich (b) der empfangene Wert nicht in der Aktualitätswertliste befindet.
  • Gemäß einem vierten Aspekt der vorliegenden Offenbarung wird ein Nachrichtenempfangsverfahren bereitgestellt, das von einer empfangsseitigen ECU ausgeführt wird, die dazu aufgebaut ist, eine Nachricht und einen der Nachricht zugeordneten Aktualitätswert von einer sendeseitigen ECU mittels einer drahtlosen Kommunikation zu empfangen. Der Aktualitätswert umfasst (i) obere Bits, die gemäß einer vorab festgelegten oberen Updatebedingung aktualisierbar sind, und (ii) untere Bits, die gemäß einer vorab festgelegten unteren Updatebedingung aktualisierbar sind. Das Nachrichtenempfangsverfahren umfasst Folgendes: (i) Empfangen der Nachricht und des von der sendeseitigen ECU übertragenen Aktualitätswertes; (ii) Vergleichen eines empfangenen Wertes, der der empfangene Aktualitätswert ist, mit einer Aktualitätswertliste, die eine vorab festgelegte Anzahl von Aktualitätswerten in einer absteigenden Reihenfolge von einem Referenzwert anzeigt, der ein größter Aktualitätswert unter den von der empfangsseitigen ECU empfangenen Aktualitätswerten ist, um ein Verifizierungsergebnis bereitzustellen und (iii) Aktualisieren der Aktualitätswertliste, um den empfangenen Wert als Antwort auf das Verifizierungsergebnis beizubehalten, das anzeigt, dass (a) der empfangene Wert nicht größer als der Referenzwert und nicht kleiner als ein zulässiger Wert ist, der ein kleinster Aktualitätswert in der Aktualitätswertliste ist, und sich (b) der empfangene Wert nicht in der Aktualitätswertliste befindet.
  • AUSWIRKUNGEN DER ERFINDUNG
  • Gemäß der elektronischen Steuereinheit, dem Kommunikationssystem, dem Programmprodukt zum Nachrichtenempfang und dem Verfahren zum Nachrichtenempfang der vorliegenden Offenbarung kann die Korrektheit / Falschheit einer Nachricht anhand eines zulässigen Bereichs bestimmt werden, der automatisch passend zu einem Kommunikationsstatus zwischen den ECUs eingestellt wird. Dadurch kann die Genauigkeit der Bestimmung verbessert werden. Darüber hinaus ist es selbst dann, wenn sich der Aktualitätswert abhängig von der Zusammensetzung des Aktualitätswertes abrupt ändert, möglich, die Korrektheit / Falschheit der Meldung hochgenau zu bestimmen.
  • Figurenliste
    • 1 ist ein Blockschaubild, das einen Aufbau eines Kommunikationssystems und elektronischer Steuereinheiten bzw. ECUs gemäß einer ersten Ausführungsform zeigt;
    • 2 ist ein Schaubild, das die im Kommunikationssystem gemäß der ersten Ausführungsform gesendeten und empfangenen Frames darstellt;
    • 3 ist ein Schaubild, das einen Aktualitätswert gemäß der ersten Ausführungsform veranschaulicht;
    • 4 ist ein Schaubild, das den Betrieb einer empfangsseitigen ECU gemäß der ersten Ausführungsform veranschaulicht;
    • 5 ist ein Schaubild zur Veranschaulichung von Listen von Aktualitätswerten, die gemäß der ersten Ausführungsform empfangen wurden;
    • 6 ist ein Schaubild, das ein weiteres Beispiel für eine Liste von Aktualitätswerten zeigt, die gemäß der ersten Ausführungsform empfangen wurden;
    • 7 ist ein Blockschaubild, das einen Aufbau eines Kommunikationssystems und von ECUs gemäß einer zweiten Ausführungsform veranschaulicht;
    • 8 ist ein Schaubild, das den Betrieb einer empfangsseitigen ECU gemäß der zweiten Ausführungsform veranschaulicht; und
    • 9 ist ein Schaubild zur Veranschaulichung des Betriebs der empfangsseitigen ECU gemäß der zweiten Ausführungsform.
  • AUSFÜHRUNGSFORMEN DER ERFINDUNG
  • Nachstehend werden Ausführungsformen der vorliegenden Offenbarung anhand der Figuren beschrieben. Die vorliegende Offenbarung, auf die im Folgenden Bezug genommen wird, erläutert die in den Ansprüchen beschriebene Offenbarung und ist nicht auf die folgenden Ausführungsformen beschränkt. Ferner bedeuten zumindest die Wörter innerhalb von „Anführungszeichen“ die in den Ansprüchen beschriebenen Wörter und Ausdrücke und sind nicht auf die folgenden Ausführungsformen beschränkt. Aufbauten und Verfahren, die in Unteransprüchen aus den Ansprüchen beschrieben werden, Aufbauten und Verfahren der nachstehend erläuterten Ausführungsform, die den in den Unteransprüchen beschriebenen Aufbauten und Verfahren entsprechen, und die Aufbauten und Verfahren, die nur in der nachstehend erläuterten Ausführungsform ohne Erläuterung in den Ansprüchen beschrieben sind, sollten als beliebig kombinierbare Aufbauten und Verfahren der vorliegenden Offenbarung interpretiert werden. Falls der Umfang der Ansprüche breiter ist als die Erläuterungen der Ausführungsformen, zeigen die in den folgenden Ausführungsformen beschriebenen Aufbauten und Verfahren nur Beispiele für Aufbauten und Verfahren der vorliegenden Offenbarung, die als beliebig einsetz- bzw. kombinierbare Aufbauten und Verfahren in der vorliegenden Offenbarung zu interpretieren sind. In jedem Fall sollten die grundlegenden Aufbauten und Verfahren der vorliegenden Offenbarung basierend auf den unabhängigen Ansprüchen interpretiert werden. Alle in den Ausführungsformen beschriebenen Auswirkungen sind Auswirkungen, die durch einen beispielhaften Aufbau einer Ausführungsform der vorliegenden Offenbarung erzielt werden, und sind nicht notwendigerweise Auswirkungen der vorliegenden Offenbarung. Wenn es mehrere Ausführungsformen gibt, ist ein in jeder Ausführungsform offengelegter Aufbau nicht auf die jeweilige Ausführungsform beschränkt, sondern kann über die Ausführungsformen hinweg kombiniert werden. So kann beispielsweise ein in einer Ausführungsform offenbarter Aufbau mit anderen Ausführungsformen kombiniert werden. Die in den jeweiligen zahlreichen Ausführungen offenbarten Aufbauten können gesammelt und kombiniert werden. Das in der vorliegenden Offenbarung beschriebene Problem ist kein allgemein bekanntes Problem, sondern wurde von Personen, einschließlich des Erfinders, unabhängig von anderen herausgefunden, und ist eine Tatsache, die den erfinderischen Schritt zusammen mit dem Aufbau und dem Verfahren gemäß der vorliegenden Offenbarung bestätigt.
  • Die nachstehend erläuterten Ausführungsformen werden hauptsächlich anhand einer fahrzeuginternen ECU für ein Kraftfahrzeug als Beispiel beschrieben, aber die vorliegende Offenbarung umfasst auch eine elektronische Steuereinheit und dergleichen, die nicht für die Verwendung in einem Kraftfahrzeug bestimmt ist, sofern dies nicht durch den Umfang der Ansprüche beschränkt wird.
  • (Erste Ausführungsform)
  • 1. Aufbau des Kommunikationssystems
  • 1 zeigt ein Kommunikationssystem 10 der vorliegenden Ausführungsform. Das Kommunikationssystem 10 umfasst eine Vielzahl von „elektronischen Steuereinheiten“ und einen sie verbindenden Kommunikationsweg. Die mehreren „elektronischen Steuereinheiten“ umfassen eine sendeseitige elektronische Steuereinheit 100 (im Folgenden: sendeseitige ECU 100), die einen Frame mit einer Nachricht sendet, und eine empfangsseitige elektronische Steuereinheit 200 (im Folgenden: empfangsseitige ECU 200). Die folgenden Ausführungsformen werden unter der Prämisse beschrieben, dass eine Vielzahl von elektronischen Steuereinheiten Frames unter Verwendung eines drahtlosen Kommunikationsverfahrens wie Ethernet (eingetragene Marke) sendet und empfängt, aber die vorliegende Offenbarung ist nicht auf dieses Beispiel beschränkt.
  • Hier kann die „elektronische Steuereinheit“ jedes Gerät sein, das Informationen erfassen oder verarbeiten und Informationen an ein anderes Gerät senden und/oder von diesem empfangen kann. Neben fahrzeuginternen elektronischen Steuereinheiten gehören zum Beispiel auch Computer (Personalcomputer, eingebettete Mikrochips usw.), Kommunikationsgeräte (Mobiltelefone, Smartphones, Tablets, Basisstationen usw.), Leiterplatten, Halbleitermodule oder Halbleiter zur „elektronischen Steuereinheit“. Alle Arten von Fertigerzeugnissen, Halbfertigerzeugnissen und Teilen können ebenfalls darunter fallen.
  • 2. Aufbau der sendeseitigen ECU
  • Die sendeseitige ECU 100 der vorliegenden Ausführungsform umfasst eine Nachrichtenerzeugungseinheit 101, eine AW-Erzeugungseinheit 102 und eine Sendeeinheit 103. Die sendeseitige ECU 100 und die einzelnen Funktionsblöcke, aus denen die sendeseitige ECU 100 besteht, können durch eine dedizierte oder allgemein nutzbare Zentraleinheit bzw. CPU, einen Speicher, einen Bus und ein Programm, das in den Speicher geladen und ausgeführt wird, oder durch eine dedizierte Hardware wie ein Halbleitermodul oder eine Leiterplatte implementiert werden. Das gleiche gilt für die später beschriebene empfangsseitige ECU 200.
  • Die Nachrichtenerzeugungseinheit 101 erzeugt eine Nachricht (MSG), die an die empfangsseitige ECU 200 zu übertragen ist. Konkrete Beispiele für Nachrichten im Falle einer fahrzeuginternen ECU, die in ein Fahrzeug eingebaut ist, umfassen verschiedene Steuerdaten zum Steuern des Fahrzeugs. Im Falle einer ECU, die nicht für den Einsatz im Fahrzeug bestimmt ist, können beispielsweise Erkennungsdaten, Textdaten, Sprachdaten, Bilddaten usw., die von einem Sensor oder ähnlichem erfasst werden, als Beispiele für Nachrichten benannt werden.
  • Dabei ist es bei der Kommunikation zwischen den elektronischen Steuereinheiten nicht möglich, Daten auf einmal zu senden und zu empfangen, die die für jedes Kommunikationsverfahren festgelegte maximale Datengröße (MTU: Maximum Transmission Unit) überschreiten. Die Daten, die die MTU überschreiten, müssen daher in Größen aufgeteilt werden, die kleiner als die MTU sind. Wenn also die Fahrzeugsteuerdaten oder dergleichen eine vorbestimmte MTU überschreiten, teilt die Nachrichtenerzeugungseinheit 101 die Fahrzeugsteuerdaten oder dergleichen in eine übertragbare Größe und erzeugt eine Vielzahl von aufgeteilten Nachrichten. Die nachstehend gezeigte Ausführungsform beschreibt ein Beispiel, in dem die Nachrichtenerzeugungseinheit 101 Daten unterteilt, um aufgeteilte Nachrichten zu erzeugen. Wenn jedoch die Größe der Steuerdaten gleich groß wie oder kleiner als die maximale Datengröße ist, kann die Nachrichtenerzeugungseinheit 101 die Daten an die empfangsseitige ECU 200 übertragen, ohne die Daten aufzuteilen.
  • Die AW-Erzeugungseinheit 102 erzeugt einen „Aktualitätswert (AW)“ bzw. „Freshness Value (FV)“ passend zu der Anzahl oder der geplanten Anzahl von Übertragungen von Frames, die von der Sendeeinheit 103 übertragen werden, was später beschrieben wird. Dieser Aktualitätswert ist ein Wert, der gemäß den vorab festgelegten Updatebedingungen aktualisiert wird. Die AW-Erzeugungseinheit 102 erzeugt einen Aktualitätswert, indem sie beispielsweise die Anzahl der Übertragungen für jeden Nachrichten-ID-Satz passend zur Art der Daten in der im Frame gespeicherten Nachricht zählt. Wenn z. B. der Frame, dem die Nachrichten-ID # 1 zugeordnet ist, viermal übertragen wird, ist 4 der Aktualitätswert der Nachricht # 1 (AW = 4). In den nachstehend erläuterten Ausführungsformen wird die Anzahl der Übertragungen eines Frames als Nachrichtenzähler (MsgCnt) bezeichnet. Die Updatebedingung des Nachrichtenzählers (die der „unteren Updatebedingung“ entspricht) ist die Übertragung eines Frames von der sendeseitigen ECU 100.
  • Hier ist der „Aktualitätswert“ ein Wert, der angibt, wie oft ein bestimmter Frame von einer sendeseitigen ECU gesendet oder von einer empfangsseitigen ECU empfangen wurde, und ist ein Konzept, das einen Zähler und eine Sequenznummer umfasst. Neben dem absoluten Wert ist zum Beispiel auch ein relativer Wert enthalten, der von einer bestimmten Referenz aus gezählt wird.
  • Die AW-Erzeugungseinheit 102 kann einen Aktualitätswert unter Berücksichtigung der Anzahl der „Aktivierungen“ der sendeseitigen ECU zusätzlich zur Anzahl der Übertragungen des Frames erzeugen. Die AW-Erzeugungseinheit 102 zählt beispielsweise die Anzahl der Aktivierungen der sendeseitigen ECU, die Anzahl der Aufweckvorgänge, die Anzahl der Resets oder die Anzahl der Male, die die Zündung des mit dem Kommunikationssystem 10 ausgestatteten Fahrzeugs von AUS auf EIN geschaltet wird. Anschließend wird ein Aktualitätswert erzeugt, der einen Wert umfasst, der die vorstehend genannte Anzahl angibt, und einen Wert, der die Anzahl der Übertragungen des Frames angibt. In den folgenden Ausführungsformen wird die Anzahl der Aktivierungen der sendeseitigen ECU als Fahrtenzähler (TripCnt) bezeichnet. Die Updatebedingung des Fahrtenzählers (die der „Updatebedingung der oberen Seite“ entspricht) ist die Aktivierung der sendeseitigen Steuereinheit 100. Wenn sich der Aktualitätswert aus einem Fahrtenzähler und einem Nachrichtenzähler zusammensetzt, kann der Wert des Nachrichtenzählers initialisiert werden, also jedes Mal auf 0 zurückgesetzt werden, wenn der Fahrtenzähler erhöht oder initialisiert wird.
  • In diesem Zusammenhang bedeutet „Aktivierung“ den Übergang von einem Zustand, in dem die elektronische Steuereinheit nicht arbeitet, in einen Zustand, in dem sie arbeiten kann. Dazu gehört nicht nur das Einschalten der elektronischen Steuereinheit, um sie zu aktivieren, sondern auch das Aufwecken der elektronischen Steuereinheit aus dem Ruhezustand und die Rückkehr der elektronischen Steuereinheit aus dem Reset-Zustand. Zudem kann die Anzahl der „Aktivierungen“ angeben, wie oft die elektronische Steuereinheit daraufhin aktiviert wurde. Dabei muss es sich nicht unbedingt um die Anzahl der Aktivierungen handeln, die durch Zählen der Aktivierungen der elektronischen Steuereinheit ermittelt werden. Zum Beispiel kann, um die Anzahl der Aktivierungen zu erhalten, die Anzahl der Aktivierungen des Systems oder des Fahrzeugs gezählt werden, das mit der elektronischen Steuereinheit ausgestattet ist.
  • Die Sendeeinheit 103 fügt einen von der AW-Erzeugungseinheit 102 erzeugten Aktualitätswert zu der von der Nachrichtenerzeugungseinheit 101 erzeugten Nachricht hinzu oder fügt ihn ein und sendet einen Frame, zu dem ein Header hinzugefügt wird. Eine bestimmte empfangsseitige ECU 200 kann als das Sendeziel angegeben werden, aber das Senden kann auch durch Übertragung ohne Angabe des Sendeziels erfolgen. Das heißt, es ist nur erforderlich, dass die Nachricht oder der Frame von der empfangsseitigen ECU 200 empfangen wird.
  • Wenn das Kommunikationssystem 10 ein fahrzeuginternes System ist, kann die Erzeugung des Aktualitätswertes und die Hinzufügung des Aktualitätswertes zur Nachricht beispielsweise durch die SecOC (Secure Onboard Communication) von AUTO-SAR realisiert werden, die die Standard-Software-Architektur der fahrzeuginternen elektronischen Steuereinheit formuliert.
  • 2 ist ein Schaubild, das ein Beispiel für einen von der sendeseitigen Steuereinheit 100 übertragenen Frame darstellt. Jeder Frame von 2 umfasst (i) einen Ethernet-Header (Eth-Header), der von der Datenverbindungsschicht herrührt, (ii) einen IP-Header, der von der Netzwerkschicht herrührt, (iii) einen UDP-Header, der von der Transportschicht vorgegeben wird, (iv) eine geteilte Nachricht und (v) einen von der AW-Erzeugungseinheit 102 erzeugten Aktualitätswert (AW).
  • In 2 werden die geteilten Nachrichten 1 bis n und die Aktualitätswerte 1 bis n jeweils in den Frames 1 bis n gespeichert. Das heißt, die Nachrichtenerzeugungseinheit 101 teilt die Steuerdaten auf, um n geteilte Nachrichten zu erzeugen. Die Aktualitätswerte 1 bis n für diese geteilten Nachrichten sind zudem aufeinanderfolgende Werte. Dann sendet die Sendeeinheit 103 die in 2 gezeigten Frames der Reihe nach beginnend mit Frame 1.
  • Man bemerke, dass 2 einen Frame zeigt, wenn eine drahtlose Kommunikationsmethode verwendet und ein UDP-Header zur Nachricht hinzugefügt wird. Wenn die Kommunikation jedoch mit einem verbindenden Kommunikationsverfahren durchgeführt wird, kann ein TCP-Header statt des UDP-Headers hinzugefügt werden.
  • 3 zeigt außerdem ein Beispiel für den Aufbau des im Frame enthaltenen Aktualitätswertes. Der Aktualitätswert in 3 besteht aus oberen 8 Bit (bzw. einem Byte), die einen Fahrtenzähler zeigen, und unteren 8 Bit, die einen Nachrichtenzähler zeigen. Der in 3 dargestellte AW1 besteht beispielsweise aus einem Fahrtenzähler „00001100“ und einem Nachrichtenzähler „001100100“. Im Gegensatz dazu wird in AW2 der Fahrtenzähler in der 8. Stelle der oberen Bits im Vergleich zu AW1 um 1 erhöht; der Wert des Nachrichtenzählers wird mit der Erhöhung des Fahrtenzählers initialisiert, und der Wert wird von 1 an neu gezählt. Wie in 3 gezeigt ist, erhöht sich der Wert des gesamten Aktualitätswertes um maximal 2 hoch 8 (28), wenn der Wert der achten Ziffer in den oberen Bits steigt.
  • Der Frame von 2 und der Aktualitätswert von 3 sind lediglich Beispiele. Es ist nicht nötig, sich auf diese Aufbauten zu beschränken. Beispielsweise kann der in 3 gezeigte Aktualitätswert aus den oberen Bits bestehen, die einen Nachrichtenzähler anzeigen, und den unteren Bits, die einen Fahrtenzähler anzeigen. Alternativ kann sich der Aktualitätswert auch aus anderen Werten als dem Nachrichtenzähler und dem Fahrtenzähler zusammensetzen. Anstelle des Fahrtenzählers oder des Nachrichtenzählers kann der Aktualitätswert beispielsweise aus einem Zähler bestehen, dessen Wert in regelmäßigen Abständen steigt oder sinkt. Wenn sich der Aktualitätswert aus zwei oder mehr Zählern zusammensetzt, ist es jedoch wünschenswert, dass der Zähler, der die oberen Bits bildet, und der Zähler, der die unteren Bits bildet, Werte sind, die durch unterschiedliche Updatebedingungen aktualisierbar sind.
  • Zudem kann der Höchstwert für den Wert des Fahrtenzählers oder des Nachrichtenzählers im Voraus festgelegt werden. Wenn in einem solchen Fall der Wert des Zählers den Maximalwert überschreitet, wenn also die Updatebedingung auftritt, nachdem der Maximalwert erreicht ist, wird der Wert des Zählers initialisiert und die Zählung neu gestartet.
  • 3. Aufbau der empfangsseitigen ECU
  • Die empfangsseitige ECU 200 der vorliegenden Ausführungsform umfasst eine Empfangseinheit 201, eine Speichereinheit 202, eine AW-Verifizierungseinheit 203 und eine Listenaktualisierungseinheit 204.
  • Die Empfangseinheit 201 empfängt den von der sendeseitigen ECU 100 übertragenen Frame. Dieser Frame ist der in 2 gezeigte Frame, also der Frame, in dem die Nachricht und der der Nachricht zugeordnete Aktualitätswert gespeichert sind.
  • Wie vorstehend beschrieben ist, wird in der vorliegenden Ausführungsform die Kommunikation zwischen elektronischen Steuereinheiten unter Verwendung eines drahtlosen Kommunikationsverfahrens durchgeführt. Daher kann, selbst wenn die sendeseitige ECU 100 die in 2 gezeigten Frames in der mit Frame 1 beginnenden Reihenfolge sendet, die Reihenfolge der Frames auf dem Kommunikationsweg geändert werden. Das heißt, die Empfangseinheit 201 kann den Frame 2 oder den Frame n vor dem in 2 gezeigten Frame 1 empfangen.
  • Bei der Speichereinheit 202 handelt es sich um einen nichtflüchtigen Speicher, wie z. B. einen Flash-Speicher oder eine Festplatte (HDD), oder um einen flüchtigen Speicher, wie z. B. einen DRAM oder SRAM. Die Speichereinheit 202 speichert eine Liste empfangener Aktualitätswerte (nachfolgend AW-Liste). Die AW-Liste ist eine Liste, die eine „vorab festgelegte“ Zahl von Aktualitätswerten in absteigender Reihenfolge zeigt, beginnend mit dem größten Aktualitätswert unter den Aktualitätswerten, die von der sendeseitigen ECU 100 gesendet und von der Empfangseinheit 201 empfangen wurden. Mehr als ein identischer Aktualitätswert wird nicht in der AW-Liste geführt. In der AW-Liste wird derjenige mit dem größten Wert als ein Referenzwert verwendet, und derjenige mit dem kleinsten Wert als ein zulässiger Wert verwendet. Der zulässige Wert bezieht sich auf einen Wert, der eine Verringerung des Aktualitätswertes in Anbetracht der Änderung der Reihenfolge der Frames auf dem Kommunikationsweg erlaubt. Hier kann der Begriff „vorab festgelegt“ auch „immer konstant“ und „eindeutig anhand der Umstände bestimmt“ bedeuten.
  • Die Speichereinheit 202 kann die AW-Liste für jede Nachrichten-ID und jeden Nachrichtentyp speichern. In diesem Fall kann die Anzahl der in der AW-Liste enthaltenen Aktualitätswerte für jede AW-Liste in Abhängigkeit von der Nachrichten-ID und dem Nachrichtentyp unterschiedlich sein, und die Anzahl der Aktualitätswerte für jede AW-Liste wird vom Werk oder vom Händler vorab festgelegt. Alternativ kann die Anzahl der in der AW-Liste enthaltenen Aktualitätswerte, wie später beschrieben wird, ein Wert sein, der sich im Laufe der Zeit abhängig von verschiedenen Parametern ändert.
  • Wenn die nachstehend erläuterte AW-Verifizierungseinheit 203 feststellt, dass der Aktualitätswert korrekt ist, wird die in der Speichereinheit 202 gespeicherte AW-Liste aktualisiert, um den als korrekt ermittelten Aktualitätswert beizubehalten. Daher wird unmittelbar nach dem ersten Start des mit dem Kommunikationssystem 10 ausgestatteten Fahrzeugs kein Aktualitätswert von der sendeseitigen ECU 100 übertragen, und es wird natürlich auch kein Aktualitätswert als korrekt ermittelt. Wenn es sich bei der Speichereinheit 202 um einen flüchtigen Speicher handelt, gilt das Gleiche unmittelbar nach einem Neustart des Fahrzeugs oder dem Einschalten der Zündung. Daher kann der vom Werk oder vom Händler eingestellte Anfangswert vorab in der Speichereinheit 202 als der Referenzwert der AW-Liste gespeichert werden. Wird der Wert des Fahrtenzählers initialisiert, wird die in der Speichereinheit 202 gespeicherte AW-Liste ebenfalls initialisiert und auf den Anfangswert zurückgesetzt.
  • Besteht der Aktualitätswert aus einem Fahrtenzähler und einem Nachrichtenzähler, kann der Fahrtenzählerwert unter den Aktualitätswerten in dem nichtflüchtigen Speicher der Speichereinheit 202 gespeichert werden, und der Nachrichtenzählerwert kann im flüchtigen Speicher der Speichereinheit 202 gespeichert werden.
  • Die AW-Verifizierungseinheit 203 vergleicht den von der Empfangseinheit 201 empfangenen Aktualitätswert (im Folgenden als empfangener Wert bezeichnet) mit dem Aktualitätswert, der in der in der Speichereinheit 202 gespeicherten AW-Liste enthalten ist. Als Ergebnis des Vergleichs wird festgestellt, dass der empfangene Wert korrekt ist, wenn der empfangene Wert die folgende erste Bedingung oder zweite Bedingung erfüllt, und das Verifizierungsergebnis ist OK oder positiv. Hier ist die erste Bedingung, dass der empfangene Wert größer ist als der Referenzwert (Referenz < empfangen). Die zweite Bedingung ist, dass (i) der empfangene Wert nicht größer als der Referenzwert und nicht kleiner als der zulässige Wert ist (zulässig ≤ empfangen ≤ Referenz), und (ii) der empfangene Wert nicht in der AW-Liste enthalten ist. Erfüllt der empfangene Wert dagegen die erste und die zweite Bedingung nicht, z. B. wenn der empfangene Wert kleiner als der zulässige Wert ist (empfangener Wert < zulässiger Wert), ist der Aktualitätswert falsch und das Prüfergebnis wird als NG oder negativ bestimmt.
  • Wenn die AW-Verifizierungseinheit 203 feststellt, dass der empfangene Wert korrekt ist, aktualisiert die Listenaktualisierungseinheit 204 die AW-Liste so, dass sie den als korrekt ermittelten empfangenen Wert enthält. Die aktualisierte AW-Liste wird zu einer Liste, die den empfangenen Wert enthält.
  • Wenn die Speichereinheit 202 eine Vielzahl von AW-Listen speichert, aktualisiert die Listenaktualisierungseinheit 204 die AW-Liste, die zur Nachrichten-ID des empfangenen Wertes gehört. Das heißt, wenn das Verifizierungsergebnis OK ist, hält die empfangsseitige ECU den Aktualitätswert und aktualisiert die AW-Liste entsprechend der Message-ID. Dann enthält die AW-Liste die Werte bis n (E Größe_der_Liste_empfangener-Aktualitätswerte), beginnend mit dem größten Wert aus den bisher vorliegenden Aktualitätswerten.
  • Die Listenaktualisierungseinheit 204 kann zudem die Anzahl der in der AW-Liste enthaltenen Aktualitätswerte abhängig von (i) dem Kommunikationsstatus des Kommunikationssystems, wie z. B. dem Zustand des Auftretens der Änderung der Reihenfolge der Frames im Kommunikationsweg, der Frameempfangshäufigkeit oder dem Zustand der Überlastung des Kommunikationswegs, (ii) der Anzahl der geteilten Nachrichten oder (iii) der Größe der geteilten Nachricht einstellen. Wenn beispielsweise die Reihenfolge der Frames geändert wird, erweitert die Listenaktualisierungseinheit 204 den zulässigen Bereich der Aktualitätswerte, indem sie die Anzahl der in der AW-Liste enthaltenen Aktualitätswerte erhöht. Wird die Reihenfolge der Frames nicht geändert, behält die Listenaktualisierungseinheit 204 die Anzahl der Aktualitätswerte bei oder reduziert sie, um den zulässigen Bereich der Aktualitätswerte nicht zu erweitern. Man bemerke, dass anhand des Ergebnisses der Vergleichsüberprüfung durch die AW-Verifizierungseinheit 203 bestimmt werden kann, ob die Reihenfolge der Bilder zu ändern ist oder nicht, ob also die erste Bedingung oder die zweite Bedingung erfüllt ist. Entspricht das Überprüfungsergebnis der AW-Verifizierungseinheit 203 der ersten Bedingung, wird also bestimmt, dass sich die Reihenfolge der Bilder nicht geändert hat. Entspricht das Überprüfungsergebnis der AW-Verifizierungseinheit 203 der zweiten Bedingung, wird bestimmt, dass sich die Reihenfolge der Bilder geändert hat. Indem die Anzahl der in der AW-Liste enthaltenen Aktualitätswerte passend zum Kommunikationsstatus geändert wird, ist es möglich, einen zulässigen Bereich von Aktualitätswerten festzulegen, der für den tatsächlichen Kommunikationsstatus zwischen den elektronischen Steuereinheiten geeignet ist.
  • 4. Verfahren zum Nachrichtenempfang und Programm zur Ausführung dieses Verfahrens
  • Ein Verfahren zum Nachrichtenempfang, das von der empfangsseitigen ECU 200 ausgeführt wird, wird anhand von 4 beschrieben.
  • Man bemerke, dass 4 nicht nur ein Verfahren zum Empfangen einer Nachricht in der elektronischen Steuereinheit zeigt, sondern auch Verarbeitungsschritte eines Programms, das von der elektronischen Steuereinheit ausgeführt wird. Man bemerke, dass die Reihenfolge der in 4 dargestellten Schritte in geeigneter Weise geändert werden kann, es sei denn, ein bestimmter Schritt ist eine Voraussetzung für den nächsten Schritt. Das gilt auch für eine später beschriebene zweite Ausführungsform.
  • Die empfangsseitige Steuereinheit 200 führt jeden der folgenden Schritte aus. Die Nachricht und der der Nachricht zugewiesene Aktualitätswert (AW) werden von der sendeseitigen ECU empfangen (S101). Anschließend wird der empfangene Wert, also der in S101 empfangene Aktualitätswert, mit dem Referenzwert und dem zulässigen Wert in der in der Speichereinheit gespeicherten AW-Liste verglichen (S102). Als Ergebnis des Vergleichs in S102 wird der empfangene Wert weiter mit der AW-Liste verglichen, wenn der empfangene Wert nicht größer als der Referenzwert und nicht kleiner als der zulässige Wert ist, und es wird bestimmt, ob der empfangene Wert in der AW-Liste enthalten ist oder nicht (S103). Wenn der empfangene Wert nicht empfangen wurde und nicht in der AW-Liste enthalten ist, wird festgestellt, dass der empfangene Wert korrekt ist (S104). Ferner wird als Ergebnis des Vergleichs in S102 selbst dann, wenn der empfangene Wert größer als der Referenzwert ist, bestimmt, dass der empfangene Wert korrekt ist (S104). Wenn dann in S104 bestimmt wird, dass der empfangene Wert korrekt ist, wird die AW-Liste aktualisiert, um den als korrekt bestimmten empfangenen Wert zu enthalten (S105).
  • Andererseits wird als Ergebnis des Vergleichs in S102, wenn der empfangene Wert kleiner als der zulässige Wert ist, bestimmt, dass der empfangene Wert nicht korrekt ist (S106). Ferner wird als Ergebnis des Vergleichs in S103, selbst wenn der empfangene Wert in der AW-Liste ist, bestimmt, dass der empfangene Wert nicht korrekt bzw. nicht normal ist (S106). Wenn dann in S106 festgestellt wird, dass der empfangene Wert nicht korrekt bzw. nicht normal ist, wird der Frame verworfen, dem der empfangene Wert zugewiesen ist (S107).
  • 5 zeigt ein Beispiel für die AW-Liste der vorliegenden Ausführungsform. In diesem Beispiel werden der Referenzwert und der zulässige Wert vorab als Anfangswerte auf 0 gesetzt. Außerdem zeigt die AW-Liste einen Fall, in dem fünf Aktualitätswerte nacheinander ausgehend vom Referenzwert angezeigt werden.
  • In 5 zeigt (a) die AW-Liste 1 unmittelbar nach der ersten Aktivierung des Fahrzeugs. Da es keinen Aktualitätswert gibt, der von der AW-Verifizierungseinheit 203 als korrekt ermittelt wurde, zeigt die AW-Liste 1 nur den Referenzwert und den zulässigen Wert (AW = 0), die als die Anfangswerte festgelegt wurden.
  • Man betrachte den Fall, in dem der Aktualitätswert (AW = 1) in dem in (a) in 5 dargestellten Zustand der AW-Liste 1 empfangen wird. Da der empfangene Wert (AW = 1) größer ist als der Referenzwert (AW = 0), wird festgestellt, dass der empfangene Wert korrekt ist, und die AW-Liste wird aktualisiert. In 5 zeigt (b) die AW-Liste 2 nach Aktualisierung der AW-Liste 1. In der AW-Liste 2 ist der maximale Aktualitätswert (AW = 1) der Referenzwert und der minimale Aktualitätswert (AW = 0) der zulässige Wert.
  • Als Nächstes wird der Fall untersucht, in dem der Aktualitätswert (AW = 5) in dem in (b) in 5 dargestellten Zustand der AW-Liste 2 empfangen wird. Der empfangene Wert (AW = 5) ist ein Wert, der gleich groß wie oder größer als der Referenzwert (AW = 1) ist (also ein Wert, der nicht kleiner als der Referenzwert (AW = 1) ist). Daher wird der empfangene Wert als korrekt eingestuft und die AW-Liste aktualisiert. In 5 zeigt (c) die AW-Liste 3 nach der Aktualisierung der AW-Liste 2.
  • Nehmen wir weiter den Fall an, dass der Aktualitätswert (AW = 3) in dem in (c) in 5 dargestellten Zustand der AW-Liste 3 empfangen wird. In diesem Fall ist der empfangene Wert (AW = 3) gleich groß wie oder kleiner als der Referenzwert (AW = 5) und gleich groß wie oder größer als der zulässige Wert (AW = 0) und steht nicht in der AW-Liste 3 (der empfangene Wert (AW = 3) ist also (i) nicht größer als der Referenzwert (AW = 5) und nicht kleiner als der zulässige Wert (AW = 0) und (ii) befindet sich nicht in der AW-Liste 3). Daher wird der empfangene Wert als korrekt eingestuft und die AW-Liste wird aktualisiert. In 5 zeigt (d) den Zustand nach Abschluss der folgenden Vorgänge. Das heißt, die Aktualitätswerte (AW = 3, 2, 6, 7) werden empfangen, nachdem der Aktualitätswert (AW = 5) empfangen wurde. Dabei wird festgestellt, dass die empfangenen Werte korrekt sind, und die AW-Liste wird aktualisiert. In der AW-Liste 4, die in (d) in 5 dargestellt ist, ist der maximale Aktualitätswert (AW = 7) der Referenzwert und der minimale Aktualitätswert (AW = 2) der zulässige Wert. Aus der AW-Liste 4 ist ersichtlich, dass der Ausgangswert (AW = 0) und der Aktualitätswert (AW = 1), die in den AW-Listen 2 und 3 aufgeführt werden, von der Liste ausgeschlossen sind.
  • Wenn ein Dritter in der vorliegenden Ausführungsform einen Replay-Angriff unter Verwendung eines Frames durchführt, der von der sendeseitigen ECU 100 in der Vergangenheit übertragen wurde, folgt daraus der Aktualitätswert, der aufgrund des Replay-Angriffs in dem ungültigen Frame enthalten ist. Der im ungültigen Frame enthaltene Aktualitätswert ist also einer der von der empfangsseitigen ECU 200 empfangenen Aktualitätswerte und ist gleich dem in der AW-Liste der empfangsseitigen ECU 200 enthaltenen Aktualitätswert oder kleiner als der zulässige Wert in der AW-Liste der empfangsseitigen ECU 200.
    Wenn z.B. in dem in (d) in 5 dargestellten Zustand der AW-Liste 4, die in der Speichereinheit 202 gespeichert ist, ein Dritter einen Replay-Angriff unter Verwendung eines Frames mit einem Aktualitätswert (AW = 6) durchführt, wird der empfangene Wert gleich dem Wert in der AW-Liste sein. Daher kann die AW-Verifizierungseinheit 203 feststellen, dass der Aktualitätswert (AW = 6) nicht korrekt ist; somit kann die AW-Verifizierungseinheit 203 feststellen, dass die Nachricht, für die der Aktualitätswert angegeben wurde, nicht korrekt ist. Wenn ein Dritter einen Replay-Angriff mit einem Frame durchführt, der einen Aktualitätswert (AW = 1) enthält, ist der empfangene Wert kleiner als der zulässige Wert der AW-Liste. Daher kann die AW-Verifizierungseinheit 203 feststellen, dass der Aktualitätswert (AW = 1) nicht korrekt ist; somit kann die AW-Verifizierungseinheit 203 feststellen, dass die Nachricht, der der Aktualitätswert zugeordnet wurde, nicht korrekt bzw. gefälscht ist.
  • Wenn in der vorliegenden Ausführungsform die Reihenfolge der Frames, die von der sendeseitigen ECU 100 übertragen werden, auf dem Kommunikationsweg geändert wird, empfängt die empfangsseitige ECU 200 den Aktualitätswert, dessen Wert kleiner ist als der bereits empfangene Aktualitätswert. In dem in 5 gezeigten Beispiel sendet die sendeseitige ECU 100 nacheinander ab dem Frame, in dem der Aktualitätswert mit dem kleinsten numerischen Wert gespeichert ist. Im Gegensatz dazu empfängt die empfangsseitige ECU 200 nicht in der Reihenfolge der Aktualitätswerte (AW = 1), sondern empfängt z.B. den Aktualitätswert (AW = 3) nach dem Aktualitätswert (AW = 5). In der vorliegenden Ausführungsform wird jedoch ein zulässiger Wert festgelegt, der eine Verringerung des Aktualitätswertes zulässt. Somit kann auch bei einer Änderung der Reihenfolge der Frames auf dem Kommunikationsweg verhindert werden, dass der richtige Aktualitätswert fälschlicherweise als falsch bestimmt wird.
  • 6 zeigt ein weiteres Beispiel für eine AW-Liste, wenn der Aktualitätswert aus einem Fahrtenzähler und einem Nachrichtenzähler besteht, wie in 6 dargestellt. Der Einfachheit halber wird in 6 der Aktualitätswert durch einen dreistelligen numerischen Wert dargestellt, wobei die obere bzw. erste eine Ziffer einen Fahrtenzähler und die unteren beiden Ziffern einen Nachrichtenzähler darstellen. Das heißt, der Aktualitätswert (AW = 201) des Referenzwertes der in 6 dargestellten AW-Liste zeigt an, dass der Fahrtenzähler im Vergleich zu den anderen Aktualitätswerten (AW = 120, 119, 118, 117) erhöht ist.
  • Wenn die Reihenfolge der Frames, in denen die Aktualitätswerte gespeichert sind, die jeweils aus dem Auslösungszähler und dem Nachrichtenzähler bestehen, auf dem Kommunikationsweg geändert wird, wird die Verarbeitung auf die gleiche Art wie in 5 durchgeführt.
  • Beispielsweise überträgt die sendeseitige ECU 100 den Aktualitätswert (AW = 121) und anschließend den Aktualitätswert (AW = 201), bei dem der Fahrtenzähler gegenüber dem Aktualitätswert (AW = 121) erhöht ist. Wenn die Reihenfolge auf dem Kommunikationsweg geändert wird, empfängt die empfangsseitige Steuereinheit 200 den Aktualitätswert (AW = 201) und anschließend den Aktualitätswert (AW = 121). Die in 6 dargestellte AW-Liste zeigt eine Liste nach dem Empfang des Aktualitätswertes (AW = 201) und vor dem Empfang des Aktualitätswertes (AW = 121). Wenn der Aktualitätswert (AW = 121) in diesem Zustand empfangen wird, ist der empfangene Wert nicht größer als der Referenzwert (AW = 201) und nicht kleiner als der zulässige Wert (AW = 117) und steht nicht in der AW-Liste. Daher wird der Aktualitätswert (AW = 121) als korrekt bestimmt.
  • Zum Vergleich mit der vorliegenden Ausführungsform soll hier ein Fall untersucht werden, in dem die Korrektheit / Falschheit der Nachricht durch Verwendung eines zulässigen Bereichs bestimmt wird, der sich von dem der vorliegenden Ausführungsform unterscheidet. Betrachten wir als Beispiel den folgenden Fall. Die AW-Liste, die innerhalb des zulässigen Bereichs von Aktualitätswerten liegt, enthält Aktualitätswerte, die gleich groß wie oder größer als der zulässige Wert und gleich groß wie oder kleiner als der Referenzwert sind; der Referenzwert ist der größte bisher empfangene Aktualitätswert, und der zulässige Wert ist der Wert, der sich durch Abziehen eines vorbestimmten Wertes vom Referenzwert ergibt (Referenzwert - [E-Aktualitätswerttoleranzfenster]). In diesem Fall ist die Differenz zwischen dem Referenzwert und dem zulässigen Wert immer konstant.
  • Beispielsweise ist es auch bei einer drahtlosen Kommunikation zwischen der sendeseitigen ECU und der empfangsseitigen ECU denkbar, dass sich die Ankunftsreihenfolge der Frames nicht ändert oder die Ankunftsreihenfolge in Abhängigkeit vom Kommunikationsstatus, wie z.B. dem Kommunikationsverfahren, dem Überlastungsstatus des Kommunikationsweges und der Kommunikationsleistung, variiert. Weil die Differenz zwischen dem Referenzwert und dem zulässigen Wert jedoch immer konstant ist, ist es beim vorstehend gezeigten Verfahren schwierig, einen geeigneten zulässigen Bereich passend zum tatsächlichen Kommunikationsstatus festzulegen.
  • Betrachten wir zudem beispielsweise den Fall, in dem die empfangsseitige ECU 200 den Aktualitätswert (AW = 201) empfängt, die in 6 dargestellte AW-Liste aktualisiert und dann den Aktualitätswert (AW = 121) empfängt. Um festzustellen, dass der Aktualitätswert (AW = 121) korrekt ist, muss der Bereich der AW-Liste erweitert werden, indem der vorgegebene Wert, der vom Referenzwert abzuziehen ist, auf „80“ festgelegt wird, um den zulässigen Wert zu erhalten. Wenn der Toleranzbereich der AW-Liste jedoch groß eingestellt ist, kann die Sicherheit verringert werden, und die Belastung des Speichers für die AW-Liste wird erhöht. Wird der vorgegebene Wert verkleinert und der Toleranzbereich der AW-Liste verengt, ist die Wahrscheinlichkeit groß, dass der Aktualitätswert, bei dem die Reihenfolge geändert ist, fälschlicherweise als nicht korrekt ermittelt wird. Wenn im Beispiel von 6 der vorbestimmte Wert z.B. auf „10“ festgelegt wird, ist der zulässige Wert „191 (=201 - 10)“, so dass festgestellt wird, dass der Aktualitätswert (AW = 121) nicht korrekt ist.
  • Andererseits ist es gemäß der vorliegenden Ausführungsform möglich, durch Einstellen der AW-Liste auf der Grundlage der Anzahl der Aktualitätswerte automatisch einen zulässigen Bereich einzustellen, der für den Kommunikationsstatus geeignet ist. Außerdem kann verhindert werden, dass der korrekte Aktualitätswert als falsch bestimmt wird, selbst wenn der Aktualitätswert aufgrund des Aufbaus des Aktualitätswertes schnell erhöht wird.
  • Die vorstehend erläuterte Ausführungsform hat den folgenden Fall beschrieben. Der von der sendeseitigen ECU 100 übertragene Aktualitätswert ist also ein Wert, der ansteigt, und dementsprechend zeigt die AW-Liste die vorbestimmte Anzahl von Aktualitätswerten ausgehend vom Referenzwert, der der größte Aktualitätswert unter den empfangenen Aktualitätswerten ist, in absteigender Reihenfolge. Der von der sendeseitigen ECU 100 übertragene Aktualitätswert kann jedoch ein Wert sein, der abnimmt. In diesem Fall kann die von der empfangsseitigen ECU 200 gespeicherte AW-Liste eine Liste sein, die die vorbestimmte Anzahl von Aktualitätswerten in aufsteigender Reihenfolge vom Referenzwert aus zeigt, wobei der Aktualitätswert mit dem kleinsten Wert unter den empfangenen Aktualitätswerten der Referenzwert ist. In diesem Beispiel ist der zulässige Wert der Aktualitätswert mit dem größten Wert in der AW-Liste.
  • (Zweite Ausführungsform)
  • Die erste Ausführungsform hat einen Aufbau beschrieben, in dem der Aktualitätswert und die AW-Liste verwendet werden, um einen Replay-Angriff durch einen Dritten zu verhindern und die Sicherheit des Kommunikationssystems zu erhöhen. Des Weiteren wird in der vorliegenden Ausführungsform ein Aufbau mit Betonung auf den Unterschieden zur ersten Ausführungsform beschrieben, in der ein Nachrichtenauthentifizierungscode (MAC) als Authentifikator zusätzlich zum Aktualitätswert der Nachricht hinzugefügt wird, um die Sicherheit des Kommunikationssystems zu erhöhen. 7 zeigt das Kommunikationssystem 11 einer zweiten Ausführungsform und die sendeseitige ECU 110 und die empfangsseitige ECU 210, die das Kommunikationssystem 11 bilden.
  • 1. Aufbau der sendeseitigen ECU
  • Die sendeseitige ECU 110 in 7 umfasst eine MAC-Erzeugungseinheit 111 zusätzlich zum jeweiligen Aufbau der in 1 gezeigten sendeseitigen ECU 100. Die MAC-Erzeugungseinheit 111 erzeugt als Verifizierung einen Nachrichtenauthentifizierungscode (message authentication code, MAC) unter Verwendung der von der Nachrichtenerzeugungseinheit 101 erzeugten Nachricht (MSG) und des von der AW-Erzeugungseinheit 102 erzeugten Aktualitätswertes (AW). Beispielsweise wird der Nachrichtenauthentifizierungscode durch Berechnung auf der Grundlage eines MAC-Algorithmus unter Verwendung eines MAC-Schlüssels erzeugt, der in einem (nicht gezeigten) Speicher für Daten gespeichert ist, denen ein Aktualitätswert zugeordnet oder in eine Nachricht eingefügt wird.
  • Die Sendeeinheit 103 ordnet den von der AW-Erzeugungseinheit 102 erzeugten Aktualitätswert und den von der MAC-Erzeugungseinheit 111 erzeugten Nachrichtenauthentifizierungscode der von der Nachrichten-Erzeugungseinheit 101 erzeugten Nachricht zu oder fügt ihn ein und sendet zudem den mit einem Header versehenen Frame weiter.
  • 2. Aufbau der empfangsseitigen ECU
  • Zusätzlich zu jedem in 1 gezeigten Aufbau der empfangsseitigen ECU 200 enthält die empfangsseitige ECU 210 in 7 eine Verifizierungs-MAC-Erzeugungseinheit 211 und eine MAC-Verifizierungseinheit 212.
  • Die Empfangseinheit 201 der vorliegenden Ausführungsform empfängt den von der sendeseitigen ECU 110 übertragenen Frame. Dieser Frame ist ein Frame, in dem die Nachricht, der Aktualitätswert und der Nachrichtenauthentifizierungscode gespeichert sind, die der Nachricht hinzugefügt oder in sie eingefügt werden.
  • Die AW-Verifizierungseinheit 203 der vorliegenden Ausführungsform führt die gleiche Verarbeitung wie die AW-Verifizierungseinheit 203 der ersten Ausführungsform durch. Wenn festgestellt wird, dass der Aktualitätswert korrekt ist, gibt die AW-Verifizierungseinheit 203 den als korrekt ermittelten Aktualitätswert als einen Verifizierungs-Aktualitätswert (Verifizierungs-AW) an die nachstehend beschriebene Verifizierungs-MAC-Erzeugungseinheit 211 aus.
  • Die Verifizierungs-MAC-Erzeugungseinheit 211 erfasst den im (nicht dargestellten) Speicher gespeicherten MAC-Schlüssel und erzeugt einen Verifizierungsnachrichten-Authentifizierungscode (Verifizierungs-MAC) unter Verwendung des MAC-Schlüssels, der im von der Empfangseinheit 201 empfangenen Frame gespeicherten Nachricht und des von der AW-Verifizierungseinheit 203 ausgegebenen Verifizierungs-AWs. Beispielsweise wird ein Verifizierungs-MAC erzeugt, indem er basierend auf einem MAC-Algorithmus anhand eines MAC-Schlüssels für Daten berechnet wird, zu denen ein Verifizierungs-Aktualitätswert zugeordnet oder in eine von der Empfangseinheit 103 empfangene Nachricht eingefügt wird. Der von der Verifizierungs-MAC-Erzeugungseinheit 211 genutzte MAC-Schlüssel ist ein Schlüssel, der vorab mit der sendeseitigen ECU geteilt wird.
  • Die MAC-Verifizierungseinheit 212 vergleicht und verifiziert den Nachrichtenauthentifizierungscode, der in dem von der Empfangseinheit 201 empfangenen Frame gespeichert ist, mit dem Verifizierungs-MAC, der von der Verifizierungs-MAC-Erzeugungseinheit 211 erzeugt wurde. Wenn der MAC und der Verifizierungs-MAC zusammenpassen, wird festgestellt, dass der MAC und das Verifizierungsergebnis korrekt (OK) sind, und der empfangene Frame wird verarbeitet. Wenn sie nicht übereinstimmen, wird festgestellt, dass die Verifizierung nicht korrekt ist (NG), und der empfangene Frame wird verworfen.
  • 3. Betrieb der empfangsseitigen ECU
  • Die Funktionsweise der empfangsseitigen ECU 210 dieser Ausführungsform wird anhand der 8 und 9 beschrieben. Die gleichen Abläufe wie in 4 werden durch die gleichen Bezugszeichen wie in 4 bezeichnet, und ihre Beschreibung wird weggelassen.
  • Die empfangsseitige ECU 210 der vorliegenden Ausführungsform empfängt die von der sendeseitigen ECU 110 übertragene Nachricht, den der Nachricht zugeordneten Aktualitätswert (AW) und den MAC bzw. die Authentifizierung (S201).
  • Wenn in S104 festgestellt wird, dass der empfangene Wert des Aktualitätswertes korrekt ist, wird eine MAC-Verifizierung durchgeführt (S202). Als MAC-Verifizierung wird die nachstehende Verarbeitung durchgeführt, die im Unterprogramm von 9 gezeigt ist. Der im Speicher abgelegte MAC-Schlüssel wird aufgenommen (S301). Der in S104 in 8 als korrekt bestimmte empfangene Wert des Aktualitätswertes wird als Verifizierungs-Aktualitätswert bzw. Verifizierungs-AW aufgenommen (S302).
  • Ein Verifizierungs-MAC wird anhand des in S301 erfassten MAC-Schlüssels, des in S302 erfassten Verifizierungs-AWs und der von der Empfangseinheit 201 empfangenen Nachricht erzeugt (S303). Der in S201 von 8 empfangene MAC wird mit dem in S303 erzeugten Verifizierungs-MAC verglichen (S304). Als Ergebnis des Vergleichs in S304 wird, wenn der MAC und der Verifizierungs-MAC zueinander passen, der in 9 gezeigte Prozess beendet, der Prozess geht zu S105 in 8 weiter, und die AW-Liste wird aktualisiert. Wenn andererseits der MAC und der Verifizierungs-MAC nicht zueinander passen, geht der Ablauf zu dem in 8 gezeigten A weiter und der Frame wird verworfen (S107).
  • Wenn beispielsweise ein Dritter den Inhalt des von der sendeseitigen ECU 110 übertragenen Frames illegal verfälscht, stimmen der im Frame gespeicherte MAC und der von der empfangsseitigen ECU 210 erzeugte Verifizierungs-MAC nicht überein. Daher kann die empfangsseitige ECU 210 eine illegal manipulierte Nachricht erkennen.
  • Gemäß der vorliegenden Ausführungsform wird die Korrektheit / Falschheit der Nachricht mit hoher Genauigkeit unter Verwendung des Aktualitätswertes und der AW-Liste bestimmt, und die Verifizierung unter Verwendung des MACs wird nur durchgeführt, wenn das Verifizierungsergebnis des Aktualitätswertes korrekt ist. Als Ergebnis ist es möglich, den Erzeugungsvorgang des Nachrichtenauthentifizierungscodes, der eine hohe Rechenlast erzeugt, zu unterdrücken und die Sicherheit des Kommunikationssystems zu verbessern.
  • (Übersicht)
  • Die Merkmale der elektronischen Steuereinheit gemäß den einzelnen Ausführungsformen der vorliegenden Offenbarung wurden vorstehend beschrieben.
  • Die in der Beschreibung der einzelnen Ausführungsformen verwendeten Begriffe sind Beispiele und können durch synonyme Begriffe oder Begriffe mit gleicher Funktion ersetzt werden.
  • Das in der Beschreibung jeder Ausführungsform verwendete Blockschaubild ist ein Schaubild, in dem die Aufbauten der elektronischen Steuereinheit und dergleichen nach Funktionen klassifiziert und organisiert sind. Diese Funktionsblöcke werden durch eine beliebige Kombination von Hardware und/oder Software realisiert. Da die Funktionen gezeigt werden, kann das Blockschaubild zudem auch als Offenlegung des Verfahrens verstanden werden.
  • Die Reihenfolge der Funktionsblöcke, die als Verarbeitung, Abfolge und Verfahren verstanden werden können, die in Bezug auf jede Ausführungsform beschrieben sind, kann geändert werden, solange keine Einschränkung besteht, wie z. B. wenn ein Ergebnis aus einem Schritt in einem anderen Schritt verwendet wird.
  • Die Begriffe „erste“ und „zweite“, die in der Beschreibung jeder Ausführungsform und in den Ansprüchen verwendet werden, dienen zur Unterscheidung von zwei oder mehr Aufbauten und Verfahren derselben Art und schränken die Reihenfolge oder die Über- oder Unterlegenheit nicht ein.
  • Beispiele für elektronische Steuereinheiten umfassen Halbleiter, elektronische Schaltungen, Module und ECUs (elektronische Steuereinheiten) als Bauteile und Halbfertigprodukte. Zu den Beispielen gehören als fertige Produkte zudem ein Fahrtenschreiber, ein Fahrzeugnavigationssystem, ein Smartphone, ein Personal Computer, ein Handy und ein mobiles Informationsterminal.
  • Die vorliegende Offenbarung wird nicht nur durch dedizierte Hardware mit einem Aufbau und einer Funktion implementiert, die in Bezug auf jede Ausführungsform beschrieben sind. Die vorliegende Offenbarung kann auch als eine Kombination aus einem Programm zur Implementierung der vorliegenden Offenbarung, das auf einem Aufzeichnungsmedium wie einem Speicher oder einer Festplatte aufgezeichnet ist, und einer Allzweck-Hardware, inklusive einer dedizierten oder Allzweck-CPU, einem Speicher oder dergleichen, die das Programm ausführen können, implementiert werden.
  • Ein Programm, das auf einem nichtflüchtigen materiellen Speichermedium (z.B. einem externen Speichermedium (einer Festplatte, einem USB-Speicher, einer CD/BD oder dergleichen) aus dedizierter oder Mehrzweck-Hardware oder einem internen Speichermedium (einem RAM, einem ROM oder dergleichen)) gespeichert ist, kann auch der dedizierten oder Mehrzweck-Hardware über das Aufzeichnungsmedium oder von einem Server über eine Kommunikationsleitung ohne Verwendung des Aufzeichnungsmediums bereitgestellt werden. Dadurch ist es möglich, durch Aktualisieren des Programms immer eine neueste Funktion bereitzustellen.
  • (Industrielle Anwendbarkeit)
  • Obwohl die elektronische Steuereinheit und dergleichen der vorliegenden Offenbarung anhand der elektronischen Steuereinheit beschrieben wurde, die in jeder Ausführungsform in einem Kraftfahrzeug montiert ist, kann sie für alle sich bewegenden mobilen Objekte wie Motorräder, Schiffe, Eisenbahnen und Flugzeuge eingesetzt werden. Darüber hinaus kann sie nicht nur für mobile Objekte, sondern auch für alle Produkte eingesetzt werden, die Computer umfassen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 2019 [0001]
    • JP 104708 [0001]
    • JP 2019104708 A [0001]
    • JP 2017038365 A [0008]

Claims (9)

  1. Elektronische Steuereinheit (200, 210), die dazu aufgebaut ist, eine Nachricht und einen der Nachricht zugeordneten Aktualitätswert von einer sendeseitigen ECU (100, 110) mittels einer drahtlosen Kommunikation zu empfangen, wobei der Aktualitätswert (i) obere Bits, die gemäß einer vorab festgelegten oberen Updatebedingung aktualisierbar sind, und (ii) untere Bits umfasst, die gemäß einer vorab festgelegten unteren Updatebedingung aktualisierbar sind, wobei die elektronische Steuereinheit Folgendes umfasst: eine Speichereinheit (202), die dazu aufgebaut ist, eine Aktualitätswertliste zu speichern die eine vorbestimmte Anzahl von Aktualitätswerten absteigender Reihenfolge von einem Referenzwert anzeigt, der ein größter Aktualitätswert unter den in der Vergangenheit empfangenen Aktualitätswerten ist; eine Empfangseinheit (201), die dazu aufgebaut ist, die Nachricht und den Aktualitätswert zu empfangen, die von der sendeseitigen ECU übertragen werden; eine Aktualitätswert-Verifizierungseinheit (203), die dazu aufgebaut ist, einen empfangenen Wert, der der von der Empfangseinheit empfangene Aktualitätswert ist, mit der Aktualitätswertliste zu vergleichen, um ein Verifizierungsergebnis zu liefern; und eine Listenaktualisierungseinheit (204), die dazu aufgebaut ist, ein Update der Aktualitätswertliste so zu erstellen, dass sie den empfangenen Wert als Antwort auf das Ergebnis der Verifizierung durch die Aktualitätswert-Verifizierungseinheit enthält, das anzeigt, dass (i) der empfangene Wert nicht größer als der Referenzwert und nicht kleiner als ein zulässiger Wert ist, der ein kleinster Aktualitätswert in der Aktualitätswertliste ist, und (ii) sich der empfangene Wert nicht in der Aktualitätswertliste befindet.
  2. Elektronische Steuereinheit nach Anspruch 1, wobei: die Listenaktualisierungseinheit zudem dazu aufgebaut ist, die Aktualitätswertliste derart zu aktualisieren, dass sie den empfangenen Wert als Antwort auf das Ergebnis der Verifizierung durch die Aktualitätswert-Verifizierungseinheit enthält, das anzeigt, dass der empfangene Wert größer als der Referenzwert ist.
  3. Elektronische Steuereinheit nach Anspruch 1, weiter mit: einer Verifizierungs-MAC-Erzeugungseinheit (211), die dazu aufgebaut ist, einen Verifizierungs-MAC aus der Nachricht und dem empfangenen Wert als Antwort auf das Verifizierungsergebnis durch die Aktualitätswert-Verifizierungseinheit zu erzeugen, das anzeigt, dass (i) der empfangene Wert nicht größer als der Referenzwert und nicht kleiner als der zulässige Wert ist und (ii) sich der empfangene Wert nicht in der Aktualitätswert-Liste befindet; und einer MAC-Verifizierungseinheit (212), wobei: die Empfangseinheit zudem dazu aufgebaut ist, einen MAC zu empfangen, der der Nachricht zugeordnet wird; die MAC-Verifizierungseinheit (212) dazu aufgebaut ist, eine Identität zwischen dem MAC und dem Verifizierungs-MAC zu bestätigen; und die Listenaktualisierungseinheit zudem dazu aufgebaut ist, die Aktualitätswertliste zu aktualisieren, um den empfangenen Wert als Antwort darauf zu enthalten, dass die Identität zwischen dem MAC und dem Verifizierungs-MAC bestätigt wurde.
  4. Elektronische Steuereinheit nach Anspruch 1, wobei: ein Wert der oberen Bits eine Anzahl von Aktivierungen der sendeseitigen ECU anzeigt, und ein Wert der unteren Bits eine Anzahl der von der sendeseitigen ECU gesendeten Nachrichten anzeigt.
  5. Elektronische Steuereinheit nach Anspruch 1, wobei: die Speichereinheit einen nichtflüchtigen Speicher und einen flüchtigen Speicher umfasst; und ein Wert der oberen Bits des von der Empfangseinheit empfangenen Aktualitätswertes im nichtflüchtigen Speicher gespeichert ist und ein Wert der unteren Bits des von der Empfangseinheit empfangenen Aktualitätswertes im flüchtigen Speicher gespeichert ist.
  6. Elektronische Steuereinheit nach Anspruch 1, wobei: die Listenaktualisierungseinheit zudem dazu aufgebaut ist, die vorbestimmte Zahl passend zum Verifizierungsergebnis durch die Aktualitätswert-Verifizierungseinheit einzustellen.
  7. Kommunikationssystem (10) mit einer sendeseitigen ECU (100, 110), die eine Nachricht unter Verwendung einer drahtlosen Kommunikation sendet, und einer empfangsseitigen ECU (200, 210), die die Nachricht empfängt, wobei die sendeseitige ECU Folgendes umfasst: eine Sendeeinheit (103), die dazu aufgebaut ist, die Nachricht und einen der Nachricht zugeordneten Aktualitätswert zu senden, wobei der Aktualitätswert (i) obere Bits umfasst, die gemäß einer vorab festgelegten oberen Updatebedingung aktualisierbar sind, und (ii) untere Bits, die gemäß einer vorab festgelegten unteren Updatebedingung aktualisierbar sind, die empfangsseitige ECU Folgendes umfasst: eine Speichereinheit (202), die dazu aufgebaut ist, eine Aktualitätswertliste zu speichern, die eine vorbestimmte Anzahl von Aktualitätswerten in absteigender Reihenfolge von einem Referenzwert anzeigt, der ein größter Aktualitätswert unter den Aktualitätswerten ist, die in der Vergangenheit von der empfangsseitigen ECU empfangen wurden; eine Empfangseinheit (201), die dazu aufgebaut ist, die Nachricht und den Aktualitätswert zu empfangen, die von der sendeseitigen ECU übertragen werden; eine Aktualitätswert-Verifizierungseinheit (203), die dazu aufgebaut ist, einen empfangenen Wert, der der von der Empfangseinheit empfangene Aktualitätswert ist, mit der Aktualitätswert-Liste vergleicht, um ein Verifizierungsergebnis bereitzustellen; und eine Listenaktualisierungseinheit (204), die dazu aufgebaut ist, ein Update der Aktualitätswertliste zu erstellen, um den empfangenen Wert als Antwort auf das Verifizierungsergebnis durch die Aktualitätswert-Verifizierungseinheit beizubehalten, das anzeigt, dass (i) der empfangene Wert nicht größer als der Referenzwert und nicht kleiner als ein zulässiger Wert ist, der ein kleinster Aktualitätswert in der Aktualitätswertliste ist, und sich (ii) der empfangene Wert nicht in der Aktualitätswertliste befindet.
  8. Nachrichtenempfangsprogramm, das von einer empfangsseitigen ECU (200, 210) ausführbar ist, die dazu aufgebaut ist, eine Nachricht und einen Aktualitätswert, der der Nachricht von einer sendeseitigen ECU (100, 110) zuordenbar ist, mittels einer drahtlosen Kommunikation zu empfangen, wobei der Aktualitätswert (i) obere Bits umfasst, die gemäß einer vorab festgelegten oberen Updatebedingung aktualisierbar sind, und (ii) untere Bits, die gemäß einer vorab festgelegten unteren Updatebedingung aktualisierbar sind, wobei das Nachrichtenempfangsprogramm folgende Anweisungen umfasst: Empfangen der Nachricht und des von der sendeseitigen ECU übertragenen Aktualitätswertes; Vergleichen eines empfangenen Wertes, der der empfangene Aktualitätswert ist, mit einer Aktualitätswertliste, die eine vorbestimmte Anzahl von Aktualitätswerten in einer absteigenden Reihenfolge von einem Referenzwert anzeigt, der ein größter Aktualitätswert unter den von der empfangsseitigen ECU empfangenen Aktualitätswerten ist, um ein Verifizierungsergebnis bereitzustellen; und Erstellen eines Updates der Aktualitätswertliste, so dass sie den empfangenen Wert als Antwort auf das Verifizierungsergebnis enthält, das anzeigt, dass (i) der empfangene Wert nicht größer als der Referenzwert und nicht kleiner als ein zulässiger Wert ist, der ein kleinster Aktualitätswert in der Aktualitätswertliste ist, und sich (ii) der empfangene Wert nicht in der Aktualitätswertliste befindet.
  9. Nachrichtenempfangsverfahren, das von einer empfangsseitigen ECU (200, 210) ausgeführt wird, die dazu aufgebaut ist, eine Nachricht und einen der Nachricht zugeordneten Aktualitätswert von einer sendeseitigen ECU (100, 110) mittels einer drahtlosen Kommunikation zu empfangen, wobei der Aktualitätswert (i) obere Bits umfasst, die gemäß einer vorab festgelegten oberen Updatebedingung aktualisierbar sind, und (ii) untere Bits, die gemäß einer vorab festgelegten unteren Updatebedingung aktualisierbar sind, wobei das Nachrichtenempfangsverfahren Folgendes umfasst: Empfangen der Nachricht und des von der sendeseitigen ECU übertragenen Aktualitätswertes; Vergleichen eines empfangenen Wertes, der der empfangene Aktualitätswert ist, mit einer Aktualitätswertliste, die eine vorab festgelegte Anzahl von Aktualitätswerten in einer absteigenden Reihenfolge von einem Referenzwert anzeigt, der ein größter Aktualitätswert unter den von der empfangsseitigen ECU empfangenen Aktualitätswerten ist, um ein Verifizierungsergebnis bereitzustellen; und Erstellen eines Updates der Aktualitätswertliste so, dass sie den empfangenen Wert als Antwort auf das Ergebnis der Verifizierung enthält, das anzeigt, dass (i) der empfangene Wert nicht größer als der Referenzwert und nicht kleiner als ein zulässiger Wert ist, der ein kleinster Aktualitätswert in der Aktualitätswertliste ist, und sich (ii) der empfangene Wert nicht in der Aktualitätswertliste befindet.
DE112020002661.2T 2019-06-04 2020-04-15 Elektronische steuereinheit und kommunikationssystem Pending DE112020002661T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2019104708 2019-06-04
JP2019-104708 2019-06-04
PCT/JP2020/016512 WO2020246145A1 (ja) 2019-06-04 2020-04-15 電子制御装置および通信システム

Publications (1)

Publication Number Publication Date
DE112020002661T5 true DE112020002661T5 (de) 2022-03-24

Family

ID=73652751

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020002661.2T Pending DE112020002661T5 (de) 2019-06-04 2020-04-15 Elektronische steuereinheit und kommunikationssystem

Country Status (4)

Country Link
US (1) US11916904B2 (de)
JP (1) JP7226543B2 (de)
DE (1) DE112020002661T5 (de)
WO (1) WO2020246145A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7396216B2 (ja) * 2020-06-26 2023-12-12 トヨタ自動車株式会社 サーバ、更新管理方法、更新管理プログラム及びソフトウェア更新装置
US20220158843A1 (en) * 2020-11-13 2022-05-19 Ford Global Technologies, Llc Diagnostic over ip authentication
JP7438924B2 (ja) 2020-12-15 2024-02-27 株式会社東芝 情報処理装置、方法及びプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017038365A (ja) 2015-08-07 2017-02-16 株式会社デンソー 通信システム、管理ノード、通常ノード、カウンタ同期方法、プログラム、記録媒体
JP2019104708A (ja) 2017-12-13 2019-06-27 アース製薬株式会社 匍匐害虫の忌避方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5246034B2 (ja) * 2009-05-22 2013-07-24 富士通株式会社 パケット送受信システム、パケット送受信装置、および、パケット送受信方法
JP5589410B2 (ja) * 2010-01-29 2014-09-17 沖電気工業株式会社 通信システム及び通信装置
JP2012169829A (ja) * 2011-02-14 2012-09-06 Honda Motor Co Ltd 通信システムおよび通信方法
JP5962750B2 (ja) 2012-03-22 2016-08-03 富士通株式会社 アドホックネットワークシステム、ノード、および通信方法
JP6473674B2 (ja) 2015-07-28 2019-02-20 ルネサスエレクトロニクス株式会社 通信端末およびプログラム
JP6814549B2 (ja) * 2016-04-27 2021-01-20 日立オートモティブシステムズ株式会社 演算装置、認証システム、認証方法
US10630481B2 (en) * 2016-11-07 2020-04-21 Ford Global Technologies, Llc Controller area network message authentication
US10791125B2 (en) * 2018-01-03 2020-09-29 Ford Global Technologies, Llc End-to-end controller protection and message authentication
US11528162B2 (en) * 2020-07-01 2022-12-13 Ford Global Technologies, Llc Detecting and resolving desynchronization of trip counter values in authenticated messages
CN112673656B (zh) * 2020-08-13 2022-08-09 华为技术有限公司 车载网络安全通信方法、装置和设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017038365A (ja) 2015-08-07 2017-02-16 株式会社デンソー 通信システム、管理ノード、通常ノード、カウンタ同期方法、プログラム、記録媒体
JP2019104708A (ja) 2017-12-13 2019-06-27 アース製薬株式会社 匍匐害虫の忌避方法

Also Published As

Publication number Publication date
JPWO2020246145A1 (de) 2020-12-10
US20220094684A1 (en) 2022-03-24
WO2020246145A1 (ja) 2020-12-10
US11916904B2 (en) 2024-02-27
JP7226543B2 (ja) 2023-02-21

Similar Documents

Publication Publication Date Title
DE112020002661T5 (de) Elektronische steuereinheit und kommunikationssystem
DE102007053255B4 (de) Verfahren zum Bearbeiten von Nachrichten und Nachrichtenbearbeitungsvorrichtung
EP2814193B1 (de) Verfahren und system zur erkennung von fehlern bei der übertragung von daten von einem sender zu zumindest einem empfänger
EP3507966B1 (de) Verfahren zum aufbau eines drahtlosen fahrzeug-netzwerks
EP3284296B1 (de) Verfahren zum bestimmen einer kanallast und verfahren zum einstellen einer vorverarbeitung in einer fahr-zeug-zu-x-kommunikation, fahrzeug-zu-x-kommunikationssystem und computerlesbares speichermedium
WO2020038831A1 (de) Verwirklichung eines sicherheitsintegritätslevels bei fahrzeug-zu-x kommunikation
DE102014103790A1 (de) Notfallmitteilungssystem
DE112016004438T5 (de) Bordkommunikationssystem
DE102014217156A1 (de) Fahrzeugeigene Vorrichtung und Berichterstattungssteuerungsverfahren
DE102017209557A1 (de) Verfahren zum Schutz eines Fahrzeugnetzwerks gegen manipulierte Datenübertragung
DE102021204016A1 (de) Verfahren zur Datenübertragung in einem V2X-Netzwerk
DE102012206529A1 (de) Drahtloses Echtzeitübertragungssystem
DE102018109080A1 (de) Systeme und verfahren zum verwenden mechanischer schwingung für ausserbandkommunikationen an bord eines fahrzeugs
WO2018065016A1 (de) Kommunikationsdaten-authentifizierungsvorrichtung für ein fahrzeug
DE102016121031A1 (de) Verfahren und Vorrichtung für einen Fahrzeugnotruf
EP3085123B1 (de) Verfahren und system zur bestimmung einer anzahl zu verwerfender fahrzeug-zu-x-botschaften
DE102020211473A1 (de) Vorrichtung zur Fahrzeug-zu-X Kommunikation und Verfahren
DE102016208435A1 (de) Fahrzeuginternes Netzwerksystem
DE102017209556A1 (de) Verfahren zum Schutz eines Fahrzeugnetzwerks gegen manipulierte Datenübertragung
DE102016200385A1 (de) Kraftfahrzeug mit einer Kommunikationseinrichtung
DE102013108006A1 (de) Kommunikationsanordnung
DE102021117324A1 (de) Sendeeinheit und Empfangseinheit zum Senden und Empfangen von Datenpaketen
DE102016208869A1 (de) Verfahren zum Betreiben einer Datenverarbeitungsvorrichtung für ein Fahrzeug
DE102017008679A1 (de) Verfahren zur Warnung von Verkehrsteilnehmern vor einer Kollisionsgefahr
DE102022104210A1 (de) Verfahren zum Absetzen eines Notrufs

Legal Events

Date Code Title Description
R012 Request for examination validly filed