# Leveraging Electromagnetic Side-Channel Analysis for the Investigation of IoT Devices

## Full Text

This Markdown is an automated text extraction for search and reading tools. The [hosted PDF](LeveragingEMIoT.pdf) is the authoritative publication source.

Source PDF: [LeveragingEMIoT.pdf](LeveragingEMIoT.pdf)
Source SHA-256: `afe50086631012989620d98f1b3315f491d91d9db2a7009f50e49767b5ebb885`
Generated with `pdftotext -nopgbrk`; formatting and reading order may differ from the PDF.

---

Digital Investigation 29 (2019) S94eS103

Contents lists available at ScienceDirect

Digital Investigation
journal homepage: www.elsevier.com/locate/diin

DFRWS 2019 USA d Proceedings of the Nineteenth Annual DFRWS USA

Leveraging Electromagnetic Side-Channel Analysis for the
Investigation of IoT Devices
Asanka Sayakkara, Nhien-An Le-Khac, Mark Scanlon*
Forensics and Security Research Group, University College Dublin, Ireland

a r t i c l e i n f o

a b s t r a c t

Article history:

Internet of Things (IoT) devices have expanded the horizon of digital forensic investigations by providing
a rich set of new evidence sources. IoT devices includes health implants, sports wearables, smart burglary
alarms, smart thermostats, smart electrical appliances, and many more. Digital evidence from these IoT
devices is often extracted from third party sources, e.g., paired smartphone applications or the devices'
back-end cloud services. However vital digital evidence can still reside solely on the IoT device itself. The
specifics of the IoT device's hardware is a black-box in many cases due to the lack of proven, established
techniques to inspect IoT devices. This paper presents a novel methodology to inspect the internal
software activities of IoT devices through their electromagnetic radiation emissions during live device
investigation. When a running IoT device is identified at a crime scene, forensically important software
activities can be revealed through an electromagnetic side-channel analysis (EM-SCA) attack. By using
two representative IoT hardware platforms, this work demonstrates that cryptographic algorithms
running on high-end IoT devices can be detected with over 82% accuracy, while minor software code
differences in low-end IoT devices could be detected over 90% accuracy using a neural network-based
classifier. Furthermore, it was experimentally demonstrated that malicious modification of the stock
firmware of an IoT device can be detected through machine learning-assisted EM-SCA techniques. These
techniques provide a new investigative vector for digital forensic investigators to inspect IoT devices.
© 2019 The Author(s). Published by Elsevier Ltd on behalf of DFRWS. This is an open access article under
the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/).

Keywords:
Electromagnetic side-channel attacks
Software defined radio
Digital forensics
Internet of Things

1. Introduction
The Internet of Things (IoT) has revolutionized the landscape of
digital forensic investigations like never before. With the increasing
prevalence of IoT devices in everyday life, these devices are capable
of storing vital information that can prove useful in a digital
investigation. A medical implant, such as a pacemaker, can provide
hints in an investigation about a person of interest's physical
exertion or stress introduced elevation of heart rate. A sports
wearable, such as Fitbit, can provide vital information about the
presence and movements of a person in a crime scene. A smart
smart voice assistant device, such as Amazon Alexa, can provide a
vital information about the time its owner came home. This kind of
digital evidence is not available in traditional digital forensics,
where the only resort was non-volatile storage of personal computers and removable media (Chernyshev et al., 2018; Quick and
Choo, 2018; Yaqoob et al., 2019).
* Corresponding author.
E-mail addresses: asanka.sayakkara@ucdconnect.ie (A. Sayakkara), an.lekhac@
ucd.ie (N.-A. Le-Khac), mark.scanlon@ucd.ie (M. Scanlon).

IoT devices are usually connected to the outside world in two
main ways. Most IoT devices are connected to a cloud-based service
through the Internet. This connection can either go directly to the
cloud servers or in some cases delivered to a smartphone based app
(Lomotey et al., 2018). When an IoT device is subject to a digital
forensic investigation, the digital evidence is often acquired from
the associated smartphone app and/or the cloud servers as opposed
to directly from the IoT device itself. Most IoT devices do not store a
sufficient amount of data due to the limitation of local storage.
Therefore, it is fair to look for IoT data in the user's smartphone or
cloud storage. However, the reliability of digital evidence acquired
from other places completely depends on the reliability of the IoT
device itself. There is no guarantee that an IoT device is running
the manufacturer's default firmware. If the device's firmware has
been tampered with, all the digital evidence acquired from the
associated smartphone app or the cloud servers may become
unreliable.
Forensic inspection of IoT devices is a challenging task for digital
forensic investigators. These devices lack common interfaces that
can be used to acquire data using traditional forensic evidence

https://doi.org/10.1016/j.diin.2019.04.012
1742-2876/© 2019 The Author(s). Published by Elsevier Ltd on behalf of DFRWS. This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/
licenses/by-nc-nd/4.0/).

A. Sayakkara et al. / Digital Investigation 29 (2019) S94eS103

gathering techniques (Lillis et al., 2016). Most IoT devices follow
proprietary hardware architectures and use low power consumption processors. Due to this reason, collecting forensically useful
information directly from an IoT device often requires invasive
techniques, such as tapping into the internal circuitry of the device
or using chemicals to expose the silicon wafer of the flash data
storage chips in order to extract data by physical means. For
example, scanning electron microscopy (SEM) has been demonstrated to be useful in extracting data stored on EEPROM chips
(Torrance and James, 2009; Courbon et al., 2016). Such invasive
approaches come with the risk of destroying or tampering the data
stored on the target device. In order to perform forensic evidence
gathering from IoT devices in a reliable manner, it is highly
necessary to find non-invasive methods.
This work shows that unintentional electromagnetic (EM) radiation from IoT devices can be a potential non-invasive window to
gather forensically useful information. The EM radiation patterns
from the CPU of IoT devices sufficiently correlate to the software
activities. Using a pair of Raspberry Pi and Arduino Leonardo devices
as the general purpose IoT target device, this work shows that
multiple forensically useful software behavior related information
can be detected. Cryptographic algorithms running on a IoT device
can be detected with 82% accuracy while variations of the software
code behaviour can be detected with 90% accuracy through a
combination of EM-SCA techniques and machine learning in a realworld setting.
1.1. Contribution of this work
 As a solution to the challenge of extracting digital evidence from
IoT devices using traditional approaches, this work introduces
the potential of EM-SCA as a vector for gathering forensically
useful insights from IoT devices.
 Experimentation and empirical evidence shows that the software behaviour of IoT devices can be reliably detected using
