Sunteți pe pagina 1din 5

HeComm: end-to-end secured communication in a

heterogeneous IoT environment via fog computing


Jori Winderickx, Dave Singelée, Nele Mentens
imec-COSIC - KU Leuven, Leuven, Belgium
Email: firstname.lastname@kuleuven.be

Abstract—In this paper we describe the HeComm (Heteroge- nodes while also providing an end-to-end security guarantee.
neous Communication) architecture. The HeComm architecture Our solution uses object security to secure the communicated
utilizes fog computing to provide end-to-end secured commu- data. This is introduced at the level of the application layer,
nication between IoT nodes residing in networks that operate
over different communication protocols. While the fog serves as which is often not specified by the network’s specification.
a bridge between the heterogeneous networks, it does not have The paper is organized as follows. In Sect. II, we describe
access to the confidential data that are being exchanged between previous work on the interconnection of heterogeneous IoT
the IoT nodes. The HeComm architecture can be divided into two nodes and on object security. This is followed by a description
parts: the HeComm protocol and the HeComm communication.
The HeComm protocol allows IoT network managers to establish of the HeComm architecture in Sect. III. The results are
a secret key that is used in the HeComm communication. The evaluated in Sect. IV. Finally, we conclude the paper in
HeComm communication secures the exchanged data between Sect. V.
the IoT nodes by using object security. This enables an end-
to-end protection of the communicated data without putting all
trust in the fog. We evaluate the HeComm architecture through II. R ELATED WORK
a security analysis and via a proof-of-concept implementation
that connects an IoT node in a 6LoWPAN network to a node in
a LoRaWAN network. The results indicate that the IoT nodes The work of Cirani et al. [6] proposes the use of a fog node
in the HeComm architecture meet the requirements of Class as an IoT hub that provides the abstraction and interconnec-
1 constrained nodes. Furthermore, the HeComm architecture tion of the CoAP services of the heterogeneous constrained
comprises a combination of widely used algorithms and protocols devices. This IoT hub can act as a gateway between IoT
that are often supported in modern IoT devices and platforms, networks, provide service discovery, origin server, etc. The
which facilitates the practical deployment of our solution.
Index Terms—IoT; Fog computing; Object security; End-to- idea of using the fog nodes to provide interconnection is
end security; Heterogeneous communication; 6LoWPAN; Lo- similar to that of ours and can provide many functionalities
RaWAN; COSE; CoAP; AES-CCM; OpenWRT to assist in the IoT-IoT or IoT-cloud communication. Our
HeComm architecture concentrates on guaranteeing the secu-
I. I NTRODUCTION rity of the communication. It relies on the fog node to facilitate
Since the introduction of the internet of things (IoT), it heterogeneous communication, but reduces the trust in the fog
has gained a lot of popularity and it is increasingly used node to obtain end-to-end security between IoT nodes.
in various markets. This introduces the challenge of con- The architecture of Van Den Abeele et al. [7] does not utilize
necting IoT devices to each other and to the cloud while the fog but proposes to access the power of the cloud to pro-
also providing cryptographic protection to the vast amount of vide an IoT abstraction layer. This enables easier connectivity,
data that are generated. The heterogeneity of the IoT poses since the cloud is used to provide the abstraction. The cloud,
an additional challenge, since a lot of IoT networks utilize however, does not allow low-latency communication, while the
different protocols and physical interfaces, depending on the fog can provide it for IoT-IoT communication. Furthermore,
features required by the application. For example, networks by abstracting the services through the cloud, the origin of the
based on LoRaWAN [1] can be used to provide long range data cannot be authenticated. In our architecture, we provide
communication, whereas 6LoWPAN [2] are suitable for IP- end-to-end secured communication between the supplier and
based communication for personal area networks. These two the user of the IoT service.
networks are not compatible because of the difference in With regards to the use of object security in constrained
physical interface, communication protocols, etc. Furthermore, devices, two publications are worth mentioning. In the master’s
utilizing the same protocols does not necessarily mean en- thesis of Brorsson et al. [8], a comparison was made between
abling interconnection. For example, two 6LoWPAN networks DTLS and OSCOAP. The result was that OSCOAP is compa-
hosted by different entities cannot communicate with each rable to DTLS in terms of performance, memory footprint and
other because they do not share the same secret key. etc. Another paper that uses and extends the COSE protocol,
The interconnection of heterogeneous networks has been is written by Navas et al. [9]. They propose an Authenticated
done before through various methods, e.g. IoT gateways, but key establisement protocol over OAuth 2.0 for the IoT. Our
often lacking the secure transaction of the data generated by paper further analyzes the use of object security in a security
the IoT device. With the HeComm architecture, we provide architecture for constrained nodes, with a specific focus on
a method to enable the interconnection of heterogeneous IoT heterogeneous networks.
Fig. 1. Simplified representation of the general network topology of the Fig. 2. 6LoWPAN and LoRaWAN networks mapped onto the OSI model
HeComm architecture
in Fig. 2, in which the communication stack of 6LoWPAN
III. H E C OMMM ARCHITECTURE and LoRaWAN are mapped onto the OSI model. Notice that
The HeComm architecture can be divided into two parts: the for both IoT networks, the specified communication protocols
HeComm protocol and the end-to-end secured communication. only reach until the Network layer. For 6LoWPAN, the highest
The HeComm protocol establishes the bridge between the two layer specified is the Network layer, where the 6LoWPAN
networks and the secret key that will be used by the IoT nodes header compression is used. In the LoRaWAN network, the
for the end-to-end secured communication. specifications can be matched until the Transport layer. The
The general topology of the HeComm architecture com- LoRaWAN specification provides a UDP-like functionality
prises of a number of IoT networks that operate over different with the FPort field. The other layers, Session till Application
communication protocols, each consisting of a number of IoT layer, can be chosen by the developer.
nodes. A fog entity (fog node) takes care of the connection The common ground between these two IoT networks is
between the networks. This is presented in Fig. 1, which, for the Session till Application layer. An often used protocol for
simplicity, only depicts two different IoT networks, with one these layers, in constrained networks, is CoAP. To provide
IoT node in each network. By using the proximity of the end-to-end security to the CoAP protocol, we cannot rely on
fog node to the IoT networks, the fog node can, if the IoT the security in the lower layers. The recommended security
network allows it, directly communicate with the nodes. The protocol for CoAP is DTLS. However, DTLS is created with
verification of the fog entities is done through the fog CA, the intent of securing a UDP connection, which does not match
which resides in the cloud. with our goal to provide end-to-end object security.
The setup of the secure communication, i.e. the HeComm In order to provide end-to-end object security, we use con-
protocol, is executed by the network managers of the IoT cepts used in the OSCOAP protocol, which relies on CBOR
networks (NwkServer in Fig. 1) and the fog node. The Object Signing and Encryption Protocol (COSE) using AES-
network managers manage their respective IoT nodes and are CCM AEAD block cipher mode to provide authentication and
therefore also capable of providing cryptographic material for confidentiality. COSE is proposed as a standard by the IETF
the managed IoT nodes. An example can be found in the Lo- and a general usable implementation is available (cose-c [10]).
RaWAN specification, where a key derivation scheme is used In our solution, COSE is used to secure the CoAP payload.
between the application server and the LoRa node to create the
B. HeComm protocol
AppSKey and NwkSKey. Furthermore, IoT nodes have limited
resources and it is therefore beneficial to outsource the key The HeComm protocol can be described as establishing
establishment to devices with less restriction that can utilize a link contract between two IoT nodes in a heterogeneous
stronger algorithms like asymmetric cryptography. During this network. Fig. 3 shows the protocol for the establishment of
establishment, the fog node will act on and relay parts of a link contract between a 6LoWPAN and a LoRaWAN node.
the HeComm protocol because of its centrality in the entire The link contract will be used by the fog entity to relay the
communication scheme. communication of the respective IoT nodes. Only the network
managers of the IoT network, NwkServer for 6LoWPAN and
A. End-to-end secured communication AppServer for LoRaWAN, and the fog node will participate in
To provide communication between two devices, both par- the HeComm protocol. Furthermore, all participating entities
ties must use the same protocol. In a heterogeneous environ- must have and use a certificate signed by a trusted third
ment, this is almost never the case. Therefore, we use the fog party, the fog server’s CA in our implementation. This will
as an IoT gateway that can understand both communicating be used in the secured TLS connection between network
parties. The IoT gateway provides a bridge and will enable managers and the fog to verify each other. The communication
communication between the two IoT networks by translating between the network managers and their respective IoT nodes
mismatching protocols. are not defined by the HeComm protocol since they depend
Finding a common ground between two heterogeneous on the communication protocol used by the IoT network.
protocols facilitates the communication. An example is given The communication during the HeComm protocol is JSON-
based. The schema of the top-level JSON object is comprised
of two fields: the FPort and Data field. The FPort field is
used to indicate one of the following messages: DBCommand,
Link Request, Link State, Link Set or Response message.
The DBCommand message is used to provide configuration
material to the fog node to enable communication between
the fog node and the corresponding IoT network. This type
of message is not used during the HeComm protocol. In the
messages Link Request and Link Set, a Link Contract in the
form of a JSON object is encoded into the Data field. The
Contract contains four fields: InfType, ReqDevEUI, ProvDe-
vEUI and the Linked field. The InfType field of the Link
Contract object describes the type of information requested,
but since this is a proof-of-concept implementation, this field Fig. 3. The dataflow of the HeComm protocol and in IoT network messages.
was not extensively defined and is indicated by a number. This All participants of the HeComm protocol (6LoWPAN NwkServer, fog node
field should indicate the type of information ranging from a and AppServer) have a certificate signed by a trusted party, the fog’s CA in
this case.
more general data type, e.g. temperature, to the specification
of a specific IoT network and IoT node. The ReqDevEUI State messages are sent and the fog will only relay these mes-
and ProvDevEUI field contain, at the end of the protocol, the sages without altering them. The key establishment protocol
unique identifiers of the respective IoT node. The last field, used is the TLS handshake using the ECDHE RSA cipher
Linked, is used to indicate if both network managers have suite. TLS will use the ephemeral version of Elliptic-curve
successfully established a secret key. For the message of the Diffie–Hellman (ECDH) with RSA-based certificates (X.509).
type Link State, the data field will contain the messages of the The X.509 certificates are used by the requester and provider
key agreement protocol. To acknowledge or deny a request to to verify the origin of the certificate to be from the Fog server’s
form a Link Contract, the Response message will be used. CA. After completion of the TLS handshake, both parties have
In the Response message, the data field contains a Boolean agreed upon a Pre-master secret. This secret will be used as
value corresponding to the intended response. All the general the secret key (KOS ) to secure the communication between
message types, except for the DBCommand, are used during the IoT nodes. In the last phase of the HeComm protocol, it
the protocol. The functionality of these messages will be clear is required for the requester to request the link to be set in the
after the description of the data flow during the HeComm fog node, using the Link Set message with a completely filled
protocol. in Link Contract (LC(A,X,B,Ok) set). The fog node will then
The DBCommand is used by the network managers of verify this Link Contract with the provider and enable the link
the IoT networks to notify the fog and configure it for the between the respective IoT nodes. Now both parties can push
HeComm communication. It can be used to provide configura- the agreed upon secret key to their IoT node to enable the
tion material for the fog to allow communication with the IoT communication (set(KOS )).
network. Furthermore, it must be used before the HeComm
IV. R ESULTS
protocol to provide the fog node with the details of the IoT
nodes that will be using the HeComm communication, e.g. The results discussed in this section cover both the security
providing the device’s unique identifier. This enables the fog evaluation and the implementation results of the IoT nodes.
to communicate with the IoT network and correctly relay the These are the most relevant implementation results, since the
messages. other devices in the proof-of-concept implementation are not
The initiator of the HeComm protocol, shown in Fig. 3, is necessarily constrained. In Table I, the resource usage of
the IoT network manager of the IoT node requesting some type both IoT nodes are presented in terms of RAM and ROM
of information, as of now called the requester. This requester usage (bytes). The results for 6LoWPAN are from the analysis
will send a Link Request message (LC(A,X) req) containing, of the image compiled for the Zolertia Z1 node, using the
at minimum, the InfType and ReqDevEUI field defined. The MSP430-size command. The resource usage of the LoRaWAN
fog node will act on this request by searching for a suitable node comes from the output results after compilation using
provider node. In this implementation, the LoRaWAN node is the mbed Command Line Interface (mbed-cli). In the table,
the provider node and the Application server is the network the distinction has been made between resources used for
manager, from now on called the provider. The fog node will the Object security (COSE + CBOR + AES-CCM), for the
fill in the provider node into the Link Contract ProvDevEUI CoAP library and for the HeComm-specific code. These values
field and relay the Request message with the Link Contract to are the result of the difference between the implementations,
the provider (LC(A,X,B) req). The provider can then choose with an without the respective library. Lastly, the bare im-
to accept or deny the Link contract, via a Response message plementation, without HeComm communication, and the full-
(Ack resp). Now the requester and provider both go for the implementation resource usage are presented. The RAM usage
key establishment phase (AKE). During this phase, only Link of the separate libraries of the mbed-os for the LoRaWAN
node are particularly low. We expect the mbed-cli does not take can try to impersonate an IoT network node or the fog can
into account the RAM occupied by the libraries. Nevertheless, alter the messages during the HeComm protocol. In the case
since the implementation of 6LoWPAN uses the same objects of the impersonation, the fog needs to create or get hold of
from similar libraries as the LoRaWAN implementation, we another valid certificate and private key signed by the CA. This
can expect around the same RAM usage for the libraries in is unlikely, since the CA should only provide the certificates
both implementations. to valid IoT networks, and the ones that are compromised
TABLE I
should be revoked. In the scenario of altering the messages,
I MPLEMENTATION RESULTS , RAM AND ROM USAGE , OF THE I OT NODES the actions of the fog can only result in a wrong link between
Implementation 6LoWPAN LoRaWAN the IoT nodes. The messages in the TLS handshake cannot
ROM (B) RAM (B) ROM (B) RAM (B) be altered because the handshake would end in failure. The
Object security 8310 582 22836 56 secret key can therefore not be influenced by the fog node.
CoAP 12010 622
7048 204 Another choice we made in the key establishment is the use
Hecomm 1654 204
Bare 45727 5176 57321 5168 of the Ephemeral version of the ECDH protocol. This ensures
Full 67701 6584 87205 5428 forward secrecy, when the same parties establish multiple
secret keys. A compromised key can therefore not compromise
A. Security evaluation the previously established keys.
During the HeComm communication, there are three entities
in our threat model: the requester node, the provider node and B. Implementation overhead
the fog node. We take into account the passive attacker who The full implementations of both networks report under
can only listen to packets being transmitted in the network 90 kB of ROM and 7 kB of RAM usage. We compare our
and the active attacker who can listen and also alter and inject results to the classification of constrained nodes published by
packets into the network. By using COSE for the protection the IETF [15]. Class 0 nodes have lower than 100 kB of ROM
of the payload using the AES-CCM cipher mode, we provide and 10 kB of RAM and Class 1 devices have around 100 kB of
data authentication and confidentiality guarantees between the ROM and 10 kB of RAM, according to the IETF classification.
requester and provider node, thus the attacker cannot, without We can map our results to Class 1 devices, which are described
knowing the secret key, understand or alter the payload. This is as devices which cannot easily directly communicate with
also the case for the fog node, which cannot alter or change the the internet but can communicate using protocols specifically
payload of the messages. The attacks prevented are therefore designed for constrained nodes. In the case of the 6LoWPAN
eavesdropping attacks and man-in-the-middle (MITM) attacks. node, the AES-CCM cipher mode is already supported in
However, using only COSE in the payload does not guarantee the standard hardware/software implementation. In other IoT
protection against e.g. replay attacks, which OSCOAP would networks, the AES algorithm is often used in CBC, CTR or
protect against. Nevertheless, we can still count on the network even CCM mode. Re-using the already available AES-CCM
security of the IoT network: the IEEE 802.15.4 link layer cipher mode leads to a smaller implementation of the object
security in the 6LoWPAN network and the integrity protection security for the 6LoWPAN node than for the LoRaWAN node.
of the NwkSKey in the LoRaWAN network. A replay attack The difference is 14.5 KBytes of ROM usage.
by the fog node is prevented through the AES-CCM cipher The speed and energy used in IoT networks often depend the
mode, since a message with a reused IV is dropped. Another most on the physical communication and not on the processing
attack the fog node could be more successful at than an outside of the message. Also in this case, the speed and energy used for
attacker is a Denial-of-Service attack. The message originating the HeComm communication introduces a negligible overhead.
from the fog node is always processed, since it bypasses the
network security. This, however, should be easily detectable V. C ONCLUSION
and the fog node should in that case be revoked by the fog In this paper, we describe the HeComm architecture that
server. provides secured end-to-end communication between IoT
During the HeComm protocol, the threat model contains nodes in heterogeneous networks. The proof-of-concept im-
four devices, the requester and provider’s network manager, plementation with the interconnection of the 6LoWPAN and
de fog node and the fog server (CA). Both passive and active LoRaWAN network proves the feasibility of our solution.
attackers monitoring or altering packets in the communication The overhead caused by the HeComm-specified protocols is
channel between these devices cannot succeed in a successful minimal, since a combination of popular protocols and algo-
attack. The reason is that TLS is used for the communication rithms are used, that are usually already foreseen in secured
channels between the requester and fog node, provider and fog constrained devices. The IoT nodes supporting the HeComm
node and for all entities trying to connect to the CA. At the architecture can be classified as Class 1 constrained nodes. The
beginning of the HeComm protocol, both parties must trust security evaluation of the HeComm architecture shows that
the fog to follow the expected steps defined in the HeComm the COSE protocol can guarantee end-to-end data security.
protocol. The fog node can alter values in the link contract or The fog is used to provide the service of heterogeneous
the data contained in the HeComm messages. Two scenarios interconnection, but the fog entities are not able to compromise
could occur, in the case of a malicious fog node. The fog the security of the communication between the IoT nodes.
ACKNOWLEDGMENT
This work is partially funded by the WearIT4Health project
(European Union, Interreg, Euregio Meuse-Rhine).
R EFERENCES
[1] LoRa Alliance, “LoRaWAN TM Specification,” LoRaTM Alliance, Tech.
Rep., 2015.
[2] G. Montenegro, C. Schumacher, and N. Kushalnagar, “IPv6 over Low-
Power Wireless Personal Area Networks (6LoWPANs): Overview, As-
sumptions, Problem Statement, and Goals,” RFC 4919, 2007.
[3] OpenFog Consortium Architecture Working Group, “OpenFog Refer-
ence Architecture for Fog Computing,” OpenFog Consortium, Tech.
Rep., 2017.
[4] C. Bormann and P. Hoffman, “RFC 7049: Concise Binary Object
Representation (CBOR),” Internet Engineering Task Force (IETF), Tech.
Rep., 2013.
[5] J. Schaad, “RFC 8152: CBOR Object Signing and Encryption (COSE),”
Internet Engineering Task Force (IETF), Tech. Rep., 2017.
[6] S. Cirani, G. Ferrari, N. Iotti, and M. Picone, “The IoT hub: A fog node
for seamless management of heterogeneous connected smart objects,”
in 2015 12th Annu. IEEE Int. Conf. Sensing, Commun. Netw. - Work.
SECON Work. 2015, 2015, pp. 43–48.
[7] F. Van Den Abeele, J. Hoebeke, I. Moerman, and P. Demeester,
“Integration of Heterogeneous Devices and Communication Models via
the Cloud in the Constrained Internet of Things,” International Journal
of Distributed Sensor Networks, vol. 2015, 2015.
[8] J. Brorsson and M. Gunnarsson, “Compact object security for the
internet of things,” 2016, student Paper.
[9] R. E. Navas, M. Lagos, L. Toutain, and K. Vijayasankar, “Nonce-based
authenticated key establishment over OAuth 2.0 IoT proof-of-possession
architecture,” in 2016 IEEE 3rd World Forum Internet Things. IEEE,
dec 2016, pp. 317–322.
[10] Cose-wg, “Implementation of COSE in C using cn-cbor and openssl,”
2017. [Online]. Available: https://github.com/cose-wg/COSE-C
[11] Zolertia, “Zolertia Z1 mote,” 2016. [Online]. Available:
https://github.com/Zolertia/Resources/wiki/The-Z1-mote
[12] Contiki, “Contiki: The Open Source OS for the Internet of Things.”
[Online]. Available: www.contiki-os.org
[13] Cabo, “cn-cbor: A constrained node implementation of CBOR in C,”
2013. [Online]. Available: https://github.com/cabo/cn-cbor
[14] M. Kovatsch, S. Duquennoy, and A. Dunkels, “Erbium (Er) REST
Engine and CoAP Implementation for Contiki,” 2012. [Online].
Available: http://people.inf.ethz.ch/mkovatsc/erbium.php
[15] C. Bormann, M. Ersue, and A. Keränen, “Terminology for Constrained-
Node Networks,” RFC 7228, 2014.

S-ar putea să vă placă și