Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[mosquitto-dev] Chacha20 and poly1305 for resource constrained devices.


Chacha20/poly1305 is a new cipher/hash combination that is truly amazing due to its small size and fast encryption/decryption speed. In my opinion, this cipher combination should be the de-facto symmetric encryption for MQTT.

The problem is that OpenSSL, which is used by Mosquitto, does not support this cipher. I therefore urge the Mosquitto developers to switch to either LibreSSL or boringssl (Google). Both of these libraries support Chacha20/poly1305.

SSL can have a huge resource impact on small microcontrollers (both size and speed), and it is therefore crucial that the best cipher combination is selected to reduce the amount of resources used; resources are both memory and CPU. If you are interested, you can read our Certificate Management for IoT tutorial that explains this in detail:
https://realtimelogic.com/ba/doc/en/C/shark/md_md_Certificate_Management_for_IoT.html

From the above tutorial:
The combination of ChaCha20 and Poly1305 is particularly well suited for securing small embedded devices that need to preserve memory, footprint, and maintain performance with the least amount of encumbrance, by cutting down on the amount of time spent encrypting and decrypting data.






Back to the top