Elsevier

Computer Communications

Volume 181, 1 January 2022, Pages 338-356
Computer Communications

A two-tier Blockchain framework to increase protection and autonomy of smart objects in the IoT

https://doi.org/10.1016/j.comcom.2021.10.028Get rights and content

Abstract

In recent years, the Internet of Things paradigm has become pervasive in everyday life attracting the interest of the research community. Two of the most important challenges to be addressed concern the protection of smart objects and the need to guarantee them a great autonomy. For this purpose, the definition of trust and reputation mechanisms appears crucial. At the same time, several researchers have started to adopt a common distributed ledger, such as a Blockchain, for building advanced solutions in the IoT. However, due to the high dimensionality of this problem, enabling a trust and reputation mechanism by leveraging a Blockchain-based technology could give rise to several performance issues in the IoT. In this paper, we propose a two-tier Blockchain framework to increase the security and autonomy of smart objects in the IoT by implementing a trust-based protection mechanism. In this framework, smart objects are suitably grouped into communities. To reduce the complexity of the solution, the first-tier Blockchain is local and is used only to record probing transactions performed to evaluate the trust of an object in another one of the same community or of a different community. Periodically, after a time window, these transactions are aggregated and the obtained values are stored in the second-tier Blockchain. Specifically, stored values are the reputation of each object inside its community and the trust of each community in the other ones of the framework. In this paper, we describe in detail our framework, its behavior, the security model associated with it and the tests carried out to evaluate its correctness and performance.

Introduction

In recent years, the Internet of Things (IoT) paradigm has reached maturity and today is becoming increasingly pervasive in everyday life. This process has been made possible by new research approaches that enable objects to be smart, autonomous and reliable. However, as the IoT grows, new challenges arise. In fact, the IoT is characterized by a large number of (often smart) objects with various constraints/features, such as: (i) limited storage and computing capability; (ii) great dynamism, due to the high number of nodes that join or leave the IoT at any time; (iii) criticality and sensitiveness of used services and applications. In this scenario, the protection of objects, on the one hand, and the possibility/need to guarantee them a great autonomy, on the other hand, represent two crucial issues to be addressed. As for protection, in [1] we presented a first approach to address this problem when it comes to privacy. In that case, we proposed to partially hide object features, but allowing their full use to support communication between objects. Nevertheless, the problem of providing a scalable, reliable and protected framework for IoT devices remains open. As for autonomy, making objects independent from each other during their interactions requires the capability of adding/removing contacts recognizing what features/services are provided by other objects [2], [3]. At the same time, in this context, the possibility of assessing the ability of an object to concretely and correctly provide the needed feature/service is fundamental. This is especially true when we consider the high vulnerability of smart objects to failures and/or cyber attacks, which could alter the way they behave. In the considered scenario, characterized by a high autonomy level of objects, leveraging compromised peers for services or for data retrieval may lead to the corruption of the whole IoT.

This reasoning highlights that autonomy and protection are two strongly interrelated aspects. In this scenario, the definition of trust and reputation mechanisms appears crucial [4], [5], [6], [7], [8], [9], [10]. However, most of the approaches proposed in recent literature describe strategies leveraging centralized services (such as whatchdogs) or particularly empowered smart objects, dedicated to data gathering from other objects and to the computation of trust and reputation values. Although these solutions may achieve pretty satisfactory results in some cases, they somehow force the fully distributed and autonomous nature of IoT to include “global” monitoring points.

To achieve a fully distributed solution in this setting, each smart object should be able to build a pretty complete representation of other objects’ behavior in the IoT. However, as a prerequisite, it should also be able to unequivocally link a sequence of actions (defining a behavior) to each object. This would require the definition of an authentication mechanism to map each action (e.g., a transaction) to the object making it. One of the key aspects to be taken into account when addressing this issue is that the IoT is totally distributed. For this reason, classical Public Key Infrastructure models cannot be adopted because they refer to a common root of trust (CA root), which, for the reason stated above, is not easily achievable in this context. Indeed, the IoT should be totally distributed and composed of heterogeneous objects possibly belonging to independent domains. To address this issue, in the past literature, many authors have started to propose the use of the Blockchain technology in the IoT as a means to have a shared and reliable environment among all objects [11], [12], [13], [14], [15], [16], [17], [18], [19].

