Blog

Sicherer Datenaustausch über Narrowband-IoT dank DTLS (Teil 3)

Während sich der erste Teil unserer Artikelreihe mit der Technologie Narrowband-IoT beschäftigte und wir im zweiten Teil auf die Besonderheiten im Hinblick auf die Kommunikation auf Basis von MQTT-SN über NB-IoT eingegangen sind, steht in diesem dritten und letzten Teil der Reihe der für das Internet of Things wichtige Aspekt der Sicherheit im Mittelpunkt.  

Ein Artikel von
Christopher Krafft

Lesezeit: ca. 3 Minuten

Beispielbild zum Thema Narrowband-IoT und Sicherheit

Verschlüsselung durch DTLS

Über die Tarife verbreiteter Mobilfunkanbieter ist es zwar möglich, via VPN eine Verbindung zwischen Endgerät und Cloud-Infrastruktur aufzubauen, eine echte Ende-zu-Ende-Verschlüsselung liegt in dem Fall allerdings nicht vor. Die VPN-Verbindung mag zwar zum Beispiel via IPSec verschlüsselt sein, die im VPN übermittelten Daten sind es jedoch nicht. Theoretisch verfügt der Mobilfunkanbieter somit über die Möglichkeit, Einsicht in die Daten zu nehmen und diese manipulieren zu können. 

Je nach Anwendungsfall, beispielsweise wenn im Bereich smarter Stromzähler die Nicht-Verfälschbarkeit sowie Vertraulichkeit der übermittelten Daten sichergestellt werden soll, ist eine solche, nicht Ende-zu-Ende-verschlüsselte Übertragung keine Option. 

Wie bereits im letzten Teil der Reihe erläutert, empfiehlt es sich, für die Cloud-Kommunikation via Narrowband-IoT UDP-basierte Kommunikationsprotokolle zu nutzen. 

Während bei TCP-basierten Verbindungen mit TLS (Transport Layer Security) ein sehr verbreitetes Verschlüsselungsprotokoll zur Verfügung steht, muss für UDP auf das an TCP angelehnte Protokoll DTLS (Datagram Transport Layer Security) zurückgegriffen werden. Die Zahl der DTLS-Implementierungen, vor allem auf Server-Seite, ist im Verhältnis zu den TLS-Implementierungen allerdings überschaubar. 

Trotz alledem bietet DTLS eine Vielzahl an Algorithmen, die zur Verschlüsselung herangezogen werden können. Unter anderem werden auch Pre-Shared-Key-Verfahren (kurz: PSK) unterstützt. 

Dabei wird ein geheimer Schlüssel, der Sender und Empfänger – also der Cloud-Plattform sowie dem Endgerät im Feld – bekannt ist, genutzt, um eine verschlüsselte Verbindung aufzubauen. 

Authentifizierung durch DTLS

Unabhängig davon, ob MQTT-SN oder CoAP als Kommunikationsprotokoll eingesetzt wird, unterstützen beide Protokolle jedoch zunächst keine Authentifizierung der verbundenen Geräte.  

MQTT-SN bietet beispielsweise in der aktuellen Umsetzung der Spezifikation (v1.2) keine Möglichkeit zur Feststellung der Identität der Clients. Lediglich eine ClientID wird in der CONNECT-Message übermittelt. Sofern eine Authentifizierung der Clients benötigt wird, müsste diese also in Form eines „eigenen Protokolls“ auf MQTT-SN-Basis implementiert werden. 

Die fehlende Authentifizierungsmöglichkeit mag in einem geschlossenen System ausreichend erscheinen, setzt aber ein hohes Vertrauen in die Gegenseite voraus. Im Fall eines Narrowband-IoT-Szenarios, das die Verbindung smarter Stromzähler mit einer Cloud vorsieht, könnte beispielsweise die global eindeutige Seriennummer des Zählers als ClientID herangezogen werden. Ein Angreifer hätte somit die Möglichkeit, durch das Aus- oder Ablesen der (Geräte-)Seriennummern oder auch durch bloßes Raten, fremde ClientIDs zu ermitteln und Daten im Namen fremder Geräte auszulesen. Er könnte so vertrauliche Informationen abgreifen oder Nachrichten an die Cloud senden, was wiederum zu einer Manipulation der Daten führen würde. 