machine learning techniques with over 80% accuracy through
EM emissions in practical scenarios. This includes cryptographic
algorithms that are employed to protect data stored on these
devices.
 In order to integrate the EM-SCA techniques to gather forensically useful insights from IoT devices in practical digital forensic
work flow, this work proposes a methodology for applying the
techniques with minimum overhead and changes to existing
digital forensic practices.
2. Related work
As derived from Maxwell's equations, EM waves can be generated by electrical currents varying over time. Characteristics of the
EM waves being generated, such as frequency, amplitude, and
phase, depends on the nature of the time varying electric current
(Maxwell, 1865). Based on this principle, modern communication
systems generate oscillating currents on antennas that generate EM
waves that propagate over free space to be captured by another
antenna with appropriate properties. The fact that modern digital
computer systems have a large number of components that depend
on electric pulses or alternating currents for their operations leaves
the opportunity open for EM waves to be generated at unexpected
frequencies without the intention of the system manufacturer
(Sayakkara et al., 2019).
In any computer, there are multiple components that operate in
a coordinated, sequential fashion according to clock signals,
including CPU (Gandolfi et al., 2001), RAM (Gandolfi et al., 2001),
computer monitors (Sayakkara et al., 2018a), etc. Among them, the
CPU and RAM are most interest for the purpose of this paper. The

S95

CPU performs a cycle of fetching instructions, decoding them and
executing them, while RAM maintains data and instructions when
the device is powered on. The EM emission signals from these
components contain a significant amount of side-channel information regarding the events related to software execution and data
handling. On most IoT devices, the CPU and RAM are incorporated
in the microcontroller (MCU) chips used on the boards.
Kocher et al. were the first to introduce power consumption
based side-channel attacks; both simple power analysis (SPA) and
differential power analysis (DPA) (Kocher et al., 1999). SPA collects
power consumption variation (in mA) over time with a high sample
rate, such as 5 MHz. The authors showed that the waveform of the
power consumption, when plotted against time, contained patterns
that corresponded to the instructions of the data encryption standard (DES) cryptographic algorithm. If SPA can reveal the sequence
of operations, it follows that this sequence depends on the data
being handled by the algorithm (due to conditional branching).
Designing code to minimize data dependent branching, which does
not show characteristic power consumption patterns for specific
operations, can prevent attackers from recognizing what is
executing on the device (Zankl et al., 2018). DPA is a technique that
can be custom tailored for specific encryption algorithms. Kocher
et al. used the DPA technique against DES (Kocher et al., 1999). The
technique was able to guess the encryption key accurately, given
sufficient cipher texts and the power traces for those encryption
operations. The authors state that they have used DPA to reverse
engineer various unknown algorithms and protocols on devices.
The authors indicate that it may be possible to automate this
reverse engineering process. Kocher et al. hints that these techniques (i.e., SPA, DPA) might be also achievable useable with EM
emissions.
Callan et al. introduced a metric called SAVAT (Signal AVailability for an ATtacker) that measures the EM signal power emitted
when a CPU is executing a specific pair of instructions (A and B). The
authors show that different selections of A/B instruction pairs emit
different SAVAT values, i.e., signal power (Callan et al., 2014; Zajic
and Prvulovic, 2014). An improvement to the SAVAT technique is
a method called Finding Amplitude-modulated Side-channel Emanations (FASE). The key premise behind the FASE technique relies
on the phenomena that when a program activity is alternating at a
frequency (falt ) that affects any periodic EM signal originating from
any source at a frequency fc, it is possible to observe two side-band
signals at fc  falt and fc þ falt between the fc signal. Further improvements to the SAVAT technique enabled the possibility of
identifying both amplitude and frequency modulated EM emissions
from CPUs (Callan et al., 2015; Prvulovic et al., 2017; Yilmaz et al.,
2018). While it is evident from existing studies that the EM sidechannel leakage is available across various type of CPUs, further
work is necessary to identify the effect of different CPU architectures to the EM emissions.
The simplest form of representing EM side-channel emission
data is the waveform of the signal in the time domain. Stone et al.
built matched-filter classifiers that utilize correlation between
known EM signal waveform vectors with an unknown EM signal
waveform vectors to detect software activities on microcontrollers
used in embedded devices (Stone and Stone, 2015). In this work, the
software activities considered were individual CPU operations such
as mov, add and sub instructions. In order to generate matchedfilter templates, an assembly program that executed a particular
CPU operation continuously was used which triggers a general
purpose input/output (GPIO) pin value. This GPIO trigger was
separately probed in order to identify the boundaries of EM emission signals in order to extract the matched-filter template trace.
Stone et al. continued to demonstrated that instead of using the
time-domain signal as a feature vector, it is more effective to use

S96

A. Sayakkara et al. / Digital Investigation 29 (2019) S94eS103

Hilbert transformation of the EM emission signals (Stone et al.,
2015). The advantage of this approach is that, when calculating
correlation of two signals, Hilbert-transformed vectors perform
better than time-domain vectors for the same signal-to-noise ratio
(SNR) of signals. As in their previous work with time-domain signals, templates were generated for individual instructions running
on a target device and these ware used with a correlation-based
classifier to detect when a device was executing anomalous codes.
In addition to the time-domain signals and Hilbert-transformed
signals, another alternative format of representing EM emission
signals is using a RF-DNA fingerprint. RF-DNA fingerprinting is a
technique to fingerprint the radio signals transmitted by various
devices including WiFi, Bluetooth, Zigbee, GSM devices, RADAR
antennas, etc. This technique has been used to identify rogue devices in a deployment through using their RF signals without
physically inspecting them (Reising, 2012; Dubendorfer, 2013;
Danev et al., 2012; Lukacs et al., 2015). Deppensmith et al. showed
that the RF-DNA technique can be reliably applied to unintentional
EM emission fingerprinting on computing devices (Deppensmith
and Stone, 2014). Lukacs et al. used multiple discriminant analysis
(MDL) in order to reduce the dimensionality of RF-DNA fingerprints
before applying them into a maximum likelihood (ML) classifier to
identify known radio transmitters used in radar systems (Lukacs
et al., 2015). Similarly, Bihl et al. showed that MDL can help in
identifying most important features from RF-DNA fingerprints (Bihl
et al., 2016). However, the evaluations performed by Stone et al. on
microcontroller based IoT devices indicates that further study is
necessary to conclude the most reliable format to represent unintentional EM signals (Stone and Stone, 2016).
Wang et al. evaluated the possibility of using Multi-Layer Perceptron (MLP) and Long Short-Term Memory (LSTM) to detect
software activities and modifications to the software through the
changes in EM emissions (Wang et al., 2018). While they also used
Arduino and Raspberry Pi devices as in this work, their evaluation
was limited to a classification with fewer classes, i.e., 2 classes for
Arduino, 2 classes for Raspberry Pi, and 5 classes for a programmable
logic controller (PLC) device. In contrast, this work shows that it is
possible to detect a wide variation of changes to a target IoT device
by utilizing simpler machine learning models. Furthermore, Wang
et al. depended on an instrumented Arduino device in order to
trigger the sampling device while the technique used as part of this
paper can observe the Arduino device without any instrumentation.
As existing work has shown, software activities running on IoT
devices can be detected through EM-SCA techniques. In order to
use these attacks for digital forensic purposes, these attacks must
work in real-world conditions, such as target devices with zero or
minimal knowledge, and devices placed in noisy environments
(Sayakkara et al., 2019).
3. Electromagnetic analysis on IoT forensics
EM radiation can be generated from various components of an
IoT device including the processor, network controller chips (both
wired and wireless), video displays, sensors, actuators and many
more. Among these EM noise causing components, the processor is
the most significant component from a forensic point of view as it
has been shown that the EM emission patterns of CPU can be
correlated with the device's software activities. While any IoT device can be designed with a unique processor, there is an important
commonality of components. There are only few common architectures used for microcontrollers in most IoT devices, e.g., ARM,
AVR, and MSP430. This means, EM emission patterns identified
from a particular processor chip should be applicable across many
IoT devices that employ them.
Throughout the experimental study of this work, two

