Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/309914102

Identity Management of Devices in Internet of Things Environment

Conference Paper · September 2016


DOI: 10.1109/ICITCS.2016.7740343

CITATIONS READS
20 777

2 authors:

Michal Trnka Tom Černý


Czech Technical University in Prague Baylor University
16 PUBLICATIONS   250 CITATIONS    142 PUBLICATIONS   1,120 CITATIONS   

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Bytecode analysis to detect code clones and inconsistencies View project

Paper Call (IF 1.2): Code Analysis and Software Mining in Scientific and Engineering Applications View project

All content following this page was uploaded by Tom Černý on 30 September 2020.

The user has requested enhancement of the downloaded file.


Identity management of devices
in Internet of Things environment
Michal Trnka Tomas Cerny
Dept. of Computer Science Dept. of Computer Science
FEE, Czech Technical University FEE, Czech Technical University
Technická 2, 166 27 Praha, Czech Republic Technická 2, 166 27 Praha, Czech Republic
Email: trnkami1@fel.cvut.cz Email: tomas.cerny@fel.cvut.cz

Abstract—Significant interest in internet of things drives both This paper proposes a framework that creates trusted envi-
research and industry production these days. A lot of important ronment of devices around centralized identity store. It allows
questions has been solved but some remain opened. One of the not only authentication, but also complete device identity
essential unresolved issue is the identity management of single
devices. management. The following text describes tools for connect-
This paper proposes solution for management of devices for ing devices into the network and their initial verification,
internet of things. The solution is based on central identity processes for devices invalidation and also for their basic
store. Each device has an associated account in the store identity management (e.g. assigning devices with roles). The
with corresponding roles. For any communication the device framework also allows response fast enough to prevent any
retrieves OAuth 2.0 token and uses it to certify itself in every
network connection. The proposed framework creates trusted further damages in case of an attack targeting devices [5]. This
environment and enables rapid response for any security events. paper brings a case study presenting a real example of the
devices authentication and authorization involving proposed
framework.
I. I NTRODUCTION The rest of the paper is organized as follows. Section 2.
The notion Internet of things (IoT) is currently getting a provides related work. Next a security framework proposal is
lot of attention and first real usages are taking place in real introduced. A case study is provided in Section 4. Finally, we
world scenarios. For instance, Gartner Inc. [1] predicts that by conclude the paper.
2020 there will be 26 billion units installed in IoT products.
Although to make IoT solutions ready for production-level II. R ELATED W ORK
quality outside of controlled lab environment multiple issues
needs to be solved. Security and privacy challenges are con- Seitz et al. [6] propose a framework with Authorization En-
sidered to be one of the most crucial [2], [3]. Gartner company gine as Trusted Third Party. It resolves authorization requests
states [1]: The Internet of Things concept will take more for constrained devices when user wants to access any of
than 10 years to reach the Plateau of Productivity - mainly devices data or service. The Authorization Engine is exposed
due to security challenges, privacy policies, data and wireless through REST API and therefore most of the IoT devices can
standards, and the realization that the Internet of Things access it. The overall architecture is very similar to our and
requires the build-out of a topology of services, applications the authors propose very complex framework built on top of
and a connecting infrastructure. the existing technologies. However, they deal with user-device
The IoT builds on an idea that a single device may not security and this work does not address machine to machine
provide any significant and useful functionality and therefore trust.
it cooperates with multiple other devices in its neighborhood. Kothmayr et al. [7] surveys two-way authentication scheme
An individual device needs to trust other devices in order to for IoT devices using Datagram Transport Layer Security
deliver any value for a user. The trust must be established not protocol. While the proposed solution describes feasibility of
only among devices and but also between the user and the the protocol usage for point to point communication, it does
devices. not describe any management and administration of multiple
However, device management and creation of confidential devices.
environment between them is one of the major open issues in Zhang et al. [8] describe distributed privacy-preserving
IoT [4]. IoT can be divided into three layers - perception, trans- access control in sensor networks. Token based approach in
port and application. The device identity management must be single owner multi user sensor networks is used to preserve
implemented at least on application layer as it is responsible users’ privacy with central token issuing authority. The work
for all communication with end user and significant part of is focused on issue with token-reusability is discussed in the
communication with devices, as it gathers all relevant data for paper. However, their protocol does not solve fine grained
user. access control policies.
IoT device Identity Store Service provider

Device set up with


System administrator
credentials

Create account for device(credentials) Communicating Token expired Initialized


Setup device
(credentials)
Token aquired
loop Device retired
Device
[For device lifespan] Administrator Administrator
retired
disable device enable device
opt
[no token or token invalid] Device
token= Request token decomisioned
Invalidated
(credentials, client)
Administrator disable device

