Now that you have the WoTT Agent installed on your device(s), you’re ready to use our certificates and credential manager for your projects. Recall that these two services have different purposes regarding your projects and what you hope to achieve.
If you have active projects that utilise security and wish to experiment with WoTT’s capabilities by yourself, here are some pointers to keep in mind:
.crtfile into this path
If you need a refresher on credentials, refer back to the ‘Getting Started’ page. Otherwise, you are now all set up to use WoTT in your own applications. If you need any assistance, we have a support thread where you can interact directly with our developers and contributors alike.
Join the discussion and let’s move forward together with making IoT more secure.
If you do not have any specific projects in mind; or are downloading WoTT to test our services out, then you can refer to some of our pre-written examples below to give you an idea of scenarios where you can use our Agent.
Many of these examples include using WoTT to secure connections with popular cloud platforms like Google Cloud or Adafruit IO with more use cases constantly being developed and added.
Note: all these examples can be found on our Github. If you have a platform in mind that we do not have a guide for, please suggest it on the support thread- or request to add it to our repository; we’re open-source after all and welcome contributors.
Our use cases can be divided into certificate managed or credential managed examples as both are required for different functionalities. We’ll separate them below for clarity. As a general rule, certificate managed examples tend to be a bit trickier. Once again, please go to our support thread if you need any help.
Many of the IoT cloud service examples use MQTT, a lightweight messaging protocol to publish/subscribe messages. This is ideal for unreliable network connections or high-latency environments (as can be with IoT devices) but is typically not encrypted and uses TCP transport protocols by default. WoTT uses mTLS which runs over the TCP layer. In essence, mTLS establishes a handshake and only allows connectivity if the handshake is successful (certificates are accepted).
Google Cloud Platform provides services that developers can use. Here we show you how to set up your WoTT Agent device and enroll it to your Google Cloud project to communicate with Google’s services. Includes Google’s MQTT example.
You will need 2 WoTT Agent devices: one acting as server, one as client. This example uses the concept of WoTT’s cryptographic identity to verify devices and verify connection. We’ve included a very somple WebApp for the example, but the principle applies to any WebApp that you develop yourself- just ensure you do the correct setup as illustrated in the guide.
There are still many cases where we cannot verify a device’s access rights through certificates alone. Securing browser accessible apps and some IoT cloud services require authentication. Our credential service is here so you can manage this from the WoTT Dashboard. You will need to have an account with WoTT for the following examples.
Uses a similar WebApp to the certificate authenticated app but uses HTTP Basic Authentication instead which can be thought of as a typical login. A WoTT Agent device acts as a server and we show you how to use credentials to add login details for browser access.
Adafruit IO is a service provided by Adafruit that concerns itself with simplifying the presentation and usage of data for IoT devices. To access Adafruit IO feeds within your own applications, you need your Adafruit IO username and access AIO key. This example shows how to store those credentials securely in WoTT and call the credentials to secure access to the feed within a Python 3 application.
Screenly OSE is a free digital signage platform. Access to Screenly OSE’s management page can be secured with HTTP authentication via a login with a username and password. This example shows how to use WoTT dash to create and store these access credentials. These credentials can then be used within Screenly OSE.
Firstly from all of us, thank you for using WoTT.
While IoT has been a major revolution of the modern day lifestyle, from our homes to supermarkets; it poses a very real and exploitable security threat- but it doesn’t need to. Through these examples, we hope you can see how easy it is to use WoTT to secure your projects so that you can be confident going forward as developers in the global phenomenom that is IoT.
At WoTT, we are a community of security-minded individuals and we value your contributions as the developers that use our product. We therefore encourage you to interact with us on our support thread and Github so that we can build a more secure IoT future together.