Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR SECURE COMMUNICATION IN A COMMUNICATION NETWORK COMPRISING A PLURALITY OF UNITS HAVING DIFFERENT SECURITY LEVELS
Document Type and Number:
WIPO Patent Application WO/2020/057938
Kind Code:
A1
Abstract:
The invention relates to a method for secure communication in a communication network (1) comprising a plurality of units (10, 20, 30, 40) having different security levels, the method comprising the following steps: providing a respective initial data set (12, 22) for at least two secure units (10, 20) having a high security level of the plurality of units (10, 20, 30, 40); providing a respective initial data set (32, 42) for at least two further units (30, 40) having a lower security level of the plurality of units (10,20, 30, 40) compared to the at least two secure units (10, 20), wherein each further unit of the at least two further units (30, 40) is bound to exactly one secure unit of the at least two secure units (10, 20), wherein the initial data set (32, 42) of the at least two further units (30, 40) has a random value, wherein the initial data set (12, 22) of the at least two secure units (10, 20) has a random value and at least one hash value; wherein the at least one hash value is generated on the basis of a cryptographic hash function, which maps the random value of the at least one bound further unit of the at least two further units; distributing a new random value (33) to a first further unit of the at least two further units (30, 40) by means of a first associated secure unit (10) within a secure communication channel; updating at least part of the initial data sets (12, 32) of the first further unit (30) and the first associated secure unit (10), taking into account the new distributed random value (33) after a successful check by the first associated secure unit (10); transmitting at least two different encrypted values from the first further unit (30) to the second further unit (40) of the at least two further units (30, 40) by distributing at least two associated different decryption data sets to the at least two secure units (10, 20) in at least one secure communication channel by the first further unit (30) in such a way that on the basis of the two associated different decryption data sets, the at least two different encrypted values can only be decrypted in a combined manner, and that the other further unit receives the decryption data set of the one secure unit only after successful checking of authorization data of the one secure unit by the other secure unit, and that the other further unit receives the decryption data set of the other secure unit after successful checking of authorization data of the one secure unit by the other secure unit; wherein the at least two secure units (10, 20) differ from one another, wherein an underlying message is obtained on the basis of the at least two different encrypted values and the decryption data sets. The invention further relates to a corresponding communication network and to a computer program product.

Inventors:
FURCH ANDREAS (DE)
Application Number:
PCT/EP2019/073188
Publication Date:
March 26, 2020
Filing Date:
August 30, 2019
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SIEMENS AG (DE)
International Classes:
H04L9/08; H04L9/32; H04L29/06
Foreign References:
DE102009032466A12010-01-28
DE102010027586A12012-01-19
DE102016205122A12017-10-05
Download PDF:
Claims:
Ansprüche

1. Verfahren für eine sichere Kommunikation in einem Kommuni kationsnetzwerk (1) mit einer Vielzahl von Einheiten (10, 20, 30, 40) mit unterschiedlichen Sicherheitsniveaus, auf weisend die Schritte: a. Bereitstellen eines jeweiligen anfänglichen Datensat zes (12, 22) für mindestens zwei sichere Einheiten (10, 20) mit einem hohen Sicherheitsniveau der Viel zahl der Einheiten (10, 20, 30, 40); b. Bereitstellen eines jeweiligen anfänglichen Datensat zes (32, 42) für mindestens zwei weitere Einheiten (30, 40) mit einem im Vergleich zu den mindestens zwei sicheren Einheiten (10, 20) geringeren Sicherheitsni veau der Vielzahl der Einheiten (10, 20, 30, 40), wo bei c. jede weitere Einheit der mindestens zwei weiteren Ein heiten (30, 40) an genau eine sichere Einheit der min destens zwei sicheren Einheiten (10, 20) gebunden ist; wobei d. der anfängliche Datensatz (32, 42) der mindestens zwei weiteren Einheiten (30, 40) einen Zufallswert auf weist, wobei e. der anfängliche Datensatz (12, 22) der mindestens zwei sicheren Einheiten (10, 20) einen Zufallswert und min destens einen Hash-Wert aufweist, wobei der mindestens eine Hash-Wert basierend auf einer kryptographischen Hash-Funktion erstellt wird, welche den Zufallswert der mindestens einen gebundenen weiteren Einheit der mindestens zwei weiteren Einheiten abbildet; f. Verteilen eines neuen Zufallswerts (33) an eine erste weitere Einheit der mindestens zwei weiteren Einheiten (30, 40) durch eine erste zugehörige sichere Einheit (10) innerhalb eines sicheren Kommunikationskanals; g. Aktualisieren zumindest eines Teils der anfänglichen Datensätze (12, 32) der ersten weiteren Einheit (30) und der ersten zugehörigen sicheren Einheit (10) unter Berücksichtigung des neuen verteilten Zufallswerts (33) nach erfolgreicher Überprüfung durch die erste zugehörige sichere Einheit (10); und h. Übermitteln mindestens zweier unterschiedlicher ver schlüsselter Werte von der ersten weiteren Einheit (30) an die zweite weitere Einheit (40) der mindestens zwei weiteren Einheiten (30, 40) durch

- Verteilen mindestens zweier zugehöriger unterschied licher Entschlüsselungsdatensätze an die mindestens zwei sicheren Einheiten (10, 20) in mindestens einem sicheren Kommunikationskanal durch die erste weitere Einheit (30) derart, dass anhand der zwei zugehörigen unterschiedlichen Ent schlüsselungsdatensätze die mindestens zwei unter schiedlichen verschlüsselten Werte nur kombiniert ent schlüsselt werden können und dass die andere weitere Einheit den Entschlüsselungsdatensatz der einen siche ren Einheit erst nach erfolgreicher Prüfung von Auto- risierungsdaten der anderen sicheren Einheit durch die eine sichere Einheit erhält und dass die andere weite re Einheit den Entschlüsselungsdatensatz der anderen sicheren Einheit nach erfolgreicher Prüfung von Auto- risierungsdaten der einen sicheren Einheit durch die andere sichere Einheit erhält; wobei sich die mindestens zwei sicheren Einheiten (10, 20) voneinander unterscheiden; wobei eine zugrundeliegende Nachricht anhand der mindestens zwei unterschiedlichen verschlüsselten Werte und der Entschlüsselungsdatensätze erhalten wird.

