
devices. Mechanisms requiring none of those fea-
tures, which are, hence, suitable for low-cost IoT de-
vices, are called software-based memory-erasure pro-
tocols. In theory, these protocols have the advantage
of being able to operate on low-cost, even legacy, de-
vices. In practice, they have not been thoroughly eval-
uated for their feasibility on off-the-shelf IoT devices.
Before introducing software-based memory era-
sure, it is important to make a distinction between per-
manent memory erasure (a.k.a. data destruction) and
the type of memory erasure we are referring to. Per-
manent memory erasure requires the erasure process
to be irreversible against advanced forensics tech-
niques (Reardon et al., 2013), including those that
rely on physical access to the device. Irreversibility,
however, is not necessarily required for malware re-
moval, hence the literature on memory erasure (Per-
ito and Tsudik, 2010; Karvelas and Kiayias, 2014;
Karame and Li, 2015) where our work fits in does not
aim at irreversibility.
Software-based memory erasure is a two-party
communication protocol executed between a veri-
fier, acting as a powerful computational device, and
a prover, acting as a devise with limited computa-
tional resources. The role of the verifier is to in-
struct the prover to fill its memory with random
data and verify the erasure proof generated by the
prover. Even though several software-based memory-
erasure protocols have been proposed, they have
never been compared within the same experimental
setting. Moreover, those that have been implemented
and tested on real-world devices (Perito and Tsudik,
2010; Karame and Li, 2015; Ammar et al., 2018),
have not made their source-code publicly available
for further scrutiny and analysis. Hence, it is still an
open question how existing software-based memory-
erasure protocols perform on low-cost IoT devices
and how they compare in terms of computational and
communication complexity, erasure guarantees, and
security. This article provides an answer, which we
argue is a necessary step towards the adoption of
software-based memory-erasure protocols by the IoT
industry.
A brief discussion on related work. The special char-
acteristics of constrained IoT devices have pushed
practitioners to find the most performant and effi-
cient algorithms for each task. Ultimately, testing the
behaviour of an algorithm requires deploying them
on real devices and conducting performance evalu-
ations. This has been done recently for lightweight
hash functions (Rao and Prema, 2019), cryptographic
algorithms (Silva et al., 2024), and data protection
mechanisms (Lachner and Dustdar, 2019). However,
as pointed out by recent surveys on the topic (Banks
et al., 2021; Kuang et al., 2022), such level of scrutiny
has not yet been achieved for memory erasure and
memory attestation. That is not to say that these pro-
tocols have never been compared with each other. For
example, Aman et al. (Aman et al., 2020) compare
their memory-attestation protocol against three alter-
natives from the literature. In the case of memory
erasure, Karame and Li (Karame and Li, 2015) and
Perito and Tsudik (Perito and Tsudik, 2010) evalu-
ate the performance of their protocols on off-the-shelf
IoT devices, but do not directly compare them, nor
implement other proposals. A common issue of these
examples is the lack of available open-source imple-
mentations, making it hard to reproduce their evalu-
ation and to comprehensively compare existing pro-
posals within a common empirical setting.
Contributions. This article provides the first compari-
son and evaluation of software-based memory-erasure
protocols by directly observing and analysing their
performance in a real-world experimental setting. We
claim this to be a necessary step towards their adop-
tion by industry and their deployment in the real-
world. Crucially, we aim at answering the follow-
ing questions about existing software-based memory-
erasure protocols:
1. Can they be implemented in low-cost IoT de-
vices? If so, what is their memory footprint and
execution time?
2. How much is their execution time affected by the
computational power of the device, the size of the
memory to erase, the implementation of the un-
derlying hash function, and the speed of the com-
munication channel?
3. Is there a dominant protocol in terms of perfor-
mance and security, i.e. a protocol that performs
better than the others in all settings? If not, what
are the best trade-offs?
Our experimental setting consists of three off-the-
shelf IoT devices from the microcontroller unit fam-
ily MCU, namely F5529, FR5994 and CC2652. The
first one does not have cryptographic accelerator sup-
port, the second one comes with AES built-in, and
the third one supports AES and SHA256. Aiming at
a more comprehensive evaluation, we provided those
three devices with software-based implementations of
various prominent hash functions.
We implemented seven software-based memory-
erasure protocols and evaluated them in terms of per-
formance, security and erasure guarantees. In par-
ticular, we measured the overall time of the proto-
col execution in relation to the speed of the commu-
nication channel, the device’s computational charac-
teristics and the choice of the hash function imple-
SECRYPT 2025 - 22nd International Conference on Security and Cryptography
210