representative devices were used; namely a Raspberry Pi 3 B þ and
an Arduino Leonardo. The Raspberry Pi 3 B þ device consists of a ARM
Cortex-A53 quad-core processor running at 1.4 GHz clock speed. It
has a memory capacity of 1 GB. Furthermore, it has WiFi, Bluetooth
4.0, and Ethernet for communication. All of these resources
represent the class of a high-end IoT device that is capable of
running a Linux-based operating system and comparatively heavier
applications. Therefore, this device can be used to easily emulate
various existing IoT devices during experimentation. Meanwhile,
the Arduino Leonardo device consists of an 8 bit micro-controller
with an AVR architecture that runs at 16 MHz clock speed. It has
2.5 KB memory which is barely enough to run simpler programs.
Therefore, it can be considered as a representative of a lower-end
IoT device.
This section demonstrates the use of EM-SCA techniques in order to gather forensically useful insights from these target devices.
First, the minimum required hardware setup to observe EM emissions from the target devices is introduced. Secondly, the details of
multiple experiments is provided in order to identify various
forensically useful insights from the target device, such as cryptographic operations and software behaviour related activities.
Finally, it is demonstrated that software activity detection can be
performed in real-time, making live forensic analysis of IoT devices
through EM-SCA feasible.
The source code and machine learning models used in the experiments of this paper are available at a Github repository1 for
reproduction of the results.
3.1. Observing EM emissions
In order to acquire EM emissions from the target device, a
software defined radio (SDR) device called HackRF was used
(Ossmann, 2016). In contrast to traditional hardware radios, SDR
devices consist of minimal hardware components with most of the
signal processing performed using software. Therefore, SDR devices
are highly flexible and easy to use (Tuttlebee, 2003). The HackRF
device has a maximum sampling rate of 20 MHz, where each
sample has a 8 bit resolution. The device can be tuned to a wide
range of frequencies between 1 MHz and 6 GHz. The device contains built-in receiver amplifiers in order to enhance the captured
EM signals before digitizing them. While various types of antennas
can be connected to this SDR device, small H-loop antennas are the
most appropriate for the purpose of capturing EM radiation coming
from small components of IoT devices, such as processors.
When performing experiments to observe EM emissions from
the Raspberry Pi, it was connected to a host computer through the
Ethernet port and logged into remotely through a secure shell
(SSH). This enables the control of the Raspberry Pi through the host
computer remotely during experimentation. The SDR device is
connected to the same host computer to store the captured EM
data. As shown in Fig. 1, the H-loop antenna of the SDR is placed
right on top of the processor chip of the Raspberry Pi leaving a gap
of approximately 1 cm in order to maximize the reception of EM
emissions. While the experimental setup keeps the signal acquisition antenna closer to the target device, it is possible to use directional antennas and signal amplifiers to observe EM emissions from
IoT devices at large distances up to several meters (Juyal et al.,
2018).
In order to observe EM emissions from a target device's CPU, the
EM emission frequency needs to be determined. The clock frequency of the CPU is the most fundamental frequency for EM radiation. Furthermore, harmonics of this fundamental frequency can

1

https://github.com/asanka-code/dfrws-2019-code.

A. Sayakkara et al. / Digital Investigation 29 (2019) S94eS103

Fig. 1. EM emissions from Raspberry Pi are captured using an H-probe antenna placed
closer to the processor.

also contain the desired information. Therefore, the exact choice of
the frequency depends on what has the highest amplitude with the
least amount of external interference. The processor of the Raspberry Pi emits EM radiation at several different frequencies and
their associated harmonics. The most reliable frequency observed
from the device was the fundamental clock frequency of the processor, which is 1.4 GHz. Fig. 2 illustrates the power spectral density
(PSD) of the EM emissions surrounding this specific clock frequency. A strong peak at 1.4 GHz is evident alongside multiple sidebands.
As previously shown in the literature (Callan et al., 2014; Zajic
and Prvulovic, 2014), EM signals coming from the CPU modulates
the software behaviour on its amplitude. In order to observe such
variations, following experiment was performed. The Raspberry Pi
was programmed to run a shell script that performed AES
encryption operations with a time gap of 1 s. The shell script used
OpenSSL commands to invoke the AES-256-CBC algorithm on a
large file continuously. The AES operations performed periodically
on the Raspberry Pi resulted in observations of amplitude variations in the EM signal, as illustrated in Fig. 3. The blobs that occur
with a 1 s gap in the first sub-figure correspond to the AES
encryption operations, while the much higher peaks that occur at

Fig. 2. Power spectral density (PSD) of the Raspberry Pi device as observed around the
clock frequency. A sampling duration of 0.01 s was used to capture EM signals for this
work.

S97

Fig. 3. Waveform of the AM demodulated signal at the CPU clock frequency of Raspberry Pi. The AM modulated signal represents the AES encryption performed on the
device. Sudden higher peaks are an external interference signal coming from an unknown source.

