DE102019201728A1 - Method for securing data using at least two processing units and a decision unit in communication with the at least two processing units - Google Patents
Method for securing data using at least two processing units and a decision unit in communication with the at least two processing units Download PDFInfo
- Publication number
- DE102019201728A1 DE102019201728A1 DE102019201728.2A DE102019201728A DE102019201728A1 DE 102019201728 A1 DE102019201728 A1 DE 102019201728A1 DE 102019201728 A DE102019201728 A DE 102019201728A DE 102019201728 A1 DE102019201728 A1 DE 102019201728A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- test value
- decision unit
- received
- processing units
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zum Absichern von Daten (DE) unter Verwendung von wenigstens zwei Recheneinheiten (110, 120) und einer mit den wenigstens zwei Recheneinheiten in Kommunikationsverbindung (140) stehenden Entscheidungseinheit (130), wobei mittels jeder der Recheneinheiten (110, 120) empfangene Daten (DE) verarbeitet werden, für die verarbeiteten Daten (DA) ein Zwischen-Prüfwert (PAB) erzeugt wird und der erzeugte Zwischen-Prüfwert (PAB, PAC) an die Entscheidungseinheit (130) übermittelt wird, wobei mittels der Entscheidungseinheit (130) aus den von den Recheneinheiten (110, 120) empfangenen Zwischen-Prüfwerten (PAB) ein finaler Prüfwert (PA) gebildet wird, und wobei die verarbeiteten Daten (DA) mit dem finalen Prüfwert (PA) versehen und ausgegeben werden, sowie ein Rechensystem (100). The invention relates to a method for securing data (D E ) using at least two processing units (110, 120) and a decision unit (130) in communication with the at least two processing units (140), whereby each of the processing units (110, 120) received data (D E ) are processed, an intermediate check value (P AB ) is generated for the processed data (D A ) and the generated intermediate check value (P AB , P AC ) is transmitted to the decision unit (130) , wherein a final test value (P A ) is formed by means of the decision unit (130) from the intermediate test values (P AB ) received from the processing units (110, 120), and the processed data (D A ) with the final test value ( P A ) are provided and output, as well as a computing system (100).
Description
Die vorliegende Erfindung betrifft ein Verfahren zum Absichern von Daten unter Verwendung von wenigstens zwei Recheneinheiten und einer mit den wenigstens zwei Recheneinheiten in Kommunikationsverbindung stehenden Entscheidungseinheit sowie ein Rechensystem und ein Computerprogramm zu dessen Durchführung.The present invention relates to a method for securing data using at least two processing units and a decision unit which is in communication with the at least two processing units, as well as a computing system and a computer program for its implementation.
Stand der TechnikState of the art
Für verschiedenste Anwendungen können Systeme bzw. Rechensysteme benötigt werden, die Berechnungen auf der Basis von Eingabedaten (z.B. von Sensoren) anstellen und die Ergebnisse beispielsweise über ein Kommunikationsmedium (z.B. Ethernet, CAN, etc.) verschicken bzw. bereitstellen, also insbesondere ohne direkte Ansteuerung eines Aktors. Solche Systeme (oftmals sog. Domänen- oder Zentralrechner) kommen vermehrt insbesondere im Automotive-Bereich, aber auch in der Bahntechnik (dort sowohl im Bahnnetz als auch in Zügen) und in industriellen Anwendungen zum Einsatz.Systems or computing systems can be required for a wide variety of applications that make calculations on the basis of input data (e.g. from sensors) and send or provide the results, for example, via a communication medium (e.g. Ethernet, CAN, etc.), i.e. in particular without direct control of an actuator. Such systems (often so-called domain or central computers) are increasingly being used, particularly in the automotive sector, but also in rail technology (both in the rail network and in trains) and in industrial applications.
Eine der Herausforderungen beim Design solcher Systeme ist es, eine erforderliche Integrität (oftmals mit Integritätsstufen bzw. Sicherheitsintegritätsstufen gemäß Safety Integrity Level bzw. SIL eingestuft) zu garantieren, ohne die Kommunikationsprotokolle zu ändern, da z.B. sog. Legacy-Systeme (d.h. insbesondere bestehende Systeme, die eine bestimmte Art von Daten bzw. Anweisungen erhalten müssen) als Empfänger und/oder Aktoren zum Einsatz kommen können.One of the challenges in the design of such systems is to guarantee the required integrity (often classified with integrity levels or safety integrity levels according to the Safety Integrity Level or SIL) without changing the communication protocols, as e.g. So-called legacy systems (i.e. in particular existing systems that have to receive a certain type of data or instructions) can be used as receivers and / or actuators.
Offenbarung der ErfindungDisclosure of the invention
Erfindungsgemäß werden ein Verfahren zum Absichern von Daten sowie ein Rechensystem und ein Computerprogramm zu dessen Durchführung mit den Merkmalen der unabhängigen Patentansprüche vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung.According to the invention, a method for securing data and a computing system and a computer program for carrying it out are proposed with the features of the independent claims. Advantageous configurations are the subject of the subclaims and the description below.
Ein erfindungsgemäßes Verfahren dient zum Absichern von Daten unter Verwendung von wenigstens zwei Recheneinheiten und einer mit den wenigstens zwei Recheneinheiten in Kommunikationsverbindung stehenden Entscheidungseinheit. Sowohl bei den Recheneinheiten als auch bei der Entscheidungseinheit kann es sich um separate Prozessoren oder Mikroprozessoren handeln. Unter einer Entscheidungseinheit ist dabei insbesondere eine Einheit zu verstehen, mittels welcher verschiedene Daten oder Werte miteinander verglichen werden können und insbesondere auch basierend auf diesem Vergleich eine Entscheidung getroffen werden kann, ob diese Daten bzw. Werte gleich sind oder ob beispielsweise ein Unterschied und damit ggf. ein Fehler vorliegt. Oftmals wird hierbei auch von einem Vergleicher oder Voter gesprochen.A method according to the invention serves to secure data using at least two processing units and a decision unit that is in communication with the at least two processing units. Both the computing units and the decision unit can be separate processors or microprocessors. A decision unit is to be understood here in particular as a unit by means of which different data or values can be compared with one another and, in particular, based on this comparison, a decision can be made as to whether these data or values are the same or whether, for example, a difference, there is an error. A comparator or voter is often used here.
Es versteht sich, dass - beispielsweise je nach gewünschter Anforderung und/oder Sicherheit - auch mehr als zwei Recheneinheiten, beispielsweise drei, vier, fünf, sechs oder noch mehr, verwendet werden können.It goes without saying that - for example depending on the desired requirement and / or security - it is also possible to use more than two computing units, for example three, four, five, six or even more.
Für Sicherheitsanforderungen ab einer gewissen Integritätsstufe (SIL, im Automotive-Bereich auch ASIL) können bei solchen Systemen bzw. Rechensystemen kritische Berechnungen mehrfach, d.h. mittels jeder von mehreren bzw. jeder der wenigstens zwei Recheneinheiten, ausgeführt werden, um zufällige Hardwarefehler (teilweise auch systematische Fehler) entdecken und Gefährdungen vermeiden zu können.For safety requirements from a certain integrity level (SIL, in the automotive sector also ASIL), critical calculations can be carried out multiple times in such systems or computing systems, i.e. by means of each of several or each of the at least two computing units, in order to be able to detect accidental hardware errors (sometimes also systematic errors) and to be able to avoid hazards.
Um aus der mehrfachen Ausführung einen Sicherheitsgewinn zu ziehen, sollten die Recheneinheiten möglichst unabhängig sein (Vermeidung sog. Common Cause Faults, CCF). Allgemein sollte das gesamte System dabei nicht anfällig für Einzelfehler (Fehler auf einzelnen Komponenten) sein. Bei hohen Sicherheitsintegritätsstufen (SIL 4, siehe z.B. IEC61508-2:2011, Anhang E) ist hierfür zu beachten, dass auf einem einzelnen Prozessor oder Mikroprozessor (bzw. einer einzelnen Recheneinheit) auch komplexe Fehler als Einzelfehler betrachtet werden müssen. Anders ausgedrückt, dürfen dabei Redundanzen auf einem (gemeinsamen) Chip nicht als unabhängig gewertet werden.In order to gain safety from the multiple execution, the processing units should be as independent as possible (avoidance of so-called common cause faults, CCF). In general, the entire system should not be prone to individual errors (errors on individual components). In the case of high safety integrity levels (SIL 4, see e.g. IEC61508-2: 2011, Appendix E), it should be noted that on a single processor or microprocessor (or a single processing unit) even complex errors must be viewed as single errors. In other words, redundancies on a (shared) chip must not be considered independent.
Generell können solche Systeme mit einem Kreuzvergleich arbeiten, d.h. es erfolgt eine gegenseitige Prüfung der Ausgabe der jeweils anderen Recheneinheiten oder mit einem gegenüber den Recheneinheiten externen Vergleicher bzw. Voter, wie oben erwähnt. Die Tatsache, dass anschließend eine einzelne abgesicherte Nachricht, d.h. mittels eines Prüfwerts abgesicherte bzw. damit versehene Daten, ausgegeben bzw. verschickt werden sollen, hat sich jedoch als Herausforderung erwiesen.In general, such systems can work with a cross comparison, i.e. there is a mutual check of the output of the respective other computing units or with a comparator or voter external to the computing units, as mentioned above. The fact that a single secured message, i.e. However, data secured or provided with a test value to be output or sent has proven to be a challenge.
Je nachdem, wie die typischerweise nötigen Funktionen bzw. Schritte der Berechnung eines Prüfwerts (in der Regel nach der sog. CRC bzw. zyklischen Redundanz-Prüfung ermittelt), dem Vergleich von Prüfwerten sowie dem Versand bzw. Bereitstellen der abgesicherten Daten nach außen auf die mehreren Recheneinheiten und ggf. die (externe) Entscheidungseinheit verteilt werden, ergeben sich Anfälligkeiten für Einzelfehler oder es resultieren zumindest hohe interne Datenströme.Depending on how the typically required functions or steps for calculating a check value (usually determined according to the so-called CRC or cyclical redundancy check), the comparison of check values and the sending or provision of the secured data to the outside world multiple computing units and, if necessary, the (external) decision-making unit, there are susceptibilities to individual errors or at least high internal data streams result.
Bei dem vorgeschlagenen Verfahren werden nun mittels jeder der Recheneinheiten empfangene Daten verarbeitet, für die verarbeiteten Daten wird (mittels jeder der Recheneinheiten jeweils) ein Zwischen-Prüfwert erzeugt und der erzeugte Zwischen-Prüfwert wird (von der jeweiligen Recheneinheit) an die Entscheidungseinheit übermittelt. Mittels der Entscheidungseinheit wird dann aus den von den Recheneinheiten empfangenen Zwischen-Prüfwerten ein finaler Prüfwert gebildet, und die verarbeiteten Daten werden dann mit dem finalen Prüfwert versehen und (insbesondere über eine Schnittstelle oder ein Kommunikationsmedium) ausgegeben bzw. bereitgestellt.In the proposed method, data received by means of each of the processing units are now processed for the processed data an intermediate test value is generated (by means of each of the computing units) and the intermediate test value generated is transmitted (by the respective computing unit) to the decision unit. The decision unit then forms a final test value from the intermediate test values received from the processing units, and the processed data is then provided with the final test value and output or provided (in particular via an interface or a communication medium).
Der mittels der Entscheidungseinheit gebildete finale Prüfwert wird dabei insbesondere an eine der Recheneinheiten übermittelt, und mittels dieser Recheneinheit werden die verarbeiteten Daten dann mit dem finalen Prüfwert versehen und ausgegeben.The final test value formed by means of the decision unit is in particular transmitted to one of the computing units, and by means of this computing unit the processed data are then provided with the final test value and output.
Um mittels der Entscheidungseinheit aus den von den Recheneinheiten empfangenen Zwischen-Prüfwerten den finalen Prüfwert zu bilden, werden insbesondere die von den Recheneinheiten empfangenen Zwischen-Prüfwerte verglichen, wobei dann, wenn die empfangenen Zwischen-Prüfwerte gleich sind, aus einem der Zwischen-Prüfwerte der finale Prüfwert gebildet wird. Hierzu wird insbesondere mittels jeder der Recheneinheiten der Zwischen-Prüfwert gemäß derselben Vorschrift erzeugt. Damit können die Recheneinheiten gleichartig ausgebildet sein, ein Vergleich der beiden (zumindest bei ordnungsgemäßer Funktion) gleichen Zwischen-Prüfwerte erfolgt in der Entscheidungseinheit.In order to use the decision unit to form the final test value from the intermediate test values received from the processing units, the intermediate test values received by the processing units are compared, in which case, if the received intermediate test values are the same, one of the intermediate test values of the final test value is formed. For this purpose, the intermediate test value is generated in accordance with the same rule by means of each of the computing units. The arithmetic units can thus be designed in the same way, a comparison of the two intermediate test values which are the same (at least if they are functioning properly) takes place in the decision unit.
Alternativ ist es jedoch auch bevorzugt, wenn mittels der Entscheidungseinheit aus den von den Recheneinheiten empfangenen Zwischen-Prüfwerten der finale Prüfwert gebildet wird, indem aus den von den Recheneinheiten empfangenen Zwischen-Prüfwerten jeweils ein finaler Vergleichs-Prüfwert gebildet und diese miteinander verglichen werden und dann, wenn die gebildeten finalen Vergleichs-Prüfwerte gleich sind, einer davon als finaler Prüfwert verwendet wird. Hierzu werden insbesondere mittels der Recheneinheiten jeweils Zwischen-Prüfwerte gemäß unterschiedlicher Vorschriften erzeugt. Der finale Prüfwert entspricht dabei letztlich den (zumindest bei ordnungsgemäßer Funktion) gleichen finalen Vergleichs-Prüfwerten, die jeweils separat in der Entscheidungseinheit für die Zwischen-Prüfwerte ermittelt werden. Bei dieser Variante müssen zwar mehrere finale Prüfwerte bzw. finale Vergleichs-Prüfwerte (aus jeweils verschiedenen Zwischen-Prüfwerten) ermittelt werden, jedoch wird eine zusätzliche Robustheit gegen Fehler mit gemeinsamer Ursache (d.h. die bei allen Recheneinheiten zugleich auftreten können) erzeugt.Alternatively, however, it is also preferred if the final test value is formed from the intermediate test values received from the processing units by means of the decision unit, in that a final comparison test value is formed from the intermediate test values received from the processing units and these are compared with one another and then if the final comparison test values formed are the same, one of them is used as the final test value. For this purpose, in particular, intermediate test values are generated in accordance with different regulations by means of the computing units. The final test value ultimately corresponds to the same final comparison test values (at least when functioning properly), which are each determined separately in the decision unit for the intermediate test values. With this variant, although several final test values or final comparison test values (from different intermediate test values in each case) have to be determined, additional robustness against errors with a common cause (i.e. which can occur in all processing units at the same time) is generated.
Auf diese Weise ist eine integre Erzeugung von Daten möglich, die an externe Empfänger geschickt werden kann, ohne dass dabei fehlerhafte aber plausible (d.h. vom Empfänger nicht als fehlerhaft erkennbare) Ausgabewerte verschickt werden. Das vorgeschlagene Verfahren erlaubt es dabei, den Vergleich der redundanten Ergebnisse einer sicherheitsrelevanten Berechnung (oder allgemein Verarbeitung) von empfangenen Daten von der Erzeugung des (finalen) Prüfwerts und dem Versand der Daten in einer Weise zu entkoppeln, die den sicherheitsrelevanten Einfluss von Einzelfehlern in jeder der Komponenten vermeidet. Dies erfolgt insbesondere in kompatibler Weise für die Verwendung in Legacy-Systemen (Versand einzelner per Prüfwert abgesicherter Datenpakete, z.B. in Bahnsystemen) und ohne relevante Performance- und Kostennachteile.In this way, it is possible to generate data with integrity, which can be sent to external recipients, without incorrect but plausible output values (i.e. not recognizable as faulty by the recipient) being sent. The proposed method makes it possible to decouple the comparison of the redundant results of a safety-relevant calculation (or general processing) of received data from the generation of the (final) test value and the sending of the data in a way that reduces the safety-relevant influence of individual errors in each of the components avoids. In particular, this is done in a compatible manner for use in legacy systems (sending individual data packets protected by a check value, e.g. in rail systems) and without relevant performance and cost disadvantages.
Ein besonders relevanter Aspekt dieses vorgeschlagenen Verfahrens ist dabei die Aufteilung der Bildung des Prüfwerts in zwei Stufen, so dass keine der mehreren (redundanten) Recheneinheiten (die die Daten verarbeiten bzw. die Ausgangsdaten berechnen), den (finalen) Prüfwert berechnen und damit unkontrolliert fehlerhafte plausible Ausgaben tätigen kann. Außerdem muss die Entscheidungseinheit die Original-Ausgangsdaten, d.h. die in einer Recheneinheit verarbeiteten Daten nicht kennen, woraus sich Performance-Vorteile ergeben und Einzelfehler auch auf der Entscheidungseinheit keine Gefährdung verursachen können. Zudem müssen existierende Ende-zu-Ende abgesicherte Transportprotokolle und vorhandene Legacy-Systeme nicht angepasst werden. Insbesondere gibt es keine Einschränkungen für eine Wahl des nach außen sichtbaren Transport-Polynoms bzw. allgemein der auszugebenen, abgesicherten Daten.A particularly relevant aspect of this proposed method is the division of the formation of the test value into two stages, so that none of the multiple (redundant) computing units (which process the data or calculate the output data) calculate the (final) test value and thus uncontrollably incorrect ones can make plausible expenses. In addition, the decision unit must use the original output data, i.e. do not know the data processed in a processing unit, which results in performance advantages and individual errors cannot cause any danger on the decision unit either. In addition, existing end-to-end secured transport protocols and existing legacy systems do not have to be adapted. In particular, there are no restrictions for a choice of the externally visible transport polynomial or, in general, of the secured data to be output.
Nicht relevant hingegen ist die Art der Verarbeitung. Insbesondere kann diese auch lediglich ein Durchleiten der empfangenen Daten, d.h. eine identische Abbildung, sein bzw. umfassen.However, the type of processing is not relevant. In particular, this can also only involve passing the received data through, i.e. an identical figure.
Insbesondere bei der Identität ist auch eine Verifizierung von mit Prüfwert empfangenen Daten möglich. Wird von den Recheneinheiten aus den empfangenen Daten (d.h. das Verarbeiten ist die Identität) jeweils ein Zwischen-Prüfwert gebildet und an die Entscheidungseinheit zusammen mit dem empfangenen Prüfwert übertragen, kann der mittels der Entscheidungseinheit aus den von den Recheneinheiten empfangenen Zwischen-Prüfwerten gebildete finale Prüfwert mit dem empfangenen Prüfwert verglichen werden. Entspricht der finale Prüfwert dem empfangenen Prüfwert, sind die empfangenen Daten korrekt empfangen worden. In the case of identity in particular, verification of data received with a check value is also possible. If the processing units form an intermediate test value from the received data (ie the processing is the identity) and transmit it to the decision unit together with the received test value, the final test value formed by the decision unit from the intermediate test values received from the processing units can be used can be compared with the received test value. If the final test value corresponds to the received test value, the received data has been received correctly.
Vorteilhafterweise werden mittels jeder der Recheneinheiten zu vorgegebenen Zeitpunkten, insbesondere regelmäßig, jeweils vorgegebene korrekte Daten und vorgegebene (absichtlich) fehlerhafte Daten an die Entscheidungseinheit übermittelt, wobei anhand der darauf basierenden, von der Entscheidungseinheit erhaltenen Prüfwerte eine Funktionsfähigkeit der Entscheidungseinheit überprüft wird. Auf diese Weise können nicht nur Einzelfehler, sondern insbesondere auch schlafende bzw. latente Fehler erfasst bzw. erkannt werden.Advantageously, by means of each of the computing units at predetermined times, in particular regularly, predetermined correct data and predetermined (deliberately) incorrect data are transmitted to the decision unit, with the aid of the Decision unit received test values a functionality of the decision unit is checked. In this way, not only individual errors, but in particular also dormant or latent errors can be detected or recognized.
Realisiert werden kann das vorgeschlagene Verfahren insbesondere mithilfe eines mittels Division, insbesondere mit Rest (Modulo), durch ein Prüfwert-Polynom gebildeten Prüfwerts. Als Zwischen-Prüfwert kommt dann entsprechend ein mittels Division durch ein Zwischen-Polynom gebildeter Prüfwert in Betracht, das durch Multiplikation des Prüfwert-Polynoms mit einem weiteren Polynom gebildet wird. Für eine beispielhafte Berechnung solcher Polynome sei an dieser Stelle auf die Figurenbeschreibung verwiesen.The proposed method can be implemented in particular with the aid of a test value formed by means of division, in particular with a remainder (modulo), by a test value polynomial. A test value formed by division by an intermediate polynomial, which is formed by multiplying the test value polynomial by a further polynomial, then comes into consideration as an intermediate test value. For an exemplary calculation of such polynomials, reference is made at this point to the description of the figures.
Gegenstand der Erfindung ist weiterhin ein Rechensystem zum Absichern von Daten, mit wenigstens zwei Recheneinheiten und einer mit den wenigstens zwei Recheneinheiten in Kommunikationsverbindung stehenden Entscheidungseinheit, wobei das Rechensystem dazu eingerichtet ist, alle Verfahrensschritte eines Verfahrens nach einem der vorstehenden Ansprüche durchzuführen.The invention also relates to a computing system for securing data, with at least two computing units and a decision unit in communication with the at least two computing units, the computing system being set up to carry out all method steps of a method according to one of the preceding claims.
Bei dem Rechensystem kann es sich beispielsweise um ein Steuergerät, beispielsweise für ein Kraftfahrzeug, handeln, das die wenigstens zwei Recheneinheiten und die Entscheidungseinheit, die selbst wiederum jeweils durch Prozessoren oder Mikroprozessoren gebildet sein können, aufweist. Die Entscheidungseinheit kann insbesondere auf einem FPGA, ASIC, 8-Bit-Controller oder dergleichen realisiert sein. Für eine Ankopplung, d.h. für die Kommunikationsverbindung, kommen einfache Schnittstellen mit geringer Bandbreite wie UART ebenso in Betracht wie Netzwerk- oder Bus-Schnittstellen.The computing system can be, for example, a control device, for example for a motor vehicle, which has the at least two computing units and the decision unit, which in turn can each be formed by processors or microprocessors. The decision unit can in particular be implemented on an FPGA, ASIC, 8-bit controller or the like. For a coupling, i.e. For the communication connection, simple interfaces with low bandwidth such as UART can be considered, as well as network or bus interfaces.
Auch die Implementierung eines erfindungsgemäßen Verfahrens in Form eines Computerprogramms oder Computerprogrammprodukts mit Programmcode zur Durchführung aller Verfahrensschritte ist vorteilhaft, da dies besonders geringe Kosten verursacht, insbesondere wenn ein ausführendes Steuergerät noch für weitere Aufgaben genutzt wird und daher ohnehin vorhanden ist. Geeignete Datenträger zur Bereitstellung des Computerprogramms sind insbesondere magnetische, optische und elektrische Speicher, wie z.B. Festplatten, Flash-Speicher, EEPROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich.The implementation of a method according to the invention in the form of a computer program or computer program product with program code for performing all method steps is advantageous, since this causes particularly low costs, especially if an executing control device is used for other tasks and is therefore available anyway. Suitable data carriers for providing the computer program are in particular magnetic, optical and electrical memories, such as e.g. Hard disks, flash memories, EEPROMs, DVDs, etc. It is also possible to download a program via computer networks (Internet, intranet, etc.).
Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.Further advantages and configurations of the invention emerge from the description and the accompanying drawing.
Die Erfindung ist anhand von Ausführungsbeispielen in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung beschrieben.The invention is shown schematically in the drawing using exemplary embodiments and is described below with reference to the drawing.
FigurenlisteFigure list
-
1 zeigt schematisch ein erfindungsgemäßes Rechensystem in einer bevorzugten Ausführungsform.1 shows schematically a computing system according to the invention in a preferred embodiment. -
2 zeigt schematisch ein erfindungsgemäßes Rechensystem in einer weiteren bevorzugten Ausführungsform.2 shows schematically a computing system according to the invention in a further preferred embodiment.
Ausführungsform(en) der ErfindungEmbodiment (s) of the invention
In
Das Rechensystem
Zudem weist das Rechensystem
Im Rahmen des vorgeschlagenen Verfahrens werden nun Daten
Sowohl in der Recheneinheit
Weiterhin wird sowohl in der Recheneinheit
Von der Recheneinheit
Von der Entscheidungseinheit
Nachfolgend soll der Vorgang der Ermittlung bzw. Berechnung des finalen Prüfwerts
Die Daten
- Analog gilt: DE\(A*B)=PAB und DE = (A*B)*xA + PAB.
- Dann gilt aber auch: PAB\A=(DE-(A*B)*xAB)\A.
- Similarly: D E \ (A * B) = P AB and D E = (A * B) * x A + P AB .
- But then also: P AB \ A = (D E - (A * B) * x AB ) \ A.
Weil (A*B)*xAB ohne Rest durch A teilbar ist, ergibt sich daraus:
Dies bedeutet, dass ein Prüfwert
Insbesondere erhält man damit also ein System aus zwei Recheneinheiten und einer Entscheidungseinheit, das eine hohe Robustheit gegen Einzelfehler hat. Die Recheneinheiten können daher keine gefährlichen fehlerhaften Pakete verschicken, da sie den (finalen) Prüfwert nicht kennen. Die Entscheidungseinheit kann keine gefährlichen fehlerhaften Pakete verschicken, da sie die Daten nicht erhält und auch nicht über eine Logik zum Verschicken von Daten nach extern verfügen muss. Daher können mit einem solchen Rechensystem bzw. einem solchen Verfahren hohe Sicherheitsintegritätsstufen erreicht werden. Die Entscheidungseinheit erhält nur einen geringen Datenstrom.In particular, a system consisting of two processing units and a decision unit is thus obtained that is highly robust against individual errors. The processing units can therefore not send any dangerous, faulty packets because they do not know the (final) test value. The decision unit cannot send dangerous faulty packets because it does not receive the data and does not have to have any logic for sending data to the outside. Therefore, with such a computing system or such a method, high security integrity levels can be achieved. The decision unit only receives a small data stream.
In
Im Gegensatz zu dem Rechensystem
Die Recheneinheiten
Dann werden die beiden ermittelten finalen Vergleichs-Prüfwerte
Hierbei sind zwar im Vergleich zu dem in Bezug auf
Die beschriebenen Ausführungsformen der Erfindung können beispielsweise für den Fall, dass das Verarbeiten die Identität ist (d.h. DA=DE), auch für das Verifizieren von mit Prüfwert PE erhaltenen Daten
Für diesen Fall würden aus den empfangenen Daten
Diese vergleicht entweder die empfangenen Prüfwerte
Da bei einer Kommunikation zwischen meist für Senden und Empfangen derselbe Prüfwert (z.B.
Zur Verminderung der Latenz kann die Prüfung der empfangenen Daten in der Entscheidungseinheit
Claims (13)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019201728.2A DE102019201728A1 (en) | 2019-02-11 | 2019-02-11 | Method for securing data using at least two processing units and a decision unit in communication with the at least two processing units |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019201728.2A DE102019201728A1 (en) | 2019-02-11 | 2019-02-11 | Method for securing data using at least two processing units and a decision unit in communication with the at least two processing units |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102019201728A1 true DE102019201728A1 (en) | 2020-08-13 |
Family
ID=71738921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102019201728.2A Pending DE102019201728A1 (en) | 2019-02-11 | 2019-02-11 | Method for securing data using at least two processing units and a decision unit in communication with the at least two processing units |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102019201728A1 (en) |
-
2019
- 2019-02-11 DE DE102019201728.2A patent/DE102019201728A1/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2823430B1 (en) | Electronic control system | |
EP1802019B1 (en) | Identification of errors in data transmission | |
EP2814193B1 (en) | Method and system for detecting errors in the transmission of data from a transmitter to at least one receiver | |
DE102017223751A1 (en) | Method and device for detecting anomalies in a data stream of a communication network | |
DE102009019792A1 (en) | Control system for safely operating at least one functional component | |
WO2016008948A1 (en) | Control and data-transfer system, gateway module, i/o module, and method for process control | |
DE10152235A1 (en) | Error detection method for data transmission within controlled area network controller using generation and checking of test bits | |
WO2018233934A1 (en) | Device and method for controlling a vehicle module | |
WO2020173682A1 (en) | Security system and method for operating a security system | |
WO2016049670A1 (en) | Distributed real-time computer system and time-controlled distribution unit | |
DE102019201728A1 (en) | Method for securing data using at least two processing units and a decision unit in communication with the at least two processing units | |
EP3499324B1 (en) | Method of modular verification of a configuration of a device | |
DE102015218890A1 (en) | Method and apparatus for generating an output data stream | |
EP1596517B1 (en) | Method of transmission of redundantly provided data over a single channel | |
EP1738262B1 (en) | Method and control system for recognising an error when processing data in a processing system | |
DE102015218882A1 (en) | Method and device for checking calculation results in a system with several processing units | |
EP4127934A1 (en) | Method and safety-oriented system for performing safety functions | |
WO2016138956A1 (en) | Error-resilient control for an automation system | |
WO2008098999A1 (en) | Control system of a technical installation | |
DE102004046292A1 (en) | Method for carrying out a voting of redundant information | |
EP2575282A1 (en) | Device and method for receiving a secure telegram | |
DE102016208869A1 (en) | Method for operating a data processing device for a vehicle | |
EP2960632B1 (en) | Method and system for the preparation of sensor values generated by sensors assembled in a vehicle | |
DE102013204371A1 (en) | Method and bus system for protocol-independent transmission of standard data packets with security data | |
DE102016110148A1 (en) | End system device with integrated switching device |