wolfMQTT-Client-Bibliothek Fügt End-to-End-Verschlüsselung für M2M und IoT hinzu

MQTT Protocol tutorial using SIM900/SIM800 modules - LIVE DEMO (Dezember 2018).

Anonim

wolfMQTT-Client-Bibliothek Fügt End-to-End-Verschlüsselung für M2M und IoT hinzu


WolfSSL hat kürzlich die WolfMQTT-Client-Bibliothek veröffentlicht, ein Sicherheits-Add-On, das die SSL / TLS-Verschlüsselung für das Message Queuing Telemetry Transport (MQTT) -Protokoll bereitstellt.

MQTT ist eine Publisher / Subscriber-basierte Architektur, in der Systeme miteinander kommunizieren, indem sie Nachrichten veröffentlichen und Themen über TCP / IP-Netzwerkprotokolle abonnieren. MQTT wurde speziell entwickelt, um leicht zu sein und wird in Machine-to-Machine- und Internet of Things-Anwendungen verwendet, die im Allgemeinen auf Echtzeit-Informationsaustausch angewiesen sind und durch Speicher- und Energieressourcen eingeschränkt sind.

Beispiel für eine Pub / Sub-Architektur. Bild mit freundlicher Genehmigung von HiveMQ.

Bis vor kurzem hatte MQTT keine eingebaute Sicherheitsfunktion, obwohl "secure-mqtt" verwendet werden könnte, bei der die TLS-Transportoption über Port 8883 ausgewählt wird. WolfMQTT erweitert MQTT mithilfe von wolfSSL, um Unterstützung für SSL / TSL-Ende hinzuzufügen End-to-End-Verschlüsselung.

Die WolfMQTT-Bibliothek ist in weniger als 1.200 Codezeilen und 3, 6 KByte in C (C89) geschrieben, um sicherzustellen, dass sie für die Verwendung in eingebetteten Systemen leicht und portabel bleibt. Es basiert ebenfalls auf der MQTT v3.1.1-Spezifikation.

MQTT-Highlights:

  • Leicht und portabel für M2M- und IoT-Anwendungen mit geringem Overhead
  • Drei Nachrichtenzustellungsqualitäten der verfügbaren Dienstmodi, einschließlich "höchstens einmal", "mindestens einmal" und "genau einmal"
  • Kleiner Overhead, um den Netzwerkverkehr zu minimieren
  • Ist in der Lage, betroffene Parteien zu benachrichtigen, wenn unter ungewöhnlichen Umständen eine Trennung auftritt
  • MQTT v3.1.1 wurde 2014 veröffentlicht

wolfMQTT Höhepunkte:

  • Unterstützt die neuesten SSL- und TLS-Standards
  • 20 mal kleiner als OpenSSL
  • Einfach von OpenSSL nach wolfSSL zu portieren
  • Servicequalität für Level 0 bis 2
  • Kann mit Linux, Mac OS X, Windows 32/64, FreeRTOS, ChibiOS-Umgebungen verwendet werden
  • Kompatibel mit ARM-, Intel-, Atmel- (PIC32), STMicro- (STM32F2 / F4), Texas Instruments- und Motorola-Chipsätzen, um nur einige zu nennen
  • Open-Source-Lizenz (GPLv2)
  • Benutzer ChaCH20, Curve25519, Blake2b und NTRU-Chiffren

WolfSSL bietet einen Trainingskurs an, der beschreibt, wie SSL / TLS funktioniert, sich mit der wolfSSL-Bibliothek vertraut machen, wolfSSL anpassen und verwenden sowie Best Practices für wolfSSL. Darüber hinaus werden Beispiele zum Herunterladen mit der Arduino IDE und dem IBM Watson IoT bereitgestellt.

Die Sicherheit in vernetzten eingebetteten Systemen ist ein wichtiges Anliegen, insbesondere angesichts der häufig zu beobachtenden Zunahme von IoT-Geräten, die zunehmend sensible Informationen sammeln. Die Ende-zu-Ende-Verschlüsselung der Gerätekommunikation kann verhindern, dass vertrauliche oder private Informationen durchgelassen werden, Man-in-the-Middle- oder Side-Channel-Angriffe vermieden werden, und bietet ein höheres Sicherheitsgefühl und Zuverlässigkeit in IoT-Anwendungen.

WolfSSL wurde 2004 gegründet, um speziell Sicherheitslösungen für Embedded-Systeme zu entwickeln. Die Gründer Larry Stefonic und Todd Ouska wollten Open-Source-Alternativen für OpenSSL bereitstellen, die ein klares Lizenzierungsschema aufwiesen, Portabilität und Geschwindigkeit für Embedded-Systeme boten und über eine moderne und intuitive API verfügten. Einer der ersten großen Benutzer von WolfSSL wäre MySQL, das den Titel der populärsten Open-Source-Datenbank der Welt trägt. Seither ist WolfSSL mit Ubuntu, Mongoose, cURL und OpenWRT gebündelt und kann sich rühmen, über 2 Milliarden Verbindungen zu sichern.

Sehen Sie sich das wolfMQTT Github-Repository an, um mehr zu erfahren: //github.com/wolfSSL/wolfssl


Ausgewähltes Bild mit freundlicher Genehmigung von WolfSSL.