DE102016202527A1 - Computing unit for a motor vehicle - Google Patents
Computing unit for a motor vehicle Download PDFInfo
- Publication number
- DE102016202527A1 DE102016202527A1 DE102016202527.9A DE102016202527A DE102016202527A1 DE 102016202527 A1 DE102016202527 A1 DE 102016202527A1 DE 102016202527 A DE102016202527 A DE 102016202527A DE 102016202527 A1 DE102016202527 A1 DE 102016202527A1
- Authority
- DE
- Germany
- Prior art keywords
- software application
- vehicle
- motor vehicle
- vehicle software
- resources
- 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
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/51—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
-
- 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/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
Abstract
Die Erfindung betrifft ein Verfahren zum Betreiben einer Recheneinheit (110) für ein Kraftfahrzeug (100), wobei durch die Recheneinheit Schnittstellen (131, 141) zum Zugriff auf Ressourcen (130, 140) des Kraftfahrzeugs (100) für eine fahrzeugfremde Software-Anwendung (210) bereitgestellt werden, im Zuge einer Überprüfungsphase (310) eine Authentifizierung der fahrzeugfremden Software-Anwendung (210) durchgeführt wird (311) und/oder ein Funktionsumfang der fahrzeugfremden Software-Anwendung (210) bestimmt wird (313), in Abhängigkeit von dem Ergebnis der durchgeführten Überprüfungsphase (310) festgelegt wird, ob und in welchem Umfang die fahrzeugfremde Software-Anwendung (210) über die Schnittstellen (131, 141) auf die Ressourcen (130, 140) des Kraftfahrzeugs (100) zugreifen darf (320), und von der fahrzeugfremden Software-Anwendung (210) aufrufbare Sicherheitsfunktionen bereitgestellt werden, um die Ausführung der fahrzeugfremden Software-Anwendung (210) abzusichern (340).The invention relates to a method for operating a computation unit (110) for a motor vehicle (100), wherein the arithmetic unit has interfaces (131, 141) for accessing resources (130, 140) of the motor vehicle (100) for a non-vehicle software application ( 210), an authentication of the non-vehicle software application (210) is carried out (311) and / or a functional scope of the non-vehicle software application (210) is determined (313) in the course of a verification phase (310), depending on the The result of the performed verification phase (310) it is determined whether and to what extent the non-vehicle software application (210) is permitted to access the resources (130, 140) of the motor vehicle (100) via the interfaces (131, 141) (320), and security functions which can be called by the non-vehicle software application (210) in order to secure the execution of the non-vehicle software application (210) (340).
Description
Die vorliegende Erfindung betrifft ein Verfahren zum Betreiben einer Recheneinheit für ein Kraftfahrzeug und eine Recheneinheit und ein Computerprogramm zu dessen Durchführung.The present invention relates to a method for operating a computing unit for a motor vehicle and a computing unit and a computer program for its implementation.
Stand der TechnikState of the art
Software-Anwendungen, sog. "Apps", die auf Handgeräten aus der Klasse der Smart-Devices, wie z.B. Smartphones oder Tablet-PCs, ausgeführt werden, sind bekannt. Derartige Apps können auch im Kraftfahrzeugbereich Anwendung finden. Beispielsweise kann ein Handgerät, z.B. ein Smartphone, auf welchem die App ausgeführt wird, mit einem Steuergerät datenübertragend verbunden sein, wodurch die App mit dem Steuergerät kommunizieren kann. Es ist auch denkbar, derartige Apps direkt in ein Steuergerät des Kraftfahrzeugs zu laden, beispielsweise über das Internet oder eine sog. Cloud, und die App von dem Steuergerät auszuführen. Derartige Software-Anwendungen bzw. Apps für Kraftfahrzeuge sind beispielsweise in der
In der
Offenbarung der ErfindungDisclosure of the invention
Erfindungsgemäß werden ein Verfahren zum Betreiben einer Recheneinheit für ein Kraftfahrzeug und eine Recheneinheit und ein Computerprogramm zu dessen Durchführung mit den Merkmalen der unabhängigen Patentansprüche vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung.According to the invention, a method for operating a computing unit for a motor vehicle and a computing unit and a computer program for carrying it out with the features of the independent patent claims are proposed. Advantageous embodiments are the subject of the dependent claims and the following description.
Die Erfindung erleichtert, eine fahrzeugfremde Software-Anwendung in das Kraftfahrzeug zu implementieren. Als fahrzeugfremde Software-Anwendung sei in diesem Zusammenhang eine Software-Anwendung zu verstehen, welche nicht im Zuge eines Herstellungsprozesses in das Kraftfahrzeug implementiert wurde. Die fahrzeugfremde Software-Anwendung war somit nicht ursprünglich in dem Kraftfahrzeug vorhanden und konnte von dem Kraftfahrzeug noch nicht ausgeführt werden, als dieses eine entsprechende Produktionsanlage verlassen hat und in Betrieb genommen wurde. Die fahrzeugfremde Software-Anwendung wird in das Kraftfahrzeug eingebracht, wenn sich dieses bereits im Feld befindet.The invention makes it easier to implement a vehicle-external software application in the motor vehicle. A non-vehicle software application in this context is a software application to understand, which was not implemented in the course of a manufacturing process in the motor vehicle. The off-board software application was thus not originally present in the motor vehicle and could not be executed by the motor vehicle, as this has left a corresponding production plant and was put into operation. The off-board software application is introduced into the vehicle if it is already in the field.
Bei der fahrzeugfremden Software-Anwendung kann es sich insbesondere um eine sogenannte "App" handeln. Insbesondere können mittels der fahrzeugfremden Software-Anwendung nachladbare Kraftfahrzeugfunktionen realisiert werden, die in das Kraftfahrzeug eingebracht werden können, wenn sich dieses bereits im Feld befindet. Um derartige nachladbare Kraftfahrzeugfunktionen zu realisieren, kann die fahrzeugfremde Software-Anwendung insbesondere auf Fahrzeugfunktionen Einfluss nehmen oder diese komplett ausführen.The non-vehicle software application may in particular be a so-called "app". In particular, rechargeable motor vehicle functions can be realized by means of the vehicle-external software application, which can be introduced into the motor vehicle if this is already in the field. In order to realize such rechargeable motor vehicle functions, the vehicle software application can in particular influence vehicle functions or execute them completely.
Durch die Erfindung wird insbesondere eine Plattform bereitgestellt, um derartige nachladbare Software-Anwendungen sicher in das Kraftfahrzeug zu implementieren. Die fahrzeugfremde Software-Anwendung wird beispielsweise über das Internet oder ein zweckmäßiges Netzwerk auf eine Recheneinheit (Steuergerät) des Kraftfahrzeugs eingebracht. Die Recheneinheit entscheidet insbesondere, ob und in welchem Umfang die fahrzeugfremde Software-Anwendung ausgeführt werden soll und dient zweckmäßigerweise zur Koordination zwischen Software-Anwendung und Ressourcen bzw. Komponenten des Kraftfahrzeugs. In particular, the invention provides a platform for safely implementing such rechargeable software applications in the motor vehicle. The vehicle external software application is introduced, for example via the Internet or an appropriate network to a computing unit (control unit) of the motor vehicle. The arithmetic unit decides in particular whether and to what extent the vehicle external software application is to be executed and expediently serves for coordination between the software application and resources or components of the motor vehicle.
Es werden Schnittstellen zum Zugriff auf Ressourcen bzw. Komponenten des Kraftfahrzeugs für die fahrzeugfremde Software-Anwendung bereitgestellt. Bei den Schnittstellen handelt es sich um Software-Schnittstellen. Bei den Ressourcen kann es sich bevorzugt um Sensoren, Aktoren, Steuergeräte und/oder Speichereinheiten handeln. Interfaces are provided for accessing resources or components of the motor vehicle for the off-board software application. The interfaces are software interfaces. The resources may preferably be sensors, actuators, control devices and / or storage units.
Von der Recheneinheit wird im Zuge einer Überprüfungsphase bewertet, ob die Software-Anwendung ein Sicherheitsrisiko darstellt oder ohne negative Auswirkungen auf die Sicherheit des Kraftfahrzeugs ausgeführt werden kann. Insbesondere kann die Software-Anwendung dabei nach Gesichtspunkten von vorgegebenen Sicherheitsrichtlinien, beispielsweise der
Im Zuge der Überprüfungsphase kann die Recheneinheit eine Authentifizierung der fahrzeugfremden Software-Anwendung durchführen. Dabei wird zweckmäßigerweise eine Herkunft der Software-Anwendung überprüft und ob diese aus sicheren, vertrauenswürdigen Quellen stammt und nicht von potentiellen Angreifern. Weiterhin kann überprüft werden, ob die Software-Anwendung geeignet und berechtigt ist, auf Fahrzeugfunktionen des Kraftfahrzeugs Einfluss zu nehmen.In the course of the checking phase, the arithmetic unit can perform an authentication of the non-vehicle software application. It is expedient to check the origin of the software application and whether it comes from secure, trustworthy sources and not from potential attackers. Furthermore, it can be checked whether the software application is suitable and authorized to influence vehicle functions of the motor vehicle.
Alternativ oder zusätzlich kann die Recheneinheit im Zuge der Überprüfungsphase einen Funktionsumfang der fahrzeugfremden Software-Anwendung bestimmen. Insbesondere wird dabei überprüft, auf welche Ressourcen bzw. Fahrzeugfunktionen die fahrzeugfremde Software-Anwendung zugreifen möchte und im welchem Rahmen sie auf diese Fahrzeugfunktionen Einfluss nehmen möchte.Alternatively or additionally, the arithmetic unit in the course of the verification phase to determine a range of functions of the vehicle external software application. In particular, it checks for which resources or vehicle functions would like to access the non-vehicle software application and in which framework it would like to influence these vehicle functions.
Weiterhin wird in Abhängigkeit von dem Ergebnis der durchgeführten Überprüfungsphase festgelegt, ob und in welchem Umfang die fahrzeugfremde Software-Anwendung über die Schnittstellen auf die Ressourcen des Kraftfahrzeugs zugreifen darf. Insbesondere legt die Recheneinheit dabei fest, in welchem Umfang die Software-Anwendung Komponenten des Kraftfahrzeugs, vorzugsweise Aktoren, ansteuern darf und wie weit sie somit in das Fahrverhalten des Kraftfahrzeugs eingreifen darf. Auch diese Festlegung kann gemäß vorgegebenen Sicherheitsrichtlinien wie der
Wenn die Software-Anwendung nicht authentifiziert wird, beispielsweise wenn sie aus unsicheren Quellen stammt oder ihre Herkunft nicht mit Sicherheit nachvollzogen werden kann, schränkt die Recheneinheit ihren Umfang insbesondere ein oder hindert sie zweckmäßigerweise an der Ausführung. In diesem Fall werden der Software-Anwendung insbesondere keine Schnittstellen bzw. Ressourcen zugewiesen und sie darf keinen Aktor des Kraftfahrzeugs ansteuern.If the software application is not authenticated, for example, if it comes from insecure sources or its source can not be traced with certainty, the arithmetic unit restricts its scope in particular or expediently hinders its execution. In this case, the software application in particular no interfaces or resources assigned and they must not control an actuator of the motor vehicle.
Bei erfolgreicher Authentifizierung darf die Software-Anwendung in dem festgelegten Umfang ausgeführt werden. Es werden von der fahrzeugfremden Software-Anwendung aufrufbare Sicherheitsfunktionen bereitgestellt, um die Ausführung der fahrzeugfremden Software-Anwendung abzusichern. Wenn die Software-Anwendung ausgeführt wird, kann diese somit insbesondere anfordern, dass ihr Betrieb und ihre ausgeführten Funktionalitäten von der Recheneinheit überwacht und kontrolliert werden. Die Recheneinheit kann mittels der Sicherheitsfunktionen insbesondere sicherstellen, dass die Software-Anwendung nach vorgegebenen Sicherheitsrichtlinien wie der
Somit ist es nicht notwendig, in die Software-Anwendung selbst spezielle Funktionen zu implementieren bzw. zu programmieren, welche den Betrieb der Software-Anwendung kontrollieren oder absichern. Dadurch, dass derartige Sicherheitsfunktionen bereits in die Recheneinheit implementiert sind, kann die Software-Anwendung diese während ihrer Ausführung auf einfache Weise aufrufen.Thus, it is not necessary to implement or program special functions into the software application itself, which control or safeguard the operation of the software application. The fact that such security functions are already implemented in the arithmetic unit, the software application can call them during their execution in a simple manner.
Die Software-Anwendung kann somit einfach programmiert werden und ihr Quellcode kann einfach und übersichtlich gehalten werden. Weiterhin kann ein effizienter und sicherer Ablauf der Software-Anwendung gewährleistet werden und es kann durch die Sicherheitsfunktionen der Recheneinheit beispielsweise überprüft und sichergestellt werden, dass die Software-Anwendung die Ressourcen des Kraftfahrzeuges möglichst effizient verwendet. Da die Sicherheitsfunktionen zentral insbesondere vom Hersteller bereitgestellt werden, können sie einfach zertifiziert werden, so dass sicherheitskritische externe Software-Anwendungen nicht mehr aufwändig zertifiziert werden müssen. The software application can thus be easily programmed and its source code can be kept simple and clear. Furthermore, an efficient and safe operation of the software application can be ensured and it can be checked and ensured by the security functions of the computing unit, for example, that the software application uses the resources of the motor vehicle as efficiently as possible. Since the security functions are provided centrally, especially by the manufacturer, they can easily be certified, so that safety-critical external software applications no longer have to be laboriously certified.
Die Recheneinheit wird durch das entsprechende auf ihr ablaufende Computerprogramm dazu veranlasst, die oben beschriebenen Funktionen auszuführen. Die Recheneinheit ist vorzugsweise als ein Steuergerät des Kraftfahrzeugs ausgebildet, beispielsweise als ein Motorsteuergerät. Die Recheneinheit kann auch zusätzlich zu übrigen Steuergeräten in das Kraftfahrzeug eingebracht wird. Geeignete Datenträger zur Bereitstellung des Computerprogramms sind insbesondere magnetische, optische und elektrische Speicher, wie z.B. Festplatten, Flash-Speicher, EEPROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich.The arithmetic unit is caused by the corresponding running on her computer program to perform the functions described above. The arithmetic unit is preferably designed as a control unit of the motor vehicle, for example as an engine control unit. The arithmetic unit can also be introduced into the motor vehicle in addition to other control devices. Suitable data carriers for providing the computer program are in particular magnetic, optical and electrical memories, such as e.g. Hard drives, flash memory, EEPROMs, DVDs, etc. It is also possible to download a program via computer networks (Internet, intranet, etc.).
Durch die Erfindung kann insbesondere eine Plattform angeboten werden, welche es Entwicklern ermöglicht, Software-Anwendungen für Kraftfahrzeuge nach etablierten Standards bzw. nach standardisierten einheitlichen Sicherheitsrichtlinien zu entwickeln. Entwickler können diese Plattform nutzen und ihre Software-Anwendung derart programmieren, dass diese die speziellen Funktionen der Recheneinheit bzw. des auf ihr ablaufenden Computerprogramms verwenden kann. Weiterhin wird durch die Plattform insbesondere ermöglicht, dass nachladbare Software-Anwendung sicher ausgeführt und dabei die funktionale Sicherheit des Kraftfahrzeugs gewährleistet werden kann. Insbesondere kann erreicht werden, dass sowohl im Zuge der Entwicklung als auch bei der Ausführung von fahrzeugfremder Anwendungs-Software Sicherheitsanforderungen bzw. sicherheitskritische Anforderungen gemäß z.B. der
Entwicklern werden somit für die Entwicklung neuer Software-Anwendungen für Kraftfahrzeuge sämtliche Freiheiten geboten. Insbesondere ist es nicht nötig, in die Software-Anwendung spezielle Funktionen zu programmieren, um selbige in das Kraftfahrzeug zu implementieren, und diese dann noch ggf. aufwändig zertifizieren zu lassen. Für die Implementierung und Absicherung kann die Software-Anwendung auf die in der Recheneinheit bereitgestellten (und zweckmäßigerweise bereits zertifizierten) Funktionen zurückgreifen, welche im Zuge der Plattform für unterschiedliche Software-Anwendung einheitlich angeboten werden. Anwendern bzw. Fahrern von Fahrzeugen kann insbesondere mitgeteilt werden, dass nachgeladene Software-Anwendungen kein Sicherheitsrisiko darstellen und gefahrlos ausgeführt werden können. Insgesamt kann somit eine breitere Akzeptanz von nachladbaren Software-Anwendung erreicht werden, und deren Absatz erhöht werden.Developers will be offered the freedom to develop new software applications for automobiles. In particular, it is not necessary to program special functions into the software application in order to implement the same in the motor vehicle, and then to have them possibly costly to be certified. For the Implementation and validation, the software application can rely on the provided in the arithmetic unit (and appropriately already certified) functions that are offered uniformly in the course of the platform for different software application. In particular, users or drivers of vehicles can be informed that recharged software applications pose no security risk and can be executed safely. Overall, thus, a wider acceptance of rechargeable software application can be achieved, and their sales are increased.
Insbesondere kann eine Absicherung von Ressourcen des Kraftahrzeugs gemäß der
Die fahrzeugfremde Software-Anwendung kann zweckmäßigerweise von der Recheneinheit selbst ausgeführt werden. Beispielsweise kann die Software-Anwendung auch von einem Steuergerät oder einem Bordcomputer des Kraftfahrzeugs ausgeführt werden. Die fahrzeugfremde Software-Anwendung kann beispielsweise über das Internet oder z.B. auch über eine sogenannte "Cloud" in das Steuergerät bzw. den Bordcomputer geladen werden. Bei einer Cloud bzw. dem soggenannten Cloud-Computing handelt es sich um ein entferntes, verteiltes Recheneinheitssystem, das über ein Netzwerk (z.B. über Mobilfunknetze (z.B. 3G, 4G usw.), WLAN oder Bluetooth usw.) mit dem Kraftfahrzeug in Kommunikationsverbindung steht. Besonders bevorzugt wird die fahrzeugfremde Software-Anwendung von der als Steuergerät des Kraftfahrzeugs ausgebildeten Recheneinheit ausgeführt.The vehicle external software application can be conveniently carried out by the arithmetic unit itself. For example, the software application can also be executed by a control unit or an on-board computer of the motor vehicle. The off-board software application may, for example, be transmitted over the Internet or e.g. be loaded via a so-called "cloud" in the control unit or the on-board computer. A cloud, or so-called cloud computing, is a remote, distributed computing unit system in communication with the motor vehicle over a network (e.g., over cellular networks (e.g., 3G, 4G, etc.), WLAN, or Bluetooth, etc.). Particularly preferably, the non-vehicle software application is executed by the computing unit designed as a control unit of the motor vehicle.
Alternativ oder zusätzlich kann die fahrzeugfremde Software-Anwendung vorzugsweise auch von einer fahrzeugfremden bzw. fahrzeugexternen Recheneinheit ausgeführt werden. Vorteilhafterweise ist die fahrzeugfremde Recheneinheit als ein Handgerät aus der Klasse der Smart Devices ausgebildet, bevorzugt als ein Smartphone oder als ein Tablet-PC. Das Handgerät ist insbesondere ein mobiles Handgerät, welches sich im Besitz des Fahrers befindet und von diesem auch außerhalb des Kraftfahrzeugs mitgeführt wird. Die fahrzeugfremde Recheneinheit kann vorzugsweise drahtgebunden (z.B. USB usw.) oder drahtlos (z.B. WLAN, Bluetooth; GSM, 3G, 4G usw.) oder auch über das Internet mit dem Kraftfahrzeug bzw. mit Steuergeräten des Kraftfahrzeugs in datenübertragender Verbindung stehen. Beispielsweise kann die fahrzeugfremde Recheneinheit auch als ein PC, als ein Server, beispielsweise in einem Rechenzentrum, oder als Cloud ausgebildet sein. Alternatively or additionally, the vehicle-external software application can preferably also be executed by a vehicle-external or vehicle-external computing unit. Advantageously, the vehicle-external computing unit is designed as a hand-held device from the class of smart devices, preferably as a smartphone or as a tablet PC. The handset is in particular a mobile handset, which is in the possession of the driver and is also carried by this outside the vehicle. The off-board computing unit may preferably be in wired communication (e.g., USB, etc.) or wireless (e.g., WLAN, Bluetooth, GSM, 3G, 4G, etc.) or over the Internet to the motor vehicle or control devices of the motor vehicle in data transmitting communication. For example, the vehicle-external computing unit can also be designed as a PC, as a server, for example in a data center, or as a cloud.
Vorteilhafterweise wird mittels der Sicherheitsfunktionen eine Ansteuerung durch die fahrzeugfremde Software-Anwendung von Ressourcen des Kraftfahrzeugs, insbesondere von Aktoren, über die Schnittstelle überprüft. Besonders bevorzugt können zu diesem Zweck von der Software-Anwendung bestimmte Soll-Werte, gemäß welchen die Ressourcen bzw. Aktoren über die Schnittstellen angesteuert werden sollen, von der Recheneinheit auf Plausibilität überprüft bzw. nachgerechnet werden. Somit kann überprüft werden, ob die Software-Anwendung auch korrekt funktioniert und die Aktoren sinnvoll ansteuert. Die fahrzeugfremde Software-Anwendung muss sich somit nicht selbst überprüfen, sondern kann auf die Sicherheitsfunktionen, welche über die Plattform angeboten werden, zurückgreifen.Advantageously, by means of the safety functions, an activation by the vehicle software application of resources of the motor vehicle, in particular of actuators, is checked via the interface. For this purpose, particular setpoint values, according to which the resources or actuators are to be controlled via the interfaces, can be checked or recalculated for plausibility by the arithmetic unit for this purpose. Thus, it can be checked whether the software application also works correctly and controls the actuators sensibly. The non-vehicle software application does not need to check itself, but can rely on the security features offered by the platform.
Vorzugsweise kann die Recheneinheit mittels der Sicherheitsfunktionen abschätzen, ob eine Rechenkapazität für die Ausführung der fahrzeugfremden Software-Anwendung bzw. zum Erreichen der entsprechenden Funktionalität ausreichend ist. Wenn nicht, können zweckmäßigerweise weitere Ressourcen für die Software-Anwendung reserviert werden.By means of the security functions, the arithmetic unit can preferably estimate whether a computing capacity is sufficient for executing the software application external to the vehicle or for achieving the corresponding functionality. If not, further resources may be conveniently reserved for the software application.
Alternativ oder zusätzlich können mittels der Sicherheitsfunktionen vorzugsweise Eingangssignale bzw. die Integrität der Eingangssignale überwacht werden. Die Eingangssignale werden zweckmäßigerweise von Sensoren an die Software-Anwendung übermittelt und können auf Plausibilität/Aktualität überprüft werden.Alternatively or additionally, by means of the safety functions preferably input signals or the integrity of the input signals can be monitored. The input signals are expediently transmitted from sensors to the software application and can be checked for plausibility / timeliness.
Alternativ oder zusätzlich können mittels der Sicherheitsfunktionen bevorzugt fahrzeugexterne Daten bzw. deren Verfügbarkeit überwacht werden. Bei derartigen fahrzeugexternen Daten handelt es sich insbesondere um Daten, welche von einer fahrzeugfremden Recheneinheit, wie einem Server oder einer Cloud, an das Kraftfahrzeug übermittelt werden und für die Ausführung der Software-Anwendung benötigt werden. Diese fahrzeugexternen Daten können zweckmäßigerweise ebenfalls auf Plausibilität/Aktualität überprüft werden. Insbesondere wird somit eine Echtzeit-Verfügbarkeit von Cloud-Daten überprüft und eine Echtzeit-Steuerung von Aktoren über die Cloud kann gewährleistet werden.Alternatively or additionally, vehicle-external data or its availability can preferably be monitored by means of the safety functions. In particular, such external vehicle data is data that is transmitted to the motor vehicle by a computing unit, such as a server or a cloud, that is external to the vehicle and that is required for the execution of the software application. This off-board data can also conveniently be checked for plausibility / timeliness. In particular, a real-time availability of cloud data is thus checked and real-time control of actuators via the cloud can be ensured.
Bevorzugt wird mittels der Sicherheitsfunktionen alternativ oder zusätzlich ein Kommunikationskanal (z.B. WLAN, Bluetooth; GSM, 3G, 4G usw.) zu einer fahrzeugexternen Recheneinheit, wie einem Server oder einer Cloud, bzw. dessen Verfügbarkeit überprüft. Wenn die Software-Anwendung während ihrer Ausführung mit einer derartigen fahrzeugexternen Recheneinheit kommuniziert, kann sichergestellt werden, dass auch die entsprechende Kommunikationsverbindung korrekt funktioniert.By means of the security functions, alternatively or additionally, a communication channel (eg WLAN, Bluetooth, GSM, 3G, 4G, etc.) is preferably checked for an off-board computing unit, such as a server or a cloud, or its availability. If the software application communicates with such a vehicle-external computing unit during its execution, it can ensure that the corresponding communication connection works correctly.
Vorteilhafterweise wird eine Priorisierung von Zugriffen auf die Ressourcen über die Schnittstellen durchgeführt. Beispielsweise kann der Fall auftreten, dass sowohl die Software-Anwendung als auch andere Komponenten des Kraftfahrzeugs, insbesondere Steuergeräte, parallel auf dieselbe Ressource zugreifen wollen. Es ist auch denkbar, dass mehrere unterschiedliche Software-Anwendungen parallel auf dieselbe Ressource zugreifen wollen. Die Recheneinheit kann derartige Kollisionen verhindern. Beispielsweise kann die Recheneinheit die unterschiedlichen Zugriffe auf die Ressource bewerten und eine Reihenfolge erstellen, gemäß welcher diese Zugriffe durchgeführt werden sollen.Advantageously, a prioritization of accesses to the resources is performed via the interfaces. For example, the case may arise that both the software application and other components of the motor vehicle, in particular control devices, want to access the same resource in parallel. It is also conceivable that several different software applications want to access the same resource in parallel. The arithmetic unit can prevent such collisions. For example, the arithmetic unit can evaluate the different accesses to the resource and create an order according to which these accesses are to be performed.
Gemäß einer bevorzugten Ausgestaltung werden zur Authentifizierung der fahrzeugfremden Software-Anwendung im Zuge der Überprüfungsphase eine Identifikationsnummer (ID), ein Schlüssel und/oder ein Sicherheitszertifikat überprüft. Zweckmäßigerweise kann somit auf einfache und sichere Weise erkannt werden, ob die Software-Anwendung aus sicherer Quelle stammt oder einen potentiellen Angreifer darstellt.According to a preferred embodiment, an identification number (ID), a key and / or a security certificate are checked in the course of the checking phase for authentication of the software application external to the vehicle. Appropriately, it can thus be recognized in a simple and secure manner, whether the software application comes from a secure source or represents a potential attacker.
Vorzugsweise wird zur Authentifizierung der fahrzeugfremden Software-Anwendung im Zuge der Überprüfungsphase überprüft, ob die fahrzeugfremde Software-Anwendung nach vorgegebenen Sicherheitsrichtlinien entwickelt wurde, insbesondere nach der
Bevorzugt wird im Zuge der Überprüfungsphase zur Bestimmung des Funktionsumfangs der fahrzeugfremden Software-Anwendung bestimmt, auf welche Ressourcen des Kraftfahrzeugs die fahrzeugfremde Software-Anwendung zugreifen möchte, beispielsweise ob die Software-Anwendung auf Lenkung, Bremsen Beschleunigung, etc. Einfluss nehmen will. In the course of the checking phase for determining the functional scope of the software application external to the vehicle, it is preferably determined which resources of the motor vehicle the vehicle external software application would like to access, for example if the software application wants to influence steering, braking, acceleration, etc.
Bevorzugt wird durch die fahrzeugfremde Software-Anwendung eine Fahrassistenzfunktion ausgeführt. Eine derartige Fahrerassistenzfunktion dient insbesondere zur Unterstützung des Fahrers und kann diesen beispielsweise vor Gefahrensituationen warnen oder eine Gefahrensituation auch entschärfen bzw. dieser entgegenwirken. Fahrerassistenzfunktionen können insbesondere über Sensoren die Umgebung wahrnehmen und basierend auf entsprechenden Sensordaten Aktoren ansteuern. Beispiele für derartige Fahrerassistenzfunktionen sind Abstandsregeltempomat (Adaptive Cruise Control, ACC), Kurvenassistent, Einparkassistent, Spurhalteassistent, autonome Längsführung, Aufmerksamkeits-Assistent bzw. Müdigkeitserkennung, Elektronische Stabilitätsprogramm (ESP), Motor-Schleppmoment-Regelung (MSR), Antriebsschlupfregelung (ASR), Antiblockiersystem (ABS) sowie Funktionen im Zuge automatisierten Fahrens.Preferably, a driver assistance function is performed by the vehicle external software application. Such a driver assistance function serves, in particular, to assist the driver and can warn him, for example, of dangerous situations or to defuse or counteract a dangerous situation. Driver assistance functions can perceive the environment, in particular via sensors, and actuate actuators based on corresponding sensor data. Examples of such driver assistance functions are adaptive cruise control (ACC), curve assistant, parking assistant, lane departure warning, autonomous longitudinal guidance, attention and fatigue detection, electronic stability program (ESP), engine drag torque control (MSR), traction control (ASR), Anti-lock braking system (ABS) as well as functions in the course of automated driving.
Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.Further advantages and embodiments of the invention will become apparent from the description and the accompanying drawings.
Die Erfindung ist anhand von Ausführungsbeispielen in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung beschrieben.The invention is illustrated schematically by means of embodiments in the drawing and will be described below with reference to the drawing.
Kurze Beschreibung der ZeichnungenBrief description of the drawings
Ausführungsform(en) der ErfindungEmbodiment (s) of the invention
In
Die Recheneinheit ist als Steuergerät
Der Sensor
Mittels einer fahrzeugfremden Software-Anwendung
In
Die App
Ein zweites Beispiel, um eine App
Nachdem die App
Die einzelnen Funktionen, welche von dem Steuergerät
Im Zuge einer Überprüfungsphase
Der Entwickler hat im Zuge diese Identifikationsnummer, den Schlüssel und das Sicherheitszertifikat nach vorgegebenen Sicherheitsrichtlinien und vorgegebenen Standards in die App
Wenn Identifikationsnummer, Schlüssel und Sicherheitszertifikat erfolgreich überprüft werden konnten, wird von dem Steuergerät
Wenn dies auch erfolgreich überprüft wurde, ist die App
Bei erfolgreicher Authentifizierung wird gemäß Schritt
Wenn die App
Beispielsweise kann festgelegt werden, dass die App
Wenn die App
Die App
In Schritt
Derartige Sicherheitsfunktionen können mittels eines 3-Ebenen-Konzepts realisiert sein. Basis für ein derartiges Konzept sind z.B. Sicherheitsmechanismen, die in der
Eine erste Ebene oder Funktionsebene beinhaltet Motorsteuerungsfunktionen, insbesondere zur Umsetzung von angeforderten Motormomenten, Komponentenüberwachungen, Diagnose von Ein- und Ausgangsgrößen sowie Steuerung von Systemreaktionen im erkannten Fehlerfall.A first level or functional level includes engine control functions, in particular for the implementation of requested engine torques, component monitoring, diagnosis of input and output variables as well as control of system reactions in the detected error case.
In einer zweiten Ebene oder Funktions-Überwachungsebene wird eine zu überwachende Funktion unabhängig von der Funktionsebene berechnet, überwacht und im Fehlerfall ein beherrschbarer Zustand hergestellt. Die Funktions-Überwachungsebene erkennt den fehlerhaften Ablauf überwachungsrelevanter Umfänge der Funktionssoftware in Ebene 1 unter anderem durch die Überwachung der berechneten Momente oder der Fahrzeugbeschleunigung. Im Fehlerfall erfolgt die Auslösung von Systemreaktionen.In a second level or functional monitoring level, a function to be monitored is calculated independently of the functional level, monitored and established in the event of a fault, a manageable state. The function monitoring level detects the erroneous course of monitoring-relevant scopes of the functional software in level 1 inter alia by monitoring the calculated moments or the vehicle acceleration. In the case of an error, the triggering of system reactions takes place.
Eine dritte Ebene oder Rechner-Überwachungsebene umfasst insbesondere ein vom Funktionsrechner unabhängiges Überwachungsmodul (z.B. ein ASIC oder Rechner), welches durch ein Frage-Antwort-Verfahren die ordnungsgemäße Abarbeitung der Programmbefehle des Funktionsrechners testet. Im Fehlerfall erfolgt die Auslösung von Systemreaktionen unabhängig vom Funktionsrechner.A third level or computer monitoring level comprises, in particular, a monitoring module (for example an ASIC or computer) which is independent of the function computer and which tests the proper execution of the program instructions of the function computer by means of a question-and-answer procedure. In the event of an error, the triggering of system reactions takes place independently of the function computer.
Die Sicherheitsfunktionen des Steuergeräts
Dadurch, dass die Überprüfungsphase
ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- US 2014/0106726 A1 [0002] US 2014/0106726 A1 [0002]
- US 7197637 B2 [0003] US 7197637 B2 [0003]
- US 7748043 B2 [0003] US 7748043 B2 [0003]
Zitierte Nicht-PatentliteraturCited non-patent literature
- Norm ISO 26262 [0009] Standard ISO 26262 [0009]
- ISO 26262 [0012] ISO 26262 [0012]
- ISO 26262 [0014] ISO 26262 [0014]
- ISO 26262 [0014] ISO 26262 [0014]
- ISO-Norm 26262 [0018] ISO standard 26262 [0018]
- ISO 26262 [0020] ISO 26262 [0020]
- Norm ISO 26262 [0030] Standard ISO 26262 [0030]
- Norm ISO 26262 [0048] Standard ISO 26262 [0048]
- Norm ISO 26262 Teil 5, Annex D [0056] Standard ISO 26262 Part 5, Annex D [0056]
Claims (11)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102016202527.9A DE102016202527A1 (en) | 2016-02-18 | 2016-02-18 | Computing unit for a motor vehicle |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102016202527.9A DE102016202527A1 (en) | 2016-02-18 | 2016-02-18 | Computing unit for a motor vehicle |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102016202527A1 true DE102016202527A1 (en) | 2017-08-24 |
Family
ID=59522133
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102016202527.9A Pending DE102016202527A1 (en) | 2016-02-18 | 2016-02-18 | Computing unit for a motor vehicle |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102016202527A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102018103517A1 (en) * | 2018-02-16 | 2019-08-22 | Dr. Ing. H.C. F. Porsche Aktiengesellschaft | Method and device for influencing a vehicle profile of an electric vehicle |
DE102019205716A1 (en) * | 2019-04-18 | 2020-10-22 | Audi Ag | Control system and driver assistance system for a motor vehicle |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6006328A (en) * | 1995-07-14 | 1999-12-21 | Christopher N. Drake | Computer software authentication, protection, and security system |
US20020023223A1 (en) * | 2000-02-25 | 2002-02-21 | Ernst Schmidt | Authorization process using a certificate |
US7748043B2 (en) | 2003-07-04 | 2010-06-29 | Bayerische Motoren Werke Aktiengesellschaft | Method for authenticating, in particular, software components that can be loaded into a control unit of a motor vehicle |
US20120297458A1 (en) * | 2011-05-17 | 2012-11-22 | GM Global Technology Operations LLC | Remote video source authentication protocol |
US20140106726A1 (en) | 2012-10-16 | 2014-04-17 | Excelfore Corporation | System and Method for Monitoring Apps in a Vehicle to Reduce Driver Distraction |
-
2016
- 2016-02-18 DE DE102016202527.9A patent/DE102016202527A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6006328A (en) * | 1995-07-14 | 1999-12-21 | Christopher N. Drake | Computer software authentication, protection, and security system |
US20020023223A1 (en) * | 2000-02-25 | 2002-02-21 | Ernst Schmidt | Authorization process using a certificate |
US7197637B2 (en) | 2000-02-25 | 2007-03-27 | Bayerische Motoren Werke Aktiengesellschaft | Authorization process using a certificate |
US7748043B2 (en) | 2003-07-04 | 2010-06-29 | Bayerische Motoren Werke Aktiengesellschaft | Method for authenticating, in particular, software components that can be loaded into a control unit of a motor vehicle |
US20120297458A1 (en) * | 2011-05-17 | 2012-11-22 | GM Global Technology Operations LLC | Remote video source authentication protocol |
US20140106726A1 (en) | 2012-10-16 | 2014-04-17 | Excelfore Corporation | System and Method for Monitoring Apps in a Vehicle to Reduce Driver Distraction |
Non-Patent Citations (4)
Title |
---|
ISO 26262 |
ISO-Norm 26262 |
Norm ISO 26262 |
Norm ISO 26262 Teil 5, Annex D |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102018103517A1 (en) * | 2018-02-16 | 2019-08-22 | Dr. Ing. H.C. F. Porsche Aktiengesellschaft | Method and device for influencing a vehicle profile of an electric vehicle |
DE102019205716A1 (en) * | 2019-04-18 | 2020-10-22 | Audi Ag | Control system and driver assistance system for a motor vehicle |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102017113435A1 (en) | Vehicle gateway network protection | |
DE102014202453A1 (en) | Methods and systems for autonomous vehicle detection, distance measurement and distance control | |
DE102017100380A1 (en) | Diagnostic test execution system and method | |
DE102017222879A1 (en) | Apparatus, method, and computer program for enabling a vehicle component, vehicle-to-vehicle communication module | |
DE102017218872A1 (en) | Method and device for updating software of a motor vehicle control unit | |
EP3721645B1 (en) | Method and system for confirming the identity of a vehicle | |
DE102014209489A1 (en) | Device for securely integrating a software component in a motor vehicle | |
DE102017214661A1 (en) | Method for detecting a manipulation of at least one control device of a motor vehicle and processor device for a motor vehicle and motor vehicle | |
DE112016002785T5 (en) | Electronic control units for vehicles | |
WO2020020666A1 (en) | Method and device for monitoring a driving behaviour of a vehicle which drives in a highly automated fashion and infrastructure facility, vehicle or monitoring vehicle having the device | |
DE102018214999A1 (en) | Device for securing diagnostic commands to a control unit and corresponding motor vehicle | |
US20210089025A1 (en) | Method for controlling a motor vehicle remotely | |
DE102020127631A1 (en) | IMPROVING VEHICLE SAFETY | |
DE102012207215A1 (en) | Method and device for monitoring functions of a computer system, preferably an engine control system of a motor vehicle | |
DE102018109080A1 (en) | SYSTEMS AND METHOD FOR USING MECHANICAL VIBRATION FOR OUTBOARD COMMUNICATIONS ON BOARD OF A VEHICLE | |
DE102019214461A1 (en) | Method for remote control of a motor vehicle | |
DE102016202527A1 (en) | Computing unit for a motor vehicle | |
DE102019214471A1 (en) | Method for remote control of a motor vehicle | |
CN109814521A (en) | The system and method coordinated for vehicle diagnostic test device | |
DE102015221814A1 (en) | Method for carrying out a diagnostic procedure in a motor vehicle | |
DE102019214413A1 (en) | Method for at least partially automated driving of a motor vehicle | |
DE102021208459B4 (en) | Method for authentic data transmission between control units in a vehicle, arrangement with control units, computer program and vehicle | |
DE102014018110A1 (en) | Method and system for the remote control of a vehicle or a vehicle function | |
DE102017222882A1 (en) | Devices, methods and computer program for unlocking vehicle components, vehicle-to-vehicle communication module | |
DE102015221811A1 (en) | Method for operating a vehicle-external software application in a motor vehicle |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R016 | Response to examination communication |