2. Verfahren nach Anspruch 1, wobei der Zufallswert (33) durch die sichere Einheit (30, 40) erzeugt wird.

3. Verfahren nach Anspruch 1 oder Anspruch 2, wobei die Viel zahl der Einheiten (10, 20, 30, 40) voneinander separiert ist, insbesondere durch eine HW-Trennung oder logisch.

4. Verfahren nach einem der vorhergehenden Ansprüche, wobei der anfängliche Datensatz (12, 22) der mindestens zwei si cheren (10, 20) und/oder der mindestens zwei weiteren Ein heiten (30, 40) jeweils weiterhin eine Konfiguration oder ein Zertifikat aufweist.

5. Verfahren nach Anspruch 4, wobei die Konfiguration oder das Zertifikat die Beziehungen zwischen den sicheren und den weiteren Einheiten (10, 20, 30, 40), eine Einsatzdauer, ei ne Anzahl zu übertragener Bits, eine maximale Anzahl zu übertragener Bits für den sicheren Kommunikationskanal, An zahl der Übertragungsrunden und/oder sonstige Daten hin sichtlich Netzwerktopologie oder dem sicheren Kommunikati onskanal zwischen weiteren und sicheren Einheiten (10, 20, 30, 40) aufweist.

6. Verfahren nach einem der vorhergehenden Ansprüche, wobei die zugehörige sichere Einheit (10), die sichere Einheit (10) ist, an welche die erste weitere Einheit (30) gebunden ist oder eine andere sichere Einheit (20), an welche die erste weitere Einheit (30) nicht gebunden ist.

7. Verfahren nach Anspruch 6, wobei die Verteilung weiterhin die Schritte aufweist:

Senden des neuen Zufallswerts an die erste weitere Einheit (30) über einen sicheren Kommunikationskanal durch die erste zugehörige sichere Einheit (10);

Bestimmen eines neuen Hash-Werts durch die erste wei tere Einheit (30), wobei der neue Hash-Wert basierend auf einer kryptographischen Hash-Funktion erstellt wird, welche den neuen Zufallswert (33) berücksich tigt;

Überprüfen der Korrektheit des neuen Hash-Werts durch diejenige sichere Einheit (10), an welche die erste weitere Einheit (30) gebunden ist,

Empfangen eines weiteren neuen Hash-Werts durch die sichere Einheit (10) nach erfolgreicher Überprüfung der Korrektheit des neuen Hash-Werts,

falls die mindestens eine sichere Einheit (10) die si chere Einheit (10) ist, an welche die erste weitere Einheit (30) gebunden ist; und

Empfangen des Prüfergebnisses durch die sichere Ein heit (20) nach erfolgreicher Überprüfung der Korrekt heit des neuen Hash-Werts,

falls die mindestens eine sichere Einheit (20) die an dere sichere Einheit (20) ist, an welche die erste weitere Einheit (30) nicht gebunden ist.

8. Verfahren nach Anspruch 7, wobei nach der Verteilung der anfängliche Datensatz (12) der sicheren Einheit (10) aktua lisiert wird, an welche die erste weitere Einheit (30), ge bunden ist.

9. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Zufallswert und/oder der Hash-Wert der anfänglichen Da tensätze aktualisiert werden.

10. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Übermitteln das Senden der neuen Hash-Werte von der weiteren Einheit (30) an die sichere Einheit (10) in dem sicheren Kommunikationskanal umfasst.

11. Verfahren nach einem der vorhergehenden Ansprüche, wobei sich die sichere Einheit (10) gegenüber der weiteren Ein heit (30) direkt nach dem anonymen Aufbau des sicheren Ka nals authentisiert .

12. Verfahren nach einem der vorhergehenden Ansprüche, wobei die weitere Einheit (30) bei erfolgloser Prüfung kompromit tiert ist und in Schritt g. durch die sichere Einheit (10) keine Aktualisierung vorgenommen wird.

13. Kommunikationsnetzwerk (1) zum Durchführen des Verfahrens nach einem der vorhergehenden Ansprüche.

14. Computerprogrammprodukt mit einem Computerprogramm, das Mit tel zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 12 aufweist, wenn das Computerprogramm auf einer pro grammgesteuerten Einrichtung zur Ausführung gebracht wird.

Description:
Beschreibung

Verfahren für eine sichere Kommunikation in einem Kommunikati onsnetzwerk mit einer Vielzahl von Einheiten mit unterschiedli chen Sicherheitsniveaus

1. Technisches Gebiet

Die Erfindung betrifft ein computer-implementiertes Verfahren für eine sichere Kommunikation in einem Kommunikationsnetzwerk mit einer Vielzahl von Einheiten mit unterschiedlichen Sicher- heitsniveaus . Ferner ist die Erfindung auf ein entsprechendes Kommunikationsnetzwerk und Computerprogrammprodukt gerichtet.

Die Erfindung kann insbesondere in den technischen Bereichen der Industrieautomatisierung und im Internet der Dinge angesiedelt sein .

2. Stand der Technik

Eingebettete Systeme sind aus dem Stand der Technik bekannt. Der Ausdruck eingebettetes System bezeichnet einen Rechner oder auch Computer, der in einen technischen Kontext eingebettet ist. Der Rechner kann mit bestimmten Funktionen ausgestaltet und entspre chend angepasst sein, wie beispielsweise Steuerungs-, Verschlüs- selungs-, Entschlüsselungs-, oder Überwachungsfunktionen. Dem entsprechend weist der Rechner mindestens eine Applikation, Software oder Programm für die Umsetzung solcher Funktionen auf. Es bestehen zunehmend höhere Anforderungen an die Sicherheit solcher eingebetteter Systeme. Die eingebetteten Systeme werden vermehrt Gefahren oder Hacker-Angriffen in Industrieumgebungen ausgesetzt .

Üblicherweise weisen die eingebetteten Systeme Einheiten mit un terschiedlichen Sicherheitsniveaus auf, ein hohes Sicherheitsni veau oder ein im Vergleich hierzu geringeres Sicherheitsniveau. Die Einheiten mit einem hohen Sicherheitsniveau werden im Fol genden auch sichere Einheiten oder Sicherheitsmodule genannt.

