<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>The Italian Conference on CyberSecurity, April</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Implementing and testing RollJam on Software-Defined Radios</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Dario Stabili</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Filip Valgimigli</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Tobia Bocchi</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Filippo Veronesi</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mirco Marchetti</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Alma Mater Studiorum - University of Bologna, Department of Computer Science and Engineering</institution>
          ,
          <addr-line>40126 Bologna</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Modena and Reggio Emilia, Department of Engineering “Enzo Ferrari”</institution>
          ,
          <addr-line>41125 Modena</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2024</year>
      </pub-date>
      <volume>0</volume>
      <fpage>9</fpage>
      <lpage>11</lpage>
      <abstract>
        <p>In this paper, we present a comprehensive implementation of the RollJam attack using Software-Defined Radios (SDR), ofering a detailed exploration of the practical aspects and implications of this wireless security vulnerability. The RollJam attack, initially introduced by Samy Kamkar in 2015, exploits weaknesses in rolling code-based keyless entry systems, allowing unauthorized access to vehicles and other secure environments. Our research focuses on the development and deployment of a RollJam device leveraging SDR technology, enabling a cost-efective and versatile implementation for security researchers and practitioners. We discuss the intricacies of the attack methodology, including the jamming of radio frequency signals during key fob transmissions, recording and storing valid codes, and executing replay attacks to gain unauthorized access. To provide a realistic evaluation of the RollJam attack's viability, we conduct experiments on a range of devices equipped with rolling code-based systems, and we analyze the efectiveness of the attack on various implementations and variations of keyless entry systems.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        The pervasive adoption of keyless entry systems in modern vehicles and access control
mechanisms has undeniably enhanced user convenience, yet it has also ushered in new challenges
in the realm of security. One of the main weakness of these systems is the susceptibility to
hacking and electronic manipulation. As these systems rely on wireless signals and digital
communication, they become targets for skilled hackers who may exploit weaknesses in encryption
algorithm or intercept and duplicate access credentials. Among the array of vulnerabilities
aflicting these systems, the RollJam attack [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] has emerged as a pivotal threat, leveraging
weaknesses in rolling code technology to compromise the security of key fobs and access control
devices. In particular, the RollJam attack is a wireless hacking technique that targets keyless
entry systems based on rolling code technology. In a RollJam attack, a device intercepts and
blocks the initial signals sent by a user attempting to unlock a car or open a secure entry point.
While the user believes they have successfully accessed the system, the intercepted code is
not transmitted immediately. The attacker can then replay the intercepted code later to gain
unauthorized access, exploiting the time gap between the intercepted and transmitted signals
to compromise the security of the keyless entry system.
      </p>
      <p>In this paper we present a comprehensive exploration of the RollJam attack, its practical
implications, and the vulnerabilities it exploits in rolling code-based keyless entry systems.
RollJam, first unveiled by security researcher Samy Kamkar in 2015, exploits the transmission
and reception processes in these systems, allowing attackers to intercept and later replay valid
codes for unauthorized access.</p>
      <p>
        Our work builds upon the foundations laid by Kamkar’s initial research, seeking to bridge
the gap between theoretical understanding and practical implementation. We investigate
the nuances of deploying RollJam devices, emphasizing the utilization of Software-Defined
Radios (SDR) to execute and analyze the attack in real-world scenarios. Through a series of
experiments and case studies, we evaluate the efectiveness of RollJam across diverse rolling
code implementations over diferent frequencies, shedding light on the varying degrees of
susceptibility exhibited by diferent systems. As an additional contribution, our implementation
of the RollJam attack on SDR is publicly released [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] (upon request), enabling security researchers
to develop novel solutions that can be easily tested against this type of attack.
      </p>
      <p>The remainder of the paper is organized as follows. Section 2 discusses all related works
