DE112017004873T5 - Sicherheitssystem für elektronikausrüstung - Google Patents

Sicherheitssystem für elektronikausrüstung Download PDF

Info

Publication number
DE112017004873T5
DE112017004873T5 DE112017004873.7T DE112017004873T DE112017004873T5 DE 112017004873 T5 DE112017004873 T5 DE 112017004873T5 DE 112017004873 T DE112017004873 T DE 112017004873T DE 112017004873 T5 DE112017004873 T5 DE 112017004873T5
Authority
DE
Germany
Prior art keywords
ecu
value
vthh
vthl
feature set
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
DE112017004873.7T
Other languages
English (en)
Inventor
Kyong-Tak Cho
Li Zhao
Manoj R. Sastry
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of DE112017004873T5 publication Critical patent/DE112017004873T5/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/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • B60R16/0231Circuits relating to the driving or the functioning of the vehicle
    • B60R16/0232Circuits relating to the driving or the functioning of the vehicle for measuring vehicle parameters and indicating critical, abnormal or dangerous conditions
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R19/00Arrangements for measuring currents or voltages or for indicating presence or sign thereof
    • G01R19/04Measuring peak values or amplitude or envelope of ac or of pulses
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R19/00Arrangements for measuring currents or voltages or for indicating presence or sign thereof
    • G01R19/165Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values
    • G01R19/16533Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values characterised by the application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40026Details regarding a bus guardian
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/003Arrangements for allocating sub-channels of the transmission path
    • H04L5/0053Allocation of signaling, i.e. of overhead other than pilot signals
    • H04L5/0055Physical resource allocation for ACK/NACK
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R25/00Fittings or systems for preventing or indicating unauthorised use or theft of vehicles
    • B60R25/20Means to switch the anti-theft system on or off
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Small-Scale Networks (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Power Engineering (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

Eine Ausführungsform stellt eine Elektroniksteuereinheit (Electronic Control Unit, ECU) für ein Fahrzeug bereit. Die ECU enthält Sendeempfängerschaltung, Spannungsmessungsschaltung und Merkmalsatzschaltung. Die Sendeempfängerschaltung dient für mindestens eines davon, eine Nachricht zu senden und/oder zu empfangen. Die Spannungsmessungsschaltung dient dazu, mindestens einen von einem hohen Busleitungsspannungs(VCANH)-Wert und/oder einem niedrigen Busleitungsspannungs(VCANL)-Wert für jedes Null-Bit von mindestens einem Null-Bit einer empfangenen Nachricht zu ermitteln. Die empfangene Nachricht enthält mehrere Bits. Die Merkmalsatzschaltung dient dazu, einen Wert von mindestens einem Merkmal eines Merkmalsatzes basierend mindestens teilweise auf mindestens einer von einer hohen Bestätigungs(Acknowledge, ACK)-Schwellenspannung (VthH) und/oder einer niedrigen ACK-Schwellenspannung (VthL) zu ermitteln. Der Merkmalsatz enthält mindestens einen von einem betreibenden am häufigsten gemessenen VCANH Wert (VfreqH2) einer Zahl von VCANH Werten und/oder einem betreibenden am häufigsten gemessenen VCANL Wert (VfreqL2) einer Zahl von VCANL Werten.

Description

  • QUERVERWEIS AUF VERWANDTE ANMELDUNGEN
  • Die vorliegende nicht-vorläufige Anmeldung beansprucht den Vorteil der vorläufigen U.S.-Patentanmeldung Seriennummer 62/401,145, eingereicht am 28. September 2016, deren Offenbarung durch Bezugnahme zur Gänze eingeschlossen ist.
  • TECHNISCHES GEBIET
  • Die vorliegende Offenbarung bezieht sich auf ein Sicherheitssystem für Elektronikausrüstung und insbesondere auf ein Sicherheitssystem für Fahrzeugelektroniksteuersysteme.
  • STAND DER TECHNIK
  • „Elektroniksteuereinheit“ (Electronic Control Unit, ECU) ist ein generischer Ausdruck für ein eingebettetes System, das ein elektrisches System und/oder Teilsysteme in einem Transportfahrzeug steuert. Transportfahrzeuge können zum Beispiel Automobile, Flugzeuge, Züge, Busse usw. enthalten. In einem Fahrzeug können die ECUs über ein Netzwerk, z.B. einen Bus, zwischenverbunden sein. Die ECUs können konfiguriert sein, Nachrichten zu übertragen und/oder empfangen, die Befehle und/oder Daten beinhalten.
  • ECUs können für Cyberattacken anfällig sein. Eine kompromittierte ECU kann von einem Angreifer genutzt werden, eine bösartige Nachricht in das Fahrzeugnetzwerk einzuspeisen. Die bösartige Nachricht wiederum kann eine andere ECU veranlassen, auf eine Weise zu arbeiten, die von einem Fahrzeug und/oder ECU-Entwickler nicht angedacht ist.
  • Das Nachrichtenformat für manche Busprotokolle beinhaltet keine Absenderkennung. Mit anderen Worten, solche Nachrichten beinhalten keine ECU-Kennung, die der ECU entspricht, die eine bestimmte Nachricht übertragen hat. Dieser Mangel einer Absenderkennung kann es schwer machen, eine kompromittierte ECU zu identifizieren, die der Absender einer bösartigen Nachricht sein kann.
  • Figurenliste
  • Merkmale und Vorteile unterschiedlicher Ausführungsformen des beanspruchten Gegenstands werden mit Fortschritt der folgenden ausführlichen Beschreibung und bei Bezug auf die Zeichnungen klar werden, wobei ähnliche Bezugszeichen ähnliche Teile bezeichnen und in denen:
    • 1 ein System, das ein Steuerungsflächennetzwerk (Controller Area Network) beinhaltet, in Übereinstimmung mit mindestens einer hierin beschriebenen Ausführungsform veranschaulicht;
    • 2A ein beispielhaftes Steuerungsflächennetzwerk(CAN)-Bus-Nachrichtenformat (d.h. „Nachrichtenframe“) in Übereinstimmung mit mindestens einer hierin vorliegenden Ausführungsform veranschaulicht;
    • 2B eine Grafik ist, die rezessive und dominante Busnennspannungen für einen CAN-Bus in Übereinstimmung mit mindestens einer hierin vorliegenden Ausführungsform veranschaulicht;
    • 3 eine Elektroniksteuereinheit (ECU) in Übereinstimmung mit mindestens einer Ausführungsform hierin veranschaulicht:
    • 4 ein Flussdiagramm von Betrieben ist, das Klassiererkonstruktion in Übereinstimmung mit mindestens einer Ausführungsform hierin veranschaulicht;
    • 5 ein Flussdiagramm von Betrieben ist, das Ermittlung einer Bestätigung (Acknowledge, ACK) von Schwellspannungen in Übereinstimmung mit mindestens einer Ausführungsform hierin veranschaulicht;
    • 6 ein Flussdiagramm von Betrieben ist, das Ermittlung von Merkmalwerten eines Merkmalsatzes in Übereinstimmung mit mindestens einer Ausführungsform hierin veranschaulicht; und
    • 7 ein Flussdiagramm von Betrieben ist, das Authentifizieren einer empfangenen Nachricht in Übereinstimmung mit mindestens einer Ausführungsform hierin veranschaulicht.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Im Allgemeinen stellt diese Offenbarung Vorrichtung, Systeme und Verfahren zum Ermitteln einer Signatur einer Elektroniksteuereinheit (EV) für ein Fahrzeug und Identifizieren der ECU, basierend mindestens teilweise auf der Signatur, bereit. Fahrzeuge können Automobile, Züge, Busse, Flugzeuge usw. enthalten, sind aber nicht darauf begrenzt. Das Fahrzeug kann mehrere ECUs enthalten, die durch ein Netzwerk gekoppelt sind, d.h. einen Fahrzeugkommunikationsbus. Die Signatur bezieht sich auf eine oder mehr Busspannungen, die bei einer empfangenden ECU festgestellt werden, die auch mit dem Bus gekoppelt ist, wenn eine ausgewählte ECU eine Nachricht an den Bus überträgt. Die Signatur kann dann von einer empfangenden ECU genutzt werden, um die übertragende ECU zu identifizieren.
  • Die Busspannungen können genutzt werden, um Werte von einem oder mehr Merkmalen eines Merkmalsatzes zu ermitteln. Der Merkmalsatz, einschließlich Merkmalswerteng kann dann der Signatur der übertragenden ECU entsprechen. Der Merkmalsatz kann dann in Klassiererschaltung eingegeben werden, die konfiguriert ist, die übertragende ECU basierend mindestens teilweise auf den Werten der Merkmale im Merkmalsatz zu identifizieren.
  • Es kann dann ermittelt werden, ob die Nachricht einer legitimen Übertragung von der identifizierten ECU entspricht. Zum Beispiel kann in einem Steuerungsflächennetzwerk(CAN)-Busprotokoll jede ECU nur einen einzigartigen Teilsatz möglicher Nachrichten legitim übertragen und jede Nachricht beinhaltet eine einzigartige (jeweilige) Nachrichtenkennung. Diese Informationen können genutzt werden, um Authentifizieren einer empfangenen Nachricht zu erleichtern, d.h. wenn ermittelt wird, ob die empfangene Nachricht legitim von der identifizierten übertragenden ECU übertragen wurde oder nicht.
  • Im Allgemeinen kann nur eine einzige ECU auf dem Bus übertragen, nachdem sie eine Entscheidung gewonnen hat. Daher entsprechen Bussignalstufen, z.B. Spannungen, die von empfangenden ECU(s) festgestellt werden, der übertragenden ECU und können genutzt werden, die übertragende ECU zu identifizieren, wie hierin beschrieben. Eine Ausnahme im Fall des CAN-Busprotokolls ist ein Bestätigungs(ACK)-Bit in einem CAN-Busprotokoll-Nachrichtenframe. Eine Logik-Null-ACK kann von einer oder mehr empfangenden ECUs während Übertragung der entsprechenden Nachricht durch die übertragende ECU übertragen werden. Daher können Busspannungen, die dem ACK-Bit zugehörig sind, die übertragende ECU nicht darstellen und können mit Identifizieren der übertragenden ECU interferieren.
  • Die hierin bereitgestellte Vorrichtung, das hieren bereitgestelle Verfahren und System sind konfiguriert, mindestens eine ACK-Schwellspannung basierend mindestens teilweise auf mehreren empfangenen Null-Bit-Spannungen zu ermitteln. Die ACK-Schwellspannung(en) kann (können) dann genutzt werden, Spannungen herauszufiltern, die ACK-Bits zugehörig sind. Ausfiltern der Spannungen, die den ACK-Bits zugehörig sind, ist konfiguriert, die Genauigkeit der Signatur der übertragenden ECU und der Authentifizierung einer Quell- (d.h. übertragenden) ECU für eine ausgewählte empfangene Nachricht zu verbessern.
  • In manchen Ausführungsformen können Werte ausgewählter Merkmale im Merkmalsatz (d.h. Signatur) während eines Betriebs aktualisiert werden, um Variation von Eigenschaften des übertragenden ECU-Sendeempfängers über Zeit zu berücksichtigen, wie unten ausführlicher beschrieben wird. Solches Aktualisieren ist konfiguriert, adaptives Lernen während eines Betriebs der ECUs im Fahrzeug zu erleichtern.
  • Im Folgenden wird eine Nutzung sowohl hoher Busleitungsspannungen (z.B. VCANH) als auch niedriger Busleitungsspannungen (z.B. VCANL) und deren jeweiliger zugehöriger Merkmale, um eine empfangene Nachricht zu authentifizieren, beschrieben. Es sollte beachtet werden, dass hohe Busleitungsspannungen und deren zugehörige Merkmale, niedrige Busleitungsspannungen und deren zugehörige Merkmale oder sowohl hohe als auch niedrige Busleitungsspannungen und deren jeweilige Merkmale zu nutzen, um eine Signatur zum Authentifizieren einer empfangenen Nachricht zu ermitteln, hierin gleichermaßen erwogen wird.
  • 1 veranschaulicht ein System 101, das ein Steuerungsflächennetzwerk (CAN) 100 in Übereinstimmung mit mindestens einer hierin beschriebenen Ausführungsform beinhaltet. Das Netzwerk 100 enthält mehrere ECUs 102A, 102B ... 102N, wobei jede mit einem Bus 106 gekoppelt ist. Während eines Betriebs im Fahrzeug kann jede ECU, zum Beispiel ECU 102A, konfiguriert sein, Eingaben von einem oder mehr Sensor(en) zu empfangen und/oder Steuerausgaben an ein oder mehr Betätigungselemente bereitzustellen, z.B. Sensor(en) und/oder Betätigungselement(e) 130. Zum Beispiel können Sensoren Temperatursensoren, Drucksensoren, Beschleunigungsmesser usw. enthalten. In einem Beispiel kann Betrieb einer ausgewählten ECU in Antwort auf eine Nachricht sein, die von einer anderen ECU empfangen wird, wobei die Nachricht über Bus 106 kommuniziert wird. In einem anderen Beispiel kann eine ausgewählte ECU konfiguriert sein, eine Nachricht an eine andere ECU über Bus 106 zu übertragen.
  • Jede ECU 102A, 102B, ..., 102N ist im Allgemeinen konfiguriert, Steuerung mancher Aspekte eines Fahrzeugs bereitzustellen, zum Beispiel Elektronik/Motorsteuermodul (Electronic/engine Control Module, ECM), Antriebsstrangsteuermodul (Powertrain Control Module, PCM), Getriebesteuermodul (Transmission Control Module, TCM), Bremsensteuermodul (Brake Control Module, BCM oder EBCM), zentrales Steuermodul (Central Control Module, CCM), zentrales Zeitgebungsmodul (Central Timing Module, CTM), allgemeines Elektronikmodul (General Electronic Module, GEM), Karosseriesteuermodul (Body Control Module, BCM), Federungssteuermodul (Suspension Control Module, SCM) usw. In manchen Situationen kann eine ECU eine oder mehr ECUs von einem oder mehr Typen enthalten. Daher können die ECUs 102A, 102B, ..., 102N konfiguriert sein, Nachrichten auf dem Bus 106 zu übertragen und/oder Nachrichten von anderen ECUs über den Bus 106 zu empfangen.
  • Jede Nachricht und/oder jeder Bus 106 kann mit einem oder mehr Kommunikationsbusprotokollen konform gehen und/oder kompatibel sein. In einer beispielhaften Ausführungsform kann der Bus 106 mit einem Standardfahrzeug-Busprotokoll, z.B. CAN-Busprotokoll, konform gehen. In dieser beispielhaften Ausführungsform entspricht Bus 106 einem Zwei-Draht-Bus, der einen ersten Leiter 106A (CANH) und einen zweiten Leiter 106B (CANL) enthält. CANH 106A entspricht einer hohen Busleitung und CANL106B entspricht einer niedrigen Busleitung. Der Bus 106 kann bei jedem Ende durch, zum Beispiel, Impedanz abstimmende Widerstände 110A, 110B beendet sein. Selbstverständlich kann in anderen Ausführungsformen der Bus 106 mit anderen Busprotokollen fixierter Länge konform gehen oder kompatibel sein, die zum Beispiel andere Standard- und/oder proprietäre Busprotokolle, z.B. J8150, enthalten, wie hierin beschrieben.
  • Während des Betriebs kann jede ECU 102A, 102B, ..., 102N eine oder mehr Nachrichten 104, 104B, ..., 104N übertragen, d.h. rundfunken, die jeweils durch ein zuvor erwähntes Bus(z.B. CAN-Bus)-Protokoll definiert sind. Die Rundfunknachricht, zum Beispiel Nachricht 104A, kann dann von jeder ECU als empfangene Nachricht 105 empfangen werden. Die Nachrichten 104A, 104B, ..., 104N können im Allgemeinen ein Nachrichtentypkennungs(Nachrichten-ID)-Feld und ein Datenfeld enthalten. Die Nachrichten-ID stellt eine Nachrichtenpriorität bereit, die von jeder ECU für nichtdestruktive Entscheidung verwendet wird. Mit anderen Worten, falls mehrere ECUs versuchen, gleichzeitig zu übertragen, werden ECUs, die Nachrichten niedrigerer Priorität übertragen, konfiguriert, Übertragung abzubrechen und später zu versuchen. Mehrere ECUs können möglicherweise nicht eine selbe Nachricht übertragen, wodurch jede ECU, zum Beispiel ECU 102A, konfiguriert ist, einen einzigartigen Teilsatz möglicher Nachrichten zu übertragen.
  • Gemäß dem CAN-Protokoll, während das Format von Nachrichten 104A, 104B, ..., 104N jeweilige Nachrichtenkennungen enthält, enthält das Format keine Absenderkennungsinformationen. Daher können ECUs, die Nachricht 105 empfangen, die Integrität der Quelle nicht ausschließlich auf Basis des Formats der Nachricht 105 verifizieren. Mit anderen Worten, ECU 102B, die Nachricht 105 empfängt, ist nicht fähig, die Quelle der Nachricht nur auf Basis der Nachricht-ID und der Inhalte, d.h. Bitsequenz, der empfangenen Nachricht 105 zu authentifizieren.
  • 2A veranschaulicht ein beispielhaftes Steuerungsflächennetzwerk(CAN)-Bus-Nachrichtenformat (d.h. „Nachrichtenframe“) 200A in Übereinstimmung mit mindestens einer hierin vorgebrachten Ausführungsform. Nachrichtenframe 200A beinhaltet, nebst anderen Feldern, ein Entscheidungsfeld (das eine Nachrichtenkennung (ID) 202 enthält) und ein Bestätigungsfeld, das ein Bestätigungs(ACK)-Bit 206 enthält. Abhängig von der Nachricht kann Nachrichtenframe 200A ein Datenfeld 204 enthalten. Nachrichtenframe 200A enthält ferner ein zyklisches Redundanzprüfungs(Cyclic Redundancy Check, CRC)-Feld 208.
  • Die Nachricht 200A kann zum Beispiel übertragene Nachricht 104A und/oder entsprechende empfangene Nachricht 105 darstellen. Die Nachrichten-ID 202 kann 11 Bits oder 29 plus 2 Bits beinhalten. Die Nachrichten-ID 202 entspricht sowohl der Nachrichtenpriorität als auch einer Nachrichtenfunktion. Mit anderen Worten, jede Nachrichten-ID zeigt sowohl die Nachrichtenpriorität als auch die Nachrichtenfunktion an. Die Nachrichten-ID ist daher konfiguriert, während Entscheidung genutzt zu werden, um einer Nachricht höherer Priorität Vorzug zu geben. Gemäß dem CAN-Busprotokoll hat zum Beispiel eine Nachricht relativ hoher Priorität einen relativ kleineren Nachrichten-ID-Wert. Daher kann, während die Nachrichten-ID 202 Informationen bezüglich dessen beinhalten kann, worum es in der Nachricht geht (z.B. ein Binärcode, der verwendet wird, um sich auf „Reifendruck“ zu beziehen), die Nachrichten-ID 202 keine ECU-Kennung beinhalten, die die tatsächliche ECU identifiziert, welche die Nachricht sendet. Datenfeld 204 kann dann die tatsächlichen Daten der Nachricht selbst beinhalten (z.B. einen Code, der „Reifendruck ist 25 Psi“ darstellt). ACK 206 ist ein einzelnes Bit und kann von allen ECUs gesendet werden, die eine Nachricht empfangen, wie hierin beschrieben.
  • Daher beinhaltet jede Nachricht, die mit CAN-Busprotokoll konform geht, z.B. Nachricht 200A, mehrere Bits, die in mehreren Feldern angeordnet sind. Jedes Feld beinhaltet mindestens ein Bit, wobei jedes Bit einer Logik 0 („Null-Bit“) oder einer Logik 1 („Eins-Bit“) entspricht.
  • Physisch kann für einen 2-Draht-Bus jedes Bit durch eine Differentialspannung dargestellt sein, die über den Bus angelegt wird. Im CAN-Busprotokoll ist zum Beispiel ein erster Draht (d.h. Leiter) als CANH (d.h. hohe Busleitung) gekennzeichnet und ein zweiter Draht ist als CANL (d.h. niedrige Busleitung) gekennzeichnet. Eine übertragende ECU ist konfiguriert, eine erste Spannung (d.h. hohe Busleitungsspannung), VCANH, an CANH und eine zweite Spannung (d.h. niedrige Busleitungsspannung), VCANL, an CANL anzulegen, um ein Bit zu übertragen. Im CAN-Busprotokoll wird ein 0-Bit als „dominant“ betrachtet und ein 1-Bit als „rezessiv“ betrachtet. Mit anderen Worten, eine übertragende ECU ist konfiguriert, aktiv die CANH und CANL Leitungen zu jeweiligen Spannungen zu treiben, um ein 0Bit zu übertragen und passiv die CANH und CANL Leitungen zu jeweiligen Spannungen (hinauf und/oder runter) zu ziehen, um ein 1-Bit zu übertragen. Daher, falls eine erste ECU ein 0-Bit überträgt und eine zweite ECU ein 1-Bit überträgt, wird der Buszustand dann dem 0-Bit entsprechen. Diese Konfiguration erlaubt nicht-destruktive Einwilligung und Kollisionsvermeidung. Mit anderen Worten, gemäß dem CAN-Busprotokoll, wird die zweite ECU einen Buszustandsunterschied aus ihrem übertragenen Bit erfassen und Übertragung anhalten.
  • 2B ist eine Grafik 200B, die rezessive und dominante Busnennspannungen für einen CAN-Bus in Übereinstimmung mit mindestens einer hierin vorgebrachten Ausführungsform veranschaulicht. Wenn eine ECU ein 0-Bit sendet, tut sie das durch Erhöhen einer ersten Spannung (VCANH gekoppelt mit CANH) auf VCANHO und Verringern einer zweiten Spannung (VCANL gekoppelt mit CANL) auf VCANLO. Zum Beispiel kann VCANHO etwa 3,5V sein, während die VCANLO etwa 1,5V sein kann.
  • Entwurf 200B enthält drei Bereiche 230, 232, 234 von CAN-Busspannungen VCANH und VCANL. Ein erster Bereich 230 und ein dritter Bereich 234 entsprechen dem CAN-Bus im rezessiven Zustand. Im rezessiven Zustand ist entweder der CAN-Bus inaktiv oder eine ECU überträgt eine Logik 1, d.h. ein Eins-Bit. Ein zweiter Bereich 232 entspricht dem CAN-Bus im dominanten Zustand. Im dominanten Zustand überträgt mindestens eine ECU eine Logik 0, d.h. ein Null-Bit. Daher entspricht eine Differentialspannung, die über die CANH und CANL Leitungen während des dominanten Zustands festgestellt wird, Vdiff(D) = VCANHO - VCANLO und eine Differentialspannung, die über die CANH und CANL Leitungen während des rezessiven Zustands festgestellt wird, entspricht Vdiff(R).
  • Zum Beispiel kann ein 0-Bit VCANH nominal gleich 3,5V (VCANHO) und VCANL nominal gleich 1,5V (VCANLO) auf CANH beziehungsweise CANL entsprechen. Aufgrund von Prozessvariationen in den Transistoren und Dioden innerhalb der Sendeempfänger der ECUs kann jedoch, wenn ein 0-Bit gesendet wird, jeder Sender Spannungen ausgeben, die sich von den Nennspannungen unterscheiden. Zum Beispiel können die tatsächlichen Ausgabespannungen für eine Zahl an ECUs eine Verteilung haben, z.B. eine Gauß'sche Verteilung, mit einem entsprechenden Mittelwert und einer entsprechenden Standardabweichung. Diese Variationen in CANH und CANL Spannungsausgaben pro Sender können genutzt werden, um eine einzigartige Signatur für jeden Sender und dadurch jede ECU zu ermitteln. Die einzigartigen Signaturen können dann verwendet werden, um eine übertragende ECU zu identifizieren, wie unten ausführlicher beschrieben wird.
  • Zurück zu 2A ist das Bestätigungs(ACK)-Bit 206 in einem ACK-Slot positioniert, d.h. ACK-Zeitintervall. ECUs, die eine übertragene Nachricht empfangen, sind konfiguriert, ein 0-Bit während des ACK-Slot der übertragenen Nachricht zu übertragen. Daher sind VCANH und VCANL, die während des ACK-Slot festgestellt sind, viel mehr auf eine Kombination von ACK-Bit-Übertragungen der empfangenden ECUs bezogen, als ausschließlich die übertragende ECU. Falls mehrere ECUs die übertragene Nachricht bestätigen, kann VCANH, die während der ACK festgestellt ist, im Allgemeinen größer sein als VCANHO der übertragenden ECU und VCANL, die während der ACK festgestellt ist, kann im Allgemeinen kleiner sein, als die VCANLO der übertragenden ECU. Mit anderen Worten, wenn mehrere ECUs ein ACK-Null-Bit übertragen, können deren jeweiligen Antriebstransistoren parallel zwischen einer Versorgungsspannung und einer Busleitung gekoppelt sein, z.B. zwischen einer hohen Seitenversorgungsspannung, die konfiguriert ist, Transistoren anzutreiben, die mit CANH gekoppelt sind, und zwischen einer niedrigen Seitenversorgungsspannung, die konfiguriert ist Transistoren anzutreiben, die mit CANL gekoppelt sind. Daher sind die EIN-Widerstände der Treibertransistoren parallel gekoppelt, was den Widerstand zwischen der Versorgung in der Busleitung verringert. Die CANH-Busleitungsspannung kann dann relativ näher an der Versorgungsspannung der hohen Seitentreibertransistoren sein und die CANL-Busleitungsspannung kann dann relativ näher an der Versorgungsspannung der niedrigen Seitentreibertransistoren sein. Diese Informationen können genutzt werden, um die ACK-CANH und CANL Spannungen zu berücksichtigen, wenn die ECU-Signaturen ermittelt werden, wie unten ausführlicher beschrieben wird.
  • Es könnte begrüßt werden, dass die Bits, die in mindestens der Nachricht-ID 202 enthalten sind, eine Zahl an Null-Bits und eine Zahl an Eins-Bits beinhalten können. Zum Beispiel kann eine 11-Bit Nachricht-ID 202 höchstens 11 Null-Bits beinhalten und eine erweiterte Nachricht-ID kann bis zu 29 Null-Bits beinhalten. Ähnlich kann das Datenfeld 204 bis zu 64 Null-Bits beinhalten und das CRC-Feld 208 kann bis zu 15 Null-Bits beinhalten. Im Gegensatz kann das ACK-Feld 206 höchstens ein Null-Bit beinhalten. Daher entspricht jedes Null-Bit, das von einer ECU empfangen wird, relativ wahrscheinlicher einem nicht-ACK-Bit, das von einer ECU („übertragende ECU“) übertragen wird, als einem ACK-Bit, das von einer oder mehr empfangenden ECUs übertragen wird. Zum Beispiel, für eine 120-Bit Nachricht mit gleich wahrscheinlichen 0- und 1-Bits, ist die Wahrscheinlichkeit, dass ein Null-Bit ein ACK-Bit ist, 1/(120/2) ≈ 1,7%. Daher entsprechen für eine empfangene Nachricht relativ mehr regelmäßig erfasste CAN-Busspannungswerte VCANH, VCANL wahrscheinlich nicht-ACK-Bits, die von einer ECU übertragen werden, viel mehr als einem ACK-Bit, das von einer oder mehr anderen empfangenden ECUs übertragen wird.
  • 3 veranschaulicht eine ECU 300 in Übereinstimmung mit mindestens einer Ausführungsform hierin. Die beispielhafte ECU 300, die in 3 abgebildet ist, kann zum Beispiel eine ECU 102A, 102B, ..., oder 102N von 1 darstellen. ECU 300 kann im Allgemeinen Prozessorschaltung 302, Speicherschaltung 304, Klassiererschaltung 306, einen Kennungs- (ID) Mapspeicher 307, Signaturschaltung 308, einen Signaturdatenspeicher 309, Merkmalsatzschaltung 310, ACK-Schwellenschaltung 312, Spannungsmessungsschaltung 314, Schnittstellenschaltung 316 und Sendeempfängerschaltung 318 enthalten. Schnittstellenschaltung 316 kann zum Beispiel eines oder mehr von Analog-zu-DigitalWandler(Analog to Digital Converter, ADC)-Schaltung, Digital-zu-Analog-Wandler (Digital to Analog Converter, DAC)-Schaltung, Multiplexschaltung usw. enthalten.
  • ECU 300 ist mit CAN-Bus 106 gekoppelt, der als ein Zwei-Draht-Bus abgebildet ist, der die hohe Signalleitung CANH 106A und die niedrige Signalleitung CANL 106B enthält. Es sollte verstanden werden, dass ECU 300 Nachrichten mit anderen ECUs (nicht in dieser 3 gezeigt) über den CAN-Bus 106 austauscht. Wie unten ausführlich beschrieben wird, ist ECU 300 im Allgemeinen konfiguriert, die Quelle einer Nachricht zu identifizieren, die von einer anderen ECU (d.h. einer übertragenden ECU) empfangen wird, basierend mindestens teilweise auf einer Signatur und basierend mindestens teilweise auf Nachricht-ID zu ECU-ID Mapping, das in ID-Mapspeicher 307 enthalten ist.
  • In manchen Ausführungsformen kann ECU 300 als eine „Master“-ECU zum Identifizieren jeder anderen ECU, die mit dem Bus 106 gekoppelt ist, gestaltet sein. In diesen Ausführungsformen können Authentifizierungsbetriebe auf der Master-ECU zentralisiert sein. Die Master-ECU kann konfiguriert sein, eine jeweilige Signatur für jede übertragende ECU zu ermitteln und einen entsprechenden Klassierer anzulernen (wie unten ausführlicher beschrieben wird). Die Master-ECU kann dann konfiguriert sein, jede übertragende ECU während Betrieb der Fahrzeugs zu identifizieren, um Authentifizierung auszuführen. Wie hierin beschrieben, bedeutet „Authentifizierung“ Verifizierung von Identifikation einer übertragenden ECU durch eine empfangende ECU.
  • In anderen Ausführungsformen kann jede ECU im System ähnlich konfiguriert sein wie ECU 300. In diesen Ausführungsformen können Authentifizierungsbetriebe über mehrere ECUs verteilt sein. In diesen anderen Ausführungsformen kann jede empfangende ECU konfiguriert sein, eine jeweilige Signatur für jede übertragende ECU zu ermitteln, die konfiguriert ist, Nachrichten an diese empfangende ECU zu übertragen. Mit anderen Worten, jede ECU kann konfiguriert sein, Nachrichten von einer oder mehr anderen ECUs zu empfangen. Die anderen ECUs können mindestens einem Teilsatz aller ECUs im System entsprechen. In diesen Ausführungsformen kann jede empfangende ECU dann konfiguriert sein, einen Klassierer für jede entsprechende übertragende ECU anzulernen und dann eine übertragende ECU während eines Betriebs des Fahrzeugs zu authentifizieren, wie hierin beschrieben. Daher kann eine empfangende ECU, die konfiguriert ist, Nachrichten von einem Teilsatz an ECUs zu empfangen, konfiguriert sein, einen entsprechenden Teilsatz der Klassierer zu entwickeln, der von der Master-ECU entwickelt ist, wie hierin beschrieben.
  • Prozessorschaltung 302 ist fähig, maschinenlesbare Befehle durchzuführen und kann die Form irgendeiner Zahl möglicher Prozessoren annehmen, wie ein Intel® Atom Prozessor, ein Intel® Quark Prozessor usw. Speicherschaltung 304 ist fähig, computerlesbare Befehle und/oder Daten zu speichern. Speicherschaltung 304 kann flüchtigen und/oder nichtflüchtigen Speicher enthalten. Zum Beispiel kann Speicherschaltung 304 konfiguriert sein, Signaturdatenspeicher 309 zu beinhalten.
  • Sendeempfängerschaltung 318 ist im Allgemeinen konfiguriert, Nachrichten zu/von zum Beispiel anderen ECUs zu senden/empfangen. Daher kann Sendeempfängerschaltung 318 einen Sender und einen Empfänger enthalten, die konfiguriert sind, elektrische Signale zu übertragen oder zu empfangen, die von Bus 106 getragen werden. Die von Sendeempfängerschaltung 318 gesendeten oder empfangenen Nachrichten können in der Form eines elektrischen Signals sein, z.B. einer oder mehr Spannungen. Eine empfangene Nachricht (wie Nachricht 105) kann durch Schnittstellen(z.B. ADC)-Schaltung 316 von einer analogen Spannung in eine digitale Form umgewandelt werden. Spannungsmessungsschaltung 314 kann den Ausgang (d.h. digitalen Wert) der Schnittstellenschaltung 316 erfassen und die Spannung(en) entsprechend eines oder mehr Bits der empfangenen Nachricht ermitteln (d.h. messen). Diese gemessenen Spannungen können verwendet werden, eine Signatur der ECU, die die Nachricht sendet, zu erstellen, zu aktualisieren oder zu verifizieren, wie unten ausführlicher beschrieben wird.
  • Das Folgende kann am besten verstanden werden, wenn 1 und 3 gemeinsam betrachtet werden. Um eine übertragende ECU basierend mindestens teilweise auf einer empfangenen Nachricht zu identifizieren, kann Klassiererschaltung 306, die in einer oder mehr ECUs enthalten ist, unter Verwendung beaufsichtigter Lerntechniken angelernt werden. Signaturschaltung 308 kann konfiguriert sein, Lernbetriebe zu verwalten. Ausbildung ist konfiguriert, während eines Betriebs von ECUs 102A, 102B, ..., 102N in CAN 100 zu erfolgen. Zum Beispiel können während einer Anfangsphase (z.B. unmittelbar einem Motorstart folgend und/oder während ein Fahrzeug sich aufheizt) und/oder in einer Umgebung, wo es bekannt sein kann, dass keine ECU kompromittiert ist, Merkmalsätze ermittelt werden und der Klassierer angelernt werden. Dadurch kann Ausbildung während eines normalen Betriebs erfolgen.
  • Eingänge zur Klassiererschaltung 306 enthalten während der beaufsichtigten Ausbildung eine legitime ECU-ID, die einer empfangenen Nachricht entspricht, und eine Signatur, d.h. einen Merkmalsatz, der Werte eines oder mehrerer Merkmale enthält, wie hierin beschrieben. Um beaufsichtige Ausbildung und ECU-Authentifizierung zu unterstützen, kann jede ECU-ID (d.h. legitime ECU-ID) mit einer oder mehr Nachricht-IDs verknüpft sein und in ID-Mapspeicher 307 gespeichert sein. Mit anderen Worten, Nachricht-ID zu ECU-ID Mapping ist im Allgemeinen m zu Eins mit m >= 1. In den Ausführungsformen mit einer Master-ECU kann eine jeweilige ECU-ID für jede ECU 102A, 102B, ..., 102N, die in CAN-Netzwerk 100 enthalten ist, mit einer oder mehr entsprechenden Nachricht-IDs verknüpft sein und im ID-Mapspeicher 307 gespeichert sein. In den anderen Ausführungsformen, mit jeder empfangenden ECU konfiguriert, jede übertragende ECU zu identifizieren, die konfiguriert ist, Nachrichten an diese empfangende ECU zu übertragen, kann jede ECU einen jeweiligen ID-Mapspeicher 307 beinhalten. Jeder jeweilige ID-Mapspeicher 307 ist dann konfiguriert, eine oder mehr legitime übertragende ECU-Kennungen zu speichern, die mit entsprechenden Nachrichtenkennungen verknüpft sind. Zum Beispiel können die ID-Mapinformationen als eine Nachschlagetabelle (Lookup Table, LUT) gespeichert sein. Weiter mit diesem Beispiel kann Signaturschaltung 308 konfiguriert sein, eine ECU-ID zu ermitteln (d.h. eine ECU identifizieren, die legitim eine Nachricht übertragen kann), die mit einer Nachricht-ID verknüpft ist, die in einer empfangenen Nachricht enthalten ist, unter Verwendung der Nachricht-ID als einen Index in den jeweiligen Mapspeicher 307. Der ID-Mapspeicher 307 kann vor Betrieb von ECU 300 mit Mapinformationen befüllt werden.
  • Daher können in Antwort auf ein Empfangen einer Nachricht Signaturschaltung 308 und/oder ACK-Schwellenschaltung 312 konfiguriert sein, die Nachricht-ID der empfangenen Nachricht zu erfassen und dann die legitime ECU zu identifizieren, die mit der erfassten Nachricht-ID verknüpft ist. ACK-Schwellenschaltung 312 und Merkmalsatz-Schaltung 310 können dann konfiguriert sein, einen Merkmalsatz zu ermitteln, wie hierin beschrieben.
  • ACK-Schwellenschaltung 312 kann dann konfiguriert sein, mehrere VCANH und/oder VCANL Werte zu erfassen, während die ECU überträgt. Spannungsmessungsschaltung 314 ist konfiguriert, einen Ausgang von Schnittstellenschaltung 316 zu empfangen, z.B. von ADC-Schaltung, und die entsprechende Spannung zu ermitteln (d.h. messen). ACK-Schwellenschaltung 312 ist konfiguriert, die mehreren VCANH und/oder VCANL Spannungen während eines Empfangs von 0-Bits, d.h. VCANHO und VCANLO, zu erfassen. ACK-Schwellenschaltung 312 ist konfiguriert, die erfassten Spannungswerte in Signaturdatenspeicher 309 zu speichern.
  • ACK-Schwellenschaltung 312 kann dann konfiguriert sein, eine oder mehr ACK-Schwellenspannungen basierend mindestens teilweise auf den erfassten VCANH und/oder VCANL Spannungen zu ermitteln. Die ACK-Schwellspannungswerte beziehen sich auf CAN-Busspannungswerte, die von einer empfangenden ECU festgestellt werden, wenn eine übertragende ECU Null-Bits überträgt. Zum Beispiel kann ACK-Schwellenschaltung 312 konfiguriert sein, einen hohen ACK-Schwellenspannungswert, VthH, in Bezug auf VCANH und einen niedrigen ACK-Schwellenspannungswert, VthL, in Bezug auf VCANL zu ermitteln. Die Null-Bits sind in einer übertragenen Nachricht enthalten, die von der empfangenden ECU empfangen wird.
  • ACK-Schwellenschaltung 312 ist konfiguriert, eine Zahl von VCANH und/oder VCANL Werten während empfangener Null-Bits zu erfassen. Die erfassten Busleitungsspannungen auf Null-Bits zu beschränken, kann durch Beschränken der VCANH und/oder VCANL Werte auf jeweilige ausgewählte Spannungsspektren erreicht werden. Die ausgewählten Spannungsspektren können basierend mindestens teilweise auf jeweiligen voreingestellten Grenzen ermittelt werden.
  • Die gemessenen Spannungen werden in Signaturdatenspeicher 309 gespeichert, falls sie in eine anwendbare Voreinstellungsgrenze fallen. Die voreingestellten Grenzen können sich für VCANH und VCANL unterscheiden. Für VCANH können die gemessenen Spannungen gespeichert werden, falls sie über einer voreingestellten CANH-Grenze sind. Die gemessenen VCANL-Spannungen können gespeichert werden, falls sie unterhalb einer voreingestellten CANL-Grenze sind. Die voreingestellten Grenzen können ermittelt werden, bevor die Messungen getätigt werden und können sich auf VCANH und VCANL Nennspannungen beziehen, die mit 0-Bits verknüpft sind.
  • Zum Beispiel, falls die Nennspannungen für ein 0-Bit 3,5V für CANH und 1,5V für CANL sind und die nominale Spannung für ein 1-Bit 2,5V ist (für sowohl VCANH als auch VCANL), dann können die jeweiligen voreingestellten Grenzen jeder dominanten Spannung plus beziehungsweise minus ungefähr 37,5% des Unterschieds (Vdiff) zwischen denen entsprechen. Wie hierin verwendet bedeutet „ungefähr“ plus oder minus einem Prozent. Für CANH wird die Grenze durch Subtrahieren des Prozentsatzes des nominalen Wertes für VCANH ermittelt. Für CANL wird die Grenze durch Addieren des Prozentsatzes zum nominalen Wert für VCANL ermittelt. Um weiter zu klar zu stellen, die voreingestellte Grenze für CANH ist im vorigen Beispiel die CANH Nennspannung (3,5V) minus 37,5% von Vdiff. Vdiff ist 3,5V - 1,5V = 2V, also sind 37,5% von Vdiff 0,375 * 2V = 0,75. Daher ist in diesem Beispiel die voreingestellte Grenze für VCANH 3,5V - 0,75V = 2,75V. Ähnlich ist die voreingestellte Grenze für CANL in diesem Beispiel 1,5V + 0,75V = 2,25V. Daher sind in diesem Beispiel VCANH Werte gespeichert, falls sie über 2,75V sind, während VCANL Werte gespeichert sind, falls sie unterhalb 2,25V sind.
  • Die ACK-Schwellenspannungen VthH, VthL beziehen sich auf Eigenschaften der empfangenen Spannungen VCANH und VCANL, die während eines Empfangs von Null-Bits gemessen werden. Zum Beispiel kann Messung mehrerer CAN-Busleitungsspannungen (hoch oder niedrig) eine Verteilung von Spannungswerten (VCANH oder VCANL) ergeben. Die Verteilung kann einer Gauß'schen Wahrscheinlichkeitsverteilungsfunktion entsprechen. Die ACK-Schwellenspannungen können dann genutzt werden, ACK-Busleitungsspannungen auszufiltern, wie hierin beschrieben.
  • Daher kann ACK-Schwellenschaltung 312 konfiguriert sein, eine entsprechende Nachricht-ID in Antwort auf Empfangen einer Nachricht zu erfassen und die legitime übertragende ECU basierend mindestens teilweise auf der Nachricht-ID zu identifizieren. ACK-Schwellenschaltung 312 ist konfiguriert, eine Zahl, N, von CANH Spannungen größer als eine CANH Schwellenspannung (d.h. voreingestellte Grenze) und CANL Spannungen kleiner als eine CANL Schwellenspannung (d.h. voreingestellte Grenze) während Übertragung/Empfang mehrerer Nachrichten zu erfassen. Zum Beispiel kann für eine nominale VCANH von 3,5 V die CANH Schwellenspannung 2,75 V sein und für eine nominale VCANL von 1,5 V kann die CANL Schwellenspannung 2,25 V sein.
  • Die erfassten CANH und CANL Spannungen können in Signaturdatenspeicher 309 gespeichert werden. ACK-Schwellenschaltung 312 ist ferner konfiguriert, einen anfangs meistfrequentierten CANH Spannungswert (VfreqH1) und einen anfangs meistfrequentierten CANL Spannungswert (Vfreq1L1) für alle N CANH beziehungsweise N CANL Spannungswerte zu ermitteln und zu speichern. VfreqH1 und VfreqL1 können für eine entsprechende ECU ermittelt sein, die legitim eine ausgewählte Nachricht übertragen hat. In einer Ausführungsform können Vfreq1H1 und VfreqL1 jeweils einem jeweiligen Spannungswert plus oder minus einer Toleranz entsprechen. In einem Beispiel kann die Toleranz ein Prozent (%) sein. In einem anderen Beispiel kann die Toleranz 10% sein. Bereitstellen eines Spannungsspektrums für einen jeweiligen Spannungswert ist konfiguriert, ein Erfassen einer möglicherweise unendlichen Zahl an Spannungswerten zu vermeiden. Die Toleranzen sind konfiguriert, endliche Lösung und/oder Quantisierung zu berücksichtigen, die mit dem ADC verknüpft ist, der in Schnittstellenschaltung 316 enthalten ist. Eine Zahl K an Nachrichten kann empfangen werden und eine entsprechende Zahl (d.h. K) an Werten jeder von VfreqH1 und VfreqL1 kann ermittelt und in Signaturdatenspeicher 309 durch ACK-Schwellenschaltung 312 gespeichert werden.
  • ACK-Schwellenschaltung 312 kann dann konfiguriert sein, statistische Analyse an den K VfreqH1 Werten und den K VfreqL1 Werten auszuführen. In einer Ausführungsform kann ACK-Schwellenschaltung 312 konfiguriert sein, eine Zählung von jedem VfreqH1 Wert und eine Zählung von jedem VfreqL1 Wert zu ermitteln. Die Zählungen von VfreqH1 Werten und der entsprechenden VfreqH1 Werte können dann einer Wahrscheinlichkeitsverteilung von VfreqH1 Werten entsprechen. Ähnlich können die Zählungen von VfreqL1 Werten und der entsprechenden VfreqL1 Werte einer Wahrscheinlichkeitsverteilung von VfreqL1 Werten entsprechen.
  • Eine Mittel- und Standardabweichung jeder Wahrscheinlichkeitsverteilungsfunktion kann dann durch, z.B., ACK-Schwellenschaltung 312 ermittelt werden. Eine CANH ACK-Schwellenspannung (VthH) und eine CANL ACK-Schwellenspannung (VthL) können dann basierend mindestens teilweise auf den jeweiligen Wahrscheinlichkeitsverteilungsfunktionen ermittelt werden. Zum Beispiel kann VthH einem Mittel (µH) plus einem ganzen Vielfachen einer Standardabweichung (σH) der Wahrscheinlichkeitsverteilung von VfreqH1 Werten entsprechen und VthL kann einem Mittel (µL) minus einem ganzen Vielfachen einer Standardabweichung (σL) der Wahrscheinlichkeitsverteilung von VfreqL1 Werten entsprechen. Das ganze Vielfache kann im Spektrum von 1 bis 5 sein. Zum Beispiel kann das ganze Vielfache gleich 3 sein. Die CANH ACK-Schwellenspannung (VthH) und die CANL ACK-Schwellenspannung (VthL) können dann in Signaturdatenspeicher 309 gespeichert werden und/oder an Merkmalsatzschaltung 310 bereitgestellt werden. In manchen Ausführungsformen können die ACK-Schwellenspannungen in Signaturdatenspeicher 309 gespeichert werden, der mit der entsprechenden ECU-Kennung verknüpft ist.
  • Die ACK-Schwellenspannungen VthH, VthL können verwendet werden, um eine Einwirkung auf Authentifizierungsbetriebe von Übertragung von ACK-Bits mehrerer ECUs zu reduzieren. Mit anderen Worten, die ACK-Schwellenspannungen VthH, VthL sind konfiguriert, VCANH und VCANL Werte einzugrenzen, die einer übertragenden ECU zugewiesen werden können. Daher kann eine Wahrscheinlichkeit, VCANH und CANL Werte zu enthalten, die von mehreren ECUs erzeugt werden, die ein Null-Bit während eines ACK-Slot in einer Nachricht übertragen, verringert werden. Eine Wahrscheinlichkeit, die ACK-Spannungen in einer übertragenden ECU-Signatur zu enthalten, kann verringert werden, ohne ausdrücklich das ACK-Bit im Nachrichtenframe zu identifizieren.
  • Merkmalsatzschaltung 310 kann dann konfiguriert werden, einen oder mehr Merkmalwerte basierend mindestens teilweise auf den ACK-Schwellenspannungen zu ermitteln. Die Merkmalwerte können dann in Signaturdatenspeicher 309 gespeichert werden, der mit der entsprechenden ECU-Kennung verknüpft ist. Mehrere Merkmalsätze können in Signaturdatenspeicher 309 für jede ECU-ID gespeichert werden. Die mehreren Merkmalsätze und verknüpften ECU-IDs können dann genutzt werden, um den Klassierer unter Verwendung von Maschinenlerntechniken zu bilden, wie hierin beschrieben.
  • Merkmalsatzschaltung 310 ist konfiguriert, einen Satz an Merkmalwerten für einen Merkmalsatz zu ermitteln. Der Merkmalsatz ist konfiguriert, von Klassiererschaltung 306 während eines Betriebs von Steuerungsbereichsnetzwerk 100 verwendet zu werden, um eine übertragende ECU zu identifizieren, die einer empfangenen Nachricht entspricht. Der Merkmalsatz kann ein oder mehr Merkmale enthalten, die sich auf CAN-Busspannungen, VCANH und VCANL, beziehen, basierend mindestens teilweise auf mehreren Null-Bits ermittelt, die in mehreren Nachrichten enthalten sind. Der Merkmalsatz kann eines oder mehr der Merkmale enthalten, die in Tabelle 1 unterhalb aufgelistet sind. TABELLE 1
    Merkmalzahl Merkmal
    F1 VCANHmax
    F2 VfreqH2
    F3 VthH
    F4 Gleitender Durchschnitt von F1
    F5 Gleitender Durchschnitt von F2
    F6 VCANLmin
    F7 VfreqL2
    F8 VthL
    F9 Gleitender Durchschnitt von F6
    F10 Gleitender Durchschnitt von F7
  • In Tabelle 1 entsprechen VCANHmax und VCANLmin einer maximalen VCANH Spannung beziehungsweise einer minimalen VCANL Spannung, die durch eine empfangende ECU während Übertragung einer Nachricht erfasst werden. Die gleitenden Durchschnitte von Merkmalen von F4, F5, F6 und F7 können im Laufe der Zeit während eines Betriebs von ECU 200 (und Steuerungsbereichsnetzwerk 100) ermittelt werden. Die gleitenden Durchschnitte der Merkmale F4, F5, F6 and F7 sind konfiguriert, Messungsschwankungsbreite zu berücksichtigen und daher Glättung für Merkmalwerte bereitzustellen.
  • Merkmalsatzschaltung 310 ist konfiguriert, eine Zahl, M, für alle CANH und CANL Spannungen zu erfassen, die zwischen jeweilige voreingestellte Grenzen für eine empfangene Nachricht fallen. Die voreingestellten Grenzen beziehen sich auf nominale Busspannungen und enthalten die ACK-Schwellenspannungen VthH, VthL. Zum Beispiel kann für eine nominale VCANH von 3,5V eine entsprechende CANH Schwellenspannung 2,75V sein. Daher können in diesem Beispiel VCANH Spannungen, die größer als 2,75 V und kleiner als VthH sind, erfasst und in Signaturdatenspeicher 309 gespeichert werden. In einem anderen Beispiel kann für nominale VCANL von 1,5V eine entsprechende CANL Schwellenspannung 2,25V sein. Daher können in diesem Beispiel CANL Spannungen, die kleiner als 2,25 V und größer als VthL sind, erfasst und in Signaturdatenspeicher 309 gespeichert werden.
  • Merkmalsatzschaltung 310 ist konfiguriert, einen betriebenen meistfrequentierten CANH Spannungswert (VfreqH2) für die M erfassten VCANH Werte zu ermitteln und zu speichern. Merkmalsatzschaltung 310 ist ferner konfiguriert, einen betriebenen meistfrequentierten CANL Spannungswert (VfreqL2) für die die M erfassten VCANL Werte zu ermitteln und zu speichern. Es wird begrüßt werden, dass die erfassten CANH und CANL Spannungen, die zum Ermitteln von VfreqH2 und VfreqL2 genutzt werden, sowohl eine obere als auch eine untere Grenze haben. Dies unterscheidet sich von der Ermittlung des anfänglichen meistfrequentierten CANH Spannungswerts (VfreqH1) und des anfänglichen meistfrequentierten CANL Spannungswerts (VfreqL1). VfreqH1 und VfreqL1 wurden jeweils nur unter Verwendung einer einzelnen jeweiligen Grenze ermittelt, wie hierin beschrieben. Erfasste VCANH Werte auf Werte von weniger als VthH zu beschränken und erfasste VCANL Werte auf Werte größer als VthL zu beschränken, kann VCANH und VCANL Spannungswerte entsprechend ACK-Bits herausfiltern. Solches Filtern kann die Genauigkeit einer entsprechenden Signatur (d.h. Merkmalwerten in einem Merkmalsatz) und daher Authentifizierungsrichtigkeit verbessern.
  • Merkmalsatzschaltung 310 ist konfiguriert, einen maximalen CANH Spannungswert (VCANHmax) und einen minimalen CANL Spannungswert (VCANLmin) der erfassten CANH und CANL Spannungswerte zu identifizieren (d.h. ermitteln) und zu speichern. VCANHmax und VCANLmin sind konfiguriert, zwischen die jeweiligen voreingestellten Grenzen für eine empfangene Nachricht zu fallen, wie hierin beschrieben.
  • Daher können Werte von Merkmalen VfreqH2, VfreqL2, VCANHmax, VCANLmin, VthH und VthL basierend mindestens teilweise auf Spannungen VCANH und VCANL, die mit Null-Bits in einer empfangenen Nachricht verknüpft sind, ermittelt werden. Während einer Anfangsphase (z.B. unmittelbar einem Motorstart folgend und/oder während ein Fahrzeug sich aufwärmt) und/oder in einer Umgebung, wo es bekannt sein kann, dass keine ECU kompromittiert ist, können Merkmalsatzwerte ermittelt werden. Die Merkmalsatzwerte können dann mit einer entsprechenden ECU-Kennung verknüpft werden und in Signaturdatenspeicher 309 gespeichert werden. Die Merkmalsatzwerte können von ECU 300 verknüpft und, z.B. durch eine Master-ECU und/oder durch jede ECU für den jeweiligen Teilsatz an Nachrichten gespeichert werden, auf den eine jeweilige ECU konfiguriert ist, zu antworten. Während eines Betriebs können die Merkmalsatzwerte an Klassiererschaltung 306 (die angelernt wurde) zur Identifikation der übertragenden ECU bereitgestellt werden.
  • Daher kann Merkmalsatzschaltung 310 konfiguriert sein, einen oder mehrere Werte eines oder mehrere Merkmale zu ermitteln, die im Merkmalsatz enthalten sind, der zuvor in Tabelle 1 beschrieben wurde. Die Merkmalsatzwerte können dann mit der entsprechenden ECU-Kennung verknüpft werden und in Signaturdatenspeicher 309 gespeichert werden. Merkmalsatzschaltung 310 ist konfiguriert, die ACK-Schwellenwerte, VthH und VthL, zu nutzen, die von ACK-Schwellenschaltung 312 ermittelt sind, um „Rauschen“ in den Spannungsmessungen zu verringern und/oder zu eliminieren, das durch mehrere ECUs verursacht wird, die ein ACK-Bit übertragen. Der Merkmalsatz und die verknüpfte ECU-Kennung können dann genutzt werden, einen Klassierer, z.B. Klassiererschaltung 306, anzulernen, wie hierin beschrieben.
  • Signaturschaltung 308 kann konfiguriert sein, Ausbildungsklassiererschaltung 306 zu verwalten. Ausbildung kann zum Beispiel Bereitstellen mehrerer Sätze an Merkmalsatzwerten und entsprechender ECU-Kennungen an Klassiererschaltung 306 und Anpassen von Klassiererschaltung 306 Parametern enthalten. Klassiererschaltung 306 kann eine Support Vector Machine (SVM), einen Random Forest, eine logistische Regression usw. enthalten, ist aber nicht darauf begrenzt. Signaturschaltung 308 kann konfiguriert sein, zu ermitteln, ob es eine adäquate Zahl von Merkmalsätzen zum Errichten des Klassierers gibt. Falls es keine adäquate Zahl von Merkmalsätzen gibt, dann kann Merkmalsatzschaltung 310 konfiguriert sein, zusätzliche Merkmalsatzwerte zu ermitteln, die mit zusätzlich empfangenen Nachrichten und entsprechenden ECU-Kennungen verknüpft sind. Falls es eine adäquate Zahl von Merkmalsätzen gibt, dann kann Signaturschaltung 308 konfiguriert sein, Ausbildungsklassiererschaltung 306 zu initiieren und/oder fortzusetzen.
  • Daher können während einer Anfangsphase (z.B. unmittelbar einem Motorstart folgend und/oder während ein Fahrzeug sich aufwärmt) und/oder in einer Umgebung, wo es bekannt sein kann, dass keine ECU kompromittiert ist, eine oder mehr ECUs konfiguriert sein, mehrere VCANH und/oder VCANL Spannungen zu erfassen. Die eine oder mehr ECUs können dann konfiguriert werden, ACK-Schwellenspannungen für eine Ziel-ECU zu ermitteln, um einen Satz von Merkmalwerten für die Ziel-ECU zu ermitteln und Klassiererschaltung anzulernen. Die Ausbildung ist konfiguriert, einen Satz an Merkmalwerten auf eine ECU-Kennung zu beziehen.
  • Klassiererschaltung 306 kann dann konfiguriert werden, eine übertragende ECU basierend auf mindestens teilweise Merkmalsätzen zu identifizieren. Die Merkmalsätze können basierend mindestens teilweise auf VCANH und/oder VCANL Spannungen ermittelt werden, die während Übertragung einer Nachricht erfasst werden. Zum Beispiel kann Klassiererschaltung 306 konfiguriert sein, eine Referenz-ECU-ID, die der identifizierten, übertragenen ECU entspricht, der Signaturschaltung 308 bereitzustellen. Signaturschaltung 308 kann dann konfiguriert werden, zu ermitteln, ob die identifizierte ECU legitim die empfangene Nachricht übertragen kann. Zum Beispiel kann Signaturschaltung 308 konfiguriert sein, zu ermitteln, ob die Referenz-ECU-ID mit der legitimen ECU-ID übereinstimmt, die mit der empfangenen Nachrichtenkennung in ID-Mapspeicher 307 verknüpft ist. Zum Beispiel kann in Antwort auf eine übertragene Nachricht, die von mindestens der Master-ECU empfangen wird, die Master-ECU eine legitime ECU-ID basierend mindestens teilweise auf der Nachricht-ID, die in der empfangenen Nachricht enthalten ist, und basierend mindestens teilweise auf dem ID-Mapspeicher 307 identifizieren. Ein entsprechender Merkmalsatz, der während des Empfangs der übertragenen Nachricht ermittelt wird, kann dann an die Klassiererschaltung 306 bereitgestellt werden. Die Klassiererschaltung kann konfiguriert sein, eine entsprechende Referenz-ECU-ID auszugeben. Falls die legitime ECU-ID und Referenz-ECU-ID nicht übereinstimmen, dann kann die übertragende ECU kompromittiert sein.
  • Daher ist Merkmalsatzschaltung 310 konfiguriert, einen oder mehr Merkmalwerte basierend mindestens teilweise auf empfangener VCANHO und VCANLO (d.h. Null-Bit-Spannungen) zu ermitteln, wie hierin beschrieben. Merkmalsatzschaltung 310 kann ferner konfiguriert sein, ACK-Schwellenspannungen basierend mindestens teilweise auf Eigenschaften von VCANHO und VCANLO anzupassen, die während Null-Bits gemessen werden, wie hierin beschrieben.
  • In manchen Ausführungsformen kann Merkmalsatzschaltung 310 ferner konfiguriert sein, jeweilige Wahrscheinlichkeiten, PoutH und PoutL, zu ermitteln, dass unlängst erfasste haben, dass CANH und CANL Spannungswerte außerhalb deren jeweiliger ACK-Schwellenspannungen sind, d.h. VCANH > VthH und VCANL < VthL. Wie hierin verwendet, bedeutet „unlängst erfasst“ innerhalb einer Zeitdauer erfasst und/oder innerhalb einer definierten Zahl von Nachrichten erfasst. Zum Beispiel kann eine Dauer der Zeitdauer im Spektrum von einer Sekunde bis 10 Sekunden sein. In einem anderen Beispiel kann die Zahl von Nachrichten im Spektrum von 10 Nachrichten bis 20 Nachrichten sein. In einer Ausführungsform kann PoutH als eine Zahl unlängst erfasster CANH Spannungswerte ermittelt sein, die größer sind als VthH geteilt durch eine Zahl unlängst erfasster CANH Spannungswerte. In einer anderen Ausführungsform kann PoutL als eine Zahl unlängst erfasster CANL Spannungswerte ermittelt sein, die kleiner sind als VthL geteilt durch eine Zahl unlängst erfasster CANL Spannungswerte.
  • Die Wahrscheinlichkeiten PoutH und PoutL können dann genutzt werden, um die ACK-Schwellenspannungen VthH beziehungsweise VthL anzupassen, d.h. adaptives Lernen zu erleichtern. Solches Anpassen kann eine Drift zum Beispiel in den Ausgangsspannungen der Sendeempfänger übertragender ECUs im Laufe der Zeit beinhalten. In einer Ausführungsform kann eine Funktion fpen („Straffunktion“) von jeder der Wahrscheinlichkeiten PoutH und PoutL genutzt werden, um die ACK-Schwellenspannungen anzupassen. Zum Beispiel kann fpen Multiplizieren einer Funktion jeder Wahrscheinlichkeit mit einem Faktor (d.h. einem Gewicht) entsprechen, bevor die ACK-Schwellenspannungen angepasst werden. Der Faktor kann im Bereich von 0,5 bis 1 sein. In einem anderen Beispiel kann fpen 1,2 entsprechen.
  • Zum Beispiel kann fpen ein jeweiliges Verhältnis von jeder Wahrscheinlichkeit PoutH und PoutL zu einer erwarteten Wahrscheinlichkeit Pexp nutzen. Diese Pexp kann basierend zum Beispiel auf der Größe (in Bits) einer ACK-Übertragung ermittelt sein, verglichen mit dem Rest einer übertragenen Nachricht. Merkmalsatzschaltung 310 ist konfiguriert, ein Verhältnis einer Zahl von ACK-Bit zu einer Zahl normaler (d.h. nicht-ACK) Bits über ein Intervall, z.B. Zeitintervall, Sequenz von Bits usw., zu ermitteln. Zum Beispiel ist für ein Nachrichtenframe mit 128 Bits, und angenommen, dass die Hälfte der Bits 0-Bits sind und die Hälfte der Bits 1-Bits sind (d.h. Eins-Bits und Null-Bits sind gleich wahrscheinlich), die Wahrscheinlichkeit, dass ein Null-Bit im empfangenen Nachrichtenframe ein ACK-Bit ist (ACK-Bit = 0), 1/(128/2) = 1/64 oder ungefähr 1,56%. Daher ist in diesem Beispiel der Merkmalwert auf eine Ganzzahl aufgerundet, d.h. 2%. In solch einem Szenario, falls mehr als 2% der gemessenen CANH Spannungen über VthH waren (d.h. PoutH/Pexp > 1), würde dies andeuten, dass die VthH zu niedrig ist. Dies kann „legitime“ CANH Spannungen veranlassen, die zur Signaturanalyse nützlich wären, fälschlich als ACK-Signale gekennzeichnet zu werden und entsprechend verworfen zu werden. Die ACK-Schwellenspannungen, VthH, VthL können dann durch Addieren beziehungsweise Subtrahieren eines Produkts des Faktors (z.B. einem Wert zwischen 0,5 und 1,0) und dem Verhältnis (z.B. PoutH/Pexp, PoutL/Pexp) angepasst werden. Daher erlaubt die Straffunktion fpen vorteilhafterweise adaptives Lernen und Anpassen der ACK-Schwellenspannung basierend mindestens teilweise auf einer erwarteten Wahrscheinlichkeit und basierend mindestens teilweise auf einer gemessenen, d.h. unlängst ermittelten, Wahrscheinlichkeit, was Richtigkeit von Authentifizierungsbetrieben erhöht. Merkmalsatzschaltung 310 kann konfiguriert sein, die hohe ACK-Schwellenspannung VthH durch Addieren eines Ergebnisses von fpen(PoutH) zu VthH anzupassen und/oder kann konfiguriert sein, die niedrige ACK-Schwellenspannung VthL durch Subtrahieren eines Ergebnisses von fpen(PoutL) von VthL anzupassen.
  • Daher können Werte von VfreqH2, VfreqL2, VCANHmax, VCANLmin, VthH (anfänglich oder angepasst), VthL (anfänglich oder angepasst) basierend mindestens teilweise auf Spannungen, VCANH und VCANL, ermittelt sein, die mit Null-Bits in einer empfangenen Nachricht verknüpft sind. Der entsprechende Merkmalsatz kann dann gespeichert, an Klassiererschaltung 306 bereitgestellt und/oder durch Klassiererschaltung 306 bezogen werden. Klassiererschaltung 306 kann dann konfiguriert sein, eine Referenz-ECU-Kennung basierend mindestens teilweise auf den Merkmalwerten bereitzustellen, die durch Merkmalsatzschaltung 310 ermittelt sind.
  • Signaturschaltung 308 kann ferner konfiguriert sein, zu ermitteln, ob die übertragende ECU-Kennung, die von Klassiererschaltung 306 bereitgestellt ist, einer ECU entspricht, die legitim die empfangene Nachricht übertragen kann. Zum Beispiel kann Signaturschaltung 310 konfiguriert sein, zu ermitteln, ob die legitime ECU-ID, die mit der erfassten Nachrichtenkennung in ID-Mapspeicher 307 verknüpft ist, der übertragenden ECU-Kennung (d.h. Referenz-ECU-ID) entspricht (d.h. damit übereinstimmt). Falls die legitime ECU-ID nicht mit der Referenz-ECU-Kennung übereinstimmt, dann kann Signaturschaltung 308 konfiguriert sein, einen möglichen Fehler zu melden.
  • Daher kann Klassiererschaltung unter Verwendung beaufsichtigter Lerntechniken angelernt werden. Mit anderen Worten, mehrere Paare von Merkmalsatz und entsprechender legitimer ECU-ID können genutzt werden, die Klassiererschaltung anzulernen. In Betrieb kann ein Satz von Merkmalwerten, d.h. ein Merkmalsatz, an Klassiererschaltung bereitgestellt sein und die Klassiererschaltung kann konfiguriert sein, eine Referenz-ECU-ID zu ermitteln. Eine legitime ECU-ID kann basierend mindestens teilweise auf einer erfassten Nachrichten-ID ermittelt sein. Die Referenz-ECU-ID und legitime ECU-ID können dann verglichen werden, um zu ermitteln, ob eine empfangene Nachricht legitim durch die übertragende ECU übertragen wurde oder nicht.
  • Daher kann eine übertragende ECU basierend mindestens teilweise auf Spannungswerten, die mit einer empfangenen Nachricht verknüpft sind, einer empfangenen Nachrichtenkennung und einem entsprechenden Satz an Merkmalwerten identifiziert werden. Der Satz an Merkmalwerten kann basierend mindestens teilweise auf den gemessenen Spannungswerten ermittelt werden. Ob die übertragende ECU legitim die empfangene Nachricht übertragen kann, kann dann ermittelt werden, z.B. durch Vergleichen einer Referenz-ECU-ID aus einem Klassierer, mit einer legitimen ECU-ID, die mit der empfangenen Nachricht-ID in einem ID-Mapspeicher verknüpft ist. Ein Ergebnis der Ermittlung kann dann anzeigen, ob die übertragende ECU kompromittiert wurde oder nicht.
  • 4 ist ein Flussdiagramm 400 von Betrieben, die Klassierererrichtung in Übereinstimmung mit mindestens einer Ausführungsform hierin veranschaulicht. Insbesondere veranschaulicht das Flussdiagramm 400 ein Errichten eines Klassierers basierend mindestens teilweise auf Sätzen von Merkmalwerten und entsprechend Übertragen von ECU-Kennungen (d.h. legitimen ECU-Kennungen). Die Betriebe können zum Beispiel von Signaturschaltung 308, Merkmalsatzschaltung 310, ACK-Schwellenschaltung 312 und/oder Spannungsmessungsschaltung 314 von 3 ausgeführt werden.
  • Betriebe von Flussdiagramm 400 können bei Betrieb 402 mit Empfangen einer Nachricht beginnen. Bei Betrieb 404 kann eine Nachrichtenkennung erfasst werden. Bei Betrieb 406 kann eine legitime ECU, die mit der Nachrichtenkennung in einem ID-Mapspeicher verknüpft ist, identifiziert (d.h. ermittelt) werden. Bei Betrieb 408 kann ein Merkmalsatz ermittelt werden. Zum Beispiel kann Betrieb 408 einen oder mehr Betriebe von Flussdiagramm 500 und/oder Flussdiagramm 600 enthalten, wie unten ausführlicher beschrieben wird. Bei Betrieb 410 kann der Merkmalsatz mit einer gespeicherten ECU-Kennung (d.h. einer legitimen ECU-ID) verknüpft und gespeichert werden.
  • Bei Betrieb 412 kann ermittelt werden, ob es adäquate Merkmalsätze gibt, um einen Klassierer zu errichten. Falls es keine adäquaten Merkmalsätze gibt, um den Klassierer zu errichten, kann Programmfluss zu Betrieb 402 zurückkehren. Falls es adäquate Merkmalsätze gibt, um den Klassierer zu errichten, dann kann der Klassierer bei Betrieb 414 errichtet werden. Programmfluss kann dann bei Betrieb 416 fortsetzen.
  • 5 ist ein Flussdiagramm 500 von Betrieben, das Ermittlung von Bestätigungs(ACK)-Schwellenspannungen in Übereinstimmung mit mindestens einer Ausführungsform hierin veranschaulicht. Insbesondere veranschaulicht das Flussdiagramm 500 Ermitteln von ACK-Schwellenspannungen basierend mindestens teilweise auf Statistiken, die mit Null-Bits verknüpft sind, die in einer empfangenen Nachricht enthalten sind. Die Betriebe können zum Beispiel durch ACK-Schwellenschaltung 312 von 3 ausgeführt werden.
  • Betriebe von Flussdiagramm 500 können bei Betrieb 501 mit Empfangen einer Nachricht beginnen. Bei Betrieb 502 kann eine Nachricht-ID erfasst werden. Bei Betrieb 503 kann eine ECU, d.h. eine legitime ECU, die mit der Nachricht-ID verknüpft ist, identifiziert werden. Eine Zahl, N, von CANH und CANL Spannungen kann bei Betrieb 504 während N Null-Bits erfasst werden. Zum Beispiel kann VCANH größer als eine hohe voreingestellte Grenze und VCANL kleiner als eine niedrige voreingestellte Grenze erfasst werden. Bei Betrieb 506 können ein anfänglicher meistfrequentierter CANH hoher Busleitungsspannungswert und ein anfänglicher meistfrequentierter CANL niedriger Busleitungsspannungswert ermittelt und als VreqH1 beziehungsweise VfreqL1 gespeichert werden. Bei Betrieb 508 kann ermittelt werden, ob die Zahl von Wiederholungen größer als oder gleich einer Zahl, K, ist.
  • Falls die Zahl von Wiederholungen nicht größer als oder gleich K ist, dann kann Programmfluss zu Betrieb 501 zurückkehren. Falls die Zahl von Wiederholungen größer als oder gleich K ist, dann können ein oder mehr statistische Werte bei Betrieb 510 ermittelt und gespeichert werden. Die statistischen Werte können zum Beispiel eine Mittel- und eine Standardabweichung von jeder Verteilung von VfreqH1 und VfreqL1 enthalten. Bei Betrieb 512 können ACK-Schwellenspannungen VthL und VthH ermittelt werden. Bei Betrieb 514 können ACK-Schwellenspannungen VthL und VthH gespeichert und/oder ausgegeben werden. Programmfluss kann dann bei Betrieb 516 fortsetzen.
  • 6 ist ein Flussdiagramm 600 von Betrieben, das Ermittlung von Merkmalwerten eines Merkmalsatzes in Übereinstimmung mit mindestens einer Ausführungsform hierin veranschaulicht. Insbesondere veranschaulicht das Flussdiagram 600 Erzeugen von Merkmalwerten eines Merkmalsatzes basierend mindestens teilweise auf CANH und CANL Spannungen (z.B. VCANH und VCANL) und basierend mindestens teilweise auf ACK-Schwellenspannungen VthL und VthH. Die Betriebe von Flussdiagramm 600 können zum Beispiel durch Merkmalsatzschaltung 310 von 3 ausgeführt werden.
  • Betriebe von Flussdiagramm 600 können bei Betrieb 602 mit Empfangen oder Beschaffen von ACK-Schwellenspannungen VthH und VthL beginnen. Bei Betrieb 604 können eine Zahl, M, von CANH und CANL Spannungen, die zwischen jeweilige voreingestellte Grenzen fallen, erfasst werden. Zum Beispiel kann VCANH größer als eine hohe voreingestellte Grenze und kleiner als VthH erfasst werden und/oder VCANL kleiner als eine niedrige voreingestellte Grenze und größer als VthL kann erfasst werden. Bei Betrieb 606 können meistfrequentierte CANH und CANL Spannungswerte ermittelt und als VfreqH2 beziehungsweise VfreqL2 gespeichert werden. Bei Betrieb 607 können eine maximale VCANH Spannung, VCANHmax, und eine minimale VCANL Spannung, VCANLmin, ermittelt werden. In manchen Ausführungsformen können bei Betrieb 608 jeweilige Wahrscheinlichkeiten, PoutH und PoutL, die unlängst erfasst haben, dass CANH und/oder CANL Spannungswerte außerhalb der jeweiligen ACK-Schwellenspannungen sind, ermittelt werden. Bei Betrieb 610 können die ACK-Schwellenspannungen VthH und VthL basierend mindestens teilweise auf den Wahrscheinlichkeiten angepasst werden. Bei Betrieb 612 kann ein Merkmalsatz errichtet werden. In manchen Ausführungsformen kann bei Betrieb 614 der Merkmalsatz angepasst werden. Zum Beispiel kann Betrieb 614 Errichten und Hinzufügen neuer Merkmale zum Merkmalsatz enthalten. Zum Beispiel kann (können) gleitende(r) Durchschnitt(e) eines oder mehr Merkmale erzeugt und zum Merkmalsatz hinzugefügt werden. Der Merkmalsatz kann bei Betrieb 616 ausgegeben werden. Programmfluss kann dann bei Betrieb 618 fortsetzen.
  • 7 ist ein Flussdiagramm 700 von Betrieben, das Authentifizieren einer empfangenen Nachricht veranschaulicht, in Übereinstimmung mit mindestens einer Ausführungsform hierin. Insbesondere veranschaulicht das Flussdiagramm 700 Identifizieren einer übertragenden ECU basierend mindestens teilweise auf einer Signatur einer empfangenen Nachricht und Ermitteln, ob die identifizierte ECU legitim die empfangene Nachricht übertragen kann. Die Betriebe von Flussdiagramm 700 können zum Beispiel von Signaturschaltung 308, Spannungsmessungsschaltung 314, Merkmalsatzschaltung 310 und/oder Klassiererschaltung 306 von 3 ausgeführt werden.
  • Betriebe von Flussdiagramm 700 können bei Betrieb 702 mit Empfangen einer Nachricht beginnen. Bei Betrieb 704 können Merkmalwerte ermittelt werden. Zum Beispiel kann Betrieb 704 Betriebe 602, 604, 606, 607, 612 und 616 von 6 enthalten. Bei Betrieb 706 können die Merkmalwerte einem Klassierer, z.B. Klassiererschaltung 306 bereitgestellt werden. Bei Betrieb 708 kann die übertragende ECU identifiziert werden. Zum Beispiel kann eine Referenz-ECU-Kennung entsprechend der übertragenden ECU ermittelt werden. Bei Betrieb 710 kann ermittelt werden, ob die empfangene Nachricht legitim durch die identifizierte übertragende ECU übertragen wurde oder nicht. Zum Beispiel kann Ermitteln, ob die empfangene Nachricht legitim von der identifizierten übertragenden ECU übertragen wurde, das Ermitteln enthalten, ob die Referenz-ECU-Kennung mit einer legitimen ECU-Kennung übereinstimmt, die mit einer empfangenen Nachricht-ID verknüpft ist. Die legitime ECU-Kennung kann basierend mindestens teilweise auf einer Nachrichtenkennung ermittelt sein, die in der empfangenen Nachricht enthalten ist.
  • Falls die empfangene Nachricht von der identifizierten übertragenden ECU legitim übertragen wurde (d.h. die Nachricht ist authentifiziert), dann kann Programmfluss bei Betrieb 714 fortsetzen. Falls die empfangene Nachricht nicht legitim von der identifizierten übertragenden ECU übertragen wurde, dann kann bei Betrieb 716 ein möglicher Fehler gemeldet werden. Programmfluss kann dann bei Betrieb 718 fortsetzen.
  • Während die Flussdiagramme von 4 bis 7 Betriebe gemäß unterschiedlicher Ausführungsformen veranschaulichen, ist zu verstehen, dass nicht alle der in 4 bis 7 abgebildeten Betriebe für andere Ausführungsformen nötig sind. Zusätzlich wird hierin vollständig erwogen, dass in anderen Ausführungsformen der vorliegenden Offenbarung die in 4, 5, 6 und/oder 7 abgebildeten Betriebe und/oder andere hierin beschriebene Betriebe auf eine Weise kombiniert werden können, die nicht spezifisch in einer der Zeichnungen gezeigt wird, und solche Ausführungsformen können weniger oder mehr Betriebe enthalten, als in 4 bis 7 veranschaulicht sind. Daher gelten Ansprüche, die sich auf Merkmale und/oder Betriebe richten, die nicht in einer Zeichnung exakt gezeigt werden, als innerhalb des Umfangs und Inhalts der vorliegenden Offenbarung.
  • In manchen Ausführungsformen kann Bus 106 und/oder ECU 102A, 102B..., 102N und/oder 300 (z.B. Sendeempfängerschaltung 318) mit einem oder mehr Busprotokollen konform gehen und/oder kompatibel sein. In einem Beispiel können Bus 106 und/oder ECU 102A, 102B..., 102N und/oder 300 (z.B. Sendeempfängerschaltung 318) mit einem oder mehr CAN-Busprotokollen und/oder Standards konform gehen und/oder kompatibel sein, enthaltend eine Internationale Organisation für Normung (International Organization for Standardization, ISO) 11898 Familie an Standards mit dem Titel Road Vehicles - Controller Area Network (CAN), enthaltend, aber nicht begrenzt auf, ISO 11898-1:2015, mit dem Titel Road vehicles - Controller area network (CAN) - Part 1: Data link layer and physical signaling, veröffentlicht am 15. Dezember 2015, und/oder frühere und/oder spätere verwandte Versionen dieses Standards, z.B. einen oder mehr von ISO 11898-2:2016, ISO 11898-3:2006, ISO 11898-4:2004, ISO 11898-5:2007, ISO 11898-6:2013. In einem anderen Beispiel können Bus 106 und/oder ECU 102A, 102B..., 102N und/oder 300 (z.B. Sendeempfängerschaltung 318) mit einem Society of Automotive Engineers (SAE) Internationale Landfahrzeugdatenkommunikationsstandard J1850_201510, mit dem Titel „Class B Data Communications Network Interface“, veröffentlicht am 14. Oktober 2015, und/oder früheren und/oder späteren und/oder verwandten Versionen des Standards konform gehen und/oder kompatibel sein.
  • Die Speicherschaltung 304 kann einen oder mehr der folgenden Typen von Speicher enthalten: Halbleiter-Firmwarespeicher, programmierbarer Speicher, nichtflüchtiger Speicher, Nur-Lese-Speicher, elektrisch programmierbarer Speicher, Direktzugriffspeicher, Flashspeicher, Magnetdatenträgerspeicher und/oder optischer Datenträgerspeicher. Entweder zusätzlicher oder alternativer Systemspeicher kann andere und/oder später entwickelte Typen von computerlesbaren Datenspeichervorrichtungen umfassen.
  • Ausführungsformen der hierin beschriebenen Betriebe können in einem System implementiert sein, das mindestens eine greifbare computerlesbare Datenspeichervorrichtung enthält, die individuell oder in Kombination Befehle darauf gespeichert hat, die, wenn von einem oder mehr Prozessoren durchgeführt, die Betriebe ausführen. Der eine oder die mehr Prozessoren können zum Beispiel eine Verarbeitungseinheit und/oder programmierbare Schaltung enthalten. Daher ist angedacht, dass Betriebe gemäß der hierin beschriebenen Verfahren über mehrere physische Vorrichtungen, wie Verarbeitungsstrukturen bei einigen verschiedenen physischen Standorten, verteilt sein können. Die Datenspeichervorrichtung kann irgendeinen Typ von greifbarer, nichttransitorischer Datenspeichervorrichtung enthalten, zum Beispiel irgendeinen Typ von Datenträger, enthaltend Disken, optische Datenträger, Compact Disk Read-Only Memories (CD-ROMs), Compact Disk Rewriteables (CR-RWs) und magneto-optische Datenträger, Halbleitervorrichtungen wie Nur-Lese-Speicher (Read-Only Memories, ROMs), Direktzugriffspeicher (Random Access Memories, RAMs) wie dynamische und statische RAMs, löschbare programmierbare Nur-Lese-Speicher (Erasable Programmable Read-Only Memories, EPROMs), elektrisch löschbare programmierbare Nur-Lese-Speicher (Electrically Erasable Programmable Read-Only Memories, EEPROMs), Flashspeicher, magnetische oder optische Karten oder irgendein Typ von Datenspeichervorrichtung, die zum Speichern elektronischer Befehle geeignet ist.
  • Wie in jeder Ausführungsform hierin verwendet, kann der Ausdruck „Logik“ sich auf Firmware und/oder Schaltung beziehen, um irgendeinen der zuvor erwähnten Betriebe auszuführen. Firmware kann als Code, Befehle oder Befehlssätze und/oder Daten ausgestaltet sein, die in Speichervorrichtungen und/oder Schaltung hartkodiert sind (z.B. nichtflüchtig).
  • „Schaltung“ kann, wie in jeder Ausführungsform hierin verwendet, zum Beispiel einzeln oder in jeder Kombination, festverdrahtete Schaltung, programmierbare Schaltung, Zustandsmaschinenschaltung, Logik und/oder Firmware umfassen, die Befehle speichert, die von programmierbarer Schaltung durchgeführt werden. Die Schaltung kann als eine integrierte Schaltung ausgestaltet sein, wie ein integrierter Schaltkreischip. In manchen Ausführungsformen kann die Schaltung mindestens teilweise durch die Prozessorschaltung 302 gebildet sein, die Code und/oder Befehlssätze (z.B. Software, Firmware usw.) entsprechend der hierin beschrieben Funktionalität durchführt, wodurch ein Allzweckprozessor in eine Sonderzweckverarbeitungsumgebung umgewandelt wird, um einen oder mehr der hierin beschriebenen Betriebe auszuführen. In manchen Ausführungsformen kann die Prozessorschaltung 302 als ein unabhängiger integrierter Schaltkreis ausgestaltet sein oder als eine von einigen Komponenten auf einem integrierten Schaltkreis eingegliedert sein. In manchen Ausführungsformen können die unterschiedlichen Komponenten und Schaltung der ECU 300 oder andere Systeme in einer System-auf-einem-Chip(System-on-a-Chip, SoC)-Architektur kombiniert sein.
  • In manchen Ausführungsformen kann eine Hardwarebeschreibungssprache (Hardware Description Language, HDL) verwendet werden, um Schaltkreis- und/oder Logikimplementierung(en) für die hierin beschriebenen unterschiedlichen Schaltungen zu spezifizieren. Zum Beispiel kann in einer Ausführungsform die Hardwarebeschreibungssprache mit einer Hardwarebeschreibungssprache (VHDL) für integrierte Schaltkreise mit sehr hoher Geschwindigkeit (Very High Speed Integrated Circuits, VHSIC) konform gehen oder kompatibel sein, die Halbleiterfertigung eines oder mehrere Schaltkreise und/oder hierin beschriebener Logik ermöglichen kann. Die VHDL kann mit IEEE Standard 1076-1987, IEEE Standard 1076.2, IEEE1076.1, IEEE Entwurf 3.0 von VHDL-2006, IEEE Entwurf 4.0 von VHDL-2008 und/oder anderen Versionen der IEEE VHDL Standards und/oder Hardwarebeschreibungsstandards konform oder kompatibel sein.
  • In manchen Ausführungsformen kann eine Verilog Hardwarebeschreibungssprache (HDL) verwendet werden, um Schaltkreis- und/oder Logikimplementierung(en) für die hierin beschriebenen unterschiedlichen Schaltungen zu spezifizieren. Zum Beispiel kann in einer Ausführungsform die HDL mit IEEE Standard 62530-2011: System Verilog - Unified Hardware Design, Specification, and Verification Language, datiert mit 7. Juli 2011; IEEE Std 1800™-2012: IEEE Standard for SystemVerilog-Unified Hardware Design, Specification, and Verification Language, veröffentlicht am 21. Februar 2013; IEEE Standard 1364-2005: IEEE Standard for Verilog Hardware Description Language, datiert mit 18. April 2006 und/oder anderen Versionen von Verilog-HDL und/oder System-Verilog-Standards konform oder kompatibel sein.
  • Beispiele
  • Beispiele der vorliegenden Offenbarung enthalten einen Gegenstand wie ein Verfahren, Mittel zum Ausführen von Handlungen des Verfahrens, eine Vorrichtung oder ein Gerät oder System in Bezug auf ein Sicherheitssystem für elektronische Ausrüstung, wie unten besprochen.
  • Beispiel 1. Gemäß diesem Beispiel ist eine Elektroniksteuereinheit (ECU) für ein Fahrzeug bereitgestellt. Die ECU enthält Sendeempfängerschaltung, Spannungsmessungsschaltung und Merkmalsatzschaltung. Die Sendeempfängerschaltung dient mindestens zu einem von Senden und/oder Empfangen einer Nachricht. Die Spannungsmessungsschaltung dient dazu, mindestens eines eines hohen Busleitungsspannungs(VCANH)-Werts und/oder eines niedrigen Busleitungsspannungs(VCANL)-Werts für jedes Null-Bit mindestens eines Null-Bits einer empfangenen Nachricht zu ermitteln. Die empfangene Nachricht enthält mehrere Bits. Die Merkmalsatzschaltung dient dazu, einen Wert mindestens eines Merkmals eines Merkmalsatzes basierend mindestens teilweise auf mindestens eines einer hohen Bestätigungs(ACK)-Schwellenspannung (VthH) und/oder einer niedrigen ACK-Schwellenspannung (VthL) zu ermitteln. Der Merkmalsatz enthält mindestens einen von einem betriebenen meistfrequentiert gemessenen VCANH Wert (VfreqH2) einer Zahl von VCANH Werten und/oder einen betriebenen am häufigsten gemessenen VCANL Wert (VfreqL2) einer Zahl von VCANL Werten.
  • Beispiel 2. Dieses Beispiel enthält die Elemente von Beispiel 1, ferner enthaltend ACK-Schwellenschaltung, um mindestens eine der VthH und/oder VthL zu ermitteln, wobei die VthH basierend mindestens teilweise auf einem am häufigsten gemessenen VCANH Wert (VfreqH1) ermittelt wird und die VthL basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANL Wert (VfreqL1) ermittelt wird. Beispiel 3. Dieses Beispiel enthält die Elemente von Beispiel 1, ferner enthaltend Klassiererschaltung, um eine übertragende ECU, die die empfangene Nachricht übertragen hat, mindestens teilweise auf dem Satz von Merkmalwerten zu identifizieren.
  • Beispiel 4. Dieses Beispiel enthält die Elemente von Beispiel 3, ferner enthaltend Signaturschaltung, um zu ermitteln, ob die empfangene Nachricht durch die identifizierte übertragende ECU legitim übertragen wurde oder nicht.
  • Beispiel 5. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 1 bis 3, wobei der Merkmalsatz VthH und/oder VthL enthält und VthH einem Anfangswert der hohen ACK-Schwellenspannung oder einem angepassten Wert der hohen ACK-Schwellenspannung entspricht und VthL einem Anfangswert der niedrigen ACK-Schwellenspannung oder einem angepassten Wert der niedrigen ACK-Schwellenspannung entspricht. Beispiel 6. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 1 bis 3, wobei die Merkmalsatzschaltung ferner dazu dient, mindestens eine von einer ersten Wahrscheinlichkeit (PoutH), dass ein unlängst erfasster VCANH Wert größer als VthH ist, und/oder einer zweiten Wahrscheinlichkeit, dass ein unlängst erfasster VCANL Wert kleiner als VthL ist, zu ermitteln.
  • Beispiel 7. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 1 bis 3, wobei der Merkmalsatz ferner einen oder mehr von einem maximalen gemessenen VCANH Wert (VCANHmax) und/oder einem minimalen gemessenen VCANL Wert (VCANLmin) enthält.
  • Beispiel 8. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 1 bis 3, wobei der Merkmalsatz ferner einen gleitenden Durchschnitt von VfreqH2 und einen gleitenden Durchschnitt von VthH und/oder einen gleitenden Durchschnitt von VfreqL2 und einen gleitenden Durchschnitt von VthL enthält.
  • Beispiel 9. Dieses Beispiel enthält die Elemente von Beispiel 6, wobei die Merkmalsatzschaltung ferner dazu dient, mindestens VthH basierend mindestens teilweise auf PoutH anzupassen und/oder VthL basierend mindestens teilweise auf PoutL anzupassen. Beispiel 10. Dieses Beispiel enthält die Elemente nach einem der Ansprüche 1 bis 3, ferner enthaltend einen Kennungs-Mapspeicher, um mehrere legitime ECU-Kennungen (IDs) und mehrere Nachricht-IDs zu speichern, wobei jede legitime ECU-ID mit einem einzigartigen Teilsatz der mehreren Nachricht-IDs verknüpft ist.
  • Beispiel 11. Gemäß diesem Beispiel ist ein Sicherheitsverfahren bereitgestellt. Das Verfahren enthält mindestens eines von Senden und/oder Empfangen einer Nachricht durch Sendeempfängerschaltung einer Elektroniksteuereinheit (ECU) für ein Fahrzeug. Das Verfahren enthält ferner Ermitteln, durch Spannungsmessungsschaltung der ECU, mindestens eines von einem hohen Busleitungsspannungs(VCANH)-Wert und/oder einem niedrigen Busleitungsspannungs(VCANL)-Wert für jedes Null-Bit von mindestens einem Null-Bit einer empfangenen Nachricht. Die empfangene Nachricht enthält mehrere Bits. Das Verfahren enthält ferner Ermitteln, durch Merkmalsatzschaltung der ECU, eines Werts mindestens eines Merkmals eines Merkmalsatzes, basierend mindestens teilweise auf mindestens einer von einer hohen Bestätigungs(ACK)-Schwellenspannung (VthH) und/oder einer niedrigen ACK-Schwellenspannung (VthL). Der Merkmalsatz enthält mindestens einen von einem betriebenen am häufigsten gemessenen hohen Busleitungsspannungswert (VfreqH2) einer Zahl von VCANH Werten und/oder einem betriebenen meistfrequentierten VCANL Wert (VfreqL2) einer Zahl von VCANL Werten.
  • Beispiel 12. Dieses Beispiel enthält die Elemente von Beispiel 11, ferner enthaltend Ermitteln, durch ACK-Schwellenschaltung der ECU, mindestens einer der VthH und/oder der VthL, wobei die VthH basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANH Wert (VfreqH1) ermittelt wird und die VthL basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANL Wert (VfreqL1) ermittelt wird.
  • Beispiel 13. Dieses Beispiel enthält die Elemente von Beispiel 11, ferner enthaltend Identifizieren, durch Klassiererschaltung der ECU, einer übertragenden ECU, die die empfangene Nachricht übertragen hat, basierend mindestens teilweise auf dem Satz von Merkmalwerten.
  • Beispiel 14. Dieses Beispiel enthält die Elemente von Beispiel 13, ferner enthaltend Ermitteln, durch Signaturschaltung der ECU, ob die empfangene Nachricht legitim von der identifizierten übertragenden ECU übertragen wurde oder nicht.
  • Beispiel 15. Dieses Beispiel enthält die Elemente von Beispiel 11, wobei der Merkmalsatz VthH und/oder VthL enthält und VthH einem Anfangswert der hohen ACK-Schwellenspannung oder einem angepassten Wert der hohen ACK-Schwellenspannung entspricht und VthL einem Anfangswert der niedrigen ACK-Schwellenspannung oder einem angepassten Wert der niedrigen ACK-Schwellenspannung entspricht. Beispiel 16. Dieses Beispiel enthält die Elemente von Beispiel 11, ferner enthaltend Ermitteln, durch die Merkmalsatzschaltung, mindestens einer von einer ersten Wahrscheinlichkeit (PoutH), dass ein unlängst erfasster VCANH Wert größer als VthH ist und/oder einer zweiten Wahrscheinlichkeit (PoutL), dass ein unlängst erfasster VCANL Wert kleiner als VthL ist.
  • Beispiel 17. Dieses Beispiel enthält die Elemente von Beispiel 11, wobei der Merkmalsatz ferner einen oder mehr eines maximalen gemessenen VCANH Werts (VCANHmax) und/oder eines minimalen gemessenen VCANL Werts (VCANLmin) enthält.
  • Beispiel 18. Dieses Beispiel enthält die Elemente von Beispiel 11, wobei der Merkmalsatz ferner einen gleitenden Durchschnitt von VfreqH2 und einen gleitenden Durchschnitt von VthH und/oder einen gleitenden Durchschnitt von VfreqL2 und einen gleitenden Durchschnitt von VthL enthält.
  • Beispiel 19. Dieses Beispiel enthält die Elemente von Beispiel 16, ferner enthaltend Anpassen, durch die Merkmalsatzschaltung, mindestens einer von VthH, basierend mindestens teilweise auf PoutH und/oder VthL, basierend mindestens teilweise auf PoutL. Beispiel 20. Dieses Beispiel enthält die Elemente von Beispiel 11, ferner enthaltend Speichern, durch einen Kennungs-Mapspeicher, mehrerer legitimer ECU-Kennungen (IDs) und mehrerer Nachricht-IDs, wobei jede legitime ECU-ID mit einem einzigartigen Teilsatz der mehreren Nachricht-IDs verknüpft ist.
  • Beispiel 21. Dieses Beispiel enthält die Elemente von Beispiel 11, ferner enthaltend Koppeln, durch einen Kommunikationsbus, mehrerer ECUs.
  • Beispiel 22. Dieses Beispiel enthält die Elemente von Beispiel 21, wobei der Kommunikationsbus mit einem Steuerungsflächennetzwerk(CAN)-Busprotokoll konform geht oder kompatibel ist.
  • Beispiel 23. Gemäß diesem Beispiel ist ein Fahrzeugsystem bereitgestellt. Das Fahrzeugsystem enthält mehrere Elektroniksteuereinheiten (ECUs); und einen Kommunikationsbus, um die mehreren ECUs zu koppeln. Jede ECU enthält Sendeempfängerschaltung, um eine Nachricht mindestens zu senden und/oder zu empfangen. Zumindest eine ECU enthält Spannungsmessungsschaltung und Merkmalsatzschaltung. Die Spannungsmessungsschaltung dient dazu, mindestens einen von einem hohen Busleitungsspannungs(VCANH)-Wert und/oder einem niedrigen Busleitungsspannungs(VCANL)-Wert für jedes Null-Bit von mindestens einem Null-Bit einer empfangenen Nachricht zu ermitteln. Die empfangene Nachricht enthält mehrere Bits. Die Merkmalsatzschaltung dient dazu, einen Wert von mindestens einem Merkmal eines Merkmalsatzes basierend mindestens teilweise auf mindestens einer von einer hohen Bestätigungs(ACK)-Schwellenspannung (VthH) und/oder einer niedrigen ACK-Schwellenspannung (VthL) zu ermitteln. Der Merkmalsatz enthält mindestens einen von einem betriebenen am häufigsten gemessenen VCANH-Wert (VfreqH2) einer Zahl von VCANH Werten und/oder einem betriebenen meistfrequentierten VCANL Wert (VfreqL2) einer Zahl von VCANL Werten.
  • Beispiel 24. Dieses Beispiel enthält die Elemente von Beispiel 23, wobei die mindestens eine ECU ferner ACK-Schwellenschaltung enthält, um mindestens eine der VthH und/oder der VthL zu ermitteln, wobei die VthH basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANH Wert (VfreqH1) und die VthL basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANL Wert (VfreqL1) ermittelt wird.
  • Beispiel 25. Dieses Beispiel enthält die Elemente von Beispiel 23, wobei die mindestens eine ECU ferner Klassiererschaltung enthält, um eine übertragende ECU, die die empfangene Nachricht übertragen hat, basierend mindestens teilweise auf dem Satz von Merkmalwerten zu identifizieren.
  • Beispiel 26. Dieses Beispiel enthält die Elemente von Beispiel 25, wobei die mindestens eine ECU ferner Signaturschaltung zum Ermitteln enthält, ob die empfangene Nachricht legitim von der identifizierten übertragenden ECU übertragen wurde oder nicht. Beispiel 27. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 23 bis 25, wobei der Merkmalsatz VthH und/oder VthL enthält und VthH einem Anfangswert der hohen ACK-Schwellenspannung oder einem angepassten Wert der hohen ACK-Schwellenspannung entspricht und VthL einem Anfangswert der niedrigen ACK-Schwellenspannung oder einem angepassten Wert der niedrigen ACK-Schwellenspannung entspricht. Beispiel 28. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 23 bis 25, wobei die Merkmalsatzschaltung ferner dazu dient, mindestens eine von einer ersten Wahrscheinlichkeit (PoutH), dass ein unlängst erfasster VCANH Wert größer als VthH ist, und/oder einer zweiten Wahrscheinlichkeit, dass ein unlängst erfasster VCANL Wert kleiner als VthL ist, zu ermitteln.
  • Beispiel 29. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 23 bis 25, wobei der Merkmalsatz ferner einen oder mehr von einem maximalen gemessenen VCANH Wert (VCANHmax) und/oder einem minimalen gemessenen VCANL Wert (VCANLmin) enthält.
  • Beispiel 30. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 23 bis 25, wobei der Merkmalsatz ferner einen gleitenden Durchschnitt von VfreqH2 und einen gleitenden Durchschnitt von VthH und/oder einen gleitenden Durchschnitt von VfreqL2 und einen gleitenden Durchschnitt von VthL enthält.
  • Beispiel 31. Dieses Beispiel enthält die Elemente von Beispiel 28, wobei die Merkmalsatzschaltung ferner zu mindestens einem davon dient, VthH basierend mindestens teilweise auf PoutH anzupassen und/oder VthL basierend mindestens teilweise auf PoutL anzupassen.
  • Beispiel 32. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 23 bis 25, wobei die mindestens eine ECU ferner einen Kennungs-Mapspeicher enthält, um mehrere legitime ECU-Kennungen (IDs) und mehrere Nachricht-IDs zu speichern, wobei jede legitime ECU-ID mit einem einzigartigen Teilsatz der mehreren Nachricht-IDs verknüpft ist. Beispiel 33. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 23 bis 25, wobei der Kommunikationsbus mit einem Steuerungsflächennetzwerk(CAN)-Busprotokoll konform geht oder kompatibel ist.
  • Beispiel 34. Gemäß diesem Beispiel ist eine computerlesbare Datenspeichervorrichtung bereitgestellt. Die computerlesbare Datenspeichervorrichtung hat Befehle darauf gespeichert, die, wenn von einem oder mehr Prozessoren durchgeführt, darin resultieren, dass die folgenden Betriebe enthalten: mindestens eines von Senden und/oder Empfangen einer Nachricht; Ermitteln mindestens eines von einem hohen Busleitungsspannungs(VCANH)-Wert und/oder einem niedrigen Busleitungsspannungs(VCANL)-Wert für jedes Null-Bit von mindestens einem Null-Bit einer empfangenen Nachricht, wobei die empfangene Nachricht mehrere Bits enthält; und Ermitteln eines Werts von mindestens einem Merkmal eines Merkmalsatzes, basierend mindestens teilweise auf mindestens einer von einer hohen Bestätigungs(ACK)-Schwellenspannung (VthH) und/oder einer niedrigen ACK-Schwellenspannung (VthL), wobei der Merkmalsatz mindestens einen von einem betriebenen am häufigsten gemessenen hohen Busleitungsspannungswert (VfreqH2) einer Zahl von VCANH Werten und/oder einem betriebenen am häufigsten gemessenen VCANL Wert (VfreqL2) einer Zahl von VCANL Werten enthält.
  • Beispiel 35. Dieses Beispiel enthält die Elemente von Beispiel 34, wobei die Befehle, die, wenn von einem oder mehr Prozessoren durchgeführt, in den folgenden zusätzlichen Betrieben resultieren, enthaltend Ermitteln mindestens einer der VthH und/oder der VthL, wobei die VthH basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANH Wert (VfreqH1) ermittelt wird und die VthL basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANL Wert (VfreqL1) ermittelt wird.
  • Beispiel 36. Dieses Beispiel enthält die Elemente von Beispiel 34, wobei die Befehle, die, wenn von einem oder mehr Prozessoren durchgeführt, in den folgenden zusätzlichen Betrieben resultieren, enthaltend Identifizieren einer übertragenden ECU, die die empfangene Nachricht übertragen hat, basierend mindestens teilweise auf dem Satz an Merkmalwerten. Beispiel 37. Dieses Beispiel enthält die Elemente von Beispiel 36, wobei die Befehle, die, wenn von einem oder mehr Prozessoren durchgeführt, in den folgenden zusätzlichen Betrieben resultieren, enthaltend Ermitteln, ob die empfangene Nachricht legitim von der identifizierten übertragenden ECU übertragen wurde.
  • Beispiel 38. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 34 bis 36, wobei der Merkmalsatz VthH und/oder VthL enthält und VthH einem Anfangswert der hohen ACK-Schwellenspannung oder einem angepassten Wert der hohen ACK-Schwellenspannung entspricht und VthL einem Anfangswert der niedrigen ACK-Schwellenspannung oder einem angepassten Wert der niedrigen ACK-Schwellenspannung entspricht.
  • Beispiel 39. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 34 bis 36, wobei die Befehle, die, wenn von einem oder mehr Prozessoren durchgeführt, in den folgenden zusätzlichen Betrieben resultieren, enthaltend Ermitteln, durch die Merkmalsatzschaltung, mindestens einer von einer ersten Wahrscheinlichkeit (PoutH), dass ein unlängst erfasster VCANH Wert größer als VthH ist und/oder einer zweiten Wahrscheinlichkeit (PoutL), dass ein unlängst erfasster VCANL Wert kleiner als VthL ist.
  • Beispiel 40. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 34 bis 36, wobei der Merkmalsatz ferner einen oder mehr von einem maximalen gemessenen VCANH Wert (VCANHmax) und/oder einem minimalen gemessenen VCANL Wert (VCANLmin) enthält.
  • Beispiel 41. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 34 bis 36, wobei der Merkmalsatz ferner einen gleitenden Durchschnitt von VfreqH2 und einen gleitenden Durchschnitt von VthH und/oder einen gleitenden Durchschnitt von VfreqL2 und einen gleitenden Durchschnitt von VthL enthält.
  • Beispiel 42. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 34 bis 36, wobei die Befehle, die, wenn von einem oder mehr Prozessoren durchgeführt, in den folgenden zusätzlichen Betrieben resultieren, enthaltend Anpassen mindestens einer von VthH, basierend mindestens teilweise auf PoutH, und/oder VthL, basierend mindestens teilweise auf PoutL.
  • Beispiel 43. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 34 bis 36, wobei die Befehle, die, wenn von einem oder mehr Prozessoren durchgeführt, in den folgenden zusätzlichen Betrieben resultieren, enthaltend Speichern mehrerer legitimer ECU-Kennungen (IDs) und mehrerer Nachricht-IDs, wobei jede legitime ECU-ID mit einem einzigartigen Teilsatz der mehreren Nachricht-IDs verknüpft ist.
  • Beispiel 44. Gemäß diesem Beispiel ist eine Sicherheitsvorrichtung bereitgestellt. Die Vorrichtung enthält mindestens eines von Mitteln zum Senden und/oder Mitteln zum Empfangen einer Nachricht durch eine Sendeempfängerschaltung einer Elektroniksteuereinheit (ECU) für ein Fahrzeug. Die Vorrichtung enthält ferner Mittel zum Ermitteln, durch eine Spannungsmessungsschaltung der ECU, mindestens eines von einem hohen Busleitungsspannungs(VCANH)-Wert und/oder eines niedrigen Busleitungsspannungs(VCANL)-Wert für jedes Null-Bit von mindestens einem Null-Bit einer empfangenen Nachricht, wobei die empfangene Nachricht mehrere Bits enthält. Die Vorrichtung enthält ferner Mittel zum Ermitteln, durch Merkmalsatzschaltung der ECU, eines Werts von mindestens einem Merkmal eines Merkmalsatzes, basierend mindestens teilweise auf mindestens einer von einer hohen Bestätigungs(ACK)-Schwellenspannung (VthH) und/oder einer niedrigen ACK-Schwellenspannung (VthL), wobei der Merkmalsatz mindestens einen von einem betriebenen am häufigsten gemessenen hohen Busleitungsspannungswert (VfreqH2) einer Zahl von VCANH Werten und/oder einem betriebenen am häufigsten gemessenen VCANL Wert (VfreqL2) einer Zahl von VCANL Werten enthält.
  • Beispiel 45. Dieses Beispiel enthält die Elemente von Beispiel 44, ferner enthaltend Mittel zum Ermitteln, durch ACK-Schwellenschaltung der ECU, mindestens einer der VthH und/oder der VthL, wobei die VthH basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANH Wert (VfreqH1) ermittelt wird und die VthL basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANL Wert (VfreqL1) ermittelt wird.
  • Beispiel 46. Dieses Beispiel enthält die Elemente von Beispiel 44, ferner enthaltend Mittel zum Identifizieren, durch Klassiererschaltung der ECU, einer übertragenden ECU, die die empfangene Nachricht übertragen hat, basierend mindestens teilweise auf dem Satz von Merkmalwerten.
  • Beispiel 47. Dieses Beispiel enthält die Elemente von Beispiel 46, ferner enthaltend Mittel zum Ermitteln, durch Signaturschaltung der ECU, ob die empfangene Nachricht legitim von der identifizierten übertragenden ECU übertragen wurde oder nicht.
  • Beispiel 48. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 44 bis 46, wobei der Merkmalsatz VthH und/oder VthL enthält und VthH einem Anfangswert der hohen ACK-Schwellenspannung oder einem angepassten Wert der hohen ACK-Schwellenspannung entspricht und VthL einem Anfangswert der niedrigen ACK-Schwellenspannung oder einem angepassten Wert der niedrigen ACK-Schwellenspannung entspricht.
  • Beispiel 49. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 44 bis 46, ferner enthaltend Mittel zum Ermitteln, durch die Merkmalsatzschaltung, mindestens einer von einer ersten Wahrscheinlichkeit (PoutH), dass ein unlängst erfasster VCANH Wert größer als VthH ist und/oder einer zweiten Wahrscheinlichkeit (PoutL), dass ein unlängst erfasster VCANL Wert kleiner als VthL ist.
  • Beispiel 50. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 44 bis 46, wobei der Merkmalsatz ferner einen oder mehr von einem maximalen gemessenen VCANH Wert (VCANHmax) und/oder einem minimalen gemessenen VCANL Wert (VCANLmin) enthält.
  • Beispiel 51. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 44 bis 46, wobei der Merkmalsatz ferner einen gleitenden Durchschnitt von VfreqH2 und einen gleitenden Durchschnitt von VthH und/oder einen gleitenden Durchschnitt von VfreqL2 und einen gleitenden Durchschnitt von VthL enthält.
  • Beispiel 52. Dieses Beispiel enthält die Elemente von Beispiel 49, ferner enthaltend Mittel zum Anpassen, durch die Merkmalsatzschaltung, mindestens einer von VthH, basierend mindestens auf PoutH und/oder VthL, basierend mindestens teilweise auf PoutL.
  • Beispiel 53. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 44 bis 46, ferner enthaltend Mittel zum Speichern, durch einen Kennungs-Mapspeicher, mehrerer legitimer ECU-Kennungen (IDs) und mehrerer Nachricht-IDs, wobei jede legitime ECU-ID mit einem einzigartigen Teilsatz mehrerer Nachricht-IDs verknüpft ist.
  • Beispiel 54. Dieses Beispiel enthält die Elemente gemäß einem der Beispiele 44 bis 46, ferner enthaltend Mittel zum Koppeln, durch einen Kommunikationsbus, mehrerer ECUs.
  • Beispiel 55. Dieses Beispiel enthält die Elemente von Beispiel 54, wobei der Kommunikationsbus mit einem Steuerungsflächennetzwerk(CAN)-Busprotokoll konform geht oder kompatibel ist.
  • Beispiel 56. Gemäß diesem Beispiel ist ein Sicherheitssystem bereitgestellt. Das System enthält mindestens eine Vorrichtung, die angeordnet ist, das Verfahren von einem der Beispiele 11 bis 22 auszuführen.
  • Beispiel 57. Gemäß diesem Beispiel ist eine Sicherheitsvorrichtung bereitgestellt. Die Vorrichtung enthält Mittel zum Ausführen des Verfahrens von einem der Beispiele 11 bis 22.
  • Beispiel 58. Gemäß diesem Beispiel ist eine computerlesbare Datenspeichervorrichtung bereitgestellt. Die Vorrichtung hat Befehle darauf gespeichert, die, wenn von einem oder mehr Prozessoren durchgeführt, in den folgenden Betrieben resultieren, enthaltend: das Verfahren gemäß einem der Beispiele 11 bis 22.
  • 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 Nicht-Patentliteratur
    • ISO 11898-2:2016 [0079]
    • ISO 11898-3:2006 [0079]
    • ISO 11898-4:2004 [0079]
    • ISO 11898-5:2007 [0079]
    • ISO 11898-6:2013 [0079]

Claims (25)

  1. Elektroniksteuereinheit (Electronic Control Unit, ECU) für ein Fahrzeug, die ECU umfassend: eine Sendeempfängerschaltung für mindestens eines von Senden und/oder Empfangen einer Nachricht; eine Spannungsmessungsschaltung, um mindestens eines von einem hohen Busleitungsspannungs- (VCANH) Wert und/oder einer niedrigen Busleitungsspannungs-(VCANL) Wert für jedes Null-Bit mindestens eines Null-Bits einer empfangenen Nachricht zu ermitteln, wobei die empfangene Nachricht mehrere Bits umfasst; und eine Merkmalsatzschaltung, um einen Wert mindestens eines Merkmals eines Merkmalsatzes basierend mindestens teilweise auf mindestens einer von einer hohen Bestätigungs- (ACK) Schwellenspannung (VthH) und/oder einer niedrigen ACK-Schwellenspannung (VthL) zu ermitteln, der Merkmalsatz umfassend mindestens einen von einem betriebenen am häufigsten gemessenen VCANH Wert (VfreqH2) einer Zahl von VCANH Werten und/oder einem betriebenen am häufigsten gemessenen VCANL Wert (VfreqL2) einer Zahl von VCANL Werten.
  2. ECU nach Anspruch 1, ferner umfassend eine ACK-Schwellenschaltung, um mindestens eine der VthH und/oder der VthL zu ermitteln, wobei die VthH basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANH Wert (VfreqH1) ermittelt ist und die VthL basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANL Wert (VfreqL1) ermittelt ist.
  3. ECU nach Anspruch 1, ferner umfassend eine Klassiererschaltung, um eine übertragende ECU zu identifizieren, die die empfangene Nachricht übertragen hat, basierend mindestens teilweise auf dem Satz von Merkmalwerten.
  4. ECU nach Anspruch 3, ferner umfassend eine Signaturschaltung, um zu ermitteln, ob die empfangene Nachricht legitim von der identifizierten übertragenden ECU übertragen wurde oder nicht.
  5. ECU nach einem der Ansprüche 1 bis 3, wobei der Merkmalsatz VthH und/oder VthL umfasst und VthH einem Anfangswert der hohen ACK-Schwellenspannung oder einem angepassten Wert der hohen ACK-Schwellenspannung entspricht und VthL einem Anfangswert der niedrigen ACK-Schwellenspannung oder einem angepassten Wert der niedrigen ACK-Schwellenspannung entspricht.
  6. ECU nach einem der Ansprüche 1 bis 3, wobei die Merkmalsatzschaltung ferner dazu dient, mindestens eine einer ersten Wahrscheinlichkeit (PoutH), dass ein unlängst erfasster VCANH Wert größer als VthH ist, und/oder einer zweiten Wahrscheinlichkeit (PoutL), dass ein unlängst erfasster VCANL Wert kleiner als VthL ist, zu ermitteln.
  7. ECU nach einem der Ansprüche 1 bis 3, wobei der Merkmalsatz ferner einen gleitenden Durchschnitt von VfreqH2 und einen gleitenden Durchschnitt von VthH und/oder einen gleitenden Durchschnitt von VfreqL2 und einen gleitenden Durchschnitt von VthL umfasst.
  8. Sicherheitsverfahren, umfassend: mindestens eines von Senden und/oder Empfangen einer Nachricht, durch eine Sendeempfängerschaltung einer Elektroniksteuereinheit (ECU) für ein Fahrzeug; Ermitteln, durch eine Spannungsmessungsschaltung der ECU, mindestens eines von einem hohen Busleitungsspannungs(VCANH)-Wert und/oder einem niedrigen Busleitungsspannungs- (VCANL) Wert für jedes Null-Bit von mindestens einem Null-Bit einer empfangenen Nachricht, wobei die empfangene Nachricht mehrere Bits umfasst; und Ermitteln, durch eine Merkmalsatzschaltung der ECU, eines Werts von mindestens einem Merkmal eines Merkmalsatzes, basierend mindestens teilweise auf mindestens einer von einer hohen Bestätigungs- (Acknowledge, ACK) Schwellenspannung (VthH) und/oder einer niedrigen ACK-Schwellenspannung (VthL), wobei der Merkmalsatz mindestens einen von einem betriebenen am häufigsten gemessenen VCANH Wert (VfreqH2) einer Zahl von VCANH Werten und/oder einem betriebenen am häufigsten gemessenen VCANL Wert (VfreqL2) einer Zahl von VCANL Werten umfasst.
  9. Verfahren nach Anspruch 8, ferner umfassend Ermitteln, durch eine ACK-Schwellenschaltung der ECU, mindestens einer der VthH und/oder der VthL, wobei die VthH basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANH Wert (VfreqH1) ermittelt ist und die VthL basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANL Wert (VfreqL1) ermittelt ist.
  10. Das Verfahren nach Anspruch 8, ferner umfassend Identifizieren, durch eine Klassiererschaltung der ECU, einer übertragenden ECU, die die empfangene Nachricht übertragen hat, basierend mindestens teilweise auf dem Satz von Merkmalwerten.
  11. Verfahren nach Anspruch 10, ferner umfassend Ermitteln, durch eine Signaturschaltung der ECU, ob die empfangene Nachricht legitim von der identifizierten übertragenden ECU übertragen wurde oder nicht.
  12. Verfahren nach Anspruch 8, wobei der Merkmalsatz VthH und/oder VthL umfasst und VthH einem Anfangswert der hohen ACK-Schwellenspannung oder einem angepassten Wert der hohen ACK-Schwellenspannung entspricht und VthL einem Anfangswert der niedrigen ACK-Schwellenspannung oder einem angepassten Wert der niedrigen ACK-Schwellenspannung entspricht.
  13. Verfahren nach Anspruch 8, ferner umfassend Ermitteln, durch die Merkmalsatzschaltung, mindestens einer von einer ersten Wahrscheinlichkeit (PoutH), dass ein unlängst erfasster VCANH Wert größer als VthH ist, und/oder einer zweiten Wahrscheinlichkeit (PoutL), dass ein unlängst erfasster VCANL Wert kleiner als VthL ist.
  14. Verfahren nach Anspruch 8, wobei der Merkmalsatz ferner einen gleitenden Durchschnitt von VfreqH2 und einen gleitenden Durchschnitt von VthH und/oder einen gleitenden Durchschnitt von VfreqL2 und einen gleitenden Durchschnitt von VthL umfasst.
  15. Fahrzeugsystem, umfassend: mehrere Elektroniksteuereinheiten (ECUs); und einen Kommunikationsbus, um die mehreren ECUs zu koppeln, wobei jede ECU eine Sendeempfängerschaltung für mindestens eines von Senden und/oder Empfangen einer Nachricht umfasst, und mindestens eine ECU, umfassend: eine Spannungsmessungsschaltung, um mindestens einen von einem hohen Busleitungsspannungs(VCANH)-Wert und/oder einem niedrigen Busleitungsspannungs(VCANL)-Wert für jedes Null-Bit von mindestens einem Null-Bit einer empfangenen Nachricht zu ermitteln, die empfangene Nachricht mehrere Bits umfassend; und eine Merkmalsatzschaltung, um einen Wert von mindestens einem Merkmal eines Merkmalsatzes basierend mindestens teilweise auf mindestens einer von einer hohen Bestätigungs- (ACK) Schwellenspannung (VthH) und/oder einer niedrigen ACK-Schwellenspannung (VthL) zu ermitteln, wobei der Merkmalsatz mindestens einen von einem betriebenen am häufigsten gemessenen VCANH Wert (VfreqH2) einer Zahl von VCANH Werten und/oder einem betriebenen am häufigsten gemessenen VCANL Wert (VfreqL2) einer Zahl von VCANL Werten umfasst.
  16. Fahrzeugsystem nach Anspruch 15, wobei die mindestens eine ECU ferner eine ACK-Schwellenschaltung umfasst, um mindestens eine der VthH und/oder der VthL zu ermitteln, wobei die VthH basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANH Wert (VfreqH1) ermittelt ist und die VthL basierend mindestens teilweise auf einem anfänglichen am häufigsten gemessenen VCANL Wert (VfreqL1) ermittelt ist.
  17. Fahrzeugsystem nach Anspruch 15, wobei die mindestens eine ECU ferner eine Klassiererschaltung umfasst, um eine übertragende ECU zu identifizieren, die die empfangene Nachricht übertragen hat, basierend mindestens teilweise auf dem Satz von Merkmalwerten.
  18. Fahrzeugsystem nach Anspruch 17, wobei die mindestens eine ECU ferner eine Signaturschaltung umfasst, um zu ermitteln, ob die empfangene Nachricht legitim von der identifizierten übertragenden ECU übertragen wurde oder nicht.
  19. Fahrzeugsystem nach einem der Ansprüche 15 oder 17, wobei der Merkmalsatz VthH und/oder VthL umfasst und VthH einem Anfangswert der hohen ACK-Schwellenspannung oder einem angepassten Wert der hohen ACK-Schwellenspannung entspricht und VthL einem Anfangswert der niedrigen ACK-Schwellenspannung oder einem angepassten Wert der niedrigen ACK-Schwellenspannung entspricht.
  20. Fahrzeugsystem nach einem der Ansprüche 15 oder 17, wobei die Merkmalsatzschaltung ferner dazu dient, mindestens eine einer ersten Wahrscheinlichkeit (PoutH), dass ein unlängst erfasster VCANH Wert größer als VthH ist, und/oder einer zweiten Wahrscheinlichkeit (PoutL), dass ein unlängst erfasster VCANL Wert kleiner als VthL ist, zu ermitteln.
  21. Fahrzeugsystem nach einem der Ansprüche 15 oder 17, wobei der Merkmalsatz ferner einen gleitenden Durchschnitt von VfreqH2 und einen gleitenden Durchschnitt von VthH und/oder einen gleitenden Durchschnitt von VfreqL2 und einen gleitenden Durchschnitt von VthL umfasst.
  22. Fahrzeugsystem nach einem der Ansprüche 15 oder 17, wobei der Kommunikationsbus mit einem Steuerungsflächennetzwerk(CAN)-Busprotokoll konform geht und/oder kompatibel ist.
  23. Sicherheitssystem, umfassend mindestens eine Vorrichtung, die angeordnet ist, das Verfahren nach einem der Ansprüche 8 bis 14 auszuführen.
  24. Sicherheitsvorrichtung, umfassend Mittel zum Ausführen des Verfahrens nach einem der Ansprüche 8 bis 14.
  25. Computerlesbare Datenspeichervorrichtung mit darauf gespeicherten Befehlen, die, wenn von einem oder mehreren Prozessoren durchgeführt, in den folgenden Betrieben resultieren, umfassend: das Verfahren nach einem der Ansprüche 8 bis 14.
DE112017004873.7T 2016-09-28 2017-08-28 Sicherheitssystem für elektronikausrüstung Pending DE112017004873T5 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662401145P 2016-09-28 2016-09-28
US62/401,145 2016-09-28
US15/450,650 US10581906B2 (en) 2016-09-28 2017-03-06 Security system for electronic equipment
US15/450,650 2017-03-06
PCT/US2017/048927 WO2018063643A1 (en) 2016-09-28 2017-08-28 Security system for electronic equipment

Publications (1)

Publication Number Publication Date
DE112017004873T5 true DE112017004873T5 (de) 2019-06-27

Family

ID=61685860

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112017004873.7T Pending DE112017004873T5 (de) 2016-09-28 2017-08-28 Sicherheitssystem für elektronikausrüstung

Country Status (4)

Country Link
US (2) US10581906B2 (de)
JP (2) JP7028859B2 (de)
DE (1) DE112017004873T5 (de)
WO (1) WO2018063643A1 (de)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108337228B (zh) * 2017-01-13 2020-11-10 株式会社自动网络技术研究所 车载装置、中继装置以及介质
US10757113B2 (en) * 2017-03-17 2020-08-25 Cylance Inc. Communications bus signal fingerprinting
US10462155B2 (en) * 2017-03-17 2019-10-29 Cylance Inc. Electronic control unit protection framework using security zones
US10275615B2 (en) 2017-03-17 2019-04-30 Cylance Inc. Communications bus data transmission using relative ground shifting
US10800363B2 (en) * 2017-09-18 2020-10-13 GM Global Technology Operations LLC Analog-to-digital fault detection, isolation, and mitigation for a low-voltage communications network
WO2019207917A1 (ja) * 2018-04-23 2019-10-31 日立オートモティブシステムズ株式会社 ゲートウェイ装置
JP7042415B2 (ja) * 2018-05-21 2022-03-28 株式会社オートネットワーク技術研究所 車載通信システム、判定装置、判定方法及びコンピュータプログラム
US11093599B2 (en) * 2018-06-28 2021-08-17 International Business Machines Corporation Tamper mitigation scheme for locally powered smart devices
US11354406B2 (en) * 2018-06-28 2022-06-07 Intel Corporation Physics-based approach for attack detection and localization in closed-loop controls for autonomous vehicles
US11048828B2 (en) 2018-07-24 2021-06-29 Enigmatos Ltd. Message source detection in a vehicle bus system
DE102018215978A1 (de) * 2018-09-19 2020-03-19 Audi Ag Integrierter Schaltkreis und Kraftfahrzeug
US11700270B2 (en) * 2019-02-19 2023-07-11 The Aerospace Corporation Systems and methods for detecting a communication anomaly
CN112298070A (zh) * 2019-07-26 2021-02-02 华为技术有限公司 踏板故障诊断方法及装置
US11194008B2 (en) * 2019-10-25 2021-12-07 Toyota Motor Engineering And Manufacturing North America, Inc. Triangulation and calibration of electronic control units
US11423145B2 (en) * 2019-12-26 2022-08-23 Intel Corporation Methods and arrangements for multi-layer in-vehicle network intrusion detection and characterization
GB2592967A (en) * 2020-03-12 2021-09-15 Warwick Control Tech Ltd A method for monitoring a network
CN112078518A (zh) * 2020-09-08 2020-12-15 中国联合网络通信集团有限公司 整车控制系统
IT202100013754A1 (it) * 2021-05-26 2022-11-26 Marelli Europe Spa "Procedimento di protezione da attacchi informatici al veicolo e corrispondente dispositivo"
EP4096168A1 (de) * 2021-05-26 2022-11-30 Marelli Europe S.p.A. Verfahren zum schutz vor cyberangriffen auf ein fahrzeug und entsprechende vorrichtung

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19611944C2 (de) * 1996-03-26 2003-03-27 Daimler Chrysler Ag Integrierter Schaltkreis zur Kopplung eines mikrokontrollierten Steuergerätes an einen Zweidraht-Bus
US6484082B1 (en) 2000-05-24 2002-11-19 General Motors Corporation In-vehicle network management using virtual networks
EP2436571B1 (de) * 2009-05-25 2014-07-16 Toyota Jidosha Kabushiki Kaisha Hybridkraftfahrzeug und steuerverfahren dafür
US8467324B2 (en) 2010-11-03 2013-06-18 Broadcom Corporation Managing devices within a vehicular communication network
JP5802163B2 (ja) * 2012-03-29 2015-10-28 株式会社日立メディコ 磁場均一度調整方法、磁石装置及び磁気共鳴撮像装置
US10061745B2 (en) * 2012-04-01 2018-08-28 Zonar Sytems, Inc. Method and apparatus for matching vehicle ECU programming to current vehicle operating conditions
US8788731B2 (en) 2012-07-30 2014-07-22 GM Global Technology Operations LLC Vehicle message filter
JP2014072673A (ja) 2012-09-28 2014-04-21 Toyota Motor Corp 中継装置
JP2014108695A (ja) 2012-11-30 2014-06-12 Denso Corp ネットワークシステム
JP2015023340A (ja) 2013-07-17 2015-02-02 株式会社デンソー 機器接続装置
US9372234B2 (en) * 2013-08-27 2016-06-21 Ford Global Technologies, Llc Detection method of current sensor faults in the e-drive system by using the voltage command error
US9288048B2 (en) 2013-09-24 2016-03-15 The Regents Of The University Of Michigan Real-time frame authentication using ID anonymization in automotive networks
US9965426B2 (en) * 2015-01-07 2018-05-08 Infineon Technologies Ag System and method for a low emission network
US10970382B2 (en) * 2015-07-10 2021-04-06 Sital Technology And Hardware Engineering (1997) Ltd. System for device authentication
JP6458761B2 (ja) * 2016-04-28 2019-01-30 トヨタ自動車株式会社 自動車
US10124764B1 (en) * 2017-09-29 2018-11-13 Intel Corporation Intrusion detection system based on 2-point profiling of signal characteristics
US11474519B2 (en) * 2018-02-26 2022-10-18 Nvidia Corporation Systems and methods for computer-assisted shuttles, buses, robo-taxis, ride-sharing and on-demand vehicles with situational awareness
DE102019201230A1 (de) * 2018-08-17 2020-02-20 Robert Bosch Gmbh Teilnehmerstation für ein serielles Bussystem und Verfahren zum Senden einer Nachricht in einem seriellen Bussystem
US11201878B2 (en) * 2018-11-13 2021-12-14 Intel Corporation Bus-off attack prevention circuit
EP3700137B1 (de) * 2019-02-22 2023-08-02 Volvo Car Corporation Überwachung von can-knoten

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
ISO 11898-2:2016
ISO 11898-3:2006
ISO 11898-4:2004
ISO 11898-5:2007
ISO 11898-6:2013

Also Published As

Publication number Publication date
WO2018063643A1 (en) 2018-04-05
US10581906B2 (en) 2020-03-03
US20180091550A1 (en) 2018-03-29
US11271965B2 (en) 2022-03-08
JP7028859B2 (ja) 2022-03-02
JP7346787B2 (ja) 2023-09-20
JP2019532547A (ja) 2019-11-07
JP2022065116A (ja) 2022-04-26
US20200204584A1 (en) 2020-06-25

Similar Documents

Publication Publication Date Title
DE112017004873T5 (de) Sicherheitssystem für elektronikausrüstung
DE102015122823B4 (de) Verfahren und System zur reflektometriebasierten Überwachung, Intrusionserfassung und Mitteilungsauthentifizierung eines Kommunikationsnetzwerks
DE102017128922A1 (de) Authentifizierung von mobilen Vorrichtungen zur Fahrzeugkommunikation
DE102015108333B4 (de) Kurzschlussfehlerisolierung in einem controller area network
DE102012101747A1 (de) Zuverlässige datenübertragung mit verringerter bit-fehlerrate
DE102015208856A1 (de) Verfahren und System für ein Fahrzeugrechensystem, das zu einer Social Media Website kommuniziert
DE102015109057A1 (de) Sperren des Zugriffs auf vertrauliche Fahrzeugdiagnosedaten
DE102016107923A1 (de) Detektion eines ECU-Erdungsfehlers mit Spannungsmessungen am CAN-Bus
EP3357262B1 (de) Kommunikationssystem zur v2x-kommunikation
DE102016108923A1 (de) Spoofing-Erkennung
DE102014200558A1 (de) Gesicherter Netzwerk-Zugangsschutz über authentifizierte Zeitmessung
DE102016223712A1 (de) Ecu-massefehler-isolierung für ein verzögerungssystem
DE102017222879A1 (de) Vorrichtung, Verfahr, und Computerprogramm zum Freischalten von einer Fahrzeugkomponente, Fahrzeug-zu-Fahrzeug-Kommunikationsmodul
DE102014220701A1 (de) Fahrzeuginternes Diagnosesystem
DE112017006282T5 (de) Steuervorrichtung, Steuersystem, Steuerverfahren und Speichermedium
DE102016220479A1 (de) Verfahren und Vorrichtung zum Generieren eines Notrufs für ein Fahrzeug
DE102012106126A1 (de) Fahrzeugsteuerungseinrichtung und Authentifikationsverfahren
DE102022201663A1 (de) Erzeugen synthetischer Prüffälle zur Fuzz-Prüfung
DE112017004161B4 (de) Verfahren und Steuereinheit zur Bus-Verkehrsfluss-Steuerung
EP3300327A1 (de) Verfahren und system zum schutz eines bordkommunikationsnetzwerks eines kraftfahrzeugs
DE102018109953A1 (de) Verfahren und systeme zur diagnose eines controller area networks
WO2019115312A1 (de) Vorrichtungen, verfahren und computerprogramm zum freischalten von fahrzeugkomponenten, fahrzeug-zu-fahrzeug-kommunikationsmodul
DE102022127214A1 (de) Systeme und Verfahren zum Überwachen einer Verschlechterung einer Masseleitung von an einen Kommunikationsbus gekoppelten elektrischen Vorrichtungen
DE102014116172A1 (de) Datenübertragungseinheit für ein Fahrzeug
DE102020214946A1 (de) Verfahren zum Überprüfen einer Nachricht in einem Kommunikationssystem