IoT Introduction
IoT Introduction
The Internet of Things (IoT) is a system of interrelated computing devices, mechanical and
digital machines, objects, animals or people that are provided with unique identifiers and
the ability to transfer data over a network without requiring human-to-human or human-to-
computer interaction.
It is actually a pretty simple concept, it means taking all the physical places and things in
the world and connecting them to the internet.
Purpose of IoT
When something is connected to the internet it can send information or receive
information, or both. This ability to send and/or receive information makes things smart.
To be smart a thing needs to have access to a storage or a computer network.
In the Internet of Things, all the things that are being connected to the internet can be put
into three categories:
All three of these have enormous benefits that compound on each other.
Sensors could be temperature sensors, motion sensors, moisture sensors, air quality
sensors, light sensors, or many others.
These sensors, along with a connection, allow us to automatically collect information from
the environment which allows to make intelligent decisions.
Just as sight, hearing, smell, touch, and taste allow humans to make sense of the world,
sensors allow machines (and the humans monitoring the machines) to make sense of the
world.
The second benefit of IoT is Acting on Information, the ability a device has to answer to a
piece of information in order to make actions.
An example could be using Infrared car keys signal to open the doors of a car.
Every answer to a signal makes a device a “smart acting device”.
The real power of the Internet of Things, though, arises when things do both of the above.
Using both of the benefit listed above makes a true IoT System.
The strengths of a fully automated Internet of Things ecosystem are the ability of using
sensors to send Information to devices that are able to act on those sensor signals.
An example could be made in Home Security systems, where a smartphone app (actor)
answers to signals sent by lights, alarms, and camera sensors – which are connected via
IoT to provide 24x7 security.
There are many different Internet Protocols used in the IoT world, for all different purpose:
from smart houses to enterprise-level industries there is no “best” one.
Here, four of the major protocols used will be descripted:
● Eliminate polling – This protocol allows instantaneous delivery, eliminating the need
for message consumers to periodically check or “poll” new information. This
reduces network traffic.
The AMQP – IoT protocol consist of a hard and fast of components that route and save
messages within a broker carrier – similarly to the MQTT.
It includes reliable queuing, flexible routing, various types of messaging, security, and
transactions.
Its most significant usage is in large-scale enterprise projects that have specific security,
reliability, and interopability requirements.
Since MQTT and AMQP are both binary messaging protocols that work on top of TCP/IP,
they are often compared.
4. Data Distribution Service (DDS)
It enables scalable, real-time, reliable, excessive-overall performance and
interoperable statistics change via the submit-subscribe technique.
Dds doesn’t use broker architecture, but instead it uses multicasting to convey high-
quality QoS to applications.
Dds can be deployed in platforms ranging from low-footprint devices to the cloud and
supports green bandwidth usage.
The DDS — IoT protocols have fundamental layers: facts centric submit-subscribe
(dcps) and statistics-local reconstruction layer (dlrl). Dcps plays the task of handing
over the facts to subscribers, and the dlrl layer presents an interface to dcps
functionalities, permitting the sharing of distributed data amongst IoT enabled objects.
Blockchain
Blockchain is a system of recording information in a way that makes it difficult or
impossible to change, hack, or cheat the system.
A blockchain is essentially a digital ledger of transactions that is duplicated and distributed
across the entire network of computer systems on the blockchain. Each block in the chain
contains a number of transactions, and every time a new transaction occurs on the
blockchain, a record of that transaction is added to every participant’s ledger. The
decentralised database managed by multiple participants is known as Distributed Ledger
Technology (DLT).
Blockchain is a type of DLT in which transactions are recorded with an immutable
cryptographic signature called a hash.
Those transactions show the movement of an asset that can be tangible (a product) or intangible
(intellectual). The data block can record the information of your choice.
What Is a Block?
Every chain consists of multiple blocks and each block has three basic elements:
• The nonce: “number used only once.” A nonce in blockchain is a whole number
that’s randomly generated when a block is created, which then generates a block
header hash.
• As the name is public this blockchain is open to the public, which means it is not owned by anyone.
• Anyone having internet and a computer with good hardware can participate in this public blockchain.
• All the computer in the network hold the copy of other nodes or block present in the network
Private Blockchain: These blockchains are not as decentralized as the public blockchain only selected
nodes can participate in the process, making it more secure than the others.
• Even a primary entity owns a hybrid blockchain it cannot alter the transaction
Consortium Blockchain: It is a creative approach that solves the needs of the organization. This
blockchain validates the transaction and also initiates or receives transactions.
Source: Jose Costa Sapalo Sicato, Sushil Kumar Singh, Shailendra Rathore and Jong Hyuk Park “A Comprehensive
Analyses of Intrusion Detection System for IoT Environment”, Journal of Information Processing Systems, September
2020
(https://www.researchgate.net/publication/344152313_A_Comprehensive_Analyses_of_Intrusion_Detection_System_
for_IoT_Environment)
In more details, IoT suffers of different security issues in each of its layer:
1. Starting top-down, the Application Layer is the layer that serves the user and that
receives data from the Network Layer. As the top layer, the security problems that
need to be taken care of are data integrity, data reliability, and the ability to protect
private information. The most common issues in this layer involves Cloud
vulnerabilities and the fact that so much data is being shared.
2. The Network Layer is the layer responsible for the devices to communicate with the
processing center. It’s the layer with the most important role in information
coordination, and also the most aimed for attacks. There are a lot of different
network protocols being used in this layer for different IoT ecosystems, so a good
security system is needed for this layer. Most of the IDS research is focused on
networks. The most common issues are vulnerabilities on data interchanges and
congestion attacks (DOS).
3. At the bottom of the chain there is the Perception Layer, also called Sensor Layer
since it’s the layer that include sensors, the “things” that collect data. The usual
security standards are difficult to apply to those devices, which most of them are
wireless. They can suffer from physical damage and storage vulnerabilities.
IDS as a solution
The Intrusion Detection Systems are devices or pieces of software that, through the use of
different detection approaches, can detect attacks on a system and then send a
notification or report to the administrator.
The IDS could be a single device or a network system.
It provides the three most important security services:
- Data confidentiality
- Data Availability
- Data Integrity
The CIDSs come in three different network architectures: centralized, hierarchical and
distributed.
A centralized CIDS uses several IDSs to monitor the network, wherein each IDS shares
data with a single analysis unit.
Hierarchical and decentralized CIDSs also use several IDSs, but analysis units connect in
a hierarchical structure tu monitor multiple points in the network. A decentralized CIDS can
overcome the single point of failure problem.
Meanwhile, a distributed CIDS is a P2P network architecture in which each participant has
an analysis unit and then shares information with others in a distributed manner.
IDS Detection Approaches
The most well known IDS approaches are signature and anomaly.
The signature approach tries to detect attacks through the mapping between signatures
(hashes, patterns, or rules) in a database.
This is an approach which can detect known attacks easily, but it suffers because it cannot
detect a new attack with no known patterns, rules, or hash.
On the other hand, the anomaly approach can detect unknown attacks by monitoring the
system’s behavior.
The anomaly approach finds abnormal activities and generates an alarm for the network
administrator.
This approach can detect unknown attacks, but his main issue is that it may send false
positive alarms.
CIoTA has been one of the most used and impactful blockchain IDS for IoT, but it has
some limitations.
A new proposed solution: BC-HyIDS
Based on the existing IDS solutions, being both Blockchain based or not, there are some
limitations which applies to most of them:
● Existing IDS does not use both detection methodologies (signature and anomaly
based)
● None of the cooperative intrusion detection systems are creating a signature for
distribution
● These IDS are not having any secure mechanism for sharing signatures within
the network
In order to provide a solution for the above mentioned gaps of existing IDS, a new
blockchain based IDS has been developed.
Its name is BC-HyIDS, and it is the first system providing all advantages and features
required for networks to keep it secure.
Some of the highlights of BC-HyIDS are:
This is a novel architecture because none of the IDS works on a hybrid approach of
combining both detection techniques.
Blockchain is used for signature transfer, and this model is proposed for a distributed
environment where each node is connected to the other in a distributed way. Each node is
able to detect attacks by analyzing packets entering through the network.
Whenever a packet reaches at node, it gets captured and detected for a malicious pattern
using signature-based detection phase.
In this phase, all classifiers are trained using CIC-IDS 2017 dataset.
If the packet is analyzed as an attack, it gets directly rejected by the node, otherwise it
would be forwarded to the second phase – the anomaly detection.
This phase improves security of the network since IDS validates each packet twice by both
detection techniques. If the dataset is not up-to-date with the signatures of modern attacks,
malicious pattern is also analyzed.
Then, signature creation and transfer using blockchain framework phase is used once the
attack is detected by the anomaly detection phase. This phase is added in this architecture
to securely transfer signatures from one node to another. During this phase, the node is
responsible for creating and encrypting the signature of the new attack.It is then
incorporated as a block in the blockchain, which will be used for transferring the signatures
in the network. All the other nodes will at this point receive the new block with the
signature and update their dataset to ensure that next time the same attack would be
taken care by the signature detection system at the first phase.
This will reduce the detection time as well as the processing time of the node, making it
only work on the first phase.
Blockchain phase
In BC-HyIDS, last phase is used to distribute signatures over the distributed network, in a secure
way.
The inputs received in this phase are packets which are predicted as attacks by the anomaly
detection phase (2nd one).
In BC-HyIDS architecture, phase 3 makes use of the blockchain platform for signatur
eextracion, upload and distribution.
The permissioned blockchain is developed with the help of Hyperledger which uses proof
of stake.
Hyperledger is a platform used to build custom applications on the permissioned
blockchain.
Those blockchains consists of nodes which have the authority to be part of them.
Each of those node is authorized to extract the signature, to create a block and to
distribute it among all remaining nodes of the network.
Each node has an analysis unit (AU) and a distribution unit (DU). Analysis units mainly analyzes
packets entering in the node through the network, and uses both of the first two phases of the BC-
HyIDS (signature and anomaly-based detection). This then helps to update the dataset with new
signatures.
Along those units, all nodes will consist in a complete ledger of the blockchain, and the transactions
in this blockchain is nothing but signatures extracted by nodes from the packet.
Extraction of signature
Mac address, IP address, Public Key, Private Key, Type, Port, Features
BC-HyIDS has some of he nodes working as validator nodes. The responsibility of validator nodes
is to check validity, authorization, and significance of the signature befor eincorporating it to the
blockchain.
● The signature submitted as a TX in the prescribe format and generated using the smart
contract used for signature creation
● Verifies whether or not the same signature has been uploaded in the ast by some other
initatior.
● If the signature is valid and created by the anomaly detection phase of the initiatior node
● If the initiator is an authorized node
If all the conditions are satisfied then the signatures are verified by the validator, otherwise
they are refused and signature gets dropped.
The block is divided into three sections as header, data and metadata.
1. Header: It is a block header which gives information about the block. It consists of
the following information
a. Block number
b. Previous block hash value
c. Current block hash value
2. Data: Block second section is Data section. This section consists of a data
signature created in the standard format.
3. Metadata: Metadata consists of the data about the block like timestamp, consensus
protocol, private key of the initiator and validator, and signature details if any.
Distribution of signature
Last step after block creation is the distribution of the block to all nodes in the blockchain.
Once the block is created, validator nodes add the block to the existing blockchain.
This information is then broadcasted in the network to all nodes.
Once the validator block is received by all nodes, the updating of the ledger occurs.
Once all nodes finish with the operation, blockchain is committed and the block is permanently
attached to the chain.
Updating the dataset then helps nodes for further analysis of packets entering in the network.