EVALUATION OF THE PROPOSED APPROACHES IN THE TEMPEST CONTEXT

La sécurité des informations est une problématique multi-latérale, multi-modale et multicible. Limiter les risques de fuites d'information passe par le suivi de bonnes pratiques comme le chi rement des données (données noires), la véri cation des droits d'accès ou encore la gestion de crises. La majorité des préoccupations en termes de sécurité se concentre sur les risques numériques. Cependant d'autres risques souvent ignorés existent, tels que ceux introduits par les canaux auxiliaires. Un canal auxiliaire consiste en la présence d'une information (que l'on considérera con dentielle et que l'on quali era de rouge) dans un canal de propagation illégitime. Une représentation de ce type de fuite est visible dans la Fig. 0-1 où l'information atteint non seulement son destinataire légitime, mais également un attaquant, sous une forme altérée. Ce dernier doit alors réaliser des traitements spéci ques a n de reconstituer la donnée initiale.

Cette thèse est nancée par le Pôle d'excellence Cyber (PEC) en collaboration avec la DGA. Les recherches qui y sont menées résultent d'un besoin inhérent aux audits de sécurité menés par la DGA. Ces derniers visent à rechercher des fuites dans des systèmes a n d'éliminer les risques de compromission. Si de nombreuses études portent sur la détection de fuites statiques, les fuites dynamiques ou sporadiques, c'est-à-dire celles pouvant changer de fréquence ou disparaître temporairement, sont beaucoup moins traitées. Il est cependant nécessaire d'avoir des méthodes spéci ques permettant d'intercepter ce type de signaux a n de s'assurer qu'aucune compromission n'est présente. Le but de cette thèse et de répondre à ce besoin en réalisant un système d'interception de signaux sporadiques. Après avoir proposé dans la Section 2 une classi cation des canaux auxiliaires, la Section 3 aborde l'état de l'art des détecteurs de signaux pouvant être adaptés au système d'interception. Elle est ensuite dédiée à l'évaluation des performances des détecteurs en considérant leur capacité à détecter un canal et à correctement extraire une donnée rouge suivant plusieurs scénarii. La Section 4 aborde les problématiques matérielles sur l'interception de signaux large bande et proposera une architecture à base de radio logicielle permettant l'interception de signaux en temps réel. En n, la Section 5 aborde l'utilisation du système d'interception sur diverses cibles matérielles a n de tester à la fois ses performances, son adéquation avec les expériences simulées, mais aussi la détection de signaux compromettants placés au sein de dispositifs à saut de fréquence. Pour nir la Section 6 résume les di érents éléments présentés dans ce manuscrit.

L

Les canaux auxiliaires représentent un risque pour la sécurité de l'information et peuvent apparaître sous plusieurs supports : une vibration, de la lumière, le temps entre le début et la n d'une opération, un rayonnement électromagnétique, une consommation de courant . . . Parmi tous les canaux auxiliaires possibles, deux catégories peuvent se dégager vis-à-vis des moyens nécessaires à un attaquant pour les exploiter :

-La catégorie logicielle où ces failles sont caractérisées par leur con nement au sein d'un dispositif et sont initiées et exploitées par le biais d'un programme. Des exemples connus de ce type sont les attaques Spectre [START_REF] Kocher | Spectre Attacks: Exploiting Speculative Execution[END_REF] et Meltdown [START_REF] Lipp | Meltdown: Reading Kernel Memory from User Space[END_REF] qui exploitent une multitude de particularités des architectures des CPU modernes telles que le délai de réponse d'un système ou sur la rémanence des données.

-La catégorie émanation où ces failles sont caractérisées par le fait qu'elles sortent des frontières du dispositif fautif. L'attaquant doit alors disposer de dispositifs d'acquisition spéci que au support du canal auxiliaire.

Les travaux e ectués dans cette thèse s'intéressent aux canaux auxiliaires à émanation. Ces derniers peuvent résulter de plusieurs causes. Elles peuvent être issues du fonctionnement normal d'un système tel un courant passant dans un câble qui va générer un rayonnement électromagnétique. Si ce courant est un ux vidéo passant dans un câble, il est alors possible d'en reconstituer l'image en interceptant le rayonnement [START_REF] Kuhn | Electromagnetic Eavesdropping Risks of Flat-panel Displays[END_REF].

Par dé nition, toutes les données peuvent être considérées comme sensibles ou con dentielles et ne doivent donc pas être récupérées par un adversaire. On peut néanmoins nuancer ce fait et dé nir certaines informations comme étant moins critiques que d'autres. La faible criticité peut être attribuée soit en raison de la nature de l'information, soit parce que l'information est censée être protégée (par exemple, en utilisant le chi rement). C'est le cas des données dites noires à l'opposé des données rouges qui représentent un risque plus élevé si elles sont interceptées par un attaquant.

Les canaux auxiliaires partagent le point commun qu'ils n'ont pas été prévus initialement lors de la conception des systèmes, ce qui implique que les fuites ont des portées relativement faibles. Il y a cependant un type de fuite qui ne possède pas ce défaut : celui a ectant les transmetteurs radio. En e et ces fuites se propagent sur les ondes émises et par conséquent ont une portée importante.

É FH

A n de détecter des canaux auxiliaires qui a ectent des transmetteurs radio, il faut commencer par acquérir le signal radio, puis procéder à une analyse des informations qu'il contient a n de s'assurer que des signaux supplémentaires sont présents. Cette récupération peut se révéler très complexe dans le cadre d'un signal sporadique, c.-à-d. un signal qui change de fréquence porteuse et/ou n'est pas présent continuellement du fait de la large bande de fréquence à observer et de la potentielle disparition du signal. Ces types de signaux sont appelés signaux à saut de fréquence (ou Frequency Hopping FH) : ces signaux sont présents dans un canal (une sous partie de la bande totale d'apparition) et ce canal change (ou disparaît) en suivant une séquence pseudo-aléatoire.

C ?

Il existe plusieurs moyens d'intercepter des signaux FH, notamment les techniques de sondage de spectre (méthodes souvent utilisées dans les radios cognitives [START_REF] Mitola | Cognitive radio. An integrated agent architecture for software de ned radio[END_REF]). Pour ces dernières méthodes, leur adaptation à la détection de canal FH revient à les utiliser de manière duale, au sens où on cherche un canal utilisé, là où le sondage de spectre recherche plutôt les bandes où il y a le moins d'interférences.

A n de détecter un signal FH, il faut subdiviser le spectre radio écouté en sous-bandes et on considère qu'un signal FH peut être émis dans n'importe laquelle de ces sous-bandes. Idéalement, il convient d'aligner ces sous-bandes avec les canaux du système FH. Il existe plusieurs méthodes permettant de détecter la présence d'un signal dans un canal. La méthode la plus simple et rapide est la détection par énergie [START_REF] Urkowitz | Energy detection of unknown deterministic signals[END_REF] où un canal est sélectionné à partir d'un seuil statique ou dynamique. La détection utilisant les propriétés statistiques sur les signaux comme la covariance [START_REF] Berder | Identi cation of frequency hopping communications[END_REF] et la cyclostationarité [START_REF] Gardner | Exploitation of spectral redundancy in cyclostationary signals[END_REF] nécessite de connaître des informations sur le signal FH. S'il y a des parties du signal émis qui sont récurrentes (comme un préambule par exemple), il est alors possible d'utiliser ces récurrences comme une signature a n de les détecter [START_REF] Zhang | Matched lter based spectrum sensing and power level detection for cognitive radio network[END_REF]. Il est également possible d'utiliser la forme d'onde propre à un signal FH a n de le di érencier [START_REF] Tang | Some physical layer issues of wide-band cognitive radio systems[END_REF] Ces méthodes nécessitant des connaissances a priori sur les signaux ne sont pas adaptées à des méthodes à l'aveugle. La méthode par énergie est donc, pour notre cas, la plus pertinente. F 0 2 -Algorithme de détection DFT-BE.

detect & bin extract) est e ectuée en réalisant une transformée de Fourier de même taille que le nombre de canaux possible 𝑁. Dans cette con guration, l'énergie de chaque bin de FFT est alors l'énergie d'un canal et l'argument maximal du spectre correspond alors au canal d'intérêt sélectionné p :

p = arg max 𝑝∈[0;𝑁-1] 𝜆-1 ∑ 𝑙=0 𝑁-1 ∑ 𝑚=0 d [𝑙𝑁 + 𝑚]𝑒 -𝑗2 𝜋𝑚 𝑝 𝑁 2 . ( 0-1)
L'algorithme travaille donc avec des fenêtres successives de 𝑁 échantillons. Si cette acquisition est plus rapide que la vitesse de saut, il est possible d'e ectuer un moyennage de taille 𝜆 permettant d'améliorer les performances à faible rapport signal sur bruit (Signal-to-Noise Ratio (SNR)). Le signal bande de base est obtenu en extrayant la valeur du bin de la DFT où un canal est détecté (d'où le nom de notre algorithme : DFT-BE). Cette méthode permet de réaliser une décimation du signal (de rapport 𝑁). A n d'améliorer les performances de détection, une étape de synchronisation est ajoutée pour aligner la fenêtre de la DFT avec les instants de saut du signal FH.

Une autre version de cet algorithme, le FFT-BE, est optimisée pour la vitesse de traitement a n de pouvoir être utilisée au sein d'un FPGA au débit maximal de la radio. Les mêmes principes de détection sont utilisés, avec une transformée de Fourier rapide (FFT) (la taille de la FFT est une puissance de deux et une architecture à base de Radix 4 est choisie). Le moyennage sur 𝜆 est retiré et avec lui la nécessité de réaliser une synchronisation temporelle. Les performances à bas rapport signal à bruit seront donc impactées, mais on a pu montrer que l'impact sur les performances (dû la désynchronisation entre les sauts et la fenêtre de la FFT) est négligeable dans notre contexte d'utilisation.

P

Une comparaison des performances de la DFT-BE est e ectuée dans le Chapitre 4 avec deux autres algorithmes issus de l'état de l'art. Le premier utilise une strucutre PPN (Polyphase network) [F-B08] pour séparer le spectre en sous-bandes. Le second repose sur la transformée en ondelettes [START_REF] Zhao | Wavelet transform for spectrum sensing in Cognitive Radio networks[END_REF] pour détecter la présence de signaux FH .

Pour estimer ces performances nous dé nissons le taux d'erreur canal (Channel Error Rate (CER) ) : il s'agit pour chacun des échantillons traités de véri er si le canal estimé p est identique au canal e ectif 𝑝. Il s'en déduit alors une probabilité qui doit tendre vers zéro en absence d'erreurs. Les performances sont évaluées par simulation sur une bande de 80 MHz et en fonction de nombreux paramètres comme l'erreur de synchronisation, le type de modulations, et la vitesse de saut. Ces simulations ont permis de montrer que les performances de notre méthode DFT-BE sont légèrement supérieures à celle de l'algorithme du PPN (tout en étant moins complexe) et bien supérieures à celles de l'algorithme de transformée en ondelettes.

P '

L'objectif nal de notre système est la véri cation de la présence de données sensibles au sein d'une transmission en saut de fréquence. Pour cela, nous utilisons comme donnée sensible un signal audio dont les fréquences sont aisément perceptibles et discernables. L'évaluation des performances de la reconstruction du signal rouge est réalisée grâce à l'algorithme SBOS (Selected Bands Opinion Score) qui est une adaptation à notre usage de ViSQOL [START_REF] Chinen | ViSQOL v3: An Open Source Production Ready Objective Speech and Audio Metric[END_REF] (Virtual Speech Quality Objective Listener). Ce dernier réalise une comparaison entre deux signaux audio en compensant les éventuels phénomènes de décalages temporel et fréquentiel. Des simulations ont été e ectuées a n de déterminer les performances des algorithmes sous les mêmes conditions que pour les estimations de CER. Il en est ressorti que la DFT-BE dispose de résultats similaires au PPN alors que l'algorithme FFT-BE est meilleur en haut rapport signal à bruit mais bien inférieur en présence de bruit. Ces résultats sont doublement intéressants, car ils montrent l'intérêt d'une solution de type FFT-BE dans la gamme d'utilisation que l'on va traiter (rapport signal sur bruit important) et des résultats en SBOS qui ne sont pas directement induits (ni directement reliés) à celui du CER. Ainsi, il est complémentaire de caractériser les performances des algorithmes au niveau de la récupération du signal rouge et noir (CER) et au niveau du signal rouge uniquement (pour lequel la métrique choisie doit directement liée au modèle de fuite considéré et à la nature du signal fuité).

L

Le concept de radio logicielle (Software De ned Radio (SDR) ) prend racine dans le domaine militaire a n d'assurer une utilisation sur le long terme des équipements tout en gardant la possibilité d'intégrer de nouvelles formes d'ondes et normes de communication grâce à une 4. La radio logicielle dans le contexte des canaux auxiliaires simple reprogrammation. Les SDR ont été introduites dans les années 90 [START_REF] Mitola | Software radios-survey, critical evaluation and future directions[END_REF] et consistent à déplacer au maximum les parties analogiques dans le domaine numérique a n d'obtenir une plus grande exibilité inhérente aux applications numériques.

R

Une radio logicielle idéale équivaudrait à placer directement des convertisseurs analogiquesnumériques après les antennes et à réaliser tous les traitements au sein d'un processeur. Bien qu'extrêmement exible, cette structure requière une importante fréquence d'échantillonnage des convertisseurs et l'utilisation de processeurs généralistes seuls n'est pas réaliste du fait de limites dans les débits atteignables et d'une très mauvaise e cacité énergétique. C'est pour cette raison que des accélérateurs matériels sont utilisés a n d'alléger la charge des processeurs. Dans cette thèse, une architecture mixte de SDR utilisant un FPGA et un processeur est utilisée a n d'atteindre des débits importants en temps réel. L'utilisation d'une architecture mixte soulève des contraintes de langages de programmation. En e et, de multiples langages sont nécessaires a n de développer, tester, et intégrer les di érentes parties du système d'interception. Une approche utilisant le langage Julia [START_REF] Bezanson | Julia: A fresh approach to numerical computing[END_REF] est proposée a n de permettre de conjuguer une approche de prototypage (syntaxe de hautniveau) et un débit de traitement important. Le projet AbstractSDRs.jl, accessible en opensource est introduit a n de disposer d'une interface de programmation commune à plusieurs architectures de radio logicielle di érentes [Lav21a].

A '

La Fig. 0-3 présente une vue d'ensemble du ot de traitement de l'algorithme FFT-BE. Les parties soumises à débit important (FH detect) sont placées dans le FPGA a n d'obtenir un débit de traitement adéquat. La partie gérant la récupération de données rouge et son analyse est placée dans un processeur généraliste a n de pro ter de sa plus grande exibilité. En plus de l'algorithme FFT-BE décrit précédemment, le design réalisé ajoute un mécanisme permettant d'estimer l'utilisation du spectre écouté par la SDR et un système permettant de corriger des erreurs de mauvaise détection.

V

La dernière étape de ces travaux se déroule en deux temps : il convient dans un premier temps de valider le système de détection, en s'assurant que les canaux d'intérêt sont détectés et extraits en temps-réel sur la bande la plus large possible pour notre radio. Puis, dans un second temps, le système est utilisé a n de véri er la présence de compromission au sein de systèmes sur puce (System on Chip (SoC)) Bluetooth.

V '

Tout d'abord des tests unitaires sont réalisés grâce à du matériel dédié. Une génération d'un signal rampe de fréquence comportant une modulation AM permet de valider qu'il est possible de détecter un signal changeant de fréquence, d'extraire une donnée rouge (la modulation AM), mais également qu'un débit de 200 MHz est tenu par le système en temps réel sans perte d'échantillons. Le test suivant consiste à utiliser le langage Julia et de soumettre le système d'interception aux mêmes échantillons que lors de la phase de simulation a n de valider que les performances sont identiques.

R S C B

Le système d'interception est ensuite utilisé a n de détecter des compromissions dans des systèmes à saut de fréquence du commerce. Pour commencer, des fuites sont forcées au sein de dispositifs Bluetooth grâce à une bobine et un mélangeur analogique, ce qui permet de valider que des canaux auxiliaires peuvent se former au sein de SoC. Cette expérimentation permet également de démontrer que ces canaux auxiliaires peuvent impacter un transmetteur radio au point qu'il est possible de récupérer les données sensibles. Le système a ensuite été utilisé comme il le serait lors d'audits de sécurité sur des dispositifs non-modi és. Nous avons ainsi démontré que certaines activités du SoC, notamment au niveau des interfaces PWM, se retrouvent dans un canal auxiliaire porté par la transmission Bluetooth ! Ces vulnérabilités ont été mises en évidence et exploitées pour plusieurs types de puces Bluetooth du commerce et ce dans le cadre d'un fonctionnement non altéré (Bluetooth non modi é et fonctionnement du système nominal). La Fig. 0-4 montre un exemple de canal auxiliaire récupéré au travers d'une communication Bluetooth. Dans cet exemple, des LED clignotent à 1 kHz et cette fréquence caractéristique (et certaines de ses harmoniques) est visible dans le spectre radio intercepté.

-8,000 -6,000 -4,000 -2,000 0 1,000 3,000 6,000 8,000 -1

C

Nous avons donc abordé dans cette thèse la problématique des fuites d'information par émanation. Une étude des canaux auxiliaires a d'abord été e ectuée a n d'en connaître les caractéristiques principales, et de trouver des points communs ainsi que des liens entre les compromissions de natures di érentes. Il est apparu que les canaux auxiliaires electromagnétiques portés par un signal radio sporadique (signaux à saut de fréquence) présentent un indice de menace important et sont di ciles à détecter. Il s'agit donc de pouvoir intercepter ces signaux et d'extraire des potentielles compromissions. Dans le cadre de ces travaux, un système d'interception de signaux à saut de fréquence, temps réel et large bande a été proposé.

Ce système a d'abord été caractérisé en simulation et comparé à des algorithmes de l'état de l'art. L'intégration du système dans une radio logicielle embarquant un FPGA a nécessité une étude du fonctionnement des SDR et des divers accélérateurs matériels utilisables. Une étude des moyens de programmation a également été réalisée pointant les limites dans le paradigme de programmation des radios logicielles. Un nouvel écosystème logiciel, AbstractSDRs basé sur le langage Julia a été proposé. Il permet d'allier un prototypage rapide et un débit de traitement important. Ainsi, une architecture complète couplant ressources matérielles (FPGA) et logicielles (Julia) a été proposée pour l'interception et l'extraction de canaux cachés portés par des signaux à saut de fréquence. Pour terminer, le bon fonctionnement du système a été validé grâce à du matériel spécialisé. S'en est suivi une phase expérimentale où le système a été utilisé comme il le serait dans des audits de sécurité a n de détecter des canaux auxiliaires : dans un premier temps sur des dispositifs où une fuite a été forcée puis sur des dispositifs fuitant d'eux-mêmes. Ces expérimentations ont prouvé que le système d'interception proposé est capable de les détecter, et également que des fuites peuvent se produire à de multiples endroits dans des SoC Bluetooth du commerce. Nous avons ainsi montré la nécessité de rehausser le niveau de menace induit par les canaux cachés télécoms, c'est-à-dire porté par un signal légitime de transmission.

INTRODUCTION

G I recent decades, organizations, rms, states and administrations have sought to become more e cient and productive by adopting computer technologies, thus engaging in the process of digital transformation. This new era of digital services and globalization has made the movement of goods, services, nance and information easier, and large companies can manage their international operations in a leaner, more e cient way.

Information security is based on three key principles: con dentiality, integrity and availability:

-Con dentiality aims to prevent unauthorized access to sensitive information. It can be achieved through encryption (renders the information unreadable to anyone without the decryption key) and access control (restricting exchanges with authorized entities)

-Integrity protects the information from unauthorized modi cations by an entity and ensures that it remains accurate (nothing has been lost or degraded). This can be achieved through a hash (signature made from the data) or through a reference (mirror of the data considered as unaltered).

-Availability allows authorized users of a system to have fast and uninterrupted access to the information contained in that system. This is achieved through the use of redundant systems (several copies of a system can be substituted), distribution of tasks in multiple entities and the management of degraded modes (the system is able to operate in spite of system failures). The growing use of information technology increases the proportion of sensitive information transiting in digital media, consequently increasing the risk of information leakage. It makes information security a more and more complex discipline that requires increasingly wide-range of skills. One can think that computer skills are su cient to understand and circumvent all possible leaks but it is not enough. There are indeed leaks called side-channels which are based on the e ect of one or more physical phenomena causing information to deviate from its original path.

S

The side-channel requires an understanding of the electro-magnetic, sound, light phenomena and also device hardware architecture. This type of leakage can appear at any place of a system and an example is shown in Fig. 1-1. Sensitive information passes through its legitimate channel to its destination (the computer to the screen in the Fig. 1-1), this channel can be of several kinds, a processing, storage or even transport system. However, a so-called side-channel has been formed and the sensitive information has also taken a new path through it (the video cable generates an Electro-Magnetic (EM) eld as current pass through it and an eavesdropper can reconstruct the image by intercepting the EM signal). A side-channel can be the result of a system design aw, be created by an external phenomenon, be the result of a tampering or a mixture of all three. A side-channel does not usually pose a threat to availability and integrity of information but is a great threat to con dentiality. Indeed, if someone manages to intercept the side-channel, he is able to recover the sensitive information it encloses. The consequence is to bypass some security set up in the legitimate channel. Therefore, it can be easier for an attacker to intercept information contained in a side-channel than in a legitimate channel [START_REF] Guri | Bridgeware[END_REF].

The study of the presence of side-channels in a device is rarely studied except in the military and security elds, which results in numerous devices being vulnerable to side-channel attacks and can therefore have important consequences both at individual, industrial and state levels. A sensitive information can leak on several di erent side-channels, therefore to make a complete study it is necessary to be able to access several propagation methods. For example, a leak in a power supply can be propagated in the electrical network, in the devices that it supplies, but also by electromagnetic waves and sounds due to the vibrations produced in the coils and capacitors.

Among the di erent side-channels, one in particular stands out for being more complex to detect and prevent, it is the electro-magnetic side-channel, which can be generated at any location where there is a current. The study of these side-channels has several names, TEMPEST or in general ElectroMagnetic SECurity (EMSEC) and consists mainly in ensuring that no leakage is escaping from equipment. Since EM can be issued from a large number of components, it results in a large variety of sensitive information which could be leaking via EM [START_REF] Brent | A Survey and Taxonomy Aimed at the Detection and Measurement of Covert Channels[END_REF].

H ?

An EM signal that emits continuously on the same frequency can be detected by scanning the radio spectrum around a targeted device. However, not all emitted signals contain hidden information. Clock signals are usually easy to nd due to their waveform which generates a lot of radiations in the cables but contains little information. On the contrary, there are side-channels that are more di cult to nd, e.g., when they a ect a radio transceiver and especially with frequency hopping mechanism.

Frequency hopping is a technique to limit radio interference and make several signals coexist on the same radio band by emitting at distinct frequencies, di erent at each transmission. A radio band is divided into channels (as shown in Fig. 12), a message is transmitted partly on one channel and then continues to be broadcast on another and switches continuously. The channel switching complicates the message detection because it is necessary to listen to the right part of the spectrum in order to detect it. In addition, the message may not be transmitted continuously, and therefore, in addition to nding the right frequency, it is necessary to nd the right moment. The knowledge of the frequency hopping pattern is an essential element to receive an FH signal and to be able to check the presence of additional data contained in the baseband signal (a sensitive information that propagates on the transceiver through a side-channel in our case). However, this knowledge is not always available when a device is to be checked, especially in the case of secured communication systems (TRANSEC [START_REF] Bejarano | Security in IP satellite networks: COMSEC and TRANSEC integration aspects[END_REF]). Moreover, knowing the hopping sequence only allows one to observe the channels used by the device in its normal operation, signals may be sent on channels outside the normal hopping pattern due to a malfunction or tampering of the device (covered-channel [START_REF] Guri | Bridgeware[END_REF]).

In order to be able to detect these particular cases, it is necessary to dispose of a system that is able to observe a large band of the spectrum at the same time, then to detect if a signal is present in this spectrum and to extract the baseband signal in order to investigate if a sensitive data is hidden in it. All these requirements can be ful lled with the use of a Software De ned Radio (SDR).

H ?

SDR [START_REF] Mitola | Software radios-survey, critical evaluation and future directions[END_REF] depicts a exible Digital Signal Processing architecture with very high reconguration capabilities allowing the same architecture to be used in a multitude of applications. Such an architecture shifts most of the processing to programmable digital components such as microprocessors. An SDR converts a signal as close as possible of the antenna by a Digital to Analog Converter (DAC) and an Analog to Digital Converter (ADC), respectively of transmitting and receiving signals.

First designed to maintain the interoperability of military radio with the addition of new protocols without having to deploy new hardware, the SDR has rapidly taken an important place in the telecommunication eld, allowing to get rid of the long and heavy cost of development of specialized radio.

With the emergence of SDR, cognitive radios [START_REF] Mitola | Cognitive radio. An integrated agent architecture for software de ned radio[END_REF] have become realizable. These radios are able to adapt to their environment. They can change the type of modulation according to the tra c and noise level, avoid interference. . . Among their capabilities are methods for probing the spectrum, which initially are designed to prevent collisions with other radios. However, these methods can be applied to the frequency hopping detection because both seek to determine if a transmission is present in a part of the spectrum.

An important aspect for the interception of an FH signal, in addition to the algorithm and the used hardware is how it is actually realized. An FH signal imposes constraints on the reception architecture:

-Wideband because we cannot know in advance at which frequency the signal will appear, it is necessary to take a band wide enough to be sure to have all signal possible frequencies.

-Time accurate in order to detect fast frequency hopping in the case of secured radio (in order of 𝜇s in our case).

-Real-time because the large bandwidth results in a large data ow that most storage media are unable to sustain, therefore the processing must be done without having to store the raw data.

The interception algorithm, the language used to implement it and the SDR must therefore be in line with these criteria. An additional constraint speci c to our thesis and not due to the FH signal is the mobility of the material. This research is realized in collaboration with the DGA-MI which would use the interception architecture in security audits to validate that a device does not contain sensitive information carried by an FH signal. It is necessary that the system is easily transportable typically in a bag, and does not require internet connection. The use of cloud computing for intensive calculations is not possible and consequently all the processing must be realized locally.

H FH ?

After having successfully intercepted an FH signal, the next step is to analyze the recovered baseband signal to determine whether it has been compromised. This analysis is speci c to the nature of the data being veri ed. In this thesis we will focus on the audio signals. This type of side-channel is a real case and is for example found in airplanes where the limited space on board leads to mix-ups between wires and sensitive audio signal that can appear on the outgoing radio signal.

An audio signal is characterized by a low bandwidth, and as an extensive state of the art on how to evaluate its presence and degradation is available, this makes it an excellent choice for the study of side-channel presence.

As we will see during this thesis, a device alone does not automatically lead to compromise, but in conjunction with another device, a side-channels can occur. Therefore, in addition to analyzing the presence of side-channels in an isolated device, it is necessary to check whether its interaction with a third-party device will not lead to a compromise. A typical case is the use of a loudspeaker in a radio system, where the audio signal will be broadcast on the transmitted signals due to the side-channel.

C C T

This thesis proposes a methodology and tools to address the task of checking the presence of a side-channel in a frequency hopping radio-based device. For this purpose, we rst start by studying the scope of side-channel leaks to explore the many existing side-channels and sort them according to their characteristics, their propagation method, their origin, their range. This study of the state of the art on side-channel emanation allows to better understand the background context and also to link several propagation methods together with the aim of creating a classi cation of these di erent side-channels. Among these, the side-channels propagating within a radio transceiver are rather interesting because their range is much higher than a conventional side-channel. Moreover, their detection is a much more complex task when the signal emitted by the radio is based on a frequency hopping mechanism.

Usable methods to detect an FH signal, their complexity, the data used, and their operation are discussed with the aim of choosing the best candidates. These candidates will then be evaluated by simulation according to several radio signals and errors while considering their capacity to detect e ectively an FH signal and their capacity to extract a red signal issued from a side-channel.

A methodology to take advantage of SDR capabilities and FPGA-based processing acceleration will be given. The goal is to realize a system that intercepts FH signals and retrieves red data in real-time over a wide band (200 MHz).

The interception system will then be used on several hardware targets featuring sidechannels to rst validate its proper functioning in real-time, then to characterize which leaks the system will be able to detect by forcing leaks on devices and evaluate which external interaction could compromise a device. Finally, to conclude a listening of unmodi ed targets featuring side-channels will be performed.

T

Chapter 2 -Side-channels state of the art. The chapter aims to review the wide range of existing emanation side-channels. For each of them, a description of their main characteristics will be given, with particular attention to their dangerousness, their ability to carry sensitive information as well as the methods and equipment used to intercept them. The rst contribution of this thesis is a classi cation of the various side-channels considering their characteristics.

Chapter 3 -Interception methods of frequency hopping signals. The chapter aims to introduce frequency hopping transmission as well as the means to intercept them. A particular attention will be given to the metadata to be provided in advance to the algorithm for its operation, in order to draw up a list of usable methods in accordance with the constraints (in real time and blind).

Chapter 4 -Evaluation of the proposed approaches in the TEMPEST context. The chapter will show the results of simulations on selected interception algorithms, considering both commercial and TRANSEC FH cases. The ability to intercept an FH signal as well as the ability to recover a red signal are discussed through several simulated signals.

Chapter 5 -On the use of software de ned radio for TEMPEST. The chapter highlights the potential of SDR use in TEMPEST scenario. Thanks to their great exibility, rapid programming and available hardware acceleration which will be presented throughout the chapter, a real-time FH signal interception and audio red signal recovery system based on the methods de ned in the previous chapter is given.

Chapter 6 -Toward real eavesdropping. The chapter will present the nal use of the previously designed system, from the veri cation on synthesized signals, through the sidechannel issued by tampered devices, to the real exploit with an untampered device that leaks sensitive data on its radio transceiver. This journal article published in IEEE Embedded Systems Letters deals with the e cient use of SDR and in particular with the Julia programming language, this subject will be detailed in Chapter 5.

L

T

This thesis was founded by pôle d'excellence cyber (PEC) in collaboration with the French ministry of defense (DGA). The large-scale deployment of digital technologies has paved the way to new types of threats. Potentially con dential data may be carried within the same information system as ordinary content, blurring the boundary between the sensitive and non-sensitive area and leading to potentially malicious security breaches. This aw has driven a dramatic increase in high-risk incidents and failures in information security, resulting in signi cant revenue losses, ecological disasters and trust issues. Billions of wireless objects are disseminated to monitor urban and rural areas, as well as animals and human beings. While most of the data produced and transmitted does not contain any sensitive information, the criticality of some applications is beyond doubt. Moreover, the multiplication of devices o ers new transmission channels and by extension more possible paths for sensitive information to reach an attacker, which is particularly the case for leaks resulting from the mixing of several signals (see 2-3.2). The search for the source of a leak is consequently rendered even more complex.

C

SIDE CHANNELS STATE OF THE ART

In the rst section of this chapter, basic notations and classi cation of side-channels are depicted. A brief overview of the side-channel categories is carried out and a focus on emanation side-channels is made. Then, in Section 2-2 we address the non-electromagnetic side-channel by raising the particularities and weaknesses of each of them and addressing a sample of targets where an attack is performed, through a review of various publications of the state of the art. In Section 2-3 we speci cally focus on our main subject of interest which is the electromagnetic side-channel and do an analog work of reviewing state-of-the-art paper.

D

Confronted with such a variety of attacks, companies tend to focus on protecting data based on their con dentiality (limited access to information), integrity (the equipment used is reliable and accurate) and nally availability (information only accessed by authorized people). To that end, several defense mechanisms have been proposed such as: limited use of control access and systems, security watchdogs at every network access point, prevention methods to enhance security and con dentiality through training (awareness campaigns and good practice workshops [START_REF] Sullivan | Survey of Malware Threats and Recommendations to Improve Cybersecurity for Industrial Control Systems[END_REF] [P 08]) and widespread use of cryptography. Although most of these securities relate to software, if the physical layer is not secured, all the upper layers are exposed to major security aws. Side-channel attacks rely on these hardware vulnerabilities to retrieve con dential data.

D

A side-channel denotes the presence of information in an illegitimate channel, whether at hardware or software levels. Illegitimate means that the information should not be in the channel given the normal operation of the involved device. A channel can be of a diverse nature: electromagnetic wave, light are channels that can be easily pictured but they can be more exotic like heating pipes, response times or power consumption.

It should be noted that a side-channel designates the channel itself (i.e., the propagation medium) and that a side-channel attack designates a complex process, involving stages of acquisition, processing, with the aim of intercepting a side-channel and to extract sensitive information.

Side-channel attack seek the deviations in the implementation of a task in a device (how the task is done) rather than the implemented algorithm weaknesses themselves (what the task does). Several types of side-channels exist and they can be classi ed into two main categories depending on the nature of the leakage.