Die Einheiten mit einem vergleichsweise geringeren Sicherheits niveau werden im Folgenden weitere Einheiten genannt. Beispiels weise können die Einheiten als Chips ausgebildet sein und auf einer Leiterplatte zu einem Modul zusammengefügt werden.

Die sichere Einheit kann Zufallswerte und Schlüssel selbst er zeugen sowie abspeichern und nutzen. Die sicheren Einheiten kön nen einen sicheren Kommunikationskanal aushandeln, sofern sie eine anfängliche Vertrauensbeziehung miteinander verbindet. Fer ner kann eine sichere Einheit auch einen Kommunikationskanal mit einer weiteren Einheit aushandeln, jedoch erbt der ausgehandelte Kommunikationskanal dann entsprechend das geringere Sicherheits niveau der weiteren Einheit. Gleiches gilt auch für die weiteren Einheiten untereinander. Der ausgehandelte Kommunikationskanal erbt ebenfalls das geringere Sicherheitsniveau der beiden weite ren Einheiten.

Gemäß dem Stand der Technik werden die weiteren Einheiten daher zur Erhöhung ihrer Sicherheitsniveaus um eine sichere bzw. als sicherer angesehene Einheit ergänzt oder es wird eine vertrau enswürdige dritte Einheit eingeführt. Die dritte Einheit erhält Kenntnis über die zu schützenden Datenflüsse. Alternativ wird die weitere Einheit zur sicheren Einheit umgerüstet. Das Einfü gen zusätzlicher Einheiten sowie das Anpassen bestehender Ein heiten ist jedoch aufwendig, komplex und zeitintensiv sowie mit erheblichen Kosten verbunden.

Die vorliegende Erfindung stellt sich daher die objektive tech nische Aufgabe ein Verfahren für eine sichere Kommunikation in einem Kommunikationsnetzwerk mit einer Vielzahl von Einheiten unterschiedlicher Sicherheitsniveaus bereitzustellen, welches auf beliebige Einheiten anwendbar und effizienter ist. 3. Zusammenfassung der Erfindung

Die oben genannte Aufgabe wird erfindungsgemäß durch ein Verfah ren für eine sichere Kommunikation in einem Kommunikationsnetz werk mit einer Vielzahl von Einheiten mit unterschiedlichen Si cherheitsniveaus gelöst, aufweisend die Schritte: a. Bereitstellen eines jeweiligen anfänglichen Datensatzes für mindestens zwei sichere Einheiten mit einem hohen Sicher heitsniveau der Vielzahl der Einheiten; b. Bereitstellen eines jeweiligen anfänglichen Datensatzes für mindestens zwei weitere Einheiten mit einem im Vergleich zu den mindestens zwei sicheren Einheiten geringeren Sicher heitsniveau der Vielzahl der Einheiten, wobei c. jede weitere Einheit der mindestens zwei weiteren Einheiten an genau eine sichere Einheit der mindestens zwei sicheren Einheiten gebunden ist; wobei d. der anfängliche Datensatz der mindestens zwei weiteren Ein heiten einen Zufallswert aufweist; wobei e. der anfängliche Datensatz der mindestens zwei sicheren Ein heiten einen Zufallswert und mindestens einen Hash-Wert aufweist; wobei der mindestens eine Hash-Wert basierend auf einer kryptographischen Hash-Funktion erstellt wird, welche den Zufallswert der mindestens einen gebundenen weiteren Einheit der mindestens zwei weiteren Einheiten abbildet; f. Verteilen eines neuen Zufallswerts an eine erste weitere Einheit der mindestens zwei weiteren Einheiten durch eine erste zugehörige sichere Einheit innerhalb eines sicheren Kommunikationskanals ; g. Aktualisieren zumindest eines Teils der anfänglichen Da tensätze der ersten weiteren Einheit und der ersten zugehö rigen sicheren Einheit unter Berücksichtigung des neuen verteilten Zufallswerts nach erfolgreicher Überprüfung durch die erste zugehörige sichere Einheit; und h. Übermitteln mindestens zweier unterschiedlicher verschlüs selter Werte von der ersten weiteren Einheit an die zweite weitere Einheit der mindestens zwei weiteren Einheiten durch

- Verteilen mindestens zweier zugehöriger unterschiedlicher Entschlüsselungsdatensätze an die mindestens zwei sicheren Einheiten in mindestens einem sicheren Kommunikationskanal durch die erste weitere Einheit derart, dass anhand der zwei zugehörigen unterschiedlichen Entschlüsse lungsdatensätze die mindestens zwei unterschiedlichen ver schlüsselten Werte nur kombiniert entschlüsselt werden kön nen und dass die andere weitere Einheit den Entschlüsse lungsdatensatz der einen sicheren Einheit erst nach erfolg reicher Prüfung von Autorisierungsdaten der anderen siche ren Einheit durch die eine sichere Einheit erhält und dass die andere weitere Einheit den Entschlüsselungsdatensatz der anderen sicheren Einheit nach erfolgreicher Prüfung von Autorisierungsdaten der einen sicheren Einheit durch die andere sichere Einheit erhält; wobei sich die mindestens zwei sicheren Einheiten voneinander un terscheiden; wobei eine zugrundeliegende Nachricht anhand der mindestens zwei unterschiedlichen verschlüsselten Werte und der beiden Ent schlüsselungsdatensätze erhalten wird. Das erfindungsgemäße Verfahren erhöht die Kommunikationssicher heit der Einheiten unterschiedlicher Sicherheitsniveaus unterei nander. Dies wird durch die Verteilung von neuem Zufall gemäß Schritt f. sowie die Kommunikation zwischen zwei weiteren Ein heiten gemäß Schritt h. erreicht.

Bei der letztgenannten Kommunikation können die weiteren Einhei ten Daten sicher austauschen ohne untereinander einen gesicher ten Kanal etablieren zu müssen. Lediglich die weiteren Einheiten erhalten den Inhalt der zugrundeliegenden Nachricht, die siche ren Einheiten im Gegensatz hierzu nicht. Die sicheren Einheiten können auch eine abgefangene Nachricht nicht entschlüsseln.

In einer Ausgestaltung wird der Zufallswert durch die mindestens eine sichere Einheit erzeugt. Dementsprechend ist die sichere Einheit als eine vertrauenswürdige Einheit ausgestaltet. Sie er zeugt echten Zufall.

