Code-Analyse, Scheduling, Security Werkzeuge für smarte IoT-Entwickler

Kommunikation absichern

Die Kommunikation von IoT-Geräten wird in der Regel über die IP-Netze durchgeführt. Microcontroller-basierte IoT-Geräte müssen sorgfältig ausgelegt werden, damit die vorhandenen Ressourcen wie z.B. RAM und ROM/Flash-Speicher nicht knapp werden. Viele Anbieter haben Ihre IP-Stacks aus der PC-Welt abgeleitet und damit auch deren Resourcen-Hunger übernommen.

Wenn die Kommunikation funktioniert, stellen sich die nächsten Fragen: Welche Daten müssen wohin transportiert werden? Geschieht dies online oder offline? Welche Wege stehen zur Verfügung? Und wie lassen sich diese Wege absichern? Kommt es auf Aktualität an oder dürfen die Daten auch verspätet zugestellt werden? Viele dieser Fragen schließen das ein oder andere Protokoll aus. Muss es gleich ein großer Cloud-Anbieter sein? Oder reicht für die eigenen Zwecke eine Own-Cloud-Anbindung oder einfach die Nutzung der vorhandenen Infrastrukturen von Dropbox und Co.? Die Dropbox-API zum Beispiel ist frei zugänglich. Auf dieser Basis bietet Segger den Dropbox Client an, der auch größere Daten mit einem Dropbox-Konto synchronisieren kann (Bild 4). Ob es Logfiles sind, oder auch Firmware-Updates dort abgelegt werden, kann der Kunde selber wählen.

Wenn als Nächstes die Frage nach der Datensicherheit gestellt wird, dann ist man bei den älteren Protokollen wie HTTP oder FTP schnell mit TLS dabei. TLS kann dabei auch schnell mehrere Kilobyte im Speicher belegen. Wer hier nicht aufpasst, hat seinen Speicher schnell aufgebraucht. Speziell für Microcontroller geschriebene Protokolle wie Seggers TLS-Implementierung emSSL können auch mit minimalen RAM-Bereichen effizient arbeiten. Bei neueren Protokollen muss man unter Umständen sogar eigene Protokolle entwickeln. Dann ist es von Vorteil, wenn man einen bewährten Baukasten wie zu Beispiel emCrypt zur Verfügung hat, der es ermöglicht, auch proprietäre Sicherheits-Protokolle zu bedienen. Gerade bei Sicherheitsthemen ist es immens wichtig, nicht dem Trugschluss zu erliegen, dass eigene Algorithmen sicherer sind, weil sie keiner kennt. Die größte Schwachstelle sind selten die Algorithmen, sondern die Schlüsselverwaltung. Segger bietet für solche Fälle auch Schulungen an, so dass der Kunde nicht auf sich gestellt ist, sondern das vorhandene Know-how bei Segger nutzen kann.

IoT ist kein Hexenwerk

IoT-Geräte, sei es im Industrie- oder Con­sumer-Bereich, in der Medizin-, Automobil- oder einer anderen Branche, sind komplexe Einheiten in vielfältigen Umgebungen. Um die einwandfreien Funktionen zu gewährleisten, bedarf es Sorgfalt in der Planung und im Test. Um die Komplexität in den Griff zu bekommen, lohnt es sich, außerhalb der ei­genen Kernkompetenz mit Standard-Komponenten und -Werkzeugen zu arbeiten. Wenn diese Komponenten und Werkzeuge dann auch noch aus einer Hand kommen, kann sich der Entwickler auf die eigentlichen Funk­tionen seiner Applikation konzentrieren und muss sich um Schnittstellen und Funktionstests der Interoperabilität keine Sorgen mehr machen.

Der Autor:

Dirk Akemann
ist seit neun Jahren bei den Embedded-Experten von Segger als Marketing Manager verantwortlich für technisches Marketing. Vor 2009 arbeitete er mehrere Jahre als Field Application Engineer, nachdem er als wissenschaftlicher Angestellter im Bereich Regelungstechnik und Mechatronik an der Universität Paderborn angestellt war.