-A software side-channel is contained within a device is based on hardware vulnerabilities (e.g. RowHammer [START_REF] Aichinger | DDR memory errors caused by Row Hammer[END_REF]) or rmware vulnerabilities (e.g. Meltdown [START_REF] Ge | Your Processor Leaks Information -and There's Nothing You Can Do About It[END_REF], Spectre [START_REF] Kocher | Spectre Attacks: Exploiting Speculative Execution[END_REF]) and its operation requires mostly software skills [START_REF] Szefer | Survey of Microarchitectural Side and Covert Channels, Attacks, and Defenses[END_REF].

-On the other hand, as an emanation side-channel crosses the device boundary, its exploitation needs speci c acquisition equipment according to the nature of the side-channel and also requires deep hardware knowledge as well as knowledge about the side-channel nature. It is the result of one or more physical phenomena that deviate information from its proper path to reach an unintended one.

The present chapter focuses on the latter side-channels as with the rest of the manuscript.

T

Essentially, all data may be considered sensitive or con dential and therefore should not be recovered by an opponent. Some information can nevertheless be de ned as less critical than others. Low criticality may be ascribed either due to the nature of the information, or because the information is supposed to be safe (e.g. using encryption). In NACSIM report [START_REF]NACSIM 5000: Tempest Fundamentals[END_REF], the NSA (National Security Agency) provided the rst de nition of TEMPEST (see Section 2-3) and introduced the concept of red and black signals.

A red signal is an unencrypted signal that must be treated as highly sensitive material. In the NSA speci cation, this type of signal must be contained within a speci c perimeter to ensure security. To that end, security measures [NSA] have to be taken into account such as shielding the location or ensuring a minimum physical distance between wires (to avoid coupling).

A black signal is considered to be a safe signal, i.e., it does not directly carry a compromising signal, using encryption or other methods to render interception impossible. Unlike red signals, black signals are not de ned by their secure perimeter.

It should be noted that breaking cryptography does not form part of the work carried out in the present manuscript. Hence cryptography systems will be addressed from a side-channel attack perspective, i.e., recovery of a secret key used during ciphering due to side-channel leakage. Generally speaking, all the compromising signals studied in this thesis will fall into the red family i.e., unencrypted signals. While modern systems heavily rely on encryption to secure their data, it is generally during the encryption/decryption process that attacks are carried out, and so the study of side-channel is still a key element in security nowadays.

C

Side-channel attacks can be classi ed based on the activeness of the attacker (active or passive) and whether the target intentionally or accidentally generates the leak (intentional or non-intentional).

-Active vs. passive: An active attack emits a carrier signal from a common active system towards/within the target in order to either tamper with the device proper functioning (e.g. fault-induction attacks aim to induce errors in computation to exploit unconventional target behavior) or cause the target to leak a signal (e.g. emitting a radio wave passing through a target to modulate a red signal). In contrast, passive eavesdropping is simply used to observe the device behavior without disturbing it.

-Intentional vs. non-intentional: Non-intentional leakages can be naturally present and therefore carry a red signal resulting from normal functioning. However, leakages can be intentionally emitted by a target on a side-channel, which implies that the attacker can access the target to force the leakage.

Examples of attacks can be found in Table 2-1 which provides a classi cation based on the previously mentioned classes.

T

Emanation side-channels include fortuitous emanations caused by the normal functioning of a device as well as the alteration and ampli cation of an internal signal to produce an emanation.

Intentional

Non-intentional

Active

Ultrasound mesh Illumination Mixing Broadcast

Passive Air-gap bridging Video eavesdropping TEMPEST attacks A common feature of these side-channels is their non-intrusive nature, i.e., a direct contact with the target is not needed to get the side-channel, in opposition to software side-channel which requires to be inside the target (mostly in the form of a software program). The typical case of a side-channel attack is shown in Fig. 2-1. In the normal ow, sensitive data is processed and this process leads them to be present in a legitimate channel. However, either the processing system or the legacy channel leaks to another medium i.e., the side-channel. A person gathering this leaked data can recover sensitive information. This person may either be an active attacker if he launches the attack (emits a signal toward the system to generate the side-channel emanation) or an eavesdropper if he only passively intercepts the information.

Since the expected path of the information to the intended receiver has been studied by its designer to be secure, it may be di cult to extract the sensitive information from it, but since the side-channel is not intended, it may be easier for an attacker to extract the information from a side-channel. Despite awareness of the potential risks posed by such emanations since the early days of ElectroMagnetic Compatibility (EMC) in the mid-20 𝑡ℎ century, proof of their actual use has only recently been provided with disclosure of certain tools from the NSA [START_REF]VAGRANT program[END_REF].

The development of new attacks is linked to the development of the targets that occurred in several phases. Analog signals were rstly used to communicate, before the transition to the digital world. This changed the paradigm of the emissions, shifting from low frequency and high amplitude to high frequency and low amplitude (due to the increase in clock frequencies and the overall reduction of operating voltages). Then mobile devices appeared and with them so-called System on Chips (SoC) allowing a size reduction, which obviously brings an additional risk of internal mixing (and thus leaking). Moreover, the worldwide competition led to overall reduction of equipment costs, sacri cing some ltering tasks and shielding that were preventing leaks proliferation. But attacks are also bene ting from the improvement of the hardware devices involved in the interception. These new devices reach higher bandwidths, are more robust against noise and the increased computation capabilities allow e cient but energy demanding techniques such as emerging machine learning. Because many attacks rely on physical or remote access to a vulnerable target, one straightforward way to counterbalance such attacks is to work within isolated systems (also referred to as air-gapped systems). Isolated systems (or networks) do not allow external access and thus maintain the sensitive data in a closed area. As such side-channel attacks have evolved to address these systems by using a leakage as a fully controllable communication medium instead of simply extracts information from it. These attacks are the so-called air-gap bridging [START_REF] Guri | BeatCoin: Leaking Private Keys from Air-Gapped Cryptocurrency Wallets[END_REF]. Fig. 2-2 summarizes the di erent physical propagation side-channels in which a compromising emanation may occur. These side-channels may either be non-electromagnetic or electromagnetic (using radio-frequency waves).

Electromagnetic side-channel is directly derived from an electronic component. This type of side-channel o ers useful propagation characteristics and is currently widely used as a communication medium. Electromagnetic leakages share a common side-channel but are distinguishable by their di erent origins. As shown in Fig. 2-2a, we can classi ed these origins as illumination (I), mixing (M), radiation (R) and coupling (C).

(I) Illumination, the attacker sends a radio beam towards the target. This radio beam enforces a leak of information by acting as the side-channel carrier, therefore the attacker needs to monitor the beam that comes back and contains the information. In the mixing case, the radio beam comes from a legitimate source and not from an attacker.

(R) Radiation, probably the most common case of EM side-channel, is due to the generation of a current-induced electromagnetic eld. This EM eld comes from the di erent electronic (C) Coupling is similar to radiation but propagates in a nearby conductor (metallic housing, power line, water pipe, etc.) and not in the air. Fig. 2-2b highlights three main non-electromagnetic side-channels: power line (P), sound (S) and light (L) (light is not referred to as an electromagnetic side-channel in the literature).

(P) Power line includes electrical consumption of all the parts of a system. In a processor, the instantaneous energy consumption depends on the data being processed and the operation performed. Clearly, an element with high-power consumption will generate a higher trace on the overall consumption. It should be noted that the power line side-channel relates only to electrical consumption and no other leaks such as cross-talk phenomena on power lines (which falls into the electromagnetic class detailed in Section 3).

(S) Information processing devices may also emit other types of emanation such as sound, which may be generated by mechanical components (motors, buttons, etc.) or directly by the electronics (capacitor, coil whine, etc.). In precisely the same way as radiation (R), the generated sounds are strongly correlated with the voltage that generates them and therefore with information.

(L) The nal reviewed leakage uses light as its side-channel. This leakage has a signi cant advantage that is also its major drawback: human eyes are sensitive to some of the light spectrum, which increases the risk of detection. On the other hand, many systems include light sources as an interface (screen, state diode, etc.) that can be maliciously used to extract information. As a side note, we have chosen to consider light as a speci c side-channel and not a speci c case of electromagnetic side-channel as it is customarily done in the literature (see for instance [START_REF] Guri | Bridgeware[END_REF]).

N

An overview of the proposed classi cation and the associated paper is shown in Fig 23. A distinction between the targets of each attack is made in the following section and is also visible in the gure. Each side-channel will be presented in greater detail, considering both what information can be reconstructed for each type of emanation and the resources needed for their application.

P

Du et al. [START_REF] Du | Novel Method to Detect and Recover the Keystrokes of PS/2 Keyboard[END_REF], have demonstrated that it is possible to recover the keyboard data bus by studying its ngerprint on a power line. The measured consumption is a combination of keyboard consumption and consumption of other components. Riccardo et al. [START_REF] Spolaor | No Free Charge Theorem: A Covert Channel via USB Charging Cable on Mobile Devices[END_REF] introduced a way to ex ltrate data via a Universal Serial Bus (USB) cable without the use of the embedded data link. Instead, the power supply provided by the USB cable is used. By creating bursts of current, an On-O Keying (OOK) modulation was achieved, allowing a 2 bit/s link using a smartphone and a tampered phone charger.

Using the same approach, other operations performed on the processor may be retrieved. Hence, retrieving all the instructions would constitute a very powerful attack. However, due to the rate of instruction execution, this type of attack requires immeasurable resources. Some speci c instructions may, however, be targeted such as cryptographic operations [START_REF] Agrawal | The EM Side-Channel(s)[END_REF]. By eavesdropping the power consumption of a cryptographic-device, power traces can be Side-channel emanation Power line (2.1)

Keyboard [Du13] Internal Component [Spo17] [Hay17] Crypto system [Le08] [Man02] [Koc99] [Bri04] [Bih97] Sound (2.2) Speaker [Han13] [Gur18c] [Gur17a] [Gur16c] Internal Component [Tro04] [Gen14] External Components [Bac10] [Aso04] [Gen18] [Com17] [Ana18] Light (2.3) Status LED [Lou02] [Gur17b] [Gur17c] [Sep14] Internal conponent [Bar09] [Sug20] Screen [Kuh02] [Bac08] [Bac09] [Gur16a] [Bal19] [Che18] Electromagnetic (3)
More details in Section 3 analyzed using an algorithm such as Simple Power Analysis (SPA) [START_REF] Mangard | A Simple Power-Analysis (SPA) Attack on Implementations of the AES Key Expansion[END_REF], Di erential Power Analysis (DPA) [START_REF] Kocher | Di erential Power Analysis[END_REF], Correlation Power Analysis (CPA) [START_REF] Brier | Correlation Power Analysis with a Leakage Model[END_REF] or Di erential Fault Analysis (DFA) [START_REF] Biham | Di erential fault analysis of secret key cryptosystems[END_REF] to derive the system secret key. The remainder of the section will focus on the speci cities of these methods.

The total power consumption of a CMOS circuit is composed of two terms: the static power and dynamic power.

-Static power is due to the transistor internal leakage current and is therefore dependent on circuit design.

-Dynamic power is due to transistor activity (i.e., transistor switching) which depends on the actual operation being performed and the data being processed. Since analysis is aimed at determining a link between power consumption and the data being processed, only dynamic power is relevant. Separating the static and dynamic power is not necessary because the static is mostly an o set on the total power consumption of a device, it is straightforward to use total power as a possible side-channel.

SPA is based on the direct interpretation of power consumption measurements. The method used is quite basic, since each processor operation has a di erent trace: for example, multiplication and square operations involve the same processing. The main di erence is the operand loading stage that shall be twice longer for a multiplication (indeed, a multiplication needs two inputs while a square operation only requires one). As a consequence, the multiplication and square patterns, even if they are quite similar, can be distinguished by their width which is larger for the multiplication one. In the case of an unprotected implementation of cryptographic algorithms, the sequence of operation that is performed is linked to the secret key. Therefore, if one is capable of discriminating operations then he can nd out this sequence and nally recovers the secret key [START_REF] Mangard | A Simple Power-Analysis (SPA) Attack on Implementations of the AES Key Expansion[END_REF].

For more powerful attacks, once the observational data have been collected, they must be processed in order to retrieve information. Various methods exist: rstly, DPA combines consumption analysis (SPA) with statistical methods (see Fig. 234). It breaks down the secret key into blocks to compute each block individually to reduce the number of unique combinations of bits. Indeed, an Advanced Encryption Standard (AES-128) standard key has 2 128 combinations. This key is divided into 16 bytes which only contain 2 8 combinations with a total of 16 × 256 or 4,096 secret key combinations. DPA requires the system power trace and its associated text (either input or output text). It works on making hypotheses about internal variable values (each block at a time) and separates them into baskets depending on the speci c bit value of the known text. An average is reached for each basket and if the di erence between these two is greater than the standard deviation of the measured trace noise, the hypothesis is validated and thus the secret key block is estimated. The remaining blocks can be found through an iterative approach using the same method. DPA attacks have error correction properties which can extract keys from measurements that are too noisy for SPA to work [START_REF] Kocher | Di erential Power Analysis[END_REF].

CPA is a statistical algorithm that uses the Pearson correlation coe cient to correlate data. The subkey is estimated by choosing the one with the highest correlation. This entire process is performed with each subkey, enabling the complete secret key to be collected. Compared to DPA, the CPA method requires fewer power traces. However, it requires an accurate power consumption model in accordance with the targeted hardware.

Finally, DFA works by injecting a fault into the ciphering process. DFA requires the output of the ciphering process, and the execution of the same ciphering process on the same input (potentially unknown). Di erent fault injection would lead to di erent propagation error in the ciphering process. For these di erent rounds, statistical assumptions can be made on secret keys. For example, by injecting eight faults in total into speci c rounds of AES execution, the full key can be recovered [START_REF] Biham | Di erential fault analysis of secret key cryptosystems[END_REF]. A more in-depth study on attacks is available in [START_REF] Le | An overview of side channel analysis attacks[END_REF], including an explanation of attacks with device awareness (template attack and stochastic model attack).

S

The main purpose of sound channel attacks is to recover information passed through acoustic waves due to mechanical or sometimes electronic e ects. Di erent papers focus on this approach and all highlight the need to train the system for identi cation. This leads to certain drawbacks such as limited recognition capacity (less than 80% without strong a priori hypothesis).

In 2010, Backes et al. proposed acoustic side-channel attacks on printers [START_REF] Backes | Acoustic Side-Channel Attacks on Printers[END_REF], that were able to recover up to 72% of printed words. By assuming the language context, the attack achieves recognition rates up to 95% of whole texts. Sound acquisition was performed in the [20;48] kHz band and uses the Hidden Markov Model and the Viterbi algorithm which is regularly used in speech recognition, to determine the most likely sequence of printed words.

Asonov et al. proposed a PC keyboard attack [START_REF] Asonov | Keyboard acoustic emanations[END_REF] where they eavesdrop on the sound made by each pressed key. This attack is based on the hypothesis that the sound of clicks di ers slightly from key to key. A neural network was used to classify clicks. The sound was acquired using a standard microphone and recorded with a standard PC sound card. 79% of the keys pressed were correctly guessed on the keyboard where the neural network was trained. It should also be noted that this ratio falls to 28% on an untrained keyboard. Sound can also be acquired from a legitimate microphone, for instance during a voice over IP call (VoIP). If the attacker can attend the call or access the audio content, he could pick up the keyboard sounds and therefore retrieve the typed message [Com17] [Ana18]. With a minimum audio rate of 20 kbit/s, 40% of the characters can be recovered, this number increases to 92% with the use of machine learning techniques trained with the writing habits of the person being listened to.

Sound can also be produced by electronic rather than mechanical origins. On modern computers, these acoustic emanations, typically caused by power regulation circuits, are correlated with CPU activity since the power draw is strongly a ected by the current executed operation. Shamir et al. [START_REF] Tromer | Acoustic cryptanalysis: on nosy people and noisy machines[END_REF] and Genkin et al. [START_REF] Genkin | RSA Key Extraction via Low-Bandwidth Acoustic Cryptanalysis[END_REF] have shown that when ciphering is performed, the di erent RSA keys have distinguishable acoustic ngerprints. The full recovery of the key was successful using a cellular phone placed next to the computer or with a directive microphone from a distance of 10 meters. In [START_REF] Tromer | Acoustic cryptanalysis: on nosy people and noisy machines[END_REF] and [START_REF] Genkin | RSA Key Extraction via Low-Bandwidth Acoustic Cryptanalysis[END_REF], this was achieved by repeating the encryption process over many thousands of iterations, which is di cult to assess in an unsupervised attack. Although these methods are promising, due to the low microphone bandwidth (under 20 kHz using common microphones, and a few hundred kHz using ultrasound microphones [START_REF] Tromer | Acoustic cryptanalysis: on nosy people and noisy machines[END_REF]), it is di cult to distinguish the di erent instructions.

To prevent keyboard sound eavesdropping, an on-screen keyboard can be used where the key selected is chosen by a mouse or a touch screen. However, another side-channel still exists as Genkin et al. [START_REF] Genkin | Synesthesia: Detecting Screen Content via Remote Acoustic Side Channels[END_REF] overcame this countermeasure by listening to the power supply noise of a screen in order to recover displayed information (using the same method as a screen power consumption attack). When displaying an on-screen keyboard, word guessing accuracy of 75% was demonstrated using a convolutive neural network-based classi er after a training phase on the same screen.

Many computers have built-in microphones and speakers. Although designed to operate on audible audio, these devices can also emit with reduced performance on the ultrasound band (and thus be undetectable to the human ear). All these elements make the use of ultrasound a way of achieving air-gap bridging. Hanspach et al. [START_REF] Hanspach | On Covert Acoustical Mesh Networks in Air[END_REF] in addition to ultrasound point-topoint communications, they also successfully created a mesh network with an error correction layer and a frequency-hopping spread spectrum transmission (in order to make the system more di cult to intercept). An experiment demonstrated a transmit message rate of approximately 20 bit/s up to a range of 19.7 m between two connected nodes.

Speakers are generally used to generate sound, but can work in reverse. By connecting a speaker to an audio input, it is possible to turn it into a microphone with much lower sensitivity than conventional microphones. Modern audio chips are capable of reversing the direction of connected headphones from output devices into input devices using software functionality. Guri et al. [START_REF] Guri | MOSQUITO: Covert Ultrasonic Transmissions between Two Air-Gapped Computers using Speaker-to-Speaker Communication[END_REF] use these special features to create a way of ex ltrating data from a computer which does not contain a microphone (for con dentiality reason) using the near-ultrasonic domain (18 kHz to 24 kHz). A range of about 9 m was achieved with a data rate of 10 bit/s. However, such acoustic communication relies on the availability of speakers on a computer which may not be available on the targeted device. To tackle this challenge, Guri et al. [START_REF] Guri | Acoustic Data Ex ltration from Speakerless Air-Gapped Computers via Covert Hard-Drive Noise ('DiskFiltration')[END_REF] also developed a way of generating an acoustic communication channel using a hard disk drive. By generating a speci c pattern of reading operations on the disk, sound can be modulated. A data rate of 3 bit/s was demonstrated up to a range of 2 m. A similar approach can be taken by controlling the computer fan speed [START_REF] Guri | Fansmitter: Acoustic Data Ex ltration from (Speakerless) Air-Gapped Computers[END_REF] for a data rate of 0.25 bit/s up to a range of 8 m.

L

In order to spy on content displayed on a screen, a very basic approach proposed might be to spy on the surface of the screen with a telescope. This method, although very e ective, requires a perfect line of sight between the screen and the observed device. Cathode Ray Tube screens (CRT) display their content by emitting an electron beam toward phosphor elements. This phosphor emits light according to a decay law speci c for each phosphor type (i.e., for each chemical composition). The intensity of the light emitted by a CRT screen as a function of time corresponds to the video signal convolved with the impulse response of the phosphors. It has been demonstrated that su cient high-frequency content remains in the emitted light (when the pixel is turned o ) to enable reconstruction of the displayed content by deconvolving the signal received with a fast photosensor [START_REF] Kuhn | Optical Time-Domain Eavesdropping Risks of CRT Displays[END_REF]. Khun was able to reconstruct a displayed image from an out-of-sight CRT surface (i.e., from a re ection against a wall). The periodic nature of the signal can be used to reduce noise via periodic averaging.

Backes et al. [START_REF] Backes | Compromising Re ections-or-How to Read LCD Monitors around the Corner[END_REF] extended this type of attack to a more modern screen using the low re ections of the screen image on eyeglasses, teapots, and even the user eye. Image acquisition was possible at up to 30 m. Later they extended their work to incorporate re ections on walls or clothes [START_REF] Backes | Tempest in a Teapot: Compromising Re ections Revisited[END_REF] .

Light-emitting diodes (LEDs) are used in nearly every branch of electronics and in any situation where a fast, bright, highly visible indicator is required. Furthermore, LEDs are very fast, o ering rapid response (tens of nanoseconds). In fact, common visible LEDs are su ciently fast to be used as transmitters in ber-optic data links. In some networking equipment, a LED is used to show line activity by ashing at the same rate as the information is transmitted. Loughry et al. [START_REF] Loughry | Information leakage from optical emanations[END_REF] demonstrated that besides echoing the same ow rate, the LEDs of some equipment are often directly connected to the data line they monitor and may leak into the optical domain. Since these leakages contain all the transmitted data, all parity checking and error correction features embedded in the data stream are available to the eavesdropper too. An error-free reconstruction from emitted light was possible at a distance of 38 m on various equipment such as routers, fax, modems, network cards.

Although humans can see luminous emissions, they are unable to perceive their rapid variations. It was, therefore, logical to use LED variations in order to intentionally ex ltrate information. Guri [Gur17b] successfully demonstrated that status LEDs placed on routers can ex ltrate information. He was able to establish a 1000 bit/s per LED communication channel. He shows that this bandwidth can be increased with the use of multiple LEDs. [START_REF] Guri | LED-it-GO: Leaking (A Lot of) Data from Air-Gapped Computers via the (Small) Hard Drive LED[END_REF] takes a similar approach with a hard disk status LED with a nal data rate of 4000 bit/s. [START_REF] Sepetnitsky | Ex ltration of Information from Air-Gapped Machines Using Monitor's LED Indicator[END_REF] uses a monitor status LED with a data rate of 20 bit/s. Another method of using slow human visual perception was developed, in which data is leaked through hidden images displayed on a computer screen [START_REF] Guri | An optical covert-channel to leak data through an air-gap[END_REF]. With this method, a nearly visible QR code (Quick Response code) is embedded on the computer screen. The nearly visible feature is achieved by very low contrast or fast ickering images.

In [START_REF] Asonov | Keyboard acoustic emanations[END_REF] [Com17] [Ana18], the authors have shown the retrieval of a keyboard entry with a microphone. But the keyboard sounds can also be recorded with a so-called laser microphone. These microphones pick up the vibrations of a surface by projecting a laser on it and measuring the light time of ight, which depends on the slightest vibration. In [START_REF] Barisani | Side Channel Attacks Using Optical Sampling Of Mechanical Energy And Power Line Leakage[END_REF], these laser microphones were used to listen on a surface close to a keyboard, achieving a 30 m range.

Lasers can also be used for injecting a sound into a microphone because of the photoacoustic e ect. Sugawara et al. [START_REF] Sugawara | Light Commands: Laser-Based Audio Injection on Voice-Controllable Systems[END_REF] used a 5 mW laser to deliver voice commands to a voice assistant at 100 m. In such a device, no voice authentication is present, which results in a proximity-based threat model, where all nearby users are considered as legitimate. For mobile devices such as a smartphone or a tablet, a laser higher than 60 mW is required to inject audio content due to the thickest top layer protecting the microphone. It is noted that the laser does not produce any audible sound and is therefore perfectly undetectable by humans.

A video recording can be used to identify a password by looking at his arms movements [START_REF] Balagani | PILOT: Password and PIN Information Leakage from Obfuscated Typing Videos[END_REF]. By knowing the keyboard layout and using the time elapsed between each keystroke, it is possible to estimate the distance between the used keys and a list of potential passwords is then deduced. In [START_REF] Chen | EyeTell: Video-Assisted Touchscreen Keystroke Inference from Eye Movements[END_REF], the goal is also to retrieve a password but with recording eye movements. As a human eye naturally focuses on the pressed keys, it is possible to translate the eye movements into typed passwords.

It is to note that there is a side-channel due to thermal emissions of a target. However, this threat does not present a signi cant risk as it has a low bandwidth and a low practical range. Moreover, it is easy to detect due to the changes required at the target: change in the cooling strategy, additional computational load to increase the temperature of a component, etc.

E

The previously mentioned side-channel exhibit several weaknesses:

-The rst one is their relatively short range, which is due in particular to their inability to pass through walls.

-The second drawback relates to signal quality. Combined with the short range, the signal can be distorted on the interception side, making interception di cult and sometimes impossible, even in nominal interception conditions. In addition, several devices can leak on the same side-channel rendering the isolation of a speci c leak more complex, which is the case for power line.

-The third drawback relates to the decoding methods themselves: the equipment required for interception at longer distances is expensive and requires extensive expertise in signal processing in order to be functional.

Electromagnetic waves, on the other hand, do not exhibit the defects mentioned above. They can pass through walls and do not require a line of sight. The modulation techniques and signal processing for these radio waves are very widely spread, making their access easier for everyone and allowing a long range. The usable radio spectrum is quite large, making it easy to hide some radio emissions. Although the cost of equipment can be high, very low-cost alternatives are available as we will discover in the next section. These speci cities demonstrate a greater threat of attacks based on electromagnetic side-channels. The next section focuses on this type of side-channel. A synopsis of the studied papers and categorization of the attack targets are provided in Fig. 2345.

Electromagnetic Emission Security (EMSEC) refers to the various compromising emanations and their uses for eavesdropping as well as information leaked through emanation evaluation. The NSA TEMPEST program is the rst known one to address the risk of electromagnetic emanations in terms of security threats. Some of its documents have been declassi ed, i.e., TEMPEST basics and fundamental principles [START_REF]NACSIM 5000: Tempest Fundamentals[END_REF], and the methods and equipment required in order to detect any compromising leak [START_REF]sory Memorandum NSTISSAM TEMPEST/1-92: Compromising Emanations Lab-oratory Test Requirements[END_REF].

EMSEC is linked to EMC [START_REF] Jiemin | The study of the standards architecture and the standards attributes based on EMC standards and TEMPEST standards in computer system[END_REF] insofar as both are based on the study of various electromagnetic emissions of a system. However, while EMC aims to protect equipment and people from electromagnetic radiation, EMSEC transcends EMC as it analyzes these emissions to verify that compromising information is not being emitted, and aims to eliminate them or, at least, make them unusable by an opponent.

We have separated the RF radiation into two aspects depending on the activeness (as described in 1.3). Although they share many common points, their threat is quite di erent, the active attack has a longer range consequently increasing their potential to be used by an attacker

P

An electromagnetic eld may be emitted from a conductor due to transitions in its state (i.e., applied voltage). In this section, conductors are a generic concept not limited to simple cables or Printed Circuit Board (PCB) track, but also including system components such as inductors and capacitors. These various leaks are directly correlated with the transmitted information on the conductor and therefore anyone recovering these leaks may be able to reconstruct the The resulting side-channel is, however, in baseband and therefore has a short radio range. Nevertheless, the electromagnetic eld of the source also in uences the surrounding signals, for example a high frequency clock signal (c) and an Amplitude Modulation (AM) (d) is issued from the mixing of (c) and (b). This AM side-channel can be received at long radio range by an eavesdropper due to the high carrier frequency. Generally, the higher the transition rate (i.e., a data bus or clock signal), the greater the leaks. The following section will be segmented according to the nature of the device from which the source signal originates, to better stress out what hardware phenomenon is involved.

1 L

Screens are key elements of modern computer systems as they provide almost all the information to users. They are therefore ideal targets for an attacker because all the elements displayed are red data. A signi cant number of publications address this target.

Although CRT screens are now considered obsolete, they have laid the foundations for modern screens that still use some standards created for CRT monitors. Since a CRT screen does not store any data, a continuous stream of data is used (composed of one data line for grayscale images or three data lines for color). However, as screens have di erent resolutions, control signals must be added for line and image synchronizations, labeled hsync and vsync in Fig. 234567.

A gap interval labeled vblank (vertical blanking interval) can be shown in Fig. 234567between the end of the vsync pulse and the start of a new image frame. During this interval, no image is displayed but data are still sent to the pixel lines all with the same value. There is also a small horizontal blanking interval after the hsync pulse for the same reason. Modern CRT screens do not require such long blanking intervals, and LCD displays require none, but the standards were established when the blanking was needed and thus still remain.

In 1985, Van Eck et al. [START_REF] Eck | Electromagnetic radiation from video display units: An eavesdropping risk?[END_REF] described a method to infer the output of a CRT monitor at a distance of hundreds of meters using cheap o -the-shelf equipment.

Eavesdropping is achieved by bringing down to baseband a leaking frequency containing video information and sending it to a standard screen. The received signal does not contain the control lines that allow image synchronization. As it stands, the image is received, but moves horizontally and vertically. The quality of reception can be improved by externally generating the necessary synchronization signals and feeding them into the receiving screen. Kuhn et al. [START_REF] Kuhn | Electromagnetic Eavesdropping Risks of Flat-panel Displays[END_REF] applied similar principles to at-panel displays in 2005. The nuance is that these screens do not operate with such a high-voltage level, making the interception range shorter (around 10 meters). Moreover, the image is rendered row by row and not pixel by pixel like in CRT, so it is not possible to use the same process as Van Eck (because the energy of the pixels on the same row is all mixed at the same time). Kuhn uses another target in which the video data transits: the cable. This cable can leak outside the screen enclosure but also inside in the path which leads to the electronic board. With modern eavesdropping systems, the two synchronization signals do not need to be physically synthesized. However, to produce a stable image, the vertical and horizontal resolutions as well as the refresh rate must be known. Eavesdropping reception is successfully achieved at a 10 m distance through two intermediate o ces and without using a directional antenna [START_REF] Kuhn | Eavesdropping attacks on computer displays[END_REF]. With directive log-periodic antenna, the interception range was extended to 46 m [START_REF] Elibol | Realistic eavesdropping attacks on computer displays with low-cost and mobile receiver system[END_REF]. It should be noted that desktop or laptop screens are not the only displays on which it is possible to eavesdrop, as [START_REF] Hayashi | A Threat for Tablet PCs in Public Space[END_REF] proves that smartphone or tablet screens are also likely to be intercepted.

A leakage channel can be found by checking the presence of periodic signals after an AM demodulation of the received signal [START_REF] Hayashi | Remote Visualization of Screen Images Using a Pseudo-Antenna That Blends Into the Mobile Environment[END_REF]. This periodicity is attributable to the redundancy of the information sent to the screen, since an image is generally very close to the one that precedes it. In addition, vblank gaps also generate strong redundancy that can be seen when autocorrelation is performed after AM demodulation on the leaked signal. Video signals can be easily separated from background noise because they are highly redundant. Displayed information usually remains unchanged for many seconds and, as a result, periodic averaging at vertical frequency (screen refresh rate, frequency between the vblank gaps) is very e ective.

In [START_REF] Zhang | Investigation of Unintentional Video Emanations From a VGA Connector in the Desktop Computers[END_REF], Zhang et al. have shown that more leaks appear when there are structural asymmetries or impedance discontinuities (e.g. in a poorly designed di erential pair or cable connector). [START_REF] Shi | A novel method for computer video leaking signal detection[END_REF] introduces a more powerful procedure than autocorrelations to detect a leakage frequency leveraging the frequency estimation of the spectral centroid. This algorithm can detect the horizontal and vertical synchronization frequencies of display video signal in a noisy environment.

Video eavesdropping is not completely blind, and some assumptions can be made to accelerate the estimation of screen parameters. Synchronization frequencies should be limited to certain speci c values (as they are closely related to the display resolution) in order to reduce the kernel of frequencies to be checked. This is the method proposed by the open-source software TempestSDR [START_REF] Marinov | Remote video eavesdropping using a software-de ned radio platform[END_REF], which enables a display to be intercepted in real-time. Moreover, some parts of the image may be known in advance, e.g. task bars or application launchers that are always placed at speci c locations on the screen. These elements can be used as a reference point to adjust the synchronization frequencies more quickly and accurately [START_REF] Hayashi | A Threat for Tablet PCs in Public Space[END_REF].

Video leaks usually appear in the VHF band (30-300 MHz) but they can also be found in the UHF band (300-3 GHz). Hence, using an appropriate antenna, data acquisition can be achieved with a commercially available dedicated TEMPEST spectrum analyzer (e.g. R&S FSET, Dynamic Sciences) but their price are very expensive, especially for hackers. A more a ordable choice is to use Software-De ned Radio (SDR) to intercept the signal [Yan10] [Hay14] [Lee19] (the speci c application of SDRs on signal interception is discussed in chapter 5). A bandwidth of 20 to 50 MHz is required to achieve the best video quality [START_REF] Kuhn | Eavesdropping attacks on computer displays[END_REF] but a lower-quality alternative is possible with a tunable TV receiver [START_REF] Sayakkara | Accuracy Enhancement of Electromagnetic Side-Channel Attacks on Computer Monitors[END_REF] which is in fact a small SDR with low bandwidth (around 2 MHz).

In 2001, a hacker [START_REF] Thiele | Tempest for Eliza[END_REF] released software enabling video cable leakage to be used to transmit data, which was audio content in this case. By displaying black and white strip patterns with speci c sizing and spacing (see Fig. 2345678), it is possible to perform AM modulations that a simple AM short-wave radio receiver can pick up. This program not only generates a radio broadcast, but the strip pattern causes major uctuations in the power supply and the audio content can be heard near the screen with a coil whine phenomenon. In 2014, Guri et al. [START_REF] Guri | AirHopper: Bridging the air-gap between isolated networks and mobile phones using radio frequencies[END_REF] adapted this transmission method to send more traditional data. Data are rst encoded using Audio Frequency-Shift Keying (A-FSK) modulation and then, software converts the modulated symbols into pictures for the display. The resulting Frequency Modulation (FM) signal is carried in the 76-87.5 MHz band and the practical range was about 7 m at 480 bit/s.

2 L

An old example of keyboard eavesdropping occurred during the Second World War when the U.S. military used encrypted teletypewriter communications such as the Bell 131-B2. In a Bell laboratory, a researcher noticed by chance that every time the machine stepped, a peak appeared on an oscilloscope in a remote part of the laboratory. To prove the vulnerability of the device, Bell engineers captured compromising emanations emitted by a Bell 131-B2, located 25 meters away. They were able to recover up to 75% of the plain text [START_REF]TEMPEST: A Signal Problem[END_REF].

More recently, in addition to sound ngerprint shown by Asonov et al. [START_REF] Asonov | Keyboard acoustic emanations[END_REF], Vuagnoux et al. demonstrated the possibility of using electromagnetic radiation to recover transcribed information [START_REF] Vuagnoux | Compromising Electromagnetic Emanations of Wired and Wireless Keyboards[END_REF]. The rst approach involves listening to the wired data communication sent by the keyboard each time a key is pressed. Wired communication is achieved with the PS/2 protocol, in which each key is sent with a 11-bit word at 10-16.7 kHz. This retrieval method raises some di culties because it targets baseband signals with a low propagation range. However, this signal can also be unintentionally modulated internally by the keyboard electronics, e.g. by the clock of the internal microcontroller. In this case, AM or FM modulation is generated with the clock (or its harmonics) as carriers. These transmissions are generally less disrupted by noise and obstacles such as walls and oors than baseband signals.

While the two previously mentioned methods target keyboard communication protocols that are now old and little used, the third method may be successfully used with modern wired and wireless keyboards. In order to reduce costs, each key of a keyboard is not directly connected to a microcontroller input but is placed at an intersection between a row and a column of a matrix. When a key is pressed, the matrix leak is altered at the column where the key is placed. Since keyboard clocks are not the same and not synchronized with each other, it is possible to distinguish between multiple keyboards in the same room. The maximum successful (more than 95% of keystrokes correctly guessed) eavesdropping range is about 20 m, with compromising emanations found in frequency bands between 25 MHz and 300 MHz and recovered with an SDR.

3 L

The higher the throughput of a bus, the more transitions are generated and therefore the more radiation is emitted [START_REF] Moll | Analysis of dissipation energy of switching digital CMOS gates with coupled outputs[END_REF]. However, the higher the throughput, the faster the receiver must be to reconstruct data successfully. Smulders et al. [START_REF] Smulders | The threat of information theft by reception of electromagnetic radiation from RS-232 cables[END_REF] showed the feasibility of eavesdropping on content passing through an RS-232 bus. The ow rate of this bus is relatively low (less than 200 kbit/s), and therefore its acquisition in baseband is relatively impractical. However, as with a keyboard, the communication bus can be found modulated with a system clock. During experimentation, the bus was found on the FM band at harmonics of the system clock signal (more precisely in 10-130 MHz).

The small bandwidth of the RS-232 link reduces the need for very high bandwidth reception materials. In fact, interception is feasible with standard AM/FM radio receivers (intended for broadcasting music) with successful reception at 9 m. More recent communication buses are also sensitive to eavesdropping. In [START_REF] Schulz | Trust The Wire, They Always Told Me![END_REF] Schulz et al. have shown the feasibility of listening over a 10 Mbps ethernet cable. They used a near-eld probe and a 20 MHz SDR to intercept the information passing through the cable. The ethernet forward error correcting codes can furthermore be used by the eavesdropper to increase the range of the attack. For higher bandwidths, more probes are needed since Ethernet standards then use multiple twisted pairs at the same time.

USB is one of the most widely used systems present on all computers and several attacks are described in the open literature [START_REF] Sim | Measurement and analysis of the compromising electromagnetic emanations from USB keyboard[END_REF]. The principal di culty of decoding USB lies in the Non-Return to Zero Inverted (NRZI) coding used. This coding does not code each bit independently, but codes them according to the previous bits. The NRZI creates a voltage transition if the bit is '1' and otherwise remains in the previous state. It is therefore necessary to intercept information bit-perfect [START_REF] Choi | Reconstruction of leaked signal from USB keyboards[END_REF]. Zhang et al. [START_REF] Zhang | TEMPEST in USB[END_REF] use neural networks (an echo state network) to classify received signals according to their Hamming weight (number of '1' for NRZI) and then select the most likely choice from the coding possibilities, leading to a complex yet functional system.

Apart from eavesdropping, it is also possible to use a USB bus to intentionally leak information. [START_REF] Guri | USBee: Air-gap covert-channel via electromagnetic emission from USB[END_REF] found that transmitting a sequence full of '1' bits to a USB device can generate a detectable emission between 240-480 MHz. This is due to the fact that '1' bits generate a rapid voltage change on each clock cycle. They performed Binary FSK (B-FSK) modulation where the frequency was adjusted with the addition of '0' between '1' (to prevent a voltage shift) in order to lower the carrier leakage frequency and enable the modulation of the data stream, a data rate of 640 bit/s was achieved.

4 L

The main goal of air-gapped computers is to prevent information leaks. These computers are isolated from conventional networks such as the Internet. This, however, does not prevent potential threats due to breaches in network isolation (for example, the computer may be infected by malware if users plug in their phones to recharge them). In order to prevent any leak, the number of devices that are connectable to an air-gapped computer must be minimized and limited to a screen and wired mouse keyboard. However, Guri et al. [START_REF] Guri | GSMem: Data Ex ltration from Air-Gapped Computers over GSM Frequencies[END_REF] showed that preventing data ex ltration is insu cient. They demonstrated the potential for using RAM to generate and modulate leaks, by invoking speci c memory-related instructions to modulate and transmit electromagnetic signals at cellular frequencies. The leaks occur in the 600-1100 MHz range depending on the generation of Double Data Rate Synchronous Dynamic RAM (DDR-RAM) used. The modulation scheme used was a modi ed Binary Amplitude-Shift Keying (B-ASK). The '0' is obtained with a near zero amplitude (which is in fact the normal leakage level when nothing special is done). The '1' is obtained by invoking a memory instruction in order to leak a strong signal. This communication channel has a range of about 30 m at a 1 kbit/s data rate with a dedicated SDR receiver.

Funtenna [START_REF] Cui | [END_REF] is an open-source software payload that intentionally makes its host hardware act as an improvised RF transmitter (although not initially designed for electromagnetic communication). Mainly intended for embedded systems rather than computers, this software uses system standard General Purpose Input Output (GPIO), Pulse Width Modulation (PWM) or Universal Asynchronous Receiver Transmitter (UART) output to generate FSK or ASK modulation below 100 MHz.

In 2018, Guri et al. [START_REF] Guri | ODINI : Escaping Sensitive Data from Faraday-Caged, Air-Gapped Computers via Magnetic Fields[END_REF] presented a type of malware that can ex ltrate data via low frequency (less than 50 Hz) magnetic signals induced by computer CPU cores. By controlling the workload of the CPU cores with multiple sub-carrier modulations (one carrier per core), a bit rate of 40 bit/s was achieved at 1 m.

Matyunin et al. [START_REF] Matyunin | Covert channels using mobile device's magnetic eld sensors[END_REF] suggested using a hard disk drive magnetic head to generate magnetic emissions by invoking basic read/write operations on the disk. They used ASK modulations but due to such devices low power consumption, the practical range is lower than with a CPU core at about 15 cm with a data rate of 2 bit/s.

Hardened cryptography systems aim to prevent data retrieval resulting from side-channel attacks by giving the cryptography system a speci c architectural design. Although circuits can be protected against intrusive attacks and power analysis, it is more di cult to secure them against radiation attacks since these are capable of targeting very precise points of a chip with near-eld probes while remaining perfectly undetectable. These attacks are known as Electro-Magnetic Attacks (EMA) [START_REF] Quisquater | ElectroMagnetic Analysis (EMA): Measures and Counter-Measures for Smart Cards[END_REF] and all the processing and methods applicable to SPA [START_REF] Mangard | A Simple Power-Analysis (SPA) Attack on Implementations of the AES Key Expansion[END_REF] and DPA [START_REF] Kocher | Di erential Power Analysis[END_REF] are possible with EMA [START_REF] Le | An overview of side channel analysis attacks[END_REF]. For template attacks [START_REF] Heyszl | Localized Electromagnetic Analysis of Cryptographic Implementations[END_REF] the threat mainly lies in the ability to recover a key with few traces. The attacker uses a device identical to the target in order to thoroughly understand its functioning. A great deal of pre-processing can then be performed o ine, which fastens the attack.

It should, however, be emphasized that other methods exist, such as using Short Time Fourier Transform (STFT) or AM demodulation to produce a narrower band signal to decrease the e ect of noise [START_REF] Meynard | Enhancement of simple electro-magnetic attacks by pre-characterization in frequency domain and demodulation techniques[END_REF].

Aboulkassimi et al. [START_REF] Aboulkassimi | ElectroMagnetic analysis (EMA) of software AES on Java mobile phones[END_REF] demonstrated the possibility of extracting the key from AES encryption performed on a mobile phone using a near-eld electromagnetic probe. [START_REF] Agrawal | The EM Side-Channel(s)[END_REF] found cryptographic related emanations using near-eld probes as well as far-eld probes (with log-periodic antenna). Goller et al. [START_REF] Goller | Side Channel Attacks on Smartphones and Embedded Devices Using Standard Radio Equipment[END_REF] continued this study of using far-eld probes to recover encryption keys. They successfully recovered them at a distance of 80 cm using a commercially available SDR (middle-end type). They also carried out a comparison between the use of a good quality SDR and a low-end SDR (e.g. a DVB-T stick). The di erence of signal-tonoise ratio between the middle-end and low-end system was only about 2 dB, but with reduced received power for the low-end system, which, in practice dramatically reduces the recovery range. Consequently, compared to a maximum distance of 80 cm for the middle-end system, the low-cost system is unable to receive a usable signal at a distance greater than 10 cm. Timing attacks target the execution time of cryptographic instructions. To prevent these attacks, constant-time security is used where every security-critical operation is modi ed so that it lasts exactly the same time regardless of the input data. Alam et al. [START_REF] Alam | One&Done: A Single-Decryption EM-Based Attack on OpenSSL's Constant-Time Blinded RSA[END_REF] utilized security features present in RSA implementation (openSSl) to speed up the extraction of the key. In fact, they only needed one trace to recover the RSA private key using a near-eld probe (over 95% successful recovery). They detected the ciphering process through a speci c pattern induced by the constant-time countermeasure (protects against timing attack).

5 L

Cross-talk is a radiation side-channel where the radiation originates from a legacy channel, as illustrated by Fig. 23456789. The source signal (b) propagates through an adjacent conductor (a) due to a radiation phenomenon (c), resulting in a leak in the adjacent conductor (d). While this does not change the content carried by the leak, it does change the way it is propagated. Cross-talk phenomena were among the rst threats highlighted by TEMPEST [START_REF]NACSIM 5000: Tempest Fundamentals[END_REF]. The NSA created a special guide to reduce the incidence of this type of leak [NSA]. In 1967, Ware [START_REF] Ware | Security and privacy in computer systems[END_REF] suggested that it was conceivable that sensitive information was being eavesdropped by cross-talk but In a USB, the only security feature lies in the fact that all devices cannot monitor total bus tra c. This security is performed by active components (placed within the bus line) that redirect data ows to the right device. But, in fact, all downstream data (host to devices) are broadcast to all devices while only the upstream is unicast and redirected by the active component. This implementation has major security problems since all USB devices can listen plainly to all the information sent by the host even if they are not the rightful recipients. Su et al. [START_REF] Su | USB Snooping Made Easy: Crosstalk Leakage Attacks on USB Hubs[END_REF] highlighted a cross-talk phenomenon within USB hubs that provide packet redirection. Most of the time, USB hubs consist of a single-chip solution, and isolation between lines is present. Nevertheless, the small size of the chip and the high data rate can still produce a cross-talk phenomenon between adjacent USB lines. The researchers successfully demonstrated the interception of USB ngerprint scanner data (device to host stream) from an infected USB gadgets such as a USB light connected to the same USB hub as the scanner [START_REF] Su | USB Snooping Made Easy: Crosstalk Leakage Attacks on USB Hubs[END_REF].

In [START_REF] Yuan | Crosstalk-Sensitive Loops and Reconstruction Algorithms to Eavesdrop Digital Signals Transmitted Along Di erential Interconnects[END_REF], an in-depth study of cross-talk phenomena is conducted with particular attention to the reconstruction of digital signals transmitted along di erential connections. This paper addresses theoretical aspects and seeks to determine the conditions under which eavesdropping of information is possible. Reconstitution accuracy is dependent on the speed of the signal being listened to (risk of overlapping bits), and the quality of the cable where the red signal is leaking is also of signi cance. Although several wires can be used to enhance reconstruction quality, algorithmic complexity drastically increases and becomes prohibitive for real-time constraints.

F

Another kind of electromagnetic side-channels is the forced-broadcast, represented in Fig. 2-10), where the main carrier (a) is issued from outside the target and re ects while being altered by the target (b). This re ection thus leads to a leak of information (c). Forced broadcast is composed of two subcategories, namely illumination and mixing, considered respectively as active and passive attacks.