in the field of Sub-GHz attacks, while Section 3 presents all the basic concepts required for
understanding this work. Section 4 describes the RollJam attack in detail, showcasing its
applicability on our range of test devices. Section 5 discusses our implementation of RollJam
with support to SDRs, while the demonstration of the efectiveness of the attack against diferent
control access systems over diferent radio signals is presented in Section 6. Finally, conclusions
and future development are outlined in Section 7.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Related Work</title>
      <p>
        Although rolling code schemes have been designed to enhance the security of RF-based
communication systems, they have consistently demonstrated vulnerabilities since their first proposal.
For example, Classic KeeLoq technology, predominantly utilized for garage doors, was
compromised through cryptoanalysis [
        <xref ref-type="bibr" rid="ref3 ref4">3, 4</xref>
        ] and side-channel attacks targeting the key derivation
scheme employed by the receiver [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Notably, a significant contribution to this field of study is
presented in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], where researchers identified several vulnerabilities in the keyless entry systems
of most VW Group vehicles manufactured over a period exceeding two decades. Furthermore,
they exposed vulnerabilities in rolling-code schemes diferent from KeeLoq, enabling attackers
to derive session keys used in communication, thereby facilitating unauthorized cloning of key
fobs. Despite enhancements made to the KeeLoq scheme since its first version, including the use
of longer keys and stronger encryption algorithms, all iterations of KeeLoq and other RF-based
secure communication schemes remain susceptible to low-level attacks such as jamming. In
this type of attack, an attacker disrupts communication by transmitting a high-power signal on
the same RF frequency, preventing the vehicle from receiving any legitimate signals.
      </p>
      <p>
        A more sophisticated version of the basic jamming attack is the selective jamming and replay
attack. In this scenario, the attacker not only jams the vehicle receiver antenna but also records
the signal transmitted by the key fob, efectively capturing a legitimate lock/unlock signal for
future replay. An illustration of this attack is provided in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], where the author demonstrates
a brute-force method for compromising fixed-code RF communication and introduces the
RollJam attack, which combines jamming with radio signal recording to disrupt communication
between a car and its associated fob. Initially, the RollJam demonstration included a board
equipped with antennas to support the attack, but currently, devices supporting RollJam are
freely available on the market [7]. However, while RollJam-supporting boards are accessible,
they often come with limited configuration options or require substantial modifications to
replicate the attack entirely. Despite RollJam has been revised by security researchers from its
ifrst demonstration [ 8], existing implementations are often missing some key functionalities
that hinders their application in a real scenario, thus limiting their direct applicability and
requiring a huge efort to make them applicable.
      </p>
      <p>Specifically, the implementation outlined in [ 9] solely comprises the record and replay phases
of the attack, each as distinct projects. Consequently, integrating the jamming phase into the
attack is necessary to align it with a RollJam attack scenario. In contrast, our implementation
encompasses all essential stages for executing a RollJam attack within a unified workflow. This
comprehensive approach enables researchers and security practitioners to directly utilize our
implementation for evaluating a system’s susceptibility to the RollJam attack. Other publicly
accessible repositories primarily focus on discussing the attack intricately [10], demonstrating
implementations tailored for individual boards or RF modules [11, 12], or supporting a fixed
array of antennas [13, 14, 15].</p>
      <p>
        Another detailed and publicly available implementation of the RollJam attack can be found
in [16]. However, we have identified some critical issues that require significant modification
before it can be deployed for testing purposes. One particular issue that we address in our
implementation pertains to the nature of the jamming signal. In [16], the jamming signal is
generated from a fixed sequence of bits ( [
        <xref ref-type="bibr" rid="ref1 ref1">1, 0, 0, 1, 0</xref>
        ]) rather than utilizing a random sequence.
Consequently, the implementation available in [16] can be easily circumvented by applying
simple interference mitigation techniques once the jamming signal is known [17]. Another
critical issue found in [16] is the requirement of manually activating the diferent phases of the
attack, thus limiting the automatic setup of a test environment. In the implementation presented
in this paper, the three phases of the RollJam attack are included in a single workflow, allowing
the attacker to jam the signal and record and replay the rolling codes programmatically. Finally,
in the recording phase of the implementation presented in [16], there is no demodulation of
the signal, resulting in the preservation of both the signal and all background noise. In our
implementation, however, since we include demodulation of the signal during the recording
of the rolling code, we only save the actual data transmitted by the key fob, discarding any
unnecessary background noise. We also note that by saving the demodulated signal and using
modulation in the replay phase, we can send a clearer signal to the immobilizer, thus increasing
the eficiency of the attack itself.
      </p>
      <p>Compared to the current state-of-the-art, the implementation presented in this paper ofers
