Integrity: ensure that the accuracy of the data
received and transmitted using end-to-end
security in communications.
Availability: data and devices must be
accessible and reachable whenever required
Authentication: be able to identify each IoT
entity in the system
Lightweight solutions: because of their
constrained capabilities in terms of energy,
computational power and storage, IoT devices
require lightweight protocols and applications
as we will later examine in this study.
Heterogeneity: entities in an IOT system may
come from different vendors, with different
levels of specifications, but these specifications
should still be able to seamlessly cooperate.
Key Management System: whenever
exchanged, data needs to be encrypted.
There are further security issues in IOT systems
mentioned by (Sha, 2018) as :
Integration with the physical world: a corrupted
or wrong data transmitted by sensors in a train
or a plane can have irremediable consequences.
If the data is for example tampered by
unauthorized access, it can endanger people’s
lives.
Heterogeneity of devices and communications:
depending on the domain of application, IOT
systems do not have the same requirements
when it comes to devices. Monitoring a farm,
an industrial compound, a home or smart Grid
comes with different costs in terms of physical
architectures and communication schemes.
While some may stress on data updates others
may rely on more secure channels.
Scalability: Deploying IoT systems increase
interactions within the architecture, between
nodes and outside the environment, with data
servers, etc… As the number of entities grows,
it is important to ensure the availability, the
liability and the reliability of the system
Resource constraints: as we previously
mentioned, due to resource limitations, IoT
devices are designed with low capabilities.
Some features that need to be integrated in IoT
architectures involve more challenges just as
encryption, trust management and PKI usually
require more powerful systems.
Addressing these issues and implementing
solutions within IoT systems have an impact in
several aspects of the behaviour of the environment
in terms of energy consumption, reliability and
availability.
Our focus in this paper is the evaluation of some
encryption algorithms on nodes in IoT/WSN
architectures.
The present study explores literature and related
work defining encryption modes and types as well as
some performance analysis. Simulations,
methodologies, results and their analysis are also
presented.
2 RELATED WORK
When it comes to security challenges in IOT and
WSN architectures, there are several aspects that can
be addressed. (Mardiana binti Mohamad, 2019)
analysis of publications in IoT security from 2016 to
June 2018 (Elsevier, IEEE, Hindawi and Springer)
showed that most papers focused respectively on
authentication, trust, encryption and secure routing.
It is important to note that this evaluation may
suffer some flaws because cryptography (encryption
and decryption) is transverse to the previously
mentioned fields. We can simply consider encryption
as the process of transforming a plain text into a
cypher text using a hash. This process can be reverted
by the receiver via a key (deciphering).
Cryptography helps achieving several security
goals in information systems in general. Through
encryption and decryption, the sender and the
receiver can communicate with a certain level of
security. Depending on the encryption method,
messages are meant to be useless for any
unauthorized third party. By using hashing and
message digests, data’s integrity can be verified,
while digital signatures and certificates tackle
authentication goals.
(Mardiana binti Mohamad, 2019) also pointed out
that security can be applied at different layers of an
IoT architecture (physical, network or application).
As we examine encryption systems, we will gradually
investigate their effect on IoT or WSN devices and
networks.
2.1 Encryption Modes
Encryption can be either done through a stream cipher
that is byte-by-byte, or with block cyphers of fixed
lengths when you work on larger blocks (Meneghello,
2019). Different operating modes can be used to
encode and decode larger blocks namely (Kowalczyk,
2020):
ECB (Electronic CodeBook): each plain block
is encrypted and decrypted separately with a
key.