Radio illumination attacks force a system (screen, keyboard, microphone, etc.) to leak by mixing them with an external carrier and by studying the re ected wave altered by the targeted system. Most of the time, the mixing process results in an AM or FM modulation. These attacks are extremely powerful due to their ability to accurately choose a target (directive antenna are generally used) and their long-range (the attacker has plain control on the carrier transmission power and frequency), but they also present a signi cant disadvantage. The carrier used is generated by the attacker and is not a signal that normally exists in the conventional radio spectrum. As such, the target may notice this abnormal carrier and detect the attack.

A mixing leak is similar to the previous scenario except that the carrier modulated by the system originates from a source other than the attacker (WiFi access point, Digital Enhanced Cordless Telecommunications (DECT) phone, embedded radio transmitters, etc.). The hazards of such attacks are greater because the external signal comes from an authorized source and is therefore not categorized as an abnormal channel source, unlike illumination attacks. In these scenarios, since the attacker becomes totally passive, its detection is impossible [START_REF] Wei | Acoustic Eavesdropping through Wireless Vibrometry[END_REF]. On the downside, weaker signal quality is assumed.

1 I

The Thing, also known as The Great Seal Bug [Uni] (1945), was an unpowered covert listening device developed in the Soviet Union. The device was designed to recover speech. To ensure maximum concealment and eliminate maintenance requirements, the "bug" was totally passive and had to be remotely powered by a radio beam in order to be operated. It consisted of a resonant cavity microphone (see Fig. 2-11), which is basically a tuned circuit (T), composed of an inductance and a capacitance. Part of the capacitance is variable as it is e ectively a microphone (M). An antenna (A) is coupled (C) to the tuned circuit. Any sound causes the membrane of the capacitance to vibrate, which decreases and increases the resonance frequency of the tuned circuit. As a result, the device produces a combination of AM and FM signals when illuminated by a beam. In practice, only the AM component was used. The device was planted in 1945 but only discovered in 1952. In 1951, a radio operator accidentally intercepted emissions returned by the bug, but could not discover their origin. Several detections of this type were made without pinpointing their origin. It was only one year later, after speci c equipment was deployed and the radio spectrum was monitored continuously over several days, that the device was discovered. In order to detect it, the device had to propagate back a signal and therefore had to be illuminated. It is this ability to be deactivated remotely and not to radiate when turned o that makes this type of attack extremely discreet and thus dangerous, since a degree of chance is required to properly detect the attack.

The NSA used the same principle of a device powered by external sources in their VAGRANT program [START_REF]VAGRANT program[END_REF]. Although information regarding this program is supposedly classi ed, some information has become public knowledge due to the Snowden leaks. The VAGRANT program aims to spy on a user computer interface by installing bugs in the equipment being monitored. Two types of bugs are used. An extremely basic version, which is useful for high-speed sidechannels such as video cables, consists of a simple radio re ector placed on the cable. When a continuous carrier radio stream illuminates it, the data is modulated and redirected to the transmitter. A more complex version uses logic components powered by the radio beam to re ect the signal with FSK modulation (between the data lines it taps and an internal clock). The maximal range achieved by such a system was about 12 km in excellent conditions, which is signi cantly longer than for passive radio eavesdropping.

Due to the nature of the VAGRANT program, no scienti c papers have been published on this type of attack, although some explanations may be found in [START_REF] Gbppr | TAWDRYYARD Experiments[END_REF] and [START_REF] Ossmann | The NSA Playset: RF Retrore ectors[END_REF]. In particular, no real expressions of the distances, means of recovering red signals and manufacture of bugs are explained. However, in 2018, Wakabayashi et al. [START_REF] Wakabayashi | A Feasibility Study of Radio-frequency Retrore ector Attack[END_REF] addressed this issue. Rather than recreating the exact same version as the NSA, they used the principle of illumination attacks to create their own version: the bug used here is a eld-e ect transistor (FET) where the gate of the FET is attached to a wire (see Fig. 2-12 to installation schematic). The wire shield is then used as a dipole antenna, which is long and perfectly camou aged. In such attacks, the key issue is to determine the circuit resonance frequency since the sent beam is re ected at this particular frequency. The study showed that contrary to the general assumption, it is not only the length of the antenna that determines the frequency but also its shape and the bus to which it is connected. Not every FET transistor is usable for this purpose, and the one used exhibited high dynamic range with low noise (speci c to RF applications). An interception data rate of approximately 10 Mbit/s was achieved within 10 m using an SDR radio. However, this limitation is only due to the performance of the SDR used and can be overcome with higher-end equipment (the setup used was estimated at USD 5,000, which is a ordable to the general public). Kinugawa et al. [START_REF] Kinugawa | Electromagnetic Information Extortion from Electronic Devices Using Interceptor and Its Countermeasure[END_REF] extended the scope of the aforementioned attack by targeting PCB in addition to data cables. They were able to record the power supply of a cryptographic circuit, allowing the interception of a secret RSA key up to 5 m. Although some components have been added on the PCB, only a quali ed person will be able to di erentiate them from the legitimate components. Other interesting targets are smart speakers as they constantly listen to their surroundings in order to detect wake-up words. Kinugawa et al. were able to demonstrate the reception of the inner microphone up to 5 m with a bug placed on an internal wire.

2 M

With the recent advent of SoC, processors, memories and radio communication circuits can be combined on the same circuit to create smaller and cheaper devices. Although these systems are mainly made up of digital components, an analog part still remains for power supply and communication. While modern radio protocols are digital and most of their layers are implemented in the digital domain, the generation, ampli cation, and transmission of radio frequency signals are by nature analog operations. The recovery of keys through an analysis of various emanations of a processor or power supply has been widely studied [Mey11] [Gol15]. However, all these methods use probes that must be placed very close to the component being studied, which limits the criticality of the threat. In a system where a SoC used encryption, a shared power supply between the processor and the radio circuit, on the one hand, and physical proximity, on the other hand, may both result in the presence of processor activity on the transmitted radio signals. If, during a radio communication phase, the processor performs encryption (which is very common as secure radio exchange packets are encrypted on the y), processor activity may then be present in the radio frequency signal. Therefore, it is possible to recover the encryption key remotely by listening to the radio communication [START_REF] Choi | TEMPEST Comeback: A Realistic Audio Eavesdropping Threat on Mixed-signal SoCs[END_REF]. In [START_REF] Camurati | Screaming Channels: When Electromagnetic Side Channels Meet Radio Transceivers[END_REF] [Cam20], Camurati et al. presented a successful attack of this kind. The target was a SoC nRF52832 with an internal Bluetooth link from which it was possible to retrieve the RSA encryption key at a distance of 10 m with methods very similar to EMA [START_REF] Quisquater | ElectroMagnetic Analysis (EMA): Measures and Counter-Measures for Smart Cards[END_REF].

Speakers are widely used in conference systems and may be, by their nature, carriers of con dential information. Soundproof walls are generally used as a countermeasure against sound leaks (see Section 2-2). However, it is still possible to recover sound from outside such secured rooms, not by using sound generated by the loudspeaker, but the small disturbances it causes to radio frequency signals in its environment [START_REF] Wei | Acoustic Eavesdropping through Wireless Vibrometry[END_REF]. The advantage of this method using radio frequency waves rather than sound waves is that it does not require a perfect line of sight with the loudspeaker or physical access to the secured room. As with other leaks, AM modulation is performed between the sound and the external radio frequency signal. The signals disturbed by the loudspeaker may come from di erent sources. First, they may originate from the attacker. In such a scenario, the attacker is able to fully control the interception parameters and choose a frequency that allows the best signal recovery. In addition, it is not necessary to transmit continuously: signal bursts can be used since the voice can be sampled at a lower frequency (compared to a conventional radio frequency signal) and still be perfectly intelligible. This attack, although allowing excellent audio quality, requires a signal to be to actively transmitted. A di erent approach to radio illumination is to use radio frequency signals that are already present to intercept the sound signal. For example, this is the case of WiFi waves [START_REF] Wei | Acoustic Eavesdropping through Wireless Vibrometry[END_REF] that are often present in conference rooms to allow Internet access. The threat may also be increased by the presence of a WiFi hot spot, as these are placed to maximize radio coverage. This naturally increases the range of compromising radio frequency waves, allowing potential interception even at a great distance from the loudspeaker.

The prominence of radio communication and the omnipresence of energy in radio bands make it possible either to conceal a radio illumination attack or use radio waves that are already present. In [START_REF] Zhao | Through-Wall Human Pose Estimation Using Radio Signals[END_REF], a WiFi router was used to create cheap radar devices. This leveraged the fact that WiFi frequencies travel through walls and are re ected on the human body, with the purpose of seeking the presence of a person as well as his movements. Like all radar images, a high signal processing workload is required to obtain usable data. Thus, in [START_REF] Zhao | Through-Wall Human Pose Estimation Using Radio Signals[END_REF], a deep neural network is used to detect joint movement. Moreover, this works even in the presence of a wall and in the absence of light sources, unlike the camera-based method. The radio-based system has been proved almost as accurate as the conventional camera-based system up to the maximum range of the router used (which was 12 m).

WiFi may also result in a higher resolution when, instead of targeting a whole body, only a part is monitored. Ali et al. [START_REF] Ali | Recognizing Keystrokes Using WiFi Devices[END_REF] applied gesture recognition to user nger and hand movements above a keyboard in order to recognize keystrokes. They used the uctuations in the instantaneous channel state information caused by small hand movements. High key accuracy of 89.7% was obtained with k-nearest neighbor classi ers and a multi-antenna setup with o -the-shelf WiFi devices. A similar approach was adopted [START_REF] Chen | Tracking Keystrokes Using Wireless Signals[END_REF] with the use of an SDR-based system specially designed for this purpose. This increased correct key estimation to 91.8%.

Finally, application can be further extended by targeting a person face. The subtle movements involved require major signal processing as well as beamforming to reduce the noise. However, Wang et al. [START_REF] Wang | We Can Hear You with Wi-Fi![END_REF] show the feasibility of such an approach. Their system detects nine vowels and consonant patterns and uses context-based error correction techniques to correctly estimate the word pronounced. An e ciency of 91% was observed in a direct line of sight, this ratio drops to 18% if a wall is interposed.

D

The previous section highlighted the main characteristics of side-channel emanations. We pointed out that the main disrupting element lies in the medium used. Indeed, the goal is invariably to recover red data: data originating or ending on the user side (screen, speaker, keyboard, etc.), data bus information, or the cryptography key, etc. Even if the methods used to recover data may be independent from the medium, they mostly exploit the medium speci cities to improve their performance. Consequently, albeit targeting the same red signal, the medium used will have a signi cant in uence on the ability to retrieve information and therefore on the level of the threat.

Side-channel attacks based on electromagnetic signals are particularly threatening to security and privacy due to the diversity of targets as well as the di erent possible paths. The low cost of some methods and the low knowledge requirements for carrying them out making them even more cause for concern. Some improvement can be made with method such as multiple-input and multiple-output (MIMO) which allows using multiple antennas to exploit multipath propagation and therefore greatly improve the noise performance as well as ease to target devices.

On top of that, several indicators tend to exacerbate this issue. First, the evolution of current technology tends to increase the frequency of system clocks and the number of clock regions. This has two consequences: i) the number of side-channels may increase, and ii) these side-channels may appear on a wide carrier frequency range (and reach values more favorable to their propagation). Secondly, for a defender, potential threats are often identi ed based initially on channel sounding. Thus, nding a potential compromising signal is more di cult due to the increasing use of radio signals nowadays. Finally, this section has shown that the cost of interception is decreasing, with smaller yet e ective equipment available so that powerful techniques such as machine learning [START_REF] Hettwer | Applications of machine learning techniques in side-channel attacks: a survey[END_REF] can even be envisioned.

The Table A-1 of the appendix is a summary of the various side-channel emanations discussed in this chapter including a classi cation by target, side-channel, activeness, intentionality and the practical range achieved. This allows having a synthesized view of the several potential attacks with the goal of improving the apprehension of their threat level.

Our subject of interest lies in the EM side-channels and in particular those which are di cult to detect by conventional means and not really covered in the literature, this includes the forced broadcast but also all the leaks a ecting the transmitter which will then broadcast the leak in their messages. Frequency Hopping (FH) is a method of transmitting radio signals by changing the carrier frequency among many distinct frequencies occupying a large spectral band. The various frequencies shift a baseband signal thereby creating di erent channels. The change or hop sequence of the FH channels is de ned by a sequence known by both the transmitter and receiver in advance and is usually generated with a pseudo random generator. An example can be seen in Fig. 1-2 that depicts a time-frequency grid of Bluetooth signal. This chapter will rstly start by introducing FH in detail in Section 3-1, its origin, the evolution of its use over time and, of course, why our study is about intercepting these kinds of signals. Section 3-2 will focus on the state of the art on frequency hopping intercepting systems. Finally, Section 3-3 lists our use case of side-channel interception and will also present our interception architecture.

INTERCEPTION METHODS OF FREQUENCY HOPPING SIGNALS

F H 1.H

There is no exact year of invention for the FH, this concept has existed since the use of radio waves for telecommunication because it allows making a simple multi-user management (with di erent channel allocation). However, several patent applications on concepts more or less similar to the FH have been led. The rst practical application of FH was during the WWI, were German operators manually switched between speci ed frequencies to prevent eavesdropping from their adversary [START_REF] Wilhelm | Wireless telegraphy[END_REF]. Indeed, an eavesdropper not being aware of the frequency pattern to be used could not e ectively listen to the communication because it was almost impossible for him to determine the current frequency on which the signal was transmitted. However, this method is not automatic and requires human intervention at both transmission and reception sides.

The rst appearance of an automatic system is found in the patent [START_REF] Broertjes | Method of maintaining secrecy in the transmission of wireless telegraphic messages[END_REF] in 1929, in which the hop sequence is cyclic and can take less than 10 possible values. A more elaborated solution, which is the one chosen as the rst frequency hopping system, is the patent "Secret Communications System" [Lam41] in 1941. It uses a piano-roll to select among up to 88 frequencies, which must therefore be physically delivered before any transmission. In this way, a more complex sequence than the above patent can be used, the original purpose of this system was to improve the stealth and jamming resilience of torpedoes.

N

Frequency hopping signals can be represented along with a grid, composed of two axes:

-an axis for time graduated in time slots 𝑇 𝑠 , -an axis for carrier frequencies graduated in channels 𝑁.

To give some examples, Bluetooth technology uses FH for transmission and has a time slot of 625𝜇s over 80 channels, 40 in its low energy standard (BLE) with 80 MHz bandwidth in the 2.4 GHz ISM band. For obvious reasons, the military also uses this type of transmission, we can mention American HAVE QUICK I and HAVE QUICK II but little information can be found about them except they use the 225 -400 MHz UHF band. However, we do have some information about SINCGARS [cry] which has 2320 channels between 30 and 88 MHz and hops at 111 hop/sec. It is to be noted that these protocols are still available but that the radios using them are now SDR, which shows the great exibility of this type of technology. Fig. 3-1 depicts this grid (the blue area represents a signal), we consider that the time slots have all the same duration, and channels have the same bandwidth. A frequential and temporal sporadicity can be seen:

-Frequential, it corresponds to the fact that generally two successive transmissions do not happen in the same channel, and therefore the receiver must know the channel sequence which can be either in a pseudo-random sequence or one of the direct neighbor channels, as can be seen in the top left quarter of the gure. In the latter case, the knowledge of the hop spacing makes the job easier for an FH detector because it does not need to search in the whole spectrum but only the adjacent channels.

-Temporal, it corresponds to the fact that there is not necessarily a signal in each time slot. This can be seen in the top of the image, where on the left there is no temporal sporadicity while on the right there is.

Two phenomena of grid desynchronization are visible in the lower right quarter of the gure, due to a mis-synchronization of the receiver, CFO and time unsync, respectively a frequency and temporal error. They can lead to a wrong information retrieval from the legitimate receiver as well as an additional error from a possible eavesdropper who must already deal with the inherent di culties of side-channel listening.

We consider a baseband message 𝑏 (e.g TRANSEC or Bluetooth) of bandwidth 𝐹 𝑏 . This message carries no usable sensitive data and is called a black signal, but through a side-channel, a red signal can be mixed within the black signal (see Section 3-1 for a side-channel mixing model). The notion of red/black signal is not discussed in this part because only the detection of active channel is considered in the interception of FH signal literature. This baseband message is then modulated following the FH sequence, resulting in a 𝐹 𝑠

𝑥(𝑡) = 𝑏(𝑡)𝑒 2 𝑗 𝜋 𝑓 𝑝 (𝑡)𝑡 𝛼 𝑇 𝑠 (𝑡), 𝑝 ∈ [0, . . . 𝑁 -1] (3-1)
with 𝑓 𝑝 (𝑡) the associated channel frequency to transmitted symbols of 𝑏(𝑡), 𝑝 the channel index, 𝛼 𝑇 𝑠 the sporadicity factor expressing whether transmission occurs during a time slot:

𝛼 𝑇 𝑠 (𝑡) =        0 if sporadicity, 1 otherwise, (3-2)
Assuming that 𝑁 evenly distributed channels can be used, then

𝑓 𝑝 (𝑡) = 𝑝(𝑡) × 𝐹 𝑏 = 𝑝(𝑡) × 𝐹 𝑠 𝑁 , 𝑝(𝑡) ∈ [0; 𝑁 -1]∀𝑡. (3-3)
The same FH index 𝑝 is maintained constant for several consecutive time slots which de ne the so-called slot duration 𝑇 𝑠 , and 𝜆 = 𝑇 𝑠 𝑁 is the repetition factor, this value will be important for the Chapter 4 and is used to de ne the number of windows of width 𝑁 contained in a time slot 𝑇 𝑠 . In the following, the received signal 𝑑 (𝑡) is the transmitted signal only a ected by a delay 𝜏 and impaired by an Additive White Gaussian Noise (AWGN) 𝑤(𝑡) of variance 𝜎 2 𝑤 and is therefore expressed as

𝑑 (𝑡) = 𝑥(𝑡 -𝜏) + 𝑤(𝑡).
(3-4)

The baseband signal bandwidth 𝐹 𝑏 is lower than the FH signal bandwidth 𝐹 𝑠 , which adds a phenomenon of frequency spreading so that the FH signals are also called Frequency-Hopping Spread Spectrum (FHSS).

Frequency hopping has several advantages:

-An easier sharing between several users of the same spectral band with minimal mutual interference [START_REF] Torrieri | Chapter 3 Frequency-Hopping Systems[END_REF].

-An increased robustness against interference, whether the interference is due to natural fading of the propagation medium (in which case changing the frequency avoids the interference), or due to an intentional jamming.

-A higher frequency diversity, when the carrier frequency changes in middle of time slot i.e., the hopping rate is greater than data rate [START_REF] Torrieri | Chapter 3 Frequency-Hopping Systems[END_REF], which is called fast frequency hopping.