security researchers and practitioners a straightforward tool for testing any system against the
RollJam attack in an automated fashion. Moreover, developing the RollJam attack to support
multiple SDRs allows researchers to test their system in diferent conditions without requiring
a dedicated hardware platform.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Background Knowledge</title>
      <sec id="sec-3-1">
        <title>3.1. Radio-Frequency signals and modulation</title>
        <p>An radio-frequency (RF) signal is a signal that is coherently generated, radiated by a transmit
antenna, propagated through air or space, collected by a receive antenna, and then amplified and
information extracted [18]. One of the key characteristics distinguishing RF signals from infrared
and visible light is that an RF signal can be generated with coherent phase, and information
can be transmitted in both amplitude and phase variations of the RF signal. Such signals can
be easily generated up to 220 GHz. However, since the hardware necessary to generate higher
frequency radio signals is more expensive than the one required to generate low-frequency radio
signals, it is common to find various communication protocols based on Sub-GHz RF. Radars,
telephony, FM radio, TV broadcast and RFID are some of the most common communication
systems based on Sub-GHz RF. However, to carry information within the RF it is necessary to
modify the carrier sinusoid of the baseband frequency by varying the amplitude, phase, and/or
frequency of the sinusoid. This action is called modulation. Historically, modulations can be
distinguished in two families: analog modulation, where the carrier signal is modified (in either
amplitude, phase, or frequency) to carry the modulating signal; and digital modulation, where
the carrier signal is created considering the data to transfer, resulting in a more sharp diference
between the data and the carrier signal. Creating a digitally-modulated signal is based on both
transmitter and receiver being synchronized in reading the state of the waveform of the signal,
with the time between the two readings defining the bandwidth of the signal. According to the
characteristic of the carrier signal being modulated, we can distinguish between three types of
digital RF signals.</p>
        <sec id="sec-3-1-1">
          <title>3.1.1. Frequency Shift Keying</title>
          <p>Frequency Shift Keying (FSK) is the simplest form of digital modulation, where digital data is
transmitted by varying the frequency of the carrier signal. In FSK, binary data is represented by
two distinct frequencies, typically denoted as the 0 and 1 states. When transmitting a binary 0,
the carrier signal is modulated to one specific frequency, and for a binary 1, it shifts to another
predetermined frequency. The change in frequency corresponds to the diferent states of the
binary data, enabling eficient and reliable transmission.</p>
        </sec>
        <sec id="sec-3-1-2">
          <title>3.1.2. Phase Shift Keying</title>
          <p>Phase Shift Keying (PSK) is a digital modulation scheme that transmit data by varying the
phase of the carrier signal. In PSK, diferent phase states represent distinct symbols or bits of
information. Commonly, Binary Phase Shift Keying (BPSK) uses two phase states, 0 and 180
degrees, corresponding to binary values 0 and 1, respectively. More advanced variants, such as
Quadrature Phase Shift Keying (QPSK) and Quadrature Amplitude Modulation (QAM), employ
multiple phase states to transmit multiple bits per symbol, thereby increasing data transmission
eficiency.</p>
        </sec>
        <sec id="sec-3-1-3">
          <title>3.1.3. Amplitude Shift Keying</title>
          <p>Amplitude Shift Keying (ASK) is is a digital modulation scheme that transmit data by varying the
amplitude of a carrier signal. In ASK, diferent amplitude levels represent distinct binary states.
Typically, two amplitude levels are used, with one level representing binary 0 and another
representing binary 1. The amplitude of the carrier signal is modulated based on the binary
data to be transmitted, resulting in a signal that switches between the predetermined amplitude
levels.</p>
        </sec>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. Keyless Entry Systems Security</title>
        <p>As automotive technology advances, traditional mechanical car keys have evolved into
