Designing an Access Control System for Internet of Things

For many Internet of Things (IoT) devices security have not been a priority during the development, but what happens if the makers of IoT devices use a secure framework for developing their devices? In this thesis a number of such frameworks have been evaluated for their suitability to build an acce...

Full description

Bibliographic Details
Main Author: Grape, Felix
Format: Others
Language:English
Published: KTH, Skolan för datavetenskap och kommunikation (CSC) 2017
Subjects:
IoT
rpc
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-217507
id ndltd-UPSALLA1-oai-DiVA.org-kth-217507
record_format oai_dc
collection NDLTD
language English
format Others
sources NDLTD
topic IoT
internet of things
access control system
security
generic
remote procedure call
rpc
access control
distributed access control
decentralized access control
generic access control system
sakernas internet
accesskontrollsystem
accesskontroll
generisk accesskontroll
generisk
Computer Sciences
Datavetenskap (datalogi)
spellingShingle IoT
internet of things
access control system
security
generic
remote procedure call
rpc
access control
distributed access control
decentralized access control
generic access control system
sakernas internet
accesskontrollsystem
accesskontroll
generisk accesskontroll
generisk
Computer Sciences
Datavetenskap (datalogi)
Grape, Felix
Designing an Access Control System for Internet of Things
description For many Internet of Things (IoT) devices security have not been a priority during the development, but what happens if the makers of IoT devices use a secure framework for developing their devices? In this thesis a number of such frameworks have been evaluated for their suitability to build an access control system around. Both Vanadium and Protocol of Things (PoT) were found to be suitable candidates. Both frameworks employ a distributed access control model where the owner of a device can grant other users access to the device by generating a signed authorization. PoT was ultimately chosen as the framework around which to design the prototype access control system because it was deemed to be slightly more suitable than Vanadium. The prototype takes the rule based and discretionary access control model from the underlying framework and makes it possible for administrators to transparently authorize users to devices through role abstractions. Thus it is possible to transparently manage a class of users at the same time instead of having to manage each individual user. Furthermore the prototype is able to do this in a generic way. The prototype does not contain any code of functionality for any specific device it manages, it is capable of managing access to any PoT device. The design and implementation is deemed both scalable and efficient. Running on a single thread it is possible to generate over one thousand signed authorizations per second. In a system where users are granted access to 200 unique device permissions the total file size of the signed authorizations and accompanying meta data does not exceed 150 kB. It takes approximately 70 ms to establish a secure connection between the client and server software. For large data transfers the throughput is approximately 2.6-2.8 MB per second, including encryption and decryption of request and response from the client to the server.  === För många enheter tillhörande sakernas internet har säkerhet inte varit en prioritet under utvecklingen, men vad händer om tillverkare istället använder ett säkert ramverk för att utveckla sina produkter? I den här rapporten presenteras en utvärdering av några sådana ramverks lämplighet för att användas för att bygga ett accesskontrollsystem kring. Både Vanadium och Protocol of Things (PoT) finns vara lämpliga kandidater. Båda ramverken använder en decentraliserad säkerhetsmodell där ägaren av en enhet kan ge andra användare tillgång till enheten genom att generera en signerad auktorisation. PoT är det ramverk som användes för att utforma accesskontrollsystemprototypen kring för att det ansågs vara något mer lämpligt jämfört med Vanadium. Prototypen använder en rollabstraktion för att underlätta arbetet för administratörer att ge användare rätt behörigheter. På så vis blir det möjligt att konfigurera en klass av användare samtidigt istället för att behöva konfigurera varje användare individuellt. Prototypen kan göra allt detta på ett generiskt sätt. Det innebär att prototypen inte innehåller någon kod eller funktionalitet som är specifik för någon enhet så länge det är en PoT-enhet. Den föreslagna designen och implementationen är skalbar och effektiv. Över ett tusen signerade auktorisationer kan genereras per sekund på en exekveringstråd. I ett system där användare ges behörighet till 200 unika behörigheter på olika enheter uppgår den totala filstorleken för de signerade auktorisationerna och tillhörande metadata till mindre än 150 kB. Det tar uppskattningsvis 70 ms att skapa en säker anslutning mellan klient- och server-mjukvara. För stora dataöverföringar är överföringshastigheten uppskattningsvis 2.6-2.8 MB per sekund, vilket inkluderar kryptering och avkryptering av fråga och svar från klienten till servern.
author Grape, Felix
author_facet Grape, Felix
author_sort Grape, Felix
title Designing an Access Control System for Internet of Things
title_short Designing an Access Control System for Internet of Things
title_full Designing an Access Control System for Internet of Things
title_fullStr Designing an Access Control System for Internet of Things
title_full_unstemmed Designing an Access Control System for Internet of Things
title_sort designing an access control system for internet of things
publisher KTH, Skolan för datavetenskap och kommunikation (CSC)
publishDate 2017
url http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-217507
work_keys_str_mv AT grapefelix designinganaccesscontrolsystemforinternetofthings
AT grapefelix utformningavettaccesskontrollsystemforsakernasinternet
_version_ 1718609262551236608
spelling ndltd-UPSALLA1-oai-DiVA.org-kth-2175072018-01-14T05:10:32ZDesigning an Access Control System for Internet of ThingsengUtformning av ett accesskontrollsystem för sakernas internetGrape, FelixKTH, Skolan för datavetenskap och kommunikation (CSC)2017IoTinternet of thingsaccess control systemsecuritygenericremote procedure callrpcaccess controldistributed access controldecentralized access controlgeneric access control systemsakernas internetaccesskontrollsystemaccesskontrollgenerisk accesskontrollgeneriskComputer SciencesDatavetenskap (datalogi)For many Internet of Things (IoT) devices security have not been a priority during the development, but what happens if the makers of IoT devices use a secure framework for developing their devices? In this thesis a number of such frameworks have been evaluated for their suitability to build an access control system around. Both Vanadium and Protocol of Things (PoT) were found to be suitable candidates. Both frameworks employ a distributed access control model where the owner of a device can grant other users access to the device by generating a signed authorization. PoT was ultimately chosen as the framework around which to design the prototype access control system because it was deemed to be slightly more suitable than Vanadium. The prototype takes the rule based and discretionary access control model from the underlying framework and makes it possible for administrators to transparently authorize users to devices through role abstractions. Thus it is possible to transparently manage a class of users at the same time instead of having to manage each individual user. Furthermore the prototype is able to do this in a generic way. The prototype does not contain any code of functionality for any specific device it manages, it is capable of managing access to any PoT device. The design and implementation is deemed both scalable and efficient. Running on a single thread it is possible to generate over one thousand signed authorizations per second. In a system where users are granted access to 200 unique device permissions the total file size of the signed authorizations and accompanying meta data does not exceed 150 kB. It takes approximately 70 ms to establish a secure connection between the client and server software. For large data transfers the throughput is approximately 2.6-2.8 MB per second, including encryption and decryption of request and response from the client to the server.  För många enheter tillhörande sakernas internet har säkerhet inte varit en prioritet under utvecklingen, men vad händer om tillverkare istället använder ett säkert ramverk för att utveckla sina produkter? I den här rapporten presenteras en utvärdering av några sådana ramverks lämplighet för att användas för att bygga ett accesskontrollsystem kring. Både Vanadium och Protocol of Things (PoT) finns vara lämpliga kandidater. Båda ramverken använder en decentraliserad säkerhetsmodell där ägaren av en enhet kan ge andra användare tillgång till enheten genom att generera en signerad auktorisation. PoT är det ramverk som användes för att utforma accesskontrollsystemprototypen kring för att det ansågs vara något mer lämpligt jämfört med Vanadium. Prototypen använder en rollabstraktion för att underlätta arbetet för administratörer att ge användare rätt behörigheter. På så vis blir det möjligt att konfigurera en klass av användare samtidigt istället för att behöva konfigurera varje användare individuellt. Prototypen kan göra allt detta på ett generiskt sätt. Det innebär att prototypen inte innehåller någon kod eller funktionalitet som är specifik för någon enhet så länge det är en PoT-enhet. Den föreslagna designen och implementationen är skalbar och effektiv. Över ett tusen signerade auktorisationer kan genereras per sekund på en exekveringstråd. I ett system där användare ges behörighet till 200 unika behörigheter på olika enheter uppgår den totala filstorleken för de signerade auktorisationerna och tillhörande metadata till mindre än 150 kB. Det tar uppskattningsvis 70 ms att skapa en säker anslutning mellan klient- och server-mjukvara. För stora dataöverföringar är överföringshastigheten uppskattningsvis 2.6-2.8 MB per sekund, vilket inkluderar kryptering och avkryptering av fråga och svar från klienten till servern. Student thesisinfo:eu-repo/semantics/bachelorThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-217507application/pdfinfo:eu-repo/semantics/openAccess