-An increased resistance towards interception because the eavesdropper is not aware of the hop sequence and has to observe a large spectrum continuously to catch the transmission or being extremely lucky to stumble upon the right channel frequency.

W ?

Listening to FH signals can have several uses, which are not only about snooping. The radio spectrum is wide but only a small part of it is usable by the public, who must then resort to the so-called industrial, Scienti c and Medical (ISM) radio bands. Some of these bands, especially the 2.4 GHz, are extremely used, by WiFI, Bluetooth, Zigbee, Digital enhanced cordless telecommunications (DECT), . . . Some portions of the ISM band are heavily used while some others are rarely used. Not sharing the radio spectrum among users can result in the creation of unwanted denial of service events. Being able to detect unused space with an FH detector helps improve bandwidth e ciency. This is for instance how BT avoids channels with interference [Gol].

An FH detector can also be used to ensure the proper functioning of a radio transmitter that uses FH precisely without knowing the hop sequence. In the absence of a suitable detector, it would be very complex to check that the data being sent is correct. Moreover, monitoring the radio frequency of a device allows to analyze it in a non-intrusive way, which does not alter its operation but also renders the detection of this monitoring more di cult.

FH detectors can, of course, be used for security purpose, to eavesdrop an FH signal to check its content and may be employed to detect any side-channel a ecting an FH radio, with the aim of discovering its cause to estimate its dangerousness and to suppress it. This procedure can also be used to detect a radio transmission that does not comply with the radio standard, e.g., a device that has been tampered with so that it transmits con dential information in addition to its normal operation. In this case only an FH detector will be able to observe this phenomenon. It is precisely to detect these cases that the present thesis has been carried out.

S FH

Most of the FH detections are based on periodic analysis of the spectrum and observation of an energy change on a given bandwidth. The frequential and temporal accuracy of the algorithm and the associated hardware de ne the ability of FH detection. The literature is not very extensive in the speci c area of FH interception, but a similar problem exists in Cognitive Radio (CR).

A CR [START_REF] Mitola | Cognitive radio. An integrated agent architecture for software de ned radio[END_REF] is a radio that can be dynamically con gured and programmed. Allowing to select the best wireless channels in its vicinity to avoid interference or congestion due to another user. Therefore, spectrum sensing is a critical issue for cognitive radio. Indeed, it is an e ective way to detect spectrum holes in radio network [START_REF] Bagayoko | Power Control of Spectrum-Sharing in Fading Environment With Partial Channel State Information[END_REF]. The spectrum scanning processing can be characterized in two groups, depending on how many separate channels can be detected at a time:

-Narrowband detection: this detection can only detect one channel in the whole sampled band. This represents the rst detection method, and its limitation is due to the limited bandwidth capacity of radio. Therefore, if you want to detect 𝑁 distinct channels at the same time, a wideband detector has to be used.

-Wideband detection: this detection is more modern and has been introduced thanks to the emergence of SDR that can acquire and process a large bandwidth and is easy to program compared to hardware radios (see chapter 5). It allows covering several bands by using a single receiver. It combines split-signal processing and narrowband detectors.

N

The purpose of narrowband detectors is to determine whether or not the band is occupied by a signal. The whole received band is therefore considered as a single channel. We assume the statistical test H 0 : the channel is not used, i.e., only noise is received and H 1 : the channel is used, i.e., a signal has been detected.

The model of the received band under both assumptions H 0 and H 1 , can be expressed as: The probability processes that will be described below de ne the probability of detection (𝑃 𝑑 ) and false alarm (𝑃 𝑓 ). These two probabilities can be de ned as:

       H 0 : 𝑑 [𝑘] = 𝑤 [𝑘], H 1 : 𝑑 [𝑘] = 𝑥 [𝑘] + 𝑤 [𝑘],
𝑃 𝑑 = 𝑃(H 1 | H 1 ), (3-6)
and:

𝑃 𝑓 = 𝑃(H 1 | H 0 ). (3-7)

1 E

The energy detector is based on a very straightforward principle (a schematic sketch can be seen in Fig. 3-2), for each K samples batch the received energy 𝜐 is estimated and compared to a threshold 𝜁. This threshold is set in such a way that if the energy is lower there is no signal and higher a signal is received. Energy detection [START_REF] Urkowitz | Energy detection of unknown deterministic signals[END_REF] computes the averaged energy with

𝜐[𝑘] = 1 𝐾 𝐾 ∑ ℎ=1 |𝑑 [𝑘 -ℎ]| 2 , (3-8)
with 𝐾 the averaging factor and sample processing length, while 𝑑 [𝑘] denotes the 𝑘th received sample. If the energy is higher than the threshold 𝜁 then H 1 is assumed. The threshold is dependent of the noise variance [START_REF] Zeng | Blindly Combined Energy Detection for Spectrum Sensing in Cognitive Radio[END_REF], but the performance can be greatly improved in the case where the noise is not stationary by using a dynamic threshold. In [START_REF] Zhu | Double Threshold Energy Detection of Cooperative Spectrum Sensing in Cognitive Radio[END_REF], this kind of approach is addressed by using a double thresholding. It adds an unsure area, corresponding to the area around a static threshold to deal with uncertainty. If the energy of the samples is smaller than the area limit, then the band is unoccupied, but if the energy of samples is higher than the second limit, then the band is occupied. If the energy is inside the area, then the decision is not taken by the process but by a supervisor who analyzes the results of another detector monitoring the same band at another location, exploiting the spatial diversity. While this dual-threshold algorithm reduces 𝑃 𝑓 , the 𝑃 𝑑 is higher than with techniques that have one threshold only. [START_REF] Muralidharan | An adaptive threshold method for energy based spectrum sensing in Cognitive Radio Networks[END_REF] shows an adaptive threshold detection method based on an image binarization technique which takes in account the previous decisions and a linear function of the received signal mean and standard deviation.

Energy detection is a relatively low-complexity technique that does not require any prior knowledge of the signal characteristics. However, it uses only an energy level-based criterion and therefore cannot distinguish between a signal and a high noise level, which makes it subject to high uncertainty. It has a low detection performance at low SNR [START_REF] Tang | Some physical layer issues of wide-band cognitive radio systems[END_REF]. In addition, energy detectors alone do not work e ciently for detecting spread spectrum signals [START_REF] Cabric | Implementation issues in spectrum sensing for cognitive radios[END_REF].

2 C

The covariance-based detection techniques compute the covariance matrix of the received signal and apply Singular Value Decomposition (SVD) to detect the presence of signals [START_REF] Berder | Identi cation of frequency hopping communications[END_REF]. The SVD is used to study the structure of the covariance matrix of the received signal. Because the matrix values depend on whether a signal or noise is processed, a telecom signal can therefore be di erentiated from noise (assumed to be white and Gaussian) because it is correlated. A schematic sketch can be seen in Fig. 3-3.

The auto-correlation samples of the received signal are expressed as:

𝑟 𝑙 [𝑘] = 1 𝐴 𝐴-1 ∑ 𝑎=0 𝑑 [𝑘 + 𝑎]𝑑 * [𝑘 + 𝑎 -𝑙], 𝑙 = 0, 1, ..., 𝐿 -1, (3-9)
where 𝑑 is the received samples, 𝐿 the number of samples used and 𝐴 the averaging factor.

The statistical covariance matrix (𝐿𝑥𝐿) is then expressed as:

R𝑑 [𝑘] =           𝑟 0 [𝑘] 𝑟 1 [𝑘] . . . 𝑟 𝐿-1 [𝑘] 𝑟 * 1 [𝑘] 𝑟 0 [𝑘] . . . 𝑟 𝐿-2 [𝑘] . . . . . . . . . . . . 𝑟 * 𝐿-1 [𝑘] 𝑟 * 𝐿-1 [𝑘] . . . 𝑟 0 [𝑘]           (3-10)
Then, SVD is applied on the matrix R𝑑 , in order to have the maximum 𝑀 𝑚𝑎𝑥 and minimum 𝑀 𝑚𝑖𝑛 eigenvalues of R𝑑 . Finally, the sensing decision is made by comparing the ratio of maximum to the minimum eigenvalue: 𝑀 𝑚𝑎𝑥 𝑀 𝑚𝑖𝑛 to a threshold [START_REF] Zayen | Blind Spectrum Sensing for Cognitive Radio Based on Signal Space Dimension Estimation[END_REF]. To decrease the computation complexity of such a method, the authors of [START_REF] Kumar | Cognitive radio spectrum sensing algorithms based on eigenvalue and covariance methods[END_REF] implemented a sample covariance matrix instead of a statistical covariance matrix.

3 C

The detectors based on the cyclostationary features use the periodicity in the signal or in its statistics (e.g. mean or autocorrelation) [START_REF] Gardner | Exploitation of spectral redundancy in cyclostationary signals[END_REF], a schematic sketch can be seen in Fig. 34. A signal with nothing but noise is Wide-Sense Stationary (WSS) meaning with no correlation, while a modulated signal is cyclostationary, meaning with spectral correlation due to the redundancy of signal periodicities [START_REF] Yawada | Cyclostationary Detection Based on Non-cooperative spectrum sensing in cognitive radio network[END_REF].

The received signal 𝑑 [𝑘] is called cyclostationary if the mean and the autocorrelation of the signal are periodic:

𝑚 𝑑 [𝑘] = 𝑚 𝑑 [𝑘 + 𝐾 0 ] = 𝐸 [𝑦[𝑘]],
(3-11) and:

𝑅 𝑑 [𝑘, 𝜏] = 𝑅 𝑑 [𝑘 + 𝐾 0 , 𝜏], (3-12)
where 𝐾 0 is the period of the signal 𝑑 [𝑘], 𝐸 denotes the expectation operator, 𝑅 𝑑 autocorrelation function as:

𝑅 𝑑 [𝑘, 𝜏] = 𝐸 𝑑 (𝑘 + 𝜏)𝑑 * (𝑘 -𝜏)𝑒 𝑗2𝜋𝛼𝑘 , (3-13)
and 𝛼 denotes a cyclic frequency assumed to be known [START_REF] Oner | Cyclostationarity based air interface recognition for software radio systems[END_REF].

The performance at low SNR can be improved by using correlation-based Euclidean distance as proposed in [START_REF] Damavandi | Compressive Wideband Spectrum Sensing in Cognitive Radio Systems Based on Cyclostationary Feature Detection[END_REF].

Cyclostationary feature detection can detect signals with low SNR and above all to distinguish between a signal and noise. It needs some prior knowledge of the signal (Signal feature database of Fig. 34), such as symbol rates, modulation parameters. Moreover, it is usable for a single type of signal only, for another signal it will be necessary to readapt the parameters.

As for energy detection, cyclostationary detection performance can be further enhanced by increasing the number of averaged samples which reduces the capacity to detect short FH bursts. Moreover, it is at the cost of an increase in processing time and complexity as the

4 S

The signature feature algorithm, also called matched lter [START_REF] Zhang | Matched lter based spectrum sensing and power level detection for cognitive radio network[END_REF] is even more dependent on a priori knowledge of the signal being listened to than the former algorithm. It compares the received signal with a signature, this signature is a part of the received signal, known in advance, generally, the preamble, pilot or synchronization samples of a network stack. These samples are compared to the received samples using a correlation operation (3)(4)(5)(6)(7)(8)(9)(10)(11)(12)(13)(14), which are then compared to a threshold (𝜁) to determine the sensing decision. The threshold is dependent on the noise level of the received signal [START_REF] Lv | Matched lter based spectrum sensing and power level recognition with multiple antennas[END_REF], a schematic sketch can be seen in Fig. 345.

𝜁 = 1 𝐿 𝐿 ∑ 𝑘=1 𝑑 [𝑘]𝑥 * 𝑝 [𝑘], (3-14)
with 𝑑 the received vector samples of length 𝐿, 𝑥 𝑝 are the signature samples and 𝐿 the number of samples used.

The use of a static threshold can lead to less accurate results in low SNR situation, as for the previously mentioned techniques a dynamically selected threshold can enhance the detection performance [START_REF] Salahdine | Matched lter detection with dynamic threshold for cognitive radio networks[END_REF].

As for the cyclostationary (Section 3-2.1-3), a signature detector can only work for one type of network standard. To overcome this issue, the authors of [START_REF] Gholamipour | Recon gurable lter implementation of a matched-lter based spectrum sensor for Cognitive Radio systems[END_REF] have designed a recon gurable signature database, which can adapt to several di erent protocols. Hence, it requires perfect knowledge of the potential incoming radio protocols such as bandwidth, carrier frequency, modulation type, pulse shaping, and frame formatting. The complexity increases signi cantly when more protocols are supported [START_REF] Cabric | Implementation issues in spectrum sensing for cognitive radios[END_REF]. Another disadvantage of signature detector is their poor energy e ciency. If only the signature part of the received signal must be compared, computations will however be made on the whole received signal, inducing an energy waste.

It should be noted that this algorithm works only if a known signature is present which, for secure signals, is not automatically the case.

5 W

This method is similar to signature detection but uses the signal waveform as a signature instead of a part of the signal, which basically enables it to be used on signals that do not have a preamble or synchronization signals, as illustrated by Fig. 3456. Obviously, this method is only applicable to systems with known signal waveform, and is also called coherent sensing. The detection of a busy band is performed by comparing the received signal to the known waveform (3)(4)(5)(6)(7)(8)(9)(10)(11)(12)(13)(14)(15) and then a threshold is used to take a decision.

𝐸 𝑤 = 𝐿 ∑ 𝑘=1 𝑑 [𝑘]𝑊 𝑓 * [𝑘] , (3-15)
where 𝑑 is the received samples vector of length 𝐿, 𝑊 𝑓 the waveform model.

The waveform-based detection o ers better performance than energy detectors and outperforms its convergence time which is an important point to detect fast FH signals [START_REF] Tang | Some physical layer issues of wide-band cognitive radio systems[END_REF]. Furthermore, the 𝑃 𝑑 increases as the time slots are larger, but synchronization errors can

6 C

Table 3-1 compares the aforementioned narrowband detection algorithms and the Fig. 3-7 compare their complexity in accordance with their accuracy.

The energy detection does not require any a priori knowledge about the signal, which makes it simple and versatile because it can work on any signal. Its drawbacks are inability to distinguish signals from noise, and its poor performance in noisy conditions. Improved performance can be achieved by using covariance-based approaches, which share the qualities of the energy technique except that the computational complexity is much higher. Indeed, computations of the sample covariance matrix and its SVD are computationally intensive, and make them less suitable for real-time applications.

Cyclostationary detection can achieve good performance against noise, and can distinguish a signal from the noise, but at the expense of a low convergence speed, an increased complexity for long signals, vulnerability to time unsync [START_REF] Tkachenko | Cyclostationary Feature Detector Experiments Using Recon gurable BEE2[END_REF] and channel fading [START_REF] Sutton | Cyclostationary Signature Detection in Multipath Rayleigh Fading Environments[END_REF] and most importantly, the need to have some knowledge of the signal that it is able to identify. This makes it de facto non-universal.

Signature detector needs only a few samples to achieve a good detection performance, even in low SNR condition. Its main drawback, however, is that a priori knowledge of the signal is required, and based on the signal received, this knowledge can simply not exist making it un t for use.

Waveform-based detection is the most accurate method because of the coherent processing [START_REF] Tang | Some physical layer issues of wide-band cognitive radio systems[END_REF]. It is fast, o ers good performance against noise and is not so complex but like the others, knowledge of the signals is necessary.

In all cases, the use of a xed threshold leads to poor performance when the noise is not stationary and its variance is unknown [START_REF] Cabric | Spectrum Sensing Measurements of Pilot, Energy, and Collaborative Detection[END_REF].

For the acquisition of FH signals, our use case imposes the signals being unknown, therefore the use of methods requiring a priori knowledge on the signals is not an option, and a fast processing is also necessary, which means only the energy detection is a suitable choice. Among all the studied detectors, it is the one that o ers the lowest performance, which is quite normal because unlike the others, it is not optimized to detect speci c signals, but is more versatile. Our use case deals with the presence of multiple channels and not just one as proposed by narrow band detectors.

W

A narrowband detector cannot be applied to a signal consisting of several channels. As a matter of fact, narrowband detectors make a single binary decision for the whole spectrum and therefore is not able to di erentiate between channels that lie within the wideband spectrum. The evolution of radio protocols and radio hardware allows a greater availability of high communication rates over a large bandwidth. Therefore, it is more feasible to monitor a wide band of the radio spectrum with a single piece of equipment instead of an aggregation as required by narrowband detector. The majority of wideband detectors consists of dividing the sensed spectrum into several sub-bands and performing narrowband detection on each of them.

Wideband detectors (excluding the narrow band included inside) do not need to have any knowledge of the characteristics signal intercepted, but they all need to know the number of channels they can pick up. If this number is wrongly considered or if the channels are not correctly aligned, overlapping phenomena may occur, thus decreasing the detection performance.

In order to detect an FH signal e ciently over a wide band, a wideband detector is needed, some of the detectors presented hereafter will be used in thesis in order to perform benchmarks of FH detectors (see chapter 4). However, will only be selected those suitable for the constraints of our context, namely a low complexity (in order to be real-time) and a detection very close to blind detection of the FH signals (requiring the minimal information on the signals to be intercepted). The selected methods are those described in Section 3-2.2-2 to Section 3-2.2-4 namely: Multi-band joint detection, Filter bank detection and Wavelet detection.

It must be noted that the detectors which will be presented hereafter will comply with the Nyquist rate sampling, and the particular case of sub Nyquist sampling will be discussed in Section 3-2.2-6.

1 S

One naive approach easily applicable is to sweep across a frequency range of interest where we want to nd an FH burst. This method can be seen as consecutive windows obtained by changing the central frequency of the receiver. This method can easily be used in conjunction with a superheterodyne receiver, which does not require a large bandwidth. It is for instance used in spectrum analyzers as [roh], certi ed for TEMPEST security evaluation. However, such sequential-sensing approaches are ine ective for fast FH signals because they require longer times to sweep across the spectrum. Since they do not sample their whole detection band (unlike the method described hereafter), signal can be emitted just outside their current sampling windows.

2 M

Multi-band joint detection is after the sweeping detection the easiest and simplest form of detection and is described in Fig. 345678. The subband splitting and decimation is done in one step with an FFT [START_REF] Quan | Optimal Multiband Joint Detection for Spectrum Sensing in Cognitive Radio Networks[END_REF], which requires a number of channels equal to a power of 2 for a low complexity. Non-aligned FFT to the power of 2 are possible as long as all the prime divisors of the FFT length are small but the complexity of 𝑁 2 𝑙𝑜𝑔 2 (𝑁 𝐹𝐹𝑇 ) is not maintained.

The implementation of this method is detailed into the dedicated Section 3-3 as this is the method our real-time interception system is based on.

3 F

The lter detection (Fig. 3456789) uses a lter bank in order to separate the wideband signal into a xed number of narrower bands [F-B08]. The lter bank is made by shifting a low-pass prototype lter as many times as the total number of channels. The bank is then composed of lters with di erent shifted central frequencies thus creating a PolyPhase Network (PPN). In each narrower band, the corresponding part of the wideband signal is down-converted to baseband, then low-pass ltered and nally sent to an Inverse Discrete Fourier Transform (IDFT). Each signal is then provided to narrowband detectors which operate at low sampling rate (i.e., at baseband signal rate 𝐹 𝑏 and not at wideband rate 𝐹 𝑠 ).

4 W

The basic principle of using wavelets is based on subband separation using a Power Spectral Density (PSD), a wavelet transform is then applied to detect an occupied subband as shown in Fig. 3-12. The wavelet can be used in two di erent manners, namely as an AWGN signal detector or an edge detector. The rst method is based on the assumption that a wavelet transform applied to a AWGN signal will greatly reduce its magnitude, whereas applied to a non-pure AWGN signal it will reduce less its magnitude. This method is depicted in Fig. 3-13, with 𝐾 the temporal overlapping. A discrete wavelet transform [START_REF] Zhao | Wavelet transform for spectrum sensing in Cognitive Radio networks[END_REF] and a Savitzky-Golay ltering [START_REF] Capriglione | Analysis and implementation of a wavelet based spectrum sensing method for low SNR scenarios[END_REF] have been added to improve respectively computationally and noise resistance. We can see that for each channel, an energy estimation is performed before and after the transformation, and the H 0 or H 1 decision is given by observing the energy di erence. This method has been used throughout the di erent benchmarks of Chapter 4. The other use of the wavelet is an edge detection algorithm, i.e., using wavelets to detect sharp variations in an image, where the related image corresponds to the time-frequency representation from successive PSD. A sudden change in the PSD indicates either an impulse noise or a received radio burst, thus indicating that an FH channel is being used [START_REF] Kumar | Proc. Improved wavelet transform based edge detection for wide band spectrum sensing in Cognitive Radio[END_REF]. Detecting the edges allows characterizing the time and frequency position of an FH burst. However, this kind of technique requires a lot of computation, much more than the previous presented method, making it impractical for real-time use.

5 M

Machine Learning (ML) has an interest that grows year after year as the possibilities o ered are so numerous and is becoming more and more popular in signal processing. Their aim is to identify the presence of signals in a channel by formulating the process as a classi cation problem in which the classi er can be supervised [START_REF] Wang | An novel spectrum sensing scheme combined with machine learning[END_REF]

[Din13] [Nie17] [Mik14] [Par07] or unsupervised [Cla11] [Che17] [Li16] [Bka11] [Li10]
, and has to decide between H 0 or H 1 for each frequency channel.

Supervised ML build a mathematical model from a set of data called training set, which contains both the inputs and the desired outputs associated with each input set. In this type of learning, classes are de ned from the start. Several learning classi ers can be used as K-nearest neighbors [START_REF] Mikaeil | Machine Learning to Data Fusion Approach for Cooperative Spectrum Sensing[END_REF] , Support Vector Machine (SVM) [START_REF] Ding | Kernel-Based Learning for Statistical Signal Processing in Cognitive Radio Networks: Theoretical Foundations, Example Applications, and Future Directions[END_REF] [Mik14], Bayesian [START_REF] Nie | Byzantine Defense in Collaborative Spectrum Sensing via Bayesian Learning[END_REF] [Mik14], random forest decision tree [START_REF] Wang | An novel spectrum sensing scheme combined with machine learning[END_REF] [Mik14] or hidden Markov sequences [START_REF] Park | HMM Based Channel Status Predictor for Cognitive Radio[END_REF].

Unsupervised ML has no a priori data of the classes and will build them by itself as the entries are provided. Non-parametric approaches can be used like K-means algorithm [START_REF] Clancy | Robust Signal Classi cation Using Unsupervised Learning[END_REF], self-organizing maps [START_REF] Cheng | Selforganizing map-based scheme against probabilistic SSDF attack in cognitive radio networks[END_REF] or naïve Bayes [START_REF] Li | Achieving secure spectrum sensing in presence of malicious attacks utilizing unsupervised machine learning[END_REF]. However, other learning methods can be used such as game theory-based learning [START_REF] Li | Dynamic spectrum access for cognitive radio systems with repeated games[END_REF] or reinforcement learning [START_REF] Bkassiny | Distributed Reinforcement Learning based MAC protocols for autonomous cognitive secondary users[END_REF].

The subject of ML is extremely vast, and the applicable methods are so numerous that it could be the subject of a dedicated chapter. However, these methods have in common a high complexity and the need to have a strong computational power at disposal. Moreover, it is necessary to have representative signal data in order to have an accurate training which is impossible if we try to intercept unknown FH signals.

6 S N

Albeit not being the sampling technique used in this thesis, several detectors use a signal sampled at a rate lower than that required by the Shannon-Nyquist theorem. These detectors use compressed sensing (or sparse sampling) to sample a signal faster than the Nyquist rate. Through kernel optimization, the sparsity of a signal can be exploited to reconstruct it from fewer samples than required by the Nyquist-Shannon sampling theorem. This recovery is carried out by multiplying the input samples by a speci c kernel, which if correctly chosen allows an error-free reconstruction in terms of Mean Square Error (MSE), but this is done under two requirements [START_REF] Donoho | For most large underdetermined systems of linear equations the minimal 1-norm solution is also the sparsest solution[END_REF]:

-The input samples must be sparse (the spectrum is not lled), this is usually the case when there is one FH signal in the spectrum being monitored, but if multiple signals and interferers are present then this condition is not necessarily met.

-The kernel must satisfy restricted isometry property or have a small mutual coherence to guarantee recovery with the smallest error [START_REF] Donoho | For most large underdetermined systems of linear equations the minimal 1-norm solution is also the sparsest solution[END_REF].

Although this method allows to reduce the number of samples to be processed, thus making the calculations faster (because it is possible to reduce the bandwidth needed to observe a signal), several major disadvantages exist. First, the sparsity level of wideband signal varies over time, the kernel must be corrected accordingly and so the number of measurements to make. This is a problem for an optimized architecture because it requires either an adaptative design or to pessimistically choose the number of measurements. It also requires to have a priori knowledge about the signals contained in the spectrum. Since the sampling frequency is lower, an error will have an impact on more samples after the recovery, which ultimately reduces the performances at low SNR. Finally, the performance is sensitive to design imperfections.

M FH

Our objective is the continuous observation, detection and extraction of FH signals over a wide band (> 100 MHz) and the analysis of the presence of an internal side-channel. The nal goal is to have a portable system, which would be placed near a Device Under Test (DUT) or in a sensitive area. Then, the complete (or only a part of) spectrum will be analyzed and any abnormal FH signals (not authorized or showing a side-channel) will be reported. Due to the bandwidth and time constraints (the detection of an abnormal signal must be reported quickly and not after several hours of calculations), a real-time detector must be used. The algorithm must therefore be fast and not too complex to be used leveraging hardware accelerators. The nature and parameters of the FH signal being unknown, the method to be used should not resort to a priori data.

An exception is made on the number of channels which is considered as known, but it is rather to de ne the number of detectable frequency bands. Several FH channels can be present within the same detection band, as long as only one FH signal is active at a time within the same detection band, the detection and extraction of red signals will not be impacted.

For all these reasons, a multi-band joint detection algorithm with an energy detector has been chosen as our detection algorithm. In particular, two versions have been developed based on the same principle but with 2 di erent processing hardware (General Purpose Processor (GPP) and FPGA/GPP) which will be developed in the next sections.

A

Our algorithm, in addition to detecting frequency hopping channels, must also extract the information within the identi ed channel. Its operating principle is composed of standard telecommunication operations (linear owgraph) as seen in Fig. 3-14, and is composed of three parts:

-A time synchronization part, its purpose is to realign the time-frequency grid in time, in order to improve the performance of the detector (because of averaging, the performance decreases with desynchronization). This step will be more developed in 3-3.2. The output of this block is a bu er d aligned in the T/F grid on which is applied the channel detector.

-An FH channel detector part estimates which channel is used. The detector is based on the instantaneous periodogram, averaged by the repetition factor 𝜆 (𝜆 = 𝑇 𝑠 𝑁 ). This can be e ciently implemented by means of Fast Fourier Transform (FFT) if 𝑁 is a power of 2.

Considering the input d [𝑘],

the associated estimated channel index p is expressed as:

p = arg max 𝑝∈[0;𝑁-1] 𝜆-1 ∑ 𝑙=0 𝑁-1 ∑ 𝑚=0 d [𝑙𝑁 + 𝑚]𝑒 -𝑗2 𝜋𝑚 𝑝 𝑁 2 .
(3-16)

-A channel extraction part, given the chosen index (linked to the central frequency by f𝑝 = p𝐹 𝑠 𝑁 ) is used in the derotor that shifts the modulated channel into baseband:

dBB [𝑘] = d [𝑘]𝑒 -𝑗2 𝜋 𝑘 f𝑝 𝐹𝑠 . (3-17)
The ltering stage lowers the rate of the detected signal from 𝐹 𝑠 to 𝐹 𝑏 . If the correct FH channel has been chosen, and assuming an ideal ltering operation, the resulting signal is baseband message 𝑏.

The number of detectable channels is de ned by 𝑁, which also de nes the bandwidth assigned to each channel by 𝐹 𝑠 /𝑁, the 𝜆 averaging allows improving the performance at low SNR, however, this is done at the expense of short FH burst detection. Compared to the standard de nition of a multi-band joint detection, the energy detectors placed at the output of each channel are not independent but linked and there can be only one channel detected at a time.

A joint detector decreases the false alarm 𝑃 𝑓 , since in our use case, the detection system is either placed next to a device to be tested, or placed in a secure area where no radio signals should be allowed. The highest energy received is assumed to be from the listened device or an illegal signal.

T

The purpose of this section is to describe the synchronization method. As shown in Fig. 3-14, this algorithm is placed upstream the FH detector and is only used at the beginning of the interception process as the synchronization delay 𝜏 is assumed to remain constant. It takes the complex baseband samples as inputs and provides the estimation delay τ. To achieve a fast synchronization algorithm (running at 𝐹 𝑠 ), a limited complexity is required and, thus, methods using maximum likelihood [START_REF] Ko | ML-based frequency estimation and synchronization of frequency hopping signals[END_REF], wavelet transform [START_REF] Sirotiya | Detection and estimation of frequency hopping signals using wavelet transform[END_REF] or machine learning [START_REF] Zhang | Sparsity analysis of FH-BPSK signals via K-SVD dictionary learning[END_REF] cannot be used. The proposed algorithm relies on Fourier transform to detect the signal hop with a high time resolution.

1 S

To keep a simple reception architecture one can want to use the FFT [START_REF] Sorensen | E cient computation of the short-time fast Fourier transform[END_REF] as used by the FH detector. Its size is equal to the number of channels 𝑁 (with eventually zero padding to achieve a required power-of-2). However, the time accuracy is quite low as the resolution is directly linked to the FFT size, and the detector will not be able to detect a hop with accuracy smaller than 𝑁 samples (in the best case, without noise). This time resolution can be problematic when the burst duration is very short (i.e., small values of 𝜆 are common in TRANSEC scenario). In order to increase the time accuracy, the proposed approach relies on a sliding Discrete Fourier Transform (sDFT). It computes a new spectral transform for each incoming sample as expressed in (3)(4)(5)(6)(7)(8)(9)(10)(11)(12)(13)(14)(15)(16)(17)(18). To lower the complexity overhead of the sliding approach, a sDFT is used instead of a sliding FFT (sFFT) as it reuses the previous outputs (while a sFFT recalculates the full transform for each sample) in a recursive manner. Moreover, the recursive calculation does not require 𝑁 to be a power-of-2 as with FFT radix-based implementation.

𝐷𝐹𝑇 [𝑘 + 1] = 𝑒 2 𝑗 𝜋𝑘/𝑁 𝐷𝐹𝑇 [𝑘] -𝑑 [𝑘 -𝑁] + 𝑑 [𝑘 + 1] , (3-18)
with 𝑑 the received samples and 𝑁 the DFT width.

From the raw output of the sDFT, additional post-processing is required to extract a delay estimation. The full algorithm is described in the next part. The synchronization step has a higher complexity than the FH detector. However, the detector has to be used for the whole interception process (in a real-time manner) while the delay estimation block only has to be used once, at the start of the interception.

V C c V C a M C m C C o

2 A

Algorithm 1: Delay estimation --Evaluate the bin index of current channel used for each sample

for 𝑘 = [1 : 𝜆𝑁 × 𝐿] do 𝑆 ← |𝑠𝐷𝐹𝑇 (𝑑 [𝑘])| 2 𝑉 [𝑠] ← arg max(𝑆) end for V [𝑘] = 1 𝛼 × 𝛼-1 𝑙=0 𝑉 [𝑘 + 𝑙] --Evaluate
the shift in the bin index, generate the associated pool and x detected outliers Based on the expression of the received signal in (3)(4), the purpose is to nd τ. As the received signal 𝑑 [𝑘] is sampled at 𝐹 𝑠 (with 𝑘 the sample index), we want to nd the sample delay index T de ned by:

𝑀 [𝑘] = | V [𝑘] -V [𝑘 -1]| 𝐶 0 ←
T = 𝜏 × 𝐹 𝑠 .
(3-19)

The delay estimation step will process 𝐿 × 𝜆𝑁 samples of the signal 𝑑 [𝑘] where 𝐿 is the number of slots used for the synchronization. Estimating the synchronization delay τ (or a synchronization index T = τ × 𝐹 𝑠 ) can be done by detecting each hop. Indeed, a hop occurs when 𝑘 veri es:

𝑘 = 𝑙 × (𝜆𝑁) + T , ∀𝑙 ∈ [0; 𝐿 -1], (3-20)
and 𝑑 [𝑘] is expected to face at most 𝐿 hops. The proposed algorithm estimates the used channel with a high time accuracy and deduces the synchronization delay τ. This value will then be used by the time alignment block.