sophisticated electronic components, known as key fobs. These fobs serve as radio transmitters,
allowing tasks like unlocking doors and starting the engine with a single button press. They
are closely tied to immobilizers, security devices in vehicles that prevent unauthorized access.
Immobilizers often use RFID technology, embedding a transponder within the key fob’s shell.
When the key is near the vehicle or the open button is pressed, a confidential code is transmitted
to the in-vehicle immobilizer, unlocking the doors and starting the engine upon detecting the
keys inside. To maintain code confidentiality, modern systems employ cryptography, often
utilizing challenge-response protocols in systems like Passive Key Entry and Start (PKES). PKES
systems use a bidirectional challenge-response scheme within a small operating range, typically
about one meter. When the key is near the vehicle, it responds to the challenge received by the
vehicle, unlocking it if the response is correct. However, PKES systems, lacking the need for
user interaction like a button press on the key fob, are vulnerable to relay attacks, where signals
are relayed wirelessly, allowing authentication without direct physical interaction between the
vehicle and key.</p>
        <p>An alternative to Keyless Entry systems is Remote Keyless Entry (RKE), which relies on
one-way data transmission from the key fob to the vehicle. Users initiate RF transmission by
pressing a button, sending a code to unlock the vehicle’s doors. This signal operates on widely
available radio frequencies like 433 MHz or 868 MHz in Europe, or 315 MHz in North America,
covering ranges of tens to hundreds of meters. RKE allows users to remotely control locking,
unlocking, and additional features like the anti-theft alarm or trunk opening. Originally using RF
signals with a “fixed code”, modern RKE systems employ “rolling code” strategies for increased
security. These systems incorporate cryptography and a counter value that increments with
each button press. The counter value, along with other parameters, is encoded in a plaintext
message to generate the rolling code signal. Upon receiving this code, the immobilizer compares
the counter value with its internal value. If the counter is correct, the signal is considered fresh
and valid; otherwise, it is rejected. This mechanism efectively prevents replay attacks, as a
valid signal cannot be replayed.</p>
        <p>
          One standard implementation for rolling codes in automotive security is KeeLoq [19], a
proprietary algorithm designed for generating rolling codes on key fobs. Despite KeeLoq being
compromised by cryptoanalysis [
          <xref ref-type="bibr" rid="ref3">3, 20</xref>
          ] and side-channel attacks on the key derivation scheme [
          <xref ref-type="bibr" rid="ref4 ref5">5,
4</xref>
          ], it’s important to note that these attacks require a deep understanding of automotive systems
and make strong assumptions about system availability. Although seemingly unrealistic at the
time, they remain a significant future threat and should be continuously monitored.
        </p>
        <p>However, KeeLoq and other rolling code schemes used in RKEs systems are still vulnerable
to attacks like the RollJam attack, which doesn’t require access to the vehicle’s system and can
be deployed from outside the vehicle to completely disrupt RF communication between the key
fob and the immobilizer.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. The RollJam attack</title>
      <p>
        The RollJam [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] attack is a wireless attack that targets keyless entry systems, specifically
those using rolling code technology. The attack takes advantage of vulnerabilities in the
implementation of rolling code systems, which are commonly used in key fobs for vehicles,
garage door openers, and other wireless access control systems. A basic (yet similar to the
RollJam) attack to RKEs is based on a simple RF jamming between the key fob of the car key
and the immobilizer, preventing any signal from being received. RollJam, on the other hand, is
based on a combined eavesdrop-and-jam approach, where the attacker also monitors the rolling
code signal (carrying either the lock or the unlock action to the immobilizer) on the target RF
while jamming communication. This enables the attacker to store a valid code that can be used
later to either lock the vehicle after a burglary or unlock it. The only limitation of this attack is
that, after the eavesdropped signal is replayed, it is not possible to create other valid messages
without eavesdrop them, thus limiting the time window for the attack. The full RollJam attack
comprises the following phases:
• Jamming phase: The attacker uses a device to jam the radio frequency signal between
the key fob and the target device (e.g., vehicle). When the user presses the button on
the key fob to unlock the car or open a gate, the jamming signal interferes with the
transmission, preventing the target device from receiving the code.
• Record phase: While jamming the signal, the attacker records the transmitted code. The
target device, unaware of the interference, does not receive and process the first code,
thus leaving it in a vulnerable state. The attacker now has a stored valid code that the
target device did not receive due to the jamming.
• Replay phase: At a later time, the attacker can replay the valid code mimicking the
behavior of the legitimate key fob. The target device, still unaware of the interference
during the initial transmission, accepts the replayed code and grants unauthorized access
to the attacker.
      </p>
      <p>The RollJam attack highlights a weakness in some rolling code implementations, where the
