For this project, I've explored the surveillance of the smart home. How are IoT devices, such as smart speakers, TVs, lighting systems and cameras, behaving in our network environments? We connect these systems to our networks without second-guessing their security. Whilst devices sit on our countertops, on 'stand-by', what are they actually doing? Are they communicating? I have developed an IoT surveillance tool allowing users to monitor their smart devices.
During my research, I discovered a huge market for services allowing users to monitor their IoT devices. I explored some of these existing services and decided to develop my tool, which introduces features lacking in existing systems. One of these features includes an in-depth breakdown of connections and the ratio of secured and unsecured data.
I have developed a working prototype using HTML, CSS & JavaScript. First, the user is presented with a landing page where they are onboarded on how to use the tool. I have developed iconography and animations which demonstrate the capabilities of the tool.
The tool uses Augmented Reality to visualise data, a unique approach for an IoT surveillance tool which no existing systems utilise. I went with an AR approach because I felt it would be interesting to see something initially intangible through augmented elements on your screen, making them tangible digitally.
I used a-frame.js to code the AR elements. The tool shows the total data transmitted from the device to servers worldwide. Whether this data was unsecured, HTTP, or secured HTTPS traffic packets. I play with shapes, colour and size to represent the different elements. Cubes flying into the device represent traffic packets entering the device. Red cubes represent data going in, and blue data going out. A green sphere around the device illustrates a forcefield, meaning your data is secured and protected.
The tool could be developed further. For example, users could point their phone to a smart device in their home, and by utilising AR capabilities, the tool could present the data elements in the user's physical environment, as the images below visualise.