In einer weiteren Ausgestaltung ist die Vielzahl der Einheiten voneinander separiert, insbesondere durch eine HW-Trennung oder logisch. Dementsprechend sind die Einheiten voneinander ausrei chend separiert. Die Separierung kann auf unterschiedliche Art und Weise flexibel bestimmt werden. Dadurch erhalten die Einhei ten vorteilhafterweise keinerlei Zugriff auf die Ressourcen der anderen Einheiten.

In einer weiteren Ausgestaltung weist der anfängliche Datensatz der mindestens zwei sicheren und/oder der mindestens zwei weite ren Einheiten jeweils weiterhin eine Konfiguration oder ein Zer tifikat auf.

In einer weiteren Ausgestaltung weist die Konfiguration oder das Zertifikat die Beziehungen zwischen den sicheren und den weite ren Einheiten, eine Einsatzdauer, eine Anzahl zu übertragener Bits, eine maximale Anzahl zu übertragener Bits für den sicheren Kommunikationskanal, Anzahl der Übertragungsrunden und/oder sonstige Daten hinsichtlich Netzwerktopologie oder dem sicheren Kommunikationskanal zwischen weiteren und sicheren Einheiten auf. Dementsprechend können die anfänglichen Datensätze weitere Daten umfassen, wie eine Konfiguration. Dementsprechend können anhand der Konfiguration vorteilhafterweise Attribute, Eigen schaften oder sonstige Parameter, im Falle von Zertifikaten auch dynamisch, festgelegt werden, wie Einsatzdauer für die sicheren Kommunikationskanäle, siehe weiter unten.

In einer weiteren Ausgestaltung ist die zugehörige sichere Ein heit die sichere Einheit, an welche die erste weitere Einheit gebunden ist oder eine andere sichere Einheit, an welche die erste weitere Einheit nicht gebunden ist. Dementsprechend kann der neue Zufallswert durch eine beliebige sichere Einheit er zeugt und an die weitere Einheit verteilt werden. Die sichere Einheit kann dabei die gebundene sichere Einheit sein oder eine andere, welche für die gebundene sichere Einheit einspringt bzw. die Neuverteilung übernimmt. Dadurch wird vorteilhafterweise si chergestellt, dass in jedem Fall eine Prüfung durch die gebunde ne sichere Einheit erfolgt.

In einer weiteren Ausgestaltung weist die Verteilung weiterhin die Schritte auf:

Senden des neuen Zufallswerts an die erste weitere Einheit über einen sicheren Kommunikationskanal durch die erste zu gehörige sichere Einheit;

Bestimmen eines neuen Hash-Werts durch die erste weitere Einheit, wobei der neue Hash-Wert basierend auf einer kryp- tographischen Hash-Funktion erstellt wird, welche den neuen Zufallswert berücksichtigt; Überprüfen der Korrektheit des neuen Hash-Werts durch die jenige sichere Einheit, an welche die erste weitere Einheit gebunden ist; und

Empfangen eines weiteren neuen Hash-Werts durch die sichere Einheit nach erfolgreicher Überprüfung der Korrektheit des neuen Hash-Werts;

falls die mindestens eine sichere Einheit die sichere Ein heit ist, an welche die erste weitere Einheit gebunden ist; und

Empfangen des Prüfergebnisses durch die sichere Einheit nach erfolgreicher Überprüfung der Korrektheit des neuen Hash-Werts ;

falls die mindestens eine sichere Einheit die andere siche re Einheit ist, an welche die erste weitere Einheit nicht gebunden ist.

Dementsprechend erfolgt die Prüfung stets durch die gebundene sichere Einheit und keine andere. Mit anderen Worten, ist die Prüfung davon abhängig, ob die sichere Einheit die gebundene si chere Einheit ist oder nicht. Dadurch wird vorteilhafterweise sichergestellt, dass die Prüfung durch die richtige sichere Ein heit erfolgt, welche die zugehörigen anfänglichen Daten der an sie gebundenen weiteren Einheit hat.

In einer weiteren Ausgestaltung wird nach der Verteilung der an fängliche Datensatz der sicheren Einheit aktualisiert, an welche die erste weitere Einheit gebunden ist. Dementsprechend werden nach der Neuverteilung sowie Prüfung die alten anfänglichen Da tensätze auf Basis der aktuellen oder neuen Werte angepasst, beispielsweise mit diesen überschrieben . Dadurch wird sicherge stellt, dass die Einheiten nach jeder Neuverteilung die aktuel len Werte erhalten und die weitere Neuverteilung durch die si chere Einheit erneut auf Basis der aktuellen Werte erfolgt. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Zu fallswert und/oder der Hash-Wert der anfänglichen Datensätze ak tualisiert werden.

In einer weiteren Ausgestaltung umfasst das Übermitteln das Sen den der neuen Hash-Werte von der weiteren Einheit an die sichere Einheit in dem sicheren Kommunikationskanal. Dementsprechend wird sichergestellt, dass der neue Hash-Wert erst nach erfolg reicher Prüfung und nicht vorher an die sichere Einheit gesendet wird. Dadurch wird sichergestellt, dass die weitere Einheit au- thentisiert ist und die sichere Einheit den Hash-Wert korrekt aktualisiert .

In einer weiteren Ausgestaltung authentisiert sich die sichere Einheit gegenüber der weiteren Einheit nach dem anonymen Aufbau des sicheren Kanals.

In einer weiteren Ausgestaltung ist die weitere Einheit bei er folgloser Prüfung kompromittiert und es wird in Schritt g. durch die sichere Einheit keine Aktualisierung vorgenommen. Dement sprechend erfolgt andernfalls eine anderweitige Behandlung der weiteren Einheit. Der weitere neue Hash-Wert wird folglich in diesem Fall nicht von der weiteren Einheit an die sichere Ein heit in dem sicheren Kommunikationskanal gesendet.

Ferner betrifft die Erfindung ein Kommunikationsnetzwerk zum Durchführen des obigen Verfahrens.

Die Erfindung betrifft ferner ein Computerprogrammprodukt mit einem Computerprogramm, das Mittel zur Durchführung des oben be schriebenen Verfahrens, wenn das Computerprogramm auf einer pro grammgesteuerten Einrichtung zur Ausführung gebracht wird.