irregular intervals are external noise. A selected region of the signal
is zoomed-in in the second sub-figure. The third sub-figure illustrates the EM emission pattern of a single AES encryption
operation.
When observing EM emissions from the Arduino Leonardo, the
clock frequency of 16 MHz becomes the first potential target.
However, through several empirical observations, it was identified
that some higher harmonics leak more information than fundamental clock frequency of the device. Among them 288 MHz, which
is the 18th harmonic of the clock frequency. This frequency was
selected to be the information leaking channel in the experimentation presented as part of this work.

3.2. Discriminating cryptographic activities
Among the software activities of IoT devices that may have a
forensic interest, cryptographic operations are at the forefront.
When storing data on-board or transmitting over the network,
modern high-end IoT devices tend to rely on cryptographic
encryption as a security measure. The following experiment investigates the possibility of using EM emissions of IoT devices in
order to automatically detect when they perform data encryption
operations. Three major cryptographic algorithms, i.e., AES-128,
AES-256, and 3DES are used, as three classes and a mixture of
non-cryptographic operations is used as another class. Fig. 4 illustrates the procedure of acquiring data, preprocessing data, and
finally the classification to classes.
Data Acquisition: The same hardware configuration with a
Raspberry Pi as the target device and a HackRF as the EM signal
capturing device are used in this experiment. In order to train a
classifier to detect cryptographic operations, a labeled EM trace set
is necessary for each classification class. To assist in this task, a UDP
communication channel between the Raspberry Pi and the host
computer was established through the Ethernet cable. To reduce
unnecessary EM noise capture, each time the Raspberry Pi perform
a cryptographic operation, it notified the host computer immediately before and after by sending UDP packets. This allows the host
computer to identify the time period of the EM data stream coming
from the HackRF, that corresponds to the cryptographic operation.
Future work will focus on automatically identifying the necessary
emissions through a sliding window, eliminating this step. Each

S98

A. Sayakkara et al. / Digital Investigation 29 (2019) S94eS103

Fig. 4. The EM trace acquisition and preprocessing stages in order to classify cryptographic activities using a machine learning model.

such identified EM signal segments are saved as an EM trace along
with the label of the cryptographic algorithm. Overall, the EM
traces collected was about 12 GB.
Data Preprocessing: Due to multiple reasons, the acquired EM
can have variable lengths in the time-domain and also may not
properly enclose the cryptographic operation within its boundary.
These reasons include the inherent difference of the time each
cryptographic calculation takes to execute, the delays in UDP
communication between the Raspberry Pi and the host computer,
and the delays in the HackRF data acquisition software to start and
stop the EM sampling. Due to the large length and the variability of
the lengths, these labeled EM trace samples are still unsuitable to
be directly used as training samples for a machine learning-based
classifier. To mitigate these differences in EM traces, each trace is
converted into the frequency-domain by using a Fourier Transformation. This is achieved by taking a segment of 0.1 s from the
beginning of each EM trace and applying Fast Fourier Transform
(FFT) (Smith, 1997).
Since the sampling rate of the HackRF is 20 MHz, the resulting
Fourier Transform contained a vector with 200,000 elements; each
containing the amplitude of a frequency component of the original
EM emission. In this Fourier Transform vector, it was observed that
the variation of peaks from software activity was only distinguishable at the middle portion. Therefore, it was decided to use
only the frequency components from 1=4 to 3=4 of the original

Fourier Transform through discarding the edges. Fig. 5 illustrates
samples of Fourier Transforms from each class, where it is evident
that there are slight variations unique to each activity.
The number of elements in the Fourier Transform was too large
to be directly taken as an input vector for modelling. The dimensions can be reduced by breaking the Fourier Transform vector
into a limited number of buckets. Subsequently, a representative
value can be selected for each bucket by averaging the values or
selecting the maximum valued element in each bucket. In this
particular experiment, 500 buckets were selected where the elements within each bucket were averaged to generate feature vector
of 500 features. The number of buckets and feature vectors was
decided through experimentation and evaluation of the produced
machine learning classification models.
Classification: A neural network was implemented to classify
EM traces into the correct class that had four layers; an input layer,
two hidden layers, and an output layer. The number of hidden
layers and the number of hidden nodes used in each of the hidden
layers were decided empirically by evaluating various settings.
Accordingly, the first hidden layer was assigned 10 hidden nodes,
while the second hidden layer was assigned 5 hidden nodes. The
input layer has 500 input nodes for the feature vector and the
output layer has 4 nodes for the four classes. For each class,
600 samples were taken for the training process totalling
2400 training samples for all four classes. The learning rate of the
neural network was set to 120 , which was decided empirically. The
classifier code was running on a computer with 64 bit Intel Core i-5
quad-core processor and 16 GB memory, running a Linux operating
system. While the EM traces acquisition and preprocessing to
generate training samples took several hours, the training and
testing phases of the neural network took less than a minute to
provide classification results. A 10-fold cross-validation was used to
validate the classification results.
Results: The results of the classification is illustrated in Table 1.
The neural network classifier correctly classified the three cryptographic algorithms and the non-cryptographic scenarios with 80%
accurately. Considering the fact that Raspberry Pi was running a

Table 1
Classification accuracy of cryptographic algorithms.

Fig. 5. Samples Fourier Transform vectors of cryptographic algorithms that run on
Raspberry Pi.

Activity

Precision

Recall

F1-Score

Other
AES-256
AES-128
3DES

0.93
0.78
0.99
0.81

0.85
0.86
0.92
0.85

0.89
0.82
0.95
0.83

A. Sayakkara et al. / Digital Investigation 29 (2019) S94eS103

computationally heavy operating system like Linux, which can
make use of all four cores of the processor for multi-tasking, the
ability to distinguish between these three major encryption algorithm settings hints that it should be possible to detect cryptographic algorithms on much less capable hardware devices.
Existing cryptographic key recovery attacks depend on prior
knowledge of the cryptographic algorithm being employed. The
ability to identify the cryptographic algorithm solely based on EM
observations can increase the likelihood of success for such key
recovery attacks.
3.3. Detection of software behaviour
While heavy cryptographic algorithms are employed on
resource rich IoT devices, simpler devices are unable to use such
computationally heavy algorithms to encrypt data due to the lack of
computational resources. Therefore, they are usually programmed
to perform a repetitive task continuously. Among the various tasks
performed by IoT devices, certain tasks have forensic interest. These
include reading data from a specific on-board sensors, such as a
microphone, writing data to an on-board storage device, such as an
SD card, and executing a command received remotely through the
network. Identifying what operations an IoT device is performing at
the moment when it was seized live could prove important. For
example, if the device is currently wiping the SD card according to a
command received remotely, the investigators need to know it
immediately so that they can turn the device off without waiting for
any further live analysis.
Listing 1: An example Arduino program which performs a time
complexity OðnÞ task repetitively inside an infinite loop which is
used as a classification target.