target device does not properly handle situations where the transmitted code is jammed. This
vulnerability allows an attacker to replay a previously intercepted code to gain unauthorized
access to the target device.</p>
    </sec>
    <sec id="sec-5">
      <title>5. RollJam Implementation</title>
      <p>In the implementation of the RollJam attack described in this section, we utilized a
Universal Software Radio Peripheral (USRP) 200 model from Ettus Research as our primary SDR
device [21]. The USRP 200 ofers a versatile range of specifications, operating within a
frequency range spanning from 70 MHz to 6 GHz. It supports full-duplex communication, thus
allowing simultaneous transmit and receive operations. However, it’s worth noting that our
implementation also supports SDRs without full-duplex capabilities, providing flexibility for
researchers to utilize alternative SDR devices. We implemented the RollJam attack using the
GNU Radio toolkit [22]. GNU Radio is an open-source software development toolkit that ofers
signal processing blocks for building radio systems. It facilitates the design, simulation, and
deployment of radio communication systems using SDR platforms. GNU Radio provides a
graphical user interface, known as GNU Radio Companion, for designing signal flow graphs.
Users can connect various signal processing blocks to create custom radio systems, performing
functions such as modulation, demodulation, filtering, encoding, decoding, and more. GNU
Radio supports a wide range of SDR devices, making it adaptable to various radio
communication applications. It is extensively used in academic research, hobbyist projects, and industrial
applications for prototyping, testing, and implementing radio communication systems. While
all phases of the RollJam attack are included in the final implementation within the same project,
we will present and discuss each phase of the attack individually.</p>
      <sec id="sec-5-1">
        <title>5.1. Jamming phase</title>
        <p>In the Jamming phase of the RollJam attack we transmit a strong and narrow-band noise signal
to disrupt the normal RF communication between the key fob and the vehicle immobilizer. The
objective of the attack is to hinder the immobilizer on the vehicle from receiving the signal while
enabling the attacker to record it for later use. Hence, it’s crucial to set the center frequency of
the jamming signal close to the operating frequency of the key fob, facilitating the attacker’s
ability to filter out the jamming signal and extract the desired RF signal. In our implementation,
the noise gain is set at approximately 50% of the maximum gain (approximately 40 dB on
the SDR driver) to prevent harmonics, thereby allowing for straightforward signal extraction
through filtering during the recording phase.</p>
      </sec>
      <sec id="sec-5-2">
        <title>5.2. Record phase</title>
        <p>In the Record phase of the RollJam attack, we capture the signal transmitted from the key
fob, which we previously prevented from reaching the immobilizer. This process involves
demodulating the received signal at the precise operating frequency of the key fob to extract
the data containing the user’s command. In our implementation, we also opt to demodulate
the received signal based on the modulation scheme employed by the key fob (ASK or FSK).
This approach allows us to store only the encoded binary data instead of the entire signal.
All operations in the Record phase occur while the jamming signal is still being transmitted,
necessitating the use of either a full-duplex or two half-duplex devices.</p>
      </sec>
      <sec id="sec-5-3">
        <title>5.3. Replay phase</title>
        <p>In the Replay phase of the RollJam attack, we replay the previously recorded signal over the