Ein Computerprogrammprodukt, wie z.B. ein Computerprogramm- Mittel, kann beispielsweise als Speichermedium, wie z.B. Spei- cherkarte, USB-Stick, CD-ROM, DVD, oder auch in Form einer her unterladbaren Datei von einem Server in einem Netzwerk bereitge stellt oder geliefert werden. Dies kann zum Beispiel in einem drahtlosen Kommunikationsnetzwerk durch die Übertragung einer entsprechenden Datei mit dem Computerprogrammprodukt oder dem Computerprogramm-Mittel erfolgen. Als programmgesteuerte Ein richtung kommt insbesondere eine Steuereinrichtung, wie bei spielsweise ein Industriesteuerungs-PC oder eine Speicherpro grammierbare Steuerung oder ein Programmable Logic Controller, kurz PLC, oder ein Mikroprozessor für eine Smartcard oder der gleichen in Frage.

4. Kurze Beschreibung der Zeichnungen

In der folgenden detaillierten Beschreibung werden vorliegend bevorzugte Ausführungsformen der Erfindung weiter beschrieben mit Bezug auf die folgenden Figuren.

FIG 1 zeigt ein Kommunikationsnetzwerk gemäß einer Ausfüh rungsform der Erfindung.

FIG 2 zeigt ein Ablaufdiagramm gemäß einer Ausführungsform der Erfindung.

FIG 3 zeigt ein Ablaufdiagramm gemäß einer Ausführungsform der Erfindung.

FIG 4 zeigt ein Ablaufdiagramm gemäß einer Ausführungsform der Erfindung.

5. Beschreibung der bevorzugten Ausführungsformen

Im Folgenden werden bevorzugte Ausführungsformen der vorliegen den Erfindung in Bezug auf die Figuren beschrieben. Kommunikationsnetzwerk

Figur 1 stellt ein beispielhaftes Kommunikationsnetzwerk 1 zum Durchführen des Verfahrens für eine sichere Kommunikation zwi schen einer Vielzahl von Einheiten 10, 20, 30, 40 mit unter schiedlichen Sicherheitsniveaus dar. Die Einheiten lassen sich in sichere 10, 20 und weitere Einheiten 30, 40 einteilen. Die sicheren Einheiten 10, 20 weisen ein hohes Sicherheitsniveau auf und die weiteren Einheiten 30, 40 vergleichsweise ein geringeres Sicherheitsniveau. In Figur 1 ist die weitere Einheit 30 an die sichere Einheit 10 gebunden sowie die weitere Einheit 40 an die sichere Einheit 20 gebunden. Diese Bindung wird im Folgenden als spezielle Bindung verstanden, siehe weiter unten.

Die weiteren Einheiten 30, 40 erhalten, beispielsweise im Rahmen ihrer Fertigung in einer sicheren Umgebung, einen anfänglichen, vertrauenswürdigen und zufälligen Wert rand und können Maßnahmen für Secure Boot und Runtime-Integrity implementiert haben. Die sicheren Einheiten 10, 20 können im Gegensatz hierzu die zufäl ligen Werte rand jederzeit selbst erzeugen. Die zufälligen Werte können auch rand-Werte oder Zufallswerte genannt werden. Sie werden im Folgenden als Geheimnisse der Einheiten 10, 20, 30, 40 verstanden. Dementsprechend weist jede Einheit 10, 20, 30, 40 einen anfänglichen Datensatz 12, 22, 32, 42 mit einem zugehöri gen Zufallswert auf.

Die Einheiten 10, 20, 30, 40 können voneinander separiert sein. Eine ausreichende Separierung oder Trennung kann durch eine kon krete HW-Trennung realisiert werden. Folglich ist eine Einheit durch ein eigenes HW-Modul realisiert. Beispiele hierfür sind Produkte, die verschiedene Chips als Einheiten auf einer Leiter platte zu einem Modul zusammenfügen. Die Separierung kann auch auf andere Art und Weise erfolgen, wie logisch, sofern sicherge stellt ist, dass eine Einheit keinerlei Zugriff auf die Ressour cen anderer Einheiten hat. Ferner kann im Rahmen der sicheren Umgebung in der Fertigung ei ne feste, höchstens administrativ durch berechtigte Instanzen änderbare Konfiguration der sicheren und weiteren Einheiten 10, 20, 30, 40 bezüglich möglicher Kommunikationswege zwischen den Einheiten erfolgen.

In diesem Zusammenhang wird jede weitere Einheit 30, 40 an genau eine sichere Einheit 10, 20 auf spezielle Art und Weise gebun den. Dementsprechend ist eine weitere Einheit 30, 40 stets an genau eine sichere Einheit 10, 20 gebunden. Die sichere Einheit erhält einen Hash-Wert h (rand) , basierend auf einer beliebigen kryptographischen Hash-Funktion h, der von der Fertigung über den rard-Wert der an sie gebundenen weiteren Einheit gebildet wird .

Die Konfiguration der sicheren Einheiten 10, 20 kann mehrere weitere Einheiten 30, 40 beinhalten, an die sie gebunden sind, umgekehrt ist die Beziehung jedoch eindeutig. Ferner kann jeder sicheren Einheit 10, 20 per Konfiguration mitgeteilt werden, welche sonstigen speziellen Bindungen zwischen sicheren 10, 20 und weiteren Einheiten 30, 40 im Kommunikationsnetzwerk 1 vor handen sind. Zusätzlich kann die Konfiguration weitere Daten aufweisen, beispielsweise wie die Einsatzdauer bzw. maximale An zahl zu übertragener Bits für die gesicherten Kanäle weiterer 30, 40 mit sicheren Einheiten 10, 20 festgelegt ist. Die ent sprechende Festlegung kann auf Basis einer Bedrohungs- und Risi koanalyse im Vorfeld erstellt werden. Dementsprechend können die anfänglichen Datensätze 12, 22, 32, 42 der Einheiten 10, 20, 30, 40, einen Hash-Wert und/oder Konfiguration aufweisen. Der Hash- Wert kann dabei Teil der Konfiguration sein.

