-
Hintergrund der Erfindung
-
In vielen Anwendungen der Netzwerktechnik ist eine Ende-zu-Ende-Verschlüsselung erwünscht, um ein Ausspähen von Daten, welche von einem Kommunikationspartner an einen anderen Kommunikationspartner versandt werden, zu verhindern.
-
Allerdings gibt es immer noch zahlreiche Angriffsmöglichkeiten. Bekannte Angriffsmöglichkeiten setzen z.B. ein Replay, bei dem bereits eingegebenen Daten abgefangen und wiederholt werden, oder eine sogenannte Man-in-the-Middle-Attack ein, bei der Proxyartig einem Nutzer Daten eines anderen Nutzers angezeigt werden, um so an gewünschte Informationen zu gelangen.
-
Um eine sichere Verschlüsselung zwischen zwei Kommunikationspartnern zu ermöglichen kann in aller Allgemeinheit festgestellt werden, dass unabhängig von der verwendeten Schlüsseltechnologie es notwendig ist, dass beide Kommunikationspartner über einen Schlüssel verfügen.
-
Heutige Lösungen bringen diesen Schlüssel z.B. unabhängig vom eigentlichen Netzwerkprotokoll seitens des Benutzers in das System ein. Ein Beispiel hierfür ist der WLAN WPA Schlüssel, der von einem Benutzer am jeweiligen WLAN Access Point z.B. bei der Inbetriebnahme eigegeben wird, und anschließend auch in jedem sich mit dem WLAN Access Point sich verbindenden WLAN Client eingetragen werden muss.
-
Alternativ dazu existieren auch Lösungen auf Basis der Public-Key-Exchange Technik. Hierbei wird ein Schlüsselpaar auf einem der Kommunikationspartner erzeugt und über einen sicheren Kanal zum anderen Partner übertragen. Prinzipbedingt ist es hierbei allerdings erforderlich, die Authentizität des anderen Partners zu prüfen, damit der Schlüsselaustausch nicht versehentlich mit einem „man-in-the-middle“ Angreifer durchgeführt wird. In der Praxis werden meist Modelle eingesetzt, in denen der Benutzer auf beiden Seiten der Verbindung eine Eingabe erbringen muss, beispielsweise durch einen Knopfdruck, wie z.B. dem „Pairing Button“ beim sogenannten WiFi Protected Setup (WPS) oder durch eine PIN-Eingabe, wie sie z.B. bei Bluetooth Verwendung findet.
-
Allerdings sind diese Vorgänge aus Benutzersicht sehr aufwändig und daher werden diese Verfahren häufig nur eingeschränkt oder sinnlos verwendet.
-
Beispielsweise ist bei Bluetooth-Pairing es häufig anzutreffen, dass relativ einfache PIN-Konfigurationen vorgegeben sind, beispielsweise 0000, 1234, 6789, 9876. Bei WLAN-system wird häufig nur der vom Hersteller eines Access Points vorgegeben WLAN-Schlüssel beibehalten und verbleibt dauerhaft. Auch ein erneutes „Pairing“ mit geänderten Schlüsseln wird häufig nicht durchgeführt, da dieses zeitaufwändig an allen WLAN Clients durchgeführt werden müsste.
-
Daher bleibt der an sich mögliche Sicherheitseffekt häufig aus, sodass ein gewünschtes Sicherheitsniveau nicht erreicht werden kann.
-
Die Anmelderin hat ein neuartiges Netzwerksystem entworfen. Dieses ist unter anderem Gegenstand einer weiteren Patentanmeldung (
DE 10 2014 212 037.3 ), die am gleichen Anmeldetag wie diese Anmeldung eingereicht wurde.
-
Dieses Netzwerksystem weist zumindest einen ersten Endpunkt und einen zweiten Endpunkt und zumindest eine zentrale Instanz innerhalb des Netzwerkes auf. Die ersten Endpunkte haben über einen oder mehrere Zugangsknoten Zugang zum Netzwerksystem, wobei ein gleichzeitiger Zugang über mehr als einen Zugangsknoten durch Endpunkte möglich ist. Die zentrale Instanz innerhalb des Netzwerkes übernimmt das Routing von Daten dem ersten Endpunktes an den zweiten Endpunkt, wobei Daten des ersten Endpunktes, welche sowohl vom einem ersten Zugangsknoten als auch einem zweiten Zugangsknoten an die zentrale Instanz weitergeleitet wurden, von der zentralen Instanz als Doublette erkannt werden und nur einmal an den zweiten Endpunkt versandt werden. Das Netzwerksystem ist nicht an eine bestimmte Zugangstechnologie gebunden und kann somit mit leitungslosen als auch leitungsgebunden Netzwerken verwendet werden.
-
Kurzdarstellung der Erfindung
-
Auch in diesem Netzwerksystem wäre es wünschenswert eine sichere Ende-zu-Ende Verschlüsselung anbieten zu können.
-
Die Aufgabe wird gelöst durch ein erfindungsgemäßes Netzwerksystem mit Ende-zu-Ende Verschlüsselung. Das Netzwerksystem weist zumindest einen ersten Endpunkt und einen zweiten Endpunkt und zumindest eine erste zentrale Instanz innerhalb des Netzwerkes auf. Die ersten Endpunkte haben über einen oder mehrere Zugangsknoten Zugang zum Netzwerksystem, wobei die erste zentrale Instanz innerhalb des Netzwerkes das Routing von Daten des ersten Endpunktes an den zweiten Endpunkt übernimmt. Weiterhin weist das Netzwerk zumindest eine zweite zentrale Instanz innerhalb des Netzwerkes auf, welche Schlüsseldaten jedes Endpunktes speichert.
-
In einer Ausführungsform der Erfindung wird zusätzlich zu einem ersten symmetrischen Verschlüsselungssystem auf Basis der Schlüsseldaten der Endpunkte weiterhin eine asymmetrische Verschlüsselung auf Basis einer gemeinsamen Zeitbasis zur Verfügung gestellt, wobei die gemeinsame Zeitbasis durch eine dritte Instanz, bevorzugt innerhalb des Netzwerkes, zur Verfügung gestellt wird.
-
Gemäß einer Fortbildung dieser Ausführungsform wird die Zeitbasis über einen Challenge-Handshake verifiziert.
-
In einer alternativen Ausführungsform werden für eine Kommunikation zwischen dem ersten Endpunkt und dem zweiten Endpunkt ohne Routing über die zentrale Instanz temporär gültige Schlüssel durch die zweite Instanz auf Basis der jeweiligen Schlüsseldaten des ersten und des zweiten Endpunktes erstellt und dem ersten und dem zweiten Endpunkt zur Verfügung gestellt.
-
Gemäß einer Fortbildung dieser Ausführungsform der Erfindung werden die temporär gültigen Schlüssel für die Kommunikation zwischen dem ersten Endpunkt und dem zweiten Endpunkt auf Basis einer gemeinsamen Zeitbasis zur Verfügung gestellt, wobei die gemeinsame Zeitbasis durch eine dritte Instanz, bevorzugt innerhalb des Netzwerkes, zur Verfügung gestellt wird.
-
Kurzdarstellung der Figuren
-
Nachfolgend wir die Erfindung näher unter Bezugnahme auf die Figur erläutert werden, in der
-
1 ein schematisches Beispiel eines Netzwerkes zeigt, in dem die Erfindung verwendet werden kann.
-
Ausführungsformen und Aspekte der Erfindung werden nachfolgend unter Bezug auf 1 erläutert werden.
-
Soweit nachfolgend der Singular verwendet wird ist in aller Regel auch der Plural mit umfasst. Weiterhin, soweit nachfolgend Ausführungsformen dargestellt werden sind jegliche Aspekte einer Ausführungsform ohne weiteres auch in anderen Ausführungsformen verwendbar, soweit nichts explizit als Alternative ausgeschlossen.
-
In einem Netzwerksystem gemäß Ausführungsformen der Erfindung können eine Vielzahl von Endpunkten N1, N2, N3, N4, N5, N6 miteinander verbunden werden.
-
Dabei ist in 1 nur eine beispielhafte Anzahl von Endpunkten gezeigt und die Erfindung ist keinesfalls auf diese Anordnung beschränkt.
-
Dabei wird in einem erfindungsgemäßen Netzwerksystem zumindest eine zentrale Instanz ZI vorgesehen, deren Funktion nachfolgend eingehender erläutert werden wird.
-
Die Endpunkte sind untereinander über Zugangsknoten G1, G2, G3 mit Zugang zum Netzwerksystem versehen. Dabei können die einzelnen Endpunkte mit einem oder mehreren Zugangsknoten G1, G2, G3 Verbindung zum Netzwerksystem aufnehmen. Beispielsweise kann in 3 der Endpunkt N6 sowohl über den Zugangsknoten G1 als auch den Zugangsknoten G3 Zugang zum Netzwerksystem erhalten. Ebenso kann der Endpunkt N3 über Repeater R1 bzw. R2 über den Zugangsknoten G2 als auch den Zugangsknoten G3 Zugang zum Netzwerksystem erhalten.
-
Innerhalb des Netzwerksystems übernimmt die zentrale Instanz ZI im Allgemeinen das Routing von Daten irgendeinem der Endpunkte (Quellen-Endpunkt) an irgendeinen anderen Zielpunkt (Senken-Endpunkt). Beispielsweise kann von einem ersten Endpunkt N6 eine Nachricht an den zweiten Endpunkt N2 so vorgenommen werden, dass die Daten über die Zugangsknoten G1 als auch G3 entgegengenommen wird und an die zentrale Instanz ZI weitergereicht wird. Die zentrale Instanz erkennt das Ziel der Daten und leitet diese über den Zugangsknoten G2 an den zweiten Endpunkt N2 weiter. Dabei kommt es auf die weitere Gestaltung des Netzwerkes, welches als Wolke Cl dargestellt ist, für das weitere Verständnis der Erfindung nicht an.
-
Für weitere Details der Eigenschaften eins Netzwerksystems der oben beschriebenen Art, wird explizit auf die
DE 10 2014 212 037.3 der Anmelderin verwiesen, die insoweit als Bestandteil der Anmeldung anzusehen ist.
-
In derartigen Netzwerksystemen kann eine Ende-zu-Ende-Verschlüsselung dadurch erreicht werden, dass eine zweite zentrale Instanz ZIS innerhalb des Netzwerkes vorgesehen wird, welche Schlüsseldaten jedes Endpunktes speichert.
-
Diese zweite zentrale Instanz ZIS muss dabei nicht notwendigerweise eine physikalisch von der ersten zentralen Instanz ZI getrennte Einrichtung sein, sondern kann auch in diese integriert sein. Insofern ist die Bezeichnung erste und zweite zentrale Instanz lediglich als Unterscheidung der Funktionalitäten zu sehen.
-
Dabei macht sich die Erfindung die Eigenschaft zu nutze, dass das Netzwerk und das zugehörige Netzwerkprotokoll eine zentrale Instanz ZI bereitstellt, die eine Kommunikation prinzipiell jedes Endpunkts mit jedem anderen Endpunkt ermöglichen kann.
-
Eine weitere Eigenschaft des Netzwerksystems ist, dass die zentrale Instanz ZI eine ständig verfügbare Instanz darstellt, die sämtliche mögliche Endpunkte bereits „a priori“ kennt.
-
Insofern kann die Schlüsselarchitektur besonders einfach implementiert werden.
-
Beispielsweise können die Schlüssel für die einzelnen Endpunkte bereits zum Zeitpunkt der Produktion der jeweiligen Endpunkte festgelegt und in der zweiten zentralen Instanz ZIS gespeichert werden. Insofern ist keine weitere Tätigkeit des Endbenutzers mehr erforderlich. Somit ist der Endpunkt mit dem Eintrag in der zweiten zentralen Instanz ZIS letztendlich auch schon gepairt. Insofern bedarf es keines weiteren Pairings weder im Netzwerkprotokoll noch aus sonstigen sicherheitstechnischen Überlegungen heraus.
-
Weiterhin verläuft nun auch die Kommunikation über die Zugangspunkte verschlüsselt. Die Zugangspunkte benötigen außer einer Verbindung zu den zentralen Instanzen ZI, ZIS keine weitere Kenntnis des Inhaltes der Kommunikation. D.h. jegliche Daten werden verschlüsselt für das weiter Routing an ein Ziel innerhalb bzw. außerhalb des Netzwerkes verschlüsselt übertragen.
-
In der oben aufgezeigten Schlüsselarchitektur ist jedoch auch ein nachträglicher Austausch von Schlüsseln möglich.
-
Hierbei wird ein besehender Schlüssel zur Absicherung des Datenkanals für die Übertragung des neuen Schlüssels verwendet. Dieses Verfahren kann z.B. angewendet werden, wenn die Vertraulichkeit des bisherigen Schlüsselmaterials nicht mehr sichergestellt ist. Findet die Initialisierung des neuen Schlüssels in einer „sicheren Umgebung“ statt, kann der mit neuem Schlüsselmaterial ausgerüstete Endpunkt anschließend wieder als „sicher“ gelten.
-
Zum Schutz gegen bestimmte Angriffsmuster, wie beispielsweise Wiederholungsangriffe („re-play"), ist die Verschlüsselung mit einem typischerweise symmetrischen Schlüsselverfahren häufig nicht ausreichend. Hier können zusätzliche Maßnahmen, wie z.B. Salt, Initialisierungsvektoren und dergleichen Abhilfe bereitstellen.
-
Dies ist in System aus dem Stand der Technik häufig schwierig, da beispielsweise nur eine unzureichende einheitliche Zeitbasis zur Verfügung steht oder die Verfügbarkeit kryptographisch sicherer Zufallsfunktionen nicht gewährleistet ist.
-
Insofern erlaubt das Netzwerksystem, das zusätzlich zu einem ersten symmetrischen Verschlüsselungssystem auf Basis der Schlüsseldaten der Endpunkte weiterhin eine asymmetrische Verschlüsselung auf Basis einer gemeinsamen Zeitbasis zur Verfügung gestellt wird, wobei die gemeinsame Zeitbasis durch eine dritte Instanz ZIt innerhalb des Netzwerkes zur Verfügung gestellt wird.
-
Diese dritte Instanz ZIt muss dabei nicht notwendigerweise eine physikalisch von der ersten zentralen Instanz ZI bzw. der zweiten zentralen Instanz getrennte Einrichtung sein, sondern kann auch in diese integriert sein. Insofern ist die Bezeichnung erste und zweite zentrale Instanz und dritte Instanz lediglich als Unterscheidung der Funktionalitäten zu sehen.
-
Auch ist es möglich die dritte Instanz ZIt verteilt im Netzwerk Cl bereitzustellen, solange die notwendige Synchronität gewährleistet ist. Ohne weiteres kann auch vorgesehen sein, dass die Zeitbasis mittels anderer Techniken, wie z.B. Funk bereitgestellt wird.
-
Dabei ist jedoch eine netzwerkinterne Bereitstellung bevorzugt. Dann können die Endpunkte z.B. über die Zugangspunkte die gemeinsame Zeitbasis abfragen. Nunmehr ist es möglich z.B. Zeitstempel als kryptographisch starke Initialisierung der Verschlüsselungsalgorithmen zu verwenden (z.B. AES Counter Mode).
-
Dabei ist eine Manipulation der Zeitbasis ZIt innerhalb des Netzwerkes für Angreifer von außen nicht möglich. Insbesondere können die übertragenen Zeitstempel über ein seitens des Endpunkts über das Netzwerk geführtes Challenge-Handshake verifiziert und damit ebenfalls manipulationssicher ausgeführt werden.
-
In bestimmten Anwendungsfällen kann eine „lokale Kommunikation“ z.B. zwischen Endpunkten, welche z.B. mit einem gemeinsamen Zugangsknoten in Verbindung stehen, gewünscht sein. Dies kann z.B. aus Erwägungen der Netzwerklast sinnvoll sein, oder aber falls die für das Routing ansonsten zuständige erste zentrale Instanz ZI temporär nicht verfügbar oder überlastet ist.
-
Beispielsweise könnte in 1 der Endpunkt N6 mit dem Endpunkt N4 über den Zugangsknoten G3 und einem eventuell notwendigen Repeater R2 mit den Endpunkten N3 bzw. N4 in Kontakt treten, ohne dass es dazu einer Verbindung über die erste zentrale Instanz ZI bedürfte.
-
Eine Möglichkeit diese Kommunikation Ende-zu-Ende verschlüsselt zu ermöglichen, ist die Weitergabe des jeweiligen Endpunkte-Schlüssels an diejenigen Partner-Endpunkte, die in der lokalen Kommunikation involviert sind.
-
Ein solcher Schlüsseltausch birgt jedoch die Gefahr, dass kompromittierte Endpunkte nunmehr in den Besitz einer Vielzahl von Schlüsseln gelangen könnten.
-
Um dies zu vermeiden, kann für diesen Fall vorgesehen sein, dass temporär beschränkte Schlüssel für die lokale Kommunikation verwendet werden. Diese Schlüssel können z.B. innerhalb des Netzwerkes Cl von einer geeigneten Einrichtung, z.B. der zweiten zentralen Instanz ZIs, erstellt werden und den jeweiligen Endpunkten zur Verfügung gestellt werden. Diese temporär gültigen Schlüssel können z.B. auf Basis der jeweiligen Schlüsseldaten des ersten und des zweiten Endpunktes erstellt und dem ersten und dem zweiten Endpunkt zur Verfügung gestellt werden.
-
Weiterhin können die temporär gültigen Schlüssel für die Kommunikation zwischen dem ersten Endpunkt und dem zweiten Endpunkt zusätzlich zu einem ersten symmetrischen Verschlüsselungssystem auf Basis einer bzw. der gemeinsamen Zeitbasis zur Verfügung gestellt werden, wobei die gemeinsame Zeitbasis durch eine bzw. die dritte Instanz, bevorzugt innerhalb des Netzwerkes, zur Verfügung gestellt wird.
-
Auf diese Weise können temporär gültige Schlüssel mit verschiedenen Lebensdauern erzeugt werden. Beispielsweise kann die Gültigkeit in Bezug auf die Zeitbasis einige Tage, Stunden, Minuten oder auch Sekunden betragen. Insofern kann eine nahezu stufenlose Optimierung in Bezug auf die Sicherheit in Abwägung der möglichen Zeitdauer einer Kompromittierung bereitgestellt werden.
-
Zeigt es sich, dass die verschlüsselte Kommunikation innerhalb eine gewissen Zeit entschlüsselt werden könnte, so kann z.B. vorgesehen werden, dass die Gültigkeit der temporären Schlüssel immer entsprechend geringer eingestellt wird.
-
Ein mögliches Verfahren zur Bildung des temporären Schlüssels ist die Verwendung eines Hash- oder Verschlüsselungsverfahren z.B. auf eine Verknüpfung des ursprünglichen Schlüsselmaterials und der Zeitbasis.
-
Beispielsweise könnte mit nachfolgendem Verfahren eine solche Funktion bereitgestellt werden. Die Zeitbasis ergibt sich z.B. aus der aktuellen Zeit, welche von der dritten Instanz ZIt bereitgestellt wurde in einer gerundeten Divisions-Operation mit dem Gültigkeitsintervall. Hieraus wird über eine crpto_hash Funktion, die auf den ursprünglichen Schlüssel und die zuvor gewonnene Zeitbasis operiert, der temporäre Schlüssel erstellt.
-
Als Programm-Source-Code könnte dies wie folgt dargestellt werden
time_base = round(current_time/base_interval)
temp_key = crypto_hash(original_key, time_base)
-
Dabei kann z.B. die zweite Instanz ZIs den dann lokalen Kommunikationspartnern die temporären Schlüssel zur Verfügung zu stellen. Die zweite Instanz ist dabei in aller Regel in der Lage die Dauer einer korrekten lokalen Kommunikation zu erkennen kann daher entsprechend lange gültige Schlüssel generieren und verteilen. Weiterhin kann die zweite Instanz aber auch z.B. die Herausgabe von temporären Schlüsseln protokollieren und überwachen, sodass keine unnötigen Schlüssel herausgegeben werden.
-
Bezugszeichenliste
-
-
- N1, N2, N3, N4, N5, N6, N7, N8, N11, N12
- Endpunkt
- G1, G2, G3
- Zugangsknoten
- ZI, ZIS, ZIt
- zentrale Instanz
- R1, R2
- Repeater
- C
- Koordinator
- Cl
- Netzwerk
-
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 102014212037 [0009, 0026]