The application of Blockchain-based strategies to add trust and reputation facilities in the IoT without requiring any special actor (e.g., sophisticate smart objects) involved, poses a lot of interesting research challenges that must be faced to build a complete solution. One of the main problems is related to the high computational power required for deploying a Blockchain-based solution in the IoT context. Smart objects are intrinsically very heterogeneous and, therefore, provide a wide range of computation capacity spanning from fully equipped powerful devices (such as smart cars, new generation smartphones, etc.) to very simple, with minimal computational capacity, smart sensors (e.g., smart meters, medical sensors, fitness trackers, etc.). In such a scenario, including the Blockchain technology can be very tricky because solutions must include the possibility of both exploiting fully equipped and powerful devices and supporting very simple and computationally limited ones. Moreover, if we observe this problem from the Blockchain perspective, handling the big volume of transactions generated by smart objects introduces important flaws in terms of both scalability and environmental costs [20], [21]. To partially face these issues several researchers focused on the definition of lightweight Blockchains for the IoT. Typically, these approaches work on the reduction of the information necessary to mine and validate transactions published in the ledger by proposing alternative consensus algorithms [22]. However, also the simple monitoring of the public ledger (to detect trust and reputation transactions, for instance) can be a heavy and expensive task for smart objects with minimal computation capacity in presence of a very high volume of transactions.

For this reason, some authors proposed to reduce the transaction volume to consider in the public ledger by adopting approaches based on the use of validity windows [23]. In this way, smart objects must only work with the transactions available inside the chosen window. Depending on the analyzed application scenario, reducing the size of transaction history may introduce important drawbacks; indeed, for instance, if such a ledger should be used to store trust and reputation information of smart objects at the end of a validity window, each object can have a fresh start as its reputation will be restored. To avoid this issue, historic data can be aggregated and made available inside each validity window; however, also this aggregation task can be very expensive and unfeasible for IoT objects if the volume of transactions is big [16].

This paper aims at providing a contribution in this setting. Indeed, it proposes a two-tier Blockchain framework to increase the protection and autonomy of smart objects in the IoT. Following the intuition proposed in [1], we consider smart objects as organized in communities. Hence, the first, local, tier is used to manage the trust measures of each smart object inside the community it belongs to and exploit a solution leveraging both a lightweight Blockchain and a validity window to control transaction volume. By organizing objects into communities, we can control the size of the local Blockchain in order to avoid excessive loads for smart objects. The second, global, tier is used to record aggregated data related to the individual communities, as well as the trust value that each community assigns to the other ones.

By definition, communities are built by looking at both the heterogeneity and the redundancy of provided features/services (so that multiple objects in the same community can offer the same feature/service). In a community, a smart object may require information to another smart object of the same community about the features/services offered by it. In order to estimate the latter’s reliability, and ultimately its reputation in the community, our approach adopts a solution based on a probing mechanism. In particular, nodes are tested using probing queries about features/services they can provide. Their answers are then compared with those received by other nodes capable of offering the same features/services. This comparison allows the computation of the reliability of the tested object in providing the features/services declared. All transactions made to assess the reliability of smart objects in a community are stored in a Blockchain with a dedicated smart contract.

After a certain time window, our framework computes the reputation of each object inside its community. At the end of this process, smart objects that do not meet the minimum reputation level are removed from the community. Then, for each community, a transaction with the list of its smart objects, along with their reputation, is stored in the Global Blockchain. In this way, the Local Blockchain is reset, following the approach described in [23], and all transactions occurring in the time window just passed are no longer considered.

Our approach also ensures protection when smart objects from different communities interact with each other. The procedure used in this case is similar to the one seen above. The results of a test performed by a smart object on another are stored in the Local Blockchain of the community the trustor object belongs to. Also in this scenario, after a certain time window, these transactions are aggregated and used to compute the trust of a community in another one. The trust values of each community in the other ones are stored in the Global Blockchain. Therefore, this last contains the reputation of each smart object in its community, as well as the trust of each community in the other ones it interacted with in the past. If there has never been an interaction between two communities, our approach assumes that each of them assigns a default trust value to the other one.

To perform the tasks described above, we use smart contract technology in the Blockchain. Indeed, Blockchain smart contracts are already being used to manage, control and secure IoT devices [24]. In particular, they can provide decentralized authentication rules and logic to implement single and multi-party authentication for an IoT device. They have been adopted to guarantee trustworthy and authorized identity registration, ownership tracking and monitoring of products, goods, and assets [25]. Their applications in IoT are discussed in [11], where the authors describe how Blockchain smart contracts can facilitate and support autonomous workflow and service sharing among IoT devices.

The previous description highlights that our approach is based on the requirement of having multiple objects providing the same feature/service in a community. Actually, this characteristic is common in several application scenarios. For instance, in contexts related to smart cities, the different available services are typically controlled through subgroups of smart meter/sensors dedicated to the specific domain, which the service belongs to. Such subgroups provide an adequate redundancy degree in order to avoid service outages. As a further example, consider the case in which a network of smart meters for fire detection is deployed in a forest [26]. This type of network typically includes sensors to measure temperature, humidity, wind speed and have a sufficient redundancy degree to handle fault tolerance. Again, we can think of the context of smart grids. These are power grids enabling a two-way flow of electricity and data across different smart sensors using the digital communication technology. This flow allows the system to detect, react and pro-act to problems that may occur or to usage changes. Of course, the security level required by the monitoring systems associated with smart grids needs ad hoc configurations. The latter typically involve clusters of smart objects collaborating with each other in a high fault tolerance setting. Another possible use case with these characteristics can be the video surveillance of critical public spaces through a network of smart drones capable of capturing snapshots of the monitored areas. In this case, the drones move freely in the environment and their number is often sufficient to ensure the coverage of the monitored areas. In this context, it is not unlikely that they can provide more than one proof of the same portion of an area in a given time interval. Snapshots can be compared through a proper similarity function that also takes into account different angles and perspectives.