Alternativ zur statischen Konfiguration der Kommunikationsbezie hungen, können die sicheren Einheiten 10, 20 auch dynamisch auf Basis von Zertifikaten mit erweiterten Attributen konfiguriert werden. Hierbei können sie auf Basis eines Root-CA Schlüsselpaa res konfiguriert werden. Ferner können die erweiterten Attribute die möglichen Kommunikationsbeziehungen der im Zertifikat be trachteten Einheiten, wie die weiteren Einheiten 30, 40, an die eine sichere Einheit 10, 20 gebunden ist sowie die Einsatzdauer bzw. maximale Anzahl zu übertragener Bits für die gesicherten Kanäle dieser weiteren Einheiten 30, 40 mit den sicheren Einhei ten 10, 20 aufweisen.

Die anfänglichen Zufallswerte werden im Fall der weiteren Ein heiten 30, 40 zunächst im Rahmen des Aufbaus eines sicheren Kom munikationskanals mit einer sicheren Einheit 10, 20 eingesetzt. Dieser Aufbau erfolgt anonym gemäß Standardverfahren. Die nächs te Kommunikation bzw. Kanalaushandlung der weiteren Einheit 30, 40 kann entweder mit einer ebenfalls weiteren Einheit 30, 40 o- der einer sicheren Einheit 10, 20 erfolgen. Nach jeder Kommuni kation mit einer weiteren Einheit 30, 40 erfolgt als nächstes wieder eine Kanalaushandlung eines sicheren Kommunikationskanals mit einer sicheren Einheit 10, 20.

Kommunikation zwischen den Einheiten 10, 20, 30, 40

Die Kommunikation zwischen zwei weiteren Einheiten 30, 40 er folgt gemäß Figur 4. Die sicheren Einheiten 10, 20 können im Ge gensatz dazu jederzeit neue sichere Kommunikationskanäle gemäß Standardverfahren untereinander aushandeln und erzeugen für jede Kanalaushandlung neue Zufallswerte, die nur einmalig eingesetzt werden. Das Standardverfahren ist in den Figuren nicht gezeigt. Dementsprechend bedarf es hier keines Erneuerungsvorgangs gemäß den Figuren 2 und 3.

Ferner wird die Einsatzdauer bzw. maximale Anzahl zu übertrage ner Bits für die ausgehandelten sicheren Kanäle zwischen einer weiteren Einheit 30, 40 und einer sicheren Einheit 10, 20 durch die entsprechende Konfiguration vorgegeben, siehe weiter oben. Im Fall eines sicheren Kommunikationskanals zwischen einer wei teren und einer sicheren Einheit kontrolliert die sichere Ein heit die maximale Kanalnutzung auf Basis der ihr bekannten Kon figuration. Im anderen Fall eines sicheren Kommunikationskanals zwischen zwei sicheren Einheiten entscheiden die jeweiligen Ein heiten selbstständig, wie lange sie den Kanal aufrecht erhalten wollen .

Verteilen eines neuen Zufallswerts : Erneuerungsvorgang

Figuren 2 und 3 stellen Ablaufdiagramme des Erneuerungsvorgangs im Falle der Kommunikation zwischen weiteren und sicheren Ein heiten beispielhaft im Detail dar.

Die sichere Einheit SE_geb 10 erzeugt für die weitere Einheit WE_geb 30 einen neuen Zufallswert r_neu und sendet diesen an die weitere Einheit WE_geb 30 innerhalb eines vorher anonym aufge bauten sicheren Kommunikationskanals.

Die weitere Einheit WE_geb 30 empfängt den neuen Zufallswert r_neu . Nach Empfang des neuen Zufallswerts r_neu kann sie diesen geeignet mit ihrem zuletzt gespeicherten Zufallswert r_alt, bei spielsweise durch Anwendung einer XOR-Verknüpfung oder unter Einsatz der Hash-Funktion h, zu einem neuen Zufallswert r_WE verknüpfen. Der Zufallswert r_WE kann den vorherigen Zufallswert r_alt durch Kombination beider Werte mit einem neuen Wert über schreiben. Zusätzlich kann die weitere Einheit WE_geb 30 weitere Werte, wie die Werte h_ID := h (h_alt\ r_neu) sowie h_neu := h(r_WE) berechnen. Die weitere Einheit WE_geb 30 sendet darauf hin den berechneten Wert h_ID für eine Überprüfung des h_ID durch die sichere Einheit SE_geb 10 innerhalb des vorher aufge bauten sicheren Kommunikationskanals an die sichere Einheit SE_geb 10. Falls die sichere Einheit SE_geb 10 an die weitere Einheit WE_geb 30 gemäß Figur 2 gebunden ist, prüft sie den empfangenen Wert h_ID. Bei der Prüfung berechnet sie den Wert h_ID erneut auf Basis des zuletzt für die zugehörige weitere Einheit WE_geb 30 gespeicherten Werts h_alt und prüft diesen auf Gleichheit mit dem übertragenen Wert h_ID. Dabei erfolgt die Prüfung durch die jenige sichere Einheit 10, an welche die weitere Einheit 30 ge bunden ist.

Die weitere Einheit WE_geb 30 sendet nach erfolgreicher oder po sitiver Prüfung h_neu innerhalb eines sicheren Kommunikationska nals an die sichere Einheit SE_geb 10.

Ferner ersetzen die Einheiten 10, 30 den Wert h_alt durch h (h_ID\ h (neu) ) . Ferner ersetzt die weitere Einheit WE_geb 30 ih ren alten Zufallswert r_alt durch r_WE . Alternativ oder zusätz lich können die sicheren und weiteren Einheiten andere Werte be rechnen, überprüfen und/oder aktualisieren.

Bei negativer oder erfolgloser Prüfung vermerkt die sichere Ein heit SE_geb 10 die zugehörige weitere Einheit WE_geb 30 als kom promittiert und behandelt sie im Folgenden gemäß einer vorher festgelegten Fehler-Policy, beispielsweise indem sie mit dieser nicht mehr weiter kommuniziert. Gegebenenfalls kommuniziert sie mit der sicheren Einheit, von der sie die neuen Werte erhalten hat, und es wird von dieser ebenfalls eine Fehlerbehandlung an gestoßen .

Andernfalls, falls die sichere Einheit SE_n 20 nicht an die wei tere Einheit WE_geb 30 gemäß Figur 2 gebunden ist, sendet die sichere Einheit SE_n 20 den Wert h_ID, den Zufallswert r_neu so wie das Identifikationsmerkmal ID (WE_geb) der weiteren Einheit WE_geb 30 gemäß Figur 3 an die weitere Einheit WE_geb 30 gebun dene sichere Einheit SE_geb 10 innerhalb des mit der sicheren Einheit SE_geb 10 ausgehandelten sicheren Kommunikationskanals. Sollte die Topologie dies nicht erlauben, wird eine Fehlerbe handlung angestoßen.

