Research Paper 3
Research Paper 3
Review
Secure Firmware Update: Challenges and Solutions
Luigi Catuogno 1, *,† and Clemente Galdi 2,†
1 Department of Economics, Law, Computer Science and Motor Sciences, Università degli Studi di Napoli
“Parthenope”, 80133 Napoli, Italy
2 Informatica Presso il Dipartimento di Studi Politici e Sociali, Università degli Studi di Salerno,
84084 Fisciano, Italy; [email protected]
* Correspondence: [email protected]
† These authors contributed equally to this work.
Abstract: The pervasiveness of IoT and embedded devices allows the deployment of services that
were unthinkable only few years ago. Such devices are typically small, run unattended, possibly on
batteries and need to have a low cost of production. As all software systems, this type of devices need
to be updated for different reasons, e.g., introducing new features, improving/correcting existing
functionalities or fixing security flaws. At the same time, because of their low-complexity, standard
software distribution platforms and techniques cannot be used to update the software. In this
paper we review the current limitations posed to software distribution systems for embedded/IoT
devices, consider challenges that the researchers in this area have been identifying and propose the
corresponding solutions.
Keywords: firmware update; software update; IoT; embedded devices; mobile devices
1. Introduction
The increasing use of Internet connected devices, has improved people’s everyday
life. Such devices can be used as building blocks for structured services that can be easily
deployed. They can be as tiny and simple as smart lamps, or have considerable computing
and storage capacities as home security controllers.
Given the huge number of possible devices that are currently available on the market,
Citation: Catuogno, L.; Galdi, C.
the possibility that each one them runs multiple payloads and the corresponding wide range
Secure Firmware Update: Challenges
of possible compositions of provided services, heterogeneity becomes a crucial property
and Solutions. Cryptography 2023, 7,
that characterizes every IoT based system, independently from the specific application it
30. https://doi.org/10.3390/
cryptography7020030
has been deployed for.
One key element that makes IoT devices widespread is the possibility of creating or
Academic Editor: Jim Plusquellic connecting to networks. At the same time, many devices have been designed to operate on
Received: 24 April 2023
batteries, imposing the strong limitation of reducing as much as possible the power needed
Revised: 23 May 2023 to carry out all operations. Among all components of an IoT device, the one that consumes
Accepted: 30 May 2023 more energy is by far the one devoted to the communication. This makes the design of soft-
Published: 1 June 2023 ware components that have to be deployed on such devices particularly challenging since
the tradeoff between information dissemination, needed to correctly run the prescribed
task, and power consumption, necessary for guaranteeing device survivability, becomes
part of the software lifecycle since its early stages.
Copyright: © 2023 by the authors. On the hardware side, a crucial feature of IoT devices is their cost. Clearly, better
Licensee MDPI, Basel, Switzerland. performance/features increase the cost of each device and one important issue is to prop-
This article is an open access article
erly balance device costs and the desired device functionalities. In general, devices that
distributed under the terms and
provide some type of hardware-supported security primitive have higher cost but, also,
conditions of the Creative Commons
corresponding higher security guarantees.
Attribution (CC BY) license (https://
In order to be competitive, device manufacturers need to continuously release new
creativecommons.org/licenses/by/
products with short time-to-market and lowest possible prices. To this end, in this specific
4.0/).
market, it is extremely hard to produce devices with strong security guarantees. Further-
more, since new security threats are continuously discovered, each manufactures needs
to put in place a methodology to identify threats that apply to its products, produce
firmware/software updates that mitigate/solve the threat and securely update all the
devices that are subject to the identified flaw.
Addressing the need of firmware/software update is by itself a very challenging task
in this context for the following reasons:
• The number and features of stakeholders involved in different products deployments
may vary significantly. Each deployment site may have its own update/upgrade poli-
cies that may depend on the context and/or on internal security/operational policies.
• In a typical deployment, multiple devices from multiple manufacturers need to share
the same operational context. In many case, interoperability might be an issue and
the uncoordinated updates of a subset of devices might lead to service unavailability.
Furthermore, devices might even be unattended and prone to faults due to exter-
nal conditions.
• Each manufacturer needs to provide a scalable software distribution system that is
able to operate with thousands/millions of devices, in an asynchronous manner, while
guaranteeing correct delivery and software integrity even when devices might not be
able to execute complex security protocols.
These challenges have been largely addressed in different contexts, each characterised
by a specific set of requirements. Each solution in the literature has been designed with a
specific set of requirements, making it secure/efficient in the considered domain but, at the
same time, possibly insecure/inefficient in other contexts. In this paper we will present in
details requirements and restrictions that might appear in different operational contexts
and discuss solutions to the firmware distribution problem that have been presented in
the literature.
The rest of the paper is organized as follows. In Section 2, we report the reference
scenarios that are usually found in the literature. In Section 3 we discuss methodologies
and technologies that can be considered as building blocks for secure software update
systems. In Section 4 we describe software distribution models and systems that have been
presented in the literature. Finally, a discussion on open challenges will conclude the paper.
2. Reference Scenario
Managing the deployment of firmware and software updates for devices operating
within a IoT ecosystem is a pretty delicate task as it has a considerable impact on the
reliability and security of single devices as well as the whole infrastructure built upon them.
Furthermore, IoT and embedded devices are, nowadays, the preferred target of plenty of
attack vectors. This is due to several reasons that include:
Devices have, often, limited computational resources/capabilities so that, in some
cases, such constrained devices are not suitable to fully implement security protocols, peers’
authentication, data encryption algorithms and so on. The security of the whole system
may depend on the size of cryptographic keys that, because of such limitations, are forced
to be short. Limited bandwidth and/or high latency may be used to induce inconsistencies
in the different nodes in the network.
Devices might be installed and operate within a logical/physical domain which spans
over a wide area. This makes harder the design and setup of any centralized protection
of the domain boundaries. Furthermore, many devices frequently move across such
boundaries, e.g., all wearable devices follow their owner in her everyday activities. This
creates the need of designing software update systems that are resilient to attacks coming
from a maliciously programmed herd of transient nodes.
Devices operation might be mostly unattended and, thus, time might pass before
any potential intrusion or fault is discovered. In particular, device updates are mostly
accomplished in a fully automated way, hence, update procedures and protocols should
Cryptography 2023, 7, 30 3 of 17
be able to promptly detect any update fault and possibly revert the procedure in order to
bring the device back to a functional state.
IoT infrastructures may contain a noticeable number of (potentially heterogeneous)
devices. Update procedures and protocols should be designed to scale as well. A critical
aspect is that large scale updates take some time to be completed. In the meantime,
devices equipped with different firmware versions might coexist for a while and, moreover,
several faults might occur, making unavailable a certain number of devices. This may
affect the security and the reliability of the whole infrastructure (of some parts of it)
whenever, for example, devices running different firmware versions turn out to be partially
or fully incompatible.
important to stress that the security of primitives of different classes or based on different
assumptions are not comparable simply by looking at their key size.
Literature on cryptographic research is vast and in continuous evolution. For the
purpose of this paper we first focus on schemes and solutions that have been subject to a
standardization process.
ISO/IEC 29192 [13] is a family of standards that focuses on lightweight cryptographic
primitives “suitable for lightweight cryptographic applications, including radio-frequency
identification (RFID) tags, smart cards (e.g. contactless applications), secure batteries,
health-care systems (e.g. Body Area Networks), sensor networks, etc.”. It currently consists
of 8 parts each dealing with different types of primitives. Specifically, part 1 presents
terms and definitions. ISO/IEC 29192 part 2 presents three lightweight block ciphers,
PRESENT [14], 64-bit block size, 80 or 128 bit key size, CLEFIA [15] and LEA, both with 128-
bit block size and 128, 192 or 256-bit key size while part 3 is devoted to the stream ciphers
Enocoro [16,17] and Trivium [18]. Part 4 introduces mechanisms based on lightweight
asymmetric cryptography. Specifically, cryptoGPS, an identification scheme, ALIKE, a
mechanism for authentication and key exchange, and an identity based signature scheme.
ISO/IEC 29192 part 5 defines three hash functions, PHOTON [19], SPONGENT [20] and
Lesamnta-LW [21]. ISO/IEC 29192 part 5 defines three Message authentication codes,
namely, LightMAC [22], Chaskey-12 [23] and “Tsudik’s keymode”. Part 7 deals with broad-
cast authentication protocols while, part 8 presents a method for authenticated encryption.
ISO/IEC 29167 [24] is a family of standards that presents solutions to secure RFID
communications. These mechanisms can be used only with RFIDs air interfaces that have
security mechanisms onboard. ISO/IEC 29167:1 presents a general framework for the
development of security mechanisms. The other parts of the standard ISO/IEC 29167,
presents security services based on block ciphers AES-128 (part 10), PRESENT-80 [14]
(part 11), AES OFB (part 14), RAMON [25] (part 19), SIMON [26] (part 21) and SPECK [26]
(part 22), ECC-DH key agreement (part 12), on the stream cipher Grain-128A (part 13),
XOR (part 15), on Elliptic Curve cryptographic primitives ECDSA-ECDH (part 16), on the
cryptoGPS identification scheme (part 17).
Elliptic Curve Cryptography has, in general, a fundamental role in the design of secure
mechanisms and, in particular, when such mechanisms have to be executed on constrained
devices. This is essentially due to the possibility of having short keys and efficient al-
gorithms that can be implemented and executed on IoT/mobile devices, while keeping
high security levels. Such importance is testified by a large number of standards that deal
with this type of cryptosystems. ISO/IEC 15946 [27] family describes the mathematical
background and the curve generation algorithms that are at the basis of primitives like
ciphers ISO/IEC 18033-2 [28], digital signatures ISO/IEC 9796-3 [29], ISO/IEC 14888-3 [30]
key management ISO/IEC 11770-3 [31] and others.
The new standard for lightweight cryptography selected by NIST at the end of the
NIST Lightweight Cryptography competition (2019–2023) [32] is a family of authenticated
encryption and hashing algorithms called Ascon [33]. Such family of primitives had already
been selected as winner of the Ceaser competition (2014–2019) [34].
In recent years, the advances in the design and prototyping of quantum technologies,
on one side, and on quantum computing, on the other side, have made clear the need
of developing cryptographic primitives that were able to resist to threats posed by ad-
versaries able to effectively use quantum computing technologies. In this direction, the
NIST launched the Post-Quantum Cryptography Standardization [35], a project for the
selection, evaluation and standardization of quantum-resistant public-key cryptographic
algorithms. At the time of this writing, the process has reached its fourth round and
the algorithms that are currently under evaluation are a public-key encryption and key-
establishment algorithm named Crystals-Kyber, and three digital signature algorithms,
namely, Crystals-Dilithium, Falcon and Sphincs+.
To this end, the field of secure software updates is not an exception. As observed by the
IETF Software Updates for Internet of Things (SUIT) group in [36], since the lifespan of IoT
Cryptography 2023, 7, 30 7 of 17
devices may last decades, manufacturers should start considering the use of post-quantum
cryptographic primitives. There are few studies, e.g., [37,38] that analyze the feasibility and
performance of quantum-resistant cryptographic primitives on IoT-class devices.
What we’ve discussed so far are cryptographic primitives that have been developed
for IoT devices and that have undergone a standardization process. There are, of course,
many other secure cryptographic primitives that can be deployed on IoT devices but that
have not been standardized, yet. In general, ECC-based cryptographic primitives can be
used to design Identity-based cryptographic schemes [39] in which the public key of an
entity can be derived from its publicly available identity, e.g., a unique arbitrary identifier,
an email address, etc. The use of ID-based cryptographic primitives reduces the need of a
secure infrastructure that keeps the association between identities and their corresponding
public keys. Whenever a public key for a specific identity is needed, everyone can compute
it starting from the identity and the scheme public parameters. A generalization of ID-
based schemes are the Attribute-Based Encryption (ABE) primitives [40], in which the
the secret key of the entity is related to some attributes the entity may possess, e.g., a
specific processor type or a specific amount of memory, etc. In the case of encryption, the
ciphertext is dependent on a set of attributes and the decryption is possible only if the
attributes of the decrypting entity match the decryption policy. There are essentially two
families of ABE schemes. In Key policy ABE, (KP-ABE) [41], the ciphertext is associated
with a set of attribute labels and the decryption policy is embedded in the key sent to the
user. In this case, the key generator is able to dynamically redefine the access policy. In
contrast, in Ciphertext-policy Scheme, (CP-ABE) [42], the decryption policy is embedded
in the ciphertext and, thus, the encrypting entity (statically) defines the decryption policy
associated to a specific message. Attribute-based cryptographic primitives constitute
flexible tools for enforcing access control on encrypted data.
containing multiple transactions, that are linked together in a linear and immutable way.
Immutability has to be intended in the sense that, once a transaction is registered in the
blockchain, it cannot be removed or its “position” in the chain cannot be altered. It is
always possible to add new blocks to the blockchain by collecting a set of transactions
and binding all of them to previous blocks in the chain by means of cryptographic hash
functions. All transactions stored in the blockchain are publicly accessible and verifiable.
Stated in this way, blockchain appears to be a special kind of distributed database. For
example, a node might compare the checksum of the software it’s going to install with the
corresponding one stored in the blockchain. The interest in blockchains is due to the fact
that they are implemented by means of distributed ledger technologies (DLTs), that is a set
of technologies that allow the implementation of a geographically distributed blockchain,
with the guarantee that replicated data are consistent. Security of such technologies comes
from the security of the cryptographic primitives used to construct the blockchain and by
the fact that corrupting a sufficient number of nodes while they’re reaching the consensus
on the next node to add to the chain, is considered impossible.
Modern blockchains offer the possibility of interacting with external applications by
means of smart contracts, that are procedures that are stored on the blockchain, executed
by the blockchain using inputs coming from external applications and data stored on the
blockchain. The authenticity and integrity of such procedures is inherently guaranteed by
immutability of information stored on the blockchain. For example, it might be possible to
write smart contracts that verify complex dependency properties during the installation
of multiple (authentic) software packages. This interaction distributes the load of soft-
ware verification among the nodes on the blockchain, while guaranteeing the security of
the results.
• Trusted Provisioning Authority (TPA), the entity who is responsible for defining trust
anchors and update policies for the update process;
• User who actually uses the IoT fleet via web or other devices.
This is the minimal set of stakeholders that can be found in an IoT deployment.
However, there are cases in which some of these stakeholders may collapse to a single
entity, e.g., network and device operators might be the same entity. Similarly, there are
actual deployment in which the same stakeholder may appear in multiple instances, each
with different privileges, e.g., multiple users in the same network or multiple networks
managing the same fleet of devices.
The RFC also provides a minimal set of functionalities that need to be provided in
order to guarantee the security of firmware update. These functionalities are:
• The status tracker, consisting of a server component and a client component, that is re-
sponsible for identifying the availability/triggering the update process and convoying
information about the hardware and the available firmware.
• The firmware consumer, that receives the firmware and the manifest, interacts with
the status tracker and executes the firmware update.
• The firmware server that distributes the firmware images and their corresponding manifests.
• The bootloader that is executed when the devices starts up and, if deemed appropriate,
executes the newly installed firmware or rolls back to the previously installed one.
Most of modern IoT devices can execute the firmware update autonomously, without
the need of being cable-connected to an external driver. This means that, besides having
the capability of using the network to connect to the firmware server, they need to have
onboard elements like the manifest parser, the capability of writing to a persistent storage,
the ability to post-process the received image, e.g., decrypting/decompressing the image
or verifying its integrity/authenticity.
Firmware updates may be either client-initiated, via regular polling executed by
status tracker onboard the IoT device, or server-initiated, through in a push-like procedure
where the (server) status tracker selectively informs the IoT of the need/existence of a new
available firmware release.
The RFC discusses multiple possibilities that allow to transfer the firmware from the
author to the device. Furthermore, different possibilities are available for installing the
new firmware. Every possible decision on the specific selection of the transfer and installa-
tion procedures strongly depend on the actual application scenarios and it requirements.
Clearly, firmware installation is security sensitive procedure that, in most cases, requires
the interaction of the firmware consumer with the bootloader that restarts the device and
executes the last steps of the installation procedure.
Security issues related to power draining attacks have always been central in the
research on battery operated devices. In particular, maliciously modified firmware may
attach directly the battery management system [66]. In these cases, different techniques are
available, ranging from preventing the attack by monitoring of the device power consump-
tion [67,68] to recovering from a modified firmware using the support of a blockchain [66].
A further step to automate and enforce IoT firmware/software updates in hetero-
geneous deployments is the one of using blockchains [50,69]. As stated in the previous
section, corrupting data stored in a blockchain is impossible. Furthermore, the geographic
distributed nature of blockchains is a guarantee for scalability for the resource demanding
task of software distribution. Notice that this solutions add new components in the model
defined in Section 4.1. Indeed, the blockchain becomes a new component that lays between
the manufacturer and the site/network operator and is used by the latter to identify and
authenticate software/firmware components before their installation on the final devices.
There are solutions, e.g., [60], that go in the opposite direction of imposing the direct
operator control over software/firmware requests. Typically, such solutions assume the
existence of a human operator who is responsible for identifying devices and software that,
in the domain under her control, need to be updated. Furthermore, she has the authority to
impose the installation of software to all the devices. As usual, whenever there is a human
in the loop, the classical problems of continuous user authentication [57,58], usability of
authentication devices [70,71] have to be carefully considered.
In Tables 1 and 2, we summarize some of the results reported above.
Zandberg et al. [46] De Sousa et al. [48] Asokan et al. [49] Karthik et al. [72]
Heterogeneous devices
Heterogeneous devices
Required Class-2 devices and grouped with a
Class-3 devices with assigned to a primary
Computational lightweight primary domain
TCP-IP capabilities domain controller with
Capabilities cryptography controller with PC-like
TEE + TMF
capabilities
Initial update module + Bootloader rolls back Remote attestation to
Unattended operations N/A
preloaded trust anchor invalid updates check updates
Device authentication Package source
Signed Manifest and Authorization tokens in
End-to-end security via preloaded authentication via
firmware update packages
credentials digital signature
Legacy RTOS + single TEE + secure boot to
Multiple stakeholders N/A N/A
firmware image protect code and keys
Requires interactive Package delivery Requires interactive
Scalability Multicast protocol suite
protocol outsourced to a CDN protocol
Standard OS, libraries,
Heterogeneous devices runtime and protocol N/A Not Specified Not Specified
stack
Device management in Payload delivery
Network Intelligence N/A N/A
cloud through a CDN
Cryptography 2023, 7, 30 13 of 17
Anastasiou et al. [50] Ambrosin et al. [55] Seitz et al. [60] Catuogno et al. [59]
Required PC- like controller in
LoRA Alliance Lightweight
Computational the loop + lightweight TEE
complaint devices cryptography
Capabilities cryptography
Software updates are
Public keys preloaded Public keys preloaded Software update may
Unattended operations partially automated
in devices in devices be fully automatic
(Human in the loop)
Software packages
Software packages
signed at source.
signed at source +
Integrity and Encrypted and signed Software packages
End-to-end security installation policy
installation policy payloads using ABE signed at source
enforcement via secret
driven via smart
sharing
contracts
Legacy OS + Multiple Legacy OS + Multiple
Multiple stakeholders N/A Not specified
third party applications third party applications
Multicast protocol suite
Use of Named
Scalability + geographically N/A Not specified
Networks
distributed blockchain
LoRA Alliance
Heterogeneous devices Not specified Not Specified Not Specified
complaint devices
Network Intelligence Underlying Blockchain Named Networks N/A N/A
software updates of worldwide distributed IoT devices. To this aim, a possible candidate
might be the Algorand blockchain [73] that has extremely low costs, currently $0.0002 per
transaction, and high number of transactions per second, currently up to 6000 TPS.
5. Conclusions
In this paper we have analyzed the problem of software/firmware updates in the
context of IoT/embedded devices. We have argued that complexity of the IoT world is
essentially related to heterogeneity and multi-manufacturer deployments. Furthermore, the
need of executing resource demanding security primitives on resource constrained devices,
makes the design and deployment of secure distribution infrastructures a challenging task.
We have discussed a set of enabling technologies and methodologies that are currently used
to deploy secure systems. We have also discussed some challenges that naturally appear
in the this specific context and listed some solutions proposed in the literature. We finally
presented some issues that we believe need to be carefully considered when designing and
deploying a new software update infrastructure in a specific application scenario.
Funding: This work was partially supported by project SERICS (PE00000014) under the MUR
National Recovery and Resilience Plan funded by the European Union—NextGenerationEU.
Conflicts of Interest: The authors declare no conflict of interest.
References
1. Gao, H.; Qiu, B.; Duran Barroso, R.J.; Hussain, W.; Xu, Y.; Wang, X. TSMAE: A Novel Anomaly Detection Approach for Internet
of Things Time Series Data Using Memory-Augmented Autoencoder. IEEE Trans. Netw. Sci. Eng. 2022, early access. [CrossRef]
2. Gao, H.; Zhang, Y.; Miao, H.; Barroso, R.J.D.; Yang, X. SDTIOA: Modeling the Timed Privacy Requirements of IoT Service
Composition: A User Interaction Perspective for Automatic Transformation from BPEL to Timed Automata. Mob. Netw. Appl.
2021, 26, 2272–2297. [CrossRef]
3. Catuogno, L.; Turchi, S. The Dark Side of the Interconnection: Security and Privacy in the Web of Things. In Proceedings of the
2015 9th International Conference on Innovative Mobile and Internet Services in Ubiquitous Computing, Santa Catarina, Brazil,
8–10 July 2015; pp. 205–212. [CrossRef]
4. Cañedo, J.; Skjellum, A. Using machine learning to secure IoT systems. In Proceedings of the 2016 14th Annual Conference on
Privacy, Security and Trust (PST), Auckland, New Zealand, 12–14 December 2016; pp. 219–222. [CrossRef]
5. Gupta, H.; van Oorschot, P.C. Onboarding and Software Update Architecture for IoT Devices. In Proceedings of the 17th
International Conference on Privacy, Security and Trust, PST 2019, Fredericton, NB, Canada, 26–28 August 2019; pp. 1–11.
[CrossRef]
6. Bormann, C.; Ersue, M.; Keranen, A. RFC 7228: Terminology for Constrained-Node Networks; IETF: Wilmington, DE, USA, 2014.
7. GlobalPlatform. TEE System Architecture v1.3. 2022. Available online: http://www.globalplatform.org (accessed on
21 April 2023).
8. ARM Ltd. ARM Security Technology. Building a Secure System Using TrustZone Technology. 2008. Available online:
http://www.arm.com (accessed on 21 April 2023).
9. Costan, V.; Devadas, S. Intel SGX Explained. Cryptology ePrint Archive, Paper 2016/086. 2016. Available online: https:
//eprint.iacr.org/2016/086 (accessed on 21 April 2023).
10. Jakobsson, M. Secure Remote Attestation. Cryptology ePrint Archive, Paper 2018/031. 2018. Available online: https:
//eprint.iacr.org/2018/031 (accessed on 21 April 2023).
11. Catuogno, L.; Galdi, C. Ensuring Application Integrity: A Survey on Techniques and Tools. In Proceedings of the 9th International
Conference on Innovative Mobile and Internet Services in Ubiquitous Computing—IMIS 2015, Santa Cantarina, Brazil, 8–10 July
2015; pp. 192–199. [CrossRef]
12. Arthur, W.; Challener, D.; Goldman, K. A Practical Guide to TPM 2.0: Using the New Trusted Platform Module in the New Age of
Security; Springer: Berlin/Heidelberg, Germany, 2015.
13. ISO/IEC TR 29192; Information Security—Lightweight Cryptography. Standard International Organization for Standardization:
Geneva, Switzerland, 2013.
14. Bogdanov, A.; Knudsen, L.R.; Leander, G.; Paar, C.; Poschmann, A.; Robshaw, M.J.B.; Seurin, Y.; Vikkelsoe, C. PRESENT: An
Ultra-Lightweight Block Cipher. In Cryptographic Hardware and Embedded Systems—CHES 2007, Proceedings of the 9th International
Workshop, Vienna, Austria, 10–13 September 2007; Springer: Berlin/Heidelberg, Germany, 2007; pp. 450–466.
15. Shirai, T.; Shibutani, K.; Akishita, T.; Moriai, S.; Iwata, T. The 128-Bit Blockcipher CLEFIA (Extended Abstract). In Fast Software
Encryption; Biryukov, A., Ed.; Springer: Berlin/Heidelberg, Germany, 2007; pp. 181–195.
Cryptography 2023, 7, 30 15 of 17
16. Watanabe, D.; Okamoto, K.; Kaneko, T. A hardware-oriented light weight pseudo-random number generator enocoro-128v2. In
Proceedings of the 2010 Symposium on Cryptography and Information Security, SCIS 2010, Okayama, Japan, 8–12 December
2010. (In Japanese)
17. Watanabe, D.; Owada, T.; Okamoto, K.; Igarashi, Y.; Kaneko, T. Update on Enocoro stream cipher. In Proceedings of the
2010 International Symposium On Information Theory & Its Applications, Taichung, Taiwan, 17–20 October 2010; pp. 778–783.
[CrossRef]
18. De Cannière, C.; Preneel, B. Trivium. In New Stream Cipher Designs: The eSTREAM Finalists; Springer: Berlin/Heidelberg,
Germany, 2008; pp. 244–266. [CrossRef]
19. Guo, J.; Peyrin, T.; Poschmann, A. The PHOTON Family of Lightweight Hash Functions. In Advances in Cryptology—CRYPTO
2011, Proceedings of the 31st Annual Cryptology Conference, Santa Barbara, CA, USA, 14–18 August 2011; Rogaway, P., Ed.; Springer:
Berlin/Heidelberg, Germany, 2011; pp. 222–239.
20. Bogdanov, A.; Knežević, M.; Leander, G.; Toz, D.; Varıcı, K.; Verbauwhede, I. Spongent: A Lightweight Hash Function. In
Cryptographic Hardware and Embedded Systems—CHES 2011, Proceedings of the 13th International Workshop, Nara, Japan, 28 September–1
October 2011; Preneel, B., Takagi, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2011; pp. 312–325.
21. Hirose, S.; Ideguchi, K.; Kuwakado, H.; Owada, T.; Preneel, B.; Yoshida, H. A Lightweight 256-Bit Hash Function for Hardware
and Low-End Devices: Lesamnta-LW. In Information Security and Cryptology—ICISC 2010, Proceedings of the 13th International
Conference, Seoul, Republic of Korea, 1–3 December 2010; Rhee, K.H., Nyang, D., Eds.; Springer: Berlin/Heidelberg, Germany, 2011;
pp. 151–168.
22. Luykx, A.; Preneel, B.; Tischhauser, E.; Yasuda, K. A MAC Mode for Lightweight Block Ciphers. In Fast Software Encryp-
tion, Proceedings of the 23rd International Conference, FSE 2016, Bochum, Germany, 20–23 March 2016; Peyrin, T., Ed.; Springer:
Berlin/Heidelberg, Germany, 2016; pp. 43–59.
23. Mouha, N.; Mennink, B.; Van Herrewege, A.; Watanabe, D.; Preneel, B.; Verbauwhede, I. Chaskey: An Efficient MAC Algorithm
for 32-bit Microcontrollers. In Selected Areas in Cryptography—SAC 2014; Joux, A., Youssef, A., Eds.; Springer International
Publishing: Cham, Switzerland, 2014; pp. 306–323.
24. ISO/IEC TR 29167; Information Technology—Automatic Identification and Data Capture Techniques—Part 1: Security Services
for RFID Air Interfaces. Standard International Organization for Standardization: Geneva, Switzerland, 2014.
25. Hinz, W.; Finkenzeller, K.; Seysen, M. Secure UHF Tags with Strong Cryptography-Development of ISO/IEC 18000-63 Compatible
Secure RFID Tags and Presentation of First Results. In Proceedings of the SENSORNETS 2013—Proceedings of the 2nd
International Conference on Sensor Networks, Barcelona, Spain, 19–21 February 2013; pp. 5–13.
26. Beaulieu, R.; Treatman-Clark, S.; Shors, D.; Weeks, B.; Smith, J.; Wingers, L. The SIMON and SPECK lightweight block ciphers. In
Proceedings of the 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC), San Francisco, CA, USA, 7–11 June
2015; pp. 1–6. [CrossRef]
27. ISO/IEC TR 15946; Information Technology—Security Techniques—Cryptographic Techniques Based on Elliptic Curves. Interna-
tional Organization for Standardization: Geneva, Switzerland, 2016.
28. ISO/IEC TR 18033; Information Technology—Security Techniques—Encryption Algorithms—Part 2: Asymmetric Ciphers.
International Organization for Standardization: Geneva, Switzerland, 2006.
29. ISO/IEC TR 9796-3; Information Technology—Security Techniques—Digital Signature Schemes Giving Message Recovery—Part
3: Discrete Logarithm Based Mechanisms. International Organization for Standardization: Geneva, Switzerland, 2006.
30. ISO/IEC TR 14888; IT Security Techniques—Digital Signatures with Appendix—Part 3: Discrete Logarithm Based Mechanisms.
International Organization for Standardization: Geneva, Switzerland, 2018.
31. ISO/IEC TR 11770-3; Information Security—Key Management—Part 3: Mechanisms Using Asymmetric Techniques. International
Organization for Standardization: Geneva, Switzerland, 2021.
32. NIST Lightweight Cryptography competition (2019–2023). Available online: https://csrc.nist.gov/Projects/lightweight-
cryptography (accessed on 21 April 2023).
33. Ascon—Lightweight Authenticated Encryption & Hashing. Available online: https://ascon.iaik.tugraz.at (accessed on 21 April 2023).
34. CEASER Cryptographic competitions (2014–2019). Available online: https://competitions.cr.yp.to/caesar.html (accessed on 21
April 2023).
35. NIST. NIST Post-Quantum Cryptography Project. 2017. Available online: https://csrc.nist.gov/projects/post-quantum-
cryptography (accessed on 21 April 2023).
36. Moran, B.; Tschofenig, H.; Brown, D.; Meriac, M. A Firmware Update Architecture for Internet of Things. RFC 2021, 9019, 1–25.
[CrossRef]
37. Banegas, G.; Zandberg, K.; Baccelli, E.; Herrmann, A.; Smith, B. Quantum-Resistant Software Update Security on Low-Power
Networked Embedded Devices. In Lecture Notes in Computer Science, Proceedings of the Applied Cryptography and Network Security—
20th International Conference, ACNS 2022, Rome, Italy, 20–23 June 2022; Ateniese, G., Venturi, D., Eds.; Springer: Berlin/Heidelberg,
Germany, 2022; Volume 13269, pp. 872–891. [CrossRef]
38. Manna, M.L.; Perazzo, P.; Treccozzi, L.; Dini, G. Assessing the Cost of Quantum Security for Automotive Over -The-Air Updates.
In Proceedings of the IEEE Symposium on Computers and Communications, ISCC 2021, Athens, Greece, 5–8 September 2021;
pp. 1–6. [CrossRef]
Cryptography 2023, 7, 30 16 of 17
39. Shamir, A. Identity-Based Cryptosystems and Signature Schemes. In Advances in Cryptology; Blakley, G.R., Chaum, D., Eds.;
Springer: Berlin/Heidelberg, Germany, 1985; pp. 47–53.
40. Sahai, A.; Waters, B. Fuzzy Identity-Based Encryption. In Advances in Cryptology—EUROCRYPT 2005, Proceedings of the 24th
Annual International Conference on the Theory and Applications of Cryptographic Techniques, Aarhus, Denmark, 22–26 May 2005; Cramer,
R., Ed.; Springer: Berlin/Heidelberg, Germany, 2005; pp. 457–473.
41. Goyal, V.; Pandey, O.; Sahai, A.; Waters, B. Attribute-based encryption for fine-grained access control of encrypted data. In
Proceedings of the 13th ACM Conference on Computer and Communications Security, CCS 2006, Alexandria, VA, USA, 30
October–3 November 2006; pp. 89–98. [CrossRef]
42. Bethencourt, J.; Sahai, A.; Waters, B. Ciphertext-Policy Attribute-Based Encryption. In Proceedings of the 2007 IEEE Symposium
on Security and Privacy (S&P 2007), Oakland, CA, USA, 20–23 May 2007; pp. 321–334. [CrossRef]
43. Xia, W.; Wen, Y.; Foh, C.H.; Niyato, D.; Xie, H. A Survey on Software-Defined Networking. IEEE Commun. Surv. Tutor. 2015,
17, 27–51. [CrossRef]
44. Content-Centric Networking. Available online: https://wiki.fd.io/view/Cicn (accessed on 7 April 2023).
45. Named Data Networking. Available online: https://named-data.net (accessed on 7 April 2023).
46. Zandberg, K.; Schleiser, K.; Acosta, F.; Tschofenig, H.; Baccelli, E. Secure Firmware Updates for Constrained IoT Devices Using
Open Standards: A Reality Check. IEEE Access 2019, 7, 71907–71920. [CrossRef]
47. Maksuti, S.; Bicaku, A.; Zsilak, M.; Ivkic, I.; Péceli, B.; Singler, G.; Kovács, K.; Tauber, M.; Delsing, J. Automated and Secure
Onboarding for System of Systems. IEEE Access 2021, 9, 111095–111113. [CrossRef]
48. de Sousa, M.J.B.; Gonzalez, L.F.G.; Ferdinando, E.M.; Borin, J.F. Over-the-air firmware update for IoT devices on the wild. Internet
Things 2022, 19, 100578. [CrossRef]
49. Asokan, N.; Nyman, T.; Rattanavipanon, N.; Sadeghi, A.; Tsudik, G. ASSURED: Architecture for Secure Software Update of
Realistic Embedded Devices. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2018, 37, 2290–2300. [CrossRef]
50. Anastasiou, A.; Christodoulou, P.; Christodoulou, K.; Vassiliou, V.; Zinonos, Z. IoT Device Firmware Update over LoRa: The
Blockchain Solution. In Proceedings of the 2020 16th International Conference on Distributed Computing in Sensor Systems
(DCOSS), Marina del Rey, CA, USA, 25–27 May 2020; pp. 404–411. [CrossRef]
51. Casola, D.; Cattaneo, G.; Catuogno, L.; Petrillo, U.F.; Galdi, C.; Roscigno, G. TRUST: TRust Unguarded Service Terminals. In
Communications in Computer and Information Science, Proceedings of the Pervasive Systems, Algorithms and Networks—16th International
Symposium, I-SPAN 2019, Naples, Italy, 16–20 September 2019; Esposito, C., Hong, J., Choo, K.R., Eds.; Springer: Berlin/Heidelberg,
Germany, 2019; Volume 1080, pp. 155–169. [CrossRef]
52. Bizanis, N.; Kuipers, F.A. SDN and Virtualization Solutions for the Internet of Things: A Survey. IEEE Access 2016, 4, 5591–5606.
[CrossRef]
53. Gonzalez, C.; Flauzac, O.; Nolot, F.; Jara, A. A Novel Distributed SDN-Secured Architecture for the IoT. In Proceedings of the
International Conference on Distributed Computing in Sensor Systems—DCOSS 2016, Washington, DC, USA, 26–28 May 2016;
pp. 244–249. [CrossRef]
54. Conti, M.; Kaliyar, P.; Lal, C. CENSOR: Cloud-enabled secure IoT architecture over SDN paradigm. Concurr. Comput. Pract. Exp.
2019, 31, e4978. [CrossRef]
55. Ambrosin, M.; Busold, C.; Conti, M.; Sadeghi, A.R.; Schunter, M. Updaticator: Updating Billions of Devices by an Efficient,
Scalable and Secure Software Update Distribution over Untrusted Cache-enabled Networks. In Proceedings of the ESORICS
(2014), Wroclaw, Poland, 7–11 September 2014; pp. 76–93.
56. Catuogno, L.; Galdi, C. A Fine-grained General Purpose Secure Storage Facility for Trusted Execution Environment. In
Proceedings of the 5th International Conference on Information Systems Security and Privacy—ICISSP 2019, Prague, Czech
Republic, 23–25 February 2019; pp. 588–595. [CrossRef]
57. Catuogno, L.; Galdi, C.; Riccio, D. Off-line enterprise rights management leveraging biometric key binding and secure hardware.
J. Ambient Intell. Humaniz. Comput. 2019, 10, 2883–2894. [CrossRef]
58. Catuogno, L.; Galdi, C.; Riccio, D. An Enterprise Rights Management System for On-the-Field Maintenance Facilities. IEEE
Access 2020, 8, 95987–95996. [CrossRef]
59. Catuogno, L.; Galdi, C.; Persiano, G. Secure Dependency Enforcement in Package Management Systems. IEEE Trans. Dependable
Secur. Comput. 2020, 17, 377–390. [CrossRef]
60. Seitz, L.; Tiloca, M.; Gunnarsson, M.; Höglund, R. Secure Software Updates for IoT Based on Industry Requirements. In
Proceedings of the 9th International Conference on Information Systems Security and Privacy (ICISSP 2023), Lisbon, Portugal,
22–24 February 2023; pp. 698–705.
61. Dumitras, T.; Narasimhan, P. Why Do Upgrades Fail and What Can We Do about It? In Lecture Notes in Computer Science,
Proceedings of the Middleware 2009, ACM/IFIP/USENIX, 10th International Middleware Conference, Urbana, IL, USA, 30 November–4
December 2009; Bacon, J., Cooper, B.F., Eds.; Springer: Berlin/Heidelberg, Germany, 2009; Volume 5896, pp. 349–372. [CrossRef]
62. Catuogno, L.; Galdi, C.; Persiano, G. Guaranteeing Dependency Enforcement in Software Updates. In Lecture Notes in Computer
Science, Proceedings of the Secure IT Systems, 20th Nordic Conference, NordSec 2015, Stockholm, Sweden, 19–21 October 2015; Buchegger,
S., Dam, M., Eds.; Springer: Berlin/Heidelberg, Germany, 2015; Volume 9417, pp. 205–212. [CrossRef]
63. Jararweh, Y.; Al-Ayyoub, M.; Darabseh, A.; Benkhelifa, E.; Vouk, M.A.; Rindos, A.J. SDIoT: A software defined based internet of
things framework. J. Ambient Intell. Humaniz. Comput. 2015, 6, 453–461. [CrossRef]
Cryptography 2023, 7, 30 17 of 17
64. Qin, Z.; Denker, G.; Giannelli, C.; Bellavista, P.; Venkatasubramanian, N. A Software Defined Networking architecture for the
Internet-of-Things. In Proceedings of the 2014 IEEE Network Operations and Management Symposium, NOMS 2014, Krakow,
Poland, 5–9 May 2014; pp. 1–9. [CrossRef]
65. Catuogno, L.; Galdi, C. Improving Interoperability in Multi-domain Enterprise Right Management Applications. In Communica-
tions in Computer and Information Science, Proceedings of the Information Systems Security and Privacy—5th International Conference,
ICISSP 2019, Prague, Czech Republic, 23–25 February 2019; Mori, P., Furnell, S., Camp, O., Eds.; Springer: Berlin/Heidelberg,
Germany, 2019; Volume 1221, pp. 382–402. [CrossRef]
66. Kim, T.; Ochoa, J.; Faika, T.; Mantooth, H.A.; Di, J.; Li, Q.; Lee, Y. An Overview of Cyber-Physical Security of Battery Management
Systems and Adoption of Blockchain Technology. IEEE J. Emerg. Sel. Top. Power Electron. 2022, 10, 1270–1281. [CrossRef]
67. Catuogno, L.; Galdi, C.; Pasquino, N. An Effective Methodology for Measuring Software Resource Usage. IEEE Trans. Instrum.
Meas. 2018, 67, 2487–2494. [CrossRef]
68. Catuogno, L.; Galdi, C.; Pasquino, N. Measuring the effectiveness of containerization to prevent power draining attacks. In
Proceedings of the IEEE International Workshop on Measurement and Networking, M&N 2017, Naples, Italy, 27–29 September
2017; pp. 1–6. [CrossRef]
69. Yohan, A.; Lo, N.W. An Over-the-Blockchain Firmware Update Framework for IoT Devices. In Proceedings of the 2018 IEEE
Conference on Dependable and Secure Computing (DSC), Kaohsiung, Taiwan, 10–13 December 2018; pp. 1–8. [CrossRef]
70. Catuogno, L.; Galdi, C. On the Security of a Two-Factor Authentication Scheme. In Lecture Notes in Computer Science, Proceedings
of the Information Security Theory and Practices. Security and Privacy of Pervasive Systems and Smart Devices, 4th IFIP WG 11.2
International Workshop, WISTP 2010, Passau, Germany, 12–14 April 2010; Samarati, P., Tunstall, M., Posegga, J., Markantonakis, K.,
Sauveron, D., Eds.; Springer: Berlin/Heidelberg, Germany, 2010; Volume 6033, pp. 245–252. [CrossRef]
71. Catuogno, L.; Galdi, C. A Graphical PIN Authentication Mechanism with Applications to Smart Cards and Low-Cost Devices.
In Lecture Notes in Computer Science, Proceedings of the Information Security Theory and Practices. Smart Devices, Convergence and
Next Generation Networks, Second IFIP WG 11.2 International Workshop, WISTP 2008, Seville, Spain, 13–16 May 2008; Onieva, J.A.,
Sauveron, D., Chaumette, S., Gollmann, D., Markantonakis, C., Eds.; Springer: Berlin/Heidelberg, Germany, 2008; Volume 5019,
pp. 16–35. [CrossRef]
72. Karthik, T.; Brown, A.; Awwad, S.; McCoy, D.; Bielawski, R.; Mott, C.; Lauzon, S.; Weimerskirch, A.; Cappos, J. Uptane: Securing
software updates for automobiles. In Proceedings of the International Conference on Embedded Security in Car, Munich,
Germany, 16–17 November 2016 ; pp. 1–11.
73. Algorand Inc. Algorand Blockchain. 2019. Available online: https://algorand.com (accessed on 21 April 2023).
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual
author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to
people or property resulting from any ideas, methods, instructions or products referred to in the content.