The algorithm is sequential and is divided into three main stages described in Algorithm 1. The rst stage intends to extract the used channel for each incoming sample. The second stage estimates the hop locations and removes noise artifacts. Finally, the last stage gathers all the hop indexes and estimates the ne time delay estimation T . An illustrative chronogram of the di erent algorithm variables is depicted in Fig. 3-15. In this simulation, the parameters are 𝑁 = 80 and 𝜆 = 2 (leading to a hop duration of 𝜆𝑁 = 160 samples) and a SNR of 0 dB. The sample delay index is set to 𝑘 = 110 and 𝐿 = 9 bursts are used for the delay estimation.

As discussed in Section 3-3.2, the rst step applies the sDFT and associates each sample with the channel with maximum energy in 𝑉 [𝑘] (i.e., for each sample, the position of the maximum of the sDFT) depicted in green in Fig. 3-15. As this row estimation can strongly be a ected by the additive noise, V [𝑘], the sliding average of 𝑉 [𝑘] with a depth 𝛼, is computed (blue curve). The alpha parameter can be adjusted according to the impulse noise contained in the signal, a large alpha will decrease the noise but will increase the convergence time and therefore decrease the performance. However, too much noise will also decrease performance. A trade-o must be done according to the received signal (in our case 𝛼 = 𝜆𝑁 4 ).

A hop is de ned as a variation in the channel index and can be primarily obtained from the instantaneous derivative 𝑀

[𝑘] = | V [𝑘] -V [𝑘 -1]| (violet curve).
If the channel index remains constant, the derivative is equal to zero. Thus, a hop can be de ned as the end of a non-zero area of 𝑀 [𝑘]. It should be pointed out that we have areas (several consecutive terms of 𝑀 [𝑘] di erent from zero) instead of peaks as the derivative is computed from V, the sliding average of 𝑉. The obtained hop locations are then gathered in a pool 𝐶 0 . There are, however, some cases where hops are not detected properly, and some additional processing (outliers correction) has to be done. The next step is thus to correct outliers data to transform the initial pool 𝐶 0 into the new pool 𝐶. The basic principle of this algorithm is based on the regular occurrence of hops (the time slots are all the same size). The algorithm will try to nd the most probable hop grid, to do so it performs several successive analysis of the signal to deal with the di erent particular cases. Data contained in the pool can be of two types, correct 𝐶 𝑐 or outliers. Moreover, there can be three types of outliers: i) 𝐶 𝑎 denotes the presence of too close hops (with respect to the expected duration expressed in (3)(4)(5)(6)(7)(8)(9)(10)(11)(12)(13)(14)(15)(16)(17)(18)(19)(20) ). These hops will then be aggregated to form a single hop in the pool (orange dashed lines). ii) 𝐶 𝑚 denotes the absence of a hop which is either due to the successive use of two nearby channels drown in noise or to the re-use of the same channel. In this case, the missing end hop is generated in the pool (orange dotted lines). iii) 𝐶 𝑜 denotes the presence of a hop out of the hop grid: this can be due to impulsive noise or reception of a third-party signal. In both cases these hops will be discarded from the pool (black dashed lines). Fig. 3-15 clearly shows that both the sliding average (transition from green to blue curves which removes most unwanted artifacts as for instance around sample 350) and the outlier correction improve the detection. The outliers 𝐶 𝑎 and 𝐶 𝑜 have been successfully detected and extracted and the missing hops 𝐶 𝑚 have been generated. At the end, the hop position can be extracted in the pool 𝐶 = 𝐶 𝑐 ∪ 𝐶 𝑎 ∪ 𝐶 𝑚 (black circles).

The nal step consists in arranging the hop positions in 𝐶 in chronological (i.e., ascend) order. As the elements in 𝐶 should follow (3-20), a linear regression is carried out to obtain the delay estimation T as the Y-intercept. Finally, this value is used by the time alignment block to obtain the signal used in the FH detector in (3-16) with:

d [𝑘] = 𝑑 [𝑘 -T ].
(3-21)

The performance of the synchronization will be evaluated in Chapter 4 Section 4-2.1.

A

The algorithm presented here above is functional but it has room for improvement. In fact, it follows a classical owgraph sequence composed of independent blocks performing a speci c function: channel detector, derotor, ltering, delay estimation, etc. The rst improvement is based on joint estimation and detection and is re ected in the DFT-Bin Extraction (DFT-BE) algorithm which merges some blocks in order to gain in speed (Section 3-3.3-1), then the FFT-Bin Extraction method (FFT-BE) will be presented (Section 3-3.3-2). The latter one is not an improvement of the DFT-BE version but rather the adaptation of our basic algorithm to the FPGA programming paradigm. In the following, the various simulations and experiments will be performed using these two versions and not the original proposition.

1 DFT B E

The DFT method (which estimates the FH channel) requires that some processing is carried out at a high rate (at 𝐹 𝑠 ). An optimization can be done (the Fig. 3-16 depicts this change) at the expense of some functionality loss, placed in the derotor and decimation steps. If the FH detect block instead of issuing the channel index p uses its energy (the value of the spectrum bin at the channel index p) decimation and ltering are implicitly performed and so the derotor, ltering 𝐹 𝑠 to 𝐹 𝑏 ltering and decimation can be removed. However, the output channel can only be 𝐹 𝑠 /𝑁 𝐻𝑧 wide, while the previous method could adjust the bandwidth as desired. Furthermore, if there is a shift in frequency of the time-frequency grid, this correction can no longer be done in the derotor stage but must be done either by a new block or by directly changing the central frequency of the radio. In spite of these apparent aws, this method has the huge advantage of being able to handle high throughputs. Moreover, it does not imply any additional cost in complexity but a simple adjustment at startup which can easily be done within an SDR.

2 FFT B E

Our system is constrained by real-time use. For example, considering 16-bit IQ samples, a standard 1 gigE could only withstand 25 MS/s, a 1 line PCI-Express 50 MS/s. It is necessary to use a 10 gigE link to reach 200 MS/s which is the capacity of the radio we will use. At this speed, the data rate reaches 800 MB/s. For these throughput requirements, an FPGA-based acceleration is used, whose principle and design is described in the Chapter 5. A DFT allows choosing precisely the number of channels but it is di cult to implement e ciently on an FPGA, for this reason a xed size FFT will be used (more channels can be detected as 𝑁 < 𝑁 𝐹𝐹𝑇 , in our case 𝑁 𝐹𝐹𝑇 = 1024). An aggregation of bin can be done on host side to get back to 𝑁 channels.

In addition, the 𝜆 averaging has been removed in order to be able to detect fast hops. The averaging removal makes the system less sensitive to desynchronization so that the synchronization stage can be removed without signi cantly a ecting the detection performance. However, the eventual spurious noise will not be ltered anymore.

The system is then greatly simpli ed as shown in Fig. 3-17. As well as the detector which can be expressed as:

p = arg max 𝑝∈[0;𝑁 𝐹 𝐹𝑇 -1] 𝑁 𝐹 𝐹𝑇 -1 ∑ 𝑚=0 d [𝑁 𝐹𝐹𝑇 + 𝑚]𝑒 -𝑗2 𝜋𝑚 𝑝 𝑁 𝐹 𝐹𝑇 2 . (3-22)
It should be noted that the number of channels of the FH signal and the one provided by the detector are not forcefully identical, as well as their respective bandwidth. However, this does not prevent the proper detection of the FH signal as long as the alignment and channel width are adequate.

D FH

No time sync requirement

Very short burst detection

Low SNR capability

Robust to spurious

Computation requirement DFT-BE FFT-BE Filter bank Wavelet Table 3-2 -Comparison between the benchmarked detectors.

As discussed in the previous section, there are several ways to detect frequency hopping signals, each with its own detection performance, complexity and data requirements. However, we have a speci c use case that imposes to design a speci c algorithm. Our system must be able to operate in a real-time system with a large bandwidth, it must be able to di erentiate several channels, and this without knowing in advance the signal to detect and nally the FH signal is supposed to be of higher energy than the noise and possible interferes. In the following, four algorithms (Wavelet, HDFT lter bank, DFT-BE, FFT-BE) capable of wideband detection without prior knowledge of the signal will be studied, a short comparison is made in Table 3-2 taking into account the requirements of synchronization, detection sensitivity, noise performance and complexity. An in-depth study with benchmark will be conducted within the Chapter 4, with the goal of characterizing their performance under various situations, in order to determine which one works the best.

available BT devices and a more secure case corresponding to a TRANSEC context. The performance will be evaluated on two aspects, rstly the ability to detect and follow an FH transmission and secondly the ability to extract hidden data within this transmission.

First of all, a context of side-channel will be given by specifying the scope of study related to the present work. Next the performance of the synchronization system will be evaluated in Section 4-2.1, then the ability to detect channels in Section 4-2.2 and nally the retrieval of red signals in Section 4-3. The performance will be evaluated in simulations using the Julia language [START_REF] Bezanson | Julia: A fresh approach to numerical computing[END_REF], in order to control all parameters, such as noise level, time-frequency sporadicity, waveforms, red signal and its associated mixing scheme. A side-channel signal is the mixture of a regular data (black signal) with a con dential illegitimate data (red signal) and can be modeled in several ways depending on its source (see Fig. 4-1). In this thesis, we consider that the black signal carrier frequency follows a frequency hopping pattern and the red signal is combined with the black signal (baseband) in an additive way. This model corresponds to a large majority of observed TEMPEST side-channels. The mixing with the black signal is proportional with the factor ℎ:

S

𝑏[𝑢] = 𝑏 𝑏 [𝑢] + ℎ × 𝑟 [𝑢], (4-1)
with 𝑏 𝑏 [𝑢] the baseband signal, 𝑟 [𝑢] the red signal and 𝑢 the sample index. The signal 𝑏[𝑢] has a normalized energy, which ensures an equivalent energy level between the di erent scenarios.

Moreover, the red signal studied in this thesis, when injected intentionally (in simulations and in part of the real target tests) takes the form of an audio test pattern, similar to the one used in security audits.

A side-channel is characterized by a slight presence of the red signal. Indeed, they are mainly due to a hardware design aws and therefore appear at low power levels (the modulation factor ℎ is typically lower than 0.01). Also in a logical way, if the leak was important then it would have strongly impacted the normal operation of the device where it occurs and therefore would have been corrected at the device design stage or the device would not be functional.

The systems for recovering a red signal must be accurate (in the sense of avoiding rounding o during the computation of the slight presence of the red signal). They also must have enough bandwidth to capture all possible channels, and be able to process the necessary bandwidth.

Our proposed system has two stages, namely channel detection and red data recovery. The following sections focus on the evaluation of these two stages by considering rst only the channel detection and then in a second phase the extraction of the red signal after having undergone the channel detection.

D

The detector evaluation can be characterized in two ways, the ability to perform proper time synchronization and the actual detection of a used FH channel. These two aspects will be discussed respectively in the Section 4-2.1 and Section 4-2.2. For the purpose of the simulations (and only them), the parameters of the signal to be intercepted will be assumed to be known to precisely estimate the impact of the various parameters.

I

The synchronization algorithm de ned in Algorithm 1 (Chapter 3) aims to detect the hop events (but without knowing on which channels they are located) in order to compensate the delay 𝜏. It is to be noted that only the algorithms which carry out an average over 𝜆 require a synchronization, because their purpose is to prevent the error due to the fact that a hop occurs inside the averaging window. Therefore, they will be applied to the DFT-BE but not to the FFT-BE. Indeed, the DFT-BE detector uses an averaging of width de ned by 𝜆 and 𝑁 and thus operates on a window of 𝑁𝜆 consecutives samples. If a hop occurs, i.e., the samples fed to the detector are located over two distinct channels, this would obviously lead to an error as only one channel is chosen over the whole duration of 𝑁𝜆 samples (equal to 𝑇 𝑠 ).

The performance of the detector is evaluated in terms of Channel Error Rate (CER), de ned as the probability that the estimated channel index p di ers from the e ective channel index 𝑝. The error is estimated for each sample, so an error is applied for each window p. By estimating the error for each sample and not at each window it is possible to compare fairly detectors with di erent window sizes. Fig. 4-2 shows the CER versus the Signal-to-Noise Ratio (SNR) de ned from (3-4) as 𝜎 2 𝑥 /𝜎 2 𝑛 with 𝜎 2 𝑥 the variance of the mixed signal de ned in (3-1). This CER is computed for various values of 𝜆 and di erent synchronization errors Δ 𝜏 . The time synchronization error is de ned as the delay error normalized with the slot duration, i.e.:

Δ 𝜏 = |𝜏 -τ| 𝑇 𝑠 . (4-2)
The simulation parameters are 𝑁 = 80, 𝐹 𝑠 = 80 MHz and 𝐹 𝑏 = 1 MHz. The value of 𝜆 is associated to slot duration from 2 𝜇s (i.e., very short, 𝜆 = 2 in purple) to 200 𝜇s (𝜆 = 200 in blue). We have also depicted the case 𝜆 = 625 (in green) which corresponds to the Bluetooth case. It shows that the DFT-BE detector is more resistant to the noise for high values of 𝜆, as the noise is averaged in (3)(4)(5)(6)(7)(8)(9)(10)(11)(12)(13)(14)(15)(16). Fig. 4-2 shows that the required ne synchronization is linked to the slot duration. In the meantime, one can say that a synchronization error lower than 15% of the slot duration leads to a small performance penalty (less than 3dB). This value is useful to know the minimum synchronization accuracy required by the synchronization stage.

The performance of the algorithm 1 is then evaluated by simulation on a TRANSEC-like signal with short slot duration. The simulation parameters are: 𝑁 = 80, 𝐹 𝑠 = 80 MHz, 𝐹 𝑏 = 1 MHz and the slot duration are equal to 𝑇 𝑠 = 2𝜇𝑠 (𝜆 = 2). The performance is assessed in terms of synchronization error de ned above. Fig. 4-3 shows the synchronization performance according to 𝐵, the number of slots used to estimate the time delay. Performance is given for di erent SNR. Results show that synchronization is possible with only 5 hops. Besides, the accuracy is improved until 20 hops where a oor is observed. As the complexity of this processing increases with the number of slots used, we point out that the value of 20 used slots is a good trade-o between synchronization accuracy and computation time. The synchronization error is at this stage below the target of 15% (see Fig. 4-2). It should also be noted that these results can be extended to higher values of 𝜆 with comparable results.

CER

This section objective is to characterize the performance of the channel detectors (DFT-BE, FFT-BE, PPN and wavelet) in terms of CER under di erent situations:

-sample delay (residual synchronization error), -various black signal modulations, -various time slots and detectors averaging. Two use cases have been de ned; rst a simple case corresponding to the Bluetooth Low Energy (but with various black signal modulations) and a second more complex one corresponding to a TRANSEC transmission case (this type of transmission is not standardized and is corresponding in our case to a fast signal with many channels) whose parameters are given in the Table 4-1. The FFT-BE will not be simulated (unless in Section 4-2.5) because the operating principle is identical to DFT-BE and the performance of the FFT-BE can be approximated with a DFT-BE (with 𝐾 = 1). A CER below the threshold of 10 -2 will be considered su cient for an interception in the case of an adequacy between the number of channels of the detector and the generated signal For all simulations unless speci ed, the signal is in perfect synchronization with time-frequency grid (i.e., no CFO, no delay, the time slot 𝑇 𝑠 , baseband frequency 𝐹 𝑏 and number of channels 𝑁 are known), the time slot multiple 𝜆 equal the averaging factor 𝐾, the baseband signal 𝑏 is a sine wave with no red signal injected. The scales of gures axes for each section are identical to facilitate comparison. For the following gures, some curves are pooled and the legend is then common for all the combined graphs.

I

The delay represents a shift of the time-frequency grid in time and basically means that the detectors can receive samples from two di erent channels during the same processing windows. So, at each hop there will be samples that are labeled with the wrong channel p. This leads to the creation of high SNR error plateaus which can be seen in Fig. 4-4. The CER plateaus value can be estimated to 𝛼 𝑑𝑒𝑙𝑎𝑦 𝜆 where 𝛼 is 𝑚𝑖𝑛( 𝑁 𝜆 , 𝜆 𝑁 ).

This benchmark shows that the PPN and DFT-BE algorithms have very similar performance while the wavelet has a much lower performance. The di erence between TRANSEC and BLE is a 16 dB loss in performance. It should be noted that the plateau phenomenon is only due to averaging, lowering the 𝜆 will decrease this phenomenon, and cancel it in the case of the FFT-BE which does not use it (at the price of CER penalty due to the absence of averaging).

I

The modulation of the black signal as well as the addition of the red signal a ects the overall waveform of the FH signal and can therefore alter the detection performance. In fact, the detectors observe rapid changes in frequency energy, if the waveform smooths out the channel boundaries then it will take longer for the algorithm to detect a signi cant change. An exploration of the waveform parameters is performed considering three black signal modulations: GFSK, BPSK and without modulation (which corresponds to a pure sine). For the rst two, the baseband message is a random binary sequence. The signal 𝑏[𝑘] has a normalized energy, which ensures an equivalent energy level between the di erent scenarios. An addition of red signal is made as described in Section 3-1 with various modulation indexes.

Fig. 45shows the e ects of exploring these parameters with a BLE scheme (a parallel between BLE and TRANSEC will be made in the next pool of gures), we see that once again the PPN and DFT-BE are very close and the wavelet has lower performance. For both BPSK and no modulation, there is little di erence between the performance when changing ℎ. However, cases where ℎ index is greater than 0.1 have been plotted to check that interfering with the baseband signal has consequences on the detector even if it would not correspond to a realistic side-channel. Fig. 4-6 shows a comparison between the two FH signal scenarios through the three waveforms, the ℎ index has been xed at 0.01 in order to have a realistic value. It is quite obvious that the more complex TRANSEC scenario has a much lower performance than the simple case, the results are very close between PPN and DFT-BE with the exception of the complex scenario where DFT-BE does better. As seen for the BLE, the GFSK gets lower detection performance in TRANSEC.

The PPN and DFT-BE are very close in performance and the wavelet has lower performance. In addition, the performance decreases as ℎ increases in particular with a GFSK modulation. Since the GFSK has a slower time variation than the others, its detection takes a longer time and therefore more errors are due to the longer convergence time. where the averaging window is longer than the FH slot (i.e., 𝜆 𝐾 > 𝜆) have been removed as the algorithm would work in an inaccurate range. The closer the averaging to the slot duration, the better the performance for the PPN and DFT-BE and ideally we should have 𝜆 = 𝐾. It is less the case for the wavelet, while the FFT-BE having no internal averaging there is no change for this algorithm, and it is for this very reason that these performances are not as high as for the DFT-BE. When 𝜆 is high, the signal hops less often and consequently there are fewer errors due to convergence time. Moreover, the performance of the FFT-BE being only dependent on 𝜆, the performance can be quali ed by 𝐶𝐸 𝑅 = 𝑁 𝐹 𝐹𝑇 10×𝜆×𝑁 2 (with 𝑁 𝐹𝐹𝑇 the number of FFT bin) when the errors are only placed at the transitions (the 10 factor is due to the convergence time as a multiple of 𝜆 of the FFT-BE). The case of the FFT-BE is particular because the sample window is not synchronized with 𝑇 𝑠 as it is shown in the Fig. 4567. For recall, an estimate of p is given per window (so each sample of the window has the same p). A hop (the dotted lines in the gure) can happen in the middle of the processing window. The estimation of the CER being done for each sample, there will be a large number of errors that will be simply due to the fact that the processing window and the baseband 𝜆𝑁 window do not match. This problem is not present with synchronized algorithms like DFT-BE.

I

The evaluation of the di erent algorithms shows that the wavelet based detector achieves poor performance and is therefore not a viable choice for a real-time use (due to its high computation requirement), so this algorithm will be dropped for the next benchmarks. The DFT-BE and PPN algorithms have a similar and acceptable performance. However, the computational complexity of the DFT-BE is much lower than the PPN, which makes the DFT-BE a better choice for our use case.

R

The nal goal of our algorithm is the detection of red signals, which requires the detection of channels beforehand. This section is dedicated to the evaluation of the ability to extract a red signal. Since the signal extraction is placed after the channel detector, a bad estimation of p will lead to a loss of samples containing red data, the nal results will be in uenced by both the red extraction performance and the FH channel detector. The red signal is the same as in Section 3-2.4, speci cally, an audio test pattern consisting of a succession of pure tones of 28 ms at frequencies 250 Hz, 450 Hz and 750 Hz. In this section, three algorithms will be evaluated, the PPN and DFT-BE as seen before but also FFT-BE described in the Section 3-3.3-2.

E

In order to estimate the performance, we need to have an estimator of the quality of the received red signals. As the audio test signal is made of several single tones, several methods are available: an ear test, as used in some security audit, spectrum analysis or degradation estimation methods as used in audio processing algorithms. The goal is to have, by knowing the original audio signal, an estimate of the degradation undergone and to have a global quality estimator.

1 H

Using the human ear is the simplest and quickest form of audio quality estimation but lists several disadvantages [START_REF] You | Perceptualbased quality assessment for audio-visual services: A survey[END_REF]. First it is a subjective test depending on the listener and his/her concentration level, second it is not an automated version, third it requires a large number of listeners. Of course, the precision is not high and the quality of the estimation is quite coarse. Generally, the human ears estimation is a discrete value between 1 and 4.

2 D

The direct frequency analysis corresponds to the estimation of the red signal level by observing the recovered signal spectrum at a precise frequency, depending on the red signal that we want to detect. The estimated level is either an SNR or a Total Harmonic Distortion (THD) [START_REF] Shmilovitz | On the de nition of total harmonic distortion and its e ect on measurement interpretation[END_REF]. These methods are fast and simple; however, the signal can slightly shift in frequency in the recovery process (or due to carrier frequency o set of the radio front end for instance) and therefore a realignment mechanism is needed in order to compensate the shift. It works well at high SNR but at low SNR, this realignment can miss the signal and match with a noise peak and thus completely skew the results.

3 P E A

The Perceptual Evaluation of Audio Quality (PEAQ) is a ITU-R standard (BS.1387 of 1998) widely used in audio processing quality evaluation. It is based on the perception of the human ear to evaluate the degradation between two signals (one is the reference signal without any degradation and the other is the degraded signal). Its main processing steps are de ned in Fig. 456789.

First a weighted spectrum of 2048 points is computed, then a normalization respecting the frequency sensitivity of the ear is carried out. The signal is then convolved with the standard frequency response of the external and middle ear, before the internal ear model is added through the addition of noise. The 2048 samples are then partitioned into 109 channels with a Bark lter [START_REF] Smith | Bark and ERB bilinear transforms[END_REF], allowing for frequency spreading. For each channel, a time spreading is performed, then a parameter estimation and Model Output Variable (MOV) are calculated (this corresponds to some feature extraction suitable for audio degradation), and their combination thanks to a neural network allows for the estimation of the Objective Di erence Grade (ODG). This nal value is between 1 and 4 and de nes the degradation, 4 for an undegraded signal and 1 for a severely degraded signal. The PEAQ is functional and accurate in the case of low degradation, which corresponds to high quality audio signal impaired by lossy compression associated with audio codecs. However, it fails in presence of signi cant impairment, and among other things can estimate a high ODG when the tested signal is white noise. Furthermore, it fails drastically with impairments that are caused by sample losses [START_REF] Khalifeh | Perceptual evaluation of audio quality under lossy networks[END_REF], and unfortunately this error will be frequent with each channel detection error in our application. Thus, this would not invalidate the side-channel and prevent audio content from being recovered.

The PEAQ should not be mistaken for the ITU Perceptual Evaluation of Speech Quality (PESQ) that works only for voice, our audio test pattern does not follow the characteristics of a human voice and the results will not be correct with this method.

A nal argument against PEAQ is that it is not open source and requires a license to use, however a Matlab version exists [START_REF] Kabal | An examination and interpretation of ITU-R BS. 1387: Perceptual evaluation of audio quality[END_REF] but this one is not from ITU but by a researcher who replicated the concept and shows similar ODG values compared to the licensed version.

4 V S O L

The Virtual Speech Quality Objective Listener (ViSQOL) is an open source alternative to PEAQ [START_REF] Chinen | ViSQOL v3: An Open Source Production Ready Objective Speech and Audio Metric[END_REF]. It is intended to be used in the same conditions and also uses the speci cities of the human hearing to operate. This estimator has been chosen to estimate the red signal quality recovered through the qualities that will be described below. For the use on FH extracted signals, the last steps of ViSQOL have been modi ed and its principle is given in Fig. 4-10. This modi cation only takes into account speci c frequency bands related to the test pattern used and has been renamed Selected Bands Opinion Score (SBOS) to avoid confusion with the original version. The algorithm starts by adjusting the power level between the two signals to be tested against, extract a spectrum but only generates 30 bands. On each of these bands, a temporal and frequential adjustment is made in order to match the two signals to be compared, then an Neurogram Similarity Index Measure (NSIM) [START_REF] Hines | Speech intelligibility prediction using a Neurogram Similarity Index Measure[END_REF] is made. This step corresponds to use a computational model of the auditory periphery (like PEAQ) to extract similarities between the signals. However, unlike the PEAQ which only outputs a degradation index for the entire spectrum, the ViSQOL does this for each of the 30 bands. In the original version, a Support Vector Regression (SVR) Mapping using a pre-generated model is used to obtain an ODG. The modi ed version will select the three bands corresponding to our test signal, average them and remove the estimated noise level based on empty bands (they are empty only in our speci c case).

5 C

To summarize, several methods to detect the red signal quality are available and are compared in Table . 4-2. However, as we have seen, the SBOS method is the most suitable for our application and will be used in subsequent work. It should be noted that obviously if the nature of the red signal changes, then the estimators will have to be changed, only the direct frequency analysis could be used for other signals than audio ones.

As the SBOS scale is not standard nor known, the quality readings can be analyzed as shown in the Table 4-3. The important element of these values is the threshold of 0.1 where the signal is considered audible and side-channel can be exploited.

In order to allow a ner comparison between the algorithms, mechanisms allowing improving the quality of the extracted audio signal is not used. The signal is, on the other hand, ltered and decimated (by a factor 41 for the BLE and 3 for the TRANSEC, but this last one having narrower FH channel bandwidth decreases the extracted noise). Adding an audio reconstruction system would add the performance of the reconstruction process to our benchmark and therefore will not be adequate to estimate the performance of the interception alone.

The remaining section objective is to characterize the performance of the red signal recovery in terms of SBOS under di erent situations:

-sample delay (residual synchronization error), -various waveform, -various time slot and detectors averaging, -various time sporadicity. The impact of the delay (see Fig. 4-11) is similar to that observed with the CER analysis, i.e., a delay leads to a loss of channels and therefore of red data. However, a slight di erence can be observed in the BLE case where the time slot is quite long. Indeed, the losses are more limited and there is no signi cant di erence between a delay of 20 and 200 samples. As opposed to the TRANSEC case where a 200 samples delay does not allow to cross the threshold of audibility of 0.1 (to put in perspective a Bluetooth signal has 50 000 samples per 𝑇 𝑠 while the TRANSEC has only 1 024).

I

The most interesting information that emerges from these curves is the resilience of the FFT-BE method to the time delay. It even obtains better performance than the DFT-BE method in some cases although its CER performances are inferior. The method presented here does not use a synchronization mechanism, so averaging over 𝐾 does improve CER performance but does not improve audio reconstruction performance, which con rms the earlier statement in Section 3-3.3-2 to not include synchronization on the FFT-BE version embedded in an FPGA. One explanation of this behavior is that the FFT-BE gives a better estimate of p per 𝑇 𝑠 and while in general there is more errors, these errors are short and of smaller impact. The ltering and decimation stage used to extract the red signal are consequently able to reconstitute the signal more reliably.

I

The study of the waveform in Fig. 4-12 reveals a multitude of information, rst of all the higher the mixing index ℎ the better the red signal is recovered. This is normal as the index does not a ect the CER performance signi cantly for the BPSK and without modulation. Additionally, increasing the power of the red signal leads to better reconstruction. The BPSK only su ers a loss of 3dB compared to no modulated signal with CER. In the case of SBOS there is a big di erence in terms of performance. BPSK performs better in audio recovery while its performance in CER is inferior compared to no modulation.

A higher mixing index ℎ increase the red quality at the end of the recovery step. The GFSK obtains very good performance compared to the other black modulation, while its performance in CER is very inferior. This strengthens the statement that good performance in CER does not necessarily means good performance in red recovery. The results shown here involve only the TRANSEC scheme however similar results are obtained for the BLE case. An averaging does not bring a strong gain of performance, the duration of a time slot has, on the other hand an impact on the performance, in fact the less there are hops the less there is misdetection (due to the convergence time of the algorithms). DFT-BE and PPN are again more e cient at low SNR thanks to their averaging, while the FFT-BE method has better performance at high SNR.

I

I

Finally, the last benchmark deals with temporal sporadicity. It represents the fact that the FH signal may not emit anything during some time slot. This point was not addressed for the CER because it did not make sense to estimate the detection performance when there is no signal to detect. Time sporadicity has been modeled in our case as a duty cycle where the FH signal is present for a given number of 𝑇 𝑠 (On 𝑇 𝑠 in Fig. 4567891011121314) and then disappears for a xed period (O 𝑇 𝑠 in Fig. 4567891011121314). Obviously, increasing the duration between two FH transmissions decreases the performance because the red signal cannot be recovered, however, increasing the duration when the signal is active does not signi cantly increase the performance and a single 𝑇 𝑠 regularly is su cient to recover a signal. 106

Conclusion on benchmarks

The DFT-BE and PPN get much better performance at low SNR with the BLE but their performance decreases, even reaching the FFT-BE with TRANSEC. The latter has no major change in performance between the various scenarios when the duty cycle is high, and a slight decrease in the other cases.

C

The di erent simulations have been useful to characterize the di erent algorithms. Firstly, the performance of the time synchronization is known, notably the number of samples required to have a su cient time synchronization in order to make the DFT-BE working in acceptable condition. The various CER benchmark showed that the wavelet implementation is not very e cient.

The lter bank PPN and DFT-BE algorithms have very similar performance even if the DFT-BE is slightly more accurate in both CER and SBOS. In terms of number of computations, the lter bank is, however more demanding than its DFT-BE counterpart.

The FFT-BE revision which is designed for real-time use and therefore loses some features compared to the DFT-BE such as averaging, has relatively good performance in SBOS, and this despite the fact that its performance in CER is not outstanding. The cases for which the DFT-BE is better than the FFT-BE are however in special cases and not very realistic (for example a synchronization to the exact sample).

The various benchmarks showed that the performance of CER alone is not su cient to estimate the performance in the TEMPEST context, because it does not give any insight on the ability to reconstruct information. SBOS is di cult to compute but gives a level of threat (associated to red data extraction) that CER does not. Moreover, a better performance in CER does not necessarily give a better performance in SBOS (see the performance compared of the DFT-BE and FFT-BE in Fig. 45678). It is therefore important to evaluate the parameters, another kind of red data will lead to the use of a di erent estimator than SBOS but the CER will still be valid.

To conclude, the FFT-BE o er a very good compromise between performance, noise and desynchronization resistance. This con rms our choice to use it in practice in our interception system which will be presented in detail in the following chapter, with its features, implementation constraints and, of course, the developed solution. This chapter aims at highlighting the potential of SDR use in TEMPEST scenario, especially in an FH context. By utilizing the SDR processing capabilities and the various processing acceleration capabilities, this chapter will illustrate the possibility of acquiring a 200 MHz bandwidth and processing it in real-time using the FFT-BE algorithm described in Section 5-3.3-2. To begin, an introduction to SDR is made in Section 5-1, and a special attention will be paid to the notion of high-throughput data processing and to the means to achieve it. We introduce the two-language problem which can be addressed with the Julia language. The question on how we can program such device is discussed in Section 5-2. Finally, the implementation choices of the FFT-BE algorithm will be presented in the Section 5-3.

C

ON THE USE OF SOFTWARE DEFINED RADIO FOR TEMPEST

It should be noted that our radio has a di erent bandwidth between the radio front end (160 MHz) and the associated DAC (200 MHz). The processing being carried out through the samples provided by the latter, we will refer to a bandwidth of 200 MHz because it is actually the rate of the processed samples, although only 160 MHz contain useful signal.

S 1.SDR

Radio telecommunication systems were originally built on the basis of ASICs, i.e., specialized circuits that could only handle a single application [START_REF] Chinnery | Closing the gap between ASIC and custom: tools and techniques for high-performance ASIC design[END_REF]. These circuits have the advantage of being very e cient in energy and in silicon surface because each etched component is necessary and none is unnecessary, unlike a GPP that has some functionality that will potentially never be used by an application. However, there are several major disadvantages: rst, the design of such a system is very expensive in terms of both human development costs and factory costs, which require the manufacturing of a lot of ASIC in order to become cost-e ective. The design is xed during the design process and the slightest mistake in the design requires the replacement of some of the photolithographic masks [START_REF] Schwartz | Chemical etching of silicon: IV. Etching technology[END_REF]. Finally, the system is also non-evolutive and each modi cation (for example to handle a new waveform) will require redesign and new masks.

