-
HINTERGRUND
-
Ein modernes Auto weist in der Regel viele, z. B. bis zu siebzig elektronische Steuergeräte (electronic control units, ECU) für verschiedene Systeme und Untersysteme auf. Das leistungsstärkste ECU in Bezug auf die Verarbeitungsleistung ist in der Regel ein Motorsteuergerät. Andere ECU werden für das Getriebe, die Airbags, das Antiblockiersystem/ABS, die Geschwindigkeitsregelung, die elektrische Servolenkung, die Audiosysteme, die elektrischen Fensterheber, die Türen, die Spiegelverstellung, die Akku- und Aufladungssysteme für Hybrid- und Elektrofahrzeuge usw. verwendet. Einige dieser ECU bilden unabhängige Untersysteme, Kommunikationen zwischen den ECU sind jedoch dennoch im Allgemeinen wichtig.
-
Ein Controller-Area-Network-Bus-Standard (CAN-Bus-Standard) wurde konzipiert und ist wohl bekannt, um Mikrocontrollern, wie in einem ECU oder anderen Geräten in einem Fahrzeug, zu ermöglichen, miteinander in Anwendungen ohne einen Host- Computer zu kommunizieren. CAN ist ein nachrichtenbasiertes Protokoll, das ursprünglich für Autoanwendungen entworfen wurde, jedoch auch in vielen anderen Zusammenhängen verwendet wird. Ein CAN-Bus verwendet serielle Kommunikation zum Senden und Empfangen von Nachrichten. Serielle Kommunikation bezieht sich auf den Vorgang des Sendens von Daten zu jeweils einem Bit nacheinander über einen Kommunikationskanal, wie einen Kommunikationsbus eines Fahrzeugs.
-
Spoofing ist eine Situation, in der eine Datenverarbeitungsentität und/oder ein Datenverarbeitungsprogramm sich durch Verfälschen von Daten erfolgreich als eine andere bzw. ein anderes ausgibt und dadurch illegitimen Zugang zu einem System oder einem Netz erlangt. Spoofing einer Nachricht auf einem Fahrzeugkommunikationsbus beinhaltet in der Regel das Ausgeben als ein ECU-Modul und das Platzieren von Nachrichten auf dem Kommunikationsbus des Fahrzeugs, als wenn das sich falsch ausgebende ECU-Modul die legitime Quelle der Nachricht wäre. Das sich falsch ausgebende ECU-Modul kann Nachrichten auf den Bus senden. Empfangsmodule auf dem Bus können auf die Nachrichten reagieren, deren tatsächlichen Quelle unbewusst. Die Folgen dessen, dass ein Fahrzeug auf gefälschte Nachrichten reagiert, können schwerwiegend sein.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein Blockdiagramm eines beispielhaften Fahrzeugbus-Antispoofing-Systems.
-
2 ist eine Ansicht, die einen beispielhaften Rahmen eines seriellen Kommunikationsprotokolls zeigt.
-
3 ist ein Vorgangsablaufdiagramm, das einen beispielhaften Vorgang für das System von 1 darstellt.
-
AUSFÜHRLICHE BESCHREIBUNG
-
1 ist ein Blockdiagramm eines beispielhaften Fahrzeugbus-Antispoofing-Systems 100. Ein Sensor 111 ist mit einem elektronischen Steuergerät (electronic control unit, ECU) 102 z. B. auf bekannte Weise verbunden. Das ECU 102 weist einen Controller 104 auf, der in Kommunikation mit einem Kommunikationscontroller 106 ist. Der Kommunikationscontroller 106 ist mit einem Antispoofing-Modul 108 verbunden. Das Antispoofing-Modul 108 ist mit einem Kommunikationstransceiver 110 kommunikationsgekoppelt. Der Kommunikationstransceiver 110 wiederum ist mit einem Bus 101 eines Autonetzes kommunikationsgekoppelt. Der Bus 101 weist einen Impedanz-Abschlusswiderstand 103 an jedem Ende des Busses 101 auf.
-
Der Controller 104 kann einen oder mehrere Prozessoren, wie Mikroprozessoren oder Mikrocontroller, beinhalten. Der Controller 104 kann auch einen Speicher, wie einen Festwertspeicher (read only memory, ROM), um von dem Prozessor auszuführende Anweisungen zu speichern, und einen Direktzugriffsspeicher (random access memory, RAM), um Daten vorübergehend zu speichern oder Registerinformationen aufzubewahren, aufweisen. Das ECU 102 kann die Mikroprozessoren dazu verwenden, einen Sensormesswert von dem Sensor 111 (z. B. Motorsensoren, wie Kraftstoffeinspritzungssensoren, Zeitmesser, Sauerstoffsensoren, Kühlmittelsensoren, Luftansaugungssensoren usw.) zu verarbeiten und als Reaktion darauf diese Informationen an andere Fahrzeugkomponenten, wie ein ECU 112, ein ECU 114 und ein ECU 116 oder Geräte, z. B. Instrumentenleuchten, Fahrzeugleuchten, Hupen und dergleichen, in dem Fahrzeug gemäß ihrer jeweiligen Funktionen übertragen. Jedes ECU muss eine einzigartige Adresse haben, wenn es mit dem Bus 101 verbunden ist, um eine Verwechslung zu vermeiden. Das ECU 102, das ECU 112, das ECU 114 und das ECU 116 können beispielsweise die einzigartigen hexadezimalen ECU-Adressen 1A0h, 2B0h, 3AFh bzw. 008h haben.
-
Der Kommunikationscontroller 106 kann beispielsweise ein Controller-Area-Network-Controller (CAN-Controller) sein und ist oftmals ein integraler Teil des Prozessors des Controllers 104. Der Kommunikationscontroller 104 kann einen Prozessor zum Ausführen von Anweisungen enthalten. Beim Empfangen von Daten speichert der Kommunikationscontroller 106 die empfangenen seriellen Bits, die er von dem Bus 101 empfängt, bis eine vollständige Nachricht zur Verfügung steht. Die Nachricht kann dann durch den Prozessor des Controllers 104 abgerufen werden. Der Kommunikationscontroller kann einen Interrupt in dem Prozessor des Controllers 104 auslösen, der den Prozessor darauf aufmerksam macht, dass eine neue Nachricht empfangen wurde. Beim Senden von Daten sendet der Prozessor des Controllers 104 auf dem Bus 101 mittels des Kommunikationscontrollers 106 zu platzierende Nachrichten.
-
Das Antispoofing-Modul 108 befindet sich zwischen dem Kommunikationscontroller 106 und dem Kommunikationstransceiver 110. Die Funktionalität des Antispoofing-Moduls kann in Hardware, Software oder einer Kombination davon erzielt werden. Beispiele einer Implementierung des Antispoofing-Moduls 108 werden im Folgenden erörtert. Im Betrieb überwacht das Antispoofing-Modul 108 den Bus 101 mittels des Kommunikationstransceivers 110 und erkennt, wenn eine empfangene Nachricht auf dem Bus 101 eine Ursprungsadresse hat, die der Absenderadresse des ECU 102 entspricht, und die empfangene Nachricht nicht von der ECU 102 gesendet wurde. Das Antispoofing-Modul 108 wird unverzüglich eine Reihe von sechs aufeinanderfolgenden dominanten Bits an den Bus 101 mittels des Kommunikationstransceivers 110 senden, bevor die gefälschte Nachricht beendet werden kann, wodurch die Spoofing-Nachricht negiert wird (im Folgenden weiter erörtert). Die sechs Bits umfassen ein „Active Error Flag“ gemäß dem CAN-Bus-Standard, das das „Aktiver-Fehler-Flag“ ist und eine Negative-Rückmeldungsnachricht (NACK-Nachricht) von dem ECU 102 bildet, die jegliche Module auf dem Bus 101 darüber informiert, dass eine Spoof-Nachricht empfangen wurde. Vorteilhaft wird die NACK-Nachricht des ECU 102 bewirken, dass diese gefälschte Nachricht von den Modulen auf dem Bus 101 ignoriert wird.
-
Wie bekannt ist, verwenden CAN-Bus-Datenübertragungen ein verlustfreies bitweises Arbitrierungsverfahren zur Zugangskonfliktlösung. Dieses Arbitrierungsverfahren erfordert, dass alle Knoten auf dem CAN-Netz synchronisiert werden, um jedes Bit auf dem CAN-Netz im Wesentlichen gleichzeitig abzutasten. Die CAN-Spezifikationen verwenden die Begriffe „dominante“ Bits und „rezessive“ Bits wie folgt. Dominant ist eine logische 0 (von dem Sender aktiv auf eine Spannung getrieben) und rezessiv ist eine logische 1 (von einem Widerstand passiv auf eine Spannung zurückgesetzt). Der Ruhezustand wird von dem rezessiven Niveau (Logische 1) dargestellt. Wenn ein Knoten ein dominantes Bit überträgt und ein anderer Knoten ein rezessives Bit überträgt, gibt es eine Kollision und das dominante Bit „gewinnt“. Das bedeutet, dass es keine Verzögerung bei der Nachricht mit höherer Priorität gibt, und der Knoten, der die Nachricht mit niedrigerer Priorität überträgt, versucht automatisch, Sechs-Bit-Taktzyklen nach dem Ende der dominanten Nachricht erneut zu übertragen. Dies macht das CAN als ein priorisiertes Echtzeit-Kommunikationssystem sehr geeignet.
-
2 ist eine Zeittabelle eines Datenrahmens 10 eines seriellen Kommunikationsbusses. Die Spalten stellen die unterschiedlichen Felder in dem Datenrahmen 10 dar. Datenzustände einer Logischen 1 (Rezessiv) und einer Logischen 0 (Dominant) sind entlang der y-Achse zusammen mit einer Anzahl von Bits für jede Spalte dargestellt. Ein Datenrahmen 10 wird von vorhergehenden Rahmen durch ein Bitfeld, das Interframe Space 16 genannt wird, getrennt. Der Interframe Space 16 besteht aus mindestens drei aufeinanderfolgenden rezessiven (1) Bits. Wenn ein dominantes Bit (0) hinter dem Interframe Space 16 erkannt wird, wird es als das Startof-Frame-Bit 18 angesehen. Die nächste Spalte ist ein Arbitrierungsfeld 20, ist 11 Bits lang und wird im Folgenden erörtert. Hinter dem Arbitrierungsfeld 20 ist ein Kontrollfeld 22, das aus vier Bits besteht, was die Anzahl von Bytes in einem Datenfeld 24 angibt. Das Datenfeld 24 enthält die gesendeten Daten und kann von null bis acht Bytes lang sein. Ein CRC-Feld 26 ist ein Sechzehn-Bit-Zyklisches-Blocksicherungsfeld zum Erkennen von jeglichen Daten und Korrigieren von Datenfehlern. Die CRC-Korrektur ist fünfzehn Bits lang, wobei das sechzehnte Bit ein rezessives (1) Bit ist. Ein Rückmeldungsfeld 28 ist zwei Bits lang. Ein End-of-Frame-Feld 30 ist sieben rezessive (1) Bits lang und wird dazu verwendet, das Ende des Datenrahmens 10 zu markieren.
-
Das Arbitrierungsfeld 20 ist analog zu einem Adressfeld, da der CAN-Bus jedoch semiasynchron ist, kann jegliches ECU auf dem Bus jederzeit übertragen, was Buszugangskonfliktprobleme verursachen kann. Einige ECU müssen Priorität vor anderen Modulen haben. Ein Bremsanlagen-ECU beispielsweise muss Priorität vor einem Entertainment-ECU haben. Das oben erörterte bitweise Arbitrierungsverfahren zur Zugangskonfliktlösung wird genutzt und dem Bremsanlagen-ECU wird eine Busadresse mit einem niedrigeren numerischen Wert zugeteilt. Da Adressen mit einem Wert einer niedrigeren Größenordnung gegenüber den Adressen mit einem höheren Wert dominant sind, wird das Bremsanlagen-ECU das Entertainment-ECU dominieren.
-
Beim Empfangen von Daten von dem Bus 101 wandelt der Kommunikationstransceiver 110 die Datenstromsignalpegel von dem Bus 101 in Signalpegel des Antispoofing-Moduls 108 um und puffert diese. Beim Übertragen wandelt der Kommunikationstransceiver 110 den Datenstrom von dem Antispoofing-Modul 108 in die Pegel des Busses 101 um. Signalpegel auf einem CAN-Bus können beispielsweise von –3 Volt bis +32 Volt reichen und der Controller des Antispoofing-Moduls 108 kann TTL-Logik (Transistor-Transistor-Logik) einsetzen und kann dazu in der Lage sein, höchstens eine Spannungsschwankung von 0 bis +5 Volt zu verarbeiten. Der Kommunikationstransceiver 110, z. B. ein CAN-Transceiver, wird die übertragenen und empfangenen Datensignale in die passenden Signalspannungspegel umwandeln. Darüber hinaus muss der CAN-Transceiver dazu in der Lage sein, etwaige transiente Spannungsspitzen von –150 Volt bis +100 Volt zu unterdrücken.
-
Der Bus 101 kann unter Verwendung eines beliebigen geeigneten Netzkonfigurationstyps implementiert werden. In einer Ausführungsform kann der Bus 101 beispielsweise unter Verwendung von Standardprotokollen, wie Controller-Area- Network-Protokollen (CAN-Protokollen), arbeiten. Als nicht einschränkende Beispiele kann der Bus 101 als eine einzige Ader implementiert sein oder kann zwei Adern sein (z. B. ein verdrilltes Adernpaar), die bzw. das Nachrichten von einem ECU an ein anderes ECU oder an andere gewünschte Fahrzeugkomponenten überträgt. In anderen nicht einschränkenden Beispielen kann der Bus 101 unter Verwendung eines Koaxialkabels oder Glasfaserkabels implementiert sein oder kann drahtlos unter Verwendung von Radiofrequenzsignalisierung implementiert sein. Des Weiteren kann der Bus 101 unter Verwendung einer beliebigen in der Technik bekannten geeigneten Netztopologie implementiert sein, wie Punkt-zu-Punkt, Stern, Bus, Ring, Netzwerk, Baum, Verkettung usw.
-
Der Bus 101 kann auch mit einer Telematikeinheit verbunden sein, um externen ECU zu ermöglichen, sich mittels einer Telekommunikationsdatenstrecke mit dem Bus 101 eines Bordnetzes zu verbinden. Eine Telematikeinheit, wie bekannt ist, kann Informationen mittels Telekommunikationsgeräten in Bezug auf verschiedene Fahrzeugkomponenten, wie Sensoren, Instrumente, Status und Kommunikationen eines drahtlosen Netzes, Straßenbedingungen, Straßensicherheit usw., senden, empfangen und speichern.
-
In einem Beispiel kann das Antispoofing-Modul 108 mit einer Anordnung diskreter Logikgatter erzielt werden. Die Adresse eines ECU kann in das Antispoofing-Modul 108 festverdrahtet werden und wenn eine empfangene Adresse der Übertragungsadresse des ECU entspricht, kann die Logikschaltung die NACK-Nachricht senden, was bewirkt, dass jegliche Module auf dem Bus 101 die Spoof-Nachricht ignorieren. Ein Logikgatter, wie bekannt ist, ist ein elementarer Baustein einer digitalen Schaltung.
-
Gemäß einem anderen Beispiel kann eine programmierbare Logikanordnung (programmable logic device, PLD), eine frei programmierbare Logikanordnung (field programmable gate array, FPGA) oder ein eingebetteter Controller als das Antispoofing-Modul 108 genutzt werden. Eine PLD ist eine elektronische Komponente, die dazu verwendet wird, rekonfigurierbare digitale Schaltungen zu bauen, wie bekannt ist. Im Gegensatz zu einem Logikgatter, das eine festgelegte Funktion hat, hat eine PLD zur Zeit der Herstellung eine undefinierte Funktion. Bevor die PLD in einer Schaltung verwendet werden kann, muss sie mit einem gewünschten Logikschema programmiert werden. Die PLD kann beispielsweise dazu programmiert werden, die diskreten Logikgatter zu emulieren, wie oben beschrieben. FPGA enthalten eine Anordnung von programmierbaren Logikblöcken und eine Hierarchie von rekonfigurierbaren Verdrahtungen, die ermöglichen, die Blöcke „zusammen zu verdrahten“. Die Logikblöcke können dazu konfiguriert sein, komplexe Kombinationsfunktionen oder lediglich einfache Logikgatter wie AND und XOR durchzuführen. Ein eingebetteter Controller ist ein Mikrocontroller in einem System, der verschiedene Systemaufgaben bearbeitet, die das Betriebssystem nicht bearbeiten kann.
-
In noch einem anderen Beispiel kann der Prozessor in dem ECU 102 eine Programmierung zum Überwachen von Adressen auf dem Bus 101 ausführen. Wenn das Überwachungsprogramm erkennt, dass eine eingehende Nachricht auf dem Bus 101 dieselbe Adresse wie die Absenderadresse des ECU 102 hat und das ECU 102 die Nachricht nicht gesendet hat, kann das Überwachungsprogramm die NACK-Nachricht an den Bus 101 senden und bewirken, dass die gefälschte Nachricht von den anderen Modulen auf dem Bus 101 ignoriert wird.
-
In einigen Fällen ist die Adresse des ECU 102 dynamisch und wird sich von Zeit zu Zeit ändern. Folglich ist ein Vorteil des Verwendens eines eingebetteten Controllers oder des Prozessors des ECU 102, dass er dazu programmiert werden kann, Adressen des ECU 102 zu lernen, wenn diese sich ändern. Der Prozessor des Controllers 104 kann beispielsweise Code ausführen, um die von dem ECU 102 stammenden, abgehenden Nachrichten zu überwachen und die Absenderadressen des ECU 102 in einem Speicher zu speichern und dann die Absenderadressen des ECU 102 in dem Antispoofing-Modul 108 zu platzieren.
-
Ein Merkmal des ECU 102, das NACK-Nachrichten sendet, um Geräte auf dem Bus 101 darüber zu benachrichtigen, gefälschte Nachrichten zu ignorieren, besteht darin, dass ein Angreifer durch die wiederholten NACK aus dem Bus 101 heraus gezwungen wird. Der Angreifer sendet beispielsweise eine Reihe von Spoof-Nachrichten, das ECU 101 erkennt die gefälschten Nachrichten und antwortet mit NACK. Nach einer Grenzanzahl von NACK wird der CAN-Bus-Controller des Spoofing-Ausgangsgeräts in einen Bus-Aus-Zustand übergehen, wodurch das Spoofing-Ausgangsgerät von dem Bus 101 entfernt wird. In dem Bus-Aus-Zustand ist dem Knoten nicht gestattet, auf dem Bus zu kommunizieren. Der CAN-Bus-Standard ISO 11898:2003 lässt beispielsweise einen Übertragungsfehler-Zählwert (NACK-Zählwert) von 256 zu, bevor der CAN-Controller des Spoofing-Geräts in den Bus-Aus-Zustand gezwungen wird.
-
3 ist ein Vorgangsablaufdiagramm, das einen beispielhaften Vorgang 200 für das Antispoofing-Modul 108 darstellt, der in Hardware oder Software durchgeführt werden kann.
-
Der Vorgang 200 beginnt in einem Block 210, in dem eine Adresse des ECU 102 in das Antispoofing-Modul geladen wird. Das ECU 102 kann beispielsweise eine hexadezimale Adresse 1A0h haben, wobei diese Adresse dann in das Antispoofing-Modul 108 geladen wird. Als Nächstes wird in einem Block 220 der Verkehr auf dem Bus 101 auf etwaige empfangene Spoof-Nachrichten überwacht, z. B. hat die empfangene Nachricht eine Ursprungsadresse 1A0h, dieselbe wie das ECU 102. Als Nächstes wird in einem Block 230 eine Bestimmung vorgenommen, ob eine derartige Nachricht empfangen wurde. Wenn im Block 230 keine gefälschte Nachricht empfangen wurde, wird das Antispoofing-Modul zum Block 220 zurückkehren. Wenn eine gefälschte Nachricht empfangen wurde, wird in einem Block 240 eine NACK-Nachricht an den Bus 101 ausgesendet, die angibt, dass ein Fehler aufgetreten ist. Als Nächstes werden die Module auf dem Bus 101 in einem Block 250 diese Spoof-Nachricht ignorieren. Nach dem Block 250 endet der Vorgang 200. Alternativ oder zusätzlich dazu könnte der Vorgang 200 zum Block 200 zurückkehren, um das Überwachen des Verkehrs des Busses 200 fortzusetzen.
-
Wie hierin verwendet, bedeutet das Adverb „im Wesentlichen“, das ein Adjektiv modifiziert, dass eine Form, eine Struktur, ein Messwert, ein Wert, eine Berechnung, eine zeitliche Abstimmung usw. von einer exakt beschriebenen Geometrie, einer exakt beschriebenen Entfernung, einem exakt beschriebenen Messwert, einem exakt beschriebenen Wert, einer exakt beschriebenen Berechnung, einer exakt beschriebenen zeitlichen Abstimmung usw. aufgrund von Mangelhaftigkeiten der Materialien, der maschinellen Bearbeitung, der Herstellung, der Sensormessungen, der Berechnungen, der Verarbeitungsgeschwindigkeit, der Kommunikationszeit usw. abweichen kann.
-
Datenverarbeitungsgeräte wie die hierin erörterten enthalten im Allgemeinen jeweils Anweisungen, die von einem oder mehreren Datenverarbeitungsgeräten, wie den oben identifizierten, ausführbar sind, und zum Ausführen von oben beschriebenen Blöcken oder Schritten von Vorgängen. Computerausführbare Anweisungen können von Computerprogrammen kompiliert oder interpretiert werden, die unter Verwendung einer Vielfalt von Programmiersprachen und/oder -technologien erstellt wurden, einschließlich, ohne Einschränkung, und entweder allein oder in Kombination, JavaTM, C, C++, C#, Visual Basic, Java Script, Perl, HTML, PHP usw. Im Allgemeinen empfängt ein Prozessor (z. B. ein Mikroprozessor) Anweisungen z. B. von einem Speicher, einem computerlesbaren Medium usw. und führt diese Anweisungen aus, wodurch ein oder mehrere Vorgänge, einschließlich eines oder mehrerer der hierin beschriebenen Vorgänge, durchgeführt werden. Derartige Anweisungen und andere Daten können unter Verwendung einer Vielfalt von computerlesbaren Medien gespeichert und übertragen werden. Eine Datei in einem Datenverarbeitungsgerät ist im Allgemeinen eine Datensammlung, die auf einem computerlesbaren Medium gespeichert ist, wie einem Speichermedium, einem Direktzugriffsspeicher usw.
-
Ein computerlesbarer Datenträger kann einen beliebigen Datenträger beinhalten, der am Bereitstellen von Daten (z. B. Anweisungen) beteiligt ist, die von einem Computer gelesen werden können. Ein derartiger Datenträger kann viele Formen annehmen, einschließlich – jedoch nicht darauf beschränkt – nichtflüchtiger Datenträger, flüchtiger Datenträger usw. Zu nichtflüchtigen Datenträgern zählen beispielsweise optische oder Magnetplatten und ein anderer permanenter Speicher. Zu flüchtigen Datenträgern zählt ein dynamischer Direktzugriffsspeicher (dynamic random access memory, DRAM), der in der Regel einen Hauptspeicher bildet. Zu üblichen Formen von computerlesbaren Datenträgern zählen beispielsweise eine Floppy-Disk, eine Diskette, eine Festplatte, ein Magnetband, ein beliebiger anderer magnetischer Datenträger, eine CD-ROM, eine DVD, ein beliebiger anderer optischer Datenträger, Lochkarten, Papierband, ein beliebiger anderer physischer Datenträger mit Lochmustern, ein RAM, ein PROM, ein EPROM, ein FLASH-EEPROM, ein beliebiger anderer Speicherchip oder eine beliebige andere Speicherpatrone oder ein beliebiger anderer Datenträger, von dem ein Computer lesen kann.
-
In Bezug auf die hierin beschriebenen Datenträger, Vorgänge, Systeme, Verfahren usw. versteht es sich, dass, obwohl die Schritte derartiger Vorgänge usw. als gemäß einer bestimmten geordneten Abfolge erfolgend beschrieben wurden, derartige Vorgänge mit den beschriebenen Schritten ausgeübt werden könnten, die in einer Reihenfolge durchgeführt werden, die sich von der hierin beschriebenen Reihenfolge unterscheidet. Es versteht sich weiterhin, dass bestimmte Schritte gleichzeitig durchgeführt werden könnten, dass andere Schritte hinzugefügt werden könnten oder dass bestimmte hierin beschriebene Schritte weggelassen werden könnten. Anders ausgedrückt, die Beschreibungen von Systemen und/oder Vorgängen hierin sind zum Zwecke der Veranschaulichung bestimmter Ausführungsformen bereitgestellt und sollten keinesfalls als den offenbarten Gegenstand einschränkend aufgefasst werden.
-
Dementsprechend versteht es sich, dass die obige Beschreibung veranschaulichend und nicht einschränkend sein soll. Viele Ausführungsformen und Anwendungen, die sich von den bereitgestellten Beispielen unterscheiden, würden Fachmännern beim Lesen der obigen Beschreibung offensichtlich werden. Der Schutzumfang der Erfindung sollte nicht unter Bezugnahme auf die obige Beschreibung bestimmt werden, sondern sollte stattdessen unter Bezugnahme auf die Ansprüche, die hieran angefügt und/oder in einer hierauf basierten, nicht vorläufigen Patentanmeldung enthalten sind, bestimmt werden, zusammen mit dem vollen Umfang von Äquivalenten, auf die derartige Ansprüche Anspruch haben. Es ist antizipiert und beabsichtigt, dass künftige Entwicklungen in den hierin erörterten Techniken erfolgen werden und dass die offenbarten Systeme und Verfahren in derartige künftige Ausführungsformen eingebunden werden. Zusammenfassend versteht es sich, dass der offenbarte Gegenstand zur Modifizierung und Abänderung geeignet ist.
-
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
-
- CAN-Bus-Standard ISO 11898:2003 [0021]