I recently had the pleasure of attending a two-day Hackathon at the Vodafone/Huawei (the world’s first) Narrowband Internet of Things (NB-IoT) open lab. The event was centred around the practical application of NB-IoT and how to leverage the technology to attain the somewhat figurative holy grail of battery performance for IoT devices – ten year plus battery life. Now, I am well aware that NB-IoT is more buzz word than anything else at the moment so let’s talk about what it actually is and its relevance given the state of IoT today before discussing the specific features of the technology that help to minimise power consumption.

The Internet of Things (IoT), in its essence, covers connecting a large number of devices (Things) to the internet (Internet). This is highly useful, as it gives devices on the ground access to the cloud, however it also exposes said devices to many threats and brings in more attack vectors to wherever the devices are installed. As a result, security should always go hand in hand when talking about IoT.

If you're reading this then it's safe to assume that I don't need to explain why it's important to secure your web service, we can just jump straight into the how. Unfortunately, a catch-all tutorial is simply not possible with the plethora of technologies within the modern developer's arsenal so I've decided upon a tech stack similar to ours at Think Engineer for this tutorial. So, a more specific title could be: How to obtain an SSL certificate, using Let's Encrypt, for a multi-container Docker web application running on Ubuntu 18.0.4 - for free!