Die an die weitere Einheit WE_geb 30 gebundene sichere Einheit SE_geb 10 prüft den empfangenen Wert h_ID. Mit anderen Worten, erfolgt die Prüfung in den Figuren 2 und 3 stets durch diejenige sichere Einheit SE_geb 10, an welche die weitere Einheit WE_geb 30 gebunden ist. Die Prüfung selbst stimmt in den Figuren 2 und 3 überein. Zusätzlich, nach der Prüfung sowie Aktualisierung der Werte, teilt die sichere Einheit SE_geb 10 der anderen sicheren Einheit SE_n 20 das positive Prüfergebnis mit.

Die Kommunikationskanäle von weiteren Einheiten mit sicheren Einheiten können anschließend für eine begrenzte Anzahl von Da tenübertragungsrunden beliebigen Inhalts genutzt werden, insbe sondere in Abhängigkeit von der möglichen Einsatzdauer bzw. ma ximalen Anzahl zu übertragener Bits .

Kommunikation zwischen den weiteren Einheiten 30, 40

Figur 4 stellt ein Ablaufdiagramm für eine Kommunikation zwi schen zwei weiteren Einheiten WE_A 30, WE_B 40 dar. Wenn eine weitere Einheit WE_A 30 einen Kommunikationskanal zu einer ande ren weiteren Einheit WE_B 40 aufbauen will, sendet sie eine ent sprechende Anfrage innerhalb eines sicheren Kommunikationskanals an diejenige sichere Einheit SE_1 10, an die sie gebunden ist. Die Anfrage ist entsprechend auf eine Kommunikation der weiteren Einheit WE_A 30 mit der weiteren Einheit WE_B 40 gerichtet. In anderen Worten, will die weitere Einheit WE_A 30 eine Nachricht M an die weitere Einheit WE_B 40 senden.

Nach Empfang der Anfrage durch die sichere Einheit prüft die si chere Einheit zunächst, ob die weiteren Einheiten WE_A 30 und WE_B 40 gemäß Konfiguration miteinander kommunizieren können und an welche sicheren Einheiten SE_1 10, SE_2 20 sie gebunden sind Die Prüfung ist in Figur 4 nicht im Detail gezeig und erfolgt wie folgt.

Prüfung der Anfrage

Falls die weitere Einheit WE_A 30 nicht an die sichere Einheit SE_1 10 gebunden ist, wird die Anfrage abgelehnt.

Falls die weiteren Einheiten WE_A 30 und WE_B 40 oder die weite re Einheit WE_B 40 und die sichere Einheit SE_1 10 nicht mitei nander kommunizieren können, wird die Anfrage ebenfalls abge lehnt .

Falls die weiteren Einheiten WE_A 30 und WE_B 40 beide an die selbe sichere Einheit SE_1 10 gebunden sind, stellt die sichere Einheit SE_1 10 eine oder mehrere Anfragen an beliebige andere sichere Einheiten, ob diese in der Lage sind, sich für den Ab lauf der Kommunikation an die weitere Einheit WE_B 40 zu binden und mit der weiteren Einheit WE_A 30 zu kommunizieren.

Sollte keine derartige sichere Einheit existieren oder verfügbar sein, wird die Anfrage ebenfalls abgelehnt. Sollte eine derarti ge sichere Einheit SE_2 20 existieren, teilt die sichere Einheit SE_1 10 dies der weiteren Einheit WE_B 40 im Rahmen der ersten späteren Übertragung von Daten der sicheren Einheit SE_1 10 an die weitere Einheit WE_B 40 mit. Die weitere Einheit WE_B 40 setzt daraufhin im Rahmen des Kommunikationskanals mit der wei teren Einheit WE_A 30 die sichere Einheit SE_2 20 als für sie zeitweilig zugehörige sichere Einheit ein.

Falls die weiteren Einheiten WE_A 30, WE_B 40 nicht an dieselbe sichere Einheit SE_1 10, SE_ 2 20 gebunden sind, können folglich alle vier Einheiten miteinander kommunizieren und die Anfrage wird durch Bestätigung angenommen. Im Folgenden wird zur Veranschaulichung in Figur 1 und Figur 4 angenommen, dass die weitere Einheit WE_A 30 an die sichere Ein heit SE_1 10 gebunden ist sowie die weitere Einheit WE_B 40 an die sichere Einheit SE_2 20 gebunden ist.

Gemäß Figur 4 erzeugt die weitere Einheit WE_A 30 zunächst auf Basis ihres aktuellen Zufallswerts rand sowie dreier vorkonfigu rierter Konstanten pari, par2 und par3 mit Hilfe einer Schlüs selableitungsfunktion KDF, beispielsweise unter Einsatz der kryptographischen Hash-Funktion h, drei Schlüssel Kl, K2 und K3. Ferner verschlüsselt sie die Nachricht M auf Basis von Kl zu Mene und Kl auf Basis von K2 und K3 zu Kiene derart, dass eine Entschlüsselung nur dann erfolgen kann, wenn sowohl K2 als auch K3 bekannt sind. Hierbei kann ein Key-Wrapping Verfahren zum Einsatz kommen. Ferner berechnet die weitere Einheit WE_A 30 kryptographische Hashwerte h (Menc\ Kiene) von der Konkatenation von Mene und Kiene sowie h(K3) von K3. Ferner sendet die weitere Einheit WE_A 30 die berechneten Werte, nämlich h (Menc\ Kiene) , h(K3), ID(B), das Identitätsmerkmal von B, sowie K2 an die si chere Einheit SE_1 10 in einem sicheren Kommunikations kanal .

Die sichere Einheit SE_1 10 berechnet nach Empfang der obigen Werte eine digitale Signatur S12 über die Zeichenkette

h (Menc\ Kiene) \ID(A) \ID(B) und speichert einige Werte, wie darge stellt.