Um der fehlenden Authentifizierung bei MQTT-SN (oder CoAP) zu begegnen, kann auch hier DTLS-PSK eingesetzt werden. Für den Aufbau der gesicherten Verbindung ist die Übermittlung korrekter, dem Server bekannter Credentials in Form eines clientIdentifiers sowie eines Pre Shared Keys erforderlich. Anschließend können eingehende MQTT-SN-Nachrichten cloud-seitig anhand des verwendeten clientIdentifiers dem jeweiligen Gerät zugeordnet werden. 

DTLS-Implementierungen

Die Zahl der momentan verfügbaren DTLS-Implementierungen ist vor allem server-seitig überschaubar: Vorhandene sind höchstens in einem experimentellen Stadium oder werden nicht mehr aktiv weiterentwickelt. Das in der Programmiersprache Java entwickelte Projekt Eclipse Scandium ist hier jedoch als positives Beispiel für eine DTLS-Implementierung hervorzuheben, die eine Vielzahl von Cipher-Suites unterstützt und aktiv weiterentwickelt wird. Diese Implementierung stellt die Basis für die CoAP-Implementierung Californium dar und findet daher eine weitere Verbreitung. 

Besonders wenn batteriebetriebene Endgeräte eingesetzt werden, ist die Nutzung von in Hardware implementierten Verschlüsselungsalgorithmen nicht bloß aufgrund der höheren Verarbeitungsgeschwindigkeit, sondern vor allem aufgrund des geringeren Energiebedarfs essenziell. 

Sollte die langlebige Spannungsversorgung ein relevanter Faktor sein, ist von softwareseitig implementierten Algorithmen unbedingt abzusehen. 

Narrowband-IoT-Geräte sicher anbinden

Die Anbindung von Geräten via NB-IoT kann in diversen Anwendungsfällen mindestens sinnvoll, aber – aufgrund der Betriebsumgebung des Geräts – oftmals auch schlichtweg notwendig sein. Auch wenn die Technologie grundsätzlich seit mindestens einem Jahr flächendeckend zur Verfügung steht, findet sie erst nach und nach Verwendung. Die zur Verfügung stehenden Ressourcen sind somit rar gesät. Der relevanteste Fallstrick liegt hierbei in der Umsetzung der Sicherheit, also der Ende-zu-Ende-Verschlüsselung sowie der Authentifizierung von Geräten. 

Dennoch steht dem Einsatz nichts mehr im Wege, sofern die eingesetzte Software sowohl auf Geräte- als auch auf Cloudseite auf den speziellen Anwendungsfall angepasst und die notwendige Architektur geschaffen wurde. 

Sofern dieser Artikel Ihr Interesse geweckt hat oder Sie einen spannenden Anwendungsfall für LPWAN-Technologien haben, kommen Sie auf uns zu – wir beraten Sie gerne. 

 

 

 

 

 

Photo by Philipp Katzenberger on Unsplash

Dieses Thema interessiert Sie? Nehmen Sie Kontakt mit uns auf.

Christopher Krafft com2m

Christopher ist Software-Engineer bei der com2m.

Weitere Themen für Sie

Beispiel für den Einsatz von IoT Starter Kits in der Produktion

Was sind IoT Starter Kits – und wann lohnen sie sich?

Für viele Unternehmen stellt die Implementierung von IoT-Lösungen eine große Hürde dar. Soft- und hardwareseitiges IoT-Know-How, Datenanalysefähigkeiten oder das Verständnis für die Wirtschaftlichkeit einer IoT-Anwendung sind nur die offensichtlichsten Faktoren. Um diese Aspekte evaluieren zu können, stellen IoT Starter Kits eine gute Alternative dar.

Weiterlesen >