Secure over-the-air updates for wireless Internet-of-Things devices

Loading...
Thumbnail Image

URL

Journal Title

Journal ISSN

Volume Title

Sähkötekniikan korkeakoulu | Master's thesis

Date

2020-08-17

Department

Major/Subject

Translational Engineering

Mcode

ELEC3023

Degree programme

AEE - Master’s Programme in Automation and Electrical Engineering (TS2013)

Language

en

Pages

52

Series

Abstract

Over-the-air updates enable device manufacturers to update the software in Internet-of-Things devices even after the devices are released to the market. The ability to update the software makes it possible to patch security vulnerabilities, add new features, and modify the product without a need to access it physically. By rendering the physical access unnecessary for updates, the costs associated with product recalls are removed. The absence of product recalls not only benefits the manufacturers but also leads to better user experience. Over-the-air updating can also be applied as a part of Continuous Delivery processes utilized in Agile software development methods. This thesis conducts a literature study on what are the best practices to follow when developing over-the-air update systems for Internet-of-Things devices. The best practices are then applied in practice to a device called RuuviTag by analyzing its update process. As a result, 11 best practices are found, and most of them can be applied to the RuuviTag. However, it is found that many of the found best practices are dependant on the use-case of the device.

Over the air (OTA) -päivityksillä, eli ilman fyysistä kontaktia tapahtuvilla päivityksillä, mahdollistetaan laitteiden ohjelmistopäivitykset myös laitteiden toimituksen jälkeen. Ohjelmistopäivitykset laitteiden toimituksen jälkeen mahdollistavat muun muassa tietoturvapäivitysten jakelun, uusien ominaisuuksien lisäämisen ja tuotteen muokkaamisen käyttäjien toiveita huomioiden. Mikäli laitteiden takaisinkutsut ohjelmiston päivitystä varten voidaan välttää, laitteiden valmistajat säästävät takaisinkutsukuluissa ja laitteiden käyttäjät säästyvät toimenpiteeseen liittyvältä vaivalta. Tällaisia päivitystapoja voidaan myös hyödyntää ketterän ohjelmistokehityksen tarpeissa. Tämä diplomityö sisältää kirjallisuustutkimuksen, jonka päämääränä on selvittää parhaat käytänteet, joita on syytä noudattaa OTA-järjestelmien kehityksessä erityisesti esineiden internetin (IoT) näkökulmasta. Tämän jälkeen käytänteitä käytetään RuuviTag-nimisen laitteen päivitysprosessin analysointiin. Diplomityön lopputuloksena on 11 käytännettä OTA-järjestelmien kehitykseen ja suurin osa löydetyistä käytänteistä on sovellettuna RuuviTagin päivitysprosessissa. Moni löydetyistä käytänteistä vaatii kuitenkin tapauskohtaista pohdintaa niiden tarpeellisuudesta. Joissain tapauksissa esimerkiksi kaikkia turvallisuusominaisuuksia ei välttämättä vaadita.

Description

Supervisor

Ketomäki, Jaakko

Thesis advisor

Klemetti, Marko

Keywords

internet of things, over the air updates, Bluetooth loweEnergy, agile methods

Other note

Citation