Die weitere Einheit WE_A 30 sendet ID_B sowie K3 an die sichere Einheit SE_2 10, welche einige Werte speichert, wie dargestellt. Die weitere Einheit WE_A 30 sendet weiterhin Mene und Kiene an die weitere Einheit WE_B 40 unter Nutzung der Kommunikationsmög lichkeit zwischen den weiteren Einheiten. Die sichere Einheit SE_1 10 sendet S12 und ID(SE_2) an die wei tere Einheit WE_B 40 innerhalb eines sicheren Kommunikations ka- nals .

Die weitere Einheit WE_B 40 berechnet h (Menc\ Kiene) und sendet h (Menc\ Kiene) , ID (A) sowie S12 an die sichere Einheit SE_2 20.

Die sichere Einheit SE_2 40 prüft S12 und die Korrektheit der übermittelten Identitäten ID (A) bzw. ID (B) . Bei erfolgreicher Prüfung erstellt sie die digitale Signatur S21 über h(K3) und sendet S21 und K3 an die weitere Einheit WE_B 40.

Die weitere Einheit WE_B 40 sendet S21 und ID (A) an die sichere Einheit SE_1 10.

Die sichere Einheit SE_1 10 prüft S21 und die Korrektheit der übermittelten Identitäten ID (A) bzw. ID(B). Bei erfolgreicher Prüfung sendet sie K2 an die weitere Einheit WE_B 40.

Die weitere Einheit WE_B 40 verwendet K2 und K3, um Kl zu erhal ten und Kl, um die Nachricht M zu erhalten.

Falls eine weitere Einheit WE_A 30 oder WE_B 40 von einer siche ren Einheit SE_1 10, SE_2 20 eine Fehlerantwort erhält, verhält sie sich gemäß obiger Fehler-Policy . Beispielsweise im Fall der weiteren Einheiten WE_A 30, WE_B 40 indem sie n-mal eine erneute Kommunikation gemäß dem erfindungsgemäßen Verfahren durchführt und die weitere Einheit WE_B 40 anschließend als nicht erreich bar kennzeichnet.

Bevorzugt verwendet eine weitere Einheit die Schlüssel Kl, K2 und K3 für maximal eine Nachricht M festgelegter maximaler Län ge. Dies hat sich hinsichtlich der Sicherheit als besonders vor teilhaft erwiesen. Zusätzlich bedeutet dies den größtmöglichen Overhead des erfindungsgemäßen Verfahrens. Die maximale Länge kann im Rahmen der festgestellten Sicher heitsniveaus der Einheiten bestimmt werden.

Bevorzugt können die weiteren Einheiten ebenfalls wie die siche ren Einheiten sichere Löschprozeduren für residuale Informatio nen ausführen und speichern lediglich ihren letzten zufälligen Zufallswert sowie ihren letzten Hash-Wert, bevorzugt nicht- volatil .

Bevorzugt sind die Implementierungen der Kommunikationskanalsi cherheit der weiteren Einheiten gegen „simple power analysis" und ähnlich geartete Angriffe resistent ausgestaltet.

Übersicht der sicheren Einheit SE 1 10

SE_1 10 ist eine sichere und damit vertrauenswürdige Einheit.

Sie erzeugt echten Zufall und gibt keine eigenen Geheimnisse preis .

Hinsichtlich der Kommunikation zwischen zwei weiteren Einheiten 30, 40 erhält sie folgende Daten: ID(A), ID(B), K2 ,

h (Mene | Kiene) , h(K3) und sig_SE_2 (h (K3 ) ) . Die folgenden Daten könnten durch passives Lauschen außerhalb sicherer Kanäle abge griffen werden: Mene und Kiene. Alle anderen Daten werden in si cheren Kommunikationskanälen übertragen. Somit fehlt vorteilhaf terweise K3, um M zu erhalten.

Übersicht der sicheren Einheit SE 2 20

SE_2 20 ist eine sichere und damit vertrauenswürdige Einheit.

Sie erzeugt echten Zufall und gibt keine eigenen Geheimnisse preis .

Hinsichtlich der Kommunikation zwischen zwei weiteren Einheiten 30, 40 erhält sie folgende Daten K3, ID(A), ID(B),

h (Mene | Kiene) , mit Werten Mene und Kiene wie von WE_B empfangen, sowie sig_SE_l (h (Mene | Kiene) |ID(A) |ID(B)) . Die folgenden Daten könnten durch passives Lauschen außerhalb sicherer Kanäle abge griffen werden: Mene, Kiene. Alle anderen Daten werden in siche ren Kanälen übertragen. Somit fehlt vorteilhafterweise K2, um M zu erhalten.

Übersicht einer Entität, die in der Lage ist, die Kommunikation zwischen den sicheren und weiteren Einheiten 10, 20, 30, 40 pas- siv zu belauschen

Die folgenden Daten könnten durch passives Lauschen außerhalb sicherer Kanäle abgegriffen werden: Mene und Kiene. Alle anderen Daten werden in sicheren Kommunikationskanälen übertragen. Damit ist M so sicher wie Kl. Kl ist so sicher wie K2 und K3. Kl, K2 und K3 beruhen auf (Pseudo-) Zufall, der wiederum regelmäßig auf Basis von echtem Zufall bezüglich seiner Entropie erneuert wird.

Übersicht einer Entität, die in der Lage ist, die Kommunikation zwischen den sicheren und weiteren Einheiten 10, 20, 30, 40 pas- siv zu belauschen und ihnen aktiv selbst erstellte Nachrichten zukommen zu lassen

Innerhalb der sicheren Kanäle werden derartige Nachrichten er kannt und es folgt eine entsprechende Fehlerbehandlung.

Für den Aufbau eines sicheren Kommunikationskanals wird ein Ge heimnis benötigt, das dieser Angreifer nicht erhält. Miene bzw. Kiene zu verändern bedeutet, dass SE_2 20 die Signatur zu den Daten, die von WE B 40 kommen, nicht verifizieren kann. Bezugs zeichenliste

1 Kommunikationsnetzwerk

10 sichere Einheit

12 anfänglicher Datensatz der sicheren Einheit

20 sichere Einheit

22 anfänglicher Datensatz der sicheren Einheit

30 weitere Einheit

32 anfänglicher Datensatz der weiteren Einheit

33 neuer Zufallswert zur Erneuerung bzw. Aktualisierung des anfänglichen Datensatzes

40 weitere Einheit

42 anfänglicher Datensatz der weiteren Einheit