[go: up one dir, main page]

DE102019219667B3 - Computer program product for a peer-to-peer computer network - Google Patents

Computer program product for a peer-to-peer computer network Download PDF

Info

Publication number
DE102019219667B3
DE102019219667B3 DE102019219667.5A DE102019219667A DE102019219667B3 DE 102019219667 B3 DE102019219667 B3 DE 102019219667B3 DE 102019219667 A DE102019219667 A DE 102019219667A DE 102019219667 B3 DE102019219667 B3 DE 102019219667B3
Authority
DE
Germany
Prior art keywords
action
peer
intended
decentralized
motor vehicle
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.)
Active
Application number
DE102019219667.5A
Other languages
German (de)
Inventor
Alexandre Opeck de Morais Bordignon
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZF Friedrichshafen AG
Original Assignee
ZF Friedrichshafen AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZF Friedrichshafen AG filed Critical ZF Friedrichshafen AG
Priority to DE102019219667.5A priority Critical patent/DE102019219667B3/en
Application granted granted Critical
Publication of DE102019219667B3 publication Critical patent/DE102019219667B3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0015Planning or execution of driving tasks specially adapted for safety
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0005Processor details or data handling, e.g. memory registers or chip architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0006Digital architecture hierarchy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Computing Systems (AREA)
  • Transportation (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

Die Erfindung betrifft ein Computerprogrammprodukt für ein Peer-to-Peer Computernetzwerk (24), wobei das Computerprogrammprodukt, wenn es auf in einem Kraftfahrzeug angeordneten dezentralen Prozessoreinheiten (8, 25) eines Peer-to-Peer Computernetzwerkes (24) ausgeführt wird, die dezentralen Prozessoreinheiten (8, 25) anleitet, auf einen Aktionsdatensatz (27.2, 28.2, 29.2) zuzugreifen, der von einer zentralen Prozessoreinheit (3) des Kraftfahrzeugs generiert worden ist, wobei der Aktionsdatensatz (27.2, 28.2, 29.2) Informationen darüber enthält, dass die zentrale Prozessoreinheit (3) beabsichtigt, eine Aktion des Kraftfahrzeugs anzuweisen. Weiterhin werden die dezentralen Prozessoreinheiten (8, 25) angeleitet, die beabsichtigte Aktion zu validieren, bevor sie durch die zentrale Prozessoreinheit (3) angewiesen wird, und der zentralen Prozessoreinheit (3) zu erlauben, die beabsichtigte Aktion anzuweisen, wenn die Aktion erfolgreich validiert worden ist, sowie der zentralen Prozessoreinheit (3) zu verbieten, die beabsichtigte Aktion anzuweisen, wenn die Aktion nicht erfolgreich validiert worden ist.The invention relates to a computer program product for a peer-to-peer computer network (24), the computer program product, when it is executed on decentralized processor units (8, 25) of a peer-to-peer computer network (24) arranged in a motor vehicle, the decentralized Instructs processor units (8, 25) to access an action data set (27.2, 28.2, 29.2) that has been generated by a central processor unit (3) of the motor vehicle, the action data set (27.2, 28.2, 29.2) containing information that the central processor unit (3) intends to instruct an action of the motor vehicle. Furthermore, the decentralized processing units (8, 25) are instructed to validate the intended action before it is instructed by the central processing unit (3), and to allow the central processing unit (3) to instruct the intended action if the action is successfully validated and to forbid the central processing unit (3) from instructing the intended action if the action has not been successfully validated.

Description

Die Erfindung betrifft ein Computerprogrammprodukt für ein Peer-to-Peer Computernetzwerk. Insbesondere betrifft die Erfindung ein Verfahren zur Validierung und Steuerung einer Aktion eines Kraftfahrzeugs mittels eines Peer-to-Peer Computernetzwerks. Beansprucht werden in diesem Zusammenhang insbesondere ein entsprechendes Peer-to-Peer Computernetzwerk sowie ein Kraftfahrzeug mit dem Peer-to-Peer Computernetzwerk.
Im Stand der Technik wird z.B. in der US 2018/ 0 374 283 A1 ein Verfahren und eine Vorrichtung zur Validierung von Fahrzeugtransactionen offenbart. Aus der WO 2019/ 156916 A1 geht ein System zur Validierung von Fahrzeugoperationen mittels einer Blockchain hervor.
The invention relates to a computer program product for a peer-to-peer computer network. In particular, the invention relates to a method for validating and controlling an action of a motor vehicle by means of a peer-to-peer computer network. In this context, particular claims are made of a corresponding peer-to-peer computer network and a motor vehicle with the peer-to-peer computer network.
In the prior art, for example, in the US 2018/0 374 283 A1 discloses a method and an apparatus for validating vehicle transactions. From the WO 2019/156916 A1 a system for the validation of vehicle operations using a blockchain emerges.

Eine Aufgabe der vorliegenden Erfindung kann darin gesehen werden, sicherzustellen, dass eine Aktion eines Kraftfahrzeugs, insbesondere eine kritische Funktion im Kontext des Autonomen Fahrens genau unter den richtigen Sicherheitsbedingungen und in einer klar definierten Reihenfolge ausgeführt wird. Die Aufgabe wird gelöst durch die Gegenstände der unabhängigen Patentansprüche. Vorteilhafte Ausführungsformen sind Gegenstand der Unteransprüche, der folgenden Beschreibung sowie der Figuren.One object of the present invention can be seen in ensuring that an action of a motor vehicle, in particular a critical function in the context of autonomous driving, is carried out precisely under the correct safety conditions and in a clearly defined sequence. The object is achieved by the subjects of the independent claims. Advantageous embodiments are the subject matter of the subclaims, the following description and the figures.

Vorgeschlagen werden ein Computerprogrammprodukt, ein Verfahren und ein Peer-to-Peer Computernetzwerk zur Validierung und Steuerung bzw. Ausführung einer Aktion eines Kraftfahrzeugs sowie ein Kraftfahrzeug mit dem Peer-to-Peer Computernetzwerk. Dezentrale Prozessoreinheiten, die zu dem Peer-to-Peer Computernetzwerks gehören, können dabei auf das Computerprogrammprodukt zugreifen, wozu das Computerprogrammprodukt beispielsweise auf einer computerlesbaren Speichereinheit, z.B. einem Speicherchip oder auf einer Festplatte oder Server, einer insbesondere jeden dezentralen Prozessoreinheit des Peer-to-Peer Computernetzwerks gespeichert sein kann.A computer program product, a method and a peer-to-peer computer network for validating and controlling or executing an action of a motor vehicle and a motor vehicle with the peer-to-peer computer network are proposed. Decentralized processor units belonging to the peer-to-peer computer network can access the computer program product, for which purpose the computer program product is stored, for example, on a computer-readable memory unit, e.g. a memory chip or on a hard drive or server, in particular each decentralized processor unit of the peer-to-peer. Peer computer network can be stored.

Im Rahmen der vorliegenden Erfindung wird insbesondere vorgeschlagen, Blockchain-Technologie nicht außerhalb sondern innerhalb einer einzigen Einheit zu nutzen, in diesem Fall innerhalb eines autonomen Kraftfahrzeugs, um Funktionen zu validieren, die ein hohes Sicherheitsniveau erfordern (z.B. ASIL D). Dies erfolgt durch verschiedene zu diesem Zweck entwickelte Hardwareblöcke. Gemäß der vorliegenden Erfindung sind insbesondere mehrere solcher Hardwareblöcke vorgesehen, um eine interne Blockchain innerhalb des autonomen Kraftfahrzeugs zu lösen. Mit anderen Worten stellt die vorliegende Erfindung eine Technologie insbesondere für Sicherheitsfunktionen in einem autonomen Fahrkontext bereit, wobei die Sicherheitsfunktionen mittels eines Kraftfahrzeug-internen Peer-to-Peer Computernetzwerks überprüft bzw. validiert und bei erfolgreicher Validierung in einer internen Blockchain gespeichert werden. Der vorgeschlagene Ansatz stellt sicher, dass die kritischen Funktionen in dem Kontext des Autonomen Fahrens unter den richtigen Sicherheitsbedingungen ausgeführt werden, nachdem die Validierung Kraftfahrzeug-intern erfolgt ist.In the context of the present invention, it is proposed in particular to use blockchain technology not outside but within a single unit, in this case inside an autonomous motor vehicle, in order to validate functions that require a high level of security (e.g. ASIL D). This is done using various hardware blocks developed for this purpose. According to the present invention, in particular, several such hardware blocks are provided in order to solve an internal blockchain within the autonomous motor vehicle. In other words, the present invention provides a technology in particular for safety functions in an autonomous driving context, the safety functions being checked or validated by means of a vehicle-internal peer-to-peer computer network and, if validation is successful, stored in an internal blockchain. The proposed approach ensures that the critical functions in the context of autonomous driving are carried out under the correct safety conditions after the validation has been carried out internally in the vehicle.

In diesem Sinne wird gemäß einem ersten Aspekt der Erfindung ein Computerprogrammprodukt für ein Peer-to-Peer Computernetzwerk bereitgestellt. Das Computerprogrammprodukt leitet, wenn es auf in einem Kraftfahrzeug angeordneten dezentralen Prozessoreinheiten eines Peer-to-Peer Computernetzwerkes ausgeführt wird, die dezentralen Prozessoreinheiten an, auf einen Aktionsdatensatz zuzugreifen, der von einer zentralen Prozessoreinheit des Kraftfahrzeugs generiert worden ist, wobei der Aktionsdatensatz Informationen darüber enthält, dass die zentrale Prozessoreinheit beabsichtigt, eine Aktion des Kraftfahrzeugs anzuweisen.In this sense, according to a first aspect of the invention, a computer program product for a peer-to-peer computer network is provided. When executed on decentralized processor units of a peer-to-peer computer network arranged in a motor vehicle, the computer program product instructs the decentralized processor units to access an action data set that has been generated by a central processor unit of the motor vehicle, the action data set containing information about it that the central processor unit intends to instruct an action of the motor vehicle.

Die zentrale Prozessoreinheit und die dezentralen Prozessoreinheiten können jeweils einen Prozessor und einen Speicher umfassen. Die im Rahmen der vorliegenden Erfindung beschriebenen Prozessoreinheiten können auch als Computer bezeichnet werden. Auf dem jeweiligen Speicher der Prozessoreinheiten bzw. Computern kann das Computerprogrammprodukt gemäß dem ersten Aspekt der Erfindung gespeichert sein, wobei der jeweilige Prozessor beispielsweise jeweils mittels einer Kommunikationsschnittstelle auf die jeweilige Speichereinheit zugreifen kann, um das darauf gespeicherte Computerprogrammprodukt auszuführen. Die an das Peer-to-Peer Computernetzwerk angeschlossene zentrale Prozessoreinheit kann einen Computer des Peer-to-Peer Computernetzwerks bilden. Mit anderen Worten kann das Peer-to-Peer Computernetzwerk die zentrale Prozessoreinheit umfassen.The central processor unit and the decentralized processor units can each comprise a processor and a memory. The processor units described in the context of the present invention can also be referred to as computers. The computer program product according to the first aspect of the invention can be stored on the respective memory of the processor units or computers, the respective processor being able to access the respective memory unit by means of a communication interface in order to execute the computer program product stored thereon. The central processor unit connected to the peer-to-peer computer network can form a computer of the peer-to-peer computer network. In other words, the peer-to-peer computer network can include the central processor unit.

Das Merkmal „Aktion“ umfasst automatisierte Funktionen des Kraftfahrzeugs. Die automatisierten Funktionen müssen nicht durch einen Fahrzeuginsassen angewiesen und ausgeführt, insbesondere gesteuert werden. Darunter fallen beispielsweise Fahrfunktionen wie Bremsen, Beschleunigen oder Lenken des Kraftfahrzeugs sowie damit verknüpfter Funktionen in einem autonomen oder teilautonomen Fahrmodus. Weiterhin stellen auch beispielsweise die automatische Steuerung des äußeren Lichtsystems einschließlich Blinkern eine Aktion dar. Auch das automatische Management der Software bzw. Firmware zum Steuern des Kraftfahrzeugs und dessen Fahrerassistenzsysteme stellt eine Aktion dar, z.B. die Installation bzw. Aktualisierung einer Firmware. All diese Aktionen stellen ein Ereignis dar, wenn sie durchgeführt werden. Diese Aktionen bzw. Ereignisse werden durch die dezentralen Prozessoreinheiten des Peer-to-Peer Computernetzwerks validiert, bevor die zentrale Prozessoreinheit sie anweisen darf und bevor die Aktion ausgeführt werden darf.The “action” feature includes automated functions of the motor vehicle. The automated functions do not have to be instructed and executed, in particular controlled, by a vehicle occupant. This includes, for example, driving functions such as braking, accelerating or steering the motor vehicle and related functions in an autonomous or semi-autonomous driving mode. Furthermore, for example, the automatic control of the external light system, including indicators, also represent an action. The automatic management of the software or firmware for controlling the motor vehicle and its driver assistance systems also represent an action, for example installing or updating firmware. All of these actions constitute an event when they are performed. These actions or events are carried out by the decentralized Processor units of the peer-to-peer computer network validated before the central processor unit may instruct them and before the action may be carried out.

Die zentrale Prozessoreinheit kann insbesondere in einem zentralen Steuergerät (Central Electronic Control Unit oder abgekürzt: Central ECU) des Kraftfahrzeugs angeordnet sein. Das Steuergerät kann mittels der zentralen Prozessoreinheit eine Aktion des Kraftfahrzeugs ausführen, insbesondere steuern, beispielsweise eine Fahrfunktion, sodass das Kraftfahrzeug autonom oder zumindest teilautonom fahren kann.The central processor unit can in particular be arranged in a central control unit (Central Electronic Control Unit or, for short: Central ECU) of the motor vehicle. The control device can execute an action of the motor vehicle by means of the central processor unit, in particular control it, for example a driving function, so that the motor vehicle can drive autonomously or at least partially autonomously.

Die „beabsichtigte“ Aktion ist diejenige Aktion, welche die zentrale Prozessoreinheit anzuweisen beabsichtigt. Unter „anweisen“ ist insbesondere zu verstehen, dass die zentrale Prozessoreinheit die Aktion initiiert, beispielsweise eine autonome Fahrfunktion des Kraftfahrzeugs. Dazu kann die zentrale Prozessoreinheit eine entsprechende Anweisung an eine betreffende Funktionseinheit übermitteln, beispielsweise an ein Fahrerassistenzsystem. Es ist möglich, nicht jedoch notwendig, dass die zentrale Prozessoreinheit die Aktion auch selbst ausführt, insbesondere steuert. Die Steuerung der Aktion an sich kann beispielsweise mittels einer Prozessoreinheit (ECU) eines Fahrerassistenzsystems erfolgen, welches weiterhin insbesondere wenigstens einen Sensor und wenigstens einen Aktuator umfassen kann. Unter einem „Aktuator“ (von dem englischen Ausdruck „actuator“ herrührend) kann ein Element verstanden werden, das dazu eingerichtet ist, elektrische Signale in eine mechanische Bewegung oder in eine andere physikalische Größe umzusetzen. Die elektrischen Signale können beispielsweise von einem Steuerungscomputer ausgehende Befehle umfassen. Bei den anderen physikalischen Größen kann es sich beispielsweise um einen Druck oder um eine Temperatur handeln. Bei dem Aktuator kann es sich beispielsweise um einen Hydraulikzylinder oder um einen elektrischen Motor handeln. Mittels des Aktuators kann beispielsweise eine Bremse, eine Antriebseinheit oder ein Lenksystem des Kraftfahrzeugs betätigt werden.The “intended” action is that action which the central processing unit intends to instruct. “Instruct” is to be understood in particular to mean that the central processor unit initiates the action, for example an autonomous driving function of the motor vehicle. For this purpose, the central processor unit can transmit a corresponding instruction to a relevant functional unit, for example to a driver assistance system. It is possible, but not necessary, for the central processor unit to also carry out the action itself, in particular to control it. The action itself can be controlled, for example, by means of a processor unit (ECU) of a driver assistance system, which can furthermore include in particular at least one sensor and at least one actuator. An “actuator” (derived from the English expression “actuator”) can be understood to mean an element that is set up to convert electrical signals into a mechanical movement or into another physical quantity. The electrical signals can include commands emanating from a control computer, for example. The other physical quantities can be a pressure or a temperature, for example. The actuator can be, for example, a hydraulic cylinder or an electric motor. For example, a brake, a drive unit or a steering system of the motor vehicle can be actuated by means of the actuator.

Die dezentralen Prozessoreinheiten stellen Blockchain-Hardwareblöcke innerhalb des Kraftfahrzeugs dar. Die Anzahl der Blockchain-Hardwareblöcke kann durch Projektanforderungen wie Strombudget und Zeitbudget definiert werden. Die dezentralen Prozessoreinheiten können beispielsweise auf den Aktionsdatensatz zugreifen, indem die zentrale Prozessoreinheit den Aktionsdatensatz an die dezentralen Prozessoreinheiten übermittelt. Dazu kann das Computerprogrammprodukt entsprechenden Programmcode mit Anweisungen für die zentrale Prozessoreinheit umfassen. Alternativ kann die dezentrale Prozessoreinheit auch auf einer Speichereinheit hinterlegen, auf welche die dezentralen Prozessoreinheiten zugreifen können.The decentralized processor units represent blockchain hardware blocks within the motor vehicle. The number of blockchain hardware blocks can be defined by project requirements such as power budget and time budget. The decentralized processor units can, for example, access the action data record in that the central processor unit transmits the action data record to the decentralized processor units. For this purpose, the computer program product can comprise corresponding program code with instructions for the central processor unit. Alternatively, the decentralized processor unit can also be stored in a memory unit which the decentralized processor units can access.

Weiterhin leitet das Computerprogrammprodukt, wenn es auf den dezentralen Prozessoreinheiten ausgeführt wird, die dezentralen Prozessoreinheiten an, die beabsichtigte Aktion zu validieren, bevor sie durch die zentrale Prozessoreinheit angewiesen wird. Wenn die Aktion erfolgreich validiert worden ist, weist das Computerprogramm, wenn es auf den dezentralen Prozessoreinheiten ausgeführt wird, die dezentralen Prozessoreinheiten an, der zentralen Prozessoreinheit zu erlauben, die beabsichtigte Aktion anzuweisen. Wenn die Aktion jedoch nicht erfolgreich validiert worden ist, weist das Computerprogramm, wenn es auf den dezentralen Prozessoreinheiten ausgeführt wird, die dezentralen Prozessoreinheiten an, der zentralen Prozessoreinheit zu verbieten, die beabsichtigte Aktion anzuweisen.Furthermore, when the computer program product is executed on the decentralized processor units, it instructs the decentralized processor units to validate the intended action before it is instructed by the central processor unit. If the action has been successfully validated, the computer program, when it is executed on the decentralized processing units, instructs the decentralized processing units to allow the central processing unit to instruct the intended action. If, however, the action has not been successfully validated, the computer program, when it is executed on the decentralized processor units, instructs the decentralized processor units to forbid the central processor unit from instructing the intended action.

Das „Erlauben“ kann beispielsweise umgesetzt werden, indem das Peer-to-Peer Computernetzwerk die zentrale Prozessoreinheit anweist, die von der zentralen Prozessoreinheit beabsichtigte und durch das Peer-to-Peer Computernetzwerk erfolgreich validierte Aktion des Kraftfahrzeugs anzuweisen. Weiterhin kann das Peer-to-Peer Computernetzwerk die zentrale Prozessoreinheit darüber benachrichtigen, dass die von der zentralen Prozessoreinheit beabsichtigte Aktion durch das Peer-to-Peer Computernetzwerk erfolgreich validiert worden ist. In diesem Fall kann die zentrale Prozessoreinheit entscheiden, ob sie die beabsichtigte und validierte Aktion anweist oder nicht.The “allowing” can be implemented, for example, in that the peer-to-peer computer network instructs the central processor unit to instruct the motor vehicle action intended by the central processor unit and successfully validated by the peer-to-peer computer network. Furthermore, the peer-to-peer computer network can notify the central processor unit that the action intended by the central processor unit has been successfully validated by the peer-to-peer computer network. In this case, the central processing unit can decide whether it instructs the intended and validated action or not.

Das „Verbieten“ kann beispielsweise umgesetzt werden, indem das Peer-to-Peer Computernetzwerk die zentrale Prozessoreinheit anweist, die von der zentralen Prozessoreinheit beabsichtigte und durch das Peer-to-Peer Computernetzwerk erfolgreich validierte Aktion des Kraftfahrzeugs nicht anzuweisen. Weiterhin kann das Peer-to-Peer Computernetzwerk dazu eingerichtet sein, die Aktion zu blockieren, wenn die von der zentralen Prozessoreinheit beabsichtigte Aktion durch das Peer-to-Peer Computernetzwerk nicht erfolgreich validiert worden ist. In diesem Fall kann beispielsweise ein Zugriff der zentralen Prozessoreinheit auf die nicht validierte Aktion verweigert werden.The “prohibition” can be implemented, for example, in that the peer-to-peer computer network instructs the central processor unit not to instruct the motor vehicle's action intended by the central processor unit and successfully validated by the peer-to-peer computer network. Furthermore, the peer-to-peer computer network can be set up to block the action if the action intended by the central processing unit has not been successfully validated by the peer-to-peer computer network. In this case, for example, access by the central processor unit to the non-validated action can be denied.

Gemäß der vorliegenden Erfindung soll jede Aktion, die das autonome Fahrzeug ausführt, als ein bestimmtes Ereignis betrachtet und insbesondere über das gesamte Peer-to-Peer Computernetzwerk validiert werden. Dadurch, dass die beabsichtigte Aktion zunächst durch die dezentralen Prozessoreinheiten des Peer-to-Peer Computernetzwerks validiert wird, bevor die geplante Aktion durch die zentrale Prozessoreinheit angewiesen und anschließend ausgeführt wird, kann sichergestellt werden, dass die beabsichtigte Aktion unter den richtigen Voraussetzungen und in der richtigen Reihenfolge durchgeführt wird.According to the present invention, every action carried out by the autonomous vehicle should be viewed as a specific event and, in particular, should be validated over the entire peer-to-peer computer network. Because the intended action is first validated by the decentralized processor units of the peer-to-peer computer network before the planned action is instructed by the central processor unit and then carried out, it can be ensured that the intended action is performed under the correct conditions and in the correct order.

Weiterhin wird gemäß einem zweiten Aspekt der Erfindung ein Verfahren zur Validierung und Steuerung einer Aktion eines Kraftfahrzeugs mittels eines Peer-to-Peer Computernetzwerks vorgeschlagen, wobei das Peer-to-Peer Computernetzwerk mehrere dezentrale Prozessoreinheiten umfasst, die in einem Kraftfahrzeug angeordnet sind. Das Verfahren umfasst die Schritte

  • - Zugreifen auf einen Aktionsdatensatz mittels der dezentralen Prozessoreinheiten, wobei der Aktionsdatensatz von einer zentralen Prozessoreinheit des Kraftfahrzeugs generiert worden ist, und wobei der Aktionsdatensatz Informationen darüber enthält, dass die zentrale Prozessoreinheit beabsichtigt, eine Aktion des Kraftfahrzeugs anzuweisen,
  • - Validieren der beabsichtigten Aktion mittels der dezentralen Prozessoreinheiten, bevor die beabsichtigte Aktion durch die zentrale Prozessoreinheit angewiesen wird,
  • - Erlauben, dass die zentrale Prozessoreinheit die beabsichtigte Aktion anweist, wenn die Aktion erfolgreich validiert worden ist, und
  • - Verbieten, dass die zentrale Prozessoreinheit die beabsichtigte Aktion anweist, wenn die Aktion nicht erfolgreich validiert worden ist.
Furthermore, according to a second aspect of the invention, a method for validating and controlling an action of a motor vehicle by means of a peer-to-peer computer network is proposed, the peer-to-peer computer network comprising several decentralized processor units which are arranged in a motor vehicle. The method comprises the steps
  • - Access to an action data record by means of the decentralized processor units, the action data record having been generated by a central processor unit of the motor vehicle, and the action data record containing information about the fact that the central processor unit intends to instruct the motor vehicle to take an action,
  • - Validation of the intended action by means of the decentralized processor units before the intended action is instructed by the central processor unit,
  • Allowing the central processing unit to instruct the intended action if the action has been successfully validated, and
  • Prohibiting the central processing unit from instructing the intended action if the action has not been successfully validated.

Ferner wird gemäß einem dritten Aspekt der Erfindung ein Peer-to-Peer Computernetzwerk zur Validierung und Steuerung einer Aktion eines Kraftfahrzeugs bereitgestellt, wobei das Peer-to-Peer Computernetzwerk mehrere dezentrale Prozessoreinheiten umfasst, wobei die dezentralen Prozessoreinheiten dazu eingerichtet sind,

  • - auf einen Aktionsdatensatz zuzugreifen, der von einer zentralen Prozessoreinheit des Kraftfahrzeugs generiert worden ist, wobei der Aktionsdatensatz Informationen darüber enthält, dass die zentrale Prozessoreinheit beabsichtigt, eine Aktion des Kraftfahrzeugs anzuweisen,
  • - die beabsichtigte Aktion zu validieren, bevor sie durch die zentrale Prozessoreinheit angewiesen wird,
  • - der zentralen Prozessoreinheit zu erlauben, die beabsichtigte Aktion anzuweisen, wenn die Aktion erfolgreich validiert worden ist, und
  • - der zentralen Prozessoreinheit zu verbieten, die beabsichtigte Aktion anzuweisen, wenn Aktion nicht erfolgreich validiert worden ist.
Furthermore, according to a third aspect of the invention, a peer-to-peer computer network for validating and controlling an action of a motor vehicle is provided, the peer-to-peer computer network comprising several decentralized processor units, the decentralized processor units being set up to
  • - to access an action data record that has been generated by a central processor unit of the motor vehicle, the action data record containing information about the fact that the central processor unit intends to instruct an action of the motor vehicle,
  • - to validate the intended action before it is instructed by the central processing unit,
  • allowing the central processing unit to instruct the intended action if the action has been successfully validated, and
  • to forbid the central processing unit from instructing the intended action if action has not been successfully validated.

Außerdem wird gemäß einem vierten Aspekt der Erfindung ein autonom fahrendes Kraftfahrzeug vorgeschlagen, das ein Peer-to-Peer Computernetzwerk gemäß dem dritten Aspekt der Erfindung und eine zentrale Prozessoreinheit umfasst, wobei die zentrale Prozessoreinheit dazu eingerichtet ist, den Aktionsdatensatz zu generieren, auf den die dezentralen Prozessoreinheiten des Peer-to-Peer Computernetzwerks zugreifen können. Bei dem autonom fahrenden Kraftfahrzeug handelt es sich beispielsweise um ein Automobil (z.B. um einen Personenkraftfahrwagen mit einem Gewicht von weniger als 3,5 t), Motorrad, Motorroller, Moped, Fahrrad, E-Bike, Bus, Nutzfahrzeug oder Lastkraftwagen (Bus und Lastkraftwagen z.B. mit einem Gewicht von über 3,5 t), oder aber auch um ein Schienenfahrzeug, ein Schiff, ein Luftfahrzeug wie Helikopter oder Flugzeug. Mit anderen Worten ist die Erfindung in allen Bereichen des Transportwesens wie Automotive, Aviation, Nautik, Astronautik etc. einsetzbar. Das Kraftfahrzeug kann beispielsweise zu einer Fahrzeugflotte gehören.In addition, according to a fourth aspect of the invention, an autonomously driving motor vehicle is proposed which comprises a peer-to-peer computer network according to the third aspect of the invention and a central processor unit, wherein the central processor unit is set up to generate the action data set to which the decentralized processor units of the peer-to-peer computer network can access. The autonomously driving motor vehicle is, for example, an automobile (e.g. a passenger vehicle weighing less than 3.5 t), motorcycle, scooter, moped, bicycle, e-bike, bus, utility vehicle or truck (bus and truck e.g. with a weight of over 3.5 t), but also around a rail vehicle, a ship, an aircraft such as a helicopter or an airplane. In other words, the invention can be used in all areas of transport such as automotive, aviation, nautical, astronautical, etc. The motor vehicle can, for example, belong to a vehicle fleet.

Die folgenden Ausführungen im Zusammenhang mit Ausführungsformen der vorliegenden Erfindung gelten - wenn auch oftmals im Zusammenhang mit dem Computerprogrammprodukt gemäß dem ersten Aspekt der Erfindung beschrieben, gleichermaßen für das Verfahren gemäß dem zweiten Aspekt der Erfindung, für das Peer-to-Peer Computernetzwerk gemäß dem dritten Aspekt der Erfindung und für das autonom fahrende Kraftfahrzeug gemäß dem vierten Aspekt der Erfindung.The following statements in connection with embodiments of the present invention apply - albeit often described in connection with the computer program product according to the first aspect of the invention, equally to the method according to the second aspect of the invention, to the peer-to-peer computer network according to the third Aspect of the invention and for the autonomously driving motor vehicle according to the fourth aspect of the invention.

In einem Computernetzwerk können mehrere Computer bzw. Prozessoreinheiten miteinander kommunizieren. Das Computernetzwerk kann auf dem Internet realisiert werden. Unter einem „Peer-to-Peer Computernetzwerk“ kann eine Computer-Computer-Verbindung bzw. eine Prozessoreinheit-Prozessoreinheit-Verbindung verstanden werden, bei der alle Computer bzw. Prozessoreinheiten untereinander verbunden und insbesondere gleichberechtigt sind. Der Gegensatz zu einer Peer-to-Peer Verbindung ist das Client-Server-Modell, bei dem ein zentraler Server einen Dienst anbietet und ein Client diesen Dienst nutzt.Several computers or processor units can communicate with one another in a computer network. The computer network can be implemented on the Internet. A “peer-to-peer computer network” can be understood to mean a computer-computer connection or a processor unit-processor unit connection in which all computers or processor units are connected to one another and, in particular, have equal rights. The contrast to a peer-to-peer connection is the client-server model, in which a central server offers a service and a client uses this service.

In einer Ausführungsform weist das Computer-Programmprodukt, wenn es auf den dezentralen Prozessoreinheiten ausgeführt wird, die dezentralen Prozessoreinheiten an, die von der zentralen Prozessoreinheit beabsichtigte Aktion in einer Blockchain zu speichern, wenn die Aktion erfolgreich validiert worden ist.In one embodiment, the computer program product, when it is executed on the decentralized processor units, instructs the decentralized processor units to store the action intended by the central processor unit in a blockchain if the action has been successfully validated.

Eine Blockchain kann in dem Peer-to-Peer Computernetzwerk realisiert werden, in dem alle Computer sowohl Dienste in Anspruch nehmen als auch zur Verfügung stellen. Die Netzwerkteilnehmer, d.h. die Computer bzw. Prozessoreinheiten, die das Peer-to-Peer Computernetzwerk bilden, können in verschiedene Gruppen, zum Beispiel in erste Netzwerkteilnehmer und zweite Netzwerkteilnehmer eingeteilt werden. Erste Netzwerkteilnehmer, z.B. die zentrale Prozessoreinheit, senden Aktionsdatensätze und empfangen Anweisungen. Zweite Netzwerkteilnehmer, z.B. die dezentralen Prozessoreinheiten, können im Vergleich zu den ersten Netzwerkteilnehmern Transaktionen validieren, insbesondere die von der zentralen Prozessoreinheit beabsichtigten Aktionen, das heißt auf Gültigkeit oder Legitimität hin überprüfen. Dazu sind die zweiten Netzwerkteilnehmer dazu eingerichtet, in einem Konsensverfahren spezielle Validierungsprozesse durchzuführen.A blockchain can be implemented in the peer-to-peer computer network in which all computers both use and provide services. The network participants, ie the computers or processor units that form the peer-to-peer computer network, can be in different groups, for example in the first Network participants and second network participants are divided. The first network participants, for example the central processing unit, send action data records and receive instructions. Second network participants, for example the decentralized processor units, can validate transactions in comparison to the first network participants, in particular check the actions intended by the central processor unit, that is to say check for validity or legitimacy. For this purpose, the second network participants are set up to carry out special validation processes in a consensus procedure.

Mit anderen Worten können die Aktionsdatensätze durch die zweiten Netzwerkteilnehmer auf Gültigkeit überprüft und insbesondere ein „digitaler Fingerabdruck“ der erfolgreich validierten Aktionsdatensätze in einem neuen Block an die Blockchain angehängt werden. Zur Validierung der Transaktionen führen die zweiten Netzwerkteilnehmer (Berechtigungsknoten) einen Übereinstimmungsalgorithmus, auch Konsensus Algorithmus bezeichnet, aus. Dieser Übereinstimmungsalgorithmus stellt sicher, dass der nächste Block einer Blockchain der einzig wahre Block ist. Außerdem wird mit dem Übereinstimmungsalgorithmus sichergestellt, dass die Blockchain nicht von Dritten geändert wird. Beispiele für Übereinstimmungsalgorithmen sind der Proof of Work, Proof of Authority, Proof of Stake, Proof of Activity, Proof of Burn, Proof of Capacity und der Proof of Elapsed Time Algorithmus.In other words, the action data records can be checked for validity by the second network participants and, in particular, a “digital fingerprint” of the successfully validated action data records can be attached to the blockchain in a new block. To validate the transactions, the second network participants (authorization nodes) execute a match algorithm, also known as a consensus algorithm. This matching algorithm ensures that the next block in a blockchain is the only true block. In addition, the matching algorithm ensures that the blockchain is not changed by third parties. Examples of match algorithms are the Proof of Work, Proof of Authority, Proof of Stake, Proof of Activity, Proof of Burn, Proof of Capacity and the Proof of Elapsed Time Algorithm.

Die Blockchain-Technologie wird insbesondere im Finanzdienstleistungssektor auch als Distributed Ledger Technology bezeichnet, das heißt eine Technologie für ein dezentrales Hauptbuch. Das dezentrale Hauptbuch ist nicht zentral abgelegt, sondern auf vielen verschiedenen Computern gespeichert, auf denen es aktualisiert wird. Das dezentrale Hauptbuch entsteht durch die Blockchain bzw. das dezentrale Ablegen der Aktionsdatensätze auf verschiedenen Computern automatisch. Merkmale dieser Technologie sind ihre Dezentralität, Unveränderlichkeit und Transparenz. Blockchain technology is also known as Distributed Ledger Technology, especially in the financial services sector, i.e. a technology for a decentralized general ledger. The decentralized ledger is not stored centrally but is stored on many different computers on which it is updated. The decentralized general ledger is created automatically by the blockchain or the decentralized storage of the action data records on different computers. Characteristics of this technology are its decentralization, immutability and transparency.

Vereinfacht ausgedrückt ist eine Blockchain eine Kette von Blöcken, in denen jeweils Transaktionen, im Kontext der vorliegenden Erfindung sind dies die vorstehend beschriebenen Aktionen des Kraftfahrzeugs, miteinander verknüpft werden. Die Transaktionen bzw. Transaktionsdatensätze werden zu Blöcken zusammengefasst, auf Gültigkeit überprüft und in einem Konsensprozess an die bisherige Kette von Blöcken angefügt. Diese Kette von Blöcken bildet das dezentrale Hauptbuch. Ein Kunde führt also eine Transaktion in der Blockchain aus. Jeder Teilnehmer weiß, dass diese Transaktion stattgefunden hat.In simple terms, a blockchain is a chain of blocks in which transactions, in the context of the present invention these are the actions of the motor vehicle described above, are linked to one another. The transactions or transaction data records are combined into blocks, checked for validity and added to the previous chain of blocks in a consensus process. This chain of blocks forms the decentralized general ledger. So a customer carries out a transaction in the blockchain. Every participant knows that this transaction took place.

Erfindungsgemäß wird die von der zentralen Prozessoreinheit beabsichtigte Aktion validiert, indem geprüft wird, ob sicherheitsrelevante Voraussetzungen zum Ausführen der beabsichtigten Aktion erfüllt sind. Eine sicherheitsrelevante Voraussetzung umfasst Zustände des Fahrzeugs, z.B. Fahrzustände, Zustände des Antriebsstrangs, der Sensorik oder Zustände elektronischer Elemente des Interieurs oder Exterieurs wie beispielsweise Beleuchtung. Auch eine Aktion kann eine sicherheitsrelevante Voraussetzung darstellen, z.B. dass das Kraftfahrzeug zum Stillstand gebracht wird oder gesteuert durch Sensorik gelenkt wird.According to the invention, the action intended by the central processor unit is validated by checking whether safety-relevant prerequisites for carrying out the intended action are met. A safety-relevant prerequisite includes the states of the vehicle, e.g. driving states, states of the drive train, the sensors or the states of electronic elements of the interior or exterior such as lighting. An action can also represent a safety-relevant prerequisite, e.g. that the motor vehicle is brought to a standstill or steered by sensors.

Die dezentralen Prozessoreinheiten können beispielsweise auf eine Datenbank zugreifen, in welcher alle sicherheitsrelevanten Voraussetzungen zum Ausführen der beabsichtigten Aktion hinterlegt sind. In der Datenbank können insbesondere sicherheitsrelevante Voraussetzungen für eine Vielzahl von Aktionen hinterlegt sein, die von der zentralen Prozessoreinheit angewiesen werden können. Auch die zentrale Prozessoreinheit kann dazu eingerichtet sein, auf die Datenbank zuzugreifen. Wenn beispielsweise die zentrale Prozessoreinheit beabsichtigt, die Aktion anzuweisen, dass eine Firmware aktualisiert wird, dann sollte dies erfolgen, wenn sich das Kraftfahrzeug im Stillstand befindet (sicherheitsrelevante Voraussetzung). Diese sicherheitsrelevante Voraussetzung kann in der Datenbank hinterlegt sein. Im Zuge der Validierung prüfen die dezentralen Prozessoreinheiten, ob diese sicherheitsrelevante Voraussetzung erfüllt ist, z.B. indem auf entsprechende Sensordaten zugegriffen wird, und erlauben (wenn die sicherheitsrelevante Voraussetzung erfüllt ist) bzw. verbieten (wenn die sicherheitsrelevante Voraussetzung nicht erfüllt ist) der zentralen Prozessoreinheit, die beabsichtigte Aktion anzuweisen.The decentralized processor units can, for example, access a database in which all security-relevant requirements for carrying out the intended action are stored. In particular, safety-relevant prerequisites for a large number of actions that can be instructed by the central processor unit can be stored in the database. The central processor unit can also be set up to access the database. If, for example, the central processor unit intends to instruct the action that firmware is updated, then this should take place when the motor vehicle is at a standstill (safety-relevant requirement). This safety-relevant requirement can be stored in the database. In the course of the validation, the decentralized processor units check whether this safety-relevant requirement is met, e.g. by accessing corresponding sensor data, and allow (if the safety-relevant requirement is met) or prohibit (if the security-relevant requirement is not met) the central processor unit, to instruct the intended action.

Erfindungsgemäß ist ein die beabsichtigte Aktion repräsentierender Aktionsdatensatz in einer hierarchischen Liste mit sicherheitsrelevanten Voraussetzungen des Fahrzeugs hinterlegt. Im Zuge der Validierung kann durch die dezentralen Prozessoreinheiten geprüft werden, ob alle sicherheitsrelevanten Voraussetzungen erfüllt sind, die in der hierarchischen Liste oberhalb des die beabsichtigte Aktion repräsentierenden Datensatzes eingestuft sind. Wenn diese Prüfung positiv ausfällt, d.h. dass die dezentralen Prozessoreinheiten feststellen, dass alle sicherheitsrelevanten Voraussetzungen erfüllt sind, die in der hierarchischen Liste oberhalb des die beabsichtigte Aktion repräsentierenden Datensatzes eingestuft sind, dann können die dezentralen Prozessoreinheiten der zentralen Prozessoreinheit erlauben, die beabsichtigte Aktion anzuweisen. Wenn die Prüfung jedoch negativ ausfällt, d.h. dass die dezentralen Prozessoreinheiten feststellen, dass nicht alle sicherheitsrelevanten Voraussetzungen erfüllt sind, die in der hierarchischen Liste oberhalb des die beabsichtigte Aktion repräsentierenden Datensatzes eingestuft sind, dann können die dezentralen Prozessoreinheiten der zentralen Prozessoreinheit verbieten, die beabsichtigte Aktion anzuweisen.According to the invention, an action data record representing the intended action is stored in a hierarchical list with safety-relevant requirements of the vehicle. In the course of the validation, the decentralized processor units can check whether all the safety-relevant requirements that are classified in the hierarchical list above the data record representing the intended action are met. If this check turns out positive, ie that the decentralized processor units determine that all security-relevant requirements are met, which are classified in the hierarchical list above the data record representing the intended action, then the decentralized processor units can allow the central processor unit to instruct the intended action. However, if the check turns out negative, that is to say that the decentralized processor units determine that not all security-relevant prerequisites are met, which are classified in the hierarchical list above the data record representing the intended action, then the decentralized Processor units prohibit the central processing unit from instructing the intended action.

Beispielsweise kann die Aktualisierung der Firmware die beabsichtigte Aktion sein. In der hierarchischen Liste kann die Aktion, das Fahrzeug zum Stillstand zu bringen, als eine sicherheitsrelevante Aktion oberhalb der beabsichtigten Aktion, die Firmware zu aktualisieren, eingestuft sein. Die dezentralen Prozessoreinheiten können prüfen, ob der Fahrzustand vorliegt, dass sich das Fahrzeug im Stillstand befindet. Wenn dies der Fall ist, werden die dezentralen Prozessoreinheiten der zentralen Prozessoreinheit erlauben, anzuweisen, die Firmware zu aktualisieren. Wenn die dezentralen Prozessoreinheiten jedoch feststellen, dass das Kraftfahrzeug noch nicht zum Stillstand gebracht worden ist, so werden die dezentralen Prozessoreinheiten der zentralen Prozessoreinheit verbieten, die beabsichtigte Funktion auszuführen.For example, updating the firmware may be the intended action. In the hierarchical list, the action to bring the vehicle to a standstill can be classified as a safety-relevant action above the intended action to update the firmware. The decentralized processor units can check whether the driving condition is present, that the vehicle is at a standstill. If this is the case, the decentralized processing units will allow the central processing unit to instruct to update the firmware. However, if the decentralized processor units determine that the motor vehicle has not yet been brought to a standstill, the decentralized processor units will forbid the central processor unit from performing the intended function.

Um die Validierung durchzuführen, sollte insbesondere die gesamte Blockchain gelöst und berechnete Hash-Werte bzw. Hash-Schlüssel korrekt sein, ansonsten wird das Ereignis verworfen. In diesem Sinne prüfen die dezentralen Prozessoreinheiten in einer weiteren Ausführungsform berechnete Hash-Schlüssel. Wenn die Prüfung ergibt, dass die berechneten Hash-Schlüssel korrekt sind, erlauben die dezentralen Prozessoreinheiten der zentralen Prozessoreinheit, die Aktion anzuweisen, insbesondere das Fahrerassistenzsystem anzuweisen, die beabsichtigte autonome Fahrfunktion auszuführen. Wenn die Prüfung jedoch ergibt, dass die berechneten Hash-Schlüssel nicht korrekt sind, verbieten die dezentralen Prozessoreinheiten der zentralen Prozessoreinheit, die Aktion anzuweisen, insbesondere das Fahrerassistenzsystem anzuweisen, die beabsichtigte autonome Fahrfunktion auszuführen.In order to carry out the validation, the entire blockchain in particular should be solved and the calculated hash values or hash keys should be correct, otherwise the event will be discarded. In this sense, the decentralized processor units check calculated hash keys in a further embodiment. If the check shows that the calculated hash keys are correct, the decentralized processor units allow the central processor unit to instruct the action, in particular to instruct the driver assistance system to carry out the intended autonomous driving function. However, if the check reveals that the calculated hash keys are incorrect, the decentralized processor units prohibit the central processor unit from instructing the action, in particular instructing the driver assistance system to carry out the intended autonomous driving function.

Sofern die beabsichtigte Aktion gültig ist, das heißt im Zuge der Validierung durch den Konsensprozess als gültig betrachtet wurde, kann kein Teilnehmer die Legitimität dieser Transaktion ändern. Dazu können durch den Einsatz kryptographischer Verfahren zwei aufeinanderfolgende Blöcke der Blockchain miteinander verkettet werden. Insbesondere kann ein Hash-Schlüssel zwei aufeinanderfolgende Blöcke miteinander verknüpfen, indem der Hash-Schlüssel die Blöcke mathematisch miteinander „verkettet“. Jeder Block enthält typischerweise den Hash-Schlüssel des vorherigen Blocks. Der Hash-Schlüssel kann dabei aus den Daten des jeweils vorhergehenden Blocks erzeugt werden. Der Hash-Schlüssel kann als „digitaler Fingerabdruck“ des betreffenden Blocks bzw. dessen Transaktionsdaten angesehen werden. Der Hash-Schlüssel kann insbesondere die Reihenfolge und die Uhrzeit der Transaktionen unveränderbar festschreiben. Das hinter dem Hash-Schlüssel stehende Hashing kann eine nicht entschlüsselbare Einwegfunktion schaffen. Eine Hash-Funktion kann einen mathematischen Algorithmus erzeugen, der Transaktionsdaten beliebiger Größe auf einen Bit-String fester Größe abbildet. Typischerweise ist ein solcher Bit-String 32 Zeichen lang und repräsentiert die Transaktionsdaten, für welche die Hash-Verschlüsselung durchgeführt wurde. Der sogenannte Secure Hash Algorithm (SHA) wird häufig in Blockchains eingesetzt, insbesondere der SHA-256, welcher die Generierung eines nahezu eindeutigen Hash-Schlüssels als digitalen Fingerabdruck erzeugt.If the intended action is valid, i.e. it was considered valid in the course of the validation by the consensus process, no participant can change the legitimacy of this transaction. For this purpose, two successive blocks of the blockchain can be linked with one another through the use of cryptographic procedures. In particular, a hash key can link two consecutive blocks with one another by mathematically “chaining” the blocks with one another. Each block typically contains the hash key of the previous block. The hash key can be generated from the data of the previous block. The hash key can be viewed as a “digital fingerprint” of the relevant block or its transaction data. In particular, the hash key can fix the sequence and time of the transactions in such a way that they cannot be changed. The hashing behind the hash key can create a non-decryptable one-way function. A hash function can generate a mathematical algorithm that maps transaction data of any size to a bit string of a fixed size. Such a bit string is typically 32 characters long and represents the transaction data for which the hash encryption was carried out. The so-called Secure Hash Algorithm (SHA) is often used in blockchains, especially the SHA-256, which generates a nearly unique hash key as a digital fingerprint.

Das dezentrale Hauptbuch bzw. die Blockchain ist somit derart gestaltet, dass es insbesondere ein nachträgliches Ändern eines eingetragenen Transaktionsdatensatzes verhindert. Auf diese Weise können die validierten Aktionen des Kraftfahrzeugs in einem unveränderbaren Hauptbuch aufgezeichnet werden. Dadurch werden die Transaktionen besonders sicher gegen nachträgliche Manipulationen gespeichert.The decentralized general ledger or the blockchain is thus designed in such a way that it prevents, in particular, a subsequent change to an entered transaction data record. In this way, the validated actions of the motor vehicle can be recorded in an unchangeable ledger. As a result, the transactions are saved particularly securely against subsequent manipulation.

Die Blockchain-Technologie basiert darauf, ein Ereignis auf verschiedene Knoten zu verteilen und nur dann als validiert zu bewerten, wenn mehr als 50% der Knoten zugestimmt haben, dass das Ereignis gültig ist. In diesem Sinne erlauben die dezentralen Prozessoreinheiten in einer Ausführungsform der zentralen Prozessoreinheit, die beabsichtigte Aktion anzuweisen, wenn die Aktion von mehr als 50% der dezentralen Prozessoreinheiten erfolgreich validiert worden ist. Wenn die Aktion jedoch von weniger als 50% der dezentralen Prozessoreinheiten erfolgreich validiert worden ist, dann verbieten die dezentralen Prozessoreinheiten in dieser Ausführungsform der zentralen Prozessoreinheit, die beabsichtigte Aktion anzuweisen.Blockchain technology is based on distributing an event to different nodes and only evaluating it as validated if more than 50% of the nodes have agreed that the event is valid. In this sense, in one embodiment, the decentralized processor units allow the central processor unit to instruct the intended action if the action has been successfully validated by more than 50% of the decentralized processor units. If, however, the action has been successfully validated by less than 50% of the decentralized processor units, then the decentralized processor units in this embodiment forbid the central processor unit from instructing the intended action.

In einer Ausführungsform ist die Aktion eine autonome Fahrfunktion des Kraftfahrzeugs. Die autonome Fahrfunktion ermöglicht, dass das Kraftfahrzeug selbstständig fährt, d.h. ohne, dass ein Fahrzeuginsasse das Kraftfahrzeug steuert. So umfasst die autonome Fahrfunktion, dass das Kraftfahrzeug - insbesondere mittels der zentralen Prozessoreinheit - dazu eingerichtet ist, beispielsweise Lenk-, Blink-, Beschleunigungs- und Bremsmanöver ohne menschliches Eingreifen durchzuführen. Insbesondere soll die autonome Fahrfunktion dabei die Anforderungen von ASIL D erfüllen („ASIL D Funktion“). ASIL D ist eine Abkürzung für Automotive Safety Integrity Level D und bezieht sich auf die höchste Einstufung der anfänglichen Gefahr (Verletzungsrisiko) gemäß ISO 26262 und auf das strengste Sicherheitsniveau dieser Norm zur Vermeidung eines unangemessenen Restrisikos.In one embodiment, the action is an autonomous driving function of the motor vehicle. The autonomous driving function enables the motor vehicle to drive independently, ie without a vehicle occupant controlling the motor vehicle. Thus, the autonomous driving function includes that the motor vehicle is set up - in particular by means of the central processor unit - to carry out, for example, steering, blinking, acceleration and braking maneuvers without human intervention. In particular, the autonomous driving function should meet the requirements of ASIL D (“ASIL D function”). ASIL D is an abbreviation for Automotive Safety Integrity Level D and refers to the highest classification of the initial danger (risk of injury) according to ISO 26262 and to the strictest safety level of this standard to avoid an unreasonable residual risk.

Wenn die zentrale Prozessoreinheit im Kontext des autonomen Fahrens beabsichtigt, eine kritische Aktion bzw. Operation anzuweisen oder auszuführen, muss es diese Operation zunächst in dem Kraftfahrzeug-internen Peer-to-Peer Computernetzwerk registrieren, und die Operation sollte insbesondere durch alle im Kraftfahrzeug verteilten Blockchain-Hardwareblöcke (dezentralen Prozessoreinheiten) validiert werden. Durch die Validierung der autonomen Fahrfunktion mittels der dezentralen Prozessoreinheiten, bevor die autonome Fahrfunktion durch die zentrale Prozessoreinheit angewiesen und bevor die autonome Fahrfunktion durch das Kraftfahrzeug ausgeführt wird, ermöglicht, dass eine ASIL D Funktion genau unter den richtigen Bedingungen und in der richtigen Reihenfolge ausgeführt wird, denn zum Zeitpunkt der Ausführung der ASIL D Funktion müssen alle bisherigen Anforderungen bereits validiert und bevorzugt in der internen Blockchain aufgezeichnet worden sein.If the central processing unit intends in the context of autonomous driving, a To instruct or carry out a critical action or operation, it must first register this operation in the vehicle-internal peer-to-peer computer network, and the operation should in particular be validated by all blockchain hardware blocks (decentralized processor units) distributed in the vehicle. By validating the autonomous driving function by means of the decentralized processor units, before the autonomous driving function is instructed by the central processor unit and before the autonomous driving function is carried out by the motor vehicle, it enables an ASIL D function to be carried out under the correct conditions and in the correct sequence , because at the time the ASIL D function is executed, all previous requirements must have already been validated and preferably recorded in the internal blockchain.

Im Zusammenhang mit der autonomen Fahrfunktion des Kraftfahrzeugs kann der der Aktionsdatensatz Informationen darüber beinhalten, dass die zentrale Prozessoreinheit beabsichtigt, ein Fahrerassistenzsystem des Kraftfahrzeugs anzuweisen, eine autonome Fahrfunktion des Kraftfahrzeugs auszuführen.In connection with the autonomous driving function of the motor vehicle, the action data record can contain information about the fact that the central processor unit intends to instruct a driver assistance system of the motor vehicle to carry out an autonomous driving function of the motor vehicle.

Das Fahrerassistenzsystem ist mittels einer elektronischen Steuerungseinheit (ECU) dazu eingerichtet, autonom insbesondere in einen Antrieb (insbesondere durch Bremsen und Beschleunigen), in eine Lenkung oder in eine Signalisierungseinrichtung (z.B. Licht und Blinker) des Kraftfahrzeugs einzugreifen. Dazu kann das Fahrerassistenzsystem auf Daten von Sensoren des Kraftfahrzeugs (z.B. Radar-, LIDAR-, Kamera- oder Ultraschall-Sensoren) zurückgreifen und insbesondere Aktuatoren des Kraftfahrzeugs basierend auf den Sensordaten steuern. Der Aktuator ist insbesondere dazu eingerichtet, ein von der ECU empfangenes elektrisches Signal (Steuerungsbefehl) in mechanische Bewegungen bzw. Veränderungen physikalischer Größen wie Druck oder Temperatur umsetzen und damit aktiv in die Steuerung des Kraftfahrzeugs einzugreifen.The driver assistance system is set up by means of an electronic control unit (ECU) to autonomously intervene, in particular in a drive (in particular by braking and accelerating), in a steering system or in a signaling device (e.g. lights and indicators) of the motor vehicle. For this purpose, the driver assistance system can access data from sensors of the motor vehicle (e.g. radar, LIDAR, camera or ultrasonic sensors) and in particular control actuators of the motor vehicle based on the sensor data. The actuator is set up in particular to convert an electrical signal (control command) received by the ECU into mechanical movements or changes in physical variables such as pressure or temperature and thus to actively intervene in the control of the motor vehicle.

Die beabsichtigte autonome Fahrfunktion wird durch die dezentralen Prozessoreinheiten des Peer-to-Peer Computernetzwerks validiert, bevor sie durch die zentrale Prozessoreinheit angewiesen wird. Wenn die beabsichtigte autonome Fahrfunktion erfolgreich validiert worden ist, erlauben die dezentralen Prozessoreinheiten der zentralen Prozessoreinheit, das Fahrerassistenzsystem anzuweisen, die beabsichtigte autonome Fahrfunktion auszuführen. Wenn die beabsichtigte autonome Fahrfunktion erfolgreich validiert worden ist, wird sie weiterhin bevorzugt in der Blockchain gespeichert. Wenn jedoch die beabsichtigte autonome Fahrfunktion nicht erfolgreich validiert worden ist, verbieten die dezentralen Prozessoreinheiten der zentralen Prozessoreinheit, das Fahrerassistenzsystem anzuweisen, die beabsichtigte autonome Fahrfunktion auszuführen.The intended autonomous driving function is validated by the decentralized processor units of the peer-to-peer computer network before it is instructed by the central processor unit. If the intended autonomous driving function has been successfully validated, the decentralized processor units allow the central processor unit to instruct the driver assistance system to carry out the intended autonomous driving function. If the intended autonomous driving function has been successfully validated, it will continue to be preferably stored in the blockchain. However, if the intended autonomous driving function has not been successfully validated, the decentralized processor units forbid the central processor unit from instructing the driver assistance system to carry out the intended autonomous driving function.

Im Folgenden werden Ausführungsbeispiele der Erfindung anhand der schematischen Zeichnung näher erläutert, wobei gleiche oder ähnliche Elemente mit dem gleichen Bezugszeichen versehen sind. Hierbei zeigt

  • 1 ein autonom fahrendes Kraftfahrzeug mit mehreren Computern eines Peer-to-Peer Computernetzwerks und
  • 2 Details eines Peer-to-Peer Computernetzwerks für das Kraftfahrzeug nach 1.
In the following, exemplary embodiments of the invention are explained in more detail with reference to the schematic drawing, the same or similar elements being provided with the same reference symbols. Here shows
  • 1 an autonomously driving motor vehicle with several computers in a peer-to-peer computer network and
  • 2 Details of a peer-to-peer computer network for the motor vehicle according to 1 .

1 zeigt ein Kraftfahrzeug 1, das z.B. ein Personenkraftfahrwagen (Pkw) sein kann. Ein Fahrzeuginsasse 2 kann in dem Kraftfahrzeug 1 transportiert werden. Der Fahrzeuginsasse 2 muss jedoch nicht in die Steuerung des Kraftfahrzeugs 1 eingreifen, da das Kraftfahrzeug 1 dazu eingerichtet ist, autonom zu fahren. Dazu weist das Kraftfahrzeug beispielsweise ein weiter unten näher erläutertes Fahrerassistenzsystem 16 zum autonomen Fahren auf. Entsprechende autonome Fahrfunktionen, die insbesondere ASIL D erfüllen, können mittels einer zentralen Prozessoreinheit in Form eines zentralen Computers 3 angewiesen werden. Der zentrale Computer 3 umfasst einen Prozessor 4, eine Speichereinheit 5 und eine Netzwerkeinrichtung 6. Auf der Speichereinheit 5 ist ein Computerprogrammprodukt 7 gespeichert. 1 shows a motor vehicle 1 , which can be, for example, a passenger vehicle (car). A vehicle occupant 2 can in the motor vehicle 1 be transported. The vehicle occupant 2 does not have to be in the control of the motor vehicle 1 intervene as the motor vehicle 1 is set up to drive autonomously. For this purpose, the motor vehicle has, for example, a driver assistance system explained in more detail below 16 to autonomous driving. Corresponding autonomous driving functions, which in particular fulfill ASIL D, can be performed by means of a central processor unit in the form of a central computer 3rd be instructed. The central computer 3rd includes a processor 4th , a storage unit 5 and a network device 6th . On the storage unit 5 is a computer program product 7th saved.

1 zeigt weiterhin eine erste dezentrale Prozessoreinheit in Form eines ersten dezentralen Computers 8. Der erste dezentrale Computer 8 umfasst einen Prozessor 9, eine Speichereinheit 10 und eine Netzwerkeinrichtung 11. Auf der Speichereinheit 10 ist ein Computerprogrammprodukt 12 gespeichert. Der erste dezentrale Computer 8 kann auf eine Sicherheitsdatenbank 13 zugreifen. Auch der zentrale Computer 3 kann auf die Sicherheitsdatenbank 13 zugreifen. In der Sicherheitsdatenbank 13 können eine oder mehrere hierarchische Listen gespeichert sein. In dem gezeigten Ausführungsbeispiel sind es eine erste hierarchische Liste 14.1, eine zweite hierarchische Liste 14.2 und eine dritte hierarchische Liste 14.3. 1 also shows a first decentralized processor unit in the form of a first decentralized computer 8th . The first decentralized computer 8th includes a processor 9 , a storage unit 10 and a network device 11 . On the storage unit 10 is a computer program product 12th saved. The first decentralized computer 8th can be on a security database 13th access. Also the central computer 3rd can access the security database 13th access. In the security database 13th one or more hierarchical lists can be saved. In the exemplary embodiment shown, it is a first hierarchical list 14.1 , a second hierarchical list 14.2 and a third hierarchical list 14.3 .

Die erste hierarchische Liste 14.1 umfasst mehrere Aktionsdatensätze, in dem gezeigten Ausführungsbeispiel ist es ein erster Aktionsdatensatz 15.1, ein zweiter Aktionsdatensatz 15.2, ein dritter Aktionsdatensatz 15.3, ein vierter Aktionsdaten
satz 15.4, ein fünfter Aktionsdatensatz 15.5 und ein sechster Aktionsdatensatz 15.6. Die Aktionsdatensätze 15.1 bis 15.6 können beispielsweise jeweils eine automatisierte Aktion des Kraftfahrzeugs 1 oder einen Zustand des Kraftfahrzeugs 1 repräsentieren. Die erste Liste 14.1 ist deshalb hierarchisch, weil automatisierte Aktionen mit einer höheren Ordnungsnummer, z.B. die zweite automatisierte Aktion, die durch den zweiten Aktionsdatensatz 15.2 repräsentiert wird, erst ausgeführt werden dürfen, wenn die Ausführung sämtlicher automatisierter Aktionen mit einer niedrigeren Ordnungsnummer - in dem gezeigten Ausführungsbeispiel ist dies die erste automatisierte Aktion, die durch den ersten Aktionsdatensatz 15.1 repräsentiert wird - abgeschlossen ist. Die zweite hierarchische Liste 14.2 und die dritte hierarchische Liste 14.3 sind strukturell gleich aufgebaut wie die erste hierarchische Liste 14.1, jedoch mit unterschiedlichen Aktionsdatensätzen.
The first hierarchical list 14.1 comprises several action data sets, in the exemplary embodiment shown it is a first action data set 15.1 , a second action record 15.2 , a third action record 15.3 , a fourth action dates
sentence 15.4 , a fifth action record 15.5 and a sixth action record 15.6 . The action records 15.1 to 15.6 can, for example, each have an automated action of the motor vehicle 1 or a state of the motor vehicle 1 represent. The first list 14.1 is hierarchical because automated actions with a higher order number, e.g. the second automated action that is triggered by the second action record 15.2 is represented, may only be carried out if the execution of all automated actions with a lower order number - in the exemplary embodiment shown, this is the first automated action that is identified by the first action data record 15.1 is represented - is completed. The second hierarchical list 14.2 and the third hierarchical list 14.3 have the same structure as the first hierarchical list 14.1 , but with different action records.

Beispielsweise kann der zentrale Computer 3 beabsichtigen, die zweite Aktion anzuweisen, die durch den zweiten Aktionsdatensatz 15.2 repräsentiert wird. Die zweite Aktion kann beispielsweise beinhalten, dass eine Firmware aktualisiert wird. Um dies zu initiieren, kann der zentrale Computer 3 beispielsweise eine entsprechende Anweisung an sich selbst oder an eine weitere Prozessoreinheit 23 übermitteln, welche für die Ausführung der zweiten Aktion eingerichtet und bestimmt ist. Dem zentralen Computer 3 wird jedoch nur dann erlaubt, sich selbst oder die weitere Prozessoreinheit 23 anzuleiten, die Firmware zu aktualisieren, wenn zuvor die erste Aktion durchgeführt worden ist.For example, the central computer 3rd intend to instruct the second action to be followed by the second action record 15.2 is represented. The second action can include, for example, that firmware is updated. The central computer can initiate this 3rd for example, a corresponding instruction to yourself or to another processor unit 23 which is set up and intended for the execution of the second action. The central computer 3rd however, it is only allowed to itself or the additional processor unit 23 instructing the user to update the firmware if the first action has been carried out beforehand.

Bei der ersten Aktion, die durch den ersten Aktionsdatensatz 15.1 repräsentiert wird, kann es sich beispielsweise um eine autonome Fahrfunktion handeln, die durch das Fahrerassistenzsystem 16 ausgeführt werden kann. Das Fahrerassistenzsystem 16 umfasst dazu in dem gezeigten Ausführungsbeispiel einen Prozessor 17, eine Speichereinheit 18, eine Netzwerkeinrichtung 19, einen Sensor 20, z.B. ein Kamerasystem, und einen Aktuator 21. Auf der Speichereinheit 18 ist ein Computerprogrammprodukt 22 gespeichert. Rein beispielhaft kann das Computerprogrammprodukt 22 Anweisungen enthalten, auf Sensordaten (z.B. eine visuelle Umfelderfassung des Kraftfahrzeugs 1) zuzugreifen, die von dem Sensor 20 generiert worden sind, und basierend auf den Sensordaten den Aktuator 21 zu steuern, sodass die autonome Fahrfunktion ausgeführt wird. Die autonome Fahrfunktion kann beispielsweise beinhalten, dass das Kraftfahrzeug 1 zum Stillstand gebracht wird.At the first action, which is caused by the first action record 15.1 is represented, it can be, for example, an autonomous driving function that is provided by the driver assistance system 16 can be executed. The driver assistance system 16 comprises for this purpose a processor in the exemplary embodiment shown 17th , a storage unit 18th , a network facility 19th , a sensor 20th , e.g. a camera system, and an actuator 21st . On the storage unit 18th is a computer program product 22nd saved. The computer program product 22nd Instructions contain on sensor data (e.g. a visual survey of the surroundings of the motor vehicle 1 ) to access by the sensor 20th have been generated, and based on the sensor data, the actuator 21st to control so that the autonomous driving function is carried out. The autonomous driving function can include, for example, that the motor vehicle 1 is brought to a standstill.

Beispielsweise kann gemäß ASIL D gefordert sein, dass eine Firmware in einem Kraftfahrzeug 1 erst dann aktualisiert wird, wenn das Kraftfahrzeug 1 zum Stillstand gebracht worden ist (sicherheitsrelevante Voraussetzung). Diese sicherheitsrelevante Voraussetzung ist in der Sicherheitsdatenbank in Form der ersten hierarchischen Liste 14.1 dadurch hinterlegt bzw. implementiert, indem die erste Aktion bzw. der erste Aktionsdatensatz 15.1 hierarchisch höher eingestuft ist als die zweite Aktion bzw. als der zweite Aktionsdatensatz 15.2.For example, according to ASIL D, it may be required that firmware in a motor vehicle 1 is only updated when the motor vehicle 1 has been brought to a standstill (safety-relevant requirement). This safety-relevant requirement is in the safety database in the form of the first hierarchical list 14.1 thereby stored or implemented by the first action or the first action data record 15.1 is hierarchically higher than the second action or the second action data record 15.2 .

Im Zuge einer Validierung können dezentrale Prozessoreinheiten prüfen, z.B. der durch 1 gezeigte erste dezentrale Computer 8, eines im Folgenden näher erläuterten Peer-to-Peer Computernetzwerks 24, ob diese sicherheitsrelevante Voraussetzung erfüllt ist. Wenn im Zuge der Validierung festgestellt wird, dass die erste Aktion ausgeführt worden ist, dann wird dem zentralen Computer 3 erlaubt, die zweite Aktion anzuweisen. Wenn jedoch im Zuge der Validierung festgestellt wird, dass die erste Aktion noch nicht ausgeführt worden ist, dann wird dem zentralen Computer 3 verboten, die zweite Aktion anzuweisen. Für die Übermittlung oder den Austausch entsprechender Daten kann die Netzwerkeinrichtung 19 des Fahrerassistenzsystems 16 mit den Netzwerkeinrichtungen der dezentralen Prozessoreinheiten verbunden sein, z.B. mit der Netzwerkeinrichtung 11 des ersten dezentralen Computers 8.In the course of a validation, decentralized processor units can check, for example the by 1 shown first decentralized computer 8th , a peer-to-peer computer network explained in more detail below 24 whether this safety-relevant requirement is met. If the validation determines that the first action has been taken, then the central computer 3rd allows to instruct the second action. If, however, it is found in the course of the validation that the first action has not yet been carried out, then the central computer 3rd forbidden to instruct the second action. The network device 19th of the driver assistance system 16 be connected to the network devices of the decentralized processor units, for example to the network device 11 of the first decentralized computer 8th .

Bei den vorstehend genannten Computerprogrammen 7, 12 und 22 kann es sich um ein gleiches Computerprogrammprodukt handeln, d.h. das gleiche Computerprogrammprodukt ist auf der betreffenden Speichereinheit 5, 10, 18 der Computer 3, 8, 16 gespeichert. Alternativ können auch unterschiedliche Computerprogrammprodukte auf den Speichereinheiten 5, 10, 18 der Computer 3, 8, 16 gespeichert sein.In the aforementioned computer programs 7th , 12th and 22nd it can be the same computer program product, ie the same computer program product is on the relevant storage unit 5 , 10 , 18th the computer 3rd , 8th , 16 saved. Alternatively, different computer program products can also be stored on the storage units 5 , 10 , 18th the computer 3rd , 8th , 16 be saved.

2 zeigt das Peer-to-Peer Computernetzwerk 24 das in dem Kraftfahrzeug 1 angeordnet ist. Das Peer-to-Peer Computernetzwerk 24 umfasst mehrere Computer 3, 8, 16 und 25, die miteinander kommunizieren. Innerhalb des Peer-to-Peer Computernetzwerks 24 sind alle Computer 3, 8, 16 und 25 untereinander verbunden und gleichberechtigt. Der zentrale Computer 3, der erste dezentrale Computer 8 und das Fahrerassistenzsystem 16 mit seinem Prozessor 17 und seiner Speichereinheit 18 bilden in dem Beispiel nach 2 jeweils einen Computer des Peer-to-Peer Computernetzwerks 24. Das Peer-to-Peer Computernetzwerk 24 kann darüber hinaus noch weitere dezentrale Computer 25 umfassen, die sowohl untereinander als auch mit den anderen Computern 3, 8 und 16 verbunden sind. Die Netzwerkeinrichtungen 6, 11 und 19 richten für die Computer 3, 8 und 16 einen Anschluss an das Peer-to-Peer Computernetzwerk 24 ein. Auch die weiteren dezentralen Computer 25 können jeweils eine Netzwerkeinrichtung aufweisen, mittels derer sie an das Peer-to-Peer Computernetzwerk 24 angeschlossen sind. Insbesondere kann auf Speichereinheiten der weiteren dezentralen Computer 25 das gleiche Computerprogrammprodukt 12 gespeichert sein, das auch auf dem ersten dezentralen Computer 8 gespeichert ist. Auf diese Weise können insbesondere der erste dezentrale Computer 8 und die weiteren dezentralen Computer 25 durch das Computerprogrammprodukt 12 zur Ausführung der Validierung und Steuerung automatisierter Aktionen des Kraftfahrzeugs 1 angewiesen werden, was im Folgenden noch näher erläutert wird. 2 shows the peer-to-peer computer network 24 that in the motor vehicle 1 is arranged. The peer-to-peer computer network 24 includes multiple computers 3rd , 8th , 16 and 25th communicating with each other. Within the peer-to-peer computer network 24 are all computers 3rd , 8th , 16 and 25th interconnected and equal. The central computer 3rd , the first decentralized computer 8th and the driver assistance system 16 with its processor 17th and its storage unit 18th reproduce in the example 2 one computer each on the peer-to-peer computer network 24 . The peer-to-peer computer network 24 can also use other decentralized computers 25th include, both with each other and with the other computers 3rd , 8th and 16 are connected. The network facilities 6th , 11 and 19th set up for the computer 3rd , 8th and 16 a connection to the peer-to-peer computer network 24 a. Also the other decentralized computers 25th can each have a network device by means of which they are connected to the peer-to-peer computer network 24 are connected. In particular, storage units of the further decentralized computer can be used 25th the same computer program product 12th stored on the first decentralized computer 8th is stored. In this way, the first decentralized computer in particular 8th and the other decentralized ones computer 25th by the computer program product 12th to carry out the validation and control of automated actions of the motor vehicle 1 be instructed, which is explained in more detail below.

Der zentrale Computer 3 kann innerhalb des Peer-to-Peer Computernetzwerks 24 beispielsweise die Funktion eines ersten Netzwerkteilnehmers erfüllen, wenn er beispielsweise beabsichtigt, die Firmware zu aktualisieren, d. h. der zentrale Computer 3 sendet und empfängt lediglich Transaktionen bzw. Transaktionsdatensätze. Weiterhin kann der zentrale Computer 3 innerhalb des Peer-to-Peer Computernetzwerks 24 auch die Funktion eines zweiten Netzwerksteilnehmers erfüllen, d. h. er kann in diesem Fall auch Aktionsdatensätze validieren und im Falle einer erfolgreichen Validierung in einem Block einer Blockchain 26 speichern. Unter „validieren“ kann in diesem Zusammenhang insbesondere verstanden werden, dass die Aktionsdatensätze in Bezug auf ihre Gültigkeit und Legitimität überprüft werden.The central computer 3rd can be within the peer-to-peer computer network 24 for example, fulfill the function of a first network subscriber when he intends, for example, to update the firmware, ie the central computer 3rd only sends and receives transactions or transaction data records. Furthermore, the central computer 3rd within the peer-to-peer computer network 24 also fulfill the function of a second network participant, ie in this case it can also validate action data sets and, in the case of successful validation, in a block of a blockchain 26th to save. In this context, “validate” can in particular be understood to mean that the action data records are checked with regard to their validity and legitimacy.

2 zeigt einen ersten Block 27, einen zweiten Block 28 und einen dritten Block 29 der Blockchain 26. An den dritten Block 29 können noch weitere Blöcke angehängt werden, und vor dem ersten gezeigten Block 27 befinden sich ebenfalls noch weitere Blöcke. Jeder der gezeigten Blöcke 27 bis 29 ist ein Datensatz bzw. ein Datensatzblock und enthält beispielsweise einen ersten Hash-Schlüssel 27.1, 28.1 bzw. 29.1, einen erfolgreich validierten Aktionsdatensatz 27.2, 28.2 bzw. 29.2 sowie einen zweiten Hash-Schlüssel 27.3, 28.3 bzw. 29.3. Der zweite Hash-Schlüssel 27.3, 28.3 bzw. 29.3 kann jeweils basierend auf dem erfolgreich validierten Aktionsdatensatz 27.2, 28.2 bzw. 29.2 des betreffenden Blocks 27 bis 29 generiert werden, d.h. der generierte bzw. berechnete zweite Hash-Schlüssel 27.3 des ersten Blocks 27 basiert beispielsweise auf dem erfolgreich validierten Aktionsdatensatz 27.2 des ersten Blocks 27. 2 shows a first block 27 , a second block 28 and a third block 29 the blockchain 26th . To the third block 29 further blocks can be appended, and before the first block shown 27 there are also other blocks. Each of the blocks shown 27 to 29 is a data record or a data record block and contains, for example, a first hash key 27.1 , 28.1 or. 29.1 , a successfully validated action record 27.2 , 28.2 or. 29.2 and a second hash key 27.3 , 28.3 or. 29.3 . The second hash key 27.3 , 28.3 or. 29.3 can each based on the successfully validated action record 27.2 , 28.2 or. 29.2 of the relevant block 27 to 29 are generated, ie the generated or calculated second hash key 27.3 of the first block 27 is based, for example, on the successfully validated action data set 27.2 of the first block 27 .

Die Blöcke 27 bis 29 sind durch die Hash-Schlüssel 27.1, 28.1., 29.1 sowie 27.3, 28.3, 29.3 miteinander verkettet. Diese Verkettung kann derart gestaltet sein, dass der erste Hash-Schlüssel 27.1 des ersten Blocks 27 mit dem zweiten Hash-Schlüssel des vorherigen Blocks (nicht gezeigt) übereinstimmt. Auf die gleiche Weise stimmt der erste Hash-Schlüssel 28.1 des zweiten Blocks 28 mit dem zweiten Hash-Schlüssel 27.3 des ersten Blocks 27 überein, der erste Hash-Schlüssel 29.1 des dritten Blocks 29 stimmt mit dem zweiten Hash-Schlüssel 28.3 des zweiten Blocks 27 überein usw.The blocks 27 to 29 are through the hash key 27.1 , 28.1 ., 29.1 as 27.3 , 28.3 , 29.3 chained together. This concatenation can be designed in such a way that the first hash key 27.1 of the first block 27 matches the second hash key of the previous block (not shown). The first hash key is correct in the same way 28.1 of the second block 28 with the second hash key 27.3 of the first block 27 match the first hash key 29.1 of the third block 29 matches the second hash key 28.3 of the second block 27 match etc.

Im Rahmen der Validierung kann geprüft werden, ob diese Übereinstimmung der Hash-Schlüssel 27.1, 28.1., 29.1 sowie 27.3, 28.3, 29.3 gegeben ist. Beispielsweise kann der Aktionsdatensatz 28.2 des zweiten Blocks 28 der erste Aktionsdatensatz 15.1 sein, der durch 1 gezeigt ist und der die erste Aktion repräsentiert, dass das Kraftfahrzeug 1 zum Stillstand gebracht wird.As part of the validation, it can be checked whether this match of the hash key 27.1 , 28.1 ., 29.1 as 27.3 , 28.3 , 29.3 given is. For example, the action record 28.2 of the second block 28 the first action record 15.1 be that through 1 is shown and which represents the first action that the motor vehicle 1 is brought to a standstill.

Wenn beispielsweise der erste dezentrale Computer 8 den Aktionsdatensatz 29.2 des dritten Blocks 29 erfolgreich validiert hat (z.B. indem es die Information erhalten hat, dass das Kraftfahrzeug 1 zum Stillstand gebracht worden ist), so kann der erste dezentrale Computer 8 der zentralen Prozessoreinheit 3 erlauben, die beabsichtigte Aktion anzuweisen, die durch den Aktionsdatensatz 29.2 repräsentiert wird. Weiterhin kann der dezentrale Computer 8 zusätzlich prüfen, ob der erste Hash-Schlüssei 29.1 des dritten Blocks 29 mit dem zweiten Hash-Schlüssel 28.3 des zweiten Blocks 28 übereinstimmt. Sofern dies der Fall ist, kann der dezentrale Computer 8 den Aktionsdatensatz 29.2 in den dritten Block 29 eintragen und basierend auf dem Aktionsdatensatz 29.2 den zweiten Hash-Schlüssel 29.3 des dritten Blocks 29 als dessen „digitaler Fingerabdruck“ berechnen. Falls der erste dezentrale Computer 8 den Aktionsdatensatz 29.2 des dritten Blocks 29 jedoch nicht erfolgreich validiert hat (z.B. indem es die Information erhalten hat, dass das Kraftfahrzeug 1 nicht zum Stillstand gebracht worden ist), so kann der erste dezentrale Computer 8 der zentralen Prozessoreinheit 3 verbieten, die beabsichtigte Aktion anzuweisen, die durch den Aktionsdatensatz 29.2 repräsentiert wird. In diesem Fall wird der Aktionsdatensatz 29.2 nicht in den dritten Block 29 der Blockchain 26 eingetragen.For example, if the first remote computer 8th the action record 29.2 of the third block 29 has successfully validated (e.g. by receiving the information that the motor vehicle 1 has been brought to a standstill), the first decentralized computer can 8th the central processing unit 3rd allow the intended action to be instructed by the action record 29.2 is represented. Furthermore, the decentralized computer 8th additionally check whether the first hash keyi 29.1 of the third block 29 with the second hash key 28.3 of the second block 28 matches. If this is the case, the decentralized computer can 8th the action record 29.2 in the third block 29 and based on the action record 29.2 the second hash key 29.3 of the third block 29 as its "digital fingerprint". If the first remote computer 8th the action record 29.2 of the third block 29 but has not successfully validated (e.g. by receiving the information that the motor vehicle 1 has not been brought to a standstill), the first decentralized computer can 8th the central processing unit 3rd forbid to instruct the intended action by the action record 29.2 is represented. In this case, the action record 29.2 not in the third block 29 the blockchain 26th registered.

Die Überprüfung, ob der erste Hash-Schlüssel 29.1 des dritten Blocks 29 mit dem zweiten Hash-Schlüssel 28.3 des zweiten Blocks 28 übereinstimmt, kann insbesondere durch alle Computer 3, 8, 16, 25 des Peer-to-Peer Computernetzwerks 24 durchgeführt werden. Beispielsweise kann der dritte Aktionsdatensatz 29.2 nur dann in den dritten Block 29 eingetragen werden, wenn mehr als die Hälfte der Computer 3, 8, 16, 25 des Peer-to-Peer Computernetzwerks 24 während der Prüfung festgestellt haben, dass der erste Hash-Schlüssel 29.1 des dritten Blocks 29 mit dem zweiten Hash-Schlüssel 28.3 des zweiten Blocks 28 übereinstimmt.Checking whether the first hash key 29.1 of the third block 29 with the second hash key 28.3 of the second block 28 matches, in particular, can be used by all computers 3rd , 8th , 16 , 25th of the peer-to-peer computer network 24 be performed. For example, the third action record 29.2 only then to the third block 29 be entered if more than half of the computers 3rd , 8th , 16 , 25th of the peer-to-peer computer network 24 during the test found that the first hash key 29.1 of the third block 29 with the second hash key 28.3 of the second block 28 matches.

BezugszeichenlisteList of reference symbols

11
KraftfahrzeugMotor vehicle
22
FahrzeuginsasseVehicle occupant
33
zentrale Prozessoreinheitcentral processing unit
44th
Prozessorprocessor
55
SpeicherStorage
66th
NetzwerkeinrichtungNetwork setup
77th
ComputerprogrammproduktComputer program product
88th
erste dezentrale Prozessoreinheitfirst decentralized processor unit
99
Prozessorprocessor
1010
SpeicherStorage
1111
NetzwerkeinrichtungNetwork setup
1212th
ComputerprogrammproduktComputer program product
1313th
SicherheitsdatenbankSecurity database
14.114.1
erste hierarchische Listefirst hierarchical list
14.214.2
zweite hierarchische Listesecond hierarchical list
14.314.3
dritte hierarchische Listethird hierarchical list
15.115.1
erster Aktionsdatensatz erste hierarchische Listefirst action record first hierarchical list
15.215.2
zweiter Aktionsdatensatz erste hierarchische Listesecond action record, first hierarchical list
15.315.3
dritter Aktionsdatensatz erste hierarchische Listethird action record, first hierarchical list
15.415.4
vierter Aktionsdatensatz erste hierarchische Listefourth action record, first hierarchical list
15.515.5
fünfter Aktionsdatensatz erste hierarchische Listefifth action record, first hierarchical list
15.615.6
sechster Aktionsdatensatz erste hierarchische Listesixth action data record, first hierarchical list
1616
Fahrerassistenzsystem zum autonomen Fahren des KraftfahrzeugsDriver assistance system for autonomous driving of the motor vehicle
1717th
Prozessorprocessor
1818th
SpeicherStorage
1919th
NetzwerkeinrichtungNetwork setup
2020th
Sensorsensor
2121st
AktuatorActuator
2222nd
ComputerprogrammproduktComputer program product
2323
Prozessoreinheit zur Firmware-AktualisierungProcessor unit for firmware updates
2424
Peer-to-Peer ComputernetzwerkPeer-to-peer computer network
2525th
weitere dezentrale Computerfurther decentralized computers
2626th
BlockchainBlockchain
2727
erster Block der Blockchainfirst block of the blockchain
27.127.1
erster Hash-Schlüssel des ersten Blocks der Blockchainfirst hash key of the first block of the blockchain
27.227.2
erster Aktionsdatensatz des ersten Blocks der Blockchainfirst action record of the first block of the blockchain
27.327.3
zweiter Hash-Schlüssel des ersten Blocks der Blockchainsecond hash key of the first block of the blockchain
2828
zweiter Block der Blockchainsecond block of the blockchain
28.128.1
erster Hash-Schlüssel des zweiten Blocks der Blockchainfirst hash key of the second block of the blockchain
28.228.2
erster Aktionsdatensatz des zweiten Blocks der Blockchainfirst action record of the second block of the blockchain
28.328.3
zweiter Hash-Schlüssel des dritten Blocks der Blockchainsecond hash key of the third block of the blockchain
2929
dritter Block der Blockchainthird block of the blockchain
29.129.1
erster Hash-Schlüssel des dritten Blocks der Blockchainfirst hash key of the third block of the blockchain
29.229.2
erster Aktionsdatensatz des dritten Blocks der Blockchainfirst action record of the third block of the blockchain
29.329.3
zweiter Hash-Schlüssel des dritten Blocks der Blockchainsecond hash key of the third block of the blockchain

Claims (9)

Computerprogrammprodukt (12) für ein Peer-to-Peer Computernetzwerk (24), wobei das Computerprogrammprodukt (12), wenn es auf in einem Kraftfahrzeug (1) angeordneten dezentralen Prozessoreinheiten (8, 25) eines Peer-to-Peer Computernetzwerkes (24) ausgeführt wird, die dezentralen Prozessoreinheiten (8, 25) anleitet, - auf einen Aktionsdatensatz (15.1 - 15.6; 27.2, 28.2, 29.2) zuzugreifen, der von einer zentralen Prozessoreinheit (3) des Kraftfahrzeugs (1) generiert worden ist, wobei der Aktionsdatensatz (15.1 - 15.6; 27.2, 28.2, 29.2) Informationen darüber enthält, dass die zentrale Prozessoreinheit (3) beabsichtigt, eine Aktion des Kraftfahrzeugs (1) anzuweisen, - die beabsichtigte Aktion zu validieren, bevor sie durch die zentrale Prozessoreinheit (3) angewiesen wird, - der zentralen Prozessoreinheit (3) zu erlauben, die beabsichtigte Aktion anzuweisen, wenn die Aktion erfolgreich validiert worden ist, und - der zentralen Prozessoreinheit (3) zu verbieten, die beabsichtigte Aktion anzuweisen, wenn die Aktion nicht erfolgreich validiert worden ist, - wobei das Computer-Programmprodukt (12), wenn es auf den dezentralen Prozessoreinheiten (8, 25) ausgeführt wird, die dezentralen Prozessoreinheiten (8, 25) anweist, die von der zentralen Prozessoreinheit (3) beabsichtigte Aktion zu validieren, indem es prüft, ob sicherheitsrelevante Voraussetzungen (15.1 - 15.6) zum Ausführen der beabsichtigten Aktion erfüllt sind, - wobei ein die beabsichtigte Aktion repräsentierender Aktionsdatensatz (15.2) in einer hierarchischen Liste (14.1) mit den sicherheitsrelevanten Voraussetzungen (15.1; 15.3 - 15.6) hinterlegt ist, und wobei das Computer-Programmprodukt (12), wenn es auf den dezentralen Prozessoreinheiten (8, 25) ausgeführt wird, die dezentralen Prozessoreinheiten (8, 25) anweist, - zu prüfen, ob alle sicherheitsrelevanten Voraussetzungen (15.1) erfüllt sind, die in der hierarchischen Liste (14.1) oberhalb des die beabsichtigte Aktion repräsentierenden Aktionsdatensatzes (15.2) eingestuft sind, - der zentralen Prozessoreinheit (3) zu erlauben, die beabsichtigte Aktion anzuweisen, wenn die Prüfung ergibt, dass alle sicherheitsrelevanten Voraussetzungen (15.1) erfüllt sind, die in der hierarchischen Liste (14.1) oberhalb des die beabsichtigte Aktion repräsentierenden Aktionsdatensatzes (15.2) eingestuft sind, und - der zentralen Prozessoreinheit (3) zu verbieten, die beabsichtigte Aktion anzuweisen, wenn die Prüfung ergibt, dass nicht alle sicherheitsrelevanten Voraussetzungen (15.1) erfüllt sind, die in der hierarchischen Liste oberhalb des die beabsichtigte Aktion repräsentierenden Aktionsdatensatzes (15.2) eingestuft sind.Computer program product (12) for a peer-to-peer computer network (24), wherein the computer program product (12) when it is on decentralized processor units (8, 25) of a peer-to-peer computer network (24) arranged in a motor vehicle (1) is executed, instructs the decentralized processor units (8, 25) to access an action data record (15.1-15.6; 27.2, 28.2, 29.2) generated by a central processor unit (3) of the motor vehicle (1), the action data record (15.1-15.6; 27.2, 28.2, 29.2) contains information about the fact that the central processor unit (3) intends to instruct an action of the motor vehicle (1), validate the intended action before being instructed by the central processor unit (3) will - allow the central processing unit (3) to instruct the intended action if the action has been successfully validated, and - prohibit the central processing unit (3) from displaying the intended action u if the action has not been successfully validated, - the computer program product (12), when it is executed on the decentralized processor units (8, 25), instructs the decentralized processor units (8, 25) to be sent by the central processor unit (3) to validate the intended action by checking whether safety-relevant prerequisites (15.1-15.6) for performing the intended action are met, - with an action data record (15.2) representing the intended action in a hierarchical list (14.1) with the safety-relevant prerequisites (15.1; 15.3-15.6) is stored, and the computer program product (12), when it is executed on the decentralized processor units (8, 25), instructs the decentralized processor units (8, 25) to check whether all safety-relevant requirements ( 15.1) are fulfilled, which are classified in the hierarchical list (14.1) above the action data record (15.2) representing the intended action, - to allow the central processor unit (3) to instruct the intended action when the The test shows that all safety-relevant prerequisites (15.1) are met, which are classified in the hierarchical list (14.1) above the action data record (15.2) representing the intended action, and - to forbid the central processor unit (3) from instructing the intended action, if the check reveals that not all safety-relevant requirements (15.1) are met, which are classified in the hierarchical list above the action data record (15.2) representing the intended action. Computerprogrammprodukt (12) nach Anspruch 1, wobei das Computer-Programmprodukt (12), wenn es auf den dezentralen Prozessoreinheiten (8, 25) ausgeführt wird, die dezentralen Prozessoreinheiten (8, 25) anweist, die von der zentralen Prozessoreinheit (3) beabsichtigte Aktion in einer Blockchain (26) zu speichern, wenn die Aktion erfolgreich validiert worden ist.Computer program product (12) according to Claim 1 wherein the computer program product (12), when it is executed on the decentralized processor units (8, 25), instructs the decentralized processor units (8, 25) to carry out the action intended by the central processor unit (3) in a blockchain (26) to be saved when the action has been successfully validated. Computerprogrammprodukt (12) nach einem der vorstehenden Ansprüche, wobei das Computer-Programmprodukt (12), wenn es auf den dezentralen Prozessoreinheiten (8, 25) ausgeführt wird, die dezentralen Prozessoreinheiten (8, 25) anweist, - die von der zentralen Prozessoreinheit (3) beabsichtigte Aktion zu validieren, indem es berechnete Hash-Schlüssel (27.1, 28.1, 29.1, 27.3, 28.3, 29.3) prüft, - der zentralen Prozessoreinheit (3) zu erlauben, die beabsichtigte Aktion anzuweisen, wenn die Prüfung ergibt, dass die berechneten Hash-Schlüssel (27.1, 28.1, 29.1, 27.3, 28.3, 29.3) korrekt sind, und - der zentralen Prozessoreinheit (3) zu verbieten, die beabsichtigte Aktion anzuweisen, wenn die Prüfung ergibt, dass die berechneten Hash-Schlüssel (27.1, 28.1, 29.1, 27.3, 28.3, 29.3) nicht korrekt sind.Computer program product (12) according to one of the preceding claims, wherein the computer program product (12), when it is executed on the decentralized processor units (8, 25), instructs the decentralized processor units (8, 25), - to validate the action intended by the central processor unit (3) by checking calculated hash keys (27.1, 28.1, 29.1, 27.3, 28.3, 29.3), - to allow the central processing unit (3) to instruct the intended action if the check shows that the calculated hash keys (27.1, 28.1, 29.1, 27.3, 28.3, 29.3) are correct, and - To forbid the central processor unit (3) from instructing the intended action if the check shows that the calculated hash keys (27.1, 28.1, 29.1, 27.3, 28.3, 29.3) are incorrect. Computerprogrammprodukt (12) nach einem der vorstehenden Ansprüche, wobei das Computer-Programmprodukt (12), wenn es auf den dezentralen Prozessoreinheiten (8, 25) ausgeführt wird, die dezentralen Prozessoreinheiten (8, 25) anweist, - der zentralen Prozessoreinheit (3) zu erlauben, die beabsichtigte Aktion anzuweisen, wenn die Aktion von mehr als 50% der dezentralen Prozessoreinheiten (8, 25) erfolgreich validiert worden ist, und - der zentralen Prozessoreinheit (3) zu verbieten, die beabsichtigte Aktion anzuweisen, wenn die Aktion von weniger als 50% der dezentralen Prozessoreinheiten (8, 25) erfolgreich validiert worden ist.Computer program product (12) according to one of the preceding claims, wherein the computer program product (12), when it is executed on the decentralized processor units (8, 25), instructs the decentralized processor units (8, 25), - to allow the central processing unit (3) to instruct the intended action if the action has been successfully validated by more than 50% of the decentralized processing units (8, 25), and - To prohibit the central processor unit (3) from instructing the intended action if the action has been successfully validated by less than 50% of the decentralized processor units (8, 25). Computerprogrammprodukt (12) nach einem der vorstehenden Ansprüche, wobei die beabsichtigte Aktion eine autonome Fahrfunktion (15.1) des Kraftfahrzeugs (1) ist.Computer program product (12) according to one of the preceding claims, wherein the intended action is an autonomous driving function (15.1) of the motor vehicle (1). Computerprogrammprodukt (12) nach Anspruch 5, wobei - der Aktionsdatensatz (15.1) Informationen darüber beinhaltet, dass die zentrale Prozessoreinheit (3) beabsichtigt, ein Fahrerassistenzsystem (16) des Kraftfahrzeugs (1) anzuweisen, eine autonome Fahrfunktion des Kraftfahrzeugs (1) auszuführen, - das Computer-Programmprodukt (12), wenn es auf den dezentralen Prozessoreinheiten (8, 25) ausgeführt wird, die dezentralen Prozessoreinheiten (8, 25) anweist, - die beabsichtigte autonome Fahrfunktion zu validieren, bevor sie durch die zentrale Prozessoreinheit (3) angewiesen wird, - der zentralen Prozessoreinheit (3) zu erlauben, das Fahrerassistenzsystem (16) anzuweisen, die beabsichtigte autonome Fahrfunktion auszuführen, wenn die beabsichtigte autonome Fahrfunktion erfolgreich validiert worden ist, und - der zentralen Prozessoreinheit (3) zu verbieten, das Fahrerassistenzsystem (16) anzuweisen, die beabsichtigte autonome Fahrfunktion auszuführen, wenn die beabsichtigte autonome Fahrfunktion nicht erfolgreich validiert worden ist.Computer program product (12) according to Claim 5 wherein - the action data set (15.1) contains information that the central processor unit (3) intends to instruct a driver assistance system (16) of the motor vehicle (1) to carry out an autonomous driving function of the motor vehicle (1), - the computer program product (12 ), when it is executed on the decentralized processor units (8, 25), instructs the decentralized processor units (8, 25) to validate the intended autonomous driving function before it is instructed by the central processor unit (3), - the central processor unit (3) to allow the driver assistance system (16) to execute the intended autonomous driving function when the intended autonomous driving function has been successfully validated, and - to forbid the central processor unit (3) to instruct the driver assistance system (16) to execute the intended autonomous driving function Carry out driving function if the intended autonomous driving function has not been successfully validated. Verfahren zur Validierung und Steuerung einer Aktion eines Kraftfahrzeugs (1) mittels eines Peer-to-Peer Computernetzwerks (24), wobei das Peer-to-Peer Computernetzwerk (24) mehrere dezentrale Prozessoreinheiten (8, 25) umfasst, die in einem Kraftfahrzeug (1) angeordnet sind, das Verfahren umfassend die Schritte - Zugreifen auf einen Aktionsdatensatz (15.1 - 15.6; 27.2, 28.2, 29.2) mittels der dezentralen Prozessoreinheiten (8, 25), wobei der Aktionsdatensatz (15.1 - 15.6; 27.2, 28.2, 29.2) von einer zentralen Prozessoreinheit (3) des Kraftfahrzeugs (1) generiert worden ist, und wobei der Aktionsdatensatz (15.1 - 15.6; 27.2, 28.2, 29.2) Informationen darüber enthält, dass die zentrale Prozessoreinheit (3) beabsichtigt, eine Aktion des Kraftfahrzeugs (1) anzuweisen, - Validieren der beabsichtigten Aktion mittels der dezentralen Prozessoreinheiten (8, 25), bevor die beabsichtigte Aktion durch die zentrale Prozessoreinheit (3) angewiesen wird, - Erlauben, dass die zentrale Prozessoreinheit (3) die beabsichtigte Aktion anweist, wenn die Aktion erfolgreich validiert worden ist, und - Verbieten, dass die zentrale Prozessoreinheit (3) die beabsichtigte Aktion anweist, wenn die Aktion nicht erfolgreich validiert worden ist.A method for validating and controlling an action of a motor vehicle (1) by means of a peer-to-peer computer network (24), the peer-to-peer computer network (24) comprising a plurality of decentralized processor units (8, 25) which are in a motor vehicle ( 1) are arranged, the method comprising the steps of - accessing an action data set (15.1 - 15.6; 27.2, 28.2, 29.2) by means of the decentralized processor units (8, 25), the action data set (15.1 - 15.6; 27.2, 28.2, 29.2) has been generated by a central processor unit (3) of the motor vehicle (1), and wherein the action data record (15.1-15.6; 27.2, 28.2, 29.2) contains information that the central processor unit (3) intends to instruct an action of the motor vehicle (1), - validation of the intended action by means of the decentralized processor units (8, 25) before the intended action is instructed by the central processor unit (3), - allow the central processing unit (3) instructs the intended action if the action has been successfully validated, and - prohibiting the central processing unit (3) from instructing the intended action if the action has not been successfully validated. Peer-to-Peer Computernetzwerk (24) zur Validierung und Steuerung einer Aktion eines Kraftfahrzeugs (1), wobei das Peer-to-Peer Computernetzwerk (24) mehrere dezentrale Prozessoreinheiten (8, 25) umfasst, wobei die dezentralen Prozessoreinheiten (8, 25) dazu eingerichtet sind, - auf einen Aktionsdatensatz (15.1 - 15.6; 27.2, 28.2, 29.2) zuzugreifen, der von einer zentralen Prozessoreinheit (3) des Kraftfahrzeugs (1) generiert worden ist, wobei der Aktionsdatensatz (15.1 - 15.6; 27.2, 28.2, 29.2) Informationen darüber enthält, dass die zentrale Prozessoreinheit (3) beabsichtigt, eine Aktion des Kraftfahrzeugs (1) anzuweisen, - die beabsichtigte Aktion zu validieren, bevor sie durch die zentrale Prozessoreinheit (3) angewiesen wird, - der zentralen Prozessoreinheit (3) zu erlauben, die beabsichtigte Aktion anzuweisen, wenn die Aktion erfolgreich validiert worden ist, und - der zentralen Prozessoreinheit (3) zu verbieten, die beabsichtigte Aktion anzuweisen, wenn Aktion nicht erfolgreich validiert worden ist.Peer-to-peer computer network (24) for validating and controlling an action of a motor vehicle (1), the peer-to-peer computer network (24) comprising several decentralized processor units (8, 25), the decentralized processor units (8, 25 ) are set up to - To access an action data set (15.1-15.6; 27.2, 28.2, 29.2) which has been generated by a central processor unit (3) of the motor vehicle (1), the action data set (15.1-15.6; 27.2, 28.2, 29.2) providing information about it contains that the central processor unit (3) intends to instruct the motor vehicle (1) to take an action, - to validate the intended action before it is instructed by the central processing unit (3), - to allow the central processing unit (3) to instruct the intended action if the action has been successfully validated, and - To forbid the central processing unit (3) from instructing the intended action if the action has not been successfully validated. Autonom fahrendes Kraftfahrzeug (1) umfassend - ein Peer-to-Peer Computernetzwerk (24) nach Anspruch 8 und - eine zentrale Prozessoreinheit (3), wobei die zentrale Prozessoreinheit (3) dazu eingerichtet ist, den Aktionsdatensatz (15.1 - 15.6; 27.2, 28.2, 29.2) zu generieren, auf den die dezentralen Prozessoreinheiten (8, 25) des Peer-to-Peer Computernetzwerks (24) zugreifen können.Autonomously driving motor vehicle (1) comprising - a peer-to-peer computer network (24) according to Claim 8 and - a central processor unit (3), the central processor unit (3) being set up to generate the action data record (15.1-15.6; 27.2, 28.2, 29.2) to which the decentralized processor units (8, 25) of the peer-to-peer -Peer computer network (24) can access.
DE102019219667.5A 2019-12-16 2019-12-16 Computer program product for a peer-to-peer computer network Active DE102019219667B3 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102019219667.5A DE102019219667B3 (en) 2019-12-16 2019-12-16 Computer program product for a peer-to-peer computer network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102019219667.5A DE102019219667B3 (en) 2019-12-16 2019-12-16 Computer program product for a peer-to-peer computer network

Publications (1)

Publication Number Publication Date
DE102019219667B3 true DE102019219667B3 (en) 2021-05-12

Family

ID=75584287

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019219667.5A Active DE102019219667B3 (en) 2019-12-16 2019-12-16 Computer program product for a peer-to-peer computer network

Country Status (1)

Country Link
DE (1) DE102019219667B3 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180374283A1 (en) * 2017-06-23 2018-12-27 International Business Machines Corporation Vehicle transaction validation
WO2019056916A1 (en) * 2017-09-21 2019-03-28 烽火通信科技股份有限公司 Method for calculating allocation of relay resources in optical transmission network planning
WO2019156916A1 (en) * 2018-02-07 2019-08-15 3M Innovative Properties Company Validating vehicle operation using pathway articles and blockchain

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180374283A1 (en) * 2017-06-23 2018-12-27 International Business Machines Corporation Vehicle transaction validation
WO2019056916A1 (en) * 2017-09-21 2019-03-28 烽火通信科技股份有限公司 Method for calculating allocation of relay resources in optical transmission network planning
WO2019156916A1 (en) * 2018-02-07 2019-08-15 3M Innovative Properties Company Validating vehicle operation using pathway articles and blockchain

Similar Documents

Publication Publication Date Title
DE102020124163A1 (en) VERIFICATION OF VEHICLE DATA
DE102008021030B4 (en) Method for operating a vehicle and corresponding device and corresponding vehicle
DE112012003795T5 (en) Vehicle network system and vehicle information processing method
DE102013105042A1 (en) Safe flash programming of a secondary processor
WO2019242975A1 (en) Method and device for agreeing cooperation between a first system and a second system
DE102015010203A1 (en) Method for operating a motor vehicle and system for operating a motor vehicle
EP3654222A1 (en) Vehicle, network component, method, computer program, and device for generating a identifier for an equipment state of a vehicle
DE102022105476A1 (en) System and method for building an in-vehicle cryptographic manager
DE102017209557A1 (en) Method for protecting a vehicle network against manipulated data transmission
DE102018200820A1 (en) Control system for a motor vehicle, method for operating the control system and motor vehicle with such a control system
DE102014018460A1 (en) Method for controlling the operation of at least one functional component of a motor vehicle and motor vehicle
DE102019215709A1 (en) Storage of rental vehicle insurance data using blockchain technology
DE102019219667B3 (en) Computer program product for a peer-to-peer computer network
DE102020132827A1 (en) controlling a vehicle
DE102023005085A1 (en) Method for activating a vehicle function and information technology system
DE69912494T2 (en) Method for checking the coherence of information downloaded to a computer
WO2023222794A1 (en) Update of software of a vehicle on the basis of vehicle field data
DE102021208459A1 (en) Method for authentic data transmission between control units in a vehicle, arrangement with control units, computer program and vehicle
EP1455312B1 (en) Method and apparatus for maintenance of security sensitive program code of a vehicle
DE102020124046A1 (en) DECENTRALIZED VEHICLE PROCESSES
DE102022205672B3 (en) Protection against cybersecurity attacks on transmission control units
DE102023211581A1 (en) Checking sensor data from a driver assistance system
DE102024124868B3 (en) System and method for protecting at least one on-board plug-in module from theft
DE102019201953A1 (en) Method and detection device for detecting an intervention in a motor vehicle and motor vehicle with a detection device
DE102019218590B4 (en) Method and device for object recognition

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final