same frequency to replicate the behavior of the legitimate key fob. Since our implementation
relies on the demodulation of the received signal, in this phase we modulate the bitstream
(using the same modulation) to generate a new signal. All the operations in the Replay phase
are performed without the jamming signal.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>6. RollJam demonstration</title>
      <p>In this section, we will present three diferent types of tests on our implementation of the
RollJam attack. Specifically, we will assess the range and efectiveness of the jamming attack
and analyze the actual memory footprint of saving the demodulated signal compared to saving
the entire signal in both ASK and FSK modulation. It is worth noting that since PSK modulation
is typically used for WLANs, RFID, and Bluetooth communication, testing the RollJam against
this type of modulated signal falls outside the scope of this work.</p>
      <p>All tests are conducted on a laptop equipped with an Intel 7 − 11657 processor, 16 GB
of RAM running Arch Linux and GNU Radio 3.10.9.2. Our SDR setup includes an Ettus USRP
B200 board [21] paired with an Ettus Vert 2450 antenna [23].</p>
      <sec id="sec-6-1">
        <title>6.1. Jamming range</title>
        <p>To assess the efectiveness of the jamming signal designed in our implementation, we tested its
operational range in two diferent scenarios. The first scenario represents an attack where the
jamming signal is placed in close proximity to the target vehicle (e.g., inside a vehicle parked
near the target), while the second scenario represents an attack where the driver is close to the
vehicle while the jamming signal is not fixed in position. In both test scenarios, we deployed a
jamming signal with the same characteristics discussed in Section 5.1.</p>
        <p>The results of these tests highlight that placing the jamming signal 2 meters from the target
vehicle can prevent the vehicle from receiving signals transmitted by the key fob. Conversely, if
the key fob is in close proximity to the vehicle (approximately 1 meter), the jamming signal is
only efective up to 5 meters from the vehicle.</p>
      </sec>
      <sec id="sec-6-2">
        <title>6.2. ASK record and replay</title>
        <p>The results of the test on the record and replay phases of the ASK signal are depicted in Figures
1a and 1b, respectively. Both figures present the same plots to aid in identifying the diferent
steps of the attack and verifying its efectiveness. In the left vertical section of Figures 1a and 1b,
there are three waterfall plots. From top to bottom, the plots labeled RX BB and RX RF showcase
the incoming signal received by the SDR (baseband and radio frequency, respectively), while
the TX RF plot showcases the signal emitted from the SDR. It should be noted that the baseband
representation of the received signal can be extracted from the RF signal by downconverting
the received signal to the baseband and filtering the final output to extract the transmitted data.</p>
        <p>In the other vertical section of both Figures, a series of configuration parameters used in our
implementation and both received and transmitted bit streams are depicted from top to bottom.</p>
        <p>Focusing on the demodulation and record phase of our RollJam implementation (Figure 1a),
it is evident that we can accurately demodulate the incoming signal (RX BB, RX RF, and RX
Bitstream plots) while the jamming signal is actively transmitted by the SDR (TX RF). In the
(a) ASK signal demodulation and record.
(b) ASK signal modulation and replay.
modulation and replay phase, it is clear that the bitstream corresponding to the demodulated
signal is being transmitted from the SDR (TX Bitstream and TX RF plots).</p>
        <p>The overall size of the recorded ASK signal (without demodulation) is 30 MB (3818880
samples at a sampling rate of 1 Mbps), while the saved ASK signal (with modulation) is only
450 kB, which is equal to 1.5% of the recorded signal.</p>
      </sec>
      <sec id="sec-6-3">
        <title>6.3. FSK record and replay</title>
        <p>The results of the test on the record and replay phases of the FSK signal are depicted in Figures
2a and 2b, respectively. Both figures present the same plots as described for the ASK tests.
(a) FSK signal demodulation and record.
(b) FSK signal modulation and replay.</p>
        <p>From the analysis of the demodulation and record phase (Figure 2a), it is apparent that
