You are on page 1of 16

Research Article

International Journal of Distributed


Sensor Networks
2017, Vol. 13(8)
A user-centric Internet of Things Ó The Author(s) 2017
DOI: 10.1177/1550147717727974
platform to empower users for journals.sagepub.com/home/ijdsn

managing security and privacy


concerns in the Internet of Energy

Juan A Martı́nez1, José L Hernández-Ramos2, Victoria Beltrán2,


Antonio Skarmeta2 and Pedro M Ruiz2

Abstract
Current worldwide energy challenges require the synergy of multidisciplinary actions and activities affecting different sta-
keholders, such as governments, utility companies, and citizens. In recent years, these needs are being addressed through
the integration of the Smart Grid paradigm with the so-called Internet of Things, in order to make energy decisions
aware of data from devices that are physically deployed on a smart city. However, to address such concerns, many of the
scenarios from this resulting ecosystem, require huge amounts of data in order to make efficient and effective decisions
about energy distribution and saving. In this sense, the application of proper security mechanisms to allow the selective
disclosure of information to the intended parties is crucial to guarantee that users’ privacy is not harmed. In this work,
we propose the application of specific attribute-based access control technologies to protect the energy data that are
outsourced from different devices. This integration is part of the ongoing work within MiMurcia Smart City project,
which is intended to provide an integral platform to build a more sustainable and efficient city.

Keywords
Internet of Energy, security, privacy, Internet of Things, energy efficiency

Date received: 16 June 2017; accepted: 2 August 2017

Academic Editor: Pietro Manzoni

Introduction crucial issue for the worldwide economy and environ-


ment. Indeed, the global need for energy optimization
The world has experienced an unprecedented urban in city management is reported by the United Nations;
growth in recent decades. The trend of population migra- Christiana Figueres, executive secretary of United
tion to the cities reached a milestone in 2008, when for the Nations Framework Convention on Climate Change
first time the world’s population was evenly split between (UNFCCC), stated that information and communica-
urban and rural areas. According to a report from the tions technology (ICT) can play an essential role in
United Nations (UN) (World Urbanization Prospects:
The 2007 Revision Population Database (2007) by United
Nations Population Division), in developed nations, 1
Odin Solutions S.L., Murcia, Spain
2
about 74% of the population is urban. Moreover, there University of Murcia, Murcia, Spain
are more than 400 cities with a population of over 1 mil-
Corresponding author:
lion people and 19 with over 10 million. Juan A Martı́nez, Odin Solutions S.L., Polı́gono Industrial Oeste, C/Perú,
Such population concentration involves numerous 5, 3°, Oficina 5, 30820 Murcia, Spain.
challenges; resource and energy management is a Email: jamartinez@odins.es