Our approach also considers indoor scenarios, such as a smart home context. In these cases, the lower level of criticality and the smaller size of physical spaces make the need to provide redundancies less obvious. However, the next generation smart devices are typically equipped with several different sensors; think, for instance, of smartphones, smartwatches and smart televisions. Such devices may actually represent backups to standard domotic sensors (e.g., smart meters), again allowing for the construction of heterogeneous groups of smart objects with some redundancy level. Finally, we mention an edge interesting use case consisting of a community of objects belonging to the personal area network of a user. For example, consider the simple user gait monitoring service. This is typically done through personal devices such as fitbands. However, the same functionality can be also provided by a smartphone (in many cases, even multiple smartphones if a person has both a work phone and a personal one with her). Still, it can also be provided through all those devices equipped with an Inertial Measurement Unit (IMU). Moreover, some recent approaches (such as the one described in [27]) show that the WiFi signal reflected by the human body generates unique, albeit small, variations in the receiver’s wireless channel metrics, due to the well-known multipath effect of wireless signals. Thus, in principle, also WiFi can be used to measure a person’s pace.

All these example application cases show that the presence of multiple objects providing the same feature/service in a community is common in the modern IoT scenario.

Moreover, through a deep experimental campaign, carried out leveraging real-life smart object data and Ethereum transactions, we prove that our approach is feasible and allows for the detection of compromised nodes in a relative small amount of time strictly related to the chosen probing frequency. Of course, as shown in Section 6.2, the fraction of probing interactions among objects can be suitably tuned to avoid downgrading the overall performance of the system, on the one hand, and to guarantee a satisfactory security level for smart objects, on the other hand.

The outline of this paper is as follows. In Section 2, we examine related literature. In Section 3, we describe the reference IoT model. In Section 4, we illustrate the proposed framework. In Section 5, we describe our security model. In Section 6, we present the set of experiments performed to test our approach. Finally, in Section 7, we draw our conclusions and have a look at possible future developments of our research efforts.

Section snippets

Related work

Considering that the IoT paradigm has spread in a massive way in these last years, minimizing human intervention for the installation and management of its devices has been one of the main research direction in this context. This leads to the necessity of finding smarter and smarter autonomous decision-making processes, so that devices are able to vary their configuration dynamically throughout their working duration, selecting the best protocol to use, the best routes and the best nodes to

The reference IoT model

In this section, we illustrate the model adopted to represent and handle the entities characterizing our framework. In our model, the main actor is the smart object. It has associated a profile with: (i) an identifier; (ii) a set of features characterizing it; (iii) a set of services it offers; (iv) the information needed for the communication with other smart objects (such as the MAC address, the IP address, etc.). The smart objects of the IoT can be partitioned into communities according to

Technical description of our approach

In this section, we present the core of our approach. In particular, we describe our strategy to build the local and global Blockchain tiers to support the definition of a trust and reputation solution for smart objects. This section is organized as follows: In Section 4.1, we provide the general overview of the proposed scheme. In Section 4.2, we discuss the computation of reliability measures for smart objects inside a community. In Section 4.3, we extend this activity to smart objects

Security model

In this section, we illustrate the security model conceived for our framework. In particular, we present both the attack model and a security analysis showing that our framework addresses its objectives also in presence of attacks. In the security analysis, we refer to classical attacks to reputation systems adapted to our approach [74], [75] .

Experiments

In this section, we report the experiments we have carried out to test the effectiveness and the performance of our proposal. Specifically, in Section 6.1, we describe the dataset adopted. In Section 6.2, we analyze the performance of our approach. Finally, in Section 6.3, we compare it with other related ones previously proposed in literature.

Conclusion

In this paper, we have proposed a two-tier Blockchain framework conceived to increase protection and autonomy of smart objects in the IoT. First of all, we have seen the motivations underlying our decision to address this issue. Then, we have examined related literature and we have pointed out the main differences and novelties of our approach with respect to the past ones. Afterwards, we have proposed a reference model which both our framework and the algorithms operating in it are based on.

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Acknowledgments