[valid token] Do request(token)


Verify token(token)

response() Fig. 2. Diagram of device’s possible states

in which both participants can verify identity of the second


partner and also they can determine if the partner is allowed
opt Disable device account() to perform the given action.
Communication consists of two participants. The first one,
called provider, exposes services to others. If the provider
decides that its services are secured it must register at the
identity store as an identity client. The second one, consumer,
Fig. 1. Diagram of communication in the proposed framework uses providers functionality and initiates the communication.
To initiate communication with secured service, it needs to
Solution suggested by Pranata et al. [9] uses capability acquire a token from the identity store that is valid for the
tokens for granting access to services. The token is issued by particular provider. This enables authentication at the identity
provider for a client during the initial provision of a service. store and at the same time it prevents misuse by malicious
It consists of a URL, user/object ID, time stamp of creation, service providers.
subscription period, service ID and list of access permissions. The identity store does not need to serve solely as an
Though the paper does not address sharing of the access authentication service, it also provides additional functionality.
permissions across providers, how to deal with overtake of In this case devices are provided with authorization roles. The
a client, and most importantly, how the avoid duplication of service provider can specify roles allowed for a given action.
information for authentication and authorization of clients on When the consumer tries to use the service its roles are verified
service providers. at the identity store. This also means that the roles are global
Nehme et al. [10] describes framework for data authentica- in the specific IoT environment, which reduces efforts related
tion in IoT. Data are treated as streams with security punctu- to administration and the amount of repeating configurations
ations, which get analyzed before the data are provided to its across all systems.
consumers. The work does not describe how to apply security Figure 1 demonstrates the work-flow of devices authenti-
rules, therefore MAC, DAC and RBAC can apply for such cation and authorization. It can be described in the following
solution. Nevertheless, the work expects the data creator to set steps:
restrictions on them, which is unsuitable in many applications, • Administrator creates an account for a device and set up
when the sensor is just a slave of another hierarchically, a its roles.
higher entity (for example temperature meter of home network • The device is configured with credentials provided by the
server). Moreover, it does not address problem of security rules administrator and requests a token from the store.
duplication and consistency across different devices. • For any confidential communication the device uses the
token to authenticate itself.
III. S ECURITY F RAMEWORK P ROPOSAL • Application/device receiving the communication verifies
This paper proposes a framework with a central identity the identity and roles by given token at the central store.
store, which would keep the record for every device connected • Administrator can disable or remove a device from the
to the network. It contains not only unique identifiers for identity store and therefore effectively disable it for any
devices but also supports the Role-Based Access Control [11] cooperation.
by storing the roles internally. All machines and applications Using the central identity element in IoT promotes a trusted
in the network can use those roles for their authorization rules. environment. Devices does not deal with machine to machine
Such trusted central identity provider can provide environment, trust, it is enough if they establish a confidence in the identity
store. whenever there is a suspicion about a hostile takeover

or
of any device, the device can be withdrawn all its roles.

