-
Technisches Gebiet
-
Die vorliegende Erfindung befasst sich mit Informationssicherheit (Security), spezifischer mit der Authentizität und Vertraulichkeit einer Kommunikation in einem verteilten System. In vielen Szenarien des sogenannten „Internet der Dinge“, wie z.B. für die Heimautomatisierung oder für Sensornetzwerke, kommunizieren kleine, ressourcenbeschränkte Geräte miteinander und teilen dabei potentiell kritische Informationen über die Geräte und über Personen in ihrem Umfeld. Verstärkt sind solche Geräte auch an Aktoren angeschlossen und ermöglichen eine oft drahtlose Steuerung kritischer Funktionen, z.B. in der Heimautomatisierung von Heizungen oder Spannungsquellen oder in der Industrieautomatisierung sogar die Steuerung ganzer Fertigungen.
-
Daher ist es bedeutend, die Authentizität einer Kommunikation (also die Eigenschaft, dass sie von einem bestimmten zulässigen Gerät stammt bzw. zwischen bestimmten zulässigen Geräten stattfindet) und die Vertraulichkeit einer Kommunikation (also die Eigenschaft, dass die Kommunikation nicht von unerwünschten Geräten abgegriffen werden kann) sicherzustellen.
-
Stand der Technik
-
Der Einsatz von physikalischen, unklonbaren Funktionen (physical unclonable functions oder PUF) für die Authentifizierung ist zum Beispiel aus der
DE 10 2010 038703 B3 und der
DE 10 2010 041447 A1 bekannt. In den nicht vorveröffentlichten Anmeldungen
DE 10 2014 208975 A1 sowie
DE 10 2014 209042 A1 sind Verfahren für die abgesicherte Kommunikation in einem verteilten System auf Basis von Kanaleigenschaften der verbundenen Einheiten beschrieben. Die letztgenannten Verfahren gehören zu den Ansätzen, die unter dem Schlagwort Physical Layer Security untersucht und entwickelt werden und mit Hilfe derer insbesondere Schlüssel für symmetrische Verfahren automatisch auf der Grundlage physikalischer Eigenschaften der Übertragungskanäle zwischen den involvierten Knoten erzeugt werden können. Dabei nutzt man die Reziprozität und die inhärente Zufälligkeit dieser Übertragungskanäle aus.
-
Offenbarung der Erfindung
-
Es wird ein Verfahren zur Absicherung eines Netzwerkes vorgeschlagen, bei dem ein erstes Teilnehmergerät des Netzwerks mit einem weiteren Gerät eine gemeinsame Anforderung aus physikalischen Eigenschaften des gemeinsamen Kommunikationskanals ermittelt und von diesem eine Antwort auf diese Anforderung erhält und bei dem das erste Teilnehmergerät die Anforderung zusätzlich über ein zweites Teilnehmergerät an das weitere Gerät übermittelt und von diesem zweiten Teilnehmergerät die entsprechende Antwort des weiteren Geräts ebenfalls empfängt. Die beiden Antworten können miteinander verglichen werden und somit kann durch das erste Gerät verifiziert werden, dass die beiden mit ihm kommunizierenden Geräte auch untereinander kommunizieren. Hierzu kann das gleiche Verfahren im Anschluss oder parallel auch mit vertauschten Rollen des weiteren Geräts und des zweiten Teilnehmergeräts zusätzlich durchgeführt werden.
-
Vorzugsweise werden die Antworten in den beschriebenen Challenge-Response-Verfahren durch die Geräte durch eine Messung physikalischer Eigenschaften der Geräte nach einer von der Anforderung abhängigen Anregung bestimmt. Dabei können insbesondere physikalische, unklonbare Funktionen ausgenutzt werden. Der Vorteil derartiger Challenge-Response-Verfahren ist die erhöhte Sicherheit und der niedrigere Verwaltungsaufwand gegenüber Verfahren, bei welchen die kompletten Challenge-Response-Informationen in beiden Geräten vorliegen müssen.
-
Alternativ können pseudozufällige Funktionen für die Challenge-Response-Verfahren eingesetzt werden, insbesondere wenn das Verfahren zusätzlich durch eine verschlüsselte Datenübertragung abgesichert ist. Der Einsatz pseudozufälliger Funktionen erlaubt eine ganz besonders günstige Realisierung der vorgeschlagenen Challenge-Response-Verfahren. Die Antworten auf die Anforderungen können entweder in den Geräten oder auf einem Datenbank-Server selbst berechnet werden. Falls die Kommunikation verschlüsselt abläuft, muss der verwendete Algorithmus auch nicht unbedingt geheim gehalten werden, da ein Angreifer dann die ausgetauchten Informationen nicht abhören kann. Dies würde eine Realsierung weiter vereinfachen.
-
Um das Netzwerk noch weiter abzusichern, kann das erste Gerät zumindest eines der beiden anderen Geräte über Challenge-Response-Verfahren auch noch authentisieren.
-
In besonders bevorzugten Ausführungen werden die vorgestellten Verfahren für Geräte eingesetzt, die miteinander drahtlos kommunizieren. Bei solchen Drahtlossystemen ist es besonders einfach, aus dem drahtlosen Kommunikationskanal geeignete Parameter für die Erstellung eines zwischen den Geräten geteilten Geheimnisses abzuleiten, wie es für die Ermittlung der Anforderung erforderlich ist.
-
Vorteilhafterweise sind alle für die Kommunikation zwischen den Geräten verwendeten Kommunikationskanäle über Verschlüsselungsalgorithmen kryptographisch abgesichert. Da in dieser Ausführung somit weder die Anforderungen noch die Antworten der Challenge-Response-Verfahren öffentlich werden, können Challenge-Response-Paare mehrfach verwendet werden. Es müssen somit weniger solcher Wertepaare vorgehalten werden, was die Organisation des Verfahrens vereinfacht. Das Verfahren wird dadurch zudem beschleunigt. In einer bevorzugten Ausgestaltung werden die Schlüssel für die kryptographische Absicherung über Methoden der Physical Layer Security, insbesondere also aus physikalischen Eigenschaften der beteiligten Kommunikationskanäle ermittelt. Diese Verfahren bieten im Vergleich zu herkömmlichen asymmetrischen Verschlüsselungsverfahren deutlich reduzierte Ansprüche an die benötigte Rechenleistung und im Vergleich zu herkömmlichen symmetrischen Verschlüsselungsverfahren, die in der Regel aufwendige Schlüsselverwaltung mit sich bringen, eine deutlich einfachere Implementierung. Durch die Verwendung der Physical Layer Security sowohl für die Ableitung von Informationen für die Challenge-Response-Verfahren als auch für die Absicherung der Kommunikation durch Verschlüsselung ergeben sich zudem Synergieeffekte für die beteiligte Hardware und Software.
-
Insgesamt sind die vorgeschlagenen Verfahren sehr robust, da sowohl die Challenge-Response-Verfahren als auch die Verschlüsselung auf Basis von physikalischen Eigenschaften realisiert werden können und nicht (allein) auf mathematischen Mechanismen beruhen. Mathematische Mechanismen beruhen auf mathematischen Konstruktionen (wie z.B. elliptischen Kurven), welche strukturelle Eigenschaften besitzen. Das Vorhandensein solcher strukturellen Eigenschaften birgt die Gefahr, dass eines Tages Algorithmen entdeckt werden, die diese mathematischen Mechanismen in polynomieller Zeit brechen (also lösen) können. Physik-basierte Mechanismen haben dagegen – in der praktischen Realisierung – keine strukturellen Eigenschaften, da Rauschen und Nichtlinearitäten das theoretische Verhalten stark verzerren. Mathematische Mechanismen könnten zudem durch die mögliche Verfügbarkeit deutlich stärkerer Rechenleistung (etwa Quantencomputer) in Zukunft angreifbarer werden.
-
Die beschriebenen Verfahren sind also einfach zu implementieren und auch für Geräte mit beschränkten Ressourcen (wie z.B. beschränkter Rechenleistung, beschränktem Speicher, beschränktem Energiespeicher) geeignet.
-
Neben den vorgestellten Verfahren betrifft die Erfindung auch Computerprogramme, die diese Verfahren durchführen, sowie Geräte und Systeme, auf denen die beschriebenen Verfahren ablaufen.
-
Zeichnungen
-
Nachfolgend ist die Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen und anhand von Ausführungsbeispielen näher beschrieben. Dabei zeigen
-
1 ein beispielhaftes Netzwerk mit mehreren Geräten als Teilnehmern und
-
2 schematisch ein beispielhaftes Verfahren zur Verifizierung von Kommunikationspartnern in einem Netzwerk.
-
Beschreibung der Ausführungsbeispiele
-
Um die Sicherheit eines wachsenden Netzwerks mit mehreren Teilnehmern zu gewährleisten, ist es wichtig, den Anschluss eines neuen Teilnehmers an das Netzwerk zu überwachen. Kommuniziert in einem solchen Netzwerk beispielsweise ein neu aufzunehmender Teilnehmer mit einem bereits vorhandenen Teilnehmer, sollte die Zulässigkeit dieser Kommunikation kontrolliert werden bzw. sollten die Teilnehmer an dieser Kommunikation verifiziert oder authentisiert werden. Das gilt insbesondere, wenn es sich bei dem Netzwerk um ein vermaschtes Netzwerk handelt, bei welchem der Neuanschluss eines Netzwerkteilnehmers nicht unbedingt über einen zentralen Knoten erfolgen muss.
-
Hierzu werden Verfahren vorgestellt, bei welchem ein Teilnehmergerät am Netzwerk sicherstellt, dass ein zweites Gerät wirklich mit einem bestimmten dritten Gerät kommuniziert, mit dem es glaubt, dass es kommuniziert, und nicht mit einem weiteren Gerät, das diese Identität z.B. nur vortäuscht. Ist das sichergestellt, dann kann das Teilnehmergerät z.B. den Verbindungsprozess zwischen dem zweiten und dem dritten Gerät initiieren. Der Gesamtprozess kann aktiv von einem der Geräte (vor allem vom Teilnehmergerät) ausgelöst werden, oder einfach durch die Tatsache, dass sich die verschiedenen Geräte in ausreichender Nähe zueinander befinden.
-
Hierbei können Challenge-Response-Verfahren eingesetzt werden, bei welchen die Antwort (Response) auf eine Anforderung (Challenge) durch Messungen physikalischer Eigenschaften auf eine von der Anforderung (Challenge) bestimmte Anregung hin bestimmt wird, insbesondere auf Basis physikalischer, unklonbarer Funktionen.
-
Dabei werden im Vorfeld mittels Messungen physikalischer Eigenschaften eines Systems Werte-Paare bestimmt, wobei jedes Werte-Paar einer Anregung des Systems und der entsprechenden Antwort des Systems entspricht. Sind die dabei zugrundeliegenden physikalischen Eigenschaften sehr schwer oder (zumindest mit realisierbarem Aufwand) gar nicht in einem nachgeahmten System nachzustellen, so dienen diese Werte-Paare quasi als Fingerabdruck des Systems, die zugrunde liegenden Eigenschaften werden oft als physikalische, unklonbare Funktionen (PUF) bezeichnet. Die Challenge-Response-Paare können für die Identifikation bzw. Authentisierung des Systems eingesetzt werden. Desweiteren können auch Challenge-Response-Mechanismen einsetzt werden, die auf einer Modellierung physikalischer, unklonbarer Funktionen (PUF) basieren. Ein Modell kann für jede Anfrage (Challenge) eine Antwort (Response) generieren, die zwar aufgrund von unvollkommener Modellierung in der Regel fehlerbehaftet ist, jedoch für den Zweck des Authentisierungsverfahrens ausreichend genau erzeugt werden kann.
-
Für die Verfahren können zudem von jeweils zwei Geräten gemeinsame Geheimnisse wie Schlüssel oder Anforderungen (Challenges) aus physikalischen Eigenschaften des gemeinsamen Kommunikationskanals abgeleitet und gegebenenfalls ausgehandelt werden. Aus physikalischen Eigenschaften ihres gemeinsamen Übertragungskanals ermitteln die Geräte dabei jeweils Werte, insbesondere eine Bitfolge, die sie dem jeweils ermittelten Geheimnis zugrunde legen. Dabei werden die Reziprozität und die inhärente Zufälligkeit des Übertragungskanals zwischen den beteiligten Geräten ausgenutzt. Dies kann im Detail beispielsweise ablaufen wie im Folgenden beschrieben.
-
Die zwei Geräte schätzen eine bestimmte Anzahl von Kanalparametern, evtl. auch über die Zeit. Diese Kanalparameter werden von beiden Geräten geeignet quantisiert. Vorzugsweise folgen dann Maßnahmen zur Rausch- bzw. Fehlerreduktion, z.B. durch Verwendung von fehlerkorrigierenden Codes.
-
Mit Hilfe geeigneter Mechanismen erfolgt dann ein Abgleich der quantisierten Kanalparameter zwischen den Geräten, vorzugsweise unter Verwendung eines öffentlichen Protokolls. Dies ist oft notwendig, da aufgrund von Messungenauigkeiten, Rauschen, Interferenzen, etc. beide Geräte im Allgemeinen zunächst keine identischen Parametersätze ermittelt haben. Der Abgleich sollte dabei derart gestaltet sein, dass ein potenzieller Angreifer, der die ausgetauschten Daten mithören kann, davon nicht ohne Weiteres auf die quantisierten Kanalparameter schließen kann. Hierzu können beispielsweise Paritätsbits zwischen den Geräten ausgetauscht werden. Optional können noch eine Validierung des geteilten Geheimnisses (z.B. eine Entropieabschätzung) und eine Verbesserung des so bestimmten, geteilten Parametersatzes bzw. der geteilten Bitfolge (z.B. durch Verdichtung über Hashwert-Bildung) durchgeführt werden. Schließlich verfügen beide Geräte auf Grundlage der derart quantisierten, verarbeiteten und abgeglichenen Kanalparameter über ein geteiltes Geheimnis.
-
Dabei wird angenommen, dass ein potenzieller Angreifer einen genügend großen Abstand zu den beiden Geräten hat, in denen das geteilte Geheimnis erzeugt werden soll. Der Abstand sollte dabei mindestens in der Größenordnung der so genannten Kohärenzlänge liegen, die bei den gängigen drahtlosen Kommunikationssystemen im Bereich von wenigen Zentimetern liegt. Damit sieht der Angreifer jeweils andere (unabhängige) Übertragungskanäle zu diesen beiden Geräten und kann nicht ohne weiteres dasselbe geteilte Geheimnis rekonstruieren.
-
Als Kanalparameter kommen z.B. durch den Übertragungskanal bedingte Phasenverschiebungen, Dämpfungen sowie daraus abgeleitete Größen in Frage. Der Received Signal Strength Indicator (RSSI) stellt z.B. einen gängigen Indikator für die Empfangsfeldstärke kabelloser Kommunikationsanwendungen dar und kann für diese Zwecke herangezogen werden. Zur Ermittlung der Kanalparameter können beiden Seiten bekannte Pilotsignalfolgen zwischen den Geräten übertragen werden, welche die nötigen Kanalschätzungen erleichtern.
-
Bei den beschriebenen Verfahren wird davon ausgegangen, dass die Übertragungskanäle zwischen den Geräten ausreichende Schwankungen ihrer Kanaleigenschaften aufweisen, um daraus geeignete Kanalparameter ableiten zu können, die sich als Grundlage für eine Generierung eines geteilten Geheimnisses in den Teilnehmern eignen (insbesondere ausreichende Zufallseigenschaften aufweisen). Diese Schwankungen können dabei insbesondere sowohl im Zeit- als auch im Frequenzbereich auftreten sowie bei Mehrantennensystemen auch im räumlichen Bereich. Es wird aber auch angenommen, dass die Kanaleigenschaften über kurze Zeitspannen eine ausreichend hohe Korrelation aufweisen, dass Datenübertragungen in beide Richtungen erfolgen können, aus denen die jeweiligen Geräte trotz zeitlichen Versatzes ausreichend gleiche Kanaleigenschaften abschätzen können, um ausreichend ähnliche Kanalparameter zu erhalten, aus denen gleiche geteilte Geheimnisse erhalten werden können. Das geteilte Geheimnis kann dann entweder direkt als Anforderung (Challenge) oder Schlüssel für eine Verschlüsselung herangezogen werden oder diesen Größen zumindest zugrunde gelegt werden.
-
Die beschriebenen Verfahren eignen sich zur Absicherung eines Netzwerks aus mindestens zwei Geräten, die untereinander vorzugsweise über drahtlose Kommunikationsverbindungen bzw. -kanäle kommunizieren. Die Geräte können dabei über Punkt-zu-Punkt-Verbindungen oder in einem Kommunikationsnetzwerk anderer Ausprägung miteinander verknüpft sein.
-
Ein möglicher Aufbau für ein Kommunikationsnetzwerk ist in 1 gezeigt. Dabei sind mehrere Geräte in einem Kommunikationsnetzwerk miteinander verknüpft, in dem gezeigten Ausführungsbeispiel die Teilnehmer 1, 2 und 4. Zudem ist ein dritter Teilnehmer 3 gezeigt, der wie in der Zeichnung angedeutet mit dem Netzwerk, z.B. über Verbindungen zu dem Teilnehmer 1 und dem Teilnehmer 2, verbunden werden soll bzw. möchte. Die Geräte 2, 3 und 4 sind insbesondere kleine, ressourcenlimitierte Sensor- oder Aktorknoten. Kontrolliert bzw. gesteuert werden können diese Teilnehmer 2 bis 4 z.B. über den ebenfalls im Netzwerk befindlichen Teilnehmer 1, der z.B. als Nutzerendgerät 1 ausgestaltet sein kann. Ein solches Nutzerendgerät 1 verfügt in der Regel über deutlich mehr Ressourcen (Rechenpower, Speicherplatz, Schnittstellen, Energie) und kann beispielsweise durch ein Smartphone, einen Tablet-Computer oder ähnliche Geräte realisiert sein. Zudem kann auch ein Datenbank-Server 10 vorgesehen sein, mit dem das Nutzerendgerät 1, z.B. über das Internet 11, verbunden ist. Der Datenbank-Server 10 kann insbesondere vom Hersteller des Nutzerendgeräts 1 oder einer anderen vertrauenswürdigen Instanz bereit gestellt werden und unter anderem auch für eine Online-Unterstützung des Nutzerendgeräts 1 verwendet werden.
-
Die Verfahren werden im Folgenden vorrangig anhand der drei Geräte 1, 2 und 3 aus 1 beschrieben, von denen das erste Gerät 1 verifizieren möchte, dass das zweite Gerät 2 und das dritte Gerät 3 wirklich miteinander kommunizieren und sich z.B. nicht ein unbefugtes weiteres Gerät in die Kommunikation eingeklinkt hat. Ein solches Szenario könnte z.B. relevant werden, wenn das dritte Gerät 3 sich wie gezeigt erst an ein vermaschtes Netzwerk anschließen möchte, in welchem sich das erste Gerät 1 und das zweite Gerät 2 bereits befinden. Mit Anschluss ist vorzugsweise gemeint, dass das dritte Gerät 3 nicht lediglich mit dem Netzwerk kommuniziert, sondern im Netzwerk als vertrauenswürdiger Kommunikationsteilnehmer registriert wird. Das erste Gerät 1 könnte hierbei die Aufgabe übernehmen, das abgesicherte Hinzufügen des dritten Gerätes 3 über eine Kommunikation mit dem zweiten Gerät 2 zu kontrollieren bzw. zu überwachen. Zudem könnte das Hinzufügen auch von dem ersten Gerät 1 initiiert werden. Wenn es sich bei dem ersten Gerät 1 um ein Nutzerendgerät handelt, kann dessen Beteiligung an der Hinzufügung neuer Teilnehmer in das existierende Netzwerk einem Nutzer die explizite Kontrolle darüber geben, welche Geräte in das Netzwerk aufgenommen werden können. Die Verfahren sind allerdings grundsätzlich dafür einsetzbar, durch ein erstes Gerät den Kommunikationspartner eines zweiten Gerätes zu verifizieren.
-
Die Erfindung wird im Folgenden für das eben skizzierte Szenario anhand von 2 beschrieben.
-
In einem optionalen Schritt 200 kann durch das erste Gerät 1 eine Abfrage von Challenge-Response-Paaren oder einer Challenge-Response-Funktion für eine Authentisierung von einem Datenbank-Server 10 erfolgen, mit welchem das erste Gerät 1 verbunden ist. Dieser Schritt ist notwendig, falls nicht nur verifiziert werden soll, dass ein zweites Gerät 2 tatsächlich mit einem dritten Gerät 3 kommuniziert, sondern das zweite Gerät 2 oder das dritte Gerät 3 auch authentisiert werden sollen. Entsprechend müssen die abgefragten Challenge-Response-Informationen für deren Authentisierung geeignet sein.
-
In Schritt 201 etablieren alle Geräte 1, 2, 3 untereinander vertrauliche Kommunikationskanäle. Das heißt, Gerät 1 baut einen vertraulichen Kommunikationskanal 12 mit Gerät 2 sowie einen vertraulichen Kommunikationskanal 13 mit Gerät 3 auf und Gerät 2 und 3 bauen ebenfalls einen vertraulichen Kommunikationskanal 23 untereinander auf. Dazu müssen die paarweise verknüpften Geräte jeweils über geeignete Schlüssel verfügen, um über eine Verschlüsselung der ausgetauschten Daten deren Vertraulichkeit gewährleisten zu können. Eine solche Verschlüsselung kann zum Beispiel über die oben beschriebenen Methoden der sogenannten Physical Layer Security erfolgen. Dabei erzeugen also jeweils zwei Geräte aus physikalischen Eigenschaften des gemeinsamen Kommunikationskanals gleiche Schlüssel, die einer vertraulichen Kommunikation zugrunde gelegt werden können.
-
In Schritt 202 werden in den Geräten 1, 2, 3 Anforderungen (Challenges) für Challenge-Response-Verfahren ermittelt. Das erste Gerät 1 ermittelt hierzu gemeinsam mit dem zweiten Gerät 2 eine erste geheime Anforderung (Challenge) aus den physikalischen Eigenschaften des gemeinsamen Kommunikationskanals 12 und ermittelt ebenfalls gemeinsam mit dem dritten Gerät 3 eine zweite Anforderung (Challenge) aus den physikalischen Eigenschaften des gemeinsamen Kommunikationskanals 13. Hierzu können wiederum die oben beschriebenen Methoden der Physical Layer Security eingesetzt werden.
-
Dadurch, dass die Anforderungen aus den physikalischen Eigenschaften der Kommunikationskanäle ermittelt werden, sind sie zu diesem Zeitpunkt noch nicht über irgendwelche Kommunikationskanäle übermittelt worden, können also nicht von einem Angreifer abgehört werden.
-
In Schritt 203 übermittelt das erste Gerät 1 die Anforderung (Challenge), die es ebenso wie das zweite Gerät 2 aus physikalischen Eigenschaften des gemeinsamen Übertragungskanals 12 mit dem zweiten Gerät 2 abgeleitet hat, an das dritte Gerät 3, und die Anforderung (Challenge), die es ebenso wie das dritte Gerät 3 aus physikalischen Eigenschaften des Übertragungskanals 13 mit dem dritten Gerät 3 abgeleitet hat, an das zweite Gerät 2. Das heißt die Anforderungen (Challenges), die bisher nur in den Geräten 1, 2, 3 ermittelt wurden, werden nun auch versendet. Hierzu werden die entsprechenden Nachrichten vorzugsweise verschlüsselt, damit ein Angreifer die Anforderungen (Challenges) nicht abfangen kann. Die Verschlüsselung erfolgt jeweils mit den gemeinsamen, geheimen Schlüsseln der Geräte 1, 2, 3 welche in Schritt 201 ausgehandelt wurden.
-
In Schritt 204 gibt das zweite Gerät 2 die vom ersten Gerät 1 in Schritt 203 empfangene Anforderung (Challenge) an das dritte Gerät 3 weiter und gibt das dritte Gerät 3 die vom ersten Gerät 1 in Schritt 203 empfangene Anforderung (Challenge) an das zweite Gerät 2 weiter. Das zweite Gerät ermittelt die Antwort (Response) auf die vom dritten Gerät 3 empfangene Anforderung (Challenge) und sendet diese an das dritte Gerät 3 zurück. Das dritte Gerät 3 ermittelt die Antwort (Response) auf die vom zweiten Gerät 2 empfangene Anforderung (Challenge) und sendet diese an das zweite Gerät 2 zurück. Dieser Austausch von Anforderungen (Challenges) und Antworten (Responses) erfolgt jeweils direkt über den gemeinsamen, vertraulichen Kommunikationskanal 23 zwischen dem zweiten Gerät 2 und dem dritten Gerät 3 und läuft vorzugsweise verschlüsselt ab.
-
Die dabei empfangenen Anforderungen (Challenges) sollten nun den bereits in den Geräten vorliegenden Anforderungen entsprechen, die diese jeweils in Schritt 202 aus dem gemeinsamen Kanal 12 bzw. 13 mit dem ersten Gerät abgeleitet hatten. Handelt es sich bei dem Gerät, mit dem das zweite Gerät 2 spricht, allerdings nicht um das dritte Gerät 3, mit welchem das erste Gerät 1 ebenfalls eine Verbindung hat und mit dem es in Schritt 202 die Anforderung (Challenge) abgeleitet hat, sondern um ein z.B. böswilliges weiteres Gerät, so werden sich diese Anforderungen zwangsläufig unterscheiden.
-
In Schritt 205 übermittelt das zweite Gerät 2 die vom dritten Gerät 3 im Schritt 204 erhaltene Antwort (Response) an das erste Gerät 1 und übermittelt das dritte Gerät 3 die vom zweiten Gerät 2 im Schritt 204 erhaltene Antwort (Response) an das erste Gerät 1. Die Übermittlung erfolgt wiederum verschlüsselt über die jeweiligen, direkten Kommunikationskanäle 12 bzw. 13 zu dem ersten Gerät 1.
-
In Schritt 206 senden das zweite Gerät 2 und das dritte Gerät 3 nun die intern abgeleiteten Antworten (Responses) für die in Schritt 202 gemeinsam mit dem ersten Gerät 1 aus physikalischen Eigenschaften des Übertragungskanals abgeleiteten Anforderungen (Challenges) an das erste Gerät 1. Die Antworten (Responses) werden wiederum über die direkten, vertraulichen Kommunikationskanäle 12 bzw. 13 zum ersten Gerät 1 verschlüsselt übertragen.
-
Geht man wie in Schritt 204 beschrieben davon aus, dass es sich bei den in Schritt 202 abgeleiteten Anforderungen (Challenges) um die gleichen handelt, wie bei den in Schritt 204 empfangenen, so wird hierbei ebenfalls die gleiche (oder bei Unsicherheit-behafteten Challenge-Response-Verfahren die weitgehend gleiche) Antwort (Response) ermittelt. Anders sieht es aus, wenn die beiden Geräte 2 und 3, mit denen das erste Gerät 1 kommuniziert, nicht die beiden Geräte sind, die auch miteinander kommunizieren wollen, sondern sich z.B. ein weiteres, böswilliges Gerät in die Kommunikation eingeklinkt hat.
-
Im Schritt 207 vergleicht nun das erste Gerät 1 die in Schritt 206 vom zweiten Gerät 2 erhaltene Antwort (Response) mit der in Schritt 205 vom dritten Gerät 3 erhaltenen Antwort (Response) und vergleicht die in Schritt 206 vom dritten Gerät 3 erhaltene Antwort (Response) mit der in Schritt 205 vom zweiten Gerät 2 erhaltenen Antwort (Response).
-
Wie zu den Schritten 204 und 206 ausgeführt, ergibt der Vergleich, dass die verglichenen Antworten (Responses) (ausreichend) miteinander übereinstimmen, falls es sich bei den beiden Geräten 2 und 3, mit denen das erste Gerät 1 jeweils über einen vertraulichen Kanal 12 bzw. 13 kommuniziert, auch um die beiden Geräte handelt, die miteinander kommunizieren. Es kann dann davon ausgegangenen werden, dass diese beiden Geräte ebenfalls einen sicheren, vertraulichen Kanal teilen. Ergibt einer der Vergleiche ungleiche Antworten (Responses), so muss befürchtet werden, dass sich ein weiteres, möglicherweise böswilliges Gerät an das Netzwerk anbinden möchte. In diesem Fall könnte das erste Gerät 1 entweder einen entsprechenden Warnhinweis an eines der Geräte senden (beispielsweise an das zweite Gerät 2 für den oben beschriebenen Fall, dass das dritte Gerät 3 neu an das Netzwerk angebunden werden soll), oder das erste Gerät 1 kann eine weitere Anbindung eines der Geräte nicht weiter unterstützen oder sogar aktiv verhindern. Das gilt vor allem, wenn das erste Gerät 1 wie beschrieben eine besondere Stellung im Netzwerk innehat, z.B. als Nutzerendgerät eine Kontrolle über das Netzwerk ausübt.
-
Bis zu diesem Schritt hat das erste Gerät 1 überprüft bzw. sichergestellt, dass die beiden Geräte 2 und 3, mit denen es abgesicherte Kommunikationskanäle 12 und 13 unterhält, auch untereinander (abgesichert) kommunizieren. Um nun auch noch sicherzustellen, dass es sich bei einem der Geräte (insbesondere bei einem neu an das Netzwerk anzubindenden Gerät 3) um ein bestimmtes (insbesondere zulässiges) Gerät handelt, also um dieses zu authentisieren, ist der optionale Schritt 208 vorgesehen, welcher vorzugsweise an den optionalen Schritt 200 anknüpft. Mit im ersten Gerät 1 vorliegenden Challenge-Response-Paaren oder Challenge-Response-Funktionen können das zweite Gerät 2 und/oder das dritte Gerät 3 authentisiert werden. Dazu können entweder die bereits durch das erste Gerät 1 in den Schritten 205 und 206 erhaltenen Antworten (Responses) herangezogen werden oder neue Challenge-Response-Schleifen mit den zu authentisierenden Geräten absolviert werden. Das Gerät 1 schickt im letzteren Fall eine Anforderung (Challenge) an das zu authentisierende Gerät 2 oder Gerät 3 und authentisiert es bei korrekter Antwort (Response). Vorzugsweise wird für die Authentisierung wiederum auf Challenge-Response-Verfahren unter Verwendung physikalischer, unklonbarer Funktionen (PUF) zurückgegriffen.
-
Verläuft der Vergleich in Schritt 207 positiv und ist auch die optional vorgesehene Authentisierung erfolgreich, so kann das erste Gerät 1 die weitere Anbindung eines anzubindenden Geräts unterstützen oder initialisieren oder allgemeiner die weitere Kommunikation zwischen dem zweiten Gerät 2 und dem dritten Gerät 3 freigeben.
-
Das zweite Gerät 2 und das dritte Gerät 3 verfügen nach Schritt 201 über einen gemeinsamen Schlüssel, welchen sie bei ihrer weiteren Kommunikation für verschiedene kryptographische Ziele wie Vertraulichkeit, Nachrichtenauthentisierung, Integritätssicherstellung usw. nutzen können. Auch können das zweite Gerät 2 und das dritte Gerät 3 wiederum das erste Gerät 1 als zulässig authentisieren. Zudem ist es besonders vorteilhaft, wenn das zweite Gerät 2 und das dritte Gerät 3 nach einer erfolgreichen Freigabe durch das erste Gerät 1 untereinander Challenge-Response-Informationen austauschen. Mit diesen können sie sich zukünftig authentisieren und sind z.B. nach einer späteren Trennung und folgenden Wiederanbindung nicht auf eine Unterstützung durch das erste Gerät 1 angewiesen.
-
Die beschriebene Reihenfolge der Schritte entspricht einer bevorzugten Ausführung des Verfahrens. Allerdings ist der Ablauf in dieser Reihenfolge nicht zwingend. Z.B. könnte Schritt 206 auch bereits direkt nach Schritt 202 oder auch nach Schritt 203 erfolgen.
-
In der beschriebenen, bevorzugten Ausführung wird durch das erste Gerät 1 sowohl überprüft, dass es sich um das dem ersten Gerät 1 bekannte dritte Gerät 3 handelt, mit dem das zweite Gerät 2 kommuniziert, als auch, dass es sich um das dem ersten Gerät 1 bekannte zweite Gerät 2 handelt, mit dem das dritte Gerät 3 kommuniziert. In alternativen Ausführungen kann auch nur eines dieser Ziele abgedeckt werden, z.B. nur erste Ziel, indem das erste Gerät 1 in Schritt 202 nur mit dem dritten Gerät 3 eine Anforderung (Challenge) aushandelt, im Schritt 203 lediglich diese Anforderung (Challenge) an das zweite Gerät 2 sendet, im Schritt 204 nur das zweite Gerät 2 die Anforderung (Challenge) an das dritte Gerät 3 sendet und die entsprechende Antwort (Response) von diesem zurück erhält, und das zweite Gerät 2 die Antwort (Response) im Schritt 205 an das erste Gerät 1 sendet. Diese Antwort (Response) kann das erste Gerät 1 dann im Schritt 207 mit der Antwort (Response) vergleichen, die es in Schritt 206 vom dritten Gerät 3 erhalten hat.
-
Anstelle der beschriebenen PUF-Authentisierungsverfahren können für die diversen Challenge-Response-Verfahren insbesondere bei Verschlüsselung der entsprechenden Kommunikationen auch pseudozufällige Funktionen (Pseudo Random Funktion PRF) eingesetzt werden. Da dann sowohl die Anforderung (Challenge) als auch die Antwort (Response) über vertrauliche Kanäle übermittelt werden, aus denen ein Angreifer keine Informationen gewinnen kann, können pseudozufällige Funktionen ausreichend sicher sein. Als Pseudo-Zufallsfunktionen kommen z.B. verschlüsselte Streuwertfunktionen oder Message Authentication Codes (z.B. HMAC) in Frage. Das anfordernde Gerät benötigt in diesem Fall keine vorliegenden Challenge-Response-Paare zur Verifizierung der korrekten Antwort (Response) auf eine Anforderung (Challenge), sondern kann diese selbst mithilfe der pseudozufälligen Funktionen berechnen.
-
Eingesetzt werden können die vorgeschlagenen Authentisierungsverfahren beispielsweise in drahtlos kommunizierenden Kleinstsensoren und in Sensornetzwerken der Heimautomatisierung.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- DE 102010038703 B3 [0003]
- DE 102010041447 A1 [0003]
- DE 102014208975 A1 [0003]
- DE 102014209042 A1 [0003]