In order to overcome these problems, several researchers had the idea to use the new capacities of the computer science to create recon gurable radio systems: the software-de ned radio. The rst reference of this type of radio is from 1985 with a team of Texas Division of E-Systems Inc. with a digital baseband receiver that has been published in their E-Team company newsletter [START_REF] Johnson | New Research Lab Leads to Unique Radio Receiver[END_REF]. The receiver was equipped with an array of processors that performed adaptive ltering for interference cancellation and demodulation of broadband signals. This system was a receiver only and therefore not a complete radio transceiver.

It is in 1993 with Joseph Mitola that the concept of SDR is given [START_REF] Mitola | Software radios: Survey, critical evaluation and future directions[END_REF]. SDR is the generic terminology that depicts a exible digital signal processing architecture with very high recon guration capabilities, by using as few analog components as possible and by locating the digital/analog conversion stage as close as possible to the antennas. A system of this nature o ers several advantages:

-An SDR can be used for di erent applications -A design error can be quickly corrected -Prototyping can be easily done -It is easy to upgrade the functionality -Functionality through IP blocks can be easily exchanged between various projects reducing development time -The systems created can be exible and adapt themselves to their environment (this is also called cognitive radio [START_REF] Mitola | Cognitive radio. An integrated agent architecture for software de ned radio[END_REF])

The primary goal of SDR is to shift as many blocks as possible into the digital domain (mixers, lters, modulators/demodulators, detectors or error correction . . . ) in order to use programmable devices. An ideal SDR structure can be seen in Fig. 5-1. In this representation, the signal is directly converted at the transmitter and receiver antenna by respectively a Digital to Analog Converter (DAC) and an Analog to Digital Converter (ADC). Such architecture delegates all the processing requirements to programmable digital components (such as GPP). However, the digitization of the signal on the antennas requires ADC and DAC technologies with a high sampling rate (for instance minimum 5 GS/s if you want to operate with WiFi), it is also required to have components that can handle the incoming data ow at a high rate. In addition, GPP-based SDR implementations exhibit some limitations compared to ASIC counterparts. Indeed, ASIC designs are highly specialized and are therefore able to achieve higher throughput while consuming several orders of magnitude less power compared to GPP.

In order to ease the pressure on the digitization stage, the SDR only monitors a part of the radio spectrum. For this purpose, a lter and a mixer connected to a Local Oscillator (LO) are used to lower the frequency of the signal [START_REF] Robert | Architecture and ltering requirements for fully digital multi-radio transmitters[END_REF]. Two architectures are possible to obtain the baseband IQ samples in the desired band: Zero Intermediate Frequency (ZIF) and Low Intermediate Frequency (LIF). In ZIF receiver, the analog signal is mixed to baseband and two converters directly sample the I and Q data of the signal centered on DC (a parasitic noise is present at 0 Hz, i.e., in the middle of the band). A problem that can happen is that since the mixer LO tone lands at exactly DC, any DC leaks of the LO will bleed-through the mixer and becomes DC in the digitalized signal (the so-called DC O set). The LIF receiver brings the signal to a so-called intermediate frequency before it is lowered again (see Fig. 5-2). This step reduces the design constraints of the rst stage frequency descent (which allows to realize it in a less accurate way) because the signal will be reprocessed thereafter. In the same way the DC spike of the LO can be erased at the 2nd descent in frequency which does not produce DC spike if it is realized in digital within an SDR. The LIF structure leads to image frequencies issue, which requires the synthesis of high-performance intermediate lters to cancel them [START_REF] Valkama | Advanced I/Q signal processing for wideband receivers models and algorithms[END_REF].

The rst stage of frequency decrease is usually applied in "Radio front end" and the second stage is included in the same hardware part or can be in the "Digital front end" with a Digital Down Converter (DDC)/ Digital Up Converter (DUC). A di culty of the radio front end part is that it has to work over a wide bandwidth and be completely uniform, i.e., having the same sensitivity and noise rejection over the whole applicable spectrum. This speci city makes SDR at a given frequency noiser than a pure ASIC radio because it is complicated to have a uniform response. To compensate that, some radios have more precise response for speci c frequencies in order to have better performance on widely used frequency bands (e.g. ISM bands, telephone bands).

H

The high computational demands of data processing in an SDR, as well as the energy e ciency issue have led to supplementing GPP with various accelerators in order to unload them from part of the treatments. These accelerators are less universal than the GPP, but they can be used in many di erent ways, making them usable in a variety of applications [START_REF] Dardaillon | Software de ned radio architecture survey for cognitive testbeds[END_REF]. Several hardware accelerations can be used and some of them blur the boundary between SDR and radio ASIC:

-Multi GPP: This solution is not really a dedicated device but rather the addition of several GPP linked together. Instead of a single GPP, several GPP can indeed be used in parallel, where each one takes care of a prede ned task. Multi-core systems can also be used instead of several individual GPP but all these systems must respect the principles of distributed programming [START_REF] Glossner | A multithreaded processor architecture for SDR[END_REF].

-Digital Signal Processor (DSP): are derived from GPP where some signal processing operations have been accelerated, for example operations like a multiplication followed by an addition are performed in one clock cycle instead of several as in a conventional GPP. DSPs commonly use custom memory architectures that can retrieve multiple data or instructions at the same time. In addition, DSP programs are generally more nely optimized (because they are used for highly optimized tasks) and have hand-optimized assembly-code libraries to maximize the use of the hardware instead of relying on the compiler to handle essential algorithms parts [START_REF] Lee | Implementation of DSPbased digital receiver for the SDR application[END_REF]. Programs created for a GPP will work on a DSP but the other way is not always true due to hardware optimizations.

-Graphics Processing Unit (GPU): as their name implies, these processors were initially created for graphics processing but can also be used in similar tasks to image processing, i.e., matrix processing, parallel equalization or ltering. These processors are e cient for highly parallel tasks that require high memory throughput but their e ciency and usefulness is greatly reduced for other types of operations [START_REF] Kim | Implementation of an SDR system using graphics processing unit[END_REF]. In general, GPU are 5 times faster than GPP and 3 times faster than DSP [START_REF] Grayver | Implementing Software De ned Radio[END_REF].

-ASIC: for some tasks requiring high performance, an ASIC accelerator can be used. These accelerators are highly specialized and are generally reserved for the complex tasks often encountered in designs as DDC/ DUC, standard protocol decoder (which will never be modi ed), Ethernet management used to connect the SDR with the outside [START_REF] Chen | Relaxed 𝐾-Best MIMO Signal Detector Design and VLSI Implementation[END_REF].

-FPGA: these circuits have the quality of computational performance and parallelism of an ASIC (while being less e cient in power consumption and speed) but having the ability to be rewired. Their programming is more extensive than for a GPP and it is possible to perform exactly the same tasks [START_REF] Rodriguez | Model-based softwarede ned radio(SDR) design using FPGA[END_REF]. It is therefore possible to avoid having a GPP in an SDR but only an FPGA. FPGA are di erent from GPP in the execution of their tasks. A GPP executes instructions linearly from memory and can easily switch from one function to another without slowing down the processor and does not require additional resources. In an FPGA, all functionalities are mapped to dedicated circuits and each new function requires more FPGA resources and can in some cases require a downgrade of the operating frequency.

As we have seen, there is no device that is better than the others, but each one has its advantages and weaknesses. A method to get the best out of it is to associate several of them and distribute the tasks to the di erent accelerators according to their a nity and the performance required for the application. This approach is adopted in the ZU28DR RF System on Chip (RFSoC), which combines a large FPGA with integrated ASIC hardware accelerators, a four-core ARM as the DSP accelerator and a dual-core ARM as the core GPP. This architecture is for example used in the SDR X410 [labc].

P

Programming SDR requires skills in embedded system programming because the SDR are generally compact with limited resources but also High Performance Computing (HPC) in order to sustain heavy computation load. SDR have some particularities, their programs are usually real-time, the data throughput can be important and the latency of the processing must be low.

1 D

Programming an SDR is generally done through a owgraph, the samples arrive in a processing block, are processed and then sent to the next block, which is similar to a pipeline architecture as seen in a CPU. Each block performs a single task e.g. ltering, decoding, symbol remapping. . . Some control data link the block signals indicating that a block is ready to receive data or ready to send data. In practice, for architectures with independent processing blocks (e.g. ASIC, FPGA) or when a block is implemented in a separate device an actual link connects the blocks to each other but for GPP or GPU the blocks are executed sequentially. FIFO are sometimes inserted between blocks to act as a bu er in case a block had a delay.

The di erent blocks can also be implemented with a centralized architecture that replaces the point-to-point connections between blocks with a shared point. This point can be a data bus (bus-centric), a processor (processor-centric), or a device (device-centric). This approach allows for greater exibility and control (which only needs to be implemented in the central part), it is possible to have several identical processing blocks and the data will be routed to the block with the greatest availability, a rapid change in data ow is possible by routing the packets to new blocks, whereas in the case of the point-to-point version, this requires a link to be foreseen in advance.

However, this kind of architecture has an important problem that all data have to go through the central point which can lead to bottleneck and slow down the whole data ow. Direct Memory Access (DMA) engine can be used in some cases to reduce the load of the central point. DMA is a feature that allows some hardware subsystems to access the memory of another device without going through its associated processing unit (CPU, GPU . . . ).

2 C

Latency constraints: The radio works in real-time, which means that it processes the data faster than it arrives (i.e., sampling rate < processing rate). Increasing latency (due to jitter) can lead to cache over ow or data overwriting due to lack of memory capacity. For bandwidths below 1 MHz, GPP are commonly used but for higher bandwidth accelerators or FPGA based systems are to be preferred, not because GPP cannot handle the data fast enough but rather because they will have a too high energy consumption to be used [START_REF] Grayver | Implementing Software De ned Radio[END_REF].

It should be noted that while latency is a constant delay which is therefore perfectly deterministic, jitter is a non-deterministic delay (but which can be bounded) which depends on events external to the task for example the execution of tasks in parallel on the same GPP, drop in network tra c overload).

Because of real-time operation required by a telecommunication system, response time (due to latency and jitter) is a major concern in SDR, the processing performance can be increased by operating with blocks of data, rather than on one sample at a time which can lead to an increasing latency. In cases where an SDR is built with a GPP at its heart, an operating system is used which can entail a jitter when handling interrupts and context switching for di erent threads. The jitter can exceed 10 ms on a Windows system but real-time operating systems such as VxWorks can achieve jitter below 1 ms [START_REF] Grayver | Implementing Software De ned Radio[END_REF]. Another latency to take into account is the data link between the di erent components, the radio part and the processing part are not in the same chip and need a link, as well as between the di erent accelerators. This latency is of 240 𝜇s with USB [START_REF] Schmid | An experimental study of network performance impact of increased latency in software de ned radios[END_REF], under 10 𝜇s for 10 GbE [START_REF] Feng | Performance Characterization of a 10-Gigabit Ethernet TOE[END_REF], under 100 𝜇s for 1 GbE [START_REF] Hughes-Jones | Performance of 1 and 10 Gigabit Ethernet cards with server quality motherboards[END_REF], up to 150 𝜇s for General Purpose Memory Controller (GPMC) (used between a FPGA and a GPP in some SDR) [START_REF] Truong | Latency Analysis in GNU Radio/USRP-Based Software Radio Platforms[END_REF] or 7 𝜇s with Peripheral-Component-Interconnect-Express-Bus(PCIe) [START_REF] Li | Evaluating Modern GPU Interconnect: PCIe, NVLink, NV-SLI, NVSwitch and GPUDirect[END_REF].

Strictly speaking, latency is not a problem for a real-time system because the data will be processed but with a delay. However, it is a problem for a communication system because it entails a delay between the reception of a message and its reply. In the case of communication protocol, this delay is quite short for example it is 10 𝜇s for WiMax, and within this period the data must be digitized, sent to the appropriate devices, processed and returned to the transmitter. Because of this issue, it was not possible to use an old SDR for WiFi communication because the link between the radio and the GPP was too slow.

Throughput constraints:

The data throughput is also to be taken into account, it becomes important as the bandwidth increases. For example, considering a 16-bit transceiver (8 bits per IQ channel) the raw data rate, i.e., without the di erent link overheads and metadata (timestamp, error, performance report, RSSI . . . ) can be seen in the Table 5-1.

To give a rough idea, a USB 2 link only holds 8 MHz, 61 MHz for its USB 3.0 version, a standard 1 GbE Ethernet link in all modern devices can only support a bandwidth of 25 MHz, for larger widths it requires a 10 GbE Ethernet or multiple PCIe lane. We can also see that with a high bandwidth, the storage of data alone is complex because it is necessary to nd a storage medium capable of withstanding the throughput (the best as of 2021 is Seagate FireCuda 520 Gen4 with 4.3 GB/s [Sea] which is not su cient to register a 5G FR2 data link) and that a real-time processing is to be preferred.

One di culty in programming SDRs is the multitude of languages. In the case of a GPPbased system everything can be done with a single language, but in the case where accelerators are used, a new language per accelerator category is typically the case. Also, each language has its own programming logic, an FPGA is not used like a GPU. This requires either a person with expertise in several languages or a team of several people. There are also languages dedicated to rapid prototyping and algorithmic development for example Matlab which allows to produce a working system quickly but not optimized and which is later translated into a more e cient language.

Radio bandwidth

Raw data throughput 15 kHz (standard radio music channel) 234 kB/s 100 kHz 1.5 MB/s 1 MHz (Bluetooth channel) 15 MB/s 22 MHz (Wi-Fi channel) 336 MB/s 100 MHz (whole ISM 2.4 GHz band)

1.5 GB/s 200 MHz (5G 3.4 GHz band) 3 GB/s 640 MHz (LTE-Advanced Pro)

9.5 GB/s 800 MHz (5G frequency range 2)

11.9 GB/s

Table 5-1 -Raw IQ data weight for standard radio bandwidth.

There is then a two-language problem, namely developing in a high-level language, fast to write and easy to debug, and then transcribing what has been developed in a low level language, harder to write but more e cient. This requires more development time to achieve the program, but this problem can be solved by using a language that is fast to write and easily optimizable, and this is the subject of the following section.

T SDR

The two-language problem expressed in the above statement can be solved with the Julia language. The purpose here is not to present the language itself, and the interested readers can have a look at [START_REF] Bezanson | Julia: A fresh approach to numerical computing[END_REF] or [START_REF] Bezanson | Julia: Dynamism and performance reconciled by design[END_REF], but to rather give insights on why it is suitable for SDR prototyping. This section aims to present this language and to compare its performance with other languages applied to signal processing.

L SDR

Julia is a programming language whose syntax is really close to scripting languages (for instance Python or Matlab) but that o ers performance similar to compiled languages as it is compiled through LLVM [START_REF] Lattner | LLVM: A compilation framework for lifelong program analysis & transformation[END_REF] and so works for various platforms. The Just In Time (JIT) compilation and the Multiple Dispatch (MD) feature bridge the gap between on one side interactivity and code concision (required for easy exploration and prototyping) and on the other side e cient compiled code (for good runtime performance). In this thesis, an open-source tool dedicated to SDR prototyping in Julia language has been developed: AbstractSDRs.jl.

1 M

What it is: Julia has been built around several key ideas. The main one is to propose a compiled language with multiple dispatch, meaning that a function can be dynamically dispatched based on the runtime type of its argument, and not statically at compile time nor considering all possible argument cases. Each function will be optimized based on these arguments and the optimization will be kept in memory for the future calls of the function with the same type of arguments.

Why it is important: For performance. MD is the baseline of Julia language and it has been demonstrated that Julia uses it more than other languages [START_REF] Bezanson | Julia: A fresh approach to numerical computing[END_REF]. It allows to have high performance while keeping the code execution paths tight and minimal. In our scope, it will also ensure the support of many di erent SDR binding through a common Application Program Interface (API) while being sure that appropriate function call is done, and this, at runtime. The second key advantage is the possibility to e ciently use xed point processing [START_REF] Bezanson | Julia: A fresh approach to numerical computing[END_REF] which is an often-used output ADC format.

2 D

What it is: the typing of code is determined by the ow of data through it. It means that the code is applied to types and not to the associated values. Note that the types can be concrete, and, as it is stated in [START_REF] Bezanson | Julia: A fresh approach to numerical computing[END_REF], ability to concretely type code is closely related to being capable to properly execute performance-critical code.

Why it is important: For performance. One can write e cient loops, that will be automatically unrolled and vectorized at compile time. It particularly eases the prototyping as e cient code does not require intensive optimization. This is particularly an advantage for SDR as we will often have to cope with bu ers (i.e., data signals). With the use of this kind of e cient loops, e ortless porting of computationally intensive processing can be achieved.

3 C

What it is: In Julia, C and Fortran functions can be directly called without any additional glue code. It means that calling low-level C function requires no code generation nor additional compilation.

Why it is important: For portability. It has two key properties. First, it will ease the use of heavily optimized functions (already written in those languages) as bindings. Well known and established libraries can thus be easily ported to Julia. This is for instance the case of the FFTW library associated to FFT [START_REF] Frigo | FFTW: An adaptive software architecture for the FFT[END_REF]. Secondly, as most of the SDR drivers are written in C language, it will also pave the way for the integration of SDR bindings in Julia without any performance penalty. Note that, albeit not being incorporated in the base of Julia, external packages exist to exploit other languages such as C++ and Python, extending the scope of potential available libraries.

4 M

What it is: Julia supports di erent architectures. Regarding GPP, it allows to use Julia on both x86 and ARM. Due to the use of LLVM compilation engine, it is also possible to compute Julia code on GPU leveraging the use of co-processors [START_REF] Besard | E ective extensible programming: unleashing Julia on GPUs[END_REF].

Why it is important: For scalability. SDRs have many di erent architectures and the same Julia code can be run on these di erent devices. For instance, some devices are based on ARM Cortex A9 with 32 bits architecture on which the long-term support of Julia works. In addition, as Julia is also very e ective on parallelization (with the same code enhanced through macros), one can envision to use the same code as for high-level simulations on computation grid as real-time processing on embedded SDR.

5 P

What it is: Julia language o ers easy integration with a strong ecosystem of plots (with various backends such as ones from Python or GR) and the possibility to create Web applications with custom parameters (such as sliders, database exploration. . . ). It means that a custom web app can be easily deployed based on the core calculation (which is computationally e ective) and a limited number of external packages dedicated to web app porting (namely Interact.jl and Blink.jl).

Why it is important: For interactivity. Albeit not being as powerful and exible as Gnuradio with the Gnuradio companion initiative, this kind of integration is a precious tool for prototyping. Indeed, it allows to have e cient and rapid tools for monitoring, exploring and debugging data. On the other hand, it also paves the way for simple yet functional demonstrators for dissemination or pedagogical purposes.

I

A SDR .

We introduce here a common API to monitor several di erent SDR architectures. Each radio type is managed by its own sub-package and a master package (AbstractSDRs.jl) is dedicated to the gathering in a common interface. This kind of nested package architecture guarantee both exibility (each sub-package can be independently modi ed) and extendibility (other packages can be added afterwards). The package is fully open source and the current version can be found here [START_REF] Telecom | AbstractSDRs -Common API for Software De ned Radio[END_REF]. In particular, the proposed approach is capable of monitoring, con gure and transmit/receive samples:

-with Universal Software Radio Peripheral (USRP) from Ettus Research. These SDRs are immensely popular and several radios with various architecture (FPGA-based, ARMbased) can be monitored through the use of a special API: USRP Hardware Driver (UHD).

In the proposed approach, the sub-package UHDBindings wraps the C API in order to use all functions de ned in the low level interface. In AbstractSDRs.jl we propose two di erent binding options. The rst one UHDBindings.jl wraps the C level API proposed by Ettus. It allows a simple yet powerful interface with Julia but it cannot leverage use of custom FPGA IP through RFNoC (see Appendix B). To address this, we have also incorporated the RFNoc.jl package that directly wraps the C++ code to be able to use instantiate crossbar graph [START_REF] Braun | RFNoC: RF network-on-chip[END_REF] and thus use custom FGPA blocks.

-with Analog Device Active Learning Module Pluto (ADALM-Pluto), an SDR proposed by Analog Device that uses a cortex A9 and the well-known AD9361 as the transceiver.

The proposed sub-package AdalmPluto.jl uses some low-level C bindings of the driver supplied by Analog device (IIO library).

-with data exchange between a host computer and a remote computer (sub-package SDROverNetwork.jl). This interface requires a Julia session with AbstractSDRs.jl and is done through the use of ZeroMQ sockets in order to con gure the radio from the host PC and send/receive the samples. This has two key advantages: i) allowing e cient use of SoC-based SDR with x86 or ARM (for instance the case the embed series of the USRP e.g. USRP e310/e320) ii) enforcing the scalability of the proposed approach with tree-based SDR network topology.

-with RTL-SDR dongles. Contrary to the other proposed packages, the RTLSDR.jl subpackage has not been proposed by the authors but has been incorporated into the master package.

All these di erent use-cases are encapsulated in a common API in AbstractSDRs.jl which can pave the way for an easy switch on di erent radios for prototyping. It is also to note that extension on other SDR support is quite straightforward thanks to the module encapsulation and MD.

1 A SDR

To better stress the prototyping through code concision, we present here a simple example written in Julia code that opens a radio, con gure it and get samples. We also compute the square modulus of the FFT as the processing unit. The code example is depicted below: # Waiting for <ctrl-c> from user @info "Getting interruption"; end # ---Close the radio close(radio); end Several important remarks can be made. The speci c SDR targeting is done through the symbol :sdr. Then, when instantiating the SDR, ; is used to add special keyword arguments.

These arguments are optional and can be used for speci c parameters associated to the SDR (e.g FPGA bitstream path, radio IP address,. . . ). Third, processing part leads to extreme code readability while ensuring very good runtime performance (see Section 5-2.3). Finally, note that the code proposed in the example is the more readable but not the more e cient as there are allocations at every loop (in bu er and FFT).

Several optimizations can be done when calculating the square modulus as described in next Section. It is preferable to pre-allocate processing array such as the input radio bu er and uses recv!(buffer,radio) with FFT pre-allocation (using FFT plans [START_REF] Frigo | The Design and Implementation of FFTW3[END_REF]). It means that writing high-level code in Julia may not directly lead to high performance. However, code optimization (i.e., to increase throughput) can be directly done in Julia language (through some well-known performance tricks such as pre-allocation, unrolling loops and SIMD use [START_REF] Mitra | Use of SIMD Vector Operations to Accelerate Application Code Performance on Low-Powered ARM and Intel Platforms[END_REF] with Julia macros), making transition from prototyping to high performance fast and straightforward.

Finally, the proposed ecosystem has been extended with application-oriented packages, related to spectral analysis (with AbstractSDRsSpectrum.jl) or FM radio receiver (with AbstractS-DRsFMReceiver.jl).

B

In this section we propose some performance evaluation using the proposed approach and compare it to other classical approaches used in the literature.

1 B

For this we choose to compare the performance o ered with the Julia-based AbstractSDRs.jl package against C++ and Python. For a fair comparison, the following important statements have to be done:

-Performance is compared in terms of output rate after processing. For every language, the number of samples processed in a given amount of time is counted to deduce the rate (or throughput). This obtained rate is a function of the incoming rate from the SDR and in an ideal case one should obtain exactly the same rate at the output of the SDR and the output of the processing block.

-The proposed approach has been tested with the use of an SDR X310 from Ettus Research as it allows the maximal instantaneous bandwidth of 200 MHz. This SDR o ers at max 200 MS/s which is high enough to discriminate the di erent approaches. Indeed, with the use of narrowband SDR (such as RTL-SDR) the performance di erence can only be seen with extensive computational overhead which is not the case of the proposed micro-benchmarks.

-Performance is compared with C++ (low-level high-performance language) and Python (high-level language with concise semantic). Note that we have not added the Gnuradio approach as the processing blocks should be written in C++ (using SWIG) nor the Cython approach as they fall into the two-language problem we have stated beforehand.

-All the codes have been evaluated using one thread for both sample acquisition and processing, and the -O3 ag for compilation (C++ and Julia). We also have used di erent optimizations for C++, Python and Julia described afterwards.

-Rate performance is achieved by Monte Carlo simulations with 20 independent runs of 10 seconds (more runs would not a ect the result). All the code used for the benchmark (in all languages) and versions associated to the used modules can be found here [START_REF] Lavaud | AbstractSDRsBenchmark repository[END_REF].

-Sliding average of the square modulus of the FFT is considered as the processing. The sliding window is rectangular with 16 samples. For the three languages, the FFT is computed with the use of FFTW with the same compilation ags (and same output rate). Di erence between the languages lies in the implementation of the square absolute, how the sliding mean is implemented and the memory management (where each run has to process roughly 30 GB of IQ stream due to the large bandwidth benchmarked).

2 C

We de ne four versions of the code, the initial one L0 and three optimization levels (namely L1, L2 and L3). These three optimizations levels are independent and will be sequentially applied:

-L0 corresponds to the rapid prototyping (e.g the minimal code version that allows a proper processing chain). Note that it approximately represents 100 lines in Julia, 200 in Python and 380 in C++.

-L1 corresponds to L0 with algorithmic optimizations namely by removing boundary checks in for loops, using bu er pre-allocations and expliciting for loops for square absolute and sliding average.

-L2 corresponds to L1 with optimization on memory side and corresponds to use of low-level containers for bu ers (i.e., continuous indexing arrays). -L3 corresponds to L2 with optimization on processor instructions and corresponds to the use of SSE and AVX vectorial instructions [START_REF] Karrenberg | Whole-function vectorization[END_REF] on the two for loops (absolute value and sliding average).

As additional notes, L2 cannot be fully applied on Python and L3 vectorization has been incorporated through the use of JIT via Numba.

3 C

We evaluate the bene ts of the proposed versions in Fig. 5-3. In this gure, no radio has been used in order to point out the maximal achievable rate.

Regarding C++, the main gain has been achieved with the use of static arrays (i.e., L2). The L3 vectorization can help to reach the maximal rate of 1.245 GS/s. It is also clear that the main bene t obtained with Python is based on the JIT engine (i.e., L3). Regarding Julia, all the optimization tricks equally help to increase the throughput. The optimized rate in Julia (1.231 GS/s) is comparable to C++ but with less development time to L0 and easier application of optimizations (i.e., from L0 to L3).

4 B X310

We now include the SDR and we depict in Fig. 5-4 the performance obtained with the use of the X310. The output rate (i.e., after processing) in samples per second is evaluated versus the rate provided by the SDR which explains the lower rates encountered compared to Fig. 5-3. Worst performance is obtained by Python L0 code as expected. Julia without any optimization performs better than Python (with a very similar syntax) but is far from C++. Without any optimization, the three languages do not reach the 200 MS/s limit. When they come to the highest optimization level, both C++ and Julia achieves the maximal rate. It is not the case of Python (albeit being JIT compiled).

Note again that higher performance can be achieved in Python using double language (Swig or Cython) but it is not the purpose of the experiment done here and would largely increase the time to development.

As a side note also, concerning speci cally the Julia way, it means that there is no visible penalty induced by the use of our bindings as predicted.

Finally, albeit writing high-level code in Julia may not directly lead to high performance, code optimization (i.e., to increase throughput) can be directly done in Julia language with the use of macros. It makes rapid and straightforward the transition from prototyping to high performance allowing the language to address real-time high bandwidth processing.

FFT BE

The FFT-BE is a version of our interception algorithm applied to real-time processing and designed to run at a high throughput while using realistic hardware resources (i.e., a standard computer and its hardware accelerator). The purpose of the end of this chapter is to highlight the constraints encountered during the development and how they were overcome in order to reach the actual design.

L GPP

The choice of language has a major impact on the performance but no matter what the language is, it will necessarily be limited by the hardware on which it is executed. Although the Julia program can run the core (the most computationally intensive part) of the FH detection process at more than 1 GS/s, as seen in Fig. 5-3, the maximum throughput is limited to 200 MS/s due to the maximum sampling rate of the radio DAC.

However, the performance can be altered by other components in the ow and creates what is called a bottleneck (i.e., the speed of the chain is restricted by its slowest element). It must therefore be considered a series of additional components that must support the throughput such as: Ethernet devices, operating systems, Ethernet stack or data integrity checks performed between exchanges. . . Although it is possible to achieve the processing throughput of the radio using a soft-only chain with Julia (the reception of IQ and their packaging in an Ethernet stream is done by an FPGA), performance drops may occur unexpectedly due to other programs running on the same host which may prevent the processing of some samples. It also uses large part of the CPU capacities which de facto reduces the capacities to derive intensive complementary red signal decoding (processing of the recovered red information).

From a security point of view, it has already been observed that an attacker has in ltrated a GPP based system, to tamper its operation. Succeeding in in ltrating an SDR based communication network would allow an attacker to get all the information that passes through it. Tampering an FPGA based system is all the more complicated because rstly, people capable of developing on this kind of hardware are less frequent than those capable of developing on a GPP. Furthermore, it requires to redesign the FPGA by adding new functionalities (data ex ltration, metadata sending . . . ) without altering the primary functions, which is extremely complex [START_REF] Matas | Invited Tutorial[END_REF]. Therefore it makes sense to use an FPGA for security audit material because it is more complicated to tamper with its functioning. For all these reasons, it was chosen to use a mixed design, namely to use an FPGA embedded in an SDR to perform the core processing (FH detection) and let a GPP handle the analysis of red data (less demanding in resources and throughput). Moreover, the detection of FH channels is independent of the hidden red data, while the red data can be of di erent types (and so the processing of red data). There is a need for exibility only on the red data analysis part, the FH channel interception can be xed in a FPGA. This is supported by an FPGA-based detection and a GPP-based analysis architecture.

C SDR

During this thesis two SDRs were studied in detail, the E310 and X310 from Ettus, both of which work with UHD and a FPGA for a high throughput. A table listing their main characteristics is given in Table 5-2. The rst SDR studied is the E310, it is an SDR embedding an FPGA and a dual core ARM processor for processing. It has the particularity to be very compact, hand-sized and uses little power (typically 2-6 watts). However, its small size is a re ection of its processing capacity, which can be limited for some applications. The detection of FH signals requires the largest possible bandwidth and therefore requires a lot of resources. The components of the radio are organized in a linear way: the radio front end is connected to the FPGA which is connected to the GPP which is connected to the external world through an Ethernet link. The E310 also has an internal bandwidth limitation, indeed the radio can acquire 56 MHz of bandwidth but cannot stream this bandwidth in its full extent to the GPP because the maximum throughput between the two devices is 6 MS/s. This makes it mandatory to process the data in the FPGA or to reduce the bandwidth in order to perform processing only on the GPP. The development of applications is then more complex with this bottleneck because a classic design path for SDR is to perform all processing in soft (GPP or DSP) and if the performance is not satisfactory, the critical parts are shifted into accelerators.

The nal choice of radio is the X310, mainly due to its higher bandwidth. This radio embeds a bigger FPGA but no GPP, this last one is realized by using the processor of the host computer (which is connected to the SDR through Ethernet). The radio is capable of acquiring twice The purpose of UHD and RFNoC is to decrease the design time for SDR by de ning a work ow where developers only have to add their speci c processing blocks, all other ow management and con guration is already done. For example, an FPGA processing block can be controlled directly from the widely used GNU Radio [START_REF] Valerio | Open source software-de ned radio: A survey on gnuradio and its applications[END_REF] without the user needing to do any further development apart from connecting his processing block to RFNoC.

H /

The operation of the FFT-BE is similar to the one presented in Section 3-3.3-2 but has only some additional functionalities and is designed to run partly on FPGA and partly on a GPP using the SDR host computer. Indeed, the channel detection and extraction parts are realized on the FPGA but the red data extraction part is realized on the GPP. As this last one does not require important resources (the bandwidth has been greatly reduced) and it is easier to listen to the result of an audio signal extraction on a device with an audio output without to synthesize an audio interface.

The di erent blocks can be separated into four areas: Radio, Spectum, Detection, Host, and their details are shown in Fig. 5-5 and will be further developed hereafter.

1 R

This part corresponds to the management of the ADC and is managed by RFNoC. The IQs coming out of this block are under 16 bits (8 bits per channel I and Q) and are grouped by packets of 1024. This is the maximum packet size authorized by the AXI bus (see appendix B) with a power of 2. All the processing will therefore be carried out using 1024 samples at a time.

2 S

This part corresponds to the spectrum estimation (with xed point processing) and its shaping for the channel detection. The N-FFT is performed with the Xilinx IP FFT with rectangular window in double precision 16 bits. The two parts of the spectrum are rearranged to have contiguous frequency bins, then the square modulus is performed followed by a clipping to have single precision data. A slight (<10) sliding averaging over the spectrum bins is performed to remove possible spurious and digital noise. The output of Spectrum is composed of the N averaged points and their sum. This sum is not really used for FH detection, but is used to evaluate the spectrum utilization. If many signals are present, the sum of energies will be high which is an indicator of potential interferer.

3 D