ns
Se
This action ensures immediate propagation through the whole
network. This kind of approach applies also to less serious sit-
uations, such as device malfunction resulting with transmission
of faulty data. However using any central element in network
Identity
architecture has known security threats, as for example DoS App
attack, and therefore need to be sufficiently protected. Store
Configuring a device in such a network does not require
significant efforts. First, the device is setup provided with
credentials. Before it initiates communication with its partner, Se
it requests a token with credentials, valid solely for the given ns
or
service provider, restricted to a certain period of time. In
certain cases a time-unlimited token is viable, in others token
with a short-time validity is preferred. However, once the Fig. 3. Scheme of our case study application
device obtains a token, it can communicate freely with the
partner. The partner can verify device identity as well as its the sensors provide digital output and therefore can be
roles, based on the presented token. used without any analog-to-digital converter. However
The framework supports communication over REST API sensors still need to be connected to some device with
[12]. This allows utilization of all the technologies and prop- computational capabilities to transmit the data over the
erties of the HTTP protocol [13]. At first, SSL protocol [14] is internet. In this case Raspberry Pi is used to host sensors
tightly integrated with the HTTP protocol (called HTTPs [13]), services.
• An application using data from sensors - simple applica-
which provides us transportation security as added identity
confidentiality in the network. The advantage brought by this tion with RESTful interface. It gathers data from sensors
approach is that firewalls rarely block communication on ports and exposes them to users via JavaScript web front end.
80/443. There might exist potentially more suitable protocol Central identity store is deployed as a standalone appli-
than HTTP(S),which is tied to REST architecture, however cation. It consists of two roles roles temperatureSensor and
none of them is so widely used and adapted as HTTP(S). movementSensor. Next, an account for every device was
created and assigned appropriate roles. The password and
IV. C ASE STUDY username of the given account must be provided to the
Based on the framework proposal described in the previous particular sensor. Authentication token is set to never expire.
section we form a prototype that builds on existing solutions This allows to a device to use it as long as needed without need
(as suggested by Finkelstein [15]) integrated together to pro- to refresh it periodically. OAuth 2 protocol is used for bearer
vide the expected functionality. Building on top of existing token [18] acquisition and the token issued follows JSON
solutions allows us leveraging user efforts and simplify the Web Token (JWT) standard [17]. The advantage of using JWT
transition to the real usage. Furthermore, using existing infras- tokens is that they may contain additional information, such as
tructure does not constrain us with other issues to address, and user roles, etc. Therefore the communication with the central
mostly it brings a verification to the proposals applicability and identity store can be reduced to a single call aggregating
integrability with existing production-level tools. Moreover, it multiple information and thus improving the performance.
ensures that current state of art is sufficient for extension and The sensors by itself do not posses any computational power
no further crucial technologies needs to be developed as an and therefore they need a device to control and observe them.
replacement. In our case study they are directly wired onto to the bus of
Raspberry Pi computer. Small script written in JavaScript on
Small scale simulation of IoT was created for the purpose
top of Node.js framework performs all the logic related to
of that paper. Figure 3 shows scheme of our case study
the sensors. The script differs for various types of sensors and
application. It consists of those major elements:
1
needs to be initialized with credentials for the particular sensor.
• Central identity store - Keycloak was chosen as it
The communication process is following:
provides Single-Sign-On and identity management for
• Acquire token with username/password.
web applications and mainly for RestFul web services.
• Every second send information to the central application,
For our purposes was leveraged mainly support of Oauth
with token for authentication and authorization.
2 [16] and OpenID Connect2 JSON Web Token [17]
• If token becomes invalid, attempt to acquire new one.
standards.
• Two sensors - in particular movement sensor HC-SR501
All the communication between sensors, the central identity
and temperature sensor DS18B20 were used. Both of store and the central application are made through RESTful
interfaces. As the sensors are managed by JavaScript service
1 http://keycloak.jboss.org/ additional mocked sensors can be deployed into the case study
2 http://openid.net/connect/ environment, not impacting the scalability of the infrastructure
The central application receives data from sensors and R EFERENCES
display them at a web page. In order to do so the application [1] Gartner Inc. (2013, July) Hype cycle for the internet of things, 2013.
consists of two parts - backend and frontend. The backend [Online]. Available: https://www.gartner.com/doc/2571716/hype-cycle-
part uses Java EE and it leverages the Keycloak adapter to internet-things-
[2] L. Atzori, A. Iera, and G. Morabito, “The internet
make integration with central identity server easier. It provides of things: A survey,” Computer Networks, vol. 54,
RESTful interface for gathering data from sensors and also for no. 15, pp. 2787 – 2805, 2010. [Online]. Available:
exposing the gathered information. The frontend part of the http://www.sciencedirect.com/science/article/pii/S1389128610001568
[3] J. Gubbi, R. Buyya, S. Marusic, and M. Palaniswami, “Internet
application is also connected to this RESTful interface. of things (iot): A vision, architectural elements, and future
The case study demonstrates that using proposed scheme is directions,” Future Generation Computer Systems, vol. 29,
possible and it enables the expected advantages, such as broad no. 7, pp. 1645 – 1660, 2013, including Special sections:
Cyber-enabled Distributed Computing for Ubiquitous Cloud and
machine to machine trust and rapid incident reaction. However Network Services & Cloud Computing and Scientific Applications
it also shows limitations that should be addressed. First, there Big Data, Scalable Analytics, and Beyond. [Online]. Available:
is a need to distribute credentials for every sensor, store it at http://www.sciencedirect.com/science/article/pii/S0167739X13000241
[4] R. Roman, J. Zhou, and J. Lopez, “On the features and
the device and use it for obtaining a token. Second, for every challenges of security and privacy in distributed internet of
sensor an administrator needs to manually create an account, things,” Computer Networks, vol. 57, no. 10, pp. 2266 –
set up its roles and propagate identification and password to 2279, 2013, towards a Science of Cyber SecuritySecurity and
Identity Architecture for the Future Internet. [Online]. Available:
sensor. http://www.sciencedirect.com/science/article/pii/S1389128613000054
The performance overhead is expected to be very low. [5] Q. Jing, A. V. Vasilakos, J. Wan, J. Lu, and D. Qiu, “Security
of the internet of things: perspectives and challenges,” Wireless
Communication initiator only needs to get a token for a Networks, vol. 20, no. 8, pp. 2481–2501, 2014. [Online]. Available:
particular partner once from the central identity store and then http://dx.doi.org/10.1007/s11276-014-0761-7
it uses the same one for a specified amount of time. The time [6] L. Seitz, G. Selander, and C. Gehrmann, “Authorization framework for
the internet-of-things,” in World of Wireless, Mobile and Multimedia
can vary from single request till the whole device lifespan. The Networks (WoWMoM), 2013 IEEE 14th International Symposium and
receiving part of the communication needs to verify the token Workshops on a, June 2013, pp. 1–6.
frequently (most like in every request, but this depends on the [7] T. Kothmayr, C. Schmitt, W. Hu, M. Brnig, and G. Carle, “{DTLS}
based security and two-way authentication for the internet of things,” Ad
decision of application creators). Only frequent verifying of Hoc Networks, vol. 11, no. 8, pp. 2710 – 2723, 2013. [Online]. Available:
the token with central identity store can ensure rapid response http://www.sciencedirect.com/science/article/pii/S1570870513001029
for malicious device, which is disabled on central identity [8] R. Zhang, Y. Zhang, and K. Ren, “Distributed privacy-preserving ac-
cess control in sensor networks,” IEEE Transactions on Parallel and
server. Distributed Systems, vol. 23, no. 8, pp. 1427–1438, Aug 2012.
[9] H. Pranata, R. Athauda, and G. Skinner, “Securing and governing access
V. C ONCLUSION in ad-hoc networks of internet of things,” in Proceedings of the IASTED
International Conference on Engineering and Applied Science, EAS,
This paper addresses IoT device management with the 2012, pp. 84–90.
main focus on their authentication and partially authorization. [10] R. V. Nehme, E. A. Rundensteiner, and E. Bertino, “A security punc-
tuation framework for enforcing access control on streaming data,” in
A framework proposal is shown including a case study of 2008 IEEE 24th International Conference on Data Engineering, April
experimental implementation of the suggested solution. 2008, pp. 406–415.
The key component of the framework is the central identity [11] D. Ferraiolo and R. Kuhn, “Role-based access control,” in 15th National
Computer Security Conference, April 1992, pp. 554–556.
store. It enables administration of all devices from a single [12] L. Richardson and S. Ruby, Restful Web Services, 1st ed. O’Reilly,
place and promotes trusted environment. All devices have an 2007.
account associated with roles. This enables not only authenti- [13] R. Fielding and J. Reschke, “Hypertext Transfer Protocol
(HTTP/1.1): Semantics and Content,” RFC 7231 (Proposed Standard),
cation but also basic authorization. The authentication follows Internet Engineering Task Force, Jun. 2014. [Online]. Available:
OAuth 2 protocol and all the communication uses JWT token. http://www.ietf.org/rfc/rfc7231.txt
In case of any security incident, the given device can be [14] A. Freier, P. Karlton, and P. Kocher, “The Secure Sockets
Layer (SSL) Protocol Version 3.0,” RFC 6101 (Historic),
disabled by administrator at a single place and consequently Internet Engineering Task Force, Aug. 2011. [Online]. Available:
the device will not be able to participate in any further http://www.ietf.org/rfc/rfc6101.txt
communication. [15] A. Finkelsteiin and J. Kramer, “Software engineering: A roadmap,” in
Proceedings of the Conference on The Future of Software Engineering,
However the presented solution exposes few limitations. It ser. ICSE ’00. New York, NY, USA: ACM, 2000, pp. 3–22. [Online].
uses only basic RBAC authorization and it solves security only Available: http://doi.acm.org/10.1145/336512.336519
[16] D. Hardt, “The OAuth 2.0 Authorization Framework,” RFC 6749
on application layer. It does not address network security as (Proposed Standard), Internet Engineering Task Force, Oct. 2012.
well as it can not protect devices from physical manipulation. [Online]. Available: http://www.ietf.org/rfc/rfc6749.txt
This paper does not provide any performance evaluation at [17] M. Jones, J. Bradley, and N. Sakimura, “JSON Web Token
(JWT),” RFC 7519 (Proposed Standard), Internet Engineering Task
production environment, which remains as future work. Force, May 2015, updated by RFC 7797. [Online]. Available:
http://www.ietf.org/rfc/rfc7519.txt
ACKNOWLEDGMENT [18] M. Jones and D. Hardt, “The OAuth 2.0 Authorization
Framework: Bearer Token Usage,” RFC 6750 (Proposed Standard),
Research described in the paper was supported by the Grant Internet Engineering Task Force, Oct. 2012. [Online]. Available:
Agency of the Czech Technical University in Prague, under http://www.ietf.org/rfc/rfc6750.txt
grant No. SGS16/234/OHK3/3T/13.

View publication stats

You might also like