Creative Commons CC-BY: This article is distributed under the terms of the Creative Commons Attribution 4.0 License
(http://www.creativecommons.org/licenses/by/4.0/) which permits any use, reproduction and distribution of the work without
further permission provided the original work is attributed as specified on the SAGE and Open Access pages (http://www.uk.sagepub.com/aboutus/
openaccess.htm).
2 International Journal of Distributed Sensor Networks

saving energy to cope with climate change. The aspects schemes. In particular, the proposal is based on the
are considered by a recent GeSI SMARTer2020 report eXtensible Access Control Markup Language
(http://gesi.org/smarter2020) where the energy con- (XACML)4 to empower users for defining their access
sumed by data centers is also estimated to increase by control preferences and the use of the Ciphertext-
81% by 2020, being smart cities the biggest collective Policy Attribute-Based Encryption (CP-ABE).5 The
source of information, which will have a big impact on approach is complemented with our Distributed
the energy consumption scope. Capability-Based Access Control (DCapBAC)6 as a
Fortunately, numerous developments on ICT have lightweight mechanism to ensure only authorized IoE
transformed the energy area, especially based on the devices will be able to provide energy measurements to
use of networked embedded devices (i.e. sensors and the SMARTIE platform. The use of these technologies
actuators) that become tools for understanding the represents an instantiation of the SMARTIE architec-
complexity of the urban daily life and allow an effective ture, by defining specific components to accomplish the
response to it. In this sense, thanks to the recent described functionality. In addition, this platform is
advances in wireless communication technologies, and currently being integrated as part of the MiMurcia ini-
the increasing interest from standardization bodies, tiative, which represents an ambitious effort to build a
such as the Internet Engineering Task Force (IETF), solid smart city infrastructure in the Region of Murcia
the development of a real internet protocol (IP)-based (Spain). MiMurcia is intended to improve energy man-
Internet of Things (IoT),1 is becoming a reality. One of agement in Murcia based on SMARTIE components,
the scenarios with a strong attention stems nowadays while security and privacy requirements are still
from the integration between the IoT and the so-called reconciled.
Smart Grid Ecosystem in order to build more sustain- The remainder of this article is organized as follows:
able and green cities. Specifically, this integration is section ‘‘MiMurcia’’ presents MiMurcia smart city
known as the Internet of Energy (IoE),2 in which the project and some of the components for managing
IoT paradigm is considered as an active and key energy-saving aspects. The description of SMARTIE’s
enabler for energy-saving initiatives. architecture for secure smart cities is given in section
However, the IoT poses strong challenges in terms of ‘‘SMARTIE: security and privacy for smart cities.’’
security and privacy, especially in large-scale deploy- Then, from such architecture, the instantiation through
ments for energy management applications that collect specific technologies of the main security functional
and manage sensitive data from citizens and control components (FCs) is provided in section ‘‘User-centric
actuators throughout the city. IoT devices such as security and privacy.’’ Section ‘‘An IoE use case’’
power meters or traffic management devices are accessi- describes the application of such technologies to con-
ble through the network. Thus, they can be manipu- trol the access to data from smart meters, as a common
lated and consequently produce fake information that device on an IoE scenario. The validation of these
can cause dangerous situations. The flow of messages mechanisms, as well as set of evaluation results, is pro-
between IoT devices and applications go frequently vided in section ‘‘Implementation and evaluation
across the Internet, and consequently, they should be results,’’ and finally, the article concludes in section
secured to avoid any disclosure of confidential informa- ‘‘Conclusion.’’
tion. Indeed, the application of correlation and data
mining techniques on raw energy measurements could
raise serious privacy concerns from citizens. In this MiMurcia
sense, there is a lack of effective approaches to empower
users for managing the disclosure of personal data MiMurcia is a smart city project developed in the city
through the integration with advanced cryptographic of Murcia, Spain, whose target is to make the city of
and access control schemes. Murcia a reference in resource optimization (energy,
In order to address these challenges, this article water, public transport services, etc.) and quality of life,
describes a user-centric IoT platform, SMARTIE, making Murcia’s environment more sustainable. In
which has been designed to efficiently disseminate data order to reach these objectives, an intelligence system is
in smart city applications while ensuring citizens’ secu- required to generate information and knowledge from
rity and privacy. This platform’s architecture is based physical devices’ raw data. This system can be consid-
on the reference architecture (RA) from the IoT-A ered as the brain of the city, and it is intended to enable
European Union (EU) project.3 From this RA, the coordinated actions in order to make effective and effi-
SMARTIE’s security and privacy requirements for the cient decisions according to citizens’ needs. MiMurcia
IoE ecosystem are addressed, through the design and comprises a smart city platform that integrates all the
development of an attribute-based access control infra- information from sensors and services of the city coun-
structure, which integrates a policy-based authorization cil, a business intelligence application that analyzes this
approach with the use of advanced cryptographic information (providing also indicators and digital
Martı́nez et al. 3

Figure 1. Map-based website with geo-localized information.

control centers), and an orchestration and management components to address the identified security and pri-
application. By the interconnection with different facili- vacy challenges in the scope of a smart city.
ties of the city council, such as call centers, a web por- Figure 2 presents a web view of the map of Murcia,
tal, social networks, and different apps, this system is as an example of the energy management information
able to coordinate specific, personalized, and geo- integrated into the smart city platform, which shows
localized actions for citizens and the different areas of energy consumption information of a facility of the city
the city council. council. Such information is provided by the smart
As the cornerstone of MiMurcia initiative, this plat- meter that is installed there. Regarding energy manage-
form is intended to serve as the brain of the city by inte- ment, it provides different information, such as active
grating information and measurements from all the and reactive energy, active and reactive power, and
available municipal services and a huge amount of het- power factor either grouped (left column) or separated
erogeneous IoT devices, which are to be deployed on by phases (in the other three columns). Regarding
the city. Such information is publicly available through actuation over the elements of the resources of the city,
a map-based website where such information is geo- Figure 3 presents an example of lighting system man-
localized, as shown in Figure 1. agement which enables to vary its luminosity.
As far as IoE is concerned, energy management is From the security and privacy point of view, the dis-
strongly considered under MiMurcia initiative. Indeed, semination of all information through MiMurcia plat-
smart meters and other devices, such as presence, form, as well as the actuation on IoT devices, is
luminosity, humidity, and temperature sensors, and managed by SMARTIE components. Following sec-
actuators, such as heating, ventilation, and air condi- tions provide a detailed description of SMARTIE’s
tioning (HVAC), light, or window/door open/close con- architecture and how it is instantiated through the use
trollers, have been installed in different facilities of the of specific technologies to manage security and privacy
Murcia city council. Furthermore, these devices have concerns in IoE scenarios.
been integrated into the platform with the main goal of
reducing the energy consumption and reaching an opti-
SMARTIE: security and privacy for smart
mal use of the energy resources. Such sensors and
actuators can be considered as specific IoT devices that cities
are intended to provide a certain kind of data or service. Under a data-driven IoE, there is a real need for user-
Therefore, the IoE ecosystem is risen as a suitable sce- centric security and privacy mechanisms that are able
nario for analyzing the application of SMARTIE to reach consensus among different actors, such as
4 International Journal of Distributed Sensor Networks

Figure 2. Example of MiMurcia energy consumption monitoring view.

Figure 3. Actuation over lighting system.


Martı́nez et al. 5

regulatory bodies, utility companies, energy suppliers, situations, such as rescue operations for public safety
or end users, while the benefits from IoT are still rea- in which coordination tasks are required.
lized. In fact, the promulgated vision of the IoE para-
digm imposes new challenges related to security and
privacy. On the one hand, the integration of smart
Architecture design from a RA
meters into the Internet infrastructure makes these The design of reference IoT architectures7 will be key for
devices vulnerable to attack and abuse. This is particu- the interoperation of future IoT platforms by providing
larly challenging, since these devices will be often physi- a reference framework to guarantee the quality of these
cally deployed in uncontrolled environments. On the platforms, or to measure their level of interoperability,
other hand, the need to provide a large-scale approach among other aspects. Nevertheless, reference IoT archi-
to energy efficiency requires huge amounts of data from tectures is a recent research topic. Very limited experi-
individual users, in order to adopt effective arrange- ence and feedback have been reported about the
ments (e.g. an energy plan for a building) with a global application of these architectures in real scenarios. In
impact for energy efficiency. spite of this situation, there are emerging initiatives that
Indeed, for the deployment of effective energy- are intended to promote interoperability for large-scale
saving strategies in smart cities, there is a real need to IoT deployments. In Europe, the Alliance for Internet of
collect sensitive information from citizens, such as data Things Innovation (AIOTI) was initiated by the
to help for modeling their daily habits, usual locations European Commission in 2015 as an ambitious effort to
(e.g. workplace and home), and scheduled activities. It support the dialogue and interaction among different
is also necessary to allow remote control of public IoT players in Europe. In particular, as part of AIOTI,
infrastructure and even citizens’ personal devices. In the ‘‘IoT standardization’’ working group (WG03) has
this ‘‘big brother’’ and automated environment, the risk initiated the development of a High-Level Architecture
and impact of security threats can have serious conse- (HLA)8 for IoT in order to foster architectural conver-
quences to the community. Data collected in a smart gence among others WGs. Moreover, the IEEE
city must be protected in order to reduce the risk of Standard for an architectural framework for the
data theft and leakage, which can lead to identity fraud, Internet of Things (IEEE P2413)9 defines a three-tier
financial damage, and invasion of privacy. The city’s architectural framework, addressing descriptions, defini-
infrastructures and IoT devices must also be protected tions, and common aspects in different IoT domains.
from malicious attacks that may waste the energy Other recent approaches, such as the oneM2M initia-
resources of the city (e.g. controlling the water and tive10 or the ITU-T Y.2060 ‘‘Overview of the Internet of
energy management of the city) or even cause physical Things’’ recommendation,11 follow similar approaches,
injuries to citizens by causing accidents (e.g. taking con- in order to provide a more harmonized view about the
trol on the city’s lights) or panic (e.g. showing fake IoT ecosystem.
alerts about dangerous contamination). In the scope of European research projects, the huge
The SMARTIE platform is aimed to ensure security range of IoT application domains has led to the specifi-
and privacy, which are essential for the success of smart cation of different architectures, which are usually tai-
city solutions and for their acceptance by the citizens. lored to be deployed on specific scenarios. This was
As described below, this platform’s architecture has identified as a significant barrier for large-scale IoT
been derived from a reference framework. This archi- deployments, and, at the same time, as an incentive for
tecture was designed to ensure fundamental principles the creation of coordinated efforts. In this sense, IoT-A
of information security such as confidentiality, integ- was a large-scale project focused on the design of an
rity, access control, and availability for the different architecture reference model (ARM)3 to be additionally
aspects of a smart city. In particular, confidentiality is instantiated by other IoT architectures through a set of
needed to protect the privacy of citizens and valuable specific tools and guidelines. In order to promote qual-
information of stakeholders in the city, thereby protect- ity aspects of IoT in smart cities, the architecture of the
ing against unauthorized external access. Integrity pro- SMARTIE platform has been designed from the ARM.
tects data against modifications that can lead to The main motivation behind this choice is ARM, which
harmful decisions and hence it helps on unauthorized already provides a comprehensive view of the IoT eco-
device control, hacking, and sabotage. Confidentiality system, by proposing different models and architec-
and access control are also key aspects for smart cities’ tures. In addition, ARM is strongly supported by
platforms to prevent denial of service, man-in-the-mid- already mentioned initiatives, such as the IEEE P2413
dle, and intrusion attacks. Data confidentiality in data- or the initial definition of HLA provided by AIOTI
bases by cryptographic means is fundamental to avoid WG03.
private data disclosure to internal adversaries. Indeed, this RA addresses the different phases of the
Furthermore, guaranteeing data availability and con- architecting process by providing inputs (e.g. guidance,
trol functionality is also essential, especially in hard examples, common semantics) that can greatly help
6 International Journal of Distributed Sensor Networks

Figure 4. Simplified version of the IoT–ARM–compliant SMARTIE architecture.

architects to design their IoT systems. The ARM was information on the SMARTIE architecture refer to
conceived as an abstract and application-independent SMARTIE.12
reference framework in order to support the generation
process of IoT architectures in any IoT domain. Thus,
the ARM defines high-level concepts, semantics, and Security and privacy design choices in SMARTIE
functions that are common to any platform. Ensuring security properties in smart cities is challen-
A simplified version of the ARM-compliant ging because of scalability issues and the constrained
SMARTIE architecture12 is shown in Figure 4. This computation power of ‘‘things,’’ that is, sensors and
architecture is composed by a set of functional groups actuators. Traditional approaches that are widespread
(FGs) that are composed by different FCs. The device deployed on the Internet, such as centralized access
and application FGs make reference to the physical control servers, asymmetric cryptography, and trans-
devices of interest and the applications that will access port layer security (TLS) among others do not work
to our platform, respectively. The IoT process manage- well in the IoT. Lightweight and decentralized security
ment FG provides an environment for the modeling of mechanisms are paramount to ensure overall security
IoT-aware business processes (i.e. process modeling in smart cities.
FC) and their execution (i.e. process execution FC). The SMARTIE project looks at smart cities from a
Our architecture does not contemplate yet these activi- security point of view in order to enable the exchange
ties, since business processes are as of now pre- of heterogeneous information, while guaranteeing pri-
configured in the platform. vacy and trust efficiently, even on devices with strong
The following sections describe some of these com- resource constraints. SMARTIE requirements on secu-
ponents that are related to security. For more rity, privacy, and trust as well as their associated
Martı́nez et al. 7

architectural design choices were deduced from a deep However, the information that is collected and sent by
analysis on the IoT-ARM’s threat analysis, unified smart meters may unintentionally reveal sensitive infor-
requirements, and the Trust, Security, and Privacy per- mation regarding users’ daily habits. Indeed, with the
spectives.3 Since the ultimate goal of SMARTIE is to current development of enhanced machine learning
facilitate the integration of user-centric privacy and techniques, the application of aggregation and correla-
governance into IoT applications for smart cities, secu- tion algorithms increases this concern, allowing an
rity and privacy are first-class business goals in order accurate profiling and tracking of users. As a conse-
to enable citizens to: quence, protecting access to this information is crucial
in order to ensure that only authorized applications or
 Control their devices that join an IoT application services are able to obtain this data. In this sense,
to sense and publish data; devices’ owners within the IoE ecosystem must be
 Define fine-grained access control rules for their empowered to maintain the control over how their
devices; devices share that information and to whom. This is
 Decide who can or cannot access their devices’ particularly challenging, especially when this informa-
data. tion is outsourced, combined with each other, corre-
lated, and stored over long periods of time.
The IoT-ARM high-level tactics and design choices To cope with the main security and privacy needs in
allowed us to identify Quality of Service (QoS) require- the IoE paradigm, SMARTIE’s approach is based on
ments, classify them, determine concrete design choices, the instantiation of the producer/consumer vision for
and correlate them based on different QoS perspectives. smart objects that we proposed in the study of
Hernandez-Ramos et al.14 Under such approach, a
Let us summarize some fundamental design choices
smart object15 can play the role of data producer or
related to security and privacy for SMARTIE. For fur-
consumer in any time of its life cycle. Specifically, in a
ther information on the SMARTIE requirements and
common IoE scenario, a smart meter can be considered
design choices, respectively, refer to SMARTIE.12,13
as a data producer, which generates energy consump-
First, the enforcement of context-aware user access
tion measurements. These data are outsourced to a cen-
control decisions is moved to the very edge of the net-
tral data platform for additional processing tasks. Once
work, that is, the data producers that can have scarce
processed, this information is disseminated to groups
resources.
of users or services (e.g. a utility company) acting as
Second, only the actual authorized data will be
data consumers. Then, based on such information, they
granted by IoT devices rather than providing sensor
are responsible for making energy-saving decisions,
data to centralized servers in charge of applying privacy
such as the implementation of a certain energy plan in
filters. To accomplish this design choice while guaran-
a particular building. This typical IoE scenario raises
teeing scalability, access control to IoT devices is decen-
numerous security and privacy issues, which must be
tralized through the use of the DCapBAC.6 This
addressed by scalable and flexible mechanisms.
approach enables the separation of access control logic
On the one hand, from the producer perspective,
from application logic, thereby facilitating one of the
there is a real need to protect the access to the plat-
QoS objectives of SMARTIE: extensibility. SMARTIE
form, so that only legitimate and authorized entities
makes the integration with different IoT applications
(i.e. smart meters) are able to provide information to
easier and facilitates device-to-device communication
the platform. Otherwise, a high degree of reliability on
based on DCapBAC.
the information that is provided by the platform can-
A third important design choice relates to push com-
not be guaranteed. Toward this end, as already men-
munication based on subscriptions: sensor data have to
tioned, this instantiation of SMARTIE’s architecture
be end-to-end protected by cryptography based on
follows the DCapBAC model,6 in order to provide an
application-level user-defined attributes that data recei- efficient and lightweight access control mechanism that
vers must satisfy. This design choice ensures user pri- is used to protect the access to the platform. This tech-
vacy policies regardless of who receives the data; only nology is based on linking access rights or capabilities
those receivers that satisfy certain application-level to the client’s public key (e.g. a smart object or user),
attributes will be able to decipher the data. As described following an approach similar to the use of SPKI
below, this design choice is addressed through CP- Certificate Theory16 or authoriZation-Based Access
ABE5 and XACML.4 Control (ZBAC).17 In this way, unlike typical OAuth-
based approaches18 in which the use of a bearer token
does not require the bearer to prove that it is actually
User-centric security and privacy
the entity associated with that token, DCapBAC uses
The realization of many IoE use cases is based on the public key cryptography as a proof-of-possession
huge amount of data, which are sent from IoT devices. mechanism.19 The application of the IoT-based access
8 International Journal of Distributed Sensor Networks

control model was initially proposed in the IoT@Work policies. Indeed, changing or modifying the CP-ABE
EU project20 and has been used as the basis for the def- policy that is used to encrypt a data does not require
inition of an authorization credential to be used in IoT new key management tasks. We provide the description
scenarios. From a technical perspective, DCapBAC of a real IoE scenario in which these SMARTIE com-
tokens are represented with JavaScript Object Notation ponents have been integrated to provide a fine-grained
(JSON) and following a similar semantics to JSON user-managed access control approach in the following
Web Tokens (JWT).21 However, unlike these creden- section.
tials, capability tokens contain the access rights that
are bound to the client’s public key, as well as a set of
access conditions to be locally verified by the target An IoE use case
device or service when this token is presented. These By considering the high-level architecture presented in
access rights are represented by \action, resource. section SMARTIE: security and privacy for smart cities,
pairs, where the resource refers to a URL that identifies
as well as the technologies described in the previous sec-
a certain service being hosted by a smart object or the
tion, Figure 5 shows the application of both DCapBAC
platform itself (e.g. coap://smartieplatform.um.es/
and CP-ABE technologies for the management of access
topics/consumption), and the action references to a
control concerns in IoE scenarios. Before the description
Constrained Application Protocol (CoAP) method (i.e.
of the main required interactions, it should be noted that
GET, POST, PUT, or DELETE). DCapBAC tokens
we have considered four main external entities:
are sent over the CoAP22 over the Datagram Transport
Layer Security (DTLS)23 by making use of Elliptic
 The SMARTIE Platform Manager is the user or
Curve Cryptography (ECC).24 Furthermore, it has been
integrated with a policy-based access control approach service in charge of defining access control poli-
using the XACML standard; so, users or services in cies, in order to guarantee only authorized smart
charge of the platform are enabled to define proper meters will be able to provide information to the
access control policies for the platform’s services. platform.
 The Smart Meter Owner is responsible for defin-
On the other hand, from the consumer perspective,
there is a real need to ensure only legitimates and ing encryption policies to state which users or
authorized users or services are able to access the infor- services will be able to access their smart meters’
mation provided by smart meters (acting as producers) data.
through the platform. In this sense, SMARTIE makes  The Smart Meter represents the instantiation of
use of Attribute-Based Encryption (ABE),25 in order to a smart object that acts a data producer, by gen-
provide a flexible and scalable encryption-based access erating energy consumption measurements and
control approach for such scenarios. ABE represents sending them to the platform.
the generalization of the Identity-Based Encryption  The User represents a data consumer, which
(IBE) scheme26 in which data is encrypted according to aims to receive notifications about energy con-
identity attributes’ value. Based on ABE, there are sumption measurements through the platform.
mainly two alternative approaches: the Key-Policy
Attribute-Based Encryption (KP-ABE)27 and the CP- In addition to these external entities, SMARTIE’s
ABE.5 Specifically, SMARTIE’s approach is based on components have been instantiated by different deploy-
CP-ABE in which each piece of data is encrypted under ment elements to realize the described access control
a certain logical combination (or policy) of identity functionality into the SMARTIE platform. In this way,
attributes, whereas a private key is associated with a according to already mentioned technologies, it should
certain set of attributes. In this way, different services be noted DCapBAC has been enabled through the defi-
or users will be able to decrypt a certain piece of infor- nition of different components within the SMARTIE
mation sent by a smart meter if their key satisfies the platform in order to automate the DCapBAC tokens
policy that was used to encrypt such data. The use of generation process. In particular, we have made use of
CP-ABE in this case provides two significant advan- XACML for the implementation of the policy adminis-
tages to be exploited in IoE scenarios. On the one hand, tration point (PAP) and the policy decision point
its straightforward application to provide confidential- (PDP) components, which have been deployed as web
ity in one-to-many configurations, since the group of services. In addition, we have added the Capability
entities satisfying the policy, will be able to access the Manager as the component for generating DCapBAC
information, providing a high level of scalability and tokens in case of receiving affirmative authorization
adequacy to publish/subscribe scenarios. On the other decisions from the PDP.
hand, CP-ABE offers a simplified key management that Furthermore, CP-ABE functionality is realized by
does not require key refresh or revocation to be able to three main components. In particular, the CP-ABE
decrypt data that were encrypted under different Key Generation Center is responsible for generating and
Martı́nez et al. 9

Figure 5. Application of SMARTIE components for access control in the IoE.

distributing CP-ABE keys, which are employed by from their smart meters. Third, we consider a User or set
Users to decrypt data from the platform. The CP-ABE of Users is already subscribed to a certain topic called
Policy Selector aims to give a central point where smart Energy in the IoT Broker, so they are enabled to receive
meters’ (and, in general, smart objects) owners are notifications about energy measurements changes. In
empowered to define which CP-ABE policy is used to addition, it is assumed that Users have already obtained
encrypt data from their devices. Then, based on such the necessary cryptographic material (CP-ABE key and
policies, the CP-ABE-Engine is in charge of encrypting public cryptographic parameters) to try to decrypt the
energy consumption measurements that are provided information from the platform.
by smart meters. In this way, according to Figure 5, when the smart
Finally, the IoT Broker is intended to provide the meter intends to publish its energy consumption mea-
functionality of a data broker, in order to allow pro- surements into the platform, it requests a token for this
ducers (i.e. smart meters) and consumers (i.e. users and action, by querying the Capability Manager (step 1).
applications) to remain decoupled, by following a pub- Then, this component asks the PDP (step 2) to deter-
lish/subscribe communication model. mine whether the requested credential must be gener-
Before describing the main interactions among the ated. The PDP uses the policies defined by the
components, it should be noted there are different steps SMARTIE Platform Manager in the PAP (step 3) and
(with dashed line) that are assumed to be made before evaluates them against the smart meter’s request
the process. First, we consider the SMARTIE Platform (step 4). In the case of an affirmative decision (step 5),
Manager has already defined a set of access control poli- the Capability Manager generates a token for the smart
cies through the PAP, to determine which entities are meter (step 6), so it will be allowed to publish its energy
authorized to publish information on the platform. As measurements into the platform.
an example of the definition of these policies, Listing 1 This token includes the smart meter’s public key
shows a high-level view of a policy that is intended to (which was pre-installed by its manufacturer), as well
authorize University of Murcia devices to perform GET as a specific action (e.g. POST method) over a service
and POST operations related to energy consumption at hosted by the SMARTIE platform (IoT Broker), as an
the campus. Second, we assume that the Smart Meter access right, which includes a specific topic (Energy) in
Owner has already defined the CP-ABE policies (or com- which the smart meter is authorized to publish its data.
binations of identity attributes) through the CP-ABE Additionally, it includes time restrictions, delimiting
Policy Selector that will be used to encrypt information the validity period for this credential. In addition, the
10 International Journal of Distributed Sensor Networks

defined in the IoT Broker (e.g. stating that the topic


Energy is encrypted with the policy P = (role =
smartBuildingManager OR utilityCompany=
companyC)).
Once obtained, the CP-ABE engine encrypts the
new value (step 11) of the topic Energy with P and
sends it to the IoT Broker (step 12). Finally, the
updated and encrypted value is sent to the Users (step
13), which are subscribed to any change of that topic.
As already mentioned, we have assumed that these
users have already requested the required crypto-
Listing 1. High-level XACML policy example. graphic parameters to the CP-ABE Key Generation
Center, as well as a CP-ABE key (associated with their
identity attributes), in order to be able to decrypt the
received notification (step 14). In this case, if its private
Capability Manager signs the generated token. This key satisfies the CP-ABE policy (i.e. the policy P) that
way, once the smart meter obtains the token, it tries to was used to encrypt the topic, it will be able to get
publish its data on the topic Energy in the IoT Broker, access to the updated value from that topic. Otherwise,
by making use of the token, as well as a proof to it will not have access to the energy information being
demonstrate that it is effectively the entity associated shared through the SMARTIE platform.
with that token (proof-of-possession19) (step 7). This This common IoE use case represents an application
interaction is specifically carried out using CoAP- scenario in which some of the main access control com-
DTLS with mutual authentication based on public key ponents from the SMARTIE’s architecture can be
(that is, raw public key or certificate). Therefore, the leveraged. Indeed, we have provided an integrative
IoT Broker can verify that the public key contained in approach, in which different technologies are used to
the DCapBAC token is the same key that was used in address some of the major security and privacy con-
the authentication during the DTLS exchange. cerns of the IoE ecosystem. We give additional details
In addition, the IoT Broker evaluates the content of on the implementation of these components, as well as
the token (step 8) by verifying the validity of the token a set of evaluation results, in the following section.
using the time restrictions and checking if the requested
operation (publish in the topic Energy) is contained in
the token as an access right. Furthermore, it verifies the Implementation and evaluation results
token’s signature by making use of the Capability
Manager’s public key, which is assumed to be statically The implementation of the aforementioned compo-
configured during an out-of-band process. Finally, in nents has been carried out during the development of
case the token is correctly evaluated, the smart meter the SMARTIE project. It should be noted that the
publishes its information into the SMARTIE platform. evaluation is mainly focused on the application of CP-
Once energy data are sent to the platform by making ABE components for the access to energy measure-
use of DCapBAC and XACML components, CP-ABE ments, in order to complement the results from our
functionality is used to handle the dissemination of previous works related to the use of DCapBAC.6,28
such information to intended consumers. The main In this way, SMARTIE platform components have
purpose of the CP-ABE application to this scenario is been deployed on a laptop with an Intel Core i5-5257U
to allow only authorized receivers (i.e. satisfying the 2.70 GHz processor and 2 GB of RAM. Moreover, we
CP-ABE policy that was used to encrypt) who will be have developed an Android application in order to
able to decrypt energy consumption data. instantiate the functionality of the User entity. This
In this way, when the smart meter sends its energy application is intended to provide a user-friendly gra-
information to the IoT Broker, this entity queries the phical user interface (GUI) so that users can access the
CP-ABE Engine in order to encrypt the information energy consumption data from SMARTIE platform
associated with that topic (step 9). Before this process, using their smartphones. In particular, this application
the CP-ABE engine queries the CP-ABE Policy has been deployed on different smartphones to simu-
Selector for the CP-ABE policy to be applied for this late users with different attributes, in order to demon-
topic (step 10). As already mentioned, this component strate how CP-ABE can be used to control the access
is used by the Smart Meter Owner to define its access to data coming from smart meters.
control preferences (i.e. combinations of identity attri- Indeed, Figure 6 shows example screenshots in which
butes or CP-ABE policies). In particular, we assume two different users attempt to decrypt the energy con-
that there is a CP-ABE policy for each topic that is sumption data received from the platform (i.e. step 13
Martı́nez et al. 11

Figure 6. Screenshots of the User’s Android application after the CP-ABE decryption of a notification received.

of Figure 5). Thus, on the left side, we show a screen- This operation takes around 30 ms. Additionally, the
shot for the case in which the user’s CP-ABE key does Get Authorization Decision RAM and DCapBAC
not satisfy the policy that was used to encrypt. On the Token Generation Delay series show the RAM con-
right side, we show a screenshot of the application in sumption for the same operations. While the former
the case of a user whose key satisfies the CP-ABE policy requires about 2200–2800 KB, the latter only requires
used. In this case, details on energy consumption are around 100–130 KB for the process. It should be
accessible for the user. Additionally, for evaluation pur- noted that the delay and RAM consumption are con-
poses, we made use of a smartphone Samsung Galaxy stant, while the number of identity attributes (that are
J36 with a 1.5-GHz quad-core processor, 1.5 GB of used to launch the authorization process) is increased.
RAM, and version 5.1 of Android (Lollipop). Additionally, it should be pointed that this process is
For the access control process (based on XACML not performed every time the smart meter aims to
and DCapBAC) that is required for the publication of publish data on the platform; the same DCapBAC
data in the platform, the Capability Manager has been token can be used several times until it expires or is
implemented as a CoAP-DTLS server, using califor- revoked by the platform.
nium and scandium libraries (https://github.com/ For the CP-ABE functionality that is required in the
eclipse/californium). Also, the PDP has been imple- IoE use case, we have compared two CP-ABE imple-
mented as a web service by making use of the SUN mentations. On the one hand, we have made use of the
XACML library (http://sunxacml.sourceforge.net/) library provided by Wang,29 which is a Java implemen-
for the policy evaluation engine. Figure 7 shows the tation built on top of the Java Pairing–Based
delay and RAM consumption required by the Cryptography library (jPBC).30 On the other hand, we
Capability Manager to generate the token. In particu- have deployed the required functionality for CP-ABE
lar, the Get Authorization Decision Delay series refer- aspects through the use of the library provided in the
ences to the time required to get a XACML decision study of Bethencourt et al.,31 which is a C implementa-
from the PDP (step 2 in Figure 5) upon a DCapBAC tion (based on the PBC library32) that was developed
token request (step 1), by modifying the number of by the authors of the CP-ABE scheme itself. Both
attributes of the smart meter (i.e. the Subject element libraries have been deployed on the platform (to imple-
of the XACML request). According to the results, this ment the CP-ABE Key Generation Center and CP-ABE
delay fluctuates between 51 and 58 ms by considering Engine functionality), as well as on the Android appli-
the same set of XACML policies in the PDP. cation for the decryption process. It should be noted
Furthermore, the DCapBAC Token Generation that, for the C library, we have followed a similar
Delay series makes reference to the time required to approach in the study of Ambrosin et al.33 using
generate the token, including the signature operation. Android Native Development Kit (NDK) and CMake
12 International Journal of Distributed Sensor Networks

Figure 7. Delay and RAM consumption for DCapBAC tokens generation on the platform.

(https://cmake.org/) tools, in order to accommodate C (Get CP-ABE Key in Figure 5). The x-axis represents
code into the Android application. the number of attributes that is associated with the gen-
In particular, using such libraries, we have made use erated key. For the implementation based on the study
of type A pairings, which are built on the supersingular of Wang,29 in the case of a one-attribute CP-ABE key,
curve y2 = x3 + x over the field Fp for some prime the time required to generate the key is around 108 ms,
p = 3mod4. In this case, let p be the prime order of Fp , while for a 10-attribute key, it takes around 605 ms and
and E(Fp ), the additive group of points of affine coor- 636 ms/4323 ms for a 10-operation workload. For this
dinates (x, y) with x, y in Fp , that satisfy the curve equa- case, using the implementation based on the study of
tion, q represents the order of the cyclic subgroup of Bethencourt et al.,31 the delay is around 197 ms and
interest in E(Fp ). Under these considerations, it should 1498 ms, respectively. While it represents a consider-
be pointed out that the proposed evaluation has been able better performance, it should be noted that this
carried out with jpj = 512, jqj = 160, so a 80-bit secu- process is not expected to be done frequently, since CP-
rity level is considered.33 ABE keys are associated with users identity attributes,
For all the tests, we have used the 1–10 range for the which does not affect possible dynamic changes with
number of attributes associated with the CP-ABE key CP-ABE policies for encryption.
or ciphertext, since we consider this range expressive Moreover, Figure 9 makes reference to the delay
enough for most scenarios and use cases. Furthermore, required to encrypt the energy consumption value com-
for encryption and decryption tests, we have used ing from a smart meter under a specific CP-ABE policy.
CP-ABE policies with AND gates by considering a Specifically, it references the step 11 Encrypt energy
one-level policy tree. In addition, for all the CP-ABE data from Figure 5. For the encryption process, the
operations, we test the behavior of both implementa- implementation based on the study of Wang29 requires
tions by considering different workloads within the 1– 104 ms with a one-attribute access policy and 590 ms
10 range for the number of operations that would be for a 10-attribute policy in a one-operation workload
performed concurrently. Unlike the performance analy- setting. This delay is increased to 842 ms/4749 ms for a
sis from the study of Ambrosin et al.,33 these tests are 10-operation workload. In the case of the implementa-
intended to provide insights about scalability aspects, tion based on the study of Bethencourt et al.,31 this time
which are crucial in any IoT scenario. is reduced to 138 ms/1404 ms for that setting, which
Taking into account these premises, Figure 8 shows represents a reduction of 70.45% for the 10-attribute
the delay required for both implementations in the case policy. The encryption process is expected to be a more
of CP-ABE key generation that is performed on the frequent operation, since a potentially high number of
platform. Indeed, this process makes reference to step 0 energy measurements could be sent to the platform. In
Martı́nez et al. 13

Figure 8. Comparison for CP-ABE key generation on the platform.

Figure 9. Comparison for CP-ABE encryption on the platform.

this case, the use of this implementation represents a case of a one-attribute access policy, the time required
valuable improvement, especially to cope with scalabil- to decrypt the value data is around 1165 ms, while for
ity aspects. a 10-attribute policy, it takes around 9332 ms using a
Moreover, Figure 10 shows the required delay for 10-attribute CP-ABE policy/key (4587 ms/59064 ms
the CP-ABE decryption process, which is performed on for a 10-operation workload). It should be pointed out
the smartphone (i.e. step 14 in Figure 5). In this way, that these results were obtained by considering all attri-
both implementations are compared during the process butes values must be satisfied (i.e. using the AND
to decrypt the updated energy measurement contained operator). Using the library of Bethencourt et al.,31 the
in a notification message, by making use of a CP-ABE time required to decrypt the value for a one-attribute
key satisfying the CP-ABE policy that was used to access policy is 69 ms, while for a 10-attribute policy
encrypt it. For the implementation of Wang,29 in the this delay is around 309 ms. For a 10-operation
14 International Journal of Distributed Sensor Networks

Figure 10. Comparison for CP-ABE decryption on the smartphone (delay).

Figure 11. Comparison for CP-ABE decryption on the smartphone (energy).

workload setting, the time is increased to 211 ms/ should be noted that, according to the results, the
944 ms, which represents an improvement of 95.4% energy consumption for the implementation based on
and 98.4%. Bethencourt et al.31 remains constant under these
Additionally to the execution time, we also measured experimentation conditions (around 1–3 J). These
the energy consumption that is required for the decryp- results represent a significant improvement, which is
tion process. For this purpose, we used the particularly relevant according to the energy con-
PowerTutor34 tool. This way, Figure 11 shows the con- sumption concerns and the expected frequency of the
sumption required for the decryption algorithm for both decryption process, since this operation is also
implementations. For a 10-operation workload, the expected to be performed for other data, in addition
implementation based on the study of Wang29 takes 9.2- to energy measurements.
J consumption for a one-attribute access policy, and As already mentioned, these results complement our
84.2 J in the case of a 10-attribute access policy. It previous works about the use of DCapBAC in different
Martı́nez et al. 15

IoT scenarios. In this way, such experiments show the References


applicability and feasibility of the proposed integrative 1. Heer T, Garcia-Morchon O, Hummen R, et al. Security
approach, in order to leverage the benefits of a challenges in the IP-based internet of things. Wireless
DCapBAC and CP-ABE mechanisms in the IoE eco- Pers Commun 2011; 61(3): 527–542.
system. In particular, the integration of the library pro- 2. Bui N, Castellani AP, Casari P, et al. The internet of
vided by Bethencourt et al.31 into the SMARTIE energy: a web-enabled smart grid system. IEEE Netw
platform and smartphones provide significant perfor- 2012; 26(4): 39–45.
mance improvements that can be leveraged especially 3. Bassi A, Bauer M, Fiedler M, et al. Enabling things to
to cope with scalability aspects in initiatives, such as talk: designing IoT solutions with the IoT architectural ref-
erence model. Berlin: Springer, 2013, pp.163–211.
MiMurcia. Furthermore, these schemes have been com-
4. Rissanen E. eXtensible Access Control Markup Language
plemented with a policy-based approach so that users (XACML), version 3.0. Burlington, MA: Oasis Stan-
are empowered to define their access control prefer- dard, 2012.
ences over their smart objects’ information. 5. Bethencourt J, Sahai A and Waters B. Ciphertext-policy
attribute-based encryption. In: Proceedings of the IEEE
symposium on security and privacy (SP’07), Berkeley,
Conclusion CA, 20–23 May 2007, pp.321–334. New York: IEEE.
6. Hernández-Ramos JL, Jara AJ, Marı́n L, et al. DCap-
SMARTIE is an integrating user-centric platform for BAC: embedding authorization logic into smart things
efficient but secure dissemination of IoT data in smart through ECC optimizations. Int J Comput Math 2016;
cities. This article has given the authors’ insights into 93(2): 345–366.
the application of the IoT-ARM to generate this plat- 7. Krco S, Pokric B and Carrez F. Designing IoT architec-
form. The main goal of this platform is to empower ture (s): a European perspective. In: Proceedings of the
users to take control of their access control and pri- IEEE world forum on Internet of Things (WF-IoT),
vacy preferences to govern devices. To this end, Seoul, South Korea, 6–8 March 2014, pp.79–84. New
SMARTIE, based on the IoT-ARM guidelines on York: IEEE.
8. Standardisation AW. High level architecture (HLA),
security and scalability, provides architectural arti-
release 2.1. Alliance for Internet of Things Innovation
facts that enable easily and efficiently enforcing user
(AIOTI), https://aioti-space.org/wp-content/uploads/2017/
access control policies. This article has shown an 03/AIOTI-WG3-IoT-High-Level-Architecture-Release_2_
instantiation of such architecture by employing spe- 1.pdf
cific technologies to address access control concerns 9. Logvinov O. Standard for an architectural framework for
on a common IoE scenario. The proposed integrative the Internet of Things: IEEE P2413. IEEE Standard
approach is intended to give a user-managed, flexible, Association, 2014, https://docbox.etsi.org/workshop/
and scalable mechanism for access control to protect 2014/201412_m2mworkshop/s04_standards/ieee_p2413_
the access to smart meters’ data through the use of nappey.pdf
the SMARTIE platform. In addition to manage infor- 10. Swetina J, Lu G, Jacobs P, et al. Toward a standardized
mation, the main goal of this platform is to empower common M2M service layer platform: introduction to
oneM2M. IEEE Wirel Commun 2014; 21(3): 20–26.
users with full control on their devices through a
11. (ITU-T) ITSS. Recommendation Y. 2060: overview of the
policy-based approach. In order to complement the
Internet of Things. Geneva: ITU, 2012.
proposed functionality, future work is focused on the 12. SMARTIE. Deliverable 2.3: SMARTIE initial architec-
application of identity-based signature schemes to ture specification, http://www.smartie-project.eu/down
guarantee data integrity, as well as the deployment of load/D2.3-Initial%20Architecture%20Specification.pdf
these components on FIWARE, as one of the main 13. SMARTIE. Deliverable 2.2: SMARTIE requirements,
reference IoT platforms at European level. http://www.smartie-project.eu/download/D2.2-Require
ments.pdf
14. Hernandez-Ramos JL, Bernabe JB and Skarmeta A.
Declaration of conflicting interests Army: architecture for a secure and privacy-aware life-
The author(s) declared no potential conflicts of interest with cycle of smart objects in the internet of my things. IEEE
respect to the research, authorship, and/or publication of this Commun Mag 2016; 54(9): 28–35.
article. 15. Kortuem G, Kawsar F, Sundramoorthy V, et al. Smart
objects as building blocks for the Internet of things. IEEE
Internet Comput 2010; 14(1): 44–51.
Funding
16. Ellison C, Frantz B, Lampson B, et al. SPKI certificate
The author(s) disclosed receipt of the following financial sup- theory. Technical report, September 1999. Internet Engi-
port for the research, authorship, and/or publication of this neering Task Force (IETF).
article: This work has been partially funded by the European 17. Karp A, Haury H and Davis M. From ABAC to ZBAC:
Commission through the H2020-644852 ARMOUR and the evolution of access control models. Technical report.
H2020-649849 ENTROPY research projects. HP Laboratories.
16 International Journal of Distributed Sensor Networks

18. Hardt D. RFC 6749: the OAuth 2.0 authorization frame- cryptology–CRYPTO 2001. Berlin: Springer Science +
work. Technical report, 2012. http://dx.doi.org/10.17487/ Business Media, 2001, pp.213–229, http://dx.doi.org/
rfc6749 10.1007/3-540-44647-8_13
19. Jones M, Bradley J and Tschofenig H. RFC 7800: proof- 27. Goyal V, Pandey O, Sahai A, et al. Attribute-based
of-possession key semantics for JSON web tokens encryption for fine-grained access control of encrypted
(JWTs). Technical report, 2016, http://dx.doi.org/10.17 data. In: Proceedings of the 13th ACM conference on com-
487/rfc7800 puter and communications security, Alexandria, VA, 30
20. Gusmeroli S, Piccione S and Rotondi D. A capability- October–3 November, pp.89–98. New York: ACM.
based security approach to manage access control in the 28. Hernandez-Ramos JL, Pawlowski MP, Jara AJ, et al.
Internet of Things. Math Comput Model 2013; 58(5–6): Toward a lightweight authentication and authorization
1189–1205. framework for smart objects. IEEE J Sel Area Comm
21. Jones M, Bradley J and Sakimura N. RFC 7519: JSON 2015; 33(4): 690–702.
web token (JWT). Technical report, 2015, http:// 29. Wang Y. Cpabe Java implementation, 2013, https://
dx.doi.org/10.17487/rfc7519 github.com/junwei-wang/cpabe
22. Shelby Z, Hartke K and Bormann C. RFC 7252: the con- 30. De Caro A and Iovino V. JPBC: java pairing based cryp-
strained application protocol (CoAP). Technical report, tography. In: Proceedings of the IEEE symposium on com-
2014, http://dx.doi.org/10.17487/rfc7252 puters and communications (ISCC), Kerkyra, Greece, 28
23. Rescorla E and Modadugu N. RFC 6347: datagram June–1 July 2011, pp.850–855. New York: IEEE.
transport layer security version 1.2. Technical report, 31. Bethencourt J, Sahai A and Waters B. Cpabe toolkit,
2012, https://www.rfc-editor.org/info/rfc6347 2011, http://acsc.cs.utexas.edu/cpabe/
24. Menezes A. Elliptic curve public key cryptosystems. Ber- 32. Lynn B. PBC library, 2006, http://crypto.stanford.edu/
lin: Springer Science + Business Media, 1993, http:// pbc
dx.doi.org/10.1007/978-1-4615-3198-2 33. Ambrosin M, Conti M and Dargahi T. On the feasibility
25. Sahai A and Waters B. Fuzzy identity-based encryption. of attribute-based encryption on smartphone devices. In:
In: Proceedings of the annual international conference on Proceedings of the workshop on IoT challenges in mobile
the theory and applications of cryptographic techniques, and industrial systems, Florence, 18 May 2015, pp.49–54.
Aarhus, 22–26 May 2005, pp.457–473. Berlin: Springer. New York: ACM.
26. Boneh D and Franklin M. Identity-based encryption 34. Yang Z. PowerTutor: a power monitor for android-based
from the Weil pairing. In: Kilian J (ed.) Advances in mobile platforms. EECS 2012; 2: 19.

You might also like