This work was partially funded by the Department of Information Engineering at the Polytechnic University of Marche, Italy under the project “An integrated approach for innovative and eco-sustainable freight transport solutions in emergency and last mile logistics” (RSAB 2020), and by the Marche Region, Italy under the project “Human Digital Flexible Factory of the Future Laboratory (HDSFIab) - POR MARCHE FESR 2014–2020 - CUP B16H18000050007”.

References (91)

  • AtzoriL. et al.

    Understanding the internet of things: definition, potentials, and societal role of a fast evolving paradigm

    Ad Hoc Netw.

    (2017)
  • AtzoriL. et al.

    The social internet of things (SIOT) – when social networks meet the internet of things: Concept, architecture and network characterization

    Comput. Netw.

    (2012)
  • YanZ. et al.

    A survey on trust management for internet of things

    J. Netw. Comput. Appl.

    (2014)
  • GuoJ. et al.

    A survey of trust computation models for service management in internet of things systems

    Comput. Commun.

    (2017)
  • HendrikxF. et al.

    Reputation systems: A survey and taxonomy

    J. Parallel Distrib. Comput.

    (2015)
  • MartiS. et al.

    Taxonomy of trust: Categorizing P2P reputation systems

    Comput. Netw.

    (2006)
  • YuY. et al.

    Trust mechanisms in wireless sensor networks: Attack analysis and countermeasures

    J. Netw. Comput. Appl.

    (2012)
  • BouabdellahM. et al.

    Network layer attacks and countermeasures in cognitive radio networks: A survey

    J. Inform. Secur. Appl.

    (2018)
  • AloqailyM. et al.

    An intrusion detection system for connected vehicles in smart cities

    Ad Hoc Netw.

    (2019)
  • NicolazzoS. et al.

    A privacy-preserving approach to prevent feature disclosure in an iot scenario

  • Q. Wei, Z. Jin, Service discovery for internet of things: a context-awareness perspective, in: Proc. of the Fourth...
  • ChenD. et al.

    TRM-IoT: A trust management model based on fuzzy reputation for internet of things

    Comput. Sci. Inform. Syst.

    (2011)
  • KarlofC. et al.

    TinySec: a link layer security architecture for wireless sensor networks

  • ChenH. et al.

    A new kind of session keys based on message scheme for sensor networks

  • PerrigA. et al.

    SPINS: Security protocols for sensor networks

    Wirel. Netw.

    (2002)
  • DengJ. et al.

    A performance evaluation of intrusion-tolerant routing in wireless sensor networks

  • GaneriwalS. et al.

    Location & Identity Based Secure Event Report Generation for Sensor NetworksNESL Technical Report

    (2004)
  • ChristidisK. et al.

    Blockchains and smart contracts for the internet of things

    IEEE Access

    (2016)
  • BiswasK. et al.

    Securing smart cities using blockchain technology

  • DorriA. et al.

    Blockchain for IoT security and privacy: The case study of a smart home

  • Di PietroR. et al.

    A blockchain-based trust system for the internet of things

  • LinJ. et al.

    Using blockchain technology to build trust in sharing LoRaWAN IoT

  • HuhS. et al.

    Managing IoT devices using blockchain platform

  • SamaniegoM. et al.

    Blockchain as a service for IoT

  • SamaniegoM. et al.

    Using blockchain to push software-defined IoT components onto edge hosts

  • ShenM. et al.

    Privacy-preserving support vector machine training over blockchain-based encrypted IoT data in smart cities

    IEEE Internet Things J.

    (2019)
  • ChauhanA. et al.

    Blockchain and scalability. In proc. of the IEEE international conference on software quality

  • ShahidA.R. et al.

    Sensor-chain: A lightweight scalable blockchain framework for internet of things

  • OtteP. et al.

    TrustChain: A sybil-resistant scalable blockchain

    Future Gener. Comput. Syst.

    (2017)
  • ZhangJ. et al.

    Forest fire detection system based on a ZigBee wireless sensor network

    Front. Forestry China

    (2008)
  • DalaiA.K. et al.

    Wdtf: A technique for wireless device type fingerprinting

    Wirel. Pers. Commun.

    (2017)
  • Q.M. Ashraf, M.H. Habaebi, Introducing autonomy in internet of things, in: Proc. of the International Conference on...
  • PujolleG.

    An autonomic-oriented architecture for the internet of things

  • HuangW. et al.

    Design and implementation of an automatic network topology discovery system for the future internet across different domains

  • Al-TurjmanF. et al.

    Context-sensitive access in industrial internet of things (iiot) healthcare applications

    IEEE Trans. Ind. Inf.

    (2018)
  • Cited by (28)

    View all citing articles on Scopus
    1

    In this paper E. Corradini, S. Nicolazzo, A. Nocera, D. Ursino and L. Virgili interacted with each other in all the tasks connected with the presented research. Their contribution is equal and this is testified by the alphabetical order used in the Author List.

    View full text