To explore the possibility of distinguishing different tasks performed by a simple IoT device, the following experiment was carried out. The objective was to train and test a machine learning
model that can classify simple IoT firmware with increasing
complexity. It was decided to use a Arduino device for this experiment as its simpler processor matches the resource profile of a
lower-end IoT device. In order for classification, ten Arduino programs were selected that repeatedly perform a task inside an
infinite loop. Listing 1 illustrates an example Arduino program used
as a classification target. As can be seen, the program consists of an
infinite loop designed to represent a repetitive task of an IoT device
with a time complexity of OðnÞ. Each subtask the device is performing is represented by individual for loops with a finite number
of iterations. It is assumed that a malicious modification to the
device is performed by adding a new subtask to the program or by
removing an existing subtask from the program.
Data Acquisition: In order to collect EM trace samples for each
program, the Arduino was programmed with them separately and
allowed to run with a H-loop antenna placed approximately 1 cm
above the microcontroller of the device. The HackRF was tuned to
the information leaking 288 MHz frequency of the target device
and sampled data at the rate of 20 MHz. Since the target device was
performing a repetitive task, there was no software instrumentation required. Each acquired EM trace was approximately 25 ms

S99

long. Since there were ten programs to detect, 600 EM traces were
acquired per class, which resulted in 177 GB of data for the overall
6000 EM traces. Fig. 6 illustrates the power spectral density (PSD)
of the EM emissions of four such programs subject to the
experiment.
Data Preprocessing: From the extracted EM traces of each
program class, 10 ms long segments were extracted and converted
to the frequency domain using Fast Fourier Transform (FFT). Unlike
the aforementioned scenario of classifying between 4 cryptographic classes, this experiment attempts to classify 10 different
programs. A 500 element feature vector did not seem to be effective
in this case. Therefore, it was empirically decided to create a feature
vector of 1000 features by breaking a Fourier Transform vector into
1000 buckets. Furthermore, it was noticed that averaging values
within a bucket smoothed out the most significant frequency
component under the noise floor. This most significant frequency
ideally would have been selected as the representative element for
the bucket. Therefore, it was decided to select the maximum value
within each bucket instead of averaging in order to build the
feature vector.
Even though the EM trace data were acquired while the target
device was running in a noisy environment, there was no noise
filtering applied to the EM traces before generating the feature
vectors. The choice of the information leaking 18th harmonic of the
Arduino clock frequency was made to ensure no strong external
noise source in that frequency.
Classification: Similar to the previous experiment, a neural
network with two hidden layers was designed, where first hidden
layer contained 10 hidden nodes while the second hidden layer
contained 3 hidden nodes. The input layer contained 1000 features
and the output layer contains 10 output nodes. With 600 training
samples for each class, a total of 6000 training samples were fed to
the neural network to train and test the model to detect ten
Arduino programs running on the target device.
Results: Fig. 7 illustrates the confusion matrix of the classification results. The programs subject to the experiment are labelled
from 0 to 9 in the figure. As can be seen, the majority of the Arduino
programs were detected by the classifier accurately. Under a 10fold cross-validation, the classifier achieved a mean classification
accuracy of 90% for an error margin of 11% within a 95% confidence
interval. Considering the fact that currently it is nearly impossible
to identify the software activities of an IoT device without a significant support from the manufacturer, the achieved accuracy
through EM-SCA can potentially be a significant benefit to an
investigator to gain insight on the device.

Fig. 6. Power spectral density (PSD) of the EM emission from four different Arduino
programs which were used for classification.

S100

A. Sayakkara et al. / Digital Investigation 29 (2019) S94eS103

Fig. 7. Confusion matrix of the neural network classifier to detect ten different Arduino programs which are labelled from 0 to 9.

3.4. Detecting modifications to firmware
A very simple IoT device with a 8-bit processor and few kilobytes
of memory is only capable of running a simple firmware that can
perform a simple and repetitive task. The firmware running on such
IoT devices are easier to be replaced by attackers in order to make
them run malicious code. A device with a modified firmware can
cause malfunctions not intended by the manufacturer. For example,
Mirai is a malware that infected certain types of IoT devices through
exploiting their unchanged factory default passwords (Antonakakis
et al., 2017). It enabled the infected IoT devices to take part in
distributed denial of service (DDoS) attacks without the knowledge
of device owner. Therefore, detecting such modifications to the
stock firmware of an IoT device is highly necessary. When the EM
emission signature of a target device is already known, any change
to the default firmware of the device should cause a detectable
change to the EM emission pattern. Therefore, it is possible to train
a machine learning model to recognize anomalous EM emission
patterns due to firmware changes.
When detecting anomalies using machine learning models,
there are two potential directions; namely outlier detection and
novelty detection. In outlier detection, an unsupervised approach is
taken where both legitimate data and anomalous data are provided
to the machine learning model. The model fits into the legitimate
data with the assumption that this data are densely packed in the
space while anomalies stay comparatively away. In contrast, novelty detection is a semi-supervised approach where only the
legitimate data samples are provided to the model to train.
Whenever new data samples are provided, the model assesses the
likeness of the new data to the data it was trained on in order to
determine whether the new data belongs to the same distribution
or not.
Since there are infinite possibilities for modification to the
default firmware of an IoT device, it is difficult to provide sufficiently representative set of samples of anomalies for a machine
learning model to learn. Therefore, in this case, semi-supervised
novelty detection by training a model with only the legitimate
samples is decided the best technique. In this experiment, a oneclass SVM with a non-linear kernel (RBF) provided by the scikit-

