wolfSSL, a leading provider of security and connectivity solutions for the sensors and Internet of Things (IoT) markets, has announced the upcoming release of wolfMQTT support for MQTT v5.0, a client implementation of the Message Queuing Telemetry Transport (MQTT) protocol that provides lightweight, portable, and secure publish/subscribe messaging for developers of connected applications. Developed from scratch and written in native C, wolfMQTT has a compiled size of only 3.6 kB and is available for use under commercial or open source (GPLv2) licenses.
By design, MQTT relies solely on the transmission control protocol (TCP) to limit overhead in resource-constrained embedded devices, but offers no provisions for security or encryption. Based on the MQTT v5.0 specification and supporting quality of service (QoS) levels 0-2, wolfMQTT provides SSL/TLS (Secure Sockets Layer/Transport Layer Security) encryption through the wolfSSL library, adding as little as 20-30 kB when paired with hardware acceleration to prevent eavesdropping and man-in-the-middle attacks. In addition, techniques like TLS session resumption can further reduce connection costs for sensor devices or other platforms with limited resources.
“wolfSSL is excited about adding our cutting edge TLS 1.3 security to the increased scalability and better support for small clients that MQTT 5.0 provides.” says Todd Ouska, Co-Founder and CTO of wolfSSL. At less than 1200 lines of code, wolfMQTT is extremely portable with minimal external dependencies, making the library easy to compile across multiple platforms. wolfMQTT supports Linux, Windows, OS X, FreeRTOS, and other operating systems, as well as a range of chipsets from leading silicon vendors, including ARM, Analog Devices, Intel, Microchip, NXP, STMicroelectronics, NXP, and Texas Instruments.
“wolfMQTT’s progression to the new 5.0 standard helps developers to lever our security coding and testing standards when using this critical IoT protocol. Our implementation of MQTT has proven quite popular when coupled with wolfSSL."says Larry Stefonic, Co-Founder and CEO of wolfSSL.
The MQTT 5.0 specification makes several improvements to the protocol including:
AUTH packet type to submit authentication after connect.
CONNACK packets now include a reason code to better describe connect failures.
DISCONNECT now supports server to client.
Packets can include optional key/value properties.
New data type for UTF-8 string pairs.
No retry for QoS 1 and 2 packets (let TCP handle retry).
Passwords can be provided without a username.
For more information on wolfMQTT, visit www.wolfssl.com/wolfSSL/Products-wolfmqtt.html
Download wolfMQTT under the GPLv2 license at www.wolfssl.com/wolfSSL/download/downloadForm.p[...]
For licensing questions, contact licensing(at)wolfssl.com
For more on the wolfMQTT secure firmware update example, visit www.wolfssl.com/wolfSSL/Blog/Entries/2015/11/30[...]