The detection of the signal is done exactly as de ned in Section 3-3.3-2, by taking the max argument of the averaged bin and returning the bin index. It also returns the energy of the bin associated to the previous detected channel (of the current processing samples). This can be used in post processing (on GPP) in case of detection error (due to a noise burst or channel hop). This corrects a posteriori errors which can be of two kinds as described in Fig. 56where:

-It can repair an impulse error, as it can be see at 𝑆 1 where the detector has locally mistaken of channel (outputting 11 instead of 10) but the system also returning the index detected at the previous iteration (𝑆 1-1 ), at the instant 𝑆 1 , the content of bin 11 and 10 will be returned. The channel correction (i.e., choosing to take the index 10 instead of 11, is done by seeing that the channel index suddenly changes and then returns to the original quickly, but can also be done by seeing that there is no red data detected (if of course there is any). -The double output also allows not to lose information during a hop when the latter happens during an observation window (a batch of 𝑁 𝐹𝐹𝑇 samples). As it can be seen at 𝑆 2 , the new channel 8 is detected but as a historic of 1 channel is kept, we also have the energy of 10 in output, the red signal reconstruction will then merge the data extracted from 8 and 10 in order not to lose data. It is considered that the signal extracted from a non-active channel is assimilated to a white noise and thus has little impact on a good audio reconstruction.

A rate change block which concatenates the four values to send them back to the host is placed at the end. This block does not modify the data, it is for the ow management with RFNoC in particular to inform the transition from a block of N samples to 2 samples of 32 bits (each returned value is in simple precision under 16 bits). The block of Spectrum and Detection being placed in the same IP block, the veri cation of the ow is done only at the output.

4 H

The nal step is to send back the data to host for red data processing. The delivery of data is carried out by UHD. The data of the received channels are at baseband rate. In our application case, the red signal is an audio signal, its extraction involves a straightforward decimation with ltering. A posteriori corrections are also performed to improve the extraction performance using the extracted channel "Energy previous max". A nal analysis is carried out which varies according to the case: a SBOS can be carried out if the original red signal is known or a more traditional analysis with the spectrum analysis and its audio playback can be used instead.

5 FPGA

This last section deals with the use of the FPGA resources of our interception system, and especially the resources needed for each of the elements constituting our design. A representation of the elements with their location on the FPGA grid can be seen in Fig. 567 It should be noted that in our design the Radio 1 and DDC zones are not used. We can see in this gure that the processing for the interception of FH signals represents only a small part of the resources (and that a quarter of these resources are used for interconnection). The radio front end and the management of the bus-centric RNoC take up each one a quarter of the design. We can also note that there is still space to insert a second batch of Spectrum and Detection blocks, so it is feasible to use the second radio front end to intercept another part of the radio spectrum at the same time.

A more detailed view of the resources used by the FH processing can be seen in Table 5-3. The Total FPGA expresses the available resources in the FPGA, Total design the used resources by the whole design, Percentage in FPGA the design utilization in percentage of the available resources, Detection and Spectrum the resources used by these two processings and Percentage in design expresses the block utilization as percentage of the resources used by the whole design. It can be seen that although being the core processing part of the FPGA design, our two processing blocks do not represent the largest part of the design, and that the overlay provided by Ettus with UHD and RFNoC as well as the interconnects take up the majority of the design. It is therefore important to take into account during the design phase that not all resources will be available for user applications. It is also worth to replace these imposed blocks by customized versions, reducing the available functionality to limit the resource use. For some very high-performance applications that require a lot of resources it is worthwhile to override UHD and RFNoC with custom systems, but this is not the case in this thesis.

C

SDR open up the possibility of creating new radio systems faster and at a lower cost, and o ers the possibility of upgrading existing systems. It also provides new opportunities for intelligent radio systems able to adapt to their environment. The processing carried out within an SDR must respond to ow constraints that require a preliminary study.

A presentation of a new methodology for e cient SDR prototyping based on Julia language has been done. Julia o ers key properties that make this language appealing for SDR, namely high runtime performance, easy portability, strong scalability and convenient interactivity. These strong assets pave the way for e cient prototyping with SDR, addressing the so called two-language problem (rewriting high-level code in low-level language for performance). The bene ts of the approach (language and ecosystem) have been proven by use of benchmarks that compare the rate performance with the ones of C++ and Python. It means that rapid prototyping of very large bandwidth and extensive computational processing can be envisioned in real-time and through concise code even in embedded SDR thus bringing down the classic two-language barrier encountered in prototyping. This nal chapter aims to concretize the FH signals interception system and the red signal recovery. The purpose is twofold: validate the hardware architecture described in Chapter 5 and show how BLE devices can lead to information compromising. These systems have indeed several characteristics which make their interception valuable:

C

TOWARD REAL EAVESDROPPING

-They are usually built with a SoC which, according to the literature in Chapter 2, carries a high risk of side-channel due to physical proximity between components.

-They feature an FH transceiver which does not emit continuously allowing exploring both time and frequency sporadicity.

1. Side-channel leak metrics -They are very widespread and several di erent models are available on the market.

The tests that will be performed are divided into three categories, i) the use of synthesized signals generated with specialized hardwares, aim to assess the proper functioning of the interception system in real-time and to con rm the simulation results of Chapter 4 by using the same input signals. ii) Altered devices are real systems where a leak has been forced by external means. These experiments aim to characterize the ability to detect a side-channel in a more realistic scenario. Special wired devices will be used to focus the study on signal going out of the transceivers only. iii) Unaltered devices are real systems where a leak occurs without being forced, corresponding to a real exploit where the device generates a side-channel of its own.

S

As FH transmissions are considered, the correct channel must be extracted. CER is an appopriate metric to estimate the performance of our detection system. However this can only be done with a priori knowledge of the FH sequence, which will be unknown for BT devices. In the latter case, other metrics will be exploited.

In these experiments, audio signals are considered as red signals embedded in the sidechannel. This way, the values can be complied with some measurements made in security audits, paving the way for appealing proof-of-concept. To objectively evaluate recovered audio signals, the used metric is the SBOS as in Section 4-3.1). A side-channel will be considered as active if the SBOS has a value greater than 0.1 as described in the Table 4-3. It should be noted that is it mandatory to have the original red signal to be able to estimate the SBOS.

The original red signal is accessible when forcing the leak, for instance by tampering the power supply with a speci c pattern or by manually coupling the BT devices with an audio speaker that plays a known audio sequence.

In the case where the red signal is not fully accessible, the spectrum of the recovered signal will be used and if a peak is visible at the right frequency compromise will be considered. This estimation has a signi cant weakness in the case where the red signal is multi-tones i.e., a succession of tones at di erent frequencies. Because each tone will be visible only a fraction of the time and therefore the energy of the red signal will be distributed to several frequencies of the spectrum.

The equipment that is used in this Chapter is listed in Appendix C.

L 1: V

This section aims to validate the FPGA and host architecture of the FFT-BE (Section 3-3.3-2) and to compare its performance with simulations of Chapter 4 for identical scenarios. To ensure the proper functioning of the di erent parts of the interception system, a signal generator is used. A mixture model similar to the one exposed in Section 3-1 is used. For this proof of concept, signals are transmitted through cables to the SDR (which embeds the FFT-BE algorithm on the FPGA) from a Vector Signal Generator (VSG) which allows generating common signals and to apply modulation on them (the setup can be seen in Fig. 6-1). The signal generated follows a frequency sweep with a hop duration of 1 ms and channels width of 1 MHz. No additional noise is added, the VSG output power has been set to -20 dBm. On the radio side a 30 dB attenuator is used and the radio Rx gain has been set to 6 dB. The baseband message is a sine wave with an AM modulation (ℎ = 0.01) of a one tone red signal at 1 kHz.

S

The results can be seen in Fig. 6-2 where a dotted line is marked for each hop. The four gures correspond to the four outputs of the algorithm:

-a) Pos max is the channel index observed which is located between 1 and 𝑁 𝐹𝐹𝑇 (𝑁 𝐹𝐹𝑇 = 1024 in our design). In this gure the frequency steps are clearly visible.

-b) Total bin energy corresponds to the power of three received signals computed in the frequency domain. Since the generated signal has only one active channel at each moment, the total energy is very similar to the energy of the extracted channel. However, this signal cannot be used to perform red signal extraction it will be greatly impaired by interferers and noise in a non-controlled scenario.

-c) Energy current max represents the extracted channel i.e., the baseband signal at the current channel index. The evolution of this signal in time domain exhibits the red signal as no baseband modulation is present in this test.

-d) Energy previous max represents the baseband signal at the previous estimated channel index, its observation allows compensating the sync error and we can see that such an error occurs twice (at samples 2 500 and 6 000). Moreover, if this extracted channel is often non-empty, it is an indicator that the input signal is strongly noisy.

The Energy current max and Energy previous max can be post-processed together at the host side to reduce the loss of information introduced by a channel detection error and consequently improve the performance of red data recovery. This output is called the corrected pos max output (CPM) in the remaining of this chapter. In this case, the correction is negligible because our test signal is quite simple, and the curve of CPM is identical to Fig. 6-2-c).

The Fig. 6-3 presents the spectrum of the extracted red signal. The red signal is ltered at 5 kHz with an 8-FIR low pass lter to avoid aliasing. There is a strong energy at 1 kHz which indicates that the signal has been correctly intercepted and that no distortion has altered the red signal.

-These curves demonstrate that the interception system is functional and provides real-time processing of an FH signal at 200 MS/s with the recovery of a red signal.

-No ow integrity errors were detected, which con rms that all data are successfully processed at this rate.

-200 MS/s is the highest speed achievable with the SDR used, the system could go at a higher speed on the same FPGA but we have no ADC available to test a higher speed.

Albeit being useful to validate the architecture and to be sure that the FH hops are correctly detected, using a VSG has several limitations on the channel detection part. Indeed, we are -8,000 -4,000 not in presence of a random FH pattern but rather a system realizing a frequency sweep, meaning the following channel is therefore routinely the adjacent channel, this feature has a consequence on the convergence time of the algorithm and is not representative of a true FH signal (especially TRANSEC signals). Moreover, our synthesizer is not able to hop faster than 100 𝜇s which is a limitation for TRANSEC use cases. It can also not perform a black signal modulation other than a sine wave. For these reasons, the experiments will be rather done in the next part by generating the IQ with a computer thanks to Julia and then will be transmitted by the VSG.

T FH J

Instead of sending to the SDR the IQ generated by the VSG, it is possible to create the IQ stream through Julia language in the same way as they were generated in simulation in Chapter 4. As the hop sequence and the red signal are known when creating the signals, it is also possible to use the metrics from Chapter 4 to compare the performance of the real system with those of the simulations.

There is no direct synchronization between the SDR receiving the signal and the VSG emitting it (unlike the simulations where they are synchronized with the exact sample), in order to use the CER and SBOS metrics, it is necessary to resynchronize the signals a posteriori. This synchronization is realized thanks to a correlation between the signals (the original and the received ones), the argmax index of this correlation estimates the delay to be applied to the signals to be resynchronized. This method is e cient because the original signal is perfectly known and no degradation is applied to the signal. It should be noted that the following measurements use this synchronization and that errors induced by the synchronization may occur and lower the performance in addition to that of the interception system. In particular at low SNR, the synchronization will be less e cient and therefore will decrease the performance of the detection system.

The rst test consists in ensuring that a correct channel is detected, for this we use the CER metric. The results of Fig. 6-4 are compared to the simulation of Fig. 45678. The SNR variation has been realized by changing the VSG Tx gain. The signal has 40 channels that randomly hop. Due to the hardware limitation of the VSG, the bandwidth of the signal is reduced to 40 MHz, and the same 𝜆 values have been used as in simulation (and thus not the same 𝑇 𝑠 ). The performance in the real experiments is very close to the simulations, although the di erent plateaus observed in experimentation are at higher CER value than in simulation. This di erence may be due to the synchronization mechanism for CER computation which has an impact on the performance. The next experiments focus on the recovery of red signals, the latter is as for the simulation composed of three successive sine waves. The use case of the Fig. 6-5 and 6-6 is the TRANSEC as described in the Table 4-1 but reduced to a smaller bandwidth (same channel width and same 𝜆). Fig. 6-5 (which can be put in comparison with its simulated counterpart Fig. [4][5][6][7][8][9][10][11][12] shows the SBOS for various modulation index ℎ, and demonstrates identical results for both experiments and simulations. It should be noted that for this test, the modulation index ℎ goes to lower values than in simulations. The last test aims to check if our system is able to intercept a sporadic signal issued from an existing device. This device is a BLE dongle, working in beacon mode, which means that it will periodically emit a frame. The latter always has a duration of 1.7 ms and is repeated every 23 ms (BLE beacon 1 case). A case where the sporadicity is more important is also tested, since the signal of 1.7 ms is emitted every 44.5 and 66 ms for BLE beacon 2 and BLE beacon 3 respectively. The samples complying with these timings are generated with Julia, a GFSK modulation with random symbols was also used (the same as in BLE device). The results of this interception can be seen Fig. 67.

We nd plateaus close to a SBOS of 0.8, which is the maximum ceiling of our red signal recovery constated in simulations. This result can be due to two phenomena, whether the fact that the red signal is emitted for a longer time (but with a longer time without signals) makes the decimation and ltering succeed in lling the holes generated by sporadicity, or that the synchronization mechanism works better with this type of sporadicity and that therefore a "good" signal is sent to the SBOS estimator contrary to the previous case. -These tests prove that our interception system runs in real-time in an FPGA, the recovered values are close to the simulated data, which implies that no factor due to the implementation deteriorates the performance -If a red audio signal is present in a BLE signal, our system is able to detect it.

As a result, we can move to the next experimentation level which is not to generate the signals but to use real FH transceivers (BLE).

L 2: A

The goal of the experiments in this section is to force leaks at di erent places in a SoC and to observe to what extent it is conceivable to induce a side-channel and if our interception system is able to recover it. The injection points have been chosen considering the di erent side-channels observed in the Chapter 2. Two valuable locations have been chosen as described in Fig. 6-8: the radio transceiver (violet arrow) and the power supply (blue arrow). In this section we will use commercially available FH sources, namely BLE dongles, which will be set in BLE beacon mode, i.e., they will regularly emit a signal as described in Table 6-1. Some of them allow connecting to the SDR in a wired way (ESP32 and nRF52832) and others only in wireless (PCA10059). In this last case, the measurements will be realized in an anechoic chamber in order to only listen to the signal of the target. Using BLE dongle, it is no longer possible to know the hop sequence and thus no CER is available. It is still possible to know the red signal and thus a SBOS is available with a synchronization as described in the previous section.

A

A side-channel in the transceiver implies that all the signals coming out of the transceiver are mixed with the red signal. This phenomenon (violet arrow of Fig. 678) can happen when a cross talk is made between the signal to be emitted (before the power ampli cation) and an internal signal (red signal) or when a sub-part of the SoC consumes enough energy to a ect the global supply of the SoC. Since transceivers consume a lot of energy, the ltering of their power supply is limited in order to minimize the power losses and costs, so imperfections on the power supply will be immediately re ected on the emitted signal.

In this scenario the leak is forced by adding a mixer at the output of the transmitter (with a 1:1 mixing ratio). A red signal is then connected (audio comes from a smartphone DAC) at the second input of the mixer and the output is connected to the SDR. The setup can be seen in Fig. 6-9 for the ESP32 dongle (the wiring is identical for nRF52832). The injection of the audio signal is rst a pure wave sine sent at a di erent frequency for each dongle. The choice of the frequency is to ease the leak observation by selecting frequency in areas where the spectrum is at.

For both models of wired dongle, a capture of the low frequencies of the spectrum (0 to 8 kHz) is performed with and without audio signal injected in the mixer. Fig. 6-10 shows for both dongles, we observe the fundamental frequency of the audio signal injected and visible with a peak of 25 dB. However a di erent behavior is observed between the devices. Indeed, the nRF52832 capture contains harmonics of the audio signal while the ESP32 does not have any. The output of the ESP32 is an output meant to be connected to an antenna whereas the nRF52832 output is specially designed for observation probes. This di erence can be responsible for the di erent behavior.

In the low frequency spectrum of the ESP32 (shown in Fig. 6-11), harmonics of 22.3 Hz are visible and correspond to the periodicity of the transmissions made by the dongle, a similar observation is visible on the nRF52832 at 10 Hz.

In a second step, a multi-tone audio signal is used for SBOS evaluation. 67(the ESP32 case corresponds to BLE beacon 2 case). This di erence can be explained by the low amplitude of the injected red signal. Since the latter comes from a low power audio DAC, its amplitude is relatively low and not adapted to an impedance of 50 Ω like the telecom material. However, for both dongles the SBOS value is greater than 0.1 and therefore we can consider that there is a side-channel. Two conclusions can be drawn from those tests. i) we are able to force a side-channel and able to detect it if it a ects the output of an audio transceiver. ii) with the same setup, both devices have a di erent behavior (presence or not of harmonics of the audio signal).

P

In this test, the leak is not present at the output of the emitter but within its power supply. In other words, the power supply of the whole Bluetooth dongle is modulated by a red signal. It is a scenario that corresponds to the fact that in the SoC, the power supply is common to several subparts and that the di erent power spikes of a subpart will impact the power supply of all the other subparts of the chip. It corresponds to the blue arrow in Fig. 678.

The rst idea to force such a side-channel was to power the dongle through a low frequency function generator whose output is a sine with an o set, which then allows injecting a compromise in the dongle power supply. However the used dongles are low power and their power supply ltering is e cient enough to erase the sine part of the power signal. The ripple of the input power was not visible on the power supply of the board after the ltering stage.

Therefore, a second approach to force a leak has been tested and corresponds to generate a leak as a subpart would do. For this purpose, a coil with an alternative signal (20Vpp at a frequency of 1250 Hz issued from a low frequency function generator with adapted impedance) has been placed above the board power supply to generate an electromagnetic disturbance that will a ect the board. This setup can be seen in Fig. 6-12. The result of this test is given in Fig. 6-13a with no coil and in Fig. 6-13b with the coil radiating a red signal. We can see that the leakage is clearly present at 1250 Hz and has several harmonics. However, the reading of a periodogram on a large time acquisition can be quite cumbersome if the red signal is of lesser amplitude because it can be obscured in the noise. The spectrum previously issued is made from direct output of the FFT-BE and thus used all samples received (including those without red information). Considering the temporal sporadicity, a large part of the used samples corresponds to the time when there is no received signal, and therefore strong noise component is added to the measurements, and estimating the peak height is quite di cult and not accurate.

In order to improve the reading and the detection of the red signal, Algorithm 2 has been used. It is based on the instantaneous Welch spectral density estimation but using only the observation windows in which an FH signal is detected. In order to further improve the comparison when the leakage is intentionally generated, a spectrum di erence is realized, i.e., the algorithm is executed on a signal where a compromise is supposed to be present (or at least forced) and on another one where the studied compromise is not supposed to exist. The two signal acquisitions are executed one after the other, with the same material in the same positions to ensure that only the di erence due to the leakage appears on the gure and not the in uence of the environment or how the signal is observed. -8,000 -6,000 -4,000 -2,000 -8,000 -6,000 -4,000 -2,000 The result of this spectrum di erence can be seen in Fig. 6-13c, it shows the di erence between a spectrum of a signal without forced side-channels and with forced side-channels, 0dB means that there is no di erence between the signals, and above 0 there is energy added with the compromised signal. The height of a spike (from the 0) is therefore directly the amplitude of the leaks. In this case, the amplitude of the rst spike is 8 dB and the one of the second spike is 16.5 dB. The compromising information would be more accessible to an attacker by using the rst harmonic rather than the main frequency.

This second test gives insight into a new way of injecting a side-channel in a BLE dongle in a scenario more likely to happen in real life than with the mixer. The coil used could actually be a device placed next to a BLE dongle emitting an EM eld similar to the coil, or the coil could simply be a nearby cable that runs very close to the dongle. The amplitude of the compromise was relatively high which leaves open the possibility that an accidental (and with therefore a lower amplitude) leakage could occur and still be detected with the Algorithm 2. The tests of this section show that red signals can be recovered despite the presence of a real FH which is supposed to be there to prevent interception attempts, and that the red signal can be available at several harmonics which multiplies the possibility for an attacker to recover information. Indeed, it is possible to merge the di erent harmonics together in order to maximize the recovered information.

L 3: U

This last level focuses on BLE devices that are not modi ed and whose compromise has not been forced by an external mean. The leaks will come from the devices themselves due to their operating behavior. In order to detect a compromise, we have programmed the dongle to perform (in addition to their BLE beacon task) common tasks such as reading an audio stream, ashing LED or acquiring an analog signal and the outgoing BLE signal through our interception system has been observed. We will look if the characteristic frequency (red signal) of the tasks is present in the signal. For this we will make sure that these characteristic frequencies are 1000 or 1250 Hz. By using these two frequencies, we can ensure that the behavior is identical or not depending on the frequency but also if a frequency does not fall into a particular case that would in uence its amplitude.

S

This experiment involves using an audio system (a) with a Bluetooth connection. Generally, in such a system, an external device (b) sends the audio stream to be played via Bluetooth. The system (a) then returns acknowledgements to con rm the correct reception of the audio data. The Bluetooth signal is sent periodically because the audio stream has a constant rate. This acknowledgement is equivalent to our BLE device in beacon mode but no external device will be sending data to the BLE device. Thus, the audio data will be contained in the BLE dongle to study the compromises of a single device. The setup of this test is shown in Fig. 6-14. The dongle generates a PWM at 1250 Hz (for ESP32) and 1000 Hz (for nRF52832) to a class D audio ampli er, this last one is then connected to two 3W speakers. The nRF52832 has its PWM output sent to both the audio ampli er and the LED to provide an indicator of operation.

In this scenario several side-channels can occur, i) the PMW signal can leak and impact the transceiver, ii) the ampli er can create power supply disturbances that can impact the transceiver or iii) the loudspeaker coils create an electromagnetic eld that can disturb the internal signals. -8,000 -6,000 -4,000 -2,000 0 1,000 3,000 6,000 8,000 During the tests on the nRF52832, it turned out that the audio stream was audible in the speakers although the wire between the ampli er input and the PWM output was disconnected, performing then the setup of Fig. 6-16a. The Fig. 6-16b shows that the red signal is present in the FH signal with a peak of 2.7 dB. Since the speakers are still playing the signal, it means that the audio signal is present in the power supply of the board. The leak is not only due to the consumption of the ampli er but also to the BLE dongle itself. The amplitude of the spike being higher when the cable is disconnected, we can assume that the input of the audio ampli er acts as an attenuator on the side-channel. This behavior has been observed on two di erent nRF52832 boards but not on the ESP32 board. This di erence may be due to the design of the two boards. The nRF52832 is a development board while the ESP32 is an industrial version, with a higher-grade power supply.

The system can detect a weak leak in an FH system but also that a leak can be present naturally, i.e. without forcing it, an audio stream connected to ampli ers can leak the audio content on an FH transmission. Therefore, the leaks have a large range and pass-through soundproof walls due to the radio carrier, which is a threat to privacy. The components used are not modi ed, so this con guration can exist in reality. Moreover, several components can be the root of a leakage, so the side-channel removal can be more intricate.

The origin of the leakage can be attributed to two components of the board, either the one (a) Schematics of nRF52832 setup with audio wire disconnected.

-8,000 -6,000 -4,000 -2,000 0 1,000 3,000 6,000 8,000 -1 realizing the PWM or the LED, the next two sections will focus on each of the two possible sources.

LED

This section focuses on determining to what extent LED and the signal that drives them can generate a compromise on the radio transceiver. To do this, a PWM at 1000 Hz is generated on two boards, at rst the nRF52832 and later on with the PCA10059, using the following setup Fig. 6-17a. To begin we observe the signal of the nRF52832 using a wire connected to the output of the transceiver, the result is visible in Fig. 6-17b. We can see that not only a leakage is clearly noticeable at the appropriate frequency, but that the leakage is even higher than in the previous test section with a spike of 4.2 dB. The audio ampli er that was previously connected includes large capacitors in order to compensate noise generated in the power supply and thus probably reduces the amplitude of the side-channel. -8,000 -6,000 -4,000 -2,000 0 1,000 3,000 6,000 8,000 -1 The signals studied above were captured by connecting the output of a radio transceiver to a cable in order to eliminate possible interferers, but this case does not take into account other EM leakage that could be generated on the dongle before the antenna output. Moreover, this does not correspond to a realistic attack scenario, were if an attacker listens to the EM emissions of a dongle, it means that he does not have physical access to it. To overcome these limitations, the BLE dongle nRF52832 and PCA10059 have been placed in an anechoic chamber in order to investigate their radiation only. A 2.4 GHz antenna is placed 10 cm next to the dongle and its cable does not overlap the dongle to avoid interference (the nRF52832 is not used with a cable but with its integrated antenna in this case). The results of these measurements are shown in Fig. 6-18. We can observe that the red signal is still present on both dongles but with a di erent amplitude (1.5 dB for the nRF52832 and less than 0.1 dB for the PCA10059). Moreover, the signal received is much noisier than with a cable in the case of the nRF52832 (in addition its amplitude is halved). The compromise of the PCA10059 is extremely low and can be easily blended in the noise to become unnoticeable.

-8,000 -6,000 -4,000 -2,000 0 1,000 3,000 6,000 8,000 -8,000 -6,000 -4,000 -2,000 0 1,000 3,000 6,000 8,000 -This section demonstrates that a leak can be produced by a blinking LED and that this phenomenon is not limited to a particular model of dongle but that several models have the same aws.

-The interception system is able to extract them remotely as an attacker would do.

I : PWM

To further investigate the origin of a leak on the nRF52832 board, it has been observed that the combination of LED and PWM generated a leak, to nd out where the leak comes from. This section will investigate if a PWM signal sent to a GPIO output connected to nothing can still generate a leak, as given in Fig. 6-19a. The corresponding recovered signal is in Fig. 6-19b. The study of this gure shows that a leakage is still present at the same position as with the LED of the previous Section, but its amplitude has been greatly reduced to 0.8 dB thus indicating that the LED was indeed leaking but is not the only one causing leaks.

(a) Schematics of nRF52832 setup.

-8,000 -6,000 -4,000 -2,000 0 1,000 3,000 6,000 8,000 The experiments of this section demonstrate that there is a combination of factors that can generate a leakage and that a small leak can be ampli ed internally. The PWM alone generates a leak but is ampli ed by LED. Such a leak is a major security threat because it allows in an air gap bridging context to leak information on a radio transceiver without directly modifying its baseband signal but using a side-channel instead. It is therefore more di cult to detect that such attack is used because as it is common for microcontroller to have unused outputs.

I :

A leak exists with a PWM alone when it is connected to a GPIO, so the leak can be the part of the dongle that generates the PWM or it is the routing of the PWM signal within the board that generates this leak. To discern these two origins, we will stop generating a PWM within the observed device but send it to one of its GPIO (other than that used by the LED in the previous tests) coming from another board, and observe if a compromise is present on the intercepted FH signal. The setup is then shown in Fig. 6-20a. A dongle (left) is used to make a PWM which is sent to the listened dongle (right), a cable is also placed between the two dongles to connect the grounds. The associated result is shown in Fig. 6-20b. The leakage is of low amplitude and until its harmonic at 3000 Hz it is not really possible to say that a leakage is occurring. The maximum leak amplitude is 0.6 dB which is the same order of magnitude as in the previous section.

(a) Photo of routage checking setup.

-8,000 -6,000 -4,000 -2,000 0 1,000 3,000 6,000 8,000 This test demonstrates that the routing alone of a signal in a board can generate a leak which means that potentially all interactions using an output including data buses can leak and end up on the FH signal. Moreover, a high frequency signal (e.g. a data bus) will tend to generate a higher radiation and consequently a higher leakage.

-0.2 0

C

This chapter is the nal embodiment of what has been studied in this thesis, starting with the study of the side-channels to know their origin, to verify if it is possible to create them and to study their presence. Di erent methods to intercept an FH signal have been considered, allowing the creation of a real-time interception system. The measurements of this chapter have been realized according to three levels:

-A rst level is used to validate the correct operation of the interception system in real-time.

Thus it valides the FPGA design and makes a link with the simulated performance of the Chapter 4. It also checks if our system was able to correctly intercept leaks generated by devices following the BLE protocol, namely a frequency hopping system (with channels of 2 MHz), having a high temporal sporadicity (the signal is active less than 10% of the time) and using a black signal GFSK modulation.

-The second level aims at generating a leak in a BLE dongle and detecting them on the recovered FH signal. For this purpose a mixer was used on the antenna output and a coil placed near the power supply in order to emulate compromises coming from sub parts of a system. In both cases our system is not only able to intercept the BLE signals and extract seamlessly the baseband signal, but also to see that the various red signals injected were present on the radio signals. Variations in the leaks of di erent dongle models have been observed, making it possible to di erentiate them by simply observing their trace.

-The last level consists in the observation of the BLE dongle executing several tasks corresponding to real use cases: generation of sound signals, LED control, signal generators and signal acquisition. In all cases considered, leakage on the FH signal has been noticed. These leaks are directly correlated with the tasks performed by the dongle because the characteristic frequencies have been observed. Moreover, the switch o of the tasks leads to leakage disappearance. This last level corresponds to the realization of exploit which allows to con rm that it is possible to recover sensitive data internal to a device only by listening to its FH transmissions.

C

CONCLUSION & PERSPECTIVES This chapter aims to recall the global context of the work performed during this thesis. A summary of the research and contributions will be presented. The short-and long-term perspectives opened by this thesis will also be given.

C

Information processing systems are an important and essential part of our life, for applications ranging from industrial to individual contexts. A large part of these systems will carry out processing and will store, move and process sensitive information that one would like to limit unwanted circulation. The study and protection against the information leakage are designed by the so-called Information Security. It concerns, among other things, how to mitigate information risks and limit unauthorized access to data. Most of the time information security addresses how to protect against cyber attacks, and involves digital measures such as encryption, rewall, electronic passwords. The applications and threats to security concern areas wider than just digital means and involve for example social engineering or the data scraping.

Among the areas often ignored is the side-channel analysis. A side-channel is the unwanted deviation of information from its legitimate channel to another channel called side-channel. An attack based on a side-channel is, for example, looking for information through indirect means. It looks at how a task is performed, rather than looking at the outcome of the task in order to extract sensitive information. This thesis considers side-channel emanating from a device. These side-channels involve physical medium such as light, vibrations, power supply disturbances or even electromagnetic radiation. These side-channels are a result of the devices operation and for the most of them are di cult to erase. A study of the di erent side-channel attacks of the literature is made considering the type of medium and the sensitive information that passes through it. A characterization according to their dangerousness is carried out which is mainly related to their range and the possible throughput of information.

Among the di erent existing side-channels, the one a ecting the radio transceiver stands out from the others, mainly because of its greater range as it is propagated by the radio transmitter. Its study requires knowledge on radio frequencies, the ability to operate a reception system adapted to the device you are listening to, but also knowledge on the internal functioning of the device to identify where the leak comes from. However, intercepting a radio signal can become complex when it constantly changes its carrier frequency through what is called frequency hopping.

One of the main objectives of this thesis is the interception of FH signals to analyze its baseband hidden information. Several constraints on the FH interception system are due to its prospective use in security audits: -The interception system must be done in practice, i.e., is concretized by a physical system and not only realized in the simulation.

-The interception must be done blindly, i.e., without knowing the precise characteristics of the FH signal, in particular its hop sequence is unknown.

-The interception must be done on a wide band because the FH channels are not known but supposed to be contained within a speci c frequency range.

-The interception must be done in real-time due to bandwidth constraints which would require signi cant storage if the data were processed afterwards.

-The interception system must be transportable in order to be used in security audits in sensitive areas, therefore it must not resort to cloud computing for processing that should be done locally.

The methods to intercept FH signals are diverse. However, many of them depend on a priori information about the FH signal or require complex computations. The number of methods that can be used in our study is thus reduced to three due to the constraints: DFT multi-band, PPN and wavelet methods. These methods have been analyzed in simulations in order to choose the one with the best performance considering both the ability to detect the channel of an FH signal but also the ability to extract the sensitive signal from the baseband.

The use of a DFT-based method has proven to be the most relevant in terms of performance and computational complexity and is therefore the method chosen for implementation in this thesis. The interception system is based on an SDR allowing fast system design, adaptability to several frequency bands, and fast customization. However, the high bandwidth requires several implementation precautions. The computations must be done e ciently, for this reason a hardware accelerator based on FPGA has been added to the design. This last one handles all the processing requiring high throughput. The GPP is then only used for processing on the extracted baseband. Thus, our solution mixes speed of FPGA and exibility of GPP. A deployment of the RFNoC stack through the Julia language allowed a proof-of-concept design as well as an optimized design, and performance evaluation testbench using the same programming language.