learn library was used for this purpose (Pedregosa et al., 2011).
When training the model, one of the Arduino programs used in the
aforementioned software behaviour detection experiment was
used as the legitimate firmware of the device, while a mixture of
other programs were used as the modified programs. The model
was trained by providing 500 training samples of the legitimate
program produced during the previous experiment. For testing, 100
further samples of the legitimate program was provided where the
testing error rate was 18%. Finally, when 20 different modified
Arduino programs were provided for validation, each of them were
detected by the model recording a 100% accuracy on anomalous
program detection.
3.5. Challenge of evidence data storage
When listening to radio frequency data with a SDR, extremely
large sampling rates are used to increase the amount of information
captured. When this data are saved into files, the EM trace file sizes
are considerably large even for small time windows. For example,
consider a scenario where a HackRF SDR is capturing EM data on
20 MHz sampling rate for a period of 1 min. Each sample generated
by the HackRF device through GNURadio Companion software
consists of two 32 bit float values representing Quadrature and Inphase components of the sample in I-Q interleaved stream format.
This means, each I-Q sample is 8 bytes long. Therefore, the size of
the 1 min signal capture is approximately 9 GB (8 bytes  20 MHz 
60 s z 8.94 GB). In order to apply EM-SCA techniques and machine
learning algorithms, thousands of such EM traces are required making the management of data extremely challenging.
When capturing unintentional EM emissions from target IoT
devices, it is necessary to capture a large enough bandwidth surrounding the target EM frequency. This is due to the fact that
multiple side-band peaks that occur around the center frequency
can contribute to the distinguishing between two different signals
in the frequency domain. However, due to the inherent nature of
software defined radio devices, the bandwidth and the sampling rate
of signal capture are interdependent and it is impossible to reduce
the sampling rate of the device without reducing the bandwidth.
The contradicting requirements of reducing the sampling rate in

A. Sayakkara et al. / Digital Investigation 29 (2019) S94eS103

order to reduce the file sizes and increasing sampling bandwidth in
order to increase the amount of frequency domain information
captured, necessitates the addition of an extra layer of processing of
the captured data before saving. This can be done by collecting data
with the highest bandwidth possible with the SDR device and then
down-sampling the data before saving into EM trace files. However,
the question arises whether such down-sampling affects the signal
classification accuracy when such low sample rate data are used
with machine learning models.
In order to evaluate the correlation between sample rate of the
signal acquisition device and the classification accuracy of machine
learning models, the following experiment was performed. EM
traces were captured for 4 different Arduino programs with a
sampling rate of 20 MHz. Similar to the previous experiments, the
information leaking center frequency of the target device was
selected as 288 MHz. After capturing 600 EM traces per class, each
of the trace files were down-sampled in order to create new sets of
EM trace files that has various sampling rates; namely 16, 12, 8, 4, 3,
2, 1, and 0.5 MHz. Using each data set (representing its unique
sample rate) a Neural Network-based classifier was trained and
tested. After performing a 10-fold cross-validation for each classifier, the average F1-score was taken along with the 95% confidence
interval.
Fig. 8 illustrates the variation of classification accuracy against
the sampling rate where it is evident that the classification accuracy
is not affected by sampling rates as low as 4 MHz. However, when
the sample rate goes below 4 MHz, the classification accuracy
plummets along with a significant increase in the classification
error margin, depicted in red in Fig. 8. This result indicates that it is
possible to keep the bandwidth of the SDR at the maximum
possible value, while down-sampling the data before saving into
EM trace files without negatively affecting the performance of
classification algorithms. Considering the maximum sample rate of
the HackRF, i.e., 20 MHz, and the lowest possible sample rate that
did not adversely affect the classification accuracy in this experiment, i.e., 4 MHz, it is possible to save 80% of the previously
required space to store the EM trace data files. This could be a
significant advantage when capturing EM data in on-site usage
scenarios with portable equipment.

S101

Fig. 9. The variation of EM data processing overhead against sampling rate when used
with 4 class classifier to identify four different Arduino programs.

such machine learning-assisted EM-SCA for the live forensic analysis of IoT devices, real-time analysis is necessary. This is a challenging task since data preprocessing and classification tasks have
to be performed within a tight time window in order to keep up
with the real-time I-Q data stream.
When delivering EM samples in real-time from SDR devices to
multiple software applications Transmission Control Protocol (TCP)
sockets are commonly used. Therefore, in order to maintain a stable
real-time data processing system, the data preprocessing and machine learning stages must perform faster than the TCP retransmission timeout. On a Linux system, this timeout is typically set to
200 ms and incremented at each timeout up to 15 times. Fig. 9 illustrates the variation of the processing delay of captured data
windows against the sampling rate of the SDR device. Even at the
highest sampling rate of the HackRF SDR, i.e., 20 MHz, the processing delay does not exceed 40 ms, which is well below the TCP
retransmission timeout.
4. Incorporation into the digital forensic workflow

3.6. Signal analysis in real-time
Initial experimentation used EM trace data captured and saved
into I-Q interleaved data files, which were later processed and used
to train several machine learning classifiers. However, when using

Fig. 8. The effect of EM trace sample rate to the signal classification accuracy when
used with 4 class classifier to identify four different Arduino programs.

When a computing device is subject to a digital forensic investigation, the major focus is directed towards the non-volatile storage of the device, such as hard disks and removable media.
Furthermore, in some cases, the analysis of the volatile memory of
the device can be necessary as well. For example, if the device is
running at the time it was seized, live data forensics can recover
critical information such as temporary application data and cryptographic keys (Sayakkara et al., 2018b). However, this triage examination of a device is still a highly unreliable task compared to
analyzing disk images (Du et al., 2017).
IoT devices, by definition, are always connected to a network
enabling them to deliver their data to outside servers. Therefore,
most IoT devices store a minimal amount of data on-board. When
an IoT device data is vital to make progress in an investigation, the
data has to be acquired from the cloud back-end where the IoT data
is delivered to. The reliability of this IoT related evidence depends
on the reliability of the IoT device's behaviour which is difficult to
asses. This is where the EM-SCA techniques can help a digital
forensic investigator to quickly assess an IoT device.
Fig. 10 illustrates where the EM-SCA has to fit into the current
digital forensic analysis workflow. As IoT devices are usually
designed to be always on, it is highly possible to have a seized IoT
device still operational. Before attempting to acquire any nonvolatile storage data physically from the device, the device must

S102

A. Sayakkara et al. / Digital Investigation 29 (2019) S94eS103

