-
Die Erfindung betrifft ein kryptographisches Verfahren, zum sicheren und autorisierten Anmelden und Authentifizieren von beispielhaft IoT-Geräten (102) oder sonstigen IT-Geräten, unter Verwendung von Geheimnissen und durch den Austausch geheimer Schlüssel, beispielhaft in Funk-Netzwerken.
-
Das „Internet of Things“ (IoT) gewinnt zunehmend Einfluss auf unsere Umwelt; es entstehen tägliche neue Anwendungen und es werden neue Geräte auf dem Markt angeboten, die in allen Bereichen der Technik aber auch im persönlichen Umfeld ihre Anwendung finden.
-
Es ist bekannt, dass diese Geräte immer intelligenter werden und immer anspruchsvollere Funktionen bei gleichzeitig immer geringerem Energiebedarf ermöglichen, so dass diese Geräte leider auch vielfältig durch Ihre Hersteller oder Dritte (300) missbraucht werden können.
-
Es ist ebenfalls bekannt, dass bis heute der Aspekt der Sicherheit bei Herstellern und Anwendern nicht überall in den IoT-Geräten in entsprechende Maßnahmen umgesetzt wird, so das durch ungeschützte oder nachgebaute Geräte (300) das illegale Abhören oder Beobachten der Umgebung, die Aufzeichnung der gesendeten Daten oder das Ausführen von falschen oder gefährlichen Interaktionen mit der Umgebung ermöglicht wird.
-
Die Sicherheit innerhalb eines solchen IoT-Netzwerkes wird zusätzlich durch den Umstand gefährdet, dass die Übertragung über mehrere Komponenten und Verbindungsstrecken erfolgen kann, somit stehen einem potentiellen Eindringling mehrere Möglichkeiten beispielhaft zum Abhören der Funkstrecken, für einen „man in the middle“ Angriff oder durch den Einsatz von unautorisierten Geräten, auf die Sicherheit des Systems zur Verfügung.
-
Es ist ebenfalls bekannt, dass um Missbrauch zu Verhindern und Übertragungsfehler zu erkennen, in diesen IT-Netzwerken im Wesentlichen die folgenden 5 Schutzziele implementiert sein müssen:
- Vertraulichkeit (confidentiality) - es gibt keine unautorisierte Informationsgewinnung durch Dritte,
- Integrität (integrity) - es ist Dritten unmöglich die Daten innerhalb des Netzwerkes unautorisiert und unbemerkt zu manipulieren,
- Verfügbarkeit (availability) - authentifizierte und autorisierte Teilnehmer im Netzwerk werden bei der Wahrnehmung ihrer Berechtigungen nicht durch unautorisiert Dritte beeinträchtigt,
- Authentifizierung (authenticity) - es wird sichergestellt, dass Daten und Informationen wirklich aus der angegebenen Quelle stammen und das die Identitäten der verschiedenen Teilnehmer am Netzwerk auch korrekt und autorisiert sind,
- sowie Verbindlichkeit (non-repudiation) - nicht-Ab Streitbarkeit bedeutet, dass von Teilnehmern im Netzwerk durchgeführte Aktionen nachweisbar sind und im Nachhinein nicht geleugnet werden können.
-
Es ist ebenfalls bekannt, dass um diese Schutzziele [0006] zu gewährleisten der Zugang zu IoT- oder sonstigen IT-Netzwerden nur autorisierten und authentifizierten Teilnehmern ermöglicht wird und die Datenübertragung über die Verbindungsstrecken mit geeigneten Maßnahmen verschlüsselt wird, so werden im Umfeld der Datenverarbeitung in Verbindung mit dem Internet oder der Cloud beispielhaft Methoden wie HTTPS und TLS eingesetzt um diese Schutzziele [0006] zu erreichen.
-
Es ist ebenfalls bekannt, das die Umsetzung dieser Schutzziele [0006] beispielhaft durch Verschlüsselung der versendeten Daten mit verschiedenen erprobten und allgemein zugänglichen Verschlüsselungsalgorithmen, wie beispielhaft Tripple DES, RSA, Blowfish, Twofish und AES mit den hierfür benötigten öffentlichen Zertifikaten, dem Austausch von symmetrischen oder asymmetrischen Schlüsseln und der Authentifizierung der Daten durch geeignete Methoden wie z.B. SHA256, HMAC und sonstiger Signaturverfahren durchgeführt wird.
-
Es ist ebenfalls bekannt, dass diese Verfahren seit Jahren erprobt und bis jetzt weitestgehend als sicher zu betrachten sind. Allerdings sind die meisten dieser Methoden, insbesondere unter Verwendung von asymmetrischen Schlüssen und unter Verwendung von Zertifikaten, relativ aufwendig in der Anwendung und benötigen somit große Mengen an Speicher und Rechenzeit. Sie können aber im normalen IT-Umfeld mit ausreichender Rechenleistung, uneingeschränkt eingesetzt werden.
-
Es ist ebenfalls bekannt, dass öffentliche Zertifikate und Austauschverfahren mit asymmetrischen Keys, zusammen mit entsprechenden Hashfunktionen die wesentlichen Schutzziele [0006] gewährleisten, allerdings benötigen diese Methoden wesentliche Ressourcen und Rechenkapazitäten, da aus Gründen der Sicherheit, bei jeder neu aufgebauten Datenübertragung die notwendigen asymmetrischen und symmetrischen Keys neu berechnet und verteilt werden müssen, wodurch im IoT Umfeld der Einsatz der oben genannten Methoden erschwert bzw. deren Einsatz nicht immer möglich ist.
-
Es ist ebenfalls bekannt, dass IoT Geräte kostengünstig und mit geringen Abmaßen herstellbar sein müssen, deshalb sind der Aufwand an Speicher, Rechenkapazität und die maximale Taktrate eingeschränkt.
-
Es ist ebenfalls bekannt, dass IoT Geräte oft ohne permanenten Anschluss an eine allgemein zugängliche Energiequelle betrieben werden und deshalb durch „energie harvesting“ oder kleine Energiequellen wie Batterien oder Akkumulatoren versorgt werden, so das um eine möglichst lange Laufzeit der Geräte zu ermöglichen, alle nicht benötigten Funktionen in den Chips abgeschaltet (Sleep-Modus) und nur für kurze Zeit während der Nutzung aktiviert werden; der Energiebedarf für eine Netzwerkverbindung beispielhaft über eine Funkstrecke oder zur Berechnung der notwendigen Algorithmen zur Verschlüsselung und zur Erzeugung der notwendigen Keys steigt aber proportional mit der Länge der Aktivität und ist um ein vielfaches größer als der Energiebedarf im sogenannten Sleep-Modus. Beispielhaft benötigt eine Sekunde Rechen- oder Sendeaktivität genauso viel Energie wie Stunden oder Tage reine Ruhezeit im Sleep-Modus.
-
Es ist ebenfalls bekannt, dass auf öffentlichen Funkfrequenzen Nutzungsbeschränkungen bestehen, so dass eine spezielle Frequenz nur maximal 0.1%, 1% oder 2.5% der Zeit innerhalb einer Stunde durch einen Sender belegt werden darf und durch sehr viele aktive Teilnehmer in einer Frequenz wird die mögliche Datenrate auf der benutzten Funkstrecke ebenfalls herabgesetzt, so dass die Möglichkeiten zum Austausch von Zertifikaten oder zur Implementierung aufwendiger Key-Austauschverfahren ebenfalls eingeschränkt sind.
-
Es ist ebenfalls bekannt, dass in solchen Applikationen beispielhaft erprobte, öffentlich zugängliche und bis zum heutigen Tag als sicher zu betrachtende symmetrische Verschlüsselungsalgorithmen wie beispielhaft AES 128 oder AES256 zusammen mit einem Blockcipher wie beispielhaft CBC und/oder kryptographische Hashfunktionen wie beispielhaft SHA256 und/oder Message Authentication Codes beispielhaft HMAC mit verträglichem Rechenaufwand eingesetzt werden.
-
Es ist ebenfalls bekannt, dass zur Wahrung der Vertraulichkeit der Daten, symmetrische Verschlüsselungsalgorithmen auf beiden Seiten der Übertragungsstrecke ein gemeinsames Geheimnis, einen (geheimen) Key benötigen, um die Daten beim Sender zu verschlüsseln und beim Empfänger wieder in die ursprünglichen Dateninhalte zu entschlüsseln, in der Praxis sind zum Austauschen dieser Keys beispielhaft folgende Methoden bekannt:
-
Eine Person stellt mit geeigneten Mitteln händisch den Key auf beiden Seiten zur Verfügung, das kann beispielhaft durch Postversand eines geschlossenen Umschlages, durch ein Telefonat oder durch geeignete Software beispielhaft über ein Smartphone oder das Internet erfolgen.
-
Es gibt einen gemeinsamen, allen Teilnehmern bekannten, System-Key der bei der Herstellung oder Inbetriebnahme in allen Geräten installiert wird. Beispielhaft: Silicon Labs Connect Protokoll
-
Ein Key wird bei der Inbetriebnahme über die Funkstrecke ohne Verschlüsselung ausgetauscht und kann durch alle Empfänger im Umkreis des Senders abgehört werden. Beispielhaft: ZigBee Protokoll
-
Ein bei der Herstellung durch den Produzenten auf einer Seite der Übertragungsstrecke fest in das Gerät eingegebener und in Klarschrift oder durch Barcode bzw. QR-Code auf dem Gerät oder der Dokumentation aufgebrachter Key, wird manuell oder durch die Mithilfe eines technischen Gerätes, beispielhaft ein Smartphone auf der anderen Seite der Übertragungstrecke eingegeben. Beispielhaft: Z-Wave Protokoll
-
Bei der Inbetriebnahme muss der Key in geeigneter Form den anderen autorisierten Teilnehmern bekannt gegeben werden.
-
Bei der Inbetriebnahme erfolgt nach der Aktivierung, beispielhaft durch Betätigung eines Schalters, Tasters oder durch den Anschluss an die Energiequelle, oder über eine sonstige geeignete Methode, der Austausch eines Keys unverschlüsselt über die Übertragungsstrecke.
-
Der Key-Austausch erfolgt auf einer 2. Ebene beispielhaft durch Interaktion mit einer speziellen Hardware, über Smartphone oder Tablet.
-
Der symmetrische Key wird durch asymmetrische private-/öffentliche Schlüsselpaare die zuvor berechnet und ausgetauscht wurden, übergeben. Diese Methode ist nicht relevant, da hierfür die gleichen Hindernisse bestehen, die einer allgemeinen Benutzung von asymmetrischen Schlüsseln für den Datenverkehr in loT-Netzwerken entgegenstehen. Beispielhaft: TLS Protokoll
-
Der im Patenanspruch 1 angegebenen Erfindung liegen folgende Probleme zugrunde: das diese bekannten, oben genannten Key Austausch-Methoden [0016 - 0022] für symmetrische Keys, die oben genannten Schutzziele [0006] teilweise oder komplett verletzen und/oder eine notwendiger Austausch der verwendeten Keys, nicht oder nur mit hohem Aufwand realisierbar ist und das dadurch die Sicherheit einer Verschlüsselung verringert wird, da es notwendig ist, die benutzten Keys, regelmäßig oder bei Kenntnisnahme eines Missbrauches sofort, auszutauschen.
-
Dieses Problem wird durch die im Patentanspruch 1 aufgeführten Merkmale (Ein kryptographisches Verfahren ermöglicht, nur autorisierten und authentifizierten Teilnehmern die Anmeldung und Integration, in ein IT-Netzwerk. Durch dieses Verfahren können jederzeit neue Transaktions-Keys im Netzwerk unter Einhaltung der Schutzziele (Vertraulichkeit, Integrität, Verfügbarkeit, Authentifizierung, Verbindlichkeit) sicher verteilt werden.
Die hierfür notwendigen Keys und Geheimnissen werden unter Beachtung der obigen Schutzziele erzeugt und übertragen und sind somit nur den an der Anmeldung und Integration notwendigerweise beteiligten Komponenten und keinen anderen Teilnehmern eines Netzwerkes und auch keinem Dritten bekannt. Es wird eine unabhängige 2. Topologie erzeugt, die eine virtuelle Punkt- zu Punkt Verbindung zwischen einem beliebigen, aktiven Gerät und dem Datenspeicher aufbaut, unter Verwendung der gleichen physikalischen Übertragungsknoten und -strecken, die auch für den sonstigen Datenaustausch genutzt werden. Für diese virtuelle Punkt- zu Punktverbindung wird mit kryptographischen Mitteln ein zusätzlicher Key erzeugt, der für jedes Gerät unterschiedlich ist und nur dem im aktuellen Anmeldevorgang befindlichen Gerät und dem Datenspeicher (den beiden Endpunkten der virtuelle Punkt- zu Punktverbindung) bekannt ist. Dieser Key wird während der Inbetriebnahme im Werk von diesem neuen Gerät oder mit der Hilfe sonstiger geeigneter technischer Mittel, beispielhaft eines PC, erzeugt und ist danach nur dem Datenspeicher sowie dem aktuell im Anmeldevorgang befindlichen Gerät bekannt und wird dort abgespeichert. Dieser Key wird benutzt, um über die virtuelle Punkt- zu Punktverbindung, den eigentlichen Transaktions-Key vom Datenspeicher zu den Geräten zu übertragen. Alle Informationen und Keys werden in dieser 2. Topologie, während der Übertragung über beliebige Knoten und Übertragungsstrecken, immer mit einem Key beispielhaft unter Verwendung von CBC-AES-128 verschlüsselt sowie beispielhaft mit HMAC abgesichert. Zur Anmeldung beim Datenspeicher wird zur Autorisierung des neuen Gerätes beispielhaft ein Hash-256 aus Informationen gebildet, die bei der Inbetriebnahme im neuen Gerät und im Datenspeicher permanent gespeichert wurden und mit einer im Datenspeicher bei der Inbetriebnahme der Geräte aus den gleichen Daten berechneten, erzeugten und gespeicherten Tabelle abgeglichen.
Nach einem Abhören können diese Informationen und Keys von unautorisierten Geräten oder Dritten, nicht in den unverschlüsselten Zustand zurückgewonnen werden, da diesen anderen Geräten oder Dritten, der dazu notwendige, geheime Key nicht bekannt sind. Die Protokolle können auch nicht verfälscht werden, da sie durch beispielhaft HMAC abgesichert werden.) gelöst.
-
Die mit der Erfindung erzielten Vorteile bestehen insbesondere darin, das unter Benutzung von handelsüblichen Microprozessorchips, beispielhaft 32Bit ARM-Chips, auch mit eingeschränkter Rechenleistung, geringer Datenrate und beschränkten Energieressourcen, beispielhaft in einem IoT-Netzwerk, die Anmeldung und Authentifizierung eines Gerätes und die Übertragung von Daten, insbesondere der notwendigen Keys, unter Ausnutzung der Standardverfahren (beispielhaft symmetrische Verschlüsselung mit einem CBC-AES-128 Blockcipher, kryptographische Hashfunktion und HMAC), die oben genannten Schutzziele [0006] realisiert werden können und zusätzlich jederzeit ein sicherer, kostengünstiger und schneller Austausch der für die Sicherheit notwendigen Keys, möglich ist; zusätzlich wird verhindert, dass sich unautorisierte oder unauthentifizierte Geräte (300) beispielhaft geklonte oder unberechtigt nachgebaute Geräte in ein Netzwerk anmelden und somit zum Bruch der Sicherheit und/oder Vertraulichkeit in einem Netzwerk oder der Umgebung führen können.
-
Eine vorteilhafte Ausgestaltung der Erfindung ist im Patentanspruch 2 angegeben.
Die Weiterbildung nach Patentanspruch 2 ermöglicht die Anwendung dieser Methode in einem Netzwerk beliebiger Topologie oder Komplexität. Es ist auch möglich das mehrere Kontrollgeräte an das Speichergerät angeschlossen sind, die über eine Verbindung zum Datenspeicher verfügen. Diese Kontrollgeräte können gemeinsam einer Topologie von IoT-Geräten angehören und diese steuern, oder jedes Kontrollgerät steuert eine eigene Topologie. Ebenfalls sind Mischformen möglich. Es ist denkbar, dass diese Kontrollgeräte miteinander vernetzt sind und auch eine eigene Ebene innerhalb der Topologie bilden. Es ist auch möglich, dass diese Kontrollgeräte keine direkte Verbindung mit dem Datenspeicher besitzen und diese Verbindung nur über ein weiteres Gerät, beispielhaft einen Router, möglich ist. Es ist denkbar, dass das Speichergerät als eine geeignete IT-Struktur vor Ort, beispielhaft als Server oder mehrere Server oder sonstiger IT-Geräte ausgeführt ist. Es ist möglich, dass das Speichergerät aus einem Server oder mehreren Servern oder einer sonstigen IT-Struktur besteht, die nicht an dem gleichen Ort wie die Topologie angeordnet ist und das dieses Speichergerät nur über das Internet oder mit Hilfe einer sonstigen Verbindungen erreichbar ist, beispielhaft die sogenannte Cloud. Es ist möglich, dass die IoT-Geräte nicht direkt von den Kontrollgeräten erreichbar sind, sondern nur über andere IoT-Geräte in Form einer Mesh-Topologie oder über geeignete Repeater-Geräte, die die Verbindungsstrecke zwischen den Kontrollern und den IoT-Geräten räumlich erweitern oder das Signal verstärken. Es ist auch möglich, dass das System ohne Kontrollgeräte arbeitet und die IoT-Geräte über eigene Module beispielhaft ausgeführt als Wifi oder Mobilfunkmodule direkt mit dem Datenspeicher oder über das Internet mit dem Datenspeicher verbunden sind.
-
Eine vorteilhafte Ausgestaltung der Erfindung ist im Patentanspruch 3 angegeben.
Die Weiterbildung nach Patentanspruch 3 ermöglicht es sicherzustellen, dass die gesendeten und empfangenen Daten eines Knotens auch die Schutzziele Vertraulichkeit sicherstellen. Die Verschlüsselung über AES kann auch beispielhaft durch einen Blockcipher beispielhaft CBC erweitert werden. Als Verschlüsselungsalgorithmus sind auch andere Verfahren wie beispielhaft Twofisch, Blowfish oder Tripple DES möglich. Einen anderen Blockcipher anzuwenden ist auch möglich.
-
Eine vorteilhafte Ausgestaltung der Erfindung ist im Patentanspruch 4 angegeben.
Die Weiterbildung nach Patentanspruch 4 ermöglicht es durch ein geeignetes Verfahren beispielhaft HMAC, sicherzustellen, dass die gesendeten und empfangenen Daten eines Knotens auch die Schutzziele Integrität, Authentifizierung und Verbindlichkeit sicherstellen. Es ist möglich, dass Funktionseinheiten auf einer Leiterplatte aus mehreren Bausteinen bestehen, die beispielhaft über Leiterbahnen oder Leitungen miteinander verbunden sind, es ist auch möglich, dass die Funktionen auf mehrere Leiterplatten oder Geräte verteilt sind. Es ist beispielhaft möglich, dass ein Kontroller aus mehreren Modulen wie Funk-, Wifi- und Mobilfunkmodulen besteht. Diese Funktionseinheiten müssen in geeigneter Weise miteinander verbunden sein. Hier besteht die Möglichkeit beispielhaft mit „Man in the Middle“ die Daten abzugreifen. Die Weiterbildung nach Patentanspruch 4 ermöglicht es die Methoden nach dieser Erfindung auch zwischen einzelnen Modulen innerhalb der Übertragungsstrecke anzuwenden und oben genannte „Man in the Middle“ Angriffe zu verhindern.
-
Eine vorteilhafte Ausgestaltung der Erfindung ist im Patentanspruch 5 angegeben.
Die Weiterbildung nach Patentanspruch 5 ermöglicht es je nach zur Verfügung stehenden Ressourcen und Notwendigkeit auch andere zusätzliche von der Netzwerkstruktur vollständig oder teilweise unabhängige Transportwege und Topologien zu benutzen. Es besteht die Möglichkeit diese, nach Patentanspruch 1, abgesicherte virtuelle Punk zu Punktverbindung, durch eine physikalische von der im Netzwerk unabhängigen Verbindung beispielhaft über LoRaWan oder Mobilfunk, zwischen dem IoT-Gerät und dem Datenspeicher auszuführen. Das kann die Sicherheit und insbesondere die Verfügbarkeit des Systems möglicherweise verbessern. Allerdings steigen dadurch die Produkt- und Betriebskosten wesentlich.
-
Eine weitere Ausgestaltung der Erfindung ist im Patentanspruch 6 angegeben.
Die Weiterbildung nach Patentanspruch 6 ermöglicht es, ohne Wissen des jeweiligen Keys, die Protokolle an Ihre Zieladresse weiter zu routen und erste Entscheidungen über die Weiterverarbeitung eines Protokolls zu treffen. Da somit in vielen Fällen ein Protokoll nicht entschlüsselt werden muss, wird wesentliche Rechen- und Reaktionszeit eingespart. Allerdings wird damit das Schutzziel Verfügbarkeit eingeschränkt.
-
Eine vorteilhafte Ausgestaltung der Erfindung ist im Patentanspruch 7 angegeben.
Die Weiterbildung nach Patentanspruch 7 ermöglicht es eine unautorisierte Manipulation an einem Protokollkopf festzustellen, um so zu verhindern, dass beispielhaft das Routing innerhalb der Topologie gestört wird oder fehlerhafte Interaktionen veranlasst werden. Die Integrität und die Verfügbarkeit des Systems werden dadurch verbessert. Nach Patenanspruch 6 kann nicht festgestellt werden, ob ein Protokollkopf manipuliert wurde. Durch den Patenanspruch 7 können im Wesentlichen die Vorteile des Patenanspruchs 6 in Anspruch genommen werden, indem beim letzten Glied der Übertragungskette, dem adressierten Empfänger, nach dem entschlüsseln des Protokolls, beispielhaft durch Vergleich zwischen Protokollkopf und Kopie in der Payload, festgestellt wird, ob der Protokollkopf manipuliert oder ein Protokoll kopiert und unautorisiert versendet wurde. Ein solcher Bruch der Schutzziele wird somit erkannt und mit einer geeigneten Methode an den Netzwerkkontroller oder das Speichergerät gemeldet und/oder protokoliert.
-
Eine vorteilhafte Ausgestaltung der Erfindung ist im Patentanspruch 8 angegeben.
Die Weiterbildung nach Patentanspruch 8 ermöglicht es die übertragenen Daten in einer für Menschen lesbaren Form darzustellen. Dies erleichtert wesentlich die Programmierung, die Inbetriebnahme, das Integrieren von neuen Geräten, Funktionen und die Fehlersuche. Eine JSON konforme Darstellung kann die notwendige Anzahl der übertragenen Zeichen bei kleinen Informationsinhalten, wie diese bei loT-Geräten beispielhaft einer Temperaturmessung oder einer Schalterbetätigung vorkommen allerdings um das mehrfache vergrößern. Deshalb sind Vereinfachungen des JSON-Formates möglich, die die Zeichenmenge wesentlich weniger vergrößern und trotzdem für Menschen einfach lesbar bleiben. Eine Darstellung in dieser Art, ermöglicht es auch einen abstrakten Zugriff auf die Hardware- insbesondere die I/O-Funktionen vorzunehmen um die Software unabhängig von der vorliegenden Hardware zu gestalten.
-
Eine vorteilhafte Ausgestaltung der Erfindung ist im Patentanspruch 9 angegeben.
Die Weiterbildung nach Patentanspruch 9 ermöglicht es einzelne oder mehrere Knoten bei Bedarf an beliebiger Stelle in der Topologie, unter Einhaltung der oben definierten Schutzziele, mit neuer Software upzudaten. Unter Verwendung eines „over the air updates“ können die Geräte jederzeit vor Ort, ohne manuelle Eingriffe, up-gedated werden. Das bedeutet, das im Programmspeicher abgelegte Programm eines Gerätes kann geändert oder komplett ausgetauscht werden. Da insbesondere immer häufiger Sicherheitslücken oder fehlerhafte Programmierung festgestellt werden, ist ein solches Update zum Sicherstellen der Schutzziele notwendig. Möglicherweise werden in der Zukunft Methoden bekannt, die die Schutzziele der verwendeten Verschlüsselungs- und Hashalgorithmen nicht mehr gewährleisten. Dann kann durch ein Update wieder der notwendige Sicherheitsstandart hergestellt werden.
Ein „over the air update“ ist bekannt und keine Neuerung. Die Neuerung beim Anspruch 9 besteht darin, dass diese Updates unter Einhaltung der Schutzziele [0006] beispielhaft durch die Verwendung eines weiteren speziellen Keys ausgeführt, an einzelne Empfänger oder gleichzeitig an mehrere Empfänger durchgeführt und zentral über oder durch den Datenspeicher oder eine andere geeignete Komponente des Netzwerkes, verwaltet, überwacht und gesteuert werden.
-
Eine vorteilhafte Ausgestaltung der Erfindung ist im Patentanspruch 10 angegeben.
Die Weiterbildung nach Patentanspruch 10 ermöglicht es unabhängig von der vorgegebenen Topologie durch geeignete Software auch über geeignete IT-Geräte wie beispielhaft Smartphones, Tablets oder PCs mit der Hilfe von Kabelverbindung, Wifi oder Bluetooth oder sonstiger Verbindungstechniken, Schlüssel auszutauschen, Updates vorzunehmen und Parameter in einzelne Knoten oder in die komplette Topologie einzugeben oder zu ändern, beispielhaft Anmeldeparameter für Wifi oder Mobilfunkmodems.
-
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen 1, 2 und 3 dargestellt und wird im Folgenden näher beschrieben.
-
Beispiel:
-
Eine mögliche Realisierung des Verfahrens (2 und 3) besteht aus einem IoT-Netzwerk (1), bestehend aus 3 ToT-Geräten (101, 102, 103), die über eine 868MHz Funkstrecke (201, 202, 203) mit einem Kontroller (104) und dieser über Wifi (200) mit dem Internet und der Cloud (100) verbunden sind. Diese IoT-Geräte sind mit dem Kontroller in einer Sternstruktur verbunden. Ein notwendiger Router, der die Verbindung zwischen WIFI und dem Internet herstellt, hat keinen Einfluss auf den Ablauf und wurde deshalb nicht in die Zeichnung aufgenommen. Ein außenstehender Dritter (300) versucht den Datenverkehr abzuhören oder zu stören.
-
Die Methode benutzt in dieser möglichen Realisierung [0037] einen CBC-Blockcipher unter Verwendung einer symmetrische Verschlüsselung AES-128 mit einem 128 Bit Key in Kombination mit einer kryptographischen Hashfunktion SHA256. Anhand von in 2 und 3 schematisch dargestellten Flussdiagrammen und der unten aufgeführten Kapitel [0039] bis [0053] werden einzelne Verfahrensschritte des erfindungsgemäßen Verfahrens näher erläutert
-
Schritt 1: Während der Inbetriebnahme 1 eines jeden Gerätes (101) in der Produktion, wird im Gerät (101) durch geeignete Methoden eine gerätespezifische Identifikation und ein geheimer Gerätekey 2 erzeugt, indem ein Zeitintervall, ein TRNG-Generator (true random), eine Randomfunktion, Informationen aus der Hardware wie Rauschen aus dem HF-Empfangsteil oder dem AD-Umsetzer, Informationen aus der Umwelt des Gerätes wie beispielhaft Temperatur oder Spannungsmessungen oder Informationen aus der Firmware oder dem Chip einzeln oder in beliebiger Kombination verwendet und zusätzlich durch geeignete Algorithmen wie beispielhaft Hash- oder Message-Digest (MD) Funktionen zusammengeführt oder verändert werden.
-
Schritt 2: Diese Geräte-Identifikation (aus Schritt 1) 2 und der geheime Geräte-Key (aus Schritt 1) 2 wird durch eine Verbindung mit einem IT-Gerät (105) 3 - 4 zusammen mit gerätespezifischen Daten an die Cloud (100) übermittelt 5 und dort für die weitere Verwendung gespeichert 6. Diese beiden Informationen, Geräte-Identifikation und geheimer Key sind nur der Cloud (100) sowie dem erzeugenden Gerät (101) bekannt und werden außer in diesem Schritt 2, niemals unverschlüsselt gesendet oder ausgetauscht. Zusätzlich wird in der Cloud aus der Geräte-Identifikation ein SHA256 berechnet und in einer Tabelle gespeichert. Hiermit kann später beim Anmelden, jedes Gerät eindeutig identifiziert werden.
-
Schritt 3: Nach dem Start der Anmeldung von „Alex“ (102) im System 7 erzeugt „Sebastian“ (104) ein Geheimnis 8 und verschlüsselt dieses Geheimnis 9 mittels CBC-AES-128 und unter Verwendung des bei der Anmeldung von „Sebastian“ (104) von der Cloud (100) erhaltenen Keys, abgesichert durch HMAC und sendet das Ergebnis an die Cloud (100) 10 - 11, die dieses Geheimnis entschlüsselt, Authentifiziert und speichert 12. Dieser Schritt ermöglicht während der Anmeldung von „Alex“ (102) eine Überprüfung der Identität von „Sebastian“ (104) um zu gewährleisten, das Daten während der Anmeldung nur mit einem autorisierten Knoten ausgetauscht werden.
-
Schritt 4: Danach erzeugt „Sebastian“ (104) aus dem unverschlüsselten Geheimnis (aus Schritt 3) einem SHA256 13 und sendet diesen Hash unverschlüsselt an „Alex“ (102) 14 - 15.
-
Schritt 5: „Alex“ (102) erzeugt aus diesem oben (unter Schritt 4) erzeugten Hash und der im Gerät gespeicherten, bei der Inbetriebnahme von „Alex“ (102) 2 erzeugten, Identifikation mit Hilfe einer SHA256 Funktion ein neues Geheimnis 16, das unverschlüsselt über „Sebastian“ (104) an die Cloud (100) gesendet wird 17 -18 - 19.
-
Schritt 6: Der Cloud (100) sind die Eingangsdaten, dieses Geheimnisses (aus Schritt 3 und 5) und die notwendigen Daten von „Alex“ (102) (aus Schritt 2) bekannt. In der Cloud (100) werden die Berechnungen 20 wiederholt und mit dem neuen von „Alex“ (102) empfangenen Geheimnis 19 verifiziert und somit überprüft, ob „Alex“ (102) und „Sebastian“ (104) autorisiert sind. Es wird zusätzlich verifiziert 21 das „Alex“ (102) den angegebenen Übertragungsweg (102, 104, 100) benutzt, um angemeldet zu werden.
-
Schritt 7: Sind „Alex“ (102) und „Sebastian“ (104) autorisiert 21, erzeugt die Cloud (100) einen neuen Key 22.
-
Schritt 8: Als nächstes verschlüsselt die Cloud (100) diesen Key (aus Schritt 7) mit CBC-AES-128 unter Verwendung des geheimen Keys 2 von „Alex“ (102) 23, sichert die Daten mit HMAC 24 und sendet das Ergebnis über die gesamte Übertragungsstrecke an „Alex“ (102) 25 - 26 - 27, wobei durch diese virtuelle Punkt- zu Punktverbindung (204), dieser neue Key 22 zu diesem Zeitpunkt, nur der Cloud (100) und „Alex“ (102) bekannt sind.
-
Schritt 9: Die Cloud (100) sendet diesen neuen Key 22 (aus Schritt 7) verschlüsselt 28 mit CBC-AES-128 unter Verwendung des Keys von „Sebastian“ (104), und abgesichert durch HMAC 29 an „Sebastian“ (104) 30 - 31. „Sebastian“ entschlüsselt und speichert diesen Key 22 mit kryptographischen Methoden. Nachdem die Cloud (100) den Key 22 an „Sebastian“ gesendet hat, wird dieser Key 22 in der Cloud (100) gelöscht 30. Somit ist nur „Sebastian“ (104) in der Lage mit „Alex“ (102) verschlüsselte Protokolle unter Verwendung dieses Keys 22 (aus Schritt 7), auszutauschen.
-
Schritt 10: „Alex“ (102) sendet jetzt eine beliebige Information 32 an „Sebastian“ (104) 34 - 35, diese ist mit CBC-AES-128 unter Verwendung des neu (in Schritt 8) empfangenen Keys 22 verschlüsselt, zusätzlich wird die Verbindung und die Information über HMAC gesichert 33.
-
Schritt 11: Wird dies Informationen (aus Schritt 10) von „Sebastian“ (104) empfangen 35 und verifiziert (mittels Entschlüsselung unter Verwendung des Keys 22 (aus Schritt 9) und HMAC) 36, dann ruft „Sebastian“ (104) von der Cloud (100) anwendungsspezifische Daten für „Alex“ (102) ab 37 - 38 - 39. Diese Daten werden in der Cloud mit CBC-AES-128 unter Verwendung des Keys von „Sebastian“ verschlüsselt, mit HMAC abgesichert und an „Sebastian“ gesendet.
-
Schritt 12: Nach dem diese Daten (aus Schritt 11) von „Sebastian“ empfangen und decodiert wurden 40, sendet „Sebastian“ (104) diese Daten verschlüsselt mit CBC-AES-128 und unter Verwendung des neuen Keys 22 (aus Schritt 9), sowie abgesichert mit HMAC 41 an „Alex“ (102) 42.
-
Schritt 13: Nachdem „Alex“ (102) dieses Protokoll erhalten 43, entschlüsselt und mit Hilfe der mitgesendeten HMAC verifiziert hat 44, sendet „Alex“ (102) ein geeignetes Quittungsprotokoll 45, verschlüsselt mit CBC-AES-128 und unter Verwendung des Keys 22 (aus Schritt 8), gesichert mit HMAC 46 an „Sebastian“ (104) 47. „Alex“ (102) speichert intern ab, dass „Alex“ (102) jetzt autorisiertes Mitglied des Netzwerkes ist 49. Eine zusätzliche Rückmeldung von „Sebastian“ an „Alex“ in geeigneter Form um sicherzustellen, dass das Quittungsprotokoll bei „Sebastian“ angekommen ist, ist auch möglich.
-
Schritt 14: Nachdem „Sebastian“ (104) dieses Protokoll 45 (aus Schritt 13) erhalten hat 48 und durch Entschlüsselung und Überprüfung des HMAC verifiziert hat, sendet „Sebastian“ (104) ein geeignetes Quittungsprotokoll 50, verschlüsselt mit CBC-AES-128 unter Verwendung des Keys von „Sebastian“ (104), gesichert mit HMAC 51 an die Cloud (100) 52 - 53.
Eine zusätzliche geeignete Rückmeldung von der Cloud zu „Sebastian“ als Bestätigung der Nachricht 50, ist ebenfalls möglich.
Die Cloud (100) und „Sebastian“ (104) speichern intern ab, dass „Alex“ (102) jetzt ein autorisiertes Mitglied des Netzwerkes ist 54 - 55.
-
Schritt 15: Der Anmeldevorgang und der Key-Austausch, des normalerweise benutzten Keys 22, ist erfolgreich abgeschlossen, das neue Gerät ist authentifiziert und autorisiert, mittels des ausgetauschten Keys 22 (aus Schritt 8-9), Daten über das Netzwerk auszutauschen.
-
Ein neuer Key 22 kann jederzeit unter Verwendung des geheimen Keys 2 und der virtuellen Punkt zu Punkt Verbindung zwischen der Cloud und „Alex“ oder eines Teils dieses Verfahrens 7 - 27 und somit unter Einhaltung der Schutzziele [0006] ausgetauscht werden.
-
Definitionen:
-
- AES:
- Advanced Encryption Standard - Blockverschlüsselung mit symmetrischem Key. In Verbindung mit einem geeigneten Blockcipher Algorithmus wie beispielhaft CBC.
- Anmelden:
- Der Zugang zu einem Netzwerk, zum Austausch von Daten, ist nur autorisierten Teilnehmern möglich, um die Schutzziele im Netzwerk sicher zu stellen. Hierzu werden verschiedene Methoden eingesetzt.
- Autorisierte Teilnehmer:
- Es werden Kriterien und Methoden festgelegt um einen Teilnehmer als autorisiert zu verifizieren.
- Blowfish:
- Blockverschlüsselung mit symmetrischem Key
- Broadcast:
- Das Senden einer Nachricht an viele Empfänger gleichzeitig.
- Byte:
- Eine in der Datenverarbeitung übliche Informationseinheit, bestehend aus 8 Bit.
- CBC:
- Cipher Block Chaining - Eine Kette von Datenblöcken wird mit Hilfe eines IV und eines geeigneten Cipher-Verfahrens in eine Kette von verschlüsselten Datenblöcken umgewandelt.
- CBC-SHA-128:
- Eine Verschlüsselung durch CBC unter Verwendung von AES mit einem 128 Bit Key.
- Chip:
- Elektronische Funktionseinheit, hier für Mikroprozessoren benutzt.
- Cloud:
- Rechenwolke ist die Bezeichnung für eine moderne IT-Infrastruktur im Web.
- CRC:
- Cyclic Redundancy Check, Erzeugung einer Prüfsumme für Datenblöcke.
- Datenspeicher:
- Ein Gerät oder eine Infrastruktur, die alle Informationen eines Netzwerkes speichert und die Funktionen verwaltet. Beispielhaft ein Server vor Ort, die Cloud oder Server im Web.
- energie harvesting:
- Energieernte ist ein Verfahren zum Sammeln oder Erzeugen von Energie zur unabhängigen Versorgung von Geräten.
- Geheimnis:
- Eine zufällige erzeugte Charakterkette oder eine zufällig erzeugte Binärzahl mit hinreichender Größe, beispielhaft 128, 256, 512 oder 1024 Bit. Dieses Geheimnis wird nach der Erzeugung abgespeichert und vertraulich behandelt.
- HMAC:
- Keyed-Hash Message Authentication Code
- IoT:
- Internet of Things - Internet der Dinge
- IT:
- Informationstechnik, ein Oberbegriff für die elektronische Datenverarbeitung und die dazu notwendige Hard- und Software-Infrastruktur.
- IV:
- Initialisierungs-Vektor, wird beispielhaft bei CBC verwendet.
- Key:
- Ein symmetrischer oder asymmetrischer Schlüssel für kryptographische Methoden. Das heißt eine zufällige Charakterkette oder eine zufällig erzeugte Binärzahl. Beispielhaft von der Länge 128, 256 oder 512 Bit.
- LTE-M:
- Long Term Evolution for Machines - ein Mobilfunkstandart.
- NB-IoT:
- NarrowBand für das Internet der Ding - ein Mobilfunkstandart.
- Ressourcen:
- Mittel die zur Realisierung einer technischen Methode benötigt werden.
- Requirements:
- Technische oder nichttechnische Vorgaben oder Anforderungen an ein Verfahren oder ein Gerät
- RSA:
- Rivest-Shamir-Adleman - asymmetrischer Verschlüsselungsalgorithmus
- Sleep-Modus:
- Spezieller Betriebsmodus von Geräten, beispielhaft von Microprozessoren um möglichst wenig Energie zu verbrauchen und eine lange Laufzeit zu ermöglichen. Die Funktion des Gerätes wird auf ein Minimum reduziert. Alle nicht notwendigen Funktionen werden abgeschaltet. Durch einen vordefinierten Trigger wird in den Normalmodus gewechselt.
- SHA-256:
- Secure Hash Algorithmus mit 256 Bit Ergebnis, Auch 224, 384 oder 512 Bit
- TLS:
- Transport Layer Security - Gängiges Internet Sicherheitsprotokoll
- Tripple DES:
- Blockverschlüsselung mit symmetrischem Key, Anwendung 3 x DES
- Twofish:
- Blockverschlüsselung mit symmetrischem Key
- Udate, updaten:
- Ein Teil oder das komplette Programm eines elektronischen Rechengerätes oder einer IT-Komponente wird durch ein anderes Programm oder eine veränderte Version des vorhandenen Programmes ersetzt.
-
Um die Verständlichkeit der Beschreibung zu verbessern werden folgende Synonyme verwendet:
-
- Alex:
- Ein IoT-Gerät, das sich neu am Netzwerk anmeldet und in die Netzwerkstruktur integriert werden soll.
- Sebastian:
- Ein Netzwerk Kontroller-Gerät steuert ein Funk-Netzwerk und ist die Brücke zwischen diesem Netzwerk und zu einem Datenspeicher, beispielhaft die Cloud unter Verwendung einer Wifi-Verbindung zum Internet.
- loT-Gerät:
- Ein beliebiges „Internet der Dinge“ Gerät als Teil einer Netzwerk Topologie
- Cloud:
- Eine spezielle IT-Struktur im Internet, die beispielhaft den benötigten Datenspeicher realisiert.
- Unautorisierter Dritter:
- Eine unautorisierte Person oder ein unautorisiertes Gerät, das versucht sich Zugang zur Netzwerk-Topologie zu verschaffen, um Informationen abzuhören, Interaktionen zu verfälschen, oder den Datenverkehr im Netzwerk zu stören.
- Punkt zu Punkt:
- Eine virtuelle Topologie, die unter Verwendung der physikalischen Topologie interagiert aber nicht an diese physikalische Topologie gebunden ist. Nur die beiden Endpunkte können Daten miteinander austauschen. Die anderen Knoten und Verbindungswege zwischen Anfangs- und Endpunkt sind beliebig und können die Daten nicht dekodieren, da Ihnen der verwendete Schlüssel nicht bekannt ist.