Finally, the interception system has been tested against various targets. A step-by-step approach was considered, starting with listening to the signals synthesized with dedicated radio equipment to ascertain the real-time performance and the likeness of the actual and simulated performance (in both channel detection and red signal recovery). Then exploring the available side-channels thanks to the state of the art, compromises have been enforced within commercial frequency hopping systems. These various tests have allowed highlighting not only the good functioning of the interception system that has succeeded in extracting sensitive data but also that it is possible to inject a compromise into a system following the template used in air gap bridging. The nal step is the listening to targets performing various tasks common to radio systems such as music broadcasting, LED control or signal digitization. Thanks to our system, leaks were detected due to the previously mentioned tasks and therefore a recovery of the associated red data was performed. This con rms that it is indeed possible to intercept side-channels when they a ect radio transceivers secured by frequency hopping. Moreover, di erent behaviors have been highlighted between various FH devices, paving the way for future countermeasures by studying the designs that minimize leakage. Although the interception system is functional, some improvements can be included to e ciently address new targets and extend its area of application. These improvements are detailed in the next section as the perspectives of this work.

P

The work carried out o ers several perspectives of study that can be classi ed in two di erent categories, the short and long term. The rst one considers the use as-is of the interception system by applying it to new targets and by extending its elds of application. The long-term perspectives involve altering the interception system to improve its interception performance.

S

Although several targets have already been tested in order to ascertain the presence of sidechannels, our study can be extended to other devices such as Bluetooth headsets, computers or micro system like a Raspberry Pi. These last two cases involve more data processing and therefore constitute a prime target for a potential attacker. Inspecting wider bandwidth devices such as 5G transceivers would also expand the possible uses of the interception system. Verifying that no leakage is present in this type of device would be a signi cant advantage in security audits.

The real performance has been evaluated either by connecting the devices by cable or by placing the antenna relatively close to the BT device to be tested. An investigation could evaluate the performance as a function of the distance between the antenna and the BT device, but also under various radio environments like a house or an o ce.

The interception system also provides a new perspective other than the detection of condential information: the ability to recognize devices by using the recurrent peculiarity of their radio spectrum. This new feature would allow the interception system to not only detect a red signal but also to identify which device is transmitting it. This is useful in the case of a radio environment where several devices are transmitting FH signals on the same bands.

A proof of concept has been performed using the 3 available BLE dongle models (3 dongles are of the same model and two others of two di erent models). First a characteristic signature of the nRF52832 was performed by merging several signals obtained through Algorithm 2. Then the signature is compared against several listening of various dongles, this result is shown in Fig. 7-1. The three nRF52832 curves are very close to the 0 indicating that they are e ectively issued from nRF52832 dongle, while the two other dongles are far away and have a di erent shape. It is therefore possible to recognize the device used by looking at the output of the partial spectrum algorithm.

The work carried out highlighted that there were various leaks in the device and that these leaks can be propagated to several places and impact the radio signals emitted by transceivers. Analysis of the data in the leak can help tracing it back to its origin, which can help discover the cause and path of the leak. These steps are essential in order to either suppress a leak or if this is not possible to establish countermeasures preventing an attacker from recovering con dential information. These measures can be the implementation of power supply ltering, as we have seen between Fig. 6-16 and Fig. 6-17 where removing the capacitors of the audio ampli er has increased or rather not lowered the leakage. Side-channel jamming can be performed by leaking misleading signal for example by using free GPIO, as it is possible to do in Section 6-4.4.

The commonly accepted recommendations for safety as de ned in [START_REF]NACSIM 5000: Tempest Fundamentals[END_REF] involve physical distancing around the device. However, in our case it is impractical since the range of the radio signals is too long. This makes leaks impacting radio transceivers an important threat because harder to contain.

L

The interception system can only listen to a device when its signals are stronger than the interference, therefore the antenna must be placed close to the device to be investigated in order to minimize strong interference. However, this is not always possible and therefore the leak detection will not be accurate. To improve the performance it is necessary to isolate more nely the device under test, this can be done by using directional antennas, e.g. the one in Fig. 7-2 tuned to intercept radiation from a video cable. Diversity can also be used, by merging the signals from several spatially separated antennas. Currently the detector has some limitations on the width and number of detectable channels. The number of channels depends on the size of the FFT which goes from 16 to 1024 by power of two, the received bandwidth is 160 MHz maximum, and the size of the channels depends directly on the ratio between the received bandwidth and the FFT size. It is possible to change these limits without changing the hardware.

-The radio has two front ends, each of them able to receive 160 Ms/s, but only one is used at a time. It is possible to use both front ends at the same time to obtain a bandwidth of 320 MHz.

-The FFT size limit is not directly due to the FFT IP but to the way the data transport is managed. Indeed 1024 is the maximum value (aligned with a power of two) of samples that can be sent in a single frame via the X310 crossbar. An FFT is performed frame by frame, which explains the 1024 limit. But if one wants to detect more channels (some military protocols can use 10, 000 channels for example), a bu er must be inserted in the FFT IP in order to increase the number of samples provided to the FFT.

-At the output of the FPGA, two channels are issued, the detected channel and the channel of the previous index. It is however possible to change which channel is returned without signi cant modi cation, for example by outputting two adjacent channels to double the recovered bandwidth.

-To nish with possible improvements, the detector has di culty to detect small time slot 𝑇 𝑠 with many channels (minimum 6 𝜇s with 1024 channels in the current con guration).

To circumvent this problem, given that the detector does not take much space in the FPGA, it is possible to place several of them in parallel but with shifted reading windows. This will create a temporal overlapping which will improve the temporal accuracy but will also improve the performance against noise as it will be possible to perform an averaging on the output of the detector.

ADC

A SIDE CHANNEL ATTACK LITERATURE CLASSIFICATION

The Table A-1 is an overview of the di erent side-channels mentioned in Chapter 2. It provides a better understanding of the wide range of side-channels and includes their classi cation according to their target, their medium, as well as their activeness and their intentionality.

A

B RFN C

RFNoC [laba] is a network-distributed heterogeneous processing tool which enables faster development of applications based on USRP devices with an internal FPGA. It allows notably a seamless use of both host-based and FPGA-based processing in an application. It provides a way to leverage SDR processing capabilities with FPGA acceleration across multiple FPGAs and devices across a network. In association with UHD, it provides useful and convenient tools for SDR-based application development and provides access to high-level languages such as Julia, Python, Matlab, LabVIEW.

RFN C

Radio Frequency Network-on-Chip (RFNoC) works in combination with UHD in order to provide a solution for data exchange, monitoring and control in real time without the burden of coding the di erent parts. For this RFNoC is implemented in an FPGA and provides templates for the development of processing blocks. Thanks to these templates, the developed blocks can run on several models and generations of SDR. UHD, on the other hand, is installed on a computer called host in the following. It ensures communication with the SDR on the host side, and also provides a control interface for con guring the FPGA through RFNoC. The use of RFNoC in order to develop an SDR application relies on several layers that will be described hereafter.

RFNoC stack

FPGA

The signal processing FPGA algorithms are contained in modules known as "Computation Engines" or simply "Blocks" as seen in Fig. B-1. Each block has several speci c parts that will be further detailed in Section 3. But it is noteworthy that in each block there is an interface wrapper provided in order to encapsulate IP processing to use within RFNoC. This allows importing generic FPGA IP or even Xilinx CoreGen IP blocks and using them without having to rewrite their internal functioning. Each RFNoC block processing is independent from other blocks, and can be designed with any tool that supports AXI stream interfaces, including VHDL, Verilog, or Vivado HLS (it should be noted that as for now, every USRP device with embeds an FPGA use a Xilinx FPGA).

RFN C

UHD integration: UHD provides an abstraction layer to dialogue with many di erent SDR while keeping the same instruction. It o ers notably the following features: code to handle the SDR but as indicated in the Section 5-2, there is a two-language problem. It is also an option to use the well-known GNU Radio Companion through the use of additional con guration les. For this thesis, the language chosen is Julia and does not require additional development for any new application because a gateway with UHD is already implemented through AbstractSDRs.jl.

N C

As its name indicates, RFNoC proposes a Network-on-Chip architecture, that uses a buscentric paradigm (Section 5-1.3-1). This bus is called crossbar in the RFNoC stack, and its operation is described in Fig. B-2.

A crossbar is a link between blocks, it is set up through UHD directives. Up to 256 unique crossbars can exist in an FPGA design, and with up to 16 ports per crossbar can be con gured. This way, it is possible to stream between two or more blocks, for example, to realize the sum of block outputs. It is up to the crossbars to link the di erent blocks to the output interface of the SDR and control data. To ensure that all the exchanges are carried out correctly, each block must use the same protocol (Compressed HeaDeR (CHDR)), and as seen before a wrapper (provided by Ettus and universal) is used for this purpose: the NoC Shell.

TITLE: RECONFIGURABLE SYSTEMS FOR THE INTERCEPTION OF COMPRO-MISING SPORADIC SIGNALS

Keywords: Side-channel, TEMPEST, Software defined radio, Real-time processing Abstract: The side-channels are defined as the deviation of information from its legitimate path due to one or several physical phenomena. These leaks are able to bypass some security systems and to affect secure communication systems. In this thesis, we investigate the various existing side-channels and discuss their main properties. Among the various leakages, electromagnetic waves appear to be the most difficult to perceive and we particularly focus here in the side-channel impacting frequency hopping signals. A real-time wideband interception system is proposed and used on frequency hopping transceivers. The proposed interception system is based on software defined radio and leverages hardware resources and a new software methodology based on Julia language. Finally, the existence of telecom side-channels in Bluetooth communications has been demonstrated on several microcontrollers chips, even in normal process functioning.

F 0 1 -

 1 Description d'une attaque par canal auxiliaire.

F 0 3 -

 3 Chaîne de traitement FFT-BE et partitionnement logiciel/matériel.

F 0 4 -

 04 Recherche de canaux auxiliaires dus à des LED.

Figure 1 - 1 -

 11 Figure 1-1 -Side-channel attack example.

Figure 1 - 2 -

 12 Figure 1-2 -Examples of frequency Hopping issued from a Bluetooth device in the 2.4 GHz ISM band, red areas correspond to data exchange.

  National conferences -Lavaud, C., Gerzaguet, R., Gautier, M., Berder, O., Nogues, E., and Molton, S., « Interception of Frequency-Hopping Signals for TEMPEST Attacks », in Proc. Rendez-vous de la Recherche et de l'Enseignement de la Sécurité des Systèmes d'Information, Virtuelle, France, Dec. 2020 This conference article published in Rendez-vous de la Recherche et de l'Enseignement de la Sécurité des Systèmes d'Information introduces the DFT-BE interception system as detailed in the Chapter 3. International conferences -Lavaud, C., Gerzaguet, R., Gautier, M., Berder, O., Nogues, E., and Molton, S., « Towards Real Time Interception of Frequency Hopping Signals », in Proc. IEEE Workshop on Signal Processing Systems (SiPS), Sept. 2020, pp. 1-6 This conference article published in IEEE Workshop on Signal Processing Systems deals with the time synchronization mechanism required by the DFT-BE as detailed in the Chapter 3. Journal papers -Lavaud, C., Gerzaguet, R., Gautier, M., Berder, O., Nogues, E., and Molton, S., « Whispering Devices: A Survey on How Side-channels Lead to Compromised Information », in Journal of Hardware and Systems Security (HASS), Mar. 2021 This journal article published in the Journal of Hardware and Systems Security summarizes the di erent emanation side-channels with an emphasis on countermeasures, presented in Chapter 2. -Lavaud, C., Gerzaguet, R., Gautier, M., and Berder, O., « AbstractSDRs: Bring down the two-language barrier with Julia Language for e cient SDR prototyping », in IEEE Embedded Systems Letters (2021)

Figure 2 - 1 -

 21 Figure 2-1 -Overview of emanation side-channel attack.

  (a) Electromagnetic side-channel origins: illumination (I), leak by mixing (M), leak by radiation (R), leak by coupling (C). (b) Non-electromagnetic side-channels: sound leak (S), leak by the power line (P), light leak (L).

Figure 2 - 2 -

 22 Figure 2-2 -Typical side-channels for an emanation scenario composed of a sensitive target , an attacker and a neutral access point .

Figure 2 - 3 -

 23 Figure 2-3 -Classi cation of the emanation side-channels according to propagation nature.

Figure 2 - 4 -

 24 Figure 2-4 -Outline of the DPA and CPA analysis.

Figure 2 - 6 -

 26 Figure 2-6 -Examples of electromagnetic radiation side-channel: AM and baseband sidechannels.

Figure 2 - 7 -

 27 Figure 2-7 -CRT screen rendering strategies.

Figure 2 -

 2 Figure 2-8 -"TEMPEST for Eliza" operating principle [Thi01].

Figure 2 -

 2 Figure 2-9 -Cross-talk model.

Figure 2 -

 2 Figure 2-10 -Example of forced broadcast side-channel.

Figure 2 -

 2 Figure 2-11 -Schematic of The Thing: (M) Microphone, (T) Tuned circuit, (C) Coupler, (A) Antenna.

Figure 2 -

 2 Figure 2-12 -Schematic of an FET bug placed on a data wire.

Figure 3 - 1 -

 31 Figure 3-1 -Time Frequency plot of an FH model.

(3- 5 )

 5 where 𝑑 [𝑘] represents the received signal, 𝑥 [𝑘] is the transmitted signal, 𝑤 [𝑘] represents an Additive White Gaussian Noise (AWGN) of variance 𝜎 2 𝑘 , and 𝑘 denotes the sampling index at channel rate 𝐹 𝑠 . The sampling is assumed to be ideal such that 𝑥 [𝑘] = 𝑥(𝑘𝑇 𝑏 ) with 𝑇 𝑏 the sampling time (inverse of the narrowband channel bandwidth).

Figure 3 - 2 -

 32 Figure 3-2 -Energy based detection algorithm.

Figure 3 - 3 -

 33 Figure 3-3 -Covariance based detection algorithm.

Figure 3 - 4 -

 34 Figure 3-4 -Cyclostationary features based detection algorithm.

Figure 3 - 5 -

 35 Figure 3-5 -Signature based detection algorithm.

Figure 3 - 6 -

 36 Figure 3-6 -Waveform based detection algorithm.

Figure 3 - 7 -

 37 Figure 3-7 -Comparison of narrowband detection methods in terms of their sensing accuracies and complexities.

Figure 3 -

 3 Figure 3-8 -Multi-band joint based detection algorithm.

Figure 3 -

 3 Figure 3-9 -Filter bank based detection algorithm.

Figure 3 -

 3 Figure 3-10 -HDFT lter bank based detection algorithm.

Figure 3 -

 3 Figure 3-11 -Focus on despreading lter.

Figure 3 -

 3 Figure 3-12 -Wavelet based detection algorithm.

Figure 3 -

 3 Figure 3-13 -Wavelet based detection algorithm based on [Zha14b] [Cap16].

Figure 3 -

 3 Figure 3-14 -Initial DFT multi-band joint based detection algorithm.

Figure 3 -

 3 Figure 3-15 -Chronogram of the various delay estimation steps.

  Find each end of non-zero area in 𝑀; 𝐶 = Correct outliers (𝐶 0 ); --Evaluate synchronization time 𝐶 ← sort(𝐶, ascend); T ← linear regression(𝐶);

Figure 3 -

 3 Figure 3-16 -DFT-BE detection algorithm.

Figure 3 -

 3 Figure 3-17 -FFT-BE, FPGA accelerated detection algorithm.

Figure 4 - 1 -

 41 Figure 4-1 -Typical TEMPEST side-channel.

Figure 4 - 2 -Figure 4 - 3 -

 4243 Figure 4-2 -Channel Error Rate vs SNR for various 𝜆 and delay errors Δ 𝜏 with DFT-BE.

Figure 4 - 4 -

 44 Figure 4-4 -Channel Error Rate vs SNR for various delays.

  Channel Error Rate vs SNR, GFSK, bluetooth (N 40)

Figure 4 - 5 -

 45 Figure 4-5 -Channel Error Rate vs SNR for various waveforms with BLE case.

Figure 4 - 6 -

 46 Figure 4-6 -Channel Error Rate vs SNR for various waveform with ℎ = 0.01.

Fig. 4 -

 4 Fig.4-8 shows the impact of the averaging on the performance. The generated FH signal is without red and black modulations and has several 𝑇 𝑠 expressed as a function of 𝜆. The cases

Figure 4 - 7 -

 47 Figure 4-7 -FFT-BE and DFT-BE detection window.

Figure 4

 4 Figure 4-8 -Channel Error Rate vs SNR for various time slot duration and averaging factors.

Figure 4 -

 4 Figure 4-9 -Perceptual Evaluation of Audio Quality overview.

Figure 4 -

 4 Figure 4-10 -Modded Virtual Speech Quality Objective Listener overview.

DFTDFTFigure 4 -

 4 Figure 4-11 -SBOS vs SNR for various delays.

Fig. 4 -Figure 4 -

 44 Fig.4-13 shows the impact of the averaging on the performances. The generated FH signal is without black modulation (only sinus wave) and the red mixing index is of 0.1, and has several 𝑇 𝑠 expressed as a function of 𝜆. The cases where 𝐾 > 𝜆 have been removed as the algorithm would work in an inaccurate range.

Figure 4 -

 4 Figure 4-13 -SBOS vs SNR for various time slot duration and averaging factor.

Figure 4 -

 4 Figure 4-14 -SBOS vs SNR for various time sporadicity.

Figure 5 - 1 -

 51 Figure 5-1 -General structure of an ideal Software-De ned Radio.

Figure 5 - 2 -

 52 Figure 5-2 -General structure of an LIF Software-De ned Radio.

  radio radio = openSDR(sdr,fc,bw,g ;args="addr=192.168.10.13"); # ---Loop on getting samples and processing try while(true) y = recv(radio,N); # Get samples z = abs2.(fft(y)); # Computation end catch exception

Figure 5 - 3 -

 53 Figure 5-3 -Benchmark of the throughput of various optimization levels and languages.

Figure 5 - 4 -

 54 Figure 5-4 -Benchmark for initial code and highest optimization level code using X310 device.

Figure 5 - 5 -

 55 Figure 5-5 -FFT-BE FPGA processing blocks.

Figure 5 - 6 -

 56 Figure 5-6 -Double output error correction scenario.

  . Several elements are visible and are detailed in the following list: -Control & Radio 1 & Radio 2: Radio front end -FH detect: Detection block of Fig. 5-5, the red AXI Wrapper inside represents the handling part to connect to the bus-centric interface -SFPP: 1 GbE and 10 GbE management interface -FFT & FFT Extra: Spectrum block of Fig. 5-5, the red AXI Wrapper inside represents the handling part to connect to the bus-centric interface -Xbar: Bus-centric interface -Ram: Various memory used by the design blocks -DDC: Digital Down Converter -DMA FIFO: Fast bu er management for interconnection with the XBar -UHD: UHD and RFNoC management

Figure 5 - 7 -

 57 Figure 5-7 -FFT-BE FPGA utilization.

Figure 6 - 1 -

 61 Figure 6-1 -Validation setup with VSG.

Figure 6 - 3 -

 63 Figure 6-3 -FFT-BE CPM outputs of a 1 tone at 1 kHz.

625 Figure 6 - 4 -

 62564 Figure 6-4 -CER vs Tx gain for various time slot duration.

Figure 6 - 5 -Figure 6 - 6 -

 6566 Figure 6-5 -SBOS with various ℎ on TRANSEC case.

3 Figure 6 - 7 -

 367 Figure 6-7 -SBOS with time sporadicity on BLE beacon case with ℎ = 0.1.

Figure 6 -

 6 Figure 6-8 -Forced side-channel emplacement of level 2 in a BLE SoC. The arrows correspond to the tested compromise scenarios: the radio transceiver (violet arrow) and the power supply (blue arrow).

Figure 6 -

 6 Figure 6-9 -Forced side-channels with mixers.

  (a) ESP32 FFT-BE CPM output with no audio. (b) ESP32 FFT-BE CPM output with red audio at 2.5 kHz.(c) nRF52832 FFT-BE CPM output envelope with various red audio frequencies.

Figure 6 -

 6 Figure 6-10 -FFT-BE CPM output on BLE dongle with mixer at transceiver output.

Figure 6 -

 6 Figure 6-11 -Zoom on low frequencies of ESP32 baseband received spectrum.

Figure 6 -

 6 Figure 6-12 -Forced side-channel with a coil.

Algorithm 2 :S

 2 Partial spectrogram in Julia language ----signal is the input data, S is the final spectrum ----Init value, storage and apodisation window 1 N = 2048 2 S = zeros(N) 3 blackman = getBlackmanWindow(N) ----Detect start index of all FH bursts 4 indexes = getBurstStarts(signal) for index ∈ indexes do ----Isolate burst samples in a vector of N samples 5 burst = getBurst(index, signal) 6 bPadded = zeroPadding(burst,N) ----Compute square modulus of FFT with a Blackman window 7 x = bPadded . * blackman 8 y = x |> fft |> fftshift .|> abs2 |> 1/N ----Spectrum accumulation 9 Off bobine (a) nRF52832 CPM output with coil power o .

  On bobine (b) nRF52832 CPM output with coil at 1.25 kHz.

  Di erence between the coil power on and o with Algorithm 2.

Figure 6 -

 6 Figure 6-13 -FFT-BE CPM output on nRF52832 dongle with a coil.

  (a) Schematics of nRF52832 setup. (b) Setup of ESP32 with a sound system subpart.

Figure 6 -

 6 Figure 6-14 -Setup for side-channel checking issued from a sound system subpart.

Figure 6 -

 6 Figure 6-15 -Di erence of FFT-BE CPM output between with and without PWM.

0. 4

 4 dB and 2 dB respectively for the ESP32 and nRF52832 (while in the case of the mixer the main frequency had the same amplitude). Unlike other tests, the amplitude of the red signals is very weak and is not visible using the conventional spectrogram but is clearly visible with Algorithm 2.

  Di erence of FFT-BE CPM output between with and PWM without generated.

Figure 6 -

 6 Figure 6-16 -Side-channel checking with audio wire disconnected (PWM at 1 kHz).

  (a) Schematics of nRF52832 setup.

  Di erence of FFT-BE CPM output between with and PWM without generated on nRF52832.

Figure 6 -

 6 Figure 6-17 -Side-channel checking against LED with wired SDR.

Figure 6 -

 6 Figure 6-18 -Side-channel checking against LED with wireless SDR.

  Di erence of FFT-BE output between with and PWM without generated.

Figure 6 -

 6 Figure 6-19 -Side-channel checking against PWM leak (at 1 kHz).

  Di erence of FFT-BE CPM output between with and PWM without generated.

Figure 6 -

 6 Figure 6-20 -Side-channel checking against PWM leak (at 1 kHz).

Figure 7 - 1 -

 71 Figure 7-1 -Proof of concept of radio ngerprinting.

Figure 7 - 2 -

 72 Figure 7-2 -3D printed Yagi antenna at 770 MHz.

Figure B- 1 -

 1 Figure B-1 -RFNoC stack.

Figure B- 2 -

 2 Figure B-2 -Crossbar fuctionning example.

6

  Toward real eavesdropping 1 Side-channel leak metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Level 1: Validation of hardware architecture . . . . . . . . . . . . . . . . . . 3 Level 2: Altered devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Level 3: Unaltered devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

	C
	RÉSUMÉ ÉTENDU
	1 C
	List of Figures
	List of Tables
	Table of acronyms
	Table of symbols
	A Side-channel attack literature classi cation
	B RFNoC
	1 RFNoC stack . C Experimental setup
	Publications
	Bibliography

7 Conclusion & Perspectives 1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Network-on-Chip aspect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 NoC shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Table 2 -

 2

1 -Examples of attack per activeness and intentionality.

Table 3 -

 3

1 -Advantages and drawbacks of narrowband detection methods. cause a huge loss in performance

[START_REF] Cabric | Spectrum Sensing Measurements of Pilot, Energy, and Collaborative Detection[END_REF]

. Such an algorithm is currently used in Worldwide Inter-operability for Microwave Access (WiMAX) signals for detecting uplink packet preambles

[START_REF] Mishra | Cognitive Technology for Ultra-Wideband/WiMax Coexistence[END_REF]

.

Table 4 -

 4

		Number of channels 𝑁	𝜆	Number of samples per burst	𝑇 𝑠 duration
	Bluetooth LE	40	1 250	50 000	625 𝜇𝑠
	TRANSEC	512	2	1 024	12.8 𝜇𝑠

1 -Simulation parameters.

Table 4 -

 4 2 -Comparison of red signal quality estimators.

	Automatic	Sparse signal	Low quality	High noise
	detection	tolerance	audio tolerance	tolerance
	Human ear
	Bin energy
	PEAQ
	ViSQOL
	SBOS
		SBOS value Signal quality
		< 0.1	Inaudible
		[0.1 : 0.3[	Very noisy
		[0.3; 0.5[	Noisy
		> 0.5	Good

Table 4 -

 4

3 -Chart of SBOS quality estimator.

Table 5 -

 5 3 -Resource utilization.

		Total LUT	Logic LUT	Memory LUT	FLOP LATCH	RAMB36 RAMB18	DSP48 Blocks	Logic cell
	Total FPGA 254,200 254,200 90,600	508,400 795	1,590	1,540	406,720
	Total Design 111,582 95,249 16,333	164,952 314	55	245	242,610
	Percentage in FPGA	43.90% 37.47% 18.03%	32.45% 42.96%	3.46%	15.91% 59.65%
	Detection	7,732	7,327	405	22,871	8	0	0	35,766
	Percentage in design	6.93%	7.69%	2.48%	13.87% 2.55%	0%	0%	14.74%
	Spectrum	5,823	4,253	1,570	10,726	12	11	52	21,047
	Percentage in design	5.22%	4.47%	9.61%	6.50%	3.82%	20%	21.22% 8.68%

Contents 1

 1 Side-channel leak metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 2 Level 1: Validation of hardware architecture . . . . . . . . . . . . . . . . . 138 Altered devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

		2.1	Signal synthesized with a vector signal generator . . . . . . . . . 138
		2.2	Toward more real like FH signals with Julia . . . . . . . . . . . .	141
	3	Level 2: 3.1	Analog mixer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
		3.2	Power supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
	4	Level 3: Unaltered devices . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
		4.1	Speaker impact . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
		4.2	LED blinking impacts . . . . . . . . . . . . . . . . . . . . . . . . .	154
		4.3	Internal system impact: PWM generator . . . . . . . . . . . . . . 155
		4.4	Internal system impact: onboard wire . . . . . . . . . . . . . . . . 156
	5

Table 6 -

 6 1 -BLE beacon mode timing.

	Model	Payload duration Silent duration Periodicity
	Nordic PCA10059 1.7 ms	21.3 ms	43 Hz
	ESP32	1.7 ms	47.6 ms	22.3 Hz
	Nordic nRF52832 1.7 ms	98.3 ms	10 Hz

Table 6 -

 6 2 -SBOS with mixer at transceiver output. seen in Table 6-2. The values are much lower than those shown in Fig.

	The results can be

Contents 1

 1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 2 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 2.1 Short-term perspectives . . . . . . . . . . . . . . . . . . . . . . . 162 2.2 Long-term perspectives . . . . . . . . . . . . . . . . . . . . . . . . 164

TABLE OF SYMBOLS

 OF 𝐴averaging factor of covariance based detector 𝛼 𝑝 time sporadicity factor expressing whether transmission occurs during a time slot 𝐾 internal averaging factor of detectors, counterpart of 𝜆 at Rx side, act as a temporal overlapping of the detectors 𝑘 sample index at 𝐹 𝑠 𝐾 𝑃𝑃𝑁 temporal overlapping of HDFT lter bank based detector 𝐿 number of samples used in the detectors for one estimation of p

		𝜆	repetition factor, as multiple of 𝑁
		H 0	statistical test of detectors: the channel is not used
		H 1	statistical test of detectors: the channel is used
		𝑀 [𝑘]	instantaneous derivative of the synchronization algorithm
		𝑀 𝑚𝑎𝑥	maximum eigenvalues of R𝑑
		𝑀 𝑚𝑖𝑛	minimum eigenvalues of R𝑑
		𝑁	number of channels of FH
		𝑁 𝐹𝐹𝑇	number of bins of the FFT-BE method
		𝑝	channel index
		𝑃 𝑑	probability of detection of the detectors
		𝑃 𝑓	probability of false alarm of the detectors
		𝑅 𝑑 [𝑘, 𝜏] autocorrelation
		𝑟 𝑙 [𝑘]	samples autocorrelation
		𝜏	Rx delay associated to 𝑑
	𝑏 𝐶 𝐶 0 𝐶 𝑎 𝐶 𝑚 𝐶 𝑜 𝑑 𝐸 𝑤 𝐹 𝑏 𝑓 𝑝 (𝑡)	𝑇 𝑠 𝜐 𝑢 𝑉 [𝑘] V [𝑘] 𝑊 𝑊 𝑓 𝑤(𝑡) 𝑥 [𝑘] 𝜁	duration of a time slot baseband message received energy of energy based detector detected hop positions of the synchronization algorithm sample index at 𝐹 𝑏 initial hop pool of the synchronization algorithm arg max DFT of the synchronization algorithm pool of too close hops of the synchronization algorithm sliding average of 𝑉 [𝑘] with a depth 𝛼 of the synchronization algorithm pool of missing hops of the synchronization algorithm width of Phydyas ltering in HDFT lter bank based detector pool of hops out of the hop grid of the synchronization algorithm waveform model of waveform detector received FH signal Additive White Gaussian Noise (AWGN) of variance 𝜎 2 𝑤 internal value of waveform based detector transmitted signal baseband bandwidth associated channel frequency of 𝑝 threshold of the detectors
	𝐹 𝑠		transmitted signal bandwidth
	d		𝑑 aligned with synchronization algorithm
	dBB [𝑘]	aligned baseband message at 𝐹 𝑠
	p		estimated channel index
	R𝑑 [𝑘]	statistical covariance matrix (𝐿𝑥𝐿)

MHz bandwidth (160 MHz per radio front end, but sampled at 160 MHz due to DAC) and sending them to the host. Due to the lack of equipment capable of receiving two 10 GbE links, the di erent tests will only be carried out with one radio front end and therefore 160 MHz

MS/S while a FPGA solution can go higher. The interception system being functional and validated in simulation, the next step is to validate the design and then perform real target listening.

band (which is 26 times more than with an E310). This band is su cient to listen to Bluetooth signals, which represent an easy-to-acquire FH system that can have internal compromises (presence of red data) due to their low-cost manufacturing. Moreover, the FPGA is large enough to contain our implementation of the FFT-BE which will be described more precisely in the Section 5-3.4.

N E

The Ettus radio comes with UHD [labb] and RF Network-on-Chip (RFNoC) [laba] which provide respectively an abstraction layer at software and FPGA levels. UHD is a hardware driver library used in order to address several SDR families with di erent con gurations using the same function, through an API. It is possible to use UHD in standalone (in C++) or with other applications such as GNU Radio" Labview or Simulink and even Julia (with AbstractSDRs). It provides an abstraction layer between the host and the radio by interfacing directly with its integrated FPGA (or GPP if present like on the E310) to control the gain, amplitude, center frequency, sample rate as well as establishing uplink and downlink stream to exchange data. UHD also supports control and management messages such as loss of samples due to slow processing by SDR or host, IQ timestamp and integrity control.

RFNoC is a network-distributed heterogeneous processing tool, it enables simpli ed management of processing within an FPGA, as well as a layer for communication with internal DACs and ADCs and a communication layer to move data in and out of the FPGA. It allows the exchange of data streams between multiple FPGAs and GPPs and host computers in a -Its unique NoC-ID to distinguish it from other blocks -Input-and output ports description along with the associated data types, vector length, packet size -Readback registers to provide asynchronous monitoring link from FPGA to host -Settings registers to provide asynchronous command link from host to FPGA Block controller: It allows having a user interface for each block to simplify its use. A default controller con gurable through XML is present and can address a vast majority of block use case. But in some speci c cases, when complex operations are required in the controller that is easier expressed in C++ code than XML, a custom controller can be used instead. However, writing custom block controllers requires recompilation of UHD, whereas default controller is interpreted at runtime via XML les.

List of Tables

At each startup, UHD entails a lookup process. It will rst query the NoC-ID of each block. It will then look up the block declaration associated with each NoC-ID and then will associate each RFNoC block its corresponding block controller.

H

The nal layer corresponds to the application code, and consists in using, sending and receiving data to the SDR using UHD calls (the latter performing all the transport and con guration layer automatically.) It is possible to design an application in several di erent languages as long as there is a gateway between UHD (in C++) and the language used. It is straightforward to use a C/C++

N C

The last contribution brought by RFNoC is the NoC Shell which allows interfacing the di erent IP processing with the crossbar (see Fig. B-3). It allows converting AXI streams (from user IP) into CHDR while performing ow control and integrity check operations. It is possible to send and receive special asynchronous messages via registers in the FPGA from the host. Thanks to the NoC Shell, any IP having as input/output interface an AXI bus can be implemented quickly within an SDR. This NoC Shell does not require any particular modi cation and this even if the block used has a custom block controller.