be switched off in order to prevent any physical damage to the data.
The longer the device is running, the higher the risk of contaminating device data. If the device is connected to the network, it can
potentially receive remote commands to wipe its internal storage.
This situation highlights the necessity of performing EM-SCA
within as short a time window as possible. The shorter the time
window available to observe the EM emissions from a target IoT
device, the smaller the amount of EM traces that can be used in the
analysis algorithms. This poses a significant challenge for EM-SCA
attacks on IoT devices under practical circumstances.
This work demonstrated the possibility of building machine
learning models that are trained to detect a specific software
related activity of a specific target IoT device. Detection of modifications to the stock firmware of a device and determining the
cryptographic and non-cryptographic software activities in realtime can be useful for a forensic investigator to get an insight on
a device. As Arduino and Raspberry Pi are representative of the two
ends of the IoT device ecosystem in terms of computational resources, the results indicates that it should be possible to apply
such machine learning based EM-SCA approaches to any IoT device.
Further research is necessary to explore the methods of building
generalized machine learning models to cover commonly
encountered IoT devices in digital investigations. Similarly, it is
important to perform the evaluations with the stock firmware of
such devices, especially for detecting malicious software modifications. It is necessary to make such machine learning-based EMSCA to generate reliable information with a minimal amount of EM
emission observations.
Legal investigations require a significant amount of reliability
for digital evidence to be admissible in a court of law without
reasonable doubt. The capabilities demonstrated with EM-SCA
combined with the machine learning approach described in this
work need to be time-tested before being used as a reliable evidence source. However, EM-SCA techniques can provide helpful
directions for an investigator in order to uncover admissible evidence. Furthermore, development of side-channel mitigation
techniques is an on-going interest for computer security researchers. Of course, this can pose a threat to digital forensic
investigation with EM-SCA. However, the firmware of many IoT
devices are not updated after they are shipped. Therefore, a known
EM side-channel of an IoT device can remain exploitable for the rest
of its service life (Sayakkara et al., 2019).

5. Conclusion
As modern digital forensic investigations are increasingly
encountering IoT data sources that provide vital information to
solve cases, the need for non-intrusive and reliable ways of
inspecting IoT devices arises strongly. This research work highlighted the potential of EM-SCA techniques combined with machine learning algorithms to tackle this problem. Using two
representative IoT devices, a series of experiments were performed
to demonstrate that the internal activities of IoT devices can be
identified with a significant reliability. An attempt to classify
cryptographic algorithms running on a high-end IoT device indicated that over 82% classification accuracy can be achieved with a
very simple neural network-based classifier in a 4 class classification problem. Similarly, a variety of similar programs, running on a
low-end IoT device were detected over 90% accuracy indicating
that, EM-SCA can be employed to distinguish between different
software activities of IoT devices with a very detailed granularity.
The same approach was demonstrated to be highly successful in a
binary classification problem in order to detect whether the stock
firmware running on a device has been tampered or not with an
impressive accuracy of 100%.
While EM-SCA based software activity detection is useable to
gather forensically useful insights about an IoT device, it is highly
necessary to perform such EM-SCA procedures in real-time at the
point of seizure of an IoT device while the device is still in operation. The experimentation presented as part of this paper
demonstrated that it is possible to reduce the rate of EM signal
samples through down-sampling without any significant effect on
the classification accuracy of the machine learning algorithms.
This enables digital forensic investigators to process EM data on
portable computing devices with less computing resources to get
forensically useful insights on-the-spot without waiting for the
reports of offline forensic analysis. Furthermore, it was shown that
EM data acquisition from a SDR device and real-time processing of
them involving machine learning algorithms can be performed
successfully indicating that practically useable digital forensic
software tools can be implemented on top of such an
infrastructure.

Fig. 10. Integration of EM-SCA techniques into the standard digital evidence acquisition workflow (Adapted from Du et al. (Du et al., 2017)).

A. Sayakkara et al. / Digital Investigation 29 (2019) S94eS103

5.1. Future work
The outcomes of this research lays the foundation for further
exploration on the applicability of EM-SCA on IoT devices for digital
forensic purposes. To the end, the following avenues have been
identified for future work.
 Minimization of the need for bespoke machine learning models
for each individual type of IoT device through the development
of models targeting commonly used processors and components across many devices.
 Precise detection of the time periods that enclose individual
cryptographic operations. This can aid in efficient reduction of
the keyspace of the cryptographic keys used to protect IoT onboard data storage.
 Development of a metadata storage format in order to enable
the management of EM traces acquired under digital forensic
investigation scenarios by augmenting existing standards, such
as HDF5 (Folk et al., 2011), VITA-49 (Cooklev et al., 2012), and
SigMF (Hilburn et al., 2018).
 Implementation of a ready-to-use, extensible EM-SCA analysis
software framework for digital forensic investigators for IoT
device inspection.
References
Antonakakis, M., April, T., Bailey, M., Bernhard, M., Bursztein, E., Cochran, J.,
Durumeric, Z., Halderman, J.A., Invernizzi, L., Kallitsis, M., et al., 2017. Understanding the mirai botnet. In: USENIX Security Symposium, pp. 1092e1110.
Bihl, T.J., Bauer, K.W., Temple, M.A., 2016. Feature selection for RF fingerprinting
with multiple discriminant analysis and using ZigBee device emissions. IEEE
Trans. Inf. Forensics Secur. 11 (8), 1862e1874.
Callan, R., Zajic, A., Prvulovic, M., 2014. A practical methodology for measuring the
side-channel signal available to the attacker for instruction-level events. In:
47th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO). IEEE, pp. 242e254.
Callan, R., Zaji
c, A., Prvulovic, M., 2015. FASE: finding amplitude-modulated sidechannel emanations. In: ACM SIGARCH Computer Architecture News, vol. 43.
ACM, pp. 592e603.
Chernyshev, M., Zeadally, S., Baig, Z., Woodward, A., 2018. Internet of Things forensics: the need, process models, and open issues. IT Professional 20 (3),
40e49.
Cooklev, T., Normoyle, R., Clendenen, D., 2012. The VITA-49 analog RF-digital
interface. IEEE Circuits Syst. Mag. 12 (4), 21e32.
Courbon, F., Skorobogatov, S., Woods, C., 2016. Reverse engineering flash EEPROM
memories using scanning electron microscopy. In: International Conference on
Smart Card Research and Advanced Applications. Springer, pp. 57e72.
Danev, B., Zanetti, D., Capkun, S., 2012. On physical-layer identification of wireless
devices. ACM Comput. Surv. 45 (1), 6.
Deppensmith, R.D., Stone, S.J., 2014. Optimized fingerprint generation using unintentional emission radio-frequency distinct native attributes (RF-DNA). In:
Aerospace and Electronics Conference, NAECON 2014-IEEE National. IEEE,
pp. 327e330.
Du, X., Le-Khac, N.A., Scanlon, M., 2017. Evaluation of digital forensic process models
with respect to digital forensics as a service. In: Proceedings of the 16th European Conference on Cyber Warfare and Security (ECCWS 2017). ACPI, Dublin,
Ireland, pp. 573e581.
Dubendorfer, C.K., 2013. Using RF-DNA Fingerprints to Discriminate ZigBee Devices
in an Operational Environment. Master’s thesis. Air Force Institute of Technology; Wright-Patterson Air Force Base, Ohio.
Folk, M., Heber, G., Koziol, Q., Pourmal, E., Robinson, D., 2011. An overview of the
HDF5 technology suite and its applications. In: Proceedings of the EDBT/ICDT
2011 Workshop on Array Databases. ACM, pp. 36e47.
Gandolfi, K., Mourtel, C., Olivier, F., 2001. Electromagnetic analysis: concrete results.
In: International Workshop on Cryptographic Hardware and Embedded Systems (CHES). Springer, pp. 251e261.
Hilburn, B., West, N., O'Shea, T., Roy, T., 2018. SigMF: the signal metadata format. In:
Proceedings of the GNU Radio Conference, vol. 3.
Juyal, P., Adibelli, S., Sehatbakhsh, N., Zajic, A., 2018. A directive antenna based on

