DE102022209777A1 - DETECTION OF EXTERNAL INTERVENTIONS IN A COMPUTER SYSTEM WITH ZONE SEPARATION FOR A DEVICE, IN PARTICULAR FOR A VEHICLE - Google Patents
DETECTION OF EXTERNAL INTERVENTIONS IN A COMPUTER SYSTEM WITH ZONE SEPARATION FOR A DEVICE, IN PARTICULAR FOR A VEHICLE Download PDFInfo
- Publication number
- DE102022209777A1 DE102022209777A1 DE102022209777.7A DE102022209777A DE102022209777A1 DE 102022209777 A1 DE102022209777 A1 DE 102022209777A1 DE 102022209777 A DE102022209777 A DE 102022209777A DE 102022209777 A1 DE102022209777 A1 DE 102022209777A1
- Authority
- DE
- Germany
- Prior art keywords
- zone
- zones
- modules
- resources
- assigned
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000926 separation method Methods 0.000 title claims description 8
- 238000001514 detection method Methods 0.000 title 1
- 230000006870 function Effects 0.000 claims abstract description 61
- 238000000034 method Methods 0.000 claims description 46
- 238000004891 communication Methods 0.000 claims description 24
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 238000013468 resource allocation Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 claims description 4
- 230000000977 initiatory effect Effects 0.000 claims description 4
- 230000001010 compromised effect Effects 0.000 claims description 3
- 230000008859 change Effects 0.000 claims description 2
- 230000015654 memory Effects 0.000 description 36
- 230000002093 peripheral effect Effects 0.000 description 20
- 230000005540 biological transmission Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 3
- 230000001276 controlling effect Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000001105 regulatory effect Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000010420 art technique Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000004378 air conditioning Methods 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000032258 transport Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/104—Grouping of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
Ein Aspekt der vorliegenden Offenbarung betrifft ein Rechnersystem zur Bereitstellung einer Mehrzahl von Funktionen für eine Vorrichtung, insbesondere für ein Fahrzeug. Das Rechnersystem des ersten Aspekts weist eine Mehrzahl von Systemmodulen, eine Mehrzahl von Systemressourcen und ein Sicherheitsmodul auf, wobei die Mehrzahl von Systemmodulen konfiguriert ist, um Funktionen für die Vorrichtung bereitzustellen. Zudem ist eine erste Anzahl von Systemmodulen und/oder Teilen von Systemmodulen der Mehrzahl von Systemmodulen einer ersten Zone aus einer Mehrzahl von Zonen zugeordnet. Darüber hinaus ist eine zweite Anzahl von Systemmodulen und/oder Teilen von Systemmodulen der Mehrzahl von Systemmodulen einer zweiten Zone aus der Mehrzahl von Zonen zugeordnet. Eine Zone des ersten Aspekts ist eine logisch und/oder physisch abgrenzbare Einheit in dem Rechnersystem, wobei der ersten Zone eine erste Anzahl von Systemressourcen aus der Mehrzahl von Systemressourcen zugeordnet ist. Zudem ist der zweiten Zone eine zweite Anzahl von Systemressourcen aus der Mehrzahl von Systemressourcen zugeordnet. Das Sicherheitsmodul des ersten Aspekts ist dazu ausgelegt, um Verstöße gegen Vorschriften über die Zuordnung der ersten Anzahl von Systemressourcen der Mehrzahl von Systemressourcen für die erste Zone und gegen Vorschriften über die Zuordnung der zweiten Anzahl von Systemressourcen der Mehrzahl von Systemressourcen für die zweite Zone zu erkennen.One aspect of the present disclosure relates to a computer system for providing a plurality of functions for a device, in particular for a vehicle. The computing system of the first aspect includes a plurality of system modules, a plurality of system resources, and a security module, the plurality of system modules being configured to provide functions for the device. In addition, a first number of system modules and/or parts of system modules are assigned to the plurality of system modules of a first zone from a plurality of zones. In addition, a second number of system modules and/or parts of system modules of the plurality of system modules are assigned to a second zone from the plurality of zones. A zone of the first aspect is a logically and/or physically delimitable unit in the computer system, with the first zone being assigned a first number of system resources from the plurality of system resources. In addition, the second zone is assigned a second number of system resources from the plurality of system resources. The security module of the first aspect is designed to detect violations of rules governing the allocation of the first number of system resources of the plurality of system resources for the first zone and of rules governing the allocation of the second number of system resources of the plurality of system resources for the second zone .
Description
Technisches GebietTechnical area
Die vorliegende Erfindung betrifft Techniken zur Bereitstellung einer Mehrzahl von Funktionen für eine Vorrichtung, insbesondere für ein Fahrzeug. Zugehörige Aspekte betreffen ein computerimplementiertes Verfahren und ein Computer-Programm.The present invention relates to techniques for providing a plurality of functions for a device, particularly for a vehicle. Associated aspects concern a computer-implemented method and a computer program.
Hintergrundbackground
In letzter Zeit werden Fahrzeuge in immer stärkerem Maß untereinander und/oder mit einem in einer Cloud befindlichen Backend vernetzt. Genauer gesagt, weisen die Fahrzeuge eine oder mehrere Schnittstellen auf, über die während des Betriebs eines Fahrzeugs Daten empfangen und/oder gesendet werden, die wiederum für den Betrieb des Fahrzeugs verwendet werden. Zusätzlich nimmt die Komplexität der Komponenten der Fahrzeuge und ihrer Software stetig zu, insbesondere im Zusammenhang mit autonom oder teilautonom operierenden Fahrzeugen und der Forderung nach einer „intelligenteren Mobilität“, welche die Integration des Fahrzeugs in die digitale Welt impliziert. Die Cybersicherheit (engl. Cyber-Security) spielt daher eine immer wichtigere Rolle bei der Software- und Hardwareentwicklung moderner Fahrzeuge. Darüber hinaus ergeben sich Probleme bei einigen Methoden des Standes der Technik in Bezug auf die Cybersicherheit aus der Vielfalt von Applikationen, die von verschiedenen Herstellern bereitgestellt sind und auf verschiedenen Systemen im Fahrzeug ausgeführt werden.Recently, vehicles have been increasingly networked with each other and/or with a backend located in a cloud. More specifically, the vehicles have one or more interfaces through which data is received and/or sent during operation of a vehicle, which in turn is used to operate the vehicle. In addition, the complexity of the vehicle components and their software is constantly increasing, especially in connection with autonomous or semi-autonomous vehicles and the demand for “smarter mobility”, which implies the integration of the vehicle into the digital world. Cybersecurity therefore plays an increasingly important role in the software and hardware development of modern vehicles. In addition, problems with some prior art cybersecurity methods arise from the variety of applications provided by different manufacturers and running on different systems in the vehicle.
In diesem Zusammenhang basieren manche Verfahren des Stands der Technik auf dem Konzept der Zonenseparation, d.h. dem Konzept zur Trennung von Vertrauenszonen innerhalb eines Steuergeräts (engl. Electronic Control Unit (ECU)), wodurch stärker exponierte Komponenten von weniger exponierten Komponenten isoliert werden, um die Angriffsfläche zu verringern.In this context, some prior art methods are based on the concept of zone separation, i.e. the concept of separating trust zones within an electronic control unit (ECU), whereby more exposed components are isolated from less exposed components in order to to reduce the attack surface.
Einige Verfahren nach dem Stand der Technik sind jedoch nicht in der Lage, Eindringungsversuche in verschiedenen Zonen rechtzeitig zu erkennen und entsprechend darauf zu reagieren.However, some methods according to the state of the art are not able to detect intrusion attempts in different zones in a timely manner and to react accordingly.
Daher besteht ein Bedarf an der Entwicklung neuer effizienter Techniken, die einige oder alle der oben genannten Probleme lösen können.Therefore, there is a need to develop new efficient techniques that can solve some or all of the above problems.
Zusammenfassung der ErfindungSummary of the invention
Ein erster allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein Rechnersystem zur Bereitstellung einer Mehrzahl von Funktionen für eine Vorrichtung, insbesondere für ein Fahrzeug. Das Rechnersystem des ersten Aspekts weist eine Mehrzahl von Systemmodulen, eine Mehrzahl von Systemressourcen und ein Sicherheitsmodul auf, wobei die Mehrzahl von Systemmodulen konfiguriert ist, um Funktionen für die Vorrichtung bereitzustellen. Zudem ist eine erste Anzahl von Systemmodulen und/oder Teilen von Systemmodulen der Mehrzahl von Systemmodulen einer ersten Zone aus einer Mehrzahl von Zonen zugeordnet. Darüber hinaus ist eine zweite Anzahl von Systemmodulen und/oder Teilen von Systemmodulen der Mehrzahl von Systemmodulen einer zweiten Zone aus der Mehrzahl von Zonen zugeordnet. Eine Zone des ersten Aspekts ist eine logisch und/oder physisch abgrenzbare Einheit in dem Rechnersystem, wobei der ersten Zone eine erste Anzahl von Systemressourcen aus der Mehrzahl von Systemressourcen zugeordnet ist. Zudem ist der zweiten Zone eine zweite Anzahl von Systemressourcen aus der Mehrzahl von Systemressourcen zugeordnet. Das Sicherheitsmodul des ersten Aspekts ist dazu ausgelegt, um Verstöße gegen Vorschriften über die Zuordnung der ersten Anzahl von Systemressourcen der Mehrzahl von Systemressourcen für die erste Zone und gegen Vorschriften über die Zuordnung der zweiten Anzahl von Systemressourcen der Mehrzahl von Systemressourcen für die zweite Zone zu erkennen.A first general aspect of the present disclosure relates to a computer system for providing a plurality of functions for a device, in particular for a vehicle. The computing system of the first aspect includes a plurality of system modules, a plurality of system resources, and a security module, the plurality of system modules being configured to provide functions for the device. In addition, a first number of system modules and/or parts of system modules are assigned to the plurality of system modules of a first zone from a plurality of zones. In addition, a second number of system modules and/or parts of system modules of the plurality of system modules are assigned to a second zone from the plurality of zones. A zone of the first aspect is a logically and/or physically delimitable unit in the computer system, with the first zone being assigned a first number of system resources from the plurality of system resources. In addition, the second zone is assigned a second number of system resources from the plurality of system resources. The security module of the first aspect is designed to detect violations of rules governing the allocation of the first number of system resources of the plurality of system resources for the first zone and of rules governing the allocation of the second number of system resources of the plurality of system resources for the second zone .
Ein zweiter allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein computerimplementiertes Verfahren zur Bereitstellung einer Mehrzahl von Funktionen für eine Vorrichtung, insbesondere für ein Fahrzeug, durch ein Rechnersystem. Das Verfahren des zweiten Aspekts umfasst Durchsetzen einer Zonenseparation in dem Rechnersystem. Des Weiteren umfasst das Verfahren Bereitstellen der Mehrzahl von Funktionen für die Vorrichtung, insbesondere für das Fahrzeug. Schließlich umfasst das Verfahren Erkennen von Verstößen gegen Vorschriften über eine Zuordnung von Systemressourcen, die mindestens zwei Zonen aus einer Mehrzahl von Zonen zugeordnet sind.A second general aspect of the present disclosure relates to a computer-implemented method for providing a plurality of functions for a device, in particular for a vehicle, through a computer system. The method of the second aspect includes enforcing zone separation in the computer system. Furthermore, the method includes providing the plurality of functions for the device, in particular for the vehicle. Finally, the method includes detecting violations of regulations via an allocation of system resources assigned to at least two zones from a plurality of zones.
Ein dritter allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein Computer-Programm, das Befehle enthält, die, wenn sie von einem Rechensystem ausgeführt werden, das Rechensystem veranlassen, das computerimplementierte Verfahren nach dem zweiten allgemeinen Aspekt auszuführen.A third general aspect of the present disclosure relates to a computer program that contains instructions that, when executed by a computing system, cause the computing system to execute the computer-implemented method according to the second general aspect.
Die Techniken des ersten bis dritten allgemeinen Aspekts können einen oder mehrere der folgenden Vorteile haben.The techniques of the first to third general aspects may have one or more of the following advantages.
Zum einen kann mit den vorliegenden Techniken eine stärkere Ausdifferenzierung der Sicherheitsanforderungen in einem Rechnersystem (z.B. Fahrzeugrechner) realisiert werden als in einigen Techniken des Standes der Technik, indem das Rechnersystem in Zonen eingeteilt wird (bspw. können die Zonen unterschiedliche Vertrauenswürdigkeiten im Verhältnis zueinander haben) und Systemmodule des Rechnersystems den entsprechenden Zonen zugeordnet werden (z.B. in Abhängigkeit vom Grad der Kritikalität von Funktionen für eine Vorrichtung, welche diese Systemmodule bereitstellen). Dadurch kann die Zonenseparation in dem Rechnersystem der vorliegenden Techniken die Wahrscheinlichkeit reduzieren, dass eine erfolgreiche Manipulation in einer Zone auf andere Zonen übergreift.On the one hand, with the present techniques a greater differentiation of the security requirements in a computer system (e.g. vehicle computer) can be achieved than in some prior art technologies by dividing the computer system into zones (e.g. can nen the zones have different trustworthiness in relation to each other) and system modules of the computer system are assigned to the corresponding zones (eg depending on the degree of criticality of functions for a device which these system modules provide). As a result, the zone separation in the computer system of the present techniques can reduce the probability that a successful manipulation in one zone will spread to other zones.
Zweitens können durch die Techniken der vorliegenden Offenbarung Eingriffe auf Rechnersysteme effizienter erkannt werden als in einigen Techniken des Standes der Technik. Insbesondere können Verstöße gegen Vorschriften über Zuordnungen von Systemressourcen für verschiedene Zonen (z.B. unerlaubte Zugriffe dieser Zonen auf Systemressourcen) darauf hinweisen, dass ein Eingriff vorliegt, oder auch der Eingriff nicht stattgefunden hat, wenn die Vorschriften über Zuordnungen von Systemressourcen für die Zonen eingehalten wurden (z.B. diese Zonen greifen nur auf die erlaubten Systemressourcen zu).Second, the techniques of the present disclosure can detect computer system intrusions more efficiently than some prior art techniques. In particular, violations of regulations governing the allocation of system resources for different zones (e.g. unauthorized access of these zones to system resources) may indicate that an intrusion has occurred, or even that the intrusion did not take place if the regulations on allocations of system resources for the zones were complied with ( e.g. these zones only access the permitted system resources).
Drittens bieten die vorliegenden Techniken die Möglichkeit, solche Vorschriftenverstöße in einem Rechnersystem einer Vorrichtung (bspw. in einem Fahrzeug) auf zentralisierte Weise durch ein Sicherheitsmodul zu erkennen (und sie bspw. anzusammeln und darauf entsprechend zu reagieren). Somit ermöglichen die vorliegenden Techniken eine schnellere und eindeutigere Beurteilung als einige Techniken des Standes der Technik, ob ein Eingriff auf das ganze Rechnersystem vorliegt oder nicht.Third, the present techniques offer the possibility of detecting (and, for example, accumulating and responding to) such regulatory violations in a computer system of a device (e.g. in a vehicle) in a centralized manner through a security module. The present techniques thus enable a quicker and clearer assessment than some prior art techniques as to whether or not there is an intervention on the entire computer system.
Einige Begriffe werden in der vorliegenden Offenbarung in folgender Weise verwendet:
- Ein „Systemmodul“ kann eine Hardware- und/oder Software-Einheit umfassen, die eine Mehrzahl von Funktionen für eine Vorrichtung (bspw. für ein Fahrzeug) bereitstellt. Ein Systemmodul kann einen oder mehrere Prozessoren, Controller, Steuereinheiten, (Kommunikations-)Schnittstellen, Netzwerkkomponenten, Softwareapplikationen, Softwarearchitekturen, sämtliche anderen Software/- und/oder Hardware-Komponenten, Teile der genannten, oder eine beliebige Kombination davon umfassen oder eine oder mehrere der oben genannten Realisierungen von Systemmodulen sein. Ein Systemmodul oder sein Teil kann in einer Zone oder in einer Subzone angeordnet sein.
- A “system module” may include a hardware and/or software unit that provides a plurality of functions for a device (e.g., a vehicle). A system module can include one or more processors, controllers, control units, (communications) interfaces, network components, software applications, software architectures, all other software/and/or hardware components, parts of those mentioned, or any combination thereof or one or more of the above-mentioned implementations of system modules. A system module or its part can be arranged in a zone or in a subzone.
Eine „Zone“ kann eine logisch (funktional) und/oder physisch (örtlich) abgrenzbare Einheit in einem System sein. Anders ausgedrückt sind zwei oder mehr Zonen logisch voneinander abgegrenzt, wenn sie auf Softwarebasis voneinander getrennt sind (bspw. unterschiedliche logische Modelle in einer Software darstellen), während zwei oder mehr Zonen physisch abgrenzbare Einheiten bilden, wenn sie örtlich voneinander getrennt sind (bspw. sich in verschieden Recheneinheiten oder Teilen davon befinden). Eine Zone kann ein oder mehrere Systemmodule und/oder ein Teil und/oder Teile eines Systemmoduls oder mehrerer Systemmodule umfassen. Eine Zone kann durch ihre Bestandteile definiert, das heißt bestimmt werden. Alle Systemmodule oder Teile von Systemmodulen, die einer Zone zugeordnet sind, können die Zone bilden. Eine Zone kann verschiedene Recheneinheiten, Rechenkerne, Controller, Steuereinheiten, Speichereinheiten, Peripherien, (Kommunikations-)schnittstellen, Netzwerkkomponenten, Softwareapplikationen, Softwarearchitekturen, BusSysteme (bspw. CAN-Bussysteme in Fahrzeugen), sämtliche anderen Software/- und/oder Hardware-Komponenten, Teile der genannten, oder eine beliebige Kombination davon umfassen. Mehrere Zonen können ein Gesamtsystem (bspw. ein ganzes Rechnersystem) bilden. Eine „Zone“ kann in manchen Beispielen in zwei oder mehr „Subzonen“ unterteilt werden, welche zusammen diese Zone bilden können. Eine „Subzone“ kann eine logisch (funktional) und/oder physisch (örtlich) abgrenzbare Teileinheit einer Zone sein. Ähnlich wie eine Zone kann eine Subzone ein oder mehrere Systemmodule oder Teile davon umfassen, die der entsprechenden Zone zugeordnet sind.A “zone” can be a logically (functionally) and/or physically (spatially) delimitable unit in a system. In other words, two or more zones are logically delimited from one another if they are separated from one another on a software basis (e.g. represent different logical models in one software), while two or more zones form physically delimitable units if they are spatially separated from one another (e.g located in different computing units or parts thereof). A zone may include one or more system modules and/or a part and/or parts of one or more system modules. A zone can be defined, i.e. determined, by its components. All system modules or parts of system modules that are assigned to a zone can form the zone. A zone can contain various computing units, computing cores, controllers, control units, storage units, peripherals, (communications) interfaces, network components, software applications, software architectures, bus systems (e.g. CAN bus systems in vehicles), all other software and/or hardware components , parts of those mentioned, or any combination thereof. Several zones can form an overall system (e.g. an entire computer system). A “zone” may, in some examples, be divided into two or more “subzones,” which together may form that zone. A “subzone” can be a logically (functionally) and/or physically (locally) delimitable sub-unit of a zone. Similar to a zone, a subzone may include one or more system modules or portions thereof associated with the corresponding zone.
Der Begriff „Systemressource“ kann jegliche Ressourcen bezeichnen, die in ihrer Gesamtheit die (mindestens teilweise) Ausführbarkeit einer oder mehrerer Funktionen des Rechnersystems für eine Vorrichtung (z.B. für ein Fahrzeug) gewährleisten. Eine „Systemressource“ kann eine Software- und/oder Hardware-Komponente sein, die Dienste für Systemmodule bereitstellt. Beispielsweise kann eine Systemressource einen oder mehrere Speicher, eine oder mehrere Peripherien (bspw. fahrzeuginterne und/oder fahrzeugexterne Peripherien), eine mit der Energieversorgung verknüpfte Systemressource oder eine beliebige Kombination davon umfassen. Der Begriff „Software-Komponente“ (oder „Software“) kann grundsätzlich jeder Teil einer Software einer Komponente (z.B. eines Steuergeräts) der vorliegenden Offenbarung sein. Insbesondere kann eine Software-Komponente eine Firmware-Komponente einer Komponente der vorliegenden Offenbarung sein. „Firmware“ ist eine Software, die die in (elektronischen) Komponenten eingebettet ist und dort grundlegende Funktionen leistet. Firmware ist funktional fest mit der jeweiligen Hardware der Komponente verbunden (so dass das eine nicht ohne das andere nutzbar ist). Sie kann in einem nicht-flüchtigen Speicher wie einem Flash-Speicher oder einem EEPROM gespeichert sein. Einer Zone der vorliegenden Offenbarung kann ein Zugriff auf eine Systemressource erlaubt oder verwehrt werden. Einer Zone kann bspw. ein Zugriff auf eine Systemressource durch ein Zugriffsrecht erlaubt werden (mehr dazu weiter unten). Eine „Systemressource“ kann einer Zone oder Subzone zugeordnet werden, oder unabhängig von der Zonenseparation in einem Rechnersystem sein, d.h. keiner Zone oder Subzone zugeordnet werden.The term “system resource” can refer to any resources that, as a whole, ensure the (at least partial) executability of one or more functions of the computer system for a device (e.g. for a vehicle). A “system resource” may be a software and/or hardware component that provides services to system modules. For example, a system resource may include one or more memories, one or more peripherals (e.g., vehicle-internal and/or vehicle-external peripherals), a system resource associated with the power supply, or any combination thereof. The term “software component” (or “software”) can in principle be any part of the software of a component (e.g. a control device) of the present disclosure. In particular, a software component may be a firmware component of a component of the present disclosure. “Firmware” is software that is embedded in (electronic) components and provides basic functions there. Firmware is functionally firmly linked to the respective hardware of the component (so that one cannot be used without the other). It may be stored in non-volatile memory such as flash memory or EEPROM. A zone of the present disclosure may be permitted or denied access to a system resource be defended. For example, a zone can be allowed access to a system resource through an access right (more on this below). A “system resource” can be assigned to a zone or subzone, or can be independent of the zone separation in a computer system, ie not assigned to a zone or subzone.
Der Begriff „Systemressource“ kann auch eine „Kommunikationsressource“ bezeichnen (z.B. ein Bus-System, insbesondere ein CAN-Bussystem in einem Fahrzeug, oder Teile davon umfassen oder ein Bus-System oder Teile davon sein), die beispielsweise Eigenschaften einer Kommunikationsverbindung über einen Übertragungspfad oder mehrere Übertragungspfade im Rechnersystem im Falle der Multipfadkommunikation (bspw. unter Verwendung von Multipfad-TCP) umfassen kann, die als Menge von Übertragungsparametern beschrieben werden kann (bspw. mittels einer Datenrate, Übertragungskapazität, Übertragungslatenz, Übertragungsbandbreite, Übertragungszuverlässigkeit oder eine beliebige Kombination davon). Die entsprechende Kommunikation kann bspw. zwischen fahrzeuginternen und/oder fahrzeugexternen Modulen/Komponenten über ein oder mehrere Funknetze, beispielsweise 5G, LTE-Mobilfunknetze oder WLAN-Netze, oder über Nahfeldkommunikationsverbindung oder Bluetooth erfolgen. Zum Beispiel können Kommunikationsressourcen Kommunikationsschnittstellen umfassen (z. B. eine oder mehrere von 12C, SPI, CAN, LIN, USB, PCIe, Bluetooth und Wi-Fi).The term “system resource” can also refer to a “communication resource” (e.g. a bus system, in particular a CAN bus system in a vehicle, or parts thereof, or be a bus system or parts thereof), which, for example, have properties of a communication connection via a Transmission path or multiple transmission paths in the computer system in the case of multi-path communication (e.g. using multi-path TCP), which can be described as a set of transmission parameters (e.g. using a data rate, transmission capacity, transmission latency, transmission bandwidth, transmission reliability or any combination thereof ). The corresponding communication can take place, for example, between vehicle-internal and/or vehicle-external modules/components via one or more radio networks, for example 5G, LTE mobile radio networks or WLAN networks, or via near-field communication connection or Bluetooth. For example, communication resources may include communication interfaces (e.g., one or more of 12C, SPI, CAN, LIN, USB, PCIe, Bluetooth, and Wi-Fi).
Ein „Speicher“ kann ein Datenspeicher oder auch ein Datenträger sein, auf/in dem Daten abgelegt (gespeichert) werden. Ein Speicher kann von einem Computer und/oder irgendeiner Art von Peripheriegerät ausgelesen oder beschrieben werden. Ein Speicher kann ein Halbleiterspeicher und/oder ein Magnetspeicher oder ein Speicher basierend auf einer hier nicht genannten Technologie sein. Ein Speicher kann ein flüchtiger Speicher und/oder nicht-flüchtiger Speicher sein. Ein Speicher kann eines von DRAM, RAM, ROM, EPROM, HDD, SDD, usw. umfassen, auf/in dem Daten gespeichert werden.A “memory” can be a data storage device or a data medium on which data is stored (stored). A memory can be read from or written to by a computer and/or some type of peripheral device. A memory can be a semiconductor memory and/or a magnetic memory or a memory based on a technology not mentioned here. A memory may be volatile memory and/or non-volatile memory. A memory may include one of DRAM, RAM, ROM, EPROM, HDD, SDD, etc. on which data is stored.
Eine „Peripherie“ kann eine Komponente sein, die an eine (zentrale) Recheneinheit angeschlossen werden kann. Eine solche Komponente kann die Steuerung durch die Recheneinheit und gegebenenfalls einer Initialisierung bedürfen. Eine Komponente kann eine „Fahrzeugkomponente“ sein. Eine Peripherie kann ein Teil eines Rechners bzw. eines Computers umfassen, der Funktionalitäten bietet, die nicht durch einen Rechenkern selbst, sondern von einer zusätzlichen Hardware bereitgestellt werden können. Zum Beispiel kann eine Peripherie ein Analog-Digital-Umsetzer (engl. Analog-to-Digital-Converter (ADC)), eine Safety-bezogene Peripherie, eine Security-bezogene Peripherie (MPU, MMU oder andere), ein Zeitgeber (Timer) oder eine Schnittstelle, wie beispielsweise eine SPI-Schnittstelle (engl. Serial Peripheral Interface) oder eine andere oben erwähnte Schnittstelle umfassen.A “periphery” can be a component that can be connected to a (central) computing unit. Such a component may require control by the computing unit and, if necessary, initialization. A component can be a “vehicle component”. A peripheral can include a part of a computer or a computer that offers functionalities that cannot be provided by a computing core itself, but by additional hardware. For example, a peripheral can be an analog-to-digital converter (ADC), a safety-related peripheral, a security-related peripheral (MPU, MMU or others), a timer. or an interface such as a Serial Peripheral Interface (SPI) or other interface mentioned above.
Unter dem Begriff „Fahrzeugkomponente“ werden jegliche internen Komponenten eines Fahrzeugs verstanden. Eine Fahrzeugkomponente kann ein Motor sein (z.B. ein Verbrennungsmotor, ein Elektromotor, ein Hybridmotor oder eine Brennstoffzelle oder Teile eines Motors wie ein Turbolader), eine Steuervorrichtung (z.B. eine Motorsteuerung), eine Batterie oder andere energieaufnehmende Systeme, Komponenten eines Antriebstrangs (z.B. ein Getriebe), Assistenzsysteme (z.B. Brems-Assistenten, Spurhalte-Assistenten, Park-Assistenten), Klimatisierungs-Systeme, Sensoren oder Sensorsysteme (z.B. Kamera-basierte Systeme, LIDAR-Systeme, RADAR-Systeme, Ultraschallsensor-Systeme) oder elektronische Systeme zur Kontrolle von Funktionen des Innenraums. Eine Fahrzeugkomponente kann auch ein Teil der oben beschriebenen Systeme oder eine Kombination von mehreren der oben beschriebenen Systeme (oder Teile derer) sein.The term “vehicle component” refers to any internal components of a vehicle. A vehicle component can be an engine (e.g. an internal combustion engine, an electric motor, a hybrid engine or a fuel cell or parts of an engine such as a turbocharger), a control device (e.g. an engine controller), a battery or other energy-absorbing systems, components of a drive train (e.g. a transmission ), assistance systems (e.g. brake assistants, lane keeping assistants, parking assistants), climate control systems, sensors or sensor systems (e.g. camera-based systems, LIDAR systems, RADAR systems, ultrasonic sensor systems) or electronic systems for controlling Interior functions. A vehicle component can also be a part of the systems described above or a combination of several of the systems described above (or parts thereof).
Ein „Rechnersystem“ der vorliegenden Offenbarung kann einen (bspw. zentralen) Fahrzeugrechner (engl. „Vehicle Computer“) umfassen (z.B. kann ein Fahrzeugrechner das Rechnersystem bilden). Das Rechnersystem kann Systeme innerhalb eines Fahrzeuges (bspw. Systemmodule und/oder Fahrzeugkomponente im weiter oben definierten Sinne) umfassen. In manchen Fällen kann das Rechnersystem auch Systeme außerhalb des Fahrzeuges (bspw. fahrzeugexterne Peripherien, Datenwolken-Systeme, andere Komponenten, oder eine beliebige Kombination davon) umfassen. Bei einem „Fahrzeugrechner“ handelt es sich in diesem Zusammenhang um eine Klasse von hochintegrierten elektronischen Fahrzeug-Steuergeräten, die sich durch eine vielfach höhere Rechenleistung im Vergleich zu ECUs auf Mikrokontroller-Basis auszeichnen. VCs sind mit wenigstens einem Mikroprozessor und einer Kommunikationsschnittstelle ausgeführt. Zudem kann ein Fahrzeugrechner einen oder mehrere physikalische oder virtuelle Switches, ein System-on-a-Chip (SoC)-Hardware mit mehreren CPU-Kernen, Co-Prozessoren sowie mit leistungsfähigen Grafikkarten beinhalten, auf denen beispielweise mittels Hypervisors mehrere virtuelle Maschinen verschiedene Betriebssysteme ausführen, die über einen virtuellen Switch (z.B. im Hypervisor implementiert) verbunden sind. Alternativ oder zusätzlich können VCs Containertechnologien verwenden, die auf das Erzeugen eines Containers basieren, um virtuelle Ressourcen bereitzustellen. Auf VCs läuft in der Regel komplexe Software für unterschiedlichste Aufgaben mit unterschiedlichsten Anforderungen, insbesondere für zeitkritische und sicherheitskritische Funktionen. VCs kommunizieren mit anderen Systemen im Fahrzeug, insbesondere mit Fahrzeugkomponenten, Benutzerschnittstellen, sowie mit anderen VCs oder ECUs (jede Kombination dieser Alternativen ist ebenfalls denkbar). Zudem können VCs mit fahrzeugexternen Systemen kommunizieren, wie z.B. mit Cloud-Systemen, Smartphones, Ladeinfrastruktur, Verkehrsleittechnik oder anderen Fahrzeugen. Darüber hinaus kann das Rechnersystem ein Bus-System enthalten, mit dem mehrere logische/physische Kommunikationsverbindungen zwischen verschiedenen Bestandteilen des Rechnersystems realisiert werden können (bspw. mittels entsprechender physikalischer Kommunikationskanäle). Ein mögliches Beispiel für ein solches Bus-System im Fahrzeugbereich ist das Controller Area Network Bussystem (CAN-Bussystem).A “computer system” of the present disclosure may include a (e.g., central) vehicle computer (e.g., a vehicle computer may form the computer system). The computer system can include systems within a vehicle (e.g. system modules and/or vehicle components in the sense defined above). In some cases, the computer system can also include systems outside the vehicle (e.g. peripherals external to the vehicle, data cloud systems, other components, or any combination thereof). In this context, a “vehicle computer” is a class of highly integrated electronic vehicle control devices that are characterized by a much higher computing power compared to microcontroller-based ECUs. VCs are designed with at least one microprocessor and a communication interface. In addition, a vehicle computer can contain one or more physical or virtual switches, a system-on-a-chip (SoC) hardware with several CPU cores, co-processors and powerful graphics cards on which, for example, several virtual machines run different operating systems using hypervisors that are connected via a virtual switch (e.g. implemented in the hypervisor). Alternatively or additionally, VCs can use container technologies that rely on creating a container to provide virtual resources. VCs usually run complex software for a wide variety of tasks with a wide variety of requirements, especially for time-critical and safety-critical functions. VCs communicate with others Systems in the vehicle, in particular with vehicle components, user interfaces, as well as with other VCs or ECUs (any combination of these alternatives is also conceivable). In addition, VCs can communicate with systems external to the vehicle, such as cloud systems, smartphones, charging infrastructure, traffic control technology or other vehicles. In addition, the computer system can contain a bus system with which several logical/physical communication connections can be implemented between different components of the computer system (e.g. using appropriate physical communication channels). A possible example of such a bus system in the vehicle sector is the Controller Area Network bus system (CAN bus system).
In anderen Fällen kann „ein Rechnersystem“ ein eingebettetes System (engl. Embedded System) umfassen (z.B. kann ein eingebettetes System das Rechnersystem bilden). Ein eingebettetes System ist ein elektronischer Rechner oder Computer, der in einen technischen Kontext eingebunden ist. Ein eingebettetes System kann dabei Regel-, Steuer-, Überwachungsfunktionen, oder Aufgaben zur Datenverarbeitung ausführen. In wieder anderen Beispielen (oder zusätzlich) kann „das Rechnersystem“ eine oder mehrere Steuergeräte (engl. ECU) umfassen (z.B. können ein oder mehrere Steuergeräte das Rechnersystem bilden).In other cases, “a computer system” may include an embedded system (e.g. an embedded system may constitute the computer system). An embedded system is an electronic calculator or computer that is integrated into a technical context. An embedded system can carry out regulation, control, monitoring functions or data processing tasks. In yet other examples (or in addition), “the computer system” may include one or more control units (ECU) (e.g. one or more control units may form the computer system).
Eine „Funktion“ kann jede Aufgabe (oder Teilaufgabe) sein, die im Betrieb einer Vorrichtung ausgeführt wird. Eine Funktion kann die Steuerung, Regelung oder Überwachung der Vorrichtung oder eines Teils der Vorrichtung (z.B. einer Komponente der Vorrichtung) betreffen. Zusätzlich oder alternativ kann eine Funktion die Daten- oder Signalverarbeitung in der Vorrichtung betreffen (z.B. eine Kommunikationsfunktion). Der Begriff „Funktion“ im Fahrzeugbereich umfasst steuerungsbasierte Funktionen eines Fahrzeuges, beispielsweise Funktionen von Fahr- oder Parkassistenzsystemen, Funktionen für das autonome oder teilautonome Fahren, Funktionen eines Entertainmentsystems sowie Funktionen für den Empfang, die Übertragung und Speicherung verschiedener Daten zwischen unterschiedlichen Systemen (bspw. Systemmodulen und/oder Fahrzeugkomponenten) des Rechnersystems (oder eine beliebige Kombination der oben genannten Funktionen). Im Rahmen der vorliegenden Offenbarung sind auch Funktionen in Verbindung mit Klimatisierungssystemen und/oder elektronischen Systemen zur Kontrolle von Funktionen des Innenraums denkbar. Für die Ausführbarkeit der Funktion kann ein entsprechendes „Systemmodul“ zuständig sein, welche bspw. mit entsprechenden anderen Systemen, z.B. Komponenten (bspw. Fahrzeugkomponenten), anderen Systemmodulen innerhalb des Fahrzeuges oder fahrzeugexterne Funktionseinheiten (wie oben bereits erwähnt) oder eine Kombination davon kommunizieren kann.A “function” can be any task (or subtask) that is performed in the operation of a device. A function can relate to the control, regulation or monitoring of the device or a part of the device (e.g. a component of the device). Additionally or alternatively, a function may relate to data or signal processing in the device (e.g. a communication function). The term “function” in the vehicle sector includes control-based functions of a vehicle, for example functions of driving or parking assistance systems, functions for autonomous or semi-autonomous driving, functions of an entertainment system as well as functions for receiving, transmitting and storing various data between different systems (e.g. System modules and/or vehicle components) of the computer system (or any combination of the above functions). Within the scope of the present disclosure, functions in connection with air conditioning systems and/or electronic systems for controlling functions of the interior are also conceivable. A corresponding “system module” can be responsible for the executability of the function, which can, for example, communicate with corresponding other systems, e.g. components (e.g. vehicle components), other system modules within the vehicle or functional units external to the vehicle (as already mentioned above) or a combination thereof .
Eine „Softwarearchitektur“ kann eine strukturierte und/oder hierarchische Anordnung der Systemkomponenten sowie Beschreibung ihrer Beziehungen in einem Softwaresystem sein, wobei Systemkomponenten Softwareteile sein können, deren Beziehungen zueinander und deren Eigenschaften durch die Softwarearchitektur beschrieben werden können. Beispielsweise ist die Softwarearchitektur der „AUTOSAR“ (Automotive Open System Architecture) eine offene und standardisierte Softwarearchitektur für elektronische Steuergeräte (ECUs) im Automobilbereich. Zum Beispiel sind die „AUTOSAR Classic Plattform“ und die „AUTOSAR Adaptive Plattform“ zwei verschiedene Softwarearchitekturen.A “software architecture” can be a structured and/or hierarchical arrangement of the system components and a description of their relationships in a software system, whereby system components can be software parts whose relationships to one another and whose properties can be described by the software architecture. For example, the software architecture of “AUTOSAR” (Automotive Open System Architecture) is an open and standardized software architecture for electronic control units (ECUs) in the automotive sector. For example, the “AUTOSAR Classic Platform” and the “AUTOSAR Adaptive Platform” are two different software architectures.
Ein „Sicherheitsmodul“ (bspw. ein zentrales „Sicherheitsmodul“) kann eine Komponente zur Erkennung von Verstößen gegen Vorschriften über die Zuordnung (oder anders ausgedrückt „über die Zuteilung“) von (zugewiesenen) Systemressourcen für die jeweiligen Zonen (einschließlich z.B. Systemmodulen) sein. Ferner kann das Sicherheitsmodul der vorliegenden Offenbarung dem Zweck einer zentralisierten Ansammlung und Verarbeitung festgestellter Verstöße dienen (mehr dazu weiter unten). Das Sicherheitsmodul kann eine Hardwareeinheit sein, welche über eigenen Speicher, eine vorkonfigurierte Hardware-Logik, ein oder mehrere Register und eine interne Datenverbindung verfügen kann. (Ein Register kann bspw. Speicherbereiche enthalten oder diese beschreiben.) Zudem kann ein Sicherheitsmodul jeweilige logische und/oder physische Verbindungen zu den Zonen (einschließlich z.B. Systemmodulen) umfassen. In diesem Zusammenhang kann ein Sicherheitsmodul eine oder mehrere Schnittstellen nach außen aufweisen, z.B. zu den Zonen, zu einem Rechenkern, zu einer oder mehreren Kommunikationsverbindungen oder einer beliebigen Kombination davon. Ein Sicherheitsmodul kann Teil eines Prozessors (engl. Central Processing Unit, CPU) sein. In manchen Fällen kann das Sicherheitsmodul in einen Fahrzeugrechner integriert sein oder als eigenständige Komponente (bspw. fahrzeuginterne- oder fahrzeugexterne Komponente) konzipiert sein, die bspw. mit dem Fahrzeugrechner kommuniziert (im letzteren Fall kann das Rechnersystem der vorliegenden Offenbarung den Fahrzeugrechner und das Sicherheitsmodul umfassen). Das Sicherheitsmodul kann über entsprechende Kommunikationsprotokolle nach außen kommunizieren (z.B. mit Systemmodulen, Komponenten, anderen Bestandeilen eines Rechnersystems oder einer beliebigen Kombination davon).A “security module” (e.g. a central “security module”) may be a component for detecting violations of regulations on the allocation (or in other words “on the allocation”) of (assigned) system resources for the respective zones (including, for example, system modules). . Further, the security module of the present disclosure may serve the purpose of centralized collection and processing of detected violations (more on this below). The security module can be a hardware unit, which can have its own memory, preconfigured hardware logic, one or more registers and an internal data connection. (For example, a register can contain or describe memory areas.) In addition, a security module can include respective logical and/or physical connections to the zones (including, for example, system modules). In this context, a security module can have one or more interfaces to the outside, e.g. to the zones, to a computing core, to one or more communication connections or any combination thereof. A security module can be part of a processor (Central Processing Unit, CPU). In some cases, the security module may be integrated into a vehicle computer or designed as a stand-alone component (e.g. vehicle-internal or vehicle-external component) which, for example, communicates with the vehicle computer (in the latter case, the computer system of the present disclosure may include the vehicle computer and the security module ). The security module can communicate externally via appropriate communication protocols (e.g. with system modules, components, other components of a computer system or any combination thereof).
Ein „Domänencontroller“ kann eine in Hardware umgesetzte Peripherie umfassen und Zugriffsrechte zum Beispiel für Speicher und/oder externe Peripherien verwalten. Ein Domänencontroller kann verschiedene Peripherien segregieren und/oder den Speicher eines Systems protektieren, wobei eine Domäne eines Domänencontrollers ein zusammenhängender Bereich sein kann, der gleiche Zugriffsrechte auf Peripherien und/oder Speicher hat. Ein Domänencontroller kann bspw. ein Extended Ressource Domain Controller (XRDC) sein, der eine in Hardware umgesetzte Peripherie des S32G274A-Prozessors ist. Der letztere ist ein hoch Performanter Vehicle-Network-Prozessor der S32G2-Familie des Halbleiterherstellers NXP und stellt ein System-on-Chip (SoC) dar, welcher einen Mikrokontroller (µC) und Mikroprozessoranteile (µP-Anteile) umfasst.A “domain controller” can include peripherals implemented in hardware and access rights, for example to memory and/or external Manage peripherals. A domain controller can segregate various peripherals and/or protect the memory of a system, whereby a domain of a domain controller can be a contiguous area that has equal access rights to peripherals and/or memory. A domain controller can be, for example, an Extended Resource Domain Controller (XRDC), which is a hardware-implemented peripheral of the S32G274A processor. The latter is a high-performance vehicle network processor from the S32G2 family from the semiconductor manufacturer NXP and represents a system-on-chip (SoC) that includes a microcontroller (µC) and microprocessor components (µP components).
Ein „Rechenkern“ meint den zentralen Teil eines Mikroprozessors, wobei auch mehrere Rechenkerne in einem Mikroprozessor vorhanden sein können. Ein Rechenkern kann an eingegebenen Daten und/oder Informationen arithmetisch und/oder logische Operationen durchführen.A “computing core” means the central part of a microprocessor, although several computing cores can also be present in a microprocessor. A computing core can perform arithmetic and/or logical operations on input data and/or information.
Ein „Fahrzeug“ kann jegliche Vorrichtung, die Passagiere und/oder Fracht transportiert, sein. Ein Fahrzeug kann ein Kraftfahrzeug (zum Beispiel ein PKW oder ein LKW) sein, aber auch ein Schienenfahrzeug. Ein Fahrzeug kann auch ein motorisiertes, nicht motorisiertes und/oder ein muskelkraftbetriebenes Zwei- oder Dreirad sein. Allerdings können auch schwimmende und fliegende Vorrichtungen Fahrzeuge sein. Fahrzeuge können autonom operierend oder zumindest teilautonom operierend oder assistiert sein. Zum Beispiel kann das Fahrzeug in der vorliegenden Offenbarung einen teil- oder vollautonomen Roboter (z.B. einen Industrieroboter) umfassen.A “vehicle” can be any device that transports passengers and/or cargo. A vehicle can be a motor vehicle (for example a car or a truck), but also a rail vehicle. A vehicle can also be a motorized, non-motorized and/or a human-powered two- or three-wheeler. However, floating and flying devices can also be vehicles. Vehicles can operate autonomously or at least partially autonomously or be assisted. For example, in the present disclosure, the vehicle may include a partially or fully autonomous robot (e.g., an industrial robot).
Kurzbeschreibung der FigurenShort description of the characters
-
1 zeigt schematisch eine beispielhafte Ausführungsform eines Rechnersystems 100 gemäß dem ersten Aspekt zur Bereitstellung einer Mehrzahl von Funktionen für eine Vorrichtung mittels Separation einer Mehrzahl von Zonen. Das Rechnersystem der1 umfasst vier Zonen 20-23 (gestrichelte Kästen), sechs Systemmodule 30-35 und ein Sicherheitsmodul 10. Außerdem sind in dieser Figur zwei Recheneinheiten 40, 41 und fünf Schnittstellen 50-54 dargestellt.1 schematically shows an exemplary embodiment of acomputer system 100 according to the first aspect for providing a plurality of functions for a device by separating a plurality of zones. The computer system of the1 includes four zones 20-23 (dashed boxes), six system modules 30-35 and asecurity module 10. Two computing 40, 41 and five interfaces 50-54 are also shown in this figure.units -
2 illustriert eine beispielhafte Ausführungsform des Rechnersystems (einfachheitshalber ohne die dritte Zone 22), das zusätzlich zum Ausführungsbeispiel von1 über Peripherien 60, 61, zwei Speicher 62, 63 und einen Domänencontroller 70 verfügt.2 illustrates an exemplary embodiment of the computer system (for simplicity without the third zone 22), which is in addition to the embodiment of1 has 60, 61, twoperipherals 62, 63 and amemories domain controller 70. -
3a ist ein Flussdiagramm, das ein Ausführungseispiel für ein computerimplementiertes Verfahren zeigt, das durch ein Rechnersystem gemäß dem ersten Aspekt bereitgestellt wird (bspw. unter Verwendung eines in1 oder2 gezeigten Rechnersystems).3b stellt ein Flussdiagramm dar, das weitere mögliche Verfahrensschritte gemäß dem zweiten Aspekt zeigt.3a is a flowchart showing an exemplary embodiment of a computer-implemented method provided by a computer system according to the first aspect (e.g. using a in1 or2 computer system shown).3b represents a flowchart that shows further possible method steps according to the second aspect.
Detaillierte BeschreibungDetailed description
Zunächst werden anhand von
Ein erster allgemeiner Aspekt betrifft ein Rechnersystem 100 (bspw. einen Fahrzeugrechner) zur Bereitstellung einer Mehrzahl von Funktionen für eine Vorrichtung, insbesondere für ein Fahrzeug (bspw. ein autonom oder teilautonom operierendes Fahrzeug), wobei das Rechnersystem eine Mehrzahl von Systemmodulen 30-35 (bspw. Hardware- und/oder Software-Einheiten, wie oben bereits erwähnt), eine Mehrzahl von Systemressourcen 60-63 (bspw. Speicher, fahrzeuginterne und/oder fahrzeugexterne Peripherien, Kommunikationsressourcen, wie z.B. ein ganzes oder einen Teil eines Bus-Systems, siehe obige Diskussionen) und ein Sicherheitsmodul 10 aufweist (mögliche Ausführungsbespiele eines solchen Rechnersystems 100 sind in den
In den vorliegenden Techniken ist eine erste Anzahl von Systemmodulen 30, 31 und/oder Teilen von Systemmodulen der Mehrzahl von Systemmodulen einer ersten Zone 20 aus einer Mehrzahl von Zonen 20-23 zugeordnet. Darüber hinaus ist eine zweite Anzahl von Systemmodulen 32 und/oder Teilen von Systemmodulen der Mehrzahl von Systemmodulen einer zweiten Zone 21 aus der Mehrzahl von Zonen zugeordnet. Dabei ist eine Zone eine logisch und/oder physisch abgrenzbare Einheit in dem Rechnersystem (wie weiter oben definiert). Beispielsweise können in dem Rechnersystem 100 eine oder mehr, zwei oder mehr, drei oder mehr, vier oder mehr, fünf oder mehr, sechs oder mehr, zehn oder mehr, zwanzig oder mehr, fünfzig oder mehr, einhundert oder mehr Zonen separiert werden. In einem nicht einschränkenden Beispiel von
In manchen Fällen können in einer Zone eine oder mehr, zwei oder mehr, drei oder mehr, vier oder mehr, fünf oder mehr, sechs oder mehr, zehn oder mehr, zwanzig oder mehr, fünfzig oder mehr, einhundert oder mehr Systemmodule (z.B. Prozessoren oder andere Realisierungen von Systemmodulen gemäß den obigen Definitionen) oder Teile davon (z.B. Rechenkerne) angeordnet sein. Zum Beispiel kann die erste Zone 20 einen Teil (z.B. zwei Rechenkerne) der mehreren Rechenkerne eines Prozessors (z.B. vier Rechenkerne) umfassen und die zweite Zone 21 kann einen anderen Teil (z.B. zwei verbleibende Rechenkerne) der mehreren Rechenkerne des Prozessors umfassen (in den Figuren nicht gezeigt). Beispielsweise kann auf einem Rechenkern des Prozessors, der der ersten Zone 20 zugeordnet ist, eine erste Softwareapplikation ausgeführt werden und auf mindestens einem Rechenkern, der der zweiten Zone 21 zugeordnet ist, eine zweite Softwareapplikation ausgeführt werden. In manchen Beispielen kann eine Zone Schnittstellen, Bussysteme oder Teile derselben umfassen. In
In den Techniken der vorliegenden Offenbarung ist der ersten Zone 20 eine erste Anzahl von Systemressourcen 60-62 (bspw. Software- und/oder Hardware-Komponente) aus der Mehrzahl von Systemressourcen 60-63 zugeordnet. Zudem ist der zweiten Zone 21 der Mehrzahl von Zonen eine zweite Anzahl von Systemressourcen 62, 63 aus der Mehrzahl von Systemressourcen zugeordnet. In manchen Fällen kann sich die zweite Anzahl von Systemressourcen 62 von der ersten Anzahl der Mehrzahl von Systemressourcen unterscheiden. Wie oben bereits besprochen, können „Systemressourcen“ entsprechende Dienste für Systemmodule bereitstellen und sind bspw. für die Ausführbarkeit einer oder mehrerer Funktionen des Rechnersystems erforderlich. Dabei kann die zweite Anzahl von Systemressourcen 62, 63 eingeschränkter sein als die erste Anzahl von Systemressourcen 60-62. Zum Beispiel kann die zweite Anzahl von Systemressourcen weniger Systemressourcen umfassen als die erste Anzahl von Systemressourcen. Alternativ oder zusätzlich kann die zweite Zone 21 weniger Zugriffsrechte auf dieselben oder andere Systemressourcen besitzen, wie im Folgenden genauer erläutert wird. In einem nicht einschränkenden Beispiel von
Das Sicherheitsmodul 10 der vorliegenden Offenbarung ist dazu ausgelegt, um Verstöße gegen Vorschriften über die Zuordnung der ersten Anzahl von Systemressourcen 60-62 der Mehrzahl von Systemressourcen für die erste Zone 20 und gegen Vorschriften über die Zuordnung der zweiten Anzahl von Systemressourcen 62, 63 der Mehrzahl von Systemressourcen für die zweite Zone 21 zu erkennen. Wie weiter unten erläutert, können bspw. die erste und/oder die zweite Zone (bspw. Systemmodule, die diesen Zonen zugeordnet sind) aufgrund eines externen Eingriffs (oder anderes ausgedrückt: ein Eindringen von außen) auf eine unerlaubte Systemressource zugreifen (bspw. kann die erste Zone 20 schreibend auf den Speicher 62 zugreifen, obwohl diese Zone nur lesend auf den Speicher zugreifen darf, mehr dazu weiter unten). Des Weiteren kann das Sicherheitsmodul 10 dazu ausgelegt sein, um Verstöße gegen Vorschriften über die Zuordnung von Systemressourcen für die anderen Zonen zu erkennen (bspw. für alle verbleibenden Zonen, wie für die dritte und vierte Zonen 22, 23 der
Im Rechnersystem 100 des ersten Aspekts kann die erste Zone 20 vertrauenswürdiger sein als die zweite 21, weniger vertrauenswürdige Zone, wobei die Gefahr einer Manipulation einer vertrauenswürdigeren Zone geringer ist als einer weniger vertrauenswürdigen Zone. Eine Manipulation kann dabei einen externen Eingriff (oder anders ausgedrückt: ein Eindringen von außen bspw. einen Cyberangriff) umfassen, der die Betriebssicherheit der Vorrichtung reduziert. Des Weiteren kann in manchen Fällen eine dritte Zone 22 der Mehrzahl von Zonen vertrauenswürdiger als oder gleich vertrauenswürdig wie die erste Zone 20 sein. In anderen Fällen kann die dritte Zone 22 vertrauenswürdiger als oder gleich vertrauenswürdig wie die zweite Zone 21 und weniger vertrauenswürdig als die erste Zone sein. In noch weiteren Fällen kann die dritte Zone 22 weniger vertrauenswürdig als die zweite Zone 21 und die erste Zone 20 sein. Auf diese Weise können auch andere Zonen (bspw. alle Zonen) der Mehrzahl von Zonen eingestuft werden, wie vertrauenswürdig sie im Verhältnis zueinander sind.In the
Inwiefern eine Zone der Mehrzahl von Zonen vertrauenswürdiger oder weniger vertrauenswürdig ist, das heißt der Grad einer Vertrauenswürdigkeit, kann auf einer Einteilung von Zonen 20-23 anhand eines Sicherheitslevels („Security-Level“) basieren. Das Rechnersystem der vorliegenden Offenbarung kann mindestens zwei Sicherheitslevels haben, aber auch mehr als zwei Sicherheitslevels (z.B. mehr als fünf). Der Grad der Vertrauenswürdigkeit bzw. das Sicherheitslevel kann durch die Konfiguration der entsprechenden Zone (bspw. der darin enthaltenen Systemmodule) bestimmt sein. Beispielsweise kann der Grad der Absicherung, bzw. der Umfang von Absicherungsmaßnahmen, mit denen die Systemmodule einer Zone 20-23 zum Beispiel vor Manipulation beispielsweise im Rahmen eines externen Eingriffs, geschützt wird, bestimmen, ob eine Zone 20-23 vertrauenswürdiger oder weniger vertrauenswürdig ist bzw. welches Sicherheitslevel sie hat (z.B. das Vorhandensein bestimmter Hardware- und/oder Software-basiertes Absicherungsmaßnahmen in den Systemmodulen der Zone). Weiter kann zum Beispiel der Umfang der Kommunikation der Systemmodule, die in der entsprechenden Zone angeordnet sind, mit externen Systemen, wie zum Beispiel einem Backend, bestimmen, welchen Grad der Vertrauenswürdigkeit eine Zone aufweist bzw. welches Sicherheitslevel sie hat. Beispielsweise kann eine Zone, die überwiegend oder ausschließlich innerhalb des Rechnersystems kommuniziert, vertrauenswürdiger sein, als eine Zone, die zumindest teilweise mit externen Systemen (z.B. einem Backend, anderen Vorrichtungen wie Fahrzeugen oder Infrastruktur-Komponenten) kommuniziert.The extent to which a zone of the majority of zones is more or less trustworthy, i.e. the degree of trustworthiness, can be based on a classification of zones 20-23 based on a security level. The computer system of the present disclosure may have at least two security levels, but also more than two security levels (e.g. more than five). The degree of trustworthiness or the security level can be determined by the configuration of the corresponding zone (e.g. the system modules it contains). For example, the level of security or the extent of security measures with which the system modules of a zone 20-23 are protected against manipulation, for example as part of an external intervention, can determine whether a zone 20-23 is more trustworthy or less trustworthy or what security level it has (e.g. the presence of certain hardware and/or software-based security measures in the zone's system modules). Furthermore, for example, the extent of communication between the system modules, which are arranged in the corresponding zone, with external systems, such as a backend, can determine what level of trustworthiness a zone has or what security level it has. For example, a zone that communicates predominantly or exclusively within the computer system may be more trustworthy than a zone that communicates at least partially with external systems (e.g. a backend, other devices such as vehicles or infrastructure components).
In manchen Beispielen können die Zonen bezüglich ihrer Vertrauenswürdigkeit in nicht-vertrauenswürdige Zonen und vertrauenswürdige Zonen eingeteilt werden. Zwei Zonen 20, 21, wie hierin beschrieben, können zum Beispiel vertrauenswürdig sein und eine weniger vertrauenswürdige dritte Zone 22 kann zum Beispiel nichtvertrauenswürdig sein (siehe
In den vorliegenden Techniken können die von der Systemmodulen bereitgestellten Funktionen für die Betriebssicherheit der Vorrichtung unterschiedlich kritisch sein. Eine erste kritischere Funktion der Mehrzahl von Funktionen kann durch ein Systemmodul 30, 31 der ersten Zone 20 und eine zweite weniger kritische Funktion der Mehrzahl von Funktionen durch ein Systemmodul 32 der zweiten Zone 21 bereitgestellt werden. In manchen Fällen können zwei oder mehr Systemmodule (bspw. alle Systemmodule) der zweiten Zone entsprechende Funktionen bereitstellen, welche weniger kritisch sind als alle Funktionen, die von den Systemmodulen der ersten Zone bereitgestellt werden. Neben der Einteilung der Zonen 20-23 nach einem Grad der Vertrauenswürdigkeit also einem Sicherheitslevel, sind die Zonen also zudem bezüglich der Relevanz für die Betriebssicherheit (z.B. mittels eines Sicherheitslevels oder „Safety-Level"), das heißt die Kritikalität der Funktion der Zone für die Betriebssicherheit der Vorrichtung, klassifiziert. Eine Zone 20, deren Manipulation zu einer schwerwiegenden Gefahrensituation führen kann, ist dabei kritischer als eine Zone 21, deren Manipulation zu keiner schwerwiegenden Gefahrensituation oder zu einer weniger schwerwiegenden Gefahrensituation führen kann. Zum Beispiel kann eine Zone 21, die Multimedia-Funktionen umfasst, weniger kritisch sein als eine Zone 20, die zum Beispiel eine Bremsfunktion umfasst. Im voranstehenden Beispiel ist die Wahrscheinlichkeit, dass durch das Ausfallen der Musik im Innenraum eines Fahrzeugs eine Gefahrensituation erzeugt wird, weniger hoch als die Wahrscheinlichkeit, dass ein Nichtfunktionieren der Bremsen eines Fahrzeugs eine Gefahrensituation hervorrufen kann. Zudem kann eine Zone 23, der das Sicherheitsmodul 10 zugewiesen ist, kritischer sein als eine oder mehrere (bspw. alle) andere Zonen der Mehrzahl von Zonen. Zurück zu dem Beispiel von
In der vorliegenden Offenbarung können eine oder mehrere vertrauenswürdigere Zonen 20, 21 auf einer ersten Recheneinheit 40 des Rechnersystems gebildet sein und eine oder mehrere weniger vertrauenswürdige Zonen 22 auf einer zweiten Recheneinheit 41 des Rechnersystems gebildet sein.
In den vorliegenden Techniken können den Zonen aus der Mehrzahl von Zonen entsprechende Zugriffsrechte auf Systemressourcen zugewiesen sein. Mit anderen Worten: einer Zone kann ein Zugriff auf eine Systemressource verwehrt oder durch ein Zugriffsrecht erlaubt werden. Die Zugriffsrechte können einen erlaubten lesenden, schreibenden, ausführenden Zugriff oder eine beliebige Kombination davon einer Zone auf eine entsprechende Systemressource umfassen. In manchen Fällen können ein oder mehrere einer Zone zugewiesene Zugriffsrechte im Laufe der Zeit unverändert bleiben (z.B. kann das Zugriffsrecht vor dem Betrieb des Rechnersystems oder während seines Betriebs vordefiniert werden). In anderen Fällen können sich ein oder mehrere einer Zone zugewiesene Zugriffsrechte im Laufe der Zeit ändern (z.B. es ist einer Zone beim Starten des Rechnersystem erlaubt, eine Systemressource lesend zu benutzen, während es dieser Zone zu einem anderen Zeitpunkt erlaubt wird, dieselbe Systemressource lesend und schreibend zu benutzen). In einem Beispiel kann ein Zugriff für eine Zone auf eine Systemressource als erlaubt eingestuft werden, wenn ein vorbestimmtes Kriterium erfüllt ist. Zudem kann der Zugriff für dieselbe Zone auf die Systemressource als unerlaubt eingestuft werden, wenn das vorbestimmte Kriterium nicht erfüllt ist. Bei dem vorbestimmten Kriterium kann es sich um ein Kriterium handeln, das sich auf Kontext-Informationen der Vorrichtung und/oder einer Vielzahl von Vorrichtungen bezieht, z.B. auf Kontext-Informationen eines Fahrzeugs (oder seiner Fahrzeugkomponenten) und/oder einer Fahrzeugflotte. Zum Beispiel können die Kontext-Informationen des Fahrzeugs (oder seine Fahrzeugkomponenten) Informationen über einen Betriebszustand des Fahrzeugs (oder seine Fahrzeugkomponenten) und/oder über vorbestimmte Regeln zum Betrieb des Fahrzeugs (oder seine Fahrzeugkomponenten) umfassen. (Diese Definition kann in ähnlicher Weise auf die gesamte Fahrzeugflotte ausgedehnt werden.) In einem anderen Beispiel kann das vorbestimmte Kriterium erfordern, dass eine zu erwartende Anzahl von Nachrichten, die in einem vorbestimmten Zeitraum von einer Zone gesendet wird (bspw. über ein CAN-Bussystem), kleiner oder gleich einem vorbestimmten Wert sein muss (oder größer oder gleich einem vorbestimmten Wert sein muss). In weiteren Beispielen kann das vorgegebene Kriterium eine vorgegebene Reihenfolge, in der die Daten aus der Zone gesendet werden, und/oder einen vorgegebenen Bereich, der in den gesendeten Daten eines bestimmten Typs enthalten ist (bspw. ein Wert liegt zwischen einem vorbestimmten Wert und einem anderen vorbestimmten Wert und/oder ein vorbestimmtes Muster ist darin enthalten), umfassen. In noch anderen Beispielen kann das vorbestimmte Kriterium eines oder mehrere oben genannten Kriterien umfassen.In the present techniques, zones among the plurality of zones may be assigned corresponding access rights to system resources. In other words, a zone can be denied access to a system resource or allowed through an access right. The access rights can include permitted read, write, execute access or any combination thereof of a zone to a corresponding system resource. In some cases, one or more access rights assigned to a zone may remain unchanged over time (e.g., the access right may be predefined before the operation of the computer system or during its operation). In other cases, one or more access rights assigned to a zone may change over time (e.g., a zone is permitted to read a system resource at startup of the computer system, while at another time that zone is permitted to read the same system resource). to use writing). In one example, access for a zone to a system resource may be classified as permitted if a predetermined criterion is met. In addition, access for the same zone to the system resource can be classified as unauthorized if the predetermined criterion is not met. The predetermined criterion can be a criterion that relates to contextual information of the device and/or a plurality of devices, e.g. to contextual information of a vehicle (or its vehicle components) and/or a vehicle fleet. For example, the contextual information of the vehicle (or its vehicle components) may include information about an operating state of the vehicle (or its vehicle components) and/or about predetermined rules for operating the vehicle (or its vehicle components). (This definition can similarly be extended to the entire vehicle fleet.) In another example, the predetermined criterion may require that an expected number of messages be sent in a predetermined period of time from a zone (e.g. over a CAN Bus system), must be less than or equal to a predetermined value (or must be greater than or equal to a predetermined value). In further examples, the predetermined criterion may be a predetermined order in which the data is sent from the zone and/or a predetermined range included in the sent data of a particular type (e.g. a value is between a predetermined value and a another predetermined value and/or a predetermined pattern is included therein). In still other examples, the predetermined criterion may include one or more criteria mentioned above.
In manchen Fällen können der zweiten Zone weniger Zugriffsrechte auf die zweite Anzahl von Systemressourcen zugewiesen werden als der ersten Zone auf die erste Anzahl von Systemressourcen. Zurück zu dem Beispiel von
In manchen Beispielen kann, wie in
Mittels des Domänencontrollers 70 können in manchen Beispielen Zonen 20, 21 Zugriffsrechte zu Peripherien 60, 61 und/oder Speichern 62, 63 zugewiesen sein. Zum Beispiel eine Domäne kann einen logischen/physischen Bereich umfassen, der gleiche Zugriffsrechte auf Speicher 63 und/oder Peripherien 61, 62 aufweist. Darüber hinaus kann in einer Zone der Mehrzahl von Zonen (bspw. in der ersten 20 oder in einer anderen Zone) ein Systemmodul und/oder ein Teil eines Systemmoduls eine erste Softwarearchitektur umfassen und in einer anderen Zone der Mehrzahl von Zonen (bspw. in der zweiten 21 oder in einer anderen Zone) kann ein anderes Systemmodul und/oder ein Teil eines Systemmoduls eine zweite Softwarearchitektur umfassen. Zum Beispiel kann in der ersten Zone 20 ein Systemmodul 30, 31 und/oder ein Teil eines Systemmoduls eine AUTOSAR-Classic-Softwarearchitektur umfassen und in der anderen Zone 21 ein Systemmodul 32 und/oder ein Teil eines Systemmoduls eine AUTOSAR-Adaptive-Softwarearchitektur umfassen. Zum Beispiel kann in der ersten Zone 20 ein Systemmodul 30, 31 und/oder ein Teil eines Systemmoduls konfiguriert sein, um ein erstes Betriebssystem (z.B. Windows) auszuführen und in der zweiten Zone 21 kann ein Systemmodul 32 und/oder ein Teil eines Systemmoduls konfiguriert sein, um ein zweites Betriebssystem (z.B. Linux) auszuführen.In some examples,
In den vorliegenden Techniken kann ein Verstoß gegen Vorschriften über eine zugeordnete Systemressource für eine Zone einem unerlaubten Zugriff dieser Zone auf eine Systemressource entsprechen, für die der entsprechenden Zone kein Zugriffsrecht zugeordnet ist. Zum Beispiel können die Verstöße gegen die Vorschriften über die Zuordnung der ersten Anzahl von Systemressourcen der Mehrzahl von Systemressourcen für die erste Zone einem oder mehreren unerlaubten Zugriffen der ersten Zone auf eine oder mehrere Systemressourcen entsprechen, für die der ersten Zone keine Zugriffsrechte zugewiesen sind. Alternativ oder zusätzlich können die Verstöße gegen die Vorschriften über die Zuordnung der zweiten Anzahl von Systemressourcen der Mehrzahl von Systemressourcen für die zweite Zone einem oder mehreren unerlaubten Zugriffen der zweiten Zone auf eine oder mehrere Systemressourcen entsprechen, für die der zweiten Zone keine Zugriffsrechte zugewiesen sind. Zum Beispiel kann ein Verstoß gegen Vorschriften über die für die erste Zone (oder eine andere Zone) zugeordneten Systemressourcen auftreten, wenn die erste Zone (bspw. ein dieser Zone zugewiesenes Systemmodul) versucht, eine Systemressource (z.B. einen Speicher) schreibend zuzugreifen, obwohl sie nur lesend auf die Systemressource zugreifen darf. In einem anderen Beispiel kann ein Verstoß gegen Vorschriften über die für die erste Zone (oder eine andere Zone) zugeordneten Systemressourcen auftreten, wenn die erste Zone (bspw. ein dieser Zone zugewiesenes Systemmodul) versucht, eine Systemressource (z.B. eine Softwareapplikation) auszuführen, obwohl sie kein Zugriffsrecht zum Ausführen dieser Systemressource verfügt.In the present techniques, a violation of regulations over an associated system resource for a zone may correspond to unauthorized access by that zone to a system resource for which the corresponding zone is not assigned access rights. For example, the violations of the rules governing the allocation of the first number of system resources of the plurality of system resources for the first zone may correspond to one or more unauthorized accesses by the first zone to one or more system resources for which the first zone is not assigned access rights. Alternatively or additionally, the violations of the rules governing the allocation of the second number of system resources of the plurality of system resources for the second zone may correspond to one or more unauthorized accesses of the second zone to one or more system resources for which the second zone is not assigned access rights. For example, a violation of rules governing the system resources allocated for the first zone (or another zone) may occur if the first zone (e.g. a system module assigned to that zone) attempts to write to a system resource (e.g. memory) even though it Only read access to the system resource is permitted. In another example, a Violation of regulations regarding the system resources allocated for the first zone (or another zone) occurs when the first zone (e.g. a system module assigned to this zone) attempts to execute a system resource (e.g. a software application) although it does not have access rights to execute it system resource has.
In den vorliegenden Techniken kann das Sicherheitsmodul 10 weiter konfiguriert sein, um mit einer oder mehreren Zonen 20, 21, 22 (bspw. allen Zonen) zu kommunizieren (bspw., wie oben bereits beschrieben, unter Verwendung entsprechender logischer und/oder physischer Verbindungen). Dadurch kann das Sicherheitsmodul konfiguriert sein, um Informationen über Zugriffe von einer oder mehreren Zonen (z.B. jeder Zone) der Mehrzahl von Zonen auf Systemressourcen zu sammeln. Diese Informationen (bspw. in Form von Digital- oder Analogsignalen, Nachrichten oder dergleichen) können dem Sicherheitsmodul bspw. von den jeweiligen Zonen bereitgestellt werden. In manchen Fällen kann das Sicherheitsmodul konfiguriert sein, um eine Anfrage zum Erhalt von Informationen über Zugriffe einer Zone auf Systemressourcen an der Zone zu senden, und die Zone kann dem Sicherheitsmodul diese Informationen übermitteln. Eine solche Anfrage kann bspw. regelmäßig einmal pro einen vorbestimmten Zeitintervall und/oder unregelmäßig erfolgen, wenn die jeweiligen aufeinanderfolgenden Zeitintervalle unterschiedlich sind. Zum Beispiel können diese Informationen in einem Register der Zone gespeichert werden, z.B. in einem Systemmodul (bspw. einer Speichereinheit), das dieser Zone zugeordnet ist, so dass das Sicherheitsmodul diese Informationen ablesen kann. Alternativ oder zusätzlich kann die Zone selbst diese Informationen an das Sicherheitsmodul senden (bspw. regelmäßig einmal pro einen vorbestimmten Zeitintervall und/oder unregelmäßig, wenn die jeweiligen aufeinanderfolgenden Zeitintervalle unterschiedlich sind), ohne dass das Sicherheitsmodul diese Anfrage stellt. Des Weiteren kann das Sicherheitsmodul die Informationen über Zugriffe der einen oder mehreren Zonen auf Systemressourcen mit Informationen in Bezug auf Vorschriften über die Zuordnung von Systemressourcen für diesen Zonen vergleichen. Zum Beispiel können die Informationen über die Zuordnungsvorschriften in dem Sicherheitsmodul oder in einem anderen Systemmodul, mit dem das Sicherheitsmodul kommunizieren kann, gespeichert werden. Aufgrund des Vergleichsergebnisses kann das Sicherheitsmodul der vorliegenden Techniken in manchen Fällen erkennen, ob Verstöße gegen Vorschriften über die Zuordnung von Systemressourcen für die eine oder mehrere Zonen stattgefunden haben. Wenn bspw. die Informationen über Zugriffe der Zone auf Systemressourcen mit den Informationen in Bezug auf die Vorschriften über die Zuordnung von Systemressourcen für diese Zone nicht übereinstimmen (z.B. weil mindestens ein unerlaubter Zugriff dieser Zone auf eine Systemressource festgellt wurde), kann das Sicherheitsmodul dieses Vergleichsergebnis als Verstoß gegen Vorschriften einstufen. Wie weiter oben bereits besprochen, können Verstöße gegen Vorschriften über die Zuordnung von Systemressourcen für die jeweilige Zone durch einen externen Eingriff in das Rechnersystem (bspw. in diese Zone oder in ein oder mehrere Systemmodule dieser Zone) auftreten.In the present techniques, the
Darüber hinaus kann das Sicherheitsmodul 10 des ersten Aspekts oder ein anderes Modul, mit dem das Sicherheitsmodul in Kommunikationsverbindung steht (z.B. um dieses Modul über entsprechende Verstöße gegen Zuordnungsvorschriften zu informieren, bspw. unter Verwendung eines entsprechenden Signals), so konfiguriert sein, dass es eine Reaktion in einer manipulierten Zone auslöst, um Auswirkungen von Manipulationen durch einen externen Eingriff an dem Rechnersystem abzumildern. Dabei kann die manipulierte Zone einer Zone entsprechen, für die Verstöße gegen Vorschriften über die Zuordnung von Systemressourcen, die dieser Zone zugeordnet sind, erkannt wurden. Dabei kann die Reaktion Einleiten einer Gegenmaßnahme gegen die erkannten Verstöße innerhalb der manipulierten Zone umfassen. In manchen Fällen kann eine solche Gegenmaßnahme Ändern von Zugriffsrechten auf Systemressourcen, die der manipulierten Zone zugeordnet sind, umfassen. Zum Beispiel wenn eine Zone zwei oder mehr verschiedene Zugriffrechte für das Nutzen einer Systemressource hat (bspw. darf die Zone 20 im Beispiel von
In anderen Fällen kann die Gegenmaßnahme Blockieren von Zugriffen auf Systemressourcen, die der manipulierten Zone zugeordnet sind, umfassen (bspw. wird der Zone 20 als Gegenmaßnahme der Zugriff auf den Speicher 62 verwehrt). In noch anderen Fällen kann die Gegenmaßnahme in der manipulierten Zone Abschalten der manipulierten Zone umfassen. Zudem kann die Gegenmaßnahme Senden von Informationen (bspw. in Form von Digital- oder Analogsignalen, Nachrichten oder dergleichen) über die erkannten Verstöße gegen Vorschriften in der manipulierten Zone und/oder anderer relevanter Informationen (bspw. auch in Form von Digital- oder Analogsignalen, Nachrichten oder dergleichen) vom Sicherheitsmodul 10 an Systemmodule 30, 31, die zu der manipulierten Zone 20 gehören, umfassen. Zu den anderen relevanten Informationen können bspw. die weiter oben beschriebenen Kontext-Informationen der Vorrichtung und/oder einer Vielzahl von Vorrichtungen gehören, z.B. die Kontext-Informationen eines Fahrzeugs (oder seiner Fahrzeugkomponenten) und/oder einer Fahrzeugflotte. Alternativ oder zusätzlich kann die Gegenmaßnahme Senden von Informationen über die erkannten Verstöße gegen Vorschriften in der manipulierten Zone und/oder anderer relevanter Informationen vom Sicherheitsmodul 10 an Systemmodule 32-35, die zu den anderen nicht-manipulierten Zonen gehören, umfassen. Alternativ oder zusätzlich zu den beiden oben genannten Alternativen kann die Gegenmaßnahme Senden von Informationen über die erkannten Verstöße gegen Vorschriften in der manipulierten Zone und/oder anderer relevanter Informationen vom Sicherheitsmodul an ein externes System (z.B. ein Backend, andere Vorrichtungen wie Fahrzeugen oder Infrastruktur-Komponenten) umfassen. In manchen Fällen kann das Sicherheitsmodul 10 (oder das oben erwähnte andere Modul) weiter so konfiguriert werden, um eine Routine (bspw. ein Softwareprogram oder einen Code, wie z.B. einen kompilierten Code) als die Reaktion innerhalb der manipulierten Zone auszuführen. Zum Beispiel können eine oder mehrere der oben beschriebenen Gegenmaßnahmen anhand dieser Routine in dem Rechnersystem 100 implementiert werden.In other cases, the countermeasure may include blocking access to system resources associated with the compromised zone (e.g., denying
Alternativ oder zusätzlich zu der (möglichen) ausgelösten Reaktion in der manipulierten Zone kann das Sicherheitsmodul 10 oder das andere Modul, mit dem das Sicherheitsmodul in Kommunikationsverbindung steht, in den vorliegenden Techniken so konfiguriert sein, dass es eine Reaktion in einer nicht-manipulierten Zone auslöst, um Auswirkungen von Manipulationen durch den externen Eingriff an dem Rechnersystem abzumildern. Dabei kann die Reaktion Einleiten einer Gegenmaßnahme in der nicht-manipulierten Zone als Ergebnis von erkannten Verstößen in der manipulierten Zone umfassen. In manchen Fällen kann eine solche Gegenmaßnahme Ändern von Zugriffsrechten auf Systemressourcen, die der nicht-manipulierten Zone zugeordnet sind, umfassen. Zum Beispiel wenn eine erste Zone 20 von
Wie oben bereits ausführlich beschrieben, kann das Sicherheitsmodul 10 die Informationen über die erkannten Verstöße gegen Vorschriften in der manipulierten Zone und/oder die anderen relevanten Informationen an die Systemmodule 30-35, die zu der manipulierten Zone 20 und/oder zu den anderen nicht-manipulierten Zonen 21, 22 gehören, senden. (Wie bereits besprochen, kann jegliche Information bspw. in Form von Digital- oder Analogsignalen, Nachrichten oder dergleichen vorliegen.) Alternativ oder zusätzlich können ein oder mehrere Systemmodule (bspw. alle Systemmodule) der Mehrzahl von Systemmodulen konfiguriert sein, um das Sicherheitsmodul 10 nach Informationen über die erkannten Verstöße in einer oder mehreren manipulierten Zonen oder nach anderen relevanten Informationen abzufragen (sogenannte „Polling“ - dem Fachmann ein bekannter Ausdruck). Eine solche Abfrage kann bspw. regelmäßig einmal pro einen vorbestimmten Zeitintervall und/oder unregelmäßig erfolgen, wenn die jeweiligen aufeinanderfolgenden Intervalle unterschiedlich sind. Des Weiteren kann das Sicherheitsmodul 10 konfiguriert sein, um diese Informationen an das eine oder die mehreren Systemmodule bereitzustellen (bspw. zu senden und/oder zu erlauben, dass diese Informationen von den Systemmodulen gelesen werden). Darüber hinaus kann jedes der ein oder mehreren Systemmodule der Mehrzahl von Systemmodulen konfiguriert sein, um aus den Informationen über die erkannten Verstöße zu identifizieren, ob Verstöße gegen Vorschriften über die Zuordnung von Systemressourcen für eine oder mehrere Zonen der Mehrzahl von Zonen aufgetreten sind. Zudem kann jedes der ein oder mehreren Systemmodule der Mehrzahl von Systemmodulen konfiguriert sein, um eine Reaktion in einer entsprechenden Zone auszulösen, der dieses Systemmodul zugeordnet ist (bspw. in einer nicht-manipulierten oder manipulierten Zone, je nachdem, welcher Zone das entsprechende Systemmodul zugeordnet ist), wenn Verstöße gegen Vorschriften über die Zuordnung von Systemressourcen für mindestens eine Zone der Mehrzahl von Zonen identifiziert wurden. Dabei kann die Reaktion Einleiten einer Gegenmaßnahme innerhalb der Zone umfassen, der dieses Systemmodul zugeordnet ist. Die Gegenmaßnahme kann z.B. die eine oder mehrere Gegenmaßnahmen beinhalten, die bereits im Zusammenhang mit dem Sicherheitsmodul beschrieben wurden. In manchen Fällen kann die Gegenmaßnahme nämlich Ändern von Zugriffsrechten oder Blockieren von Zugriffen auf Systemressourcen umfassen, die der Zone zugeordnet sind, der dieses Systemmodul zugeordnet ist. In anderen Fällen kann die Gegenmaßnahme Abschalten der Zone umfassen, der dieses Systemmodul zugeordnet ist.As already described in detail above, the
Ein zweiter allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein computerimplementiertes Verfahren zur Bereitstellung einer Mehrzahl von Funktionen für eine Vorrichtung, insbesondere für ein Fahrzeug, durch ein Rechnersystem 100. In manchen Fällen kann das Verfahren des zweiten Aspekts durch ein Rechnersystem 100 gemäß dem ersten allgemeinen Aspekt bereitgestellt werden (bspw. durch das in den
Des Weiteren kann der Schritt „Durchsetzen 200“ des zweiten allgemeinen Aspekts das Zuweisen 210 einer ersten Anzahl von Systemmodulen 30, 31 und/oder Teilen von Systemmodulen einer Mehrzahl von Systemmodulen an eine erste Zone 20 der mindestens zwei Zonen 20-23 umfassen. Zudem kann der Schritt „Durchsetzen 200“ Zuweisen 220 einer ersten Anzahl von Systemressourcen 60-62 aus einer Mehrzahl von Systemressourcen 60-63 an die erste Zone umfassen. Darüber hinaus kann der Schritt „Durchsetzen 200“ Zuweisen 230 einer zweiten Anzahl von Systemmodulen 32 und/oder Teilen von Systemmodulen der Mehrzahl von Systemmodulen an eine zweite Zone 21 der mindestens zwei Zonen 20-23 umfassen. Außerdem kann der Schritt „Durchsetzen 200“ Zuweisen 240 einer zweiten Anzahl von Systemressourcen 62, 63 aus der Mehrzahl von Systemressourcen 60-63 an die zweite Zone 22 umfassen. In den vorliegenden Techniken können Systemmodule oder Teile davon, welche nicht zu den ersten und zweiten Zonen gehören, sowie jeweilige Systemressourcen den entsprechenden anderen Zonen zugewiesen werden, die sich von den ersten und zweiten Zonen unterscheiden, und zwar auf gleiche Weise wie für die ersten und zweiten Zonen. In den Verfahren des zweiten Aspekts kann das Zuweisen von Systemressourcen an eine Zone weiterhin das Zuweisen entsprechender Zugriffsrechte auf Systemressourcen zu dieser Zone umfassen.Furthermore, the “enforce 200” step of the second general aspect may include assigning 210 a first number of
Ein dritter allgemeiner Aspekt der vorliegenden Offenbarung betrifft ein Computer-Programm, das Befehle enthält, die, wenn sie von einem Rechensystem ausgeführt werden, das Rechensystem veranlassen, ein computerimplementiertes Verfahren gemäß der vorliegenden Offenbarung auszuführen.A third general aspect of the present disclosure relates to a computer program that contains instructions that, when executed by a computing system, cause the computing system to execute a computer-implemented method in accordance with the present disclosure.
Die vorliegende Offenbarung betrifft weiterhin ein computer-lesbares Medium (z.B. eine DVD oder einen Festkörperspeicher), dass ein Computer-Programm des dritten allgemeinen Aspekts enthält.The present disclosure further relates to a computer-readable medium (e.g., a DVD or solid-state memory) that contains a computer program of the third general aspect.
Die vorliegende Offenbarung betrifft weiterhin ein Signal (z.B. ein elektromagnetisches Signal gemäß einem drahtlosen oder drahtgebundenen Kommunikationsprotokoll), dass ein Computer-Programm des dritten allgemeinen Aspekts codiert.The present disclosure further relates to a signal (e.g., an electromagnetic signal according to a wireless or wired communication protocol) that a computer program of the third general aspect encodes.
Claims (15)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022209777.7A DE102022209777A1 (en) | 2022-09-16 | 2022-09-16 | DETECTION OF EXTERNAL INTERVENTIONS IN A COMPUTER SYSTEM WITH ZONE SEPARATION FOR A DEVICE, IN PARTICULAR FOR A VEHICLE |
PCT/EP2023/074472 WO2024056489A1 (en) | 2022-09-16 | 2023-09-06 | Detection of external interventions in a computer system with zone separation for a device, in particular for a vehicle |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022209777.7A DE102022209777A1 (en) | 2022-09-16 | 2022-09-16 | DETECTION OF EXTERNAL INTERVENTIONS IN A COMPUTER SYSTEM WITH ZONE SEPARATION FOR A DEVICE, IN PARTICULAR FOR A VEHICLE |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102022209777A1 true DE102022209777A1 (en) | 2024-03-21 |
Family
ID=87971839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102022209777.7A Pending DE102022209777A1 (en) | 2022-09-16 | 2022-09-16 | DETECTION OF EXTERNAL INTERVENTIONS IN A COMPUTER SYSTEM WITH ZONE SEPARATION FOR A DEVICE, IN PARTICULAR FOR A VEHICLE |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE102022209777A1 (en) |
WO (1) | WO2024056489A1 (en) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2892201B1 (en) * | 2014-01-06 | 2017-08-30 | Argus Cyber Security Ltd. | Detective watchman |
DE102019216462A1 (en) * | 2019-10-25 | 2021-04-29 | Robert Bosch Gmbh | Method and device for operating a computing device |
CN114938307B (en) * | 2022-05-26 | 2023-05-26 | 重庆长安汽车股份有限公司 | Vehicle-mounted Ethernet information security isolation method and system thereof |
-
2022
- 2022-09-16 DE DE102022209777.7A patent/DE102022209777A1/en active Pending
-
2023
- 2023-09-06 WO PCT/EP2023/074472 patent/WO2024056489A1/en unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024056489A1 (en) | 2024-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102013216444A1 (en) | Active safety systems of vehicles with graphics microprocessors | |
DE102014116111A1 (en) | Apparatus and method for enforcing security tagging of embedded network communications | |
DE102015002191A1 (en) | Security hypervisor function | |
DE112016002785T5 (en) | Electronic control units for vehicles | |
DE102012016539A1 (en) | Configuration technique for a controller with inter-communicating applications | |
DE102018116676A1 (en) | Vehicle network with implementation of XCP protocol policy and procedures | |
EP4078415A1 (en) | Method and device for operating a computing device | |
DE102021130897A1 (en) | ELECTRONIC CONTROL UNIT, SOFTWARE UPDATE PROCEDURE, SOFTWARE UPDATE PROGRAM AND ELECTRONIC CONTROL SYSTEM | |
DE102012017339B4 (en) | computer system | |
EP3655876B1 (en) | Single-chip system, method for operating a single-chip system, and motor vehicle | |
DE102022106028A1 (en) | SYSTEMS AND METHODS FOR DETECTING MALFUNCTIONS IN AN AUTONOMOUS DRIVING SYSTEM | |
DE102021107932A1 (en) | Security system and method for disabling vehicle functions | |
DE102021100155A1 (en) | SYSTEM AND PROCEDURE FOR DYNAMIC SOFTWARE MANAGEMENT | |
DE102022209777A1 (en) | DETECTION OF EXTERNAL INTERVENTIONS IN A COMPUTER SYSTEM WITH ZONE SEPARATION FOR A DEVICE, IN PARTICULAR FOR A VEHICLE | |
DE112020005954T5 (en) | Information processing device, control method and program | |
WO2024056443A1 (en) | Method for checking data in a computer unit | |
DE102022204716A1 (en) | COMPUTER SYSTEM FOR PROVIDING A MULTIPLE FUNCTIONS FOR A DEVICE, PARTICULARLY FOR A VEHICLE, BY SEPARATING A MULTIPLE ZONES | |
WO2024056488A1 (en) | Mitigation of manipulations in a computer system with zone separation for a device, in particular for a vehicle | |
DE102019214413A1 (en) | Method for at least partially automated driving of a motor vehicle | |
DE102013016114B3 (en) | Bus system and method for protected memory accesses | |
DE102021208459B4 (en) | Method for authentic data transmission between control units in a vehicle, arrangement with control units, computer program and vehicle | |
DE102021123370A1 (en) | INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD, AND PROGRAM | |
DE102020125714A1 (en) | SYSTEMS AND METHODS FOR DISTRIBUTED PROCESSING IN AN INFORMATION ECOSYSTEM | |
DE102021201236A1 (en) | Method for authenticating a message from an arithmetic unit, arithmetic unit, computer program and vehicle | |
DE102022204714A1 (en) | SYSTEM FOR PROVIDING A MULTIPLE FUNCTIONS FOR A DEVICE, PARTICULARLY FOR A VEHICLE |