microTLS (µTLS) is a lightweight developer framework designed specifically for micro-controllers to provide a secure communications platform which allows developers to focus purely on the business logic of their sketches yet once done have a feasible go-to-market solution without the headaches of injecting secure communications in such a resource constrained environment.
Developers that are familiar with the Arduino platform will feel right at home - a basic Arduino sketch contains two callbacks:
microTLS (µTLS) extends on this design principle, making it extremely simple for developers to adapt their code - two additional callbacks are defined to allow the generation of a message to send to the server and be able to process any response received. The platform handles all communication with the server and the exchange of information - meaning the developer does not need to deal with encryption or networking libraries that require tedious fiddling to get working perfectly.
It cannot be simpler than that, it is as simple as "ping-pong" between the micro-controller, sensors and cloud server.
microTLS (µTLS) can be implemented on any bi-directional communication stream, including, but not limited to TCP, Serial (RS232 and TTL), 6LowPAN, Zigbee, BLE (Bluetooth Smart) and RF (Radio Frequencies) - meaning it can make a micro-controller securely communicate to a cloud server, or in more advanced deployments provide secure communications amongst a mesh of sensors acting as a gateway connected to a cloud server using microTLS (µTLS) or even HTTPS if resources are available to do so.
microTLS (µTLS) does all the leg work for the developer behind the scenes to ensure that information is transmitted securely between the micro-controller, sensors and the cloud server. The platform confirms to principles defined by the Transport Layer Security standard - dealing with all aspects of establishing trust, securely exchanging an encryption key and ongoing integrity checks to ensure the messages have not been tampered with in any way or portions of the message have been lost in transmission.
microTLS (µTLS) uses a number of well known encryption and security algorithms that have been adapted specifically to be used within resource constrained micro-controller environments where memory and code footprint are extremely restricted. At no point have any algorithms been compromised - the best part is the developer gets to choose the algorithms they wish to use based on the target micro-controller being used. Additional algorithms can be added in a modular fashion to ensure longevity of the platform.
Our goal was to keep things as easy to follow and as simple to use - even down to explaining how the framework functions.