S103

conducting disks for detecting unintentional EM emissions at large distances.
IEEE Trans. Antennas Propag. 66 (12), 6751e6761.
Kocher, P., Jaffe, J., Jun, B., 1999. Differential power analysis. In: Advances in Cryptology (CRYPTO ‘99). Springer, p. 789, 789.
Lillis, D., Becker, B., O'Sullivan, T., Scanlon, M., 2016. Current challenges and future
research areas for digital forensic investigation. In: The 11th ADFSL Conference
on Digital Forensics, Security and Law (CDFSL 2016), vols. 9e20. ADFSL, Daytona
Beach, FL, USA.
Lomotey, R.K., Pry, J.C., Chai, C., 2018. Traceability and visual analytics for the
Internet of Things (IoT) architecture. World Wide Web 21 (1), 7e32.
Lukacs, M.W., Zeqolari, A.J., Collins, P.J., Temple, M.A., 2015. RF-DNA fingerprinting
for antenna classification. IEEE Antennas Wirel. Propag. Lett. 14, 1455e1458.
Maxwell, J.C., 1865. A dynamical theory of the electromagnetic field. Phil. Trans. Roy.
Soc. Lond. 155, 459e512.
Ossmann, M., 2016. Software Defined Radio with HackRF. Great Scott Gadgets.
https://greatscottgadgets.com/sdr.
Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O.,
Blondel, M., Prettenhofer, P., Weiss, R., Dubourg, V., Vanderplas, J., Passos, A.,
Cournapeau, D., Brucher, M., Perrot, M., Duchesnay, E., 2011. Scikit-learn: machine learning in Python. J. Mach. Learn. Res. 12, 2825e2830.
Prvulovic, M., Zaji
c, A., Callan, R.L., Wang, C.J., 2017. A method for finding frequencymodulated and amplitude-modulated electromagnetic emanations in computer
systems. IEEE Trans. Electromagn Compat. 59 (1), 34e42.
Quick, D., Choo, K.K.R., 2018. IoT device forensics and data reduction. IEEE Access 6,
47566e47574.
Reising, D.R., 2012. Exploitation of RF-DNA for Device Classification and Verification
Using GRLVQI Processing. Master’s thesis. Air Force Institute of Technology;
Wright-Patterson Air Force Base, Ohio.
Sayakkara, A., Le-Khac, N.A., Scanlon, M., 2018a. Accuracy enhancement of electromagnetic side-channel attacks on computer monitors. In: Proceedings of the
13th International Conference on Availability, Reliability and Security. ARES
2018. ACM, New York, NY, USA, ISBN 978-1-4503-6448-5. https://doi.org/
10.1145/3230833.3234690, 15:1e15:9. http://doi.acm.org/10.1145/3230833.
3234690.
Sayakkara, A., Le-Khac, N.A., Scanlon, M., 2018b. Electromagnetic side-channel attacks: potential for progressing hindered digital forensic analysis. In: Companion Proceedings for the ISSTA/ECOOP 2018 Workshops. ISSTA ’18. ACM, New
York, NY, USA, ISBN 978-1-4503-5939-9, pp. 138e143. https://doi.org/10.1145/
3236454.3236512. http://doi.acm.org/10.1145/3236454.3236512.
Sayakkara, A., Le-Khac, N.A., Scanlon, M., 2019. A survey of electromagnetic sidechannel attacks and discussion on their case-progressing potential for digital
forensics. Digit. Invest. 29, 43e54.
Smith, S.W., 1997. The Scientist and Engineer's Guide to Digital Signal Processing.
California Technical Publishing chap. 28.
Stone, B.D., Stone, S.J., 2015. Radio frequency based reverse engineering of microcontroller program execution. In: National Aerospace and Electronics Conference (NAECON). IEEE, pp. 159e164, 2015.
Stone, B., Stone, S., 2016. Comparison of radio frequency based techniques for device
discrimination and operation identification. In: 11th International Conference
on Cyber Warfare and Security: ICCWS2016. Academic Conferences and Publishing Limited, p. 475.
Stone, S.J., Temple, M.A., Baldwin, R.O., 2015. Detecting anomalous programmable
logic controller behavior using RF-based hilbert transform features and a
correlation-based verification process. Int. J. Crit. Infrastruct. Protect. 9, 41e51.
Torrance, R., James, D., 2009. The state-of-the-art in IC reverse engineering. In:
Cryptographic Hardware and Embedded Systems-CHES 2009. Springer,
pp. 363e381.
Tuttlebee, W.H., 2003. Software Defined Radio: Enabling Technologies. John Wiley
& Sons.
Wang, X., Zhou, Q., Harer, J., Brown, G., Qiu, S., Dou, Z., Wang, J., Hinton, A.,
Gonzalez, C.A., Chin, P., 2018. Deep learning-based classification and anomaly
detection of side-channel signals. In: Cyber Sensing 2018, vol. 10630. International Society for Optics and Photonics, p. 1063006.
Yaqoob, I., Hashem, I.A.T., Ahmed, A., Kazmi, S.A., Hong, C.S., 2019. Internet of Things
forensics: recent advances, taxonomy, requirements, and open challenges.
Future Gener. Comput. Syst. 92, 265e275.
Yilmaz, B.B., Callan, R.L., Prvulovic, M., Zaji
c, A., 2018. Capacity of the EM covert/
side-channel created by the execution of instructions in a processor. IEEE
Trans. Inf. Forensics Secur. 13 (3), 605e620.
Zajic, A., Prvulovic, M., 2014. Experimental demonstration of electromagnetic information leakage from modern processor-memory systems. IEEE Trans. Electromagn Compat. 56 (4), 885e893.
Zankl, A., Seuschek, H., Irazoqui, G., Gulmezoglu, B., 2018. side-channel attacks in
the Internet of Things: threats and challenges. In: Solutions for Cyber-Physical
Systems Ubiquity. IGI Global, pp. 325e357.
