Complete Suite of Embedded Web Development ToolsStandalone Tools for Embedded Development
IoT Protocols
Quick Look
|
“MQTT made SECURE” Source Code | No RoyaltiesSharkMQTT is a reliable and secure implementation of the MQTT standard, designed specifically for use in the Internet of Things. By incorporating SSL encryption, SharkMQTT offers military-grade authentication and encryption to ensure efficient and secure communication with brokers, even on resource-constrained embedded devices. If you are looking for a powerful and secure solution for MQTT communication in your IoT project, SharkMQTT is an excellent choice. |
MQTT is a popular IoT protocol suitable for constrained devices. MQTT is based on the Pub/Sub messaging principle of publishing messages and subscribing to topics. The MQTT specification recommends TLS as a transport option to secure the otherwise insecure MQTT protocol.
SharkMQTT is an embeddable C source code library designed specifically for using the zero-copy API provided by the SharkSSL TLS stack. The MQTT stack supports all packet types and all Quality of Service (QoS) levels 0-2 and is included as a free and ready-to-use SharkSSL package.
Note: We provide two MQTT client stacks: SharkMQTT (C89 compatible C code) and LMQTT (Lua code). Our LMQTT stack is MQTT Sparkplug ready.
The SharkMQTT stack is mainly designed for embedded devices, but it can also be compiled for both Windows and Linux. Below is an example demonstrating how to compile and run the MQTT chat example on Linux and the Windows Subsystem for Linux (WSL).
Simply copy the above commands and paste them into a console window. To test the chat example, ensure you run a second instance on a different computer.
If RAM/ROM size and/or communication speed are important, then SharkMQTT is a no-brainer. The TLS stack SharkSSL, used by SharkMQTT, is the smallest and fastest TLS stack for embedded use and fits into tiny microcontrollers.
The SharkMQTT source code includes commercial support. Our engineers have extensive experience in security, including how to safeguard an MQTT solution. The problem with MQTT is that the broker is, by default, not secure even when used with TLS. If you are unaware of these security issues and do not know how to mitigate the MQTT issues, you risk compromising the IoT solution, including the broker and all connected devices.
Out-of-the-box operating system (OS) support includes INTEGRITY, MQX, SMX, Azure RTOS, embOS, VxWorks, QNX, FreeRTOS, MDK-ARM, Microchip, Mediatek, lwIP, Linux, and Windows.
Out-of-the-box support for lwIP in event-driven mode.
SharkMQTT is built for maximum portability and is generally very easy to port to new platforms.
See also our SMQ IoT protocol, which includes integrated one-to-one communication, a feature typically required in IoT design.
We provide several MQTT examples and tutorials, including online interactive tutorials. See the MQTT Security Tutorials for details or dive into how hackers can penetrate your MQTT solution unless you harden your MQTT solution as outlined in the article, How to Harden Your MQTT Device and Simplify Its Configuration.