the signal is transmitted over two channels (as clearly observable from the RX RF window),
although it is possible to demodulate it using only one of the two channels. It should be noted,
however, that this behavior is specific to our test vehicle and, despite not being the classical
implementation of rolling code authentication over FSK, it is now a common practice. Moreover,
it is noticeable that in this scenario, the jamming signal needs to be sent over both channels to
efectively prevent the vehicle from receiving the signal.</p>
        <p>In the modulation and replay phase, however, we can send the signal over one of the two
channels to complete the attack. The overall size of the recorded FSK signal (without
demodulation) is 57.43 MB (7527600 samples at a sampling rate of 1 Mbps), while the saved FSK signal
(with modulation) is only 1.6 MB, which is equal to 2.78% of the recorded signal.</p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>7. Conclusions</title>
      <p>
        In this study, we have described an implementation of the RollJam attack using Software
Defined Radios (SDRs) and investigated the practical implications of security vulnerabilities in
rolling code-based authentication systems. In our experimental evaluation, we demonstrate
the efectiveness and signal demodulation capabilities of our implementation, showcasing
its suitability for a variety of rolling code systems using Amplitude Shift Keying (ASK) and
Frequency Shift Keying (FSK) modulations. Notably, our practical assessment, conducted with
our SDR setup, illustrates the RollJam attack’s efectiveness at distances of up to 5 meters from
the target system, with the key fob in close proximity to the vehicle. Placing the jamming signal
as close as 2 meters prevents any signal from being received. Additionally, we have successfully
optimized signal storage requirements, achieving a reduction of over 98% and 96% compared to
traditional methods, through adept demodulation techniques for both ASK and FSK modulated
signals, respectively. In an efort to promote collaborative progress in security research, we have
made our RollJam attack implementation publicly available to the scientific community upon
request [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. This work aims to empower other researchers in strengthening defenses against
wireless exploits, thus contributing to the continuous improvement of security protocols.
      </p>
    </sec>
    <sec id="sec-8">
      <title>Acknowledgments</title>
      <p>This work was partially supported by projects SERICS (PE00000014) under the MUR National
Recovery and Resilience Plan funded by the European Union - NextGenerationEU and "FuSeCar"
funded by the MUR Progetti di Ricerca di Rilevante Interesse Nazionale (PRIN) Bando 2022
grant 2022W3EPEP
automotive remote keyless entry systems, in: Proceedings of the 25th USENIX Conference
on Security Symposium, SEC’16, USENIX Association, USA, 2016, p. 929–944.
[7] F. Maggi, A. Guglielmini, Rfquack: A universal hardware-software toolkit for wireless
protocol (security) analysis and research, 2021. arXiv:2104.02551.
[8] Z. Depp, H. B. Tulay, E. Koksal, Enhanced Vehicular Roll-Jam Attack using a Known Noise</p>
      <p>Source, in: Symposium on Vehicles Security and Privacy (VehicleSec), 2023, 2023, pp. 1–6.
[9] s23s0n, jam-replay-rf, 2019. URL: https://github.com/s34s0n/jam-replay-rf.
[10] CR11CS, Rolljam-315mhz-433mhz, 2022. URL: https://github.com/CR11CS/</p>
      <p>RollJam-315MHz-433MHz.
[11] mcore1976, cc1101-tool, 2023. URL: https://github.com/mcore1976/cc1101-tool.
[12] eliddell1, Rolljam, 2018. URL: https://github.com/eliddell1/RollJam.
[13] exploitagency, rfcat-rolljam, 2017. URL: https://github.com/exploitagency/rfcat-rolljam.
[14] ghostlulzhacks, rolljam, 2016. URL: https://github.com/ghostlulzhacks/rolljam.
[15] AndrewMohawk, Rfcathelpers, 2015. URL: https://github.com/AndrewMohawk/</p>
      <p>RfCatHelpers.
[16] lucaercoli, rolling-code-grabber, 2020. URL: https://github.com/lucaercoli/
rolling-code-grabber.
[17] H. Al-Tous, I. Barhumi, N. Al-Dhahir, Atomic-norm for joint data recovery and
narrowband interference mitigation in ofdm systems, in: 2016 IEEE 27th Annual International
Symposium on Personal, Indoor, and Mobile Radio Communications (PIMRC), 2016, pp.
1–5. doi:10.1109/PIMRC.2016.7794716.
[18] M. Steer, Microwave and RF Design: Networks ∖, Open textbook library, North Carolina</p>
      <p>State University Libraries, 2019. URL: https://books.google.it/books?id=fnAiyAEACAAJ.
[19] T. Eisenbarth, T. Kasper, C. Paar, S. Indesteege, Keeloq, Springer US, Boston, MA,
2011, pp. 671–673. URL: https://doi.org/10.1007/978-1-4419-5906-5_587. doi:10.1007/
978-1-4419-5906-5_587.
[20] A. Bogdanov, Cryptanalysis of the keeloq block cipher, Cryptology ePrint Archive, Paper
2007/055, 2007. URL: https://eprint.iacr.org/2007/055, https://eprint.iacr.org/2007/055.
[21] Ettus Research, USRP B200, 2024. URL: https://www.ettus.com/all-products/UB200-KIT/.
[22] GNU Radio Project, GNU Radio - The Free and Open Software Radio Ecosystem, 2001.</p>
      <p>URL: https://www.gnuradio.org/.
[23] Ettus Research, Vert 2450 antenna, 2024. URL: https://www.ettus.com/all-products/
vert2450/.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>S.</given-names>
            <surname>Kamkar</surname>
          </string-name>
          , Drive it like you hacked it,
          <year>2015</year>
          . URL: https://samy.pl/defcon2015/.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>ACES</given-names>
            <surname>- Automotive</surname>
          </string-name>
          , Cyber-Physical and Embedded Security Group,
          <source>RollJam implementation</source>
          ,
          <year>2024</year>
          . URL: https://github.com/SECloudUNIMORE/ACES/tree/master/ SDR-RollJam-access.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>S.</given-names>
            <surname>Indesteege</surname>
          </string-name>
          , N. Keller,
          <string-name>
            <given-names>O.</given-names>
            <surname>Dunkelman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Biham</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Preneel</surname>
          </string-name>
          ,
          <article-title>A practical attack on keeloq</article-title>
          , in: N.
          <string-name>
            <surname>Smart</surname>
          </string-name>
          (Ed.),
          <source>Advances in Cryptology - EUROCRYPT 2008</source>
          , Springer Berlin Heidelberg, Berlin, Heidelberg,
          <year>2008</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>18</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>W.</given-names>
            <surname>Aerts</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Biham</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Moitie</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Mulder</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Dunkelman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Indesteege</surname>
          </string-name>
          , N. Keller, B. Preneel,
          <string-name>
            <surname>G.</surname>
          </string-name>
          <article-title>Vandenbosch, I. Verbauwhede, A practical attack on keeloq</article-title>
          ,
          <source>J. Cryptology</source>
          <volume>25</volume>
          (
          <year>2012</year>
          )
          <fpage>136</fpage>
          -
          <lpage>157</lpage>
          . doi:
          <volume>10</volume>
          .1007/s00145-010-9091-9.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>M.</given-names>
            <surname>Kasper</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Kasper</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Moradi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Paar</surname>
          </string-name>
          ,
          <article-title>Breaking keeloq in a flash: On extracting keys at lightning speed</article-title>
          ,
          <source>in: Proceedings of the 2nd International Conference on Cryptology in Africa: Progress in Cryptology, AFRICACRYPT '09</source>
          , Springer-Verlag, Berlin, Heidelberg,
          <year>2009</year>
          , p.
          <fpage>403</fpage>
          -
          <lpage>420</lpage>
          . URL: https://doi.org/10.1007/978-3-
          <fpage>642</fpage>
          -02384-2_
          <fpage>25</fpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>642</fpage>
          -02384-2_
          <fpage>25</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>F. D.</given-names>
            <surname>Garcia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Oswald</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Kasper</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Pavlidès</surname>
          </string-name>
          ,
          <article-title>Lock it and still lose it - on the (in)security of</article-title>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>