Die vorliegende Offenbarung bezieht sich auf eine Steuerungseinheit zum Überprüfen von Vorrichtungen, etwa datenverarbeitenden Vorrichtungen, auf eine Vorrichtung mit einer solchen Steuerungseinheit, auf ein Datennetzwerk mit einer zu überprüfenden Teilnehmervorrichtung und einer Referenzvorrichtung, auf ein Verfahren und auf ein Computerprogramm. Die vorliegende Offenbarung bezieht sich ferner auf ein vertrauenswürdiges Datenverarbeitungssystem (engl.: Trustworthy Computing System).The present disclosure relates to a control unit for checking devices, for example data processing devices, to a device with such a control unit, to a data network with a subscriber device to be checked and a reference device, to a method and to a computer program. The present disclosure also relates to a trustworthy computing system.
In verteilten Datenverarbeitungssystemen, beispielsweise über den Globus verteilten Servern oder dergleichen, kann eine Anforderung darin bestehen, ungeachtet einer großen Entfernung und einer mangelnden physischen Präsenz die Unversehrtheit oder den korrekten Betrieb einer Vorrichtung im Sinne der Datenintegrität zu überwachen.In distributed data processing systems, for example servers or the like distributed over the globe, a requirement can be to monitor the integrity or correct operation of a device in terms of data integrity, regardless of a great distance and lack of physical presence.
Es besteht somit ein Bedarf an der Sicherstellung vertrauenswürdiger Datenverarbeitung.There is thus a need to ensure trustworthy data processing.
Gemäß einem Ausführungsbeispiel umfasst eine Steuerungseinheit eine Datenschnittstelle, die eingerichtet ist, um eine erste Abfrage an eine erste Vorrichtung zu übermitteln und um eine zweite, inhaltsgleiche Abfrage an eine zweite Vorrichtung zu übermitteln. Ferner ist die Datenschnittstelle eingerichtet, um eine erste Antwort auf die erste Abfrage hin zu erhalten, und um eine zweite Antwort auf die zweite Abfrage hin zu erhalten. Die Steuerungseinheit weist eine Vergleichseinrichtung auf, die ausgebildet ist, um die erste Antwort mit der zweiten Antwort zu vergleichen und um eine Information bereitzustellen, die angibt, ob ein Zustand der ersten Vorrichtung mit einem Zustand der zweiten Vorrichtung übereinstimmt.According to one embodiment, a control unit comprises a data interface which is set up to transmit a first query to a first device and to transmit a second query with the same content to a second device. Furthermore, the data interface is set up to receive a first response to the first query and to receive a second response to the second query. The control unit has a comparison device which is designed to compare the first response with the second response and to provide information which indicates whether a state of the first device corresponds to a state of the second device.
Gemäß einem Ausführungsbeispiel umfasst eine Vorrichtung eine Datenschnittstelle, die ausgebildet ist, um eine Abfrage zu empfangen. Die Vorrichtung umfasst eine Steuerungseinheit mit den oben beschriebenen Merkmalen, welche ausgebildet ist, um einen Zustand der Vorrichtung basierend auf der Abfrage zu bestimmen und um eine Antwort zu erstellen, die den Zustand angibt. Die Vorrichtung ist ausgebildet, um die Antwort mit der Datenschnittstelle zu senden.According to one embodiment, a device comprises a data interface which is designed to receive a query. The device comprises a control unit with the features described above, which is designed to determine a state of the device based on the query and to generate a response which indicates the state. The device is designed to send the response with the data interface.
Gemäß einem Ausführungsbeispiel umfasst ein Datennetzwerk eine Steuerungseinrichtung mit den beschriebenen Merkmalen, eine Teilnehmervorrichtung umfassend eine Teilnehmer-Steuerungseinrichtung, die ausgebildet ist, um die erste Abfrage von der Steuerungseinrichtung zu erhalten und um die erste Antwort auf die erste Abfrage zu erstellen und um die erste Antwort an die Steuerungseinrichtung zu übermitteln. Das Datennetzwerk umfasst eine Referenzvorrichtung umfassend eine Referenz-Steuerungseinrichtung, die ausgebildet ist, um die zweite Abfrage von der Steuerungseinrichtung zu erhalten und um die zweite Antwort auf die zweite Abfrage zu erstellen.According to one embodiment, a data network comprises a control device with the features described, a subscriber device comprising a subscriber control device which is designed to receive the first query from the control device and to generate the first response to the first query and to generate the first response to be transmitted to the control device. The data network comprises a reference device comprising a reference control device which is designed to receive the second query from the control device and to generate the second response to the second query.
Gemäß einem Ausführungsbeispiel umfasst ein Verfahren ein Übermitteln einer ersten Abfrage an eine erste Vorrichtung, ein Übermitteln einer zweiten, inhaltsgleichen Abfrage an eine zweite Vorrichtung, ein Erhalten einer ersten Antwort auf die erste Abfrage hin und ein Erhalten einer zweiten Antwort auf die zweite Abfrage hin. Das Verfahren umfasst ein Vergleichen der ersten Antwort mit der zweiten Antwort und ein Bereitstellen einer Information, die angibt, ob ein Zustand der ersten Vorrichtung mit einem Zustand der zweiten Vorrichtung übereinstimmt.According to one embodiment, a method comprises transmitting a first query to a first device, transmitting a second query with the same content to a second device, receiving a first response to the first query, and receiving a second response to the second query. The method comprises comparing the first response with the second response and providing information which indicates whether a state of the first device corresponds to a state of the second device.
Weitere vorteilhafte Ausgestaltungen sind in den abhängigen Patentansprüchen definiert.Further advantageous configurations are defined in the dependent patent claims.
Ausführungsbeispiele werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen erläutert. Es zeigen:
- 1 ein schematisches Blockschaltbild einer Vorrichtung gemäß einem Ausführungsbeispiel;
- 2 ein schematisches Blockschaltbild eines Datennetzwerks gemäß einem Ausführungsbeispiel;
- 3 ein schematisches Flussdiagramm eines Verfahrens gemäß einem Ausführungsbeispiel;
- 4 ein schematisches Blockschaltbild eines Datennetzwerks gemäß einem Ausführungsbeispiel, bei dem eine Steuerungseinheit ausgebildet sein kann, um einen Betrieb einer überwachten Vorrichtung zu steuern;
- 5 ein schematisches Blockschaltbild eines Datennetzwerks gemäß einem Ausführungsbeispiel, bei dem die Steuerungseinheit ausgebildet ist, um eine Mehrzahl von Vorrichtungen bezüglich einer Referenzvorrichtung zu überwachen;
- 6 ein schematisches Blockschaltbild eines Datennetzwerks gemäß einem Ausführungsbeispiel, bei dem eine Vorrichtung einerseits ausgebildet ist, um einen internen Zustand festzustellen, und andererseits eine Ausgestaltung der Steuerungseinheit aufweisen kann;
- 7a-f schematische Diagramme zur Darstellung von Schemata der Übermittlung von Abfragen an Vorrichtungen;
- 8 ein schematisches Blockschaltbild eines Datennetzwerks gemäß einem Ausführungsbeispiel, bei dem das Datennetzwerk eine Sammeleinrichtung aufweist; und
- 9 ein schematisches Flussdiagramm eines Verfahrens gemäß einem Ausführungsbeispiel, welches im Datennetzwerk der 8 ausgeführt werden kann.
Exemplary embodiments are explained below with reference to the accompanying drawings. Show it: - 1 a schematic block diagram of a device according to an embodiment;
- 2 a schematic block diagram of a data network according to an embodiment;
- 3 a schematic flow diagram of a method according to an embodiment;
- 4th a schematic block diagram of a data network according to an embodiment, in which a control unit can be designed to control operation of a monitored device;
- 5 a schematic block diagram of a data network according to an embodiment, in which the control unit is designed to monitor a plurality of devices with respect to a reference device;
- 6 a schematic block diagram of a data network according to an embodiment, in which a device is designed on the one hand to determine an internal state, and on the other hand can have a configuration of the control unit;
- 7a-f schematic diagrams for illustrating schemes for the transmission of queries to devices;
- 8th a schematic block diagram of a data network according to an embodiment, in which the data network has a collecting device; and
- 9 a schematic flow diagram of a method according to an embodiment, which is in the data network of 8th can be executed.
Bevor nachfolgend Ausführungsbeispiele der vorliegenden Erfindung im Detail anhand der Zeichnungen näher erläutert werden, wird darauf hingewiesen, dass identische, funktionsgleiche oder gleichwirkende Elemente, Objekte und/oder Strukturen in den unterschiedlichen Figuren mit den gleichen Bezugszeichen versehen sind, so dass die in unterschiedlichen Ausführungsbeispielen dargestellte Beschreibung dieser Elemente untereinander austauschbar ist bzw. aufeinander angewendet werden kann.Before exemplary embodiments of the present invention are explained in more detail below with reference to the drawings, it is pointed out that identical, functionally identical or identically acting elements, objects and / or structures in the different figures are provided with the same reference numerals, so that those shown in different exemplary embodiments Description of these elements is interchangeable or can be applied to one another.
1 zeigt ein schematisches Blockschaltbild einer Vorrichtung 10 gemäß einem Ausführungsbeispiel. Die Vorrichtung 10 umfasst eine Datenschnittstelle 12, die für eine bidirektionale Kommunikation ausgelegt ist. Die Datenschnittstelle 12 kann eine für externe Kommunikation eingerichtete Schnittstelle sein, kann aber auch eine interne Datenschnittstelle sein, beispielsweise ein Datenbus oder dergleichen. Die bidirektionale Kommunikation kann durch wechselweises oder gleichzeitiges Senden und Empfangen von Signalen implementiert werden, kann jedoch auch von Verwenden mehrerer Einzelschnittstellen erfolgen, die für ein Senden oder ein Empfangen von Datensignalen 14 und/oder 16 eingerichtet sind. Die Datensignale 14 und/oder 16 können unabhängig voneinander drahtgebunden oder drahtlos empfangen oder übermittelt werden, etwa durch drahtgebundene oder drahtlose Netzwerkschnittstellen oder Mobilfunkschnittstellen. Bei dem Datensignal 14 kann es sich um eine Abfrage handeln. Die Abfrage 14 kann eine Anweisung oder Information umfassen, die angibt, dass die Vorrichtung 10 angewiesen ist, einen Zustand der Vorrichtung 10 zu bestimmen und mitzuteilen. Das Datensignal 16 kann eine Antwort darstellen, die auf die Abfrage 14 hin übermittelt wird und welche die mittels der Abfrage 14 angefragten Informationen aufweist. 1 shows a schematic block diagram of a device 10 according to an embodiment. The device 10 includes a data interface 12 designed for bidirectional communication. The data interface 12 can be an interface set up for external communication, but can also be an internal data interface, for example a data bus or the like. The bidirectional communication can be implemented by alternating or simultaneous sending and receiving of signals, but can also be done by using several individual interfaces that are used for sending or receiving data signals 14th and or 16 are set up. The data signals 14th and or 16 can be received or transmitted independently of one another in a wired or wireless manner, for example through wired or wireless network interfaces or cellular radio interfaces. At the data signal 14th it can be a query. The query 14th may include an instruction or information indicating that the device 10 is directed to a state of the device 10 to be determined and communicated. The data signal 16 can represent a response to the query 14th is transmitted out and which the means of the query 14th has requested information.
Die Vorrichtung 10 kann eine Steuerungseinheit 18 umfassen, die ausgebildet ist, um einen Zustand der Vorrichtung 10 basierend auf der Abfrage 14 (engl.: Challenge) zu bestimmen und um die Antwort 16 (engl.: Response) zu erstellen, die den Zustand angibt. Die Vorrichtung 10 kann ausgebildet sein, um die Antwort 16 mit der Datenschnittstelle 12 zu senden. Die Vorrichtung 10 kann eine oder mehrere interne Komponenten 22 aufweisen, die einen überwachbaren oder erfassbaren Zustand aufweisen. Mittels eines oder mehrerer geeigneter Abfragesignale 24 kann die Steuerungseinheit 18 ausgebildet sein, um den Zustand der zumindest einen internen Komponente 22 zu erfassen. Bei der internen Komponente 22 kann es sich beispielsweise um eine Temperatur eines Bausteins, etwa eines Prozessors, eines Speichers oder dergleichen handeln. Alternativ oder zusätzlich kann es sich bei dem abgefragten Zustand um einen Speicherinhalt oder eine Speicherauslastung eines flüchtigen oder nicht-flüchtigen Speichers handeln. Alternativ oder zusätzlich kann es sich bei dem ermittelten Zustand der internen Komponente 22 um eine Auslastung eines Prozessors oder eine Aktivität einer Datenübermittlung oder eine beliebige andere aktive oder passive funktionale Eigenschaft der Vorrichtung 10 handeln. Alternativ oder zusätzlich kann bspw. eine Frequenzmessung ausgeführt werden, etwa eines internen Taktes der Vorrichtung 10 überprüft werden. Die Abfrage kann auch eine Pseudomessung oder eine sonstige Aufforderung enthalten sein, die Antwort 16 zu erstellen, die eine andere oder auch keine Information im Sinne von Nutzdaten (Payload) aufweist, da bspw. bereits aus der Reaktionszeit der Vorrichtung 10 Informationen abgeleitet werden können, die verglichen werden können, d. h., wie schnell wird die Antwort erzeugt. So kann beispielsweise mittels der Antwort 16 mitgeteilt werden, welche konkreten Verarbeitungsschritte derzeit ausgeführt werden und wie sich diese in einem Datenspeicher der Vorrichtung 10 auswirken.The device 10 can be a control unit 18th which is configured to indicate a state of the device 10 based on the query 14th (English: Challenge) and the answer 16 (English: Response) that indicates the state. The device 10 can be trained to get the answer 16 with the data interface 12 to send. The device 10 can be one or more internal components 22nd which have a monitorable or detectable state. By means of one or more suitable query signals 24 can the control unit 18th be designed to monitor the state of the at least one internal component 22nd capture. With the internal component 22nd it can be, for example, a temperature of a module, for example a processor, a memory or the like. Alternatively or additionally, the queried status can be a memory content or a memory utilization of a volatile or non-volatile memory. Alternatively or in addition, it can be the determined state of the internal component 22nd a utilization of a processor or an activity of a data transmission or any other active or passive functional property of the device 10 act. Alternatively or additionally, for example, a frequency measurement can be carried out, for example an internal clock of the device 10 be checked. The query can also contain a pseudo measurement or some other request, the answer 16 to create that has a different or no information in the sense of useful data (payload), for example already from the response time of the device 10 Information can be derived that can be compared, ie how quickly the answer is generated. For example, by means of the answer 16 are communicated which specific processing steps are currently being carried out and how these are in a data memory of the device 10 impact.
Bei der Vorrichtung 10 kann es sich beispielsweise um eine datenverarbeitende Vorrichtung handeln, etwa eine Einrichtung mit zumindest einem Computer und/oder Datenspeicher, etwa ein Server oder eine Serverfarm oder dergleichen. Alternativ kann es sich um eine andere datenverarbeitende Einrichtung handeln, beispielsweise eine Kontrollstation zur Überwachung von Maschinen, eine zentrale Kommunikationseinrichtung oder dergleichen.At the device 10 For example, it can be a data processing device, for example a device with at least one computer and / or data memory, for example a server or a server farm or the like. Alternatively, it can be another data processing device, for example a control station for monitoring machines, a central communication device or the like.
Im Bereich der Datenverarbeitung, insbesondere der vernetzten Datenverarbeitung, besteht ein Bedarf dahin gehend, die Integrität von Systemen zu überwachen. Hierzu existieren Ansätze einer passiven Kontrolle, etwa durch TPM (Trusted Platform Module; vertrauenswürdiges Plattform-Modul) oder SE (Secure Element; sicheres Element). Aktive Lösungen interagieren mit einem Zielsystem, etwa in Hinblick auf einen Sensoreingang oder einen Aktuatorausgang. Dieser Bedarf kann durch die vorliegende Offenbarung adressiert werden.In the field of data processing, in particular networked data processing, there is a need to monitor the integrity of systems. There are approaches of passive control, for example through TPM (Trusted Platform Module; trustworthy platform module) or SE (Secure Element; secure element). Active solutions interact with a target system, for example with regard to a sensor input or an actuator output. This need can be addressed by the present disclosure.
2 zeigt ein schematisches Blockschaltbild eines Datennetzwerks 200 gemäß einem Ausführungsbeispiel. Das Datennetzwerk 200 umfasst eine Steuerungseinrichtung 20 und zwei oder mehrere Vorrichtungen 251 , 252 . Die Vorrichtungen 251 , 252 können beispielsweise jeweils als eine im Zusammenhang mit der 1 beschriebene Vorrichtung 10 gebildet sein. Alternativ ist es ebenfalls möglich, dass eine der Vorrichtungen 251 oder 252 , beispielsweise diejenige der Vorrichtungen 251 , 252 , welche als Referenzvorrichtung betrachtet wird, unter Verwendung eines entsprechend geeigneten Modells nachgebildet wird. Das bedeutet, die entsprechende Referenzvorrichtung 251 oder 252 kann einen anderen Aufbau und andere Komponenten aufweisen, kann jedoch in der Lage sein, den Betrieb der Vorrichtung 10 möglichst exakt nachzubilden. 2 shows a schematic block diagram of a data network 200 according to an embodiment. The data network 200 comprises a control device 20th and two or more devices 25 1 , 25 2 . The devices 25 1 , 25 2 can, for example, each as a related to the 1 described device 10 be educated. Alternatively, it is also possible that one of the devices 25 1 or 25 2 , for example that of the devices 25 1 , 25 2 , which is regarded as a reference device, is simulated using an appropriately suitable model. That means the appropriate Reference device 25 1 or 25 2 may be of different construction and components, but may be capable of operating the device 10 to reproduce as exactly as possible.
Dies kann ermöglichen, dass zumindest bezüglich des nachgebildeten Betriebs die Vorrichtungen 251 und 252 vergleichbar oder identisch sind. Eine der beiden Vorrichtungen 251 oder 252 kann als Referenzvorrichtung bezüglich der anderen Vorrichtung betrachtet werden. Als Referenzvorrichtung wird hierbei verstanden, dass für diese Vorrichtung ein sicherer, störungsfreier und frei von Schadprogrammen oder unberechtigten Zugriffen beeinflusster Betrieb erfolgt. Gemäß einem Beispiel kann dies beispielsweise dadurch erfolgen, dass die Referenzvorrichtung am Ort der Überwachung angeordnet ist und dort sichergestellt ist, dass kein unberechtigter Zugriff erfolgt, während die andere, zu überprüfende Vorrichtung möglicherweise entfernt angeordnet ist und dort keine lückenlose Überwachung möglich ist.This can make it possible, at least with regard to the simulated operation, that the devices 25 1 and 25 2 are comparable or identical. One of the two devices 25 1 or 25 2 can be viewed as a reference device with respect to the other device. In this context, the reference device is understood to mean that this device is operated in a safe, trouble-free manner that is free from malware or unauthorized access. According to one example, this can take place, for example, in that the reference device is arranged at the location of the monitoring and it is ensured there that no unauthorized access occurs, while the other device to be checked is possibly arranged remotely and seamless monitoring is not possible there.
Im Rahmen der nachfolgenden Erläuterungen wird die Vorrichtung 252 als Referenzvorrichtung betrachtet, gegenüber der die Vorrichtung 251 als Teilnehmervorrichtung überprüft wird. Die Ausführungen im Zusammenhang mit den hierin beschriebenen Ausführungsbeispielen lassen sich jedoch wechselseitig vertauschen, ohne die Ausführungsbeispiele zu beschränken.In the context of the following explanations, the device 25 2 considered as a reference device against which the device 25 1 is checked as a subscriber device. However, the statements in connection with the exemplary embodiments described herein can be interchanged without restricting the exemplary embodiments.
Das Datennetzwerk 200 kann eine Steuerungseinheit 20 umfassen, die eine drahtgebundene oder drahtlose Datenschnittstelle 26 aufweisen kann, welche konfiguriert ist, um eine Abfrage 141 an die Vorrichtung 251 und eine Abfrage 142 an die Vorrichtung 252 zu übermitteln. Die Abfragen 141 und 142 sind dabei bezogen auf den abgefragten Zustand der Vorrichtungen 251 und 252 inhaltsgleich. Die Datenschnittstelle 26 ist ferner ausgebildet, um auf die Abfragen 141 bzw. 142 erhaltene Antworten 161 bzw. 162 zu empfangen. Hierzu kann die Datenschnittstelle 26 eine oder mehrere Einzelschnittstellen umfassen, die jeweils in Übereinstimmung mit der Datenschnittstelle 12 der Vorrichtung 10 drahtgebunden und/oder drahtlos ausgeführt sein können. Das bedeutet, die Steuerungseinheit 20 kann ausgebildet sein, um die Abfrage 141 so zu übermitteln, dass diese eine Anweisung aufweist, einen Zustand der Vorrichtung 251 zu erfassen. Die Abfrage 142 kann von der Steuerungseinheit so übermittelt werden, dass diese eine Anweisung aufweist, den Zustand der Vorrichtung 252 zu erfassen.The data network 200 can be a control unit 20th include, which have a wired or wireless data interface 26th may have which is configured to query 14 1 to the device 25 1 and a query 14 2 to the device 25 2 to submit. The queries 14 1 and 14 2 are related to the queried state of the devices 25 1 and 25 2 identical in content. The data interface 26th is also designed to respond to the queries 14 1 or. 14 2 responses received 16 1 or. 16 2 to recieve. The data interface 26th comprise one or more individual interfaces, each in accordance with the data interface 12 the device 10 can be wired and / or wireless. That means the control unit 20th can be designed to query 14 1 in such a way that it has an instruction, a state of the device 25 1 capture. The query 14 2 can be transmitted by the control unit so that it has an instruction, the state of the device 25 2 capture.
Die Abfragen 141 und 142 können gleichzeitig oder sequenziell nacheinander versendet werden. Die Abfragen 141 und 142 können dabei beispielsweise einen derzeitigen, augenblicklichen Zustand abfragen oder einen in den Vorrichtungen 251 und 252 hinterlegten Zustand zu einem bestimmten Zeitpunkt/Zeitstempel, so dass auch sequenziell nacheinander versendete Abfragen 141 und 142 auf denselben Zeitpunkt bezogen sein können, was eine hohe Vergleichbarkeit der Antworten 161 und 162 ermöglichen kann.The queries 14 1 and 14 2 can be sent simultaneously or sequentially one after the other. The queries 14 1 and 14 2 can, for example, query a current, instantaneous status or one in the devices 25 1 and 25 2 stored status at a certain point in time / time stamp, so that queries can also be sent sequentially one after the other 14 1 and 14 2 can be related to the same point in time, which means that the answers are highly comparable 16 1 and 16 2 can enable.
Die Steuerungseinheit 20 kann eine Vergleichseinrichtung 28 umfassen, die ausgebildet ist, um die Antworten 161 und 162 miteinander zu vergleichen. Das bedeutet, die Vergleichseinrichtung 28 kann ausgebildet sein, um einen Vergleich auszuführen, ob der mittels der Antworten 161 und 162 mitgeteilte Zustand der Vorrichtungen 251 bzw. 252 miteinander übereinstimmt. So kann beispielsweise ermittelt werden, ob zu einem bestimmten Zeitpunkt ausgeführte Verarbeitungsschritte eines Prozessors und/oder Speicherinhalte eines Speichers einem erwarteten Zustand entsprechen. Der Vergleich kann sich auf einen in der Antwort enthaltenen bzw. berichteten Zustand der Vorrichtung beziehen, der bspw. in Nutzdaten der Antwort enthalten sein kann. Alternativ oder zusätzlich können auch andere, bspw. implizite Informationen genutzt werden, etwa, wie eine Reaktionszeit des Systems war, d. h., wie lange die Erstellung der Antwort benötigte und/oder zu wieviel Verzögerung die Antwort geführt hat.The control unit 20th can be a comparison device 28 include who is trained to provide the answers 16 1 and 16 2 to compare with each other. That means the comparison device 28 can be designed to carry out a comparison as to whether the means of the answers 16 1 and 16 2 communicated state of the devices 25 1 or. 25 2 coincides with each other. For example, it can be determined whether processing steps of a processor and / or memory contents of a memory carried out at a specific point in time correspond to an expected state. The comparison can relate to a state of the device contained or reported in the response, which, for example, can be contained in user data of the response. As an alternative or in addition, other, for example implicit information can also be used, for example how the reaction time of the system was, ie how long it took to create the answer and / or how much delay the answer caused.
Das bedeutet, die Vergleichseinrichtung kann ausgebildet sein, um bei einer Abweichung zwischen den Zuständen der Vorrichtungen 251 und 252 ein Signal, bspw. ein Datensignal, ein akustisches Signal oder ein optisches Signal 32 so auszugeben, dass eine Manipulation der anderen als der Referenzvorrichtung angezeigt wird. Alternativ oder zusätzlich kann die Vergleichseinrichtung ausgebildet sein, um bei einer Übereinstimmung zwischen den Zuständen der Vorrichtungen 251 und 252 das Signal 32 so auszugeben, dass eine Manipulationsfreiheit der überprüften Vorrichtung angezeigt wird. Dies kann so verstanden werden, dass innerhalb der Überprüfungsmechanismen keine Manipulation erkannt wurde, es kann sich insofern um eine erkannte, angenommene oder vermutete Manipulationsfreiheit handeln. Die Vergleichseinrichtung 28 kann ausgebildet sein, um mit einem Signal 32 implizit und/oder explizit eine Information bereitzustellen, die angibt, ob ein Zustand der Vorrichtung 251 mit einem Zustand der Vorrichtung 252 übereinstimmt. Die Information kann dabei implizit durch Abwesenheit des Signals 32 ausgegeben werden. So kann beispielsweise die Vergleichseinrichtung 28 ausgebildet sein, um bei einer Abweichung zwischen dem Zustand der Vorrichtung 251 und dem Zustand der Vorrichtung 252 das Signal 32 als Alarmsignal oder Hinweissignal auszugeben, das eine Manipulation der jeweiligen, nicht als Referenzvorrichtung betrachteten Vorrichtung anzeigt, beispielsweise also der Vorrichtung 251 . Eine Anwesenheit oder Erzeugung oder Übermittlung des Signals 32 kann insofern als Übereinstimmung der Zustände interpretiert werden oder dahin gehend, dass ein regulärer Betrieb der zu überwachenden Vorrichtung 252 vorliegt. Alternativ oder zusätzlich ist es ebenfalls möglich, lediglich ein positives oder übereinstimmendes Ergebnis bezüglich der Antworten 161 und 162 mit dem Signal 32 auszugeben. Alternativ ist es ebenfalls möglich, unterschiedliche Signale oder Informationen in dem Signal 32 auszugeben, beispielsweise indem sowohl positive als auch negative Ergebnisse bezüglich der Übereinstimmung mitgeteilt werden.This means that the comparison device can be designed to detect a discrepancy between the states of the devices 25 1 and 25 2 a signal, for example a data signal, an acoustic signal or an optical signal 32 output in such a way that a manipulation of the device other than the reference device is indicated. As an alternative or in addition, the comparison device can be designed to detect a match between the states of the devices 25 1 and 25 2 the signal 32 output in such a way that freedom from manipulation of the checked device is indicated. This can be understood to mean that no manipulation was recognized within the checking mechanisms; in this respect, it can be a question of a recognized, assumed or assumed freedom from manipulation. The comparison device 28 can be designed to work with a signal 32 to provide information implicitly and / or explicitly that indicates whether a state of the device 25 1 with a state of the device 25 2 matches. The information can be implicit in the absence of the signal 32 are issued. For example, the comparison device 28 be designed to respond to a discrepancy between the state of the device 25 1 and the state of the device 25 2 the signal 32 output as an alarm signal or notification signal that indicates a manipulation of the respective device that is not regarded as a reference device, for example the device 25 1 . A presence or generation or transmission of the signal 32 can be interpreted as a correspondence of the states or to the effect that that regular operation of the device to be monitored 25 2 present. Alternatively or additionally, it is also possible to only have a positive or matching result with regard to the answers 16 1 and 16 2 with the signal 32 to spend. Alternatively, it is also possible to have different signals or information in the signal 32 for example, by reporting both positive and negative results regarding the match.
Die Vergleichseinrichtung 28 kann eine fest oder variabel programmierte oder programmierbare Recheneinheit aufweisen, beispielsweise einen Prozessor (CPU, Central Processing Unit), einen Mikrocontroller, ein feldprogrammierbares Gatter-Array (Field-Programmable Gate Array - FPGA), eine graphische Prozessoreinheit (Graphics Processing Unit; GPU) oder dergleichen.The comparison device 28 can have a fixed or variable programmed or programmable computing unit, for example a processor (CPU, Central Processing Unit), a microcontroller, a field-programmable gate array (FPGA), a graphics processing unit (GPU) or similar.
Die Vergleichseinrichtung kann Teil einer sicheren Rechenumgebung oder einer Sicherheitskomponente sein, die bspw. spezielle Sicherungsmaßnahmen gegen Manipulationen aufweist, etwa als so genanntes sicheres Element (engl.: secure element - SE). Die Abfragen 141 und/oder 142 können von der Vergleichseinrichtung 28 selbst erstellt werden oder können von einer anderen Recheneinrichtung der Steuerungseinheit 20 erstellt werden. So kann die Steuerungseinheit 20 beispielsweise als Sicherheitskomponente gebildet sein, das bedeutet als Einrichtung des Datennetzwerks 200, deren sicherer und von Unberechtigten unmanipulierter Betrieb angenommen wird. Hierzu kann die Sicherheitskomponente spezielle Einrichtungen aufweisen, etwa sichere Datenschnittstellen oder speziell gesicherte oder gehärtete Recheneinrichtungen.The comparison device can be part of a secure computing environment or a security component that has, for example, special security measures against manipulation, for example as a so-called secure element (SE). The queries 14 1 and or 14 2 can from the comparison device 28 can be created by yourself or by another computing device in the control unit 20th to be created. So can the control unit 20th be formed, for example, as a security component, that is, as a facility of the data network 200 which are assumed to be safe and unmanipulated by unauthorized persons. For this purpose, the security component can have special devices, for example secure data interfaces or specially secured or hardened computing devices.
Durch die Abfrage sowohl an die Teilnehmervorrichtung 251 , also die zu überprüfende Vorrichtung, als auch die Referenzvorrichtung 252 ist es möglich, zu erkennen, dass die Vorrichtung 251 gegenüber der Vorrichtung 252 einen unterschiedlichen Betrieb aufweist, was anhand des Referenzzustands der Vorrichtung 252 als Manipulation der Vorrichtung 251 interpretiert werden kann. Diese Erkenntnis ist selbst dann möglich, wenn die Vorrichtung 251 ihren eigentlichen Betrieb weiter fortsetzt. So ist es beispielsweise vorstellbar, dass ein entfernt angeordneter Server dazu eingerichtet ist, um einen entsprechenden Datenverkehr zur Verfügung zu stellen. Ein Angreifer könnte sich in dem Server verbleibende Ressourcen jedoch nutzbar machen, um unautorisierte Vorgänge, etwa eine Verarbeitung, Weiterleitung, ein Kopieren von Daten oder andere Datenverarbeitungsvorgänge auszuführen. So könnten beispielsweise von einem regulären Betrieb ungenutzte Ressourcen, etwa eine Rechenleistung oder Speicherbereiche oder Datennetzwerkszugänge, unautorisiert durch den Angreifer genutzt werden. Durch das Aufspielen von entsprechender Schadsoftware oder durch die Änderung einer Befehlsfolge von Prozessoren oder anderen Steuerungseinheiten, beispielsweise durch Ausführen eines Befehls anstelle eines Ruhemodus (idle) wird jedoch ein Zustand der Vorrichtung 251 verändert. Durch Vergleichen des korrespondierenden Zustands der Vorrichtung 252 kann eine entsprechende Abweichung festgestellt werden.By querying both the subscriber device 25 1 , so the device to be checked, as well as the reference device 25 2 it is possible to see that the device 25 1 compared to the device 25 2 has a different operation, based on the reference state of the device 25 2 as manipulation of the device 25 1 can be interpreted. This knowledge is possible even if the device 25 1 continues its actual operation. For example, it is conceivable that a remotely arranged server is set up to provide corresponding data traffic. However, an attacker could make use of the resources remaining in the server in order to carry out unauthorized operations, such as processing, forwarding, copying of data or other data processing operations. For example, resources that are not used by regular operations, such as computing power or storage areas or data network accesses, could be used by the attacker without authorization. However, by installing appropriate malware or by changing a sequence of instructions from processors or other control units, for example by executing an instruction instead of an idle mode, the device becomes in a state 25 1 changed. By comparing the corresponding state of the device 25 2 a corresponding deviation can be determined.
Die Vorrichtung 251 kann diesbezüglich eine Steuerungseinrichtung aufweisen, die ausgebildet ist, um die Abfrage 141 von der Steuerungseinrichtung 20 zu erhalten und um die Antwort 161 auf die Abfrage 141 zu erstellen und um die Antwort 161 an die Steuerungseinrichtung 20 zu übermitteln. Ebenfalls kann die Referenzvorrichtung 252 eine Referenz-Steuerungseinrichtung aufweisen, die ausgebildet ist, um die Abfrage 142 von der Steuerungseinrichtung 20 zu erhalten und um die Antwort 162 auf die Abfrage 142 zu erstellen. Sind die Vorrichtungen 20 und die Referenzvorrichtung an unterschiedlichen Orten angeordnet, so kann eine Übermittlung der Antwort 162 erfolgen, etwa durch ein Datennetzwerk oder Computernetzwerk. Alternativ kann die Vorrichtung 252 auch am Ort der Steuerungseinheit 20 angeordnet sein oder die Steuerungseinheit 20 kann ein Teil der Vorrichtung 252 sein oder die Vorrichtung 252 kann mittels Software nachgebildet sein, so dass es einer Übermittlung der Antwort 162 an dieser Stelle nicht zwingend bedarf.The device 25 1 can in this regard have a control device which is designed to handle the query 14 1 from the control device 20th and get the answer 16 1 on the query 14 1 to create and order the answer 16 1 to the control device 20th to submit. The reference device can also 25 2 have a reference control device which is designed to handle the query 14 2 from the control device 20th and get the answer 16 2 on the query 14 2 to create. Are the fixtures 20th and the reference device is arranged at different locations, so the response can be transmitted 16 2 take place, for example through a data network or computer network. Alternatively, the device 25 2 also at the location of the control unit 20th be arranged or the control unit 20th can be part of the device 25 2 his or her device 25 2 can be simulated by means of software so that there is a transmission of the answer 16 2 not absolutely necessary at this point.
3 zeigt ein schematisches Flussdiagramm eines Verfahrens 300 gemäß einem Ausführungsbeispiel, das beispielsweise ganz oder teilweise von der Steuerungseinheit 20, bspw. der Vergleichseinrichtung 28 implementiert werden kann. In einem optionalen Schritt 310 wird der Zustand einer Vorrichtung, beispielsweise der Vorrichtung 251 oder der Vorrichtung 252 als Referenzzustand bewertet. 3 shows a schematic flow diagram of a method 300 according to an embodiment, for example wholly or partially from the control unit 20th , for example the comparison device 28 can be implemented. In an optional step 310 becomes the state of a device, for example the device 25 1 or the device 25 2 rated as a reference condition.
In einem Schritt 320 wird eine erste Antwort auf eine erste Zustandsinformation eines Zustands der Vorrichtung 251 und eine zweite Antwort, etwa die Antwort 162 , auf eine zweite Zustandsinformation des Zustands der zweiten Vorrichtung 252 ausgewertet. Dabei kann die in der Antwort 161 und 162 jeweils übermittelte Information des Zustands extrahiert und/oder ausgewertet werden.In one step 320 a first response to a first status information of a status of the device 25 1 and a second answer, roughly the answer 16 2 to a second state information of the state of the second device 25 2 evaluated. Do that in the answer 16 1 and 16 2 Any transmitted information of the state can be extracted and / or evaluated.
In einem Schritt 330 kann die Vergleichseinrichtung die erste Zustandsinformation und die zweite Zustandsinformation auf Übereinstimmung überprüfen. In einem Schritt 340 kann die Vergleichseinrichtung einen Fehler der Vorrichtung 251 oder 252 , im Speziellen derjenigen Vorrichtung, die nicht als Referenzzustand ausgewählt wurde, beziehungsweise einer regulären Teilnehmervorrichtung oder einer von der Referenzvorrichtung verschiedenen Vorrichtung bestimmt werden, und zwar basierend auf einer Abweichung zwischen den Zustandsinformationen.In one step 330 the comparison device can check the first status information and the second status information for correspondence. In one step 340 the comparison device can indicate an error in the device 25 1 or 25 2 , in particular that device that was not selected as the reference state, or a regular subscriber device or a device different from the reference device, based on a discrepancy between the state information.
4 zeigt ein schematisches Blockschaltbild eines Datennetzwerks 400 gemäß einem Ausführungsbeispiel, das vergleichbar zu dem Datennetzwerk 200 aufgebaut sein kann. Die Steuerungseinheit 20 kann ausgebildet sein, um einen Betrieb der Vorrichtung 251 und/oder der Vorrichtung 252 zu steuern. Hierzu kann die Steuerungseinheit ein entsprechendes Steuerungssignal 341 an die Vorrichtung 251 übermitteln und/oder ein Steuerungssignal 342 an die Vorrichtung 252 übermitteln. Der Betrieb kann sich dabei beispielsweise auf einen An-Zustand/Aus-Zustand der Vorrichtung beziehen, auf einen bestimmten Betriebsmodus und/oder auf spezielle, auszuführende Schritte in der jeweiligen Vorrichtung 251 oder 252 . So kann beispielsweise die jeweilige Vorrichtung 251 oder 252 so gesteuert werden, dass sie bestimmte Daten löscht, vor allem Zugriff sichert, einen Betrieb einstellt oder in einen sicheren Betriebsmodus wechselt. Insbesondere kann die Steuerungseinheit 20 ausgebildet sein, um bei einer festgestellten Abweichung zwischen dem Zustand der Vorrichtung 251 und dem Zustand der Vorrichtung 252 einen Zustand der Vorrichtung 251 so zu steuern, dass die Vorrichtung 251 in einen sicheren Zustand wechselt. Alternativ oder zusätzlich kann auch der Zustand der jeweils anderen Vorrichtung gesteuert werden. 4th shows a schematic block diagram of a data network 400 according to an embodiment which is comparable to the data network 200 can be constructed. The control unit 20th can be designed to operate the device 25 1 and / or the device 25 2 to control. For this purpose, the control unit can send a corresponding control signal 34 1 to the device 25 1 transmit and / or a control signal 34 2 to the device 25 2 to transfer. The operation can relate, for example, to an on / off state of the device, to a specific operating mode and / or to special steps to be performed in the respective device 25 1 or 25 2 . For example, the respective device 25 1 or 25 2 can be controlled in such a way that it deletes certain data, above all secures access, ceases operation or changes to a secure operating mode. In particular, the control unit 20th be designed to detect a discrepancy between the state of the device 25 1 and the state of the device 25 2 a state of the device 25 1 so control that the device 25 1 changes to a safe state. Alternatively or additionally, the state of the other device in each case can also be controlled.
Obwohl die Datennetzwerke 200 und 400 mit lediglich zwei Vorrichtungen 251 und 252 beschrieben sind, von denen eine als Referenzvorrichtung gilt, können Datennetzwerke gemäß hierin beschriebenen Ausführungsbeispielen auch weitere Vorrichtungen aufweisen, so dass eine Gruppe von Vorrichtungen bezüglich einer Referenzvorrichtung oder mehreren Referenzvorrichtungen verglichen wird. Es ist insofern beispielsweise möglich, auch Vorrichtungen zu steuern, etwa mittels Steuersignal 34, bezüglich derer keine Abweichung festgestellt wurde, aber ein Angriff auf eine oder mehrere Vorrichtungen vermuten lässt, dass auch andere Vorrichtungen zukünftig betroffen sein können.Although the data networks 200 and 400 with only two devices 25 1 and 25 2 are described, one of which is considered a reference device, data networks according to the exemplary embodiments described herein can also have further devices, so that a group of devices is compared with respect to a reference device or a plurality of reference devices. It is thus possible, for example, to also control devices, for example by means of a control signal 34 for which no discrepancy was found, but an attack on one or more devices suggests that other devices may also be affected in the future.
5 zeigt ein schematisches Blockschaltbild eines Datennetzwerks 500 gemäß einem Ausführungsbeispiel, bei dem die Steuerungseinheit 20 ausgebildet ist, um eine Mehrzahl oder Vielzahl von Vorrichtungen 251 bis 25N bezüglich der Referenzvorrichtung 252 zu überwachen. Hierzu kann die Steuerungseinheit 20 eine korrespondierende Anzahl von Abfragen an eine Gruppe 36 von Vorrichtungen übersenden und deren Antworten 161 bis 16N mit der Antwort der mit R gekennzeichneten Referenzvorrichtung 252 vergleichen. Das Signal 32 kann insofern auch Vorrichtungs-spezifisch sein, um anzugeben, bezüglich welcher der Vorrichtungen der Gruppe 36 eine Übereinstimmung und/oder Abweichung bezüglich der Antworten 161 bis 16N beziehungsweise des mitgeteilten Zustands vorliegt. 5 shows a schematic block diagram of a data network 500 according to an embodiment in which the control unit 20th is designed to provide a plurality or plurality of devices 25 1 to 25 N. with respect to the reference device 25 2 to monitor. The control unit 20th a corresponding number of queries to a group 36 Send from devices and their responses 16 1 to 16 N. with the response of the reference device marked with R. 25 2 to compare. The signal 32 can in this respect also be device-specific in order to indicate which of the devices in the group is related to 36 a match and / or discrepancy in the answers 16 1 to 16 N. or the notified status is available.
Die Steuerungseinheit 20 kann ausgebildet sein kann, um sowohl die Vorrichtung 252 als auch einzelne, mehrere oder alle der Vorrichtungen der Gruppe 36 zu steuern, etwa mittels Übermittlung von Steuersignalen.The control unit 20th can be configured to both the device 25 2 as well as some, several or all of the devices in the group 36 to be controlled, for example by transmitting control signals.
6 zeigt ein schematisches Blockschaltbild eines Datennetzwerks 600 gemäß einem Ausführungsbeispiel, bei dem eine Vorrichtung 60 einerseits ausgebildet ist, um einen internen Zustand festzustellen, und andererseits eine Ausgestaltung der Steuerungseinheit 20 aufweisen kann. Beispielsweise kann die Steuerungseinheit 20 Teil der Vorrichtung 10 oder 252 sein. Anders ausgedrückt kann die Steuerungseinheit 20 Teil der Referenzvorrichtung sein und ausgebildet sein, um die Vorrichtung 25 auf Manipulation zu überprüfen. Hierzu kann die Abfrage 14 an die Vorrichtung 25 übermittelt werden und die Antwort 161 von der Vorrichtung 25 empfangen werden. Diese kann mit der intern erhaltenen Antwort 162 verglichen werden, um das Signal 32 bereitzustellen und/oder eine Information bezüglich der Manipulation zu erhalten. 6 shows a schematic block diagram of a data network 600 according to an embodiment in which a device 60 on the one hand is designed to determine an internal state, and on the other hand, an embodiment of the control unit 20th may have. For example, the control unit 20th Part of the device 10 or 25 2 his. In other words, the control unit 20th Be part of the reference device and be designed to the device 25th check for manipulation. The query 14th to the device 25th be transmitted and the answer 16 1 from the device 25th be received. This can be done with the internally received answer 16 2 be compared to the signal 32 to provide and / or to receive information regarding the manipulation.
Das Datennetzwerk 600 kann in Übereinstimmung mit den Erläuterungen, die im Zusammenhang mit dem Datennetzwerk 500 beschrieben sind, mehrere oder eine Vielzahl von Vorrichtungen aufweisen. Das Datennetzwerk 600 kann dabei mehrere Vorrichtungen 60 aufweisen, das bedeutet, die Vorrichtung 50 kann alternativ zu einer Ausgestaltung in Übereinstimmung mit der Vorrichtung 10 auch als Vorrichtung 60 ausgestaltet sein. Das bedeutet, dass eine jeweilige Vorrichtung in dem Datennetzwerk 600 sich selbst als vertrauenswürdigen Referenzzustand identifiziert und andere Vorrichtungen bezüglich des eigenen Zustands überprüfen kann. Die Vorrichtung 60 kann ausgebildet sein, um das Signal 32 an eine entfernte Einrichtung, beispielsweise eine übergeordnete Überwachungseinrichtung, zu übermitteln. Das Datennetzwerk 600 kann insoweit die Vorteile eines sogenannten Herdenschutzes bieten, da die sich gegenseitig überwachenden Vorrichtungen zumindest diejenige Erkenntnis liefern, dass zwei sich wechselseitig überprüfende Vorrichtungen beide Abweichungen zueinander erkennen, wenn lediglich eine der beiden manipuliert ist oder wenn sie unterschiedliche manipuliert sind. Überprüfen sich beispielsweise drei Vorrichtungen 60 gegenseitig, so wird lediglich dann keine Manipulation erkannt, wenn alle Vorrichtungen identisch manipuliert sind.The data network 600 can be made in accordance with the explanations given in connection with the data network 500 are described, have several or a plurality of devices. The data network 600 can do several devices 60 have, that is, the device 50 can alternatively to a configuration in accordance with the device 10 also as a device 60 be designed. This means that a respective device in the data network 600 identifies itself as a trustworthy reference state and can check other devices for its own state. The device 60 can be designed to the signal 32 to a remote device, for example a higher-level monitoring device. The data network 600 can in this respect offer the advantages of so-called herd protection, since the mutually monitoring devices provide at least the knowledge that two mutually checking devices recognize both deviations from each other if only one of the two has been manipulated or if they have been manipulated differently. For example, three devices check each other 60 mutually, then no manipulation is recognized only if all devices are manipulated identically.
Ausführungsbeispiele beziehen sich darauf, eine Manipulation einer Vorrichtung zu erkennen, indem eine Abweichung des Zustands bezüglich eines Referenzzustands erkannt wird. Eine hohe Sicherheit kann erhalten werden, indem eine Verschlüsselung der Abfrage 14 erfolgt. Die Verschlüsselung kann in einem physikalischen Layer und/oder einem Anwendungslayer (Application Layer) eines Kommunikationsmodells erfolgen, etwa eines OSIIISO-Schichtmodells. Die Verschlüsselung kann bspw. so eingerichtet sein, dass die Steuerungseinrichtung ausgebildet ist, um die Abfrage 14 vor einer Übermittlung an einen physikalischen Layer einer Datenverbindung zu verschlüsseln, etwa innerhalb einer Anwendung die in einer sicheren Umgebung ausgeführt wird, so dass ein Zugriff unsicherer Teile der Vorrichtung auf den Inhalt der Abfrage erschwert oder verhindert ist. Das bedeutet, die Verschlüsselung bezieht sich nicht auf eine Kanalcodierung, sondern darauf, bereits verschlüsselte Informationen an den physikalischen Layer zu übermitteln. Die Vorgehensweise des Übermittelns einer speziellen Abfrage mit einer Anweisung, welche Zustandsinformation in der Antwort 161 enthalten sein soll, kann auch mit dem englischen Fachbegriff Challenge/Response-Verfahren beschrieben werden. Eine Abfrage kann beispielsweise sein, zu welchen Zeitpunkten auf bestimmte Speicherbereiche zugegriffen wird. Das Verschlüsseln der Challenge (Aufforderung) kann es vereinfachen, dieselbe Challenge an unterschiedliche Systeme zu schicken, beispielsweise mehrere Vorrichtungen innerhalb der Gruppe 36, da durch die Entschlüsselung in der sicheren Umgebung der Vorrichtung der manipulierte Teil einer manipulierte oder korrumpierten Vorrichtung die Abfrage nicht entschlüsseln kann und andere Vorrichtungen schwerlich vorwarnen kann. Ebenso kann die Antwort 16 verschlüsselt übermittelt werden.Embodiments relate to the detection of a manipulation of a device in that a deviation of the state with respect to a reference state is detected. A high level of security can be obtained by encrypting the query 14th he follows. The encryption can be in a physical layer and / or an application layer Communication model take place, for example an OSIIISO layer model. The encryption can be set up, for example, in such a way that the control device is designed to handle the query 14th to encrypt before transmission to a physical layer of a data connection, for example within an application that is executed in a secure environment, so that access by insecure parts of the device to the content of the query is made difficult or prevented. This means that the encryption does not refer to a channel coding, but to the transmission of already encrypted information to the physical layer. The procedure of submitting a special query with an instruction of what state information is in the response 16 1 should be included, can also be described with the English technical term Challenge / Response procedure. A query can be, for example, at what points in time certain memory areas are accessed. Encrypting the challenge can make it easier to send the same challenge to different systems, for example multiple devices within the group 36 , because by decryption in the secure environment of the device, the manipulated part of a manipulated or corrupted device cannot decrypt the query and can hardly warn other devices. So can the answer 16 be transmitted in encrypted form.
Ausführungsbeispiele sehen vor, dass die Vorrichtung 10 und/oder 25 und/oder 60 eine Sicherheitskomponente aufweist, welche die Abfrage 14 empfängt und auswertet. Die Sicherheitskomponente kann ausgebildet sein, um den Zustand des Systems zu bestimmen und um die Antwort zu erstellen. Das bedeutet beispielsweise, dass die Vorrichtung 10 eine Sicherheitskomponente aufweisen kann, die für eine verschlüsselte Kommunikation mit der Steuerungseinheit 20 eingerichtet ist und ausgebildet ist, um den Systemzustand zu bestimmen. Wird ein manipuliertes System hierdurch kontrolliert, so wird die Verschlüsselung zwar davor schützen, die konkrete Bedeutung der Abfrage 14 offenzulegen, die Abfrage, die durch die Sicherheitskomponente an das System zur Bestimmung des Zustands der Komponente 22 geschickt wird, könnte jedoch durch einen Angreifer erkannt werden, da dieser Teil der Kommunikation manipuliert wurde.Embodiments provide that the device 10 and or 25th and or 60 has a security component which the query 14th receives and evaluates. The security component can be designed to determine the state of the system and to generate the response. This means, for example, that the device 10 may have a security component for encrypted communication with the control unit 20th is set up and designed to determine the system status. If a manipulated system is controlled in this way, the encryption will protect against the specific meaning of the query 14th to disclose the query made by the security component to the system to determine the condition of the component 22nd is sent, but could be detected by an attacker because this part of the communication has been manipulated.
7a zeigt ein schematisches Diagramm zur Darstellung der Übermittlung von Abfragen 14 an Vorrichtungen. Die Steuerungseinheit kann ausgebildet sein, um wiederholt Abfragen an die Vorrichtungen zu senden, etwa zeitlich in einem Muster verteilt oder zufällig. Jede der Abfragen 14 wird hierbei als inhaltsgleiche Abfrage an mehrere Vorrichtungen verstanden, deren Antworten miteinander zu vergleichen sind. Die Abfragen 14 können beispielsweise mit konstanten Zeitintervallen Δt über die Zeit ausgesendet werden und sich beispielsweise auf denselben Zustand beziehen. Beispielsweise könnte ein Abbild des Speichers abgefragt werden. 7a shows a schematic diagram to illustrate the transmission of queries 14th on devices. The control unit can be designed to repeatedly send queries to the devices, for example distributed over time in a pattern or randomly. Each of the queries 14th is understood here as a query of the same content to several devices, the answers of which are to be compared with one another. The queries 14th can, for example, be transmitted over time at constant time intervals Δt and relate, for example, to the same state. For example, an image of the memory could be queried.
7b zeigt ein schematisches Diagramm einer zeitlichen Verteilung von Abfragen 14 an einer Zeitachse t. Die Abfragen 14 können mit unterschiedlichen Zeitabständen Δti mit i = 1, ..., 4 über die Zeit verteilt sein, wobei die Anzahl unterschiedlicher Zeitintervalle zumindest 1, zumindest 2, zumindest 3, zumindest 4, zumindest 5 oder mehr betragen kann und ähnlich wie das Zeitintervall Δ in 7a beispielsweise in einem Bereich von zumindest 10 ns und höchstens einer Woche, zumindest 100 ns und höchstens einen Tag oder zumindest 1 ms und höchstens einer Stunde oder einem beliebigen anderen Wert aufweisen können. 7b shows a schematic diagram of a temporal distribution of queries 14th on a time axis t. The queries 14th can be distributed over time at different time intervals Δt i with i = 1, ..., 4, the number of different time intervals being at least 1, at least 2, at least 3, at least 4, at least 5 or more and similar to the time interval Δ in 7a for example, in a range of at least 10 ns and at most one week, at least 100 ns and at most one day, or at least 1 ms and at most one hour or any other desired value.
7c zeigt eine schematische Darstellung von inhaltlich verschiedenen Abfragen 14a bis 14c, die bezogen auf einen Abfrageinhalt in beliebiger Reihenfolge, beispielsweise zufällig oder gemäß einem Muster übermittelt werden können. Alternativ oder zusätzlich können die Abfragen mit konstantem oder veränderlichen, möglicherweise gemäß einem Muster oder zufällig, veränderlichen Zeitabstand Δt übermittelt werden. Mit den inhaltlich unterschiedlichen Abfragen 14a bis 14c können beispielsweise unterschiedliche Zustände des Zielsystems abgefragt werden, beispielsweise unterschiedliche Speicherbereiche des Speichers, unterschiedliche Komponenten und/oder andere Zustände. 7c shows a schematic representation of queries with different content 14a to 14c that can be transmitted in any order, for example randomly or according to a pattern, based on a query content. Alternatively or additionally, the queries can be transmitted with a constant or variable, possibly according to a pattern or randomly variable, time interval Δt. With the different queries in terms of content 14a to 14c For example, different states of the target system can be queried, for example different memory areas of the memory, different components and / or other states.
7d zeigt eine schematische Darstellung einer möglichen Ausgestaltung der Steuerungseinrichtung 20 dahin gehend, dass diese durch Vergleichen der Antworten auf die Abfrage 14a feststellt, dass eine oder mehrere Vorrichtungen möglicherweise korrumpiert wurden oder manipuliert sind. Die Steuerungseinheit kann ausgebildet sein, um bei einer festgestellten Abweichung zwischen den Zuständen der Vorrichtungen eine Wiederholung der entsprechenden Abfrage zu vermeiden beziehungsweise die Abfrage von einer Wiederholung auszunehmen. So kann beispielsweise die für einen Zeitpunkt ts vorgesehene Wiederholdung der Abfrage 14a vermieden oder ausgesetzt werden. Beispielsweise kann keine Abfrage gesendet werden oder eine hiervon verschiedene Abfrage, wie es beispielsweise in 7e gezeigt ist, wo für den zukünftigen Zeitpunkt t5 anstelle der Abfrage 14a eine andere Abfrage 14d, die inhaltlich verschieden zu den Abfragen 14a, 14b und 14d ist, übermittelt wird. Alternativ kann auch eine Einschränkung des Nachrichtenraums auf die Abfrage 14b und 14c erfolgen. 7d shows a schematic representation of a possible configuration of the control device 20th to the extent that this is done by comparing the responses to the query 14a determines that one or more devices may have been corrupted or tampered with. The control unit can be designed to avoid a repetition of the corresponding query or to exclude the query from a repetition if a discrepancy is determined between the states of the devices. For example, the repetition of the query provided for a point in time ts 14a avoided or suspended. For example, no query can be sent, or a query different therefrom, as is for example in 7e is shown where for the future time t 5 instead of the query 14a another query 14d that differ in content from the queries 14a , 14b and 14d is being transmitted. Alternatively, the message room can also be restricted to the query 14b and 14c respectively.
Hierdurch kann vermieden werden, dass ein potenzieller Angreifer eine Information enthält, dass die von der durch ihn manipulierten Vorrichtung übermittelte Antwort auf die Abfrage fehlerhaft war. Selbst in Unkenntnis des tatsächlich fehlerfreien Zustands kann allein die Information, dass der übermittelte Zustand fehlerhaft war, eine Information sein, die in wiederholter Ausführung zusätzliche Informationen bereitstellen könnte, was gemäß dem im Zusammenhang mit den 7c bis 7e beschriebenen Vorgehen vermieden werden kann.This can prevent a potential attacker from receiving information that the device manipulated by him The transmitted response to the query was incorrect. Even if the actual error-free state is not known, only the information that the transmitted state was incorrect can be information that, in repeated execution, could provide additional information, which according to the in connection with the 7c to 7e described procedure can be avoided.
7f zeigt ein schematisches Diagramm über die Zeitachse der 7a bis 7e, um eine weitere mögliche Ausgestaltung der Steuerungseinrichtung darzustellen. Die Steuerungseinrichtung kann ausgebildet sein, um die Abfragen 14 inhaltsgleich (siehe 7a) oder mit unterschiedlichem Inhalt (siehe beispielsweise 7c) zu senden. Die Steuerungseinheit kann ausgebildet sein, um zumindest eine Dummy-Abfrage 14x in die Mehrzahl von wiederholten Abfragen 14 zu integrieren, beispielsweise intermittierend. Die Steuerungseinrichtung kann ausgebildet sein, um eine der Dummy-Abfrage zugeordnete Antwort nicht auf eine Übereinstimmung auszuwerten. Dies kann es ermöglichen, dass die Vorrichtungen keine Kenntnis davon haben, ob die Abfrage eine Dummy-Abfrage, das bedeutet eine Abfrage ohne substanziellen Hintergrund, eine Blindabfrage, sind oder nicht. Für unmanipulierte Vorrichtungen kann dies bedeutungslos sein, während es mögliche Auswertungsalgorithmen, die von einem Angreifer auf einem kompromittierten System laufen, um eine Systematik der Abfragen und/oder einen Inhalt der Abfragen und/oder Soll-Zustände, die übermittelt werden sollten, zu erraten oder festzustellen, vorteilhaft beeinflussen können. Die kann als Prinzip der Nebelkerze verstanden werden. 7f FIG. 11 shows a schematic diagram over the time axis of FIG 7a to 7e in order to show a further possible embodiment of the control device. The control device can be designed to handle the queries 14th identical in content (see 7a) or with different content (see for example 7c ) to send. The control unit can be designed to carry out at least one dummy query 14x in the majority of repeated queries 14th to be integrated, for example intermittently. The control device can be designed not to evaluate a response assigned to the dummy query for a match. This can enable the devices to have no knowledge of whether the query is a dummy query, that is to say a query without a substantial background, a blind query, or not. For unmanipulated devices, this can be meaningless, while there are possible evaluation algorithms that are run by an attacker on a compromised system in order to guess a systematics of the queries and / or a content of the queries and / or target states that should be transmitted determine beneficial influence. This can be understood as the principle of the smoke candle.
8 zeigt ein schematisches Blockschaltbild eines Datennetzwerks 800 gemäß einem Ausführungsbeispiel. Das Datennetzwerk 800 weist eine Sammeleinrichtung 38 auf, beispielsweise einen zentralen Netzwerkknoten, eine Basisstation, einen Server oder dergleichen. Ferner weist das Datennetzwerk 800 eine Mehrzahl von Vorrichtungen 60 auf, die jeweils als Vorrichtung 60 gebildet sein können. Das bedeutet, sie weisen eine Steuerungseinheit auf, die eingerichtet ist, um eine Abfrage eines vorrichtungsinternen Zustands, beispielsweise der internen Komponente 221 , 222 beziehungsweise 223 auszuführen, um eine entsprechende Zustandsinformation zu erhalten. Darüber hinaus kann die Steuerungseinheit der jeweiligen Vorrichtung 601 , 602 und 603 ausgebildet sein, um eine inhaltsgleiche Abfrage 14ij an eine oder mehrere andere Vorrichtungen des Datennetzwerks 800 zu übermitteln, entweder direkt ohne zwischengeschaltete Kommunikationsknoten oder indirekt, das heißt unter Vermittlung eines zwischengeschalteten Kommunikationsknotens. Die Parameter i und j können sich dabei auf die aussendende und die empfangende Vorrichtung beziehen, so dass beispielsweise die Abfrage 1413 von der Vorrichtung 601 ausgesendet wird und an die Vorrichtung 603 gerichtet ist. 8th shows a schematic block diagram of a data network 800 according to an embodiment. The data network 800 has a collecting device 38 on, for example, a central network node, a base station, a server or the like. Furthermore, the data network 800 a plurality of devices 60 on, each as a device 60 can be formed. This means that they have a control unit which is set up to query a device-internal state, for example the internal component 22 1 , 22 2 respectively 22 3 to be carried out in order to obtain corresponding status information. In addition, the control unit of the respective device 60 1 , 60 2 and 60 3 be designed to query with the same content 14 iy to one or more other devices on the data network 800 to be transmitted, either directly without an intermediary communication node or indirectly, that is, with the mediation of an intermediary communication node. The parameters i and j can relate to the sending and receiving device so that, for example, the query 14 13 from the device 60 1 is sent out and to the device 60 3 is directed.
Jede Vorrichtung 601 bis 603 kann eine, zwei, mehrere oder alle der Vorrichtungen als Empfänger einer Abfrage 14 vorsehen. Die Vorrichtungen 601 , 602 und 603 können ausgebildet sein, um eine entsprechende Antwort auf die Abfrage zu erhalten und diese auf eine Information hin auszuwerten, mit der ein Zustand der aussendenden Vorrichtung mitgeteilt wird. Das bedeutet, mit der erhaltenen Antwort wird ein von der anderen Vorrichtung ermittelter Zustand beziehungsweise eine hierauf gerichtete Information erhalten. Die Steuerungseinheit ist ausgebildet, um den eigenen Zustand mit dem in der Antwort angezeigten Zustand zu vergleichen, um eine Vergleichsinformation bereitzustellen, die angibt, ob die Zustände der eigenen Vorrichtung und der anderen Vorrichtung übereinstimmen.Any device 60 1 to 60 3 can be one, two, more, or all of the devices as recipients of a query 14th provide. The devices 60 1 , 60 2 and 60 3 can be designed to receive a corresponding response to the query and to evaluate this for information that is used to communicate a state of the transmitting device. This means that with the response received, a state determined by the other device or information directed to it is received. The control unit is designed to compare its own state with the state indicated in the response in order to provide comparison information which indicates whether the states of the own device and the other device match.
Jede der Vorrichtungen 601 bis 603 kann ausgebildet sein, um beispielsweise das Signal 321 , 322 beziehungsweise 323 an die Sammeleinrichtung 38 zu übermitteln. Jedes dieser Signale kann eine Information darüber aufweisen, welche Vorrichtungen miteinander verglichen wurden, beispielsweise durch welche Vorrichtung dieser Vergleich ausgeführt wurde und zu welchem Ergebnis die Vorrichtung gekommen ist, das heißt, ob eine Übereinstimmung der Zustände festgestellt wurde und/oder inwieweit Abweichungen festgestellt wurden. Die Sammeleinrichtung 38 kann durch Auswerten mehrerer oder aller Signale 32 eine Analyse des gesamten Netzwerks durchführen, beispielsweise, um eine Art Herdenschutz für die Vorrichtungen 60 bereitzustellen. Möglicherweise kann es ausreichend sein, bereits Manipulationen oder Abweichungen festzustellen, selbst wenn unklar ist, welche Vorrichtung genau betroffen ist oder welche Manipulation genau vorliegt. So können beispielsweise Sicherungsmechanismen für alle oder einige Vorrichtungen ausgeführt werden, selbst wenn noch keine genaue Analyse vorliegt. Dies ermöglicht es beispielsweise, Vorrichtungen zu schützen, von denen übereinstimmend festgestellt wurde, dass keine Manipulation vorliegt.Any of the devices 60 1 to 60 3 can be designed to, for example, the signal 32 1 , 32 2 respectively 32 3 to the collection facility 38 to submit. Each of these signals can have information about which devices were compared with one another, for example by which device this comparison was carried out and what the result of the device was, that is, whether a correspondence of the states was found and / or the extent to which deviations were found. The collection facility 38 can be done by evaluating several or all signals 32 conduct an analysis of the entire network, for example to provide some kind of herd protection for the devices 60 to provide. It may be sufficient to determine manipulations or deviations already, even if it is unclear which device is exactly affected or which manipulation is present. For example, security mechanisms can be implemented for all or some devices, even if no detailed analysis is available. This makes it possible, for example, to protect devices from which it was determined consistently that no manipulation has occurred.
9 zeigt ein schematisches Flussdiagramm eines Verfahrens 900 gemäß einem Ausführungsbeispiel. Ein Schritt 910 umfasst ein Übermitteln einer ersten Abfrage an eine erste Vorrichtung. Ein Schritt 920 einer zweiten, inhaltsgleichen Abfrage an eine zweite Vorrichtung. Ein Schritt 930 umfasst ein Erhalten einer ersten Antwort auf die erste Abfrage hin und ein Erhalten einer zweiten Antwort auf die zweite Abfrage hin. Ein Schritt 940 umfasst ein Vergleichen der ersten Antwort mit der zweiten Antwort, insbesondere ein Vergleichen der Zustände der beiden Vorrichtungen. Ein Schritt 950 umfasst ein Bereitstellen einer Information, die angibt, ob ein Zustand der ersten Vorrichtung mit einem Zustand der zweiten Vorrichtung übereinstimmt. 9 shows a schematic flow diagram of a method 900 according to an embodiment. A step 910 comprises transmitting a first query to a first device. A step 920 a second query with the same content to a second device. A step 930 comprises receiving a first response to the first query and receiving a second response to the second query. A step 940 comprises comparing the first response with the second response, in particular comparing the states of the two devices. A step 950 comprises providing information indicating whether a State of the first device corresponds to a state of the second device.
Ausführungsbeispiele bieten hohen Schutz von Vorrichtungen und Netzwerken und adressieren auch Angriffe wie einen sogenannten Man-in-the-Middle-Angriff (MitM, Mann in der Mitte) oder einen sogenannten Blue-Pill-Angriff (Blue Pill = blaue Pille), bei dem ein manipuliertes System versucht, die Manipulationen zu verschleiern. Dies wird dadurch erreicht, dass Abfragen und Antworten mit einem als unmanipuliert geltenden System beziehungsweise dessen Zustandsinformation verglichen wird. Optional können die Abfragen so geregelt sein, dass es einem manipulierten oder veränderten System unmöglich ist, diese wahrheitsgemäß zu erfüllen, etwa da Speicherbereiche verändert wurden.Embodiments offer high protection of devices and networks and also address attacks such as a so-called man-in-the-middle attack (MitM, man in the middle) or a so-called blue pill attack (blue pill), in which a manipulated system tries to cover up the manipulations. This is achieved in that queries and responses are compared with a system that is deemed to be unmanipulated or its status information. Optionally, the queries can be regulated in such a way that it is impossible for a manipulated or changed system to fulfill them truthfully, for example because memory areas have been changed.
Ausführungsbeispiele beziehen sich auf eine Sicherheitskomponente, die während des Betriebs oder der Ausführungsbeispiel von Programmen ein Systemverhalten messen und erfassen kann. Die Sicherheitskomponente ist mit einem Host-System, das entfernt (remotely) angeordnet sein kann, verbunden und kann Kommandos oder Anweisungen senden, empfangen und/oder ausführen. Das erwähnte Host-System kann als Referenzsystem agieren. Das Referenzsystem kann zufällige Messanweisungen (Challenges) generieren und an das zu untersuchende System (System Under Test - SUT) übermitteln, beispielsweise eine Speicheradresse x zu einem Zeitpunkt y zu messen. Diese Sicherheitskomponente kann das Ergebnis ebenfalls übertragen, wobei dies signiert und verschlüsselt erfolgen kann. Die Übertragung kann an das Referenzsystem erfolgen, wobei an dieser Stelle auf eine Information, insbesondere Klartextinformationen, dahin gehend, ob das Ergebnis okay oder nicht okay (NOK) ist, verzichtet werden kann, da eine solche Information erst in der vergleichenden Stelle erhalten werden kann, so dass die Soll-Information im manipulierten System ob der Manipulation nicht mehr vorliegt. Ein Vergleich des Referenzsystems kann Aufschluss darüber geben, ob das entfernte System, das Remote-System, verändert oder manipuliert wurde. Optionale kann die Sicherheitskomponente eine Alarmnachricht ausgeben, ein Herunterfahren erzwingen oder eine Löschung von Informationen, beispielsweise Schlüsseln, veranlassen, nachdem die Veränderung oder Manipulation im Referenzsystem identifiziert wurde.Exemplary embodiments relate to a safety component that can measure and record system behavior during operation or the exemplary embodiment of programs. The security component is connected to a host system, which can be remotely arranged, and can send, receive and / or execute commands or instructions. The host system mentioned can act as a reference system. The reference system can generate random measurement instructions (challenges) and transmit them to the system under test (SUT) to be examined, for example to measure a memory address x at a point in time y. This security component can also transmit the result, which can be signed and encrypted. The transfer can take place to the reference system, information, in particular plain text information, regarding whether the result is okay or not okay (NOK) can be dispensed with at this point, since such information can only be obtained in the comparing point so that the target information is no longer present in the manipulated system. A comparison of the reference system can provide information about whether the remote system, the remote system, has been changed or manipulated. Optionally, the security component can output an alarm message, force a shutdown or delete information, for example keys, after the change or manipulation has been identified in the reference system.
Obwohl manche Aspekte im Zusammenhang mit einer Vorrichtung beschrieben wurden, versteht es sich, dass diese Aspekte auch eine Beschreibung des entsprechenden Verfahrens darstellen, sodass ein Block oder ein Bauelement einer Vorrichtung auch als ein entsprechender Verfahrensschritt oder als ein Merkmal eines Verfahrensschrittes zu verstehen ist. Analog dazu stellen Aspekte, die im Zusammenhang mit einem oder als ein Verfahrensschritt beschrieben wurden, auch eine Beschreibung eines entsprechenden Blocks oder Details oder Merkmals einer entsprechenden Vorrichtung dar.Although some aspects have been described in connection with a device, it goes without saying that these aspects also represent a description of the corresponding method, so that a block or a component of a device is also to be understood as a corresponding method step or as a feature of a method step. Analogously, aspects that have been described in connection with or as a method step also represent a description of a corresponding block or details or features of a corresponding device.
Je nach bestimmten Implementierungsanforderungen können Ausführungsbeispiele der Offenbarung in Hardware oder in Software implementiert sein. Die Implementierung kann unter Verwendung eines digitalen Speichermediums, beispielsweise einer Floppy-Disk, einer DVD, einer Blu-ray Disc, einer CD, eines ROM, eines PROM, eines EPROM, eines EEPROM oder eines FLASH-Speichers, einer Festplatte oder eines anderen magnetischen oder optischen Speichers durchgeführt werden, auf dem elektronisch lesbare Steuersignale gespeichert sind, die mit einem programmierbaren Computersystem derart zusammenwirken können oder zusammenwirken, dass das jeweilige Verfahren durchgeführt wird. Deshalb kann das digitale Speichermedium computerlesbar sein. Manche Ausführungsbeispiele gemäß der Offenbarung umfassen also einen Datenträger, der elektronisch lesbare Steuersignale aufweist, die in der Lage sind, mit einem programmierbaren Computersystem derart zusammenzuwirken, dass eines der hierin beschriebenen Verfahren durchgeführt wird.Depending on specific implementation requirements, embodiments of the disclosure can be implemented in hardware or in software. The implementation can be carried out using a digital storage medium such as a floppy disk, a DVD, a Blu-ray disc, a CD, a ROM, a PROM, an EPROM, an EEPROM or a FLASH memory, a hard disk or other magnetic memory or optical memory, on which electronically readable control signals are stored, which can interact with a programmable computer system or cooperate in such a way that the respective method is carried out. Therefore, the digital storage medium can be computer readable. Some exemplary embodiments according to the disclosure thus include a data carrier which has electronically readable control signals which are able to interact with a programmable computer system in such a way that one of the methods described herein is carried out.
Allgemein können Ausführungsbeispiele der vorliegenden Offenbarung als Computerprogrammprodukt mit einem Programmcode implementiert sein, wobei der Programmcode dahin gehend wirksam ist, eines der Verfahren durchzuführen, wenn das Computerprogrammprodukt auf einem Computer abläuft. Der Programmcode kann beispielsweise auch auf einem maschinenlesbaren Träger gespeichert sein.In general, exemplary embodiments of the present disclosure can be implemented as a computer program product with a program code, the program code being effective to carry out one of the methods when the computer program product runs on a computer. The program code can for example also be stored on a machine-readable carrier.
Andere Ausführungsbeispiele umfassen das Computerprogramm zum Durchführen eines der hierin beschriebenen Verfahren, wobei das Computerprogramm auf einem maschinenlesbaren Träger gespeichert ist.Other exemplary embodiments include the computer program for performing one of the methods described herein, the computer program being stored on a machine-readable carrier.
Mit anderen Worten ist ein Ausführungsbeispiel beschriebener Verfahren somit ein Computerprogramm, das einen Programmcode zum Durchführen eines der hierin beschriebenen Verfahren aufweist, wenn das Computerprogramm auf einem Computer abläuft. Ein weiteres Ausführungsbeispiel der beschriebenen Verfahren ist somit ein Datenträger (oder ein digitales Speichermedium oder ein computerlesbares Medium), auf dem das Computerprogramm zum Durchführen eines der hierin beschriebenen Verfahren aufgezeichnet ist.In other words, an exemplary embodiment of the method described is thus a computer program which has a program code for performing one of the methods described herein when the computer program runs on a computer. A further exemplary embodiment of the method described is thus a data carrier (or a digital storage medium or a computer-readable medium) on which the computer program for performing one of the methods described herein is recorded.
Ein weiteres Ausführungsbeispiel beschriebener Verfahren ist somit ein Datenstrom oder eine Sequenz von Signalen, der bzw. die das Computerprogramm zum Durchführen eines der hierin beschriebenen Verfahren darstellt bzw. darstellen. Der Datenstrom oder die Sequenz von Signalen kann bzw. können beispielsweise dahin gehend konfiguriert sein, über eine Datenkommunikationsverbindung, beispielsweise über das Internet, transferiert zu werden.A further exemplary embodiment of the described method is thus a data stream or a sequence of signals which represents or represents the computer program for performing one of the methods described herein. The data stream or the sequence of signals can, for example, be configured to be transferred via a data communication connection, for example via the Internet.
Ein weiteres Ausführungsbeispiel umfasst eine Verarbeitungseinrichtung, beispielsweise einen Computer oder ein programmierbares Logikbauelement, die dahin gehend konfiguriert oder angepasst ist, eines der hierin beschriebenen Verfahren durchzuführen.Another exemplary embodiment comprises a processing device, for example a computer or a programmable logic component, which is configured or adapted to carry out one of the methods described herein.
Ein weiteres Ausführungsbeispiel umfasst einen Computer, auf dem das Computerprogramm zum Durchführen eines der hierin beschriebenen Verfahren installiert ist.Another exemplary embodiment comprises a computer on which the computer program for performing one of the methods described herein is installed.
Bei manchen Ausführungsbeispielen kann ein programmierbares Logikbauelement (beispielsweise ein feldprogrammierbares Gatterarray, ein FPGA) dazu verwendet werden, manche oder alle Funktionalitäten der hierin beschriebenen Verfahren durchzuführen. Bei manchen Ausführungsbeispielen kann ein feldprogrammierbares Gatterarray mit einem Mikroprozessor zusammenwirken, um eines der hierin beschriebenen Verfahren durchzuführen. Allgemein werden die Verfahren bei einigen Ausführungsbeispielen seitens einer beliebigen Hardwarevorrichtung durchgeführt. Diese kann eine universell einsetzbare Hardware wie ein Computerprozessor (CPU) sein oder für das Verfahren spezifische Hardware, wie beispielsweise ein ASIC.In some exemplary embodiments, a programmable logic component (for example a field-programmable gate array, an FPGA) can be used to carry out some or all of the functionalities of the methods described herein. In some exemplary embodiments, a field-programmable gate array can interact with a microprocessor in order to carry out one of the methods described herein. In general, in some exemplary embodiments, the methods are performed by any hardware device. This can be universally applicable hardware such as a computer processor (CPU) or hardware specific to the method such as an ASIC.
Die oben beschriebenen Ausführungsbeispiele stellen lediglich eine Veranschaulichung der Prinzipien der vorliegenden Offenbarung dar. Es versteht sich, dass Modifikationen und Variationen der hierin beschriebenen Anordnungen und Einzelheiten anderen Fachleuten einleuchten werden. Deshalb ist beabsichtigt, dass die Offenbarung lediglich durch den Schutzumfang der nachstehenden Patentansprüche und nicht durch die spezifischen Einzelheiten, die anhand der Beschreibung und der Erläuterung der Ausführungsbeispiele hierin präsentiert wurden, beschränkt sei.The above-described embodiments are merely illustrative of the principles of the present disclosure. It is understood that modifications and variations of the arrangements and details described herein will become apparent to other skilled persons. It is therefore intended that the disclosure be limited only by the scope of protection of the following patent claims and not by the specific details presented herein with reference to the description and the explanation of the exemplary embodiments.