Spelling suggestions: "subject:"réseaux logique""
1 |
Sécurité FPGA : analyse de la cybersécurité des dispositifs SoC FPGA / Analyse de la cybersécurité des dispositifs SoC FPGAProulx, Alexandre 09 October 2024 (has links)
Tableau d'honneur de la Faculté des études supérieures et postdoctorales, 2022 / Alors que les appareils de tous les jours deviennent de plus en plus intelligents et interconnectés, il existe un besoin d'appareils intégrés dotés de capacités de traitement étendues qui favorisent des cycles de développement courts. Dans les applications IoT (Internet of Things), il est également nécessaire que ces dispositifs intégrés soient à faible consommation d'énergie et à faible latence pour traiter efficacement les données de plusieurs capteurs en parallèles. Ce besoin peut être largement satisfait par les dispositifs SoC FPGA ou System-on-Chip Field Programmable Gate Array (en français, systèmes sur puce intégrant des circuits logiques programmables). Les dispositifs SoC FPGA intègrent un HPS (Hard Processing System) étroitement lié à une structure FPGA. Tout en permettant un délai de conception rapide par rapport aux dispositifs ASIC (Application-Specific Integrated Circuit) traditionnels, le SoC FPGA permet d'apporter des mises à niveau matérielles aux dispositifs déployés via ses diverses interfaces. De plus, la combinaison du HPS avec le FPGA apporte de nombreux avantages aux applications comme l'intelligence artificielle en permettant la mise en œuvre avec facilité de circuits massivement parallèles. Cependant, le problème avec les dispositifs SoC FPGA réside dans la manière dont les données de configuration sont stockées. Par exemple, dans les dispositifs ASIC, le circuit est implémenté directement dans le silicium. Alors qu'un acteur malveillant pourrait effectuer la rétro-ingénierie du silicium pour récupérer la fonction du circuit, un tel exploit nécessite des équipements coûteux, des connaissances approfondies et un processus fastidieux. Cependant, étant donné que les FPGA sont composés d'une structure reconfigurable, les données de configuration doivent être stockées dans une structure de mémoire à l'intérieur de l'appareil. L'extraction de ces données pourrait fournir à un acteur malveillant des informations précieuses sur le fonctionnement du circuit sans nécessairement impliquer le processus de rétro-ingénierie matérielle long et coûteux. Ce mémoire se concentre sur l'aspect cybersécurité des dispositifs SoC FPGA qui pourraient mettre en péril les données de configuration du FPGA. Par exemple, alors que les périphériques FPGA traditionnels peuvent être correctement sécurisés en limitant l'accès aux interfaces directement connectées à la mémoire des données de configuration, les interconnexions complexes du HPS avec le FPGA ajoutent un niveau de complexité qui transfère nécessairement la tâche de sécuriser le périphérique aux développeurs. Cette complexité accrue est la principale préoccupation étudiée dans ce mémoire. Nous visons à produire un modèle générique de menace de cybersécurité pour les dispositifs SoC FPGA afin de fournir une base de référence sur laquelle les concepteurs peuvent s'appuyer tout en effectuant l'analyse de cybersécurité de leurs conceptions. Nous effectuons un examen approfondi des attaques existantes sur les appareils SoC FPGA et identifions les vulnérabilités potentielles. L'une des vulnérabilités identifiées, qui concerne les effets des injections de fautes électromagnétiques, fait l'objet d'une étude approfondie de sa faisabilité. Une deuxième vulnérabilité identifiée, liée à la mémoire synchrone dynamique à accès aléatoire (SDRAM) est confirmée via une démonstration pratique qui exploite le processus de démarrage du dispositif SoC FPGA. / As everyday devices become increasingly intelligent and further interconnected, there is a need for integrated devices with extensive processing capabilities that favour short development cycles. In applications of the Internet of Things (IoT), there is a further need for these integrated devices to be low-power and low-latency to efficiently process data from multiple sensors in a parallel fashion. This need can largely be met by Systems on a Chip (SoC) Field Programmable Gate Array (FPGA) devices. SoC FPGA devices incorporate a hard processing system (HPS) intricately connected with an FPGA fabric. While allowing for a quick design turnaround time compared to traditional Application-Specific Integrated Circuit (ASIC) devices, SoC FPGA conveniently allows for hardware upgrades to be brought to deployed devices through its various interfaces. Furthermore, the combination of the HPS with the FPGA brings many advantages to applications such as artificial intelligence by allowing massively parallel circuits to be implemented with relative ease. However, how the configuration data is stored is a concern with SoC FPGA devices. For instance, in ASIC devices, the circuit is implemented directly within the silicon. While a malicious actor could reverse engineer the silicon to retrieve the circuit's function, such a feat requires expensive equipment, extensive expert knowledge, and a tedious process. However, since FPGA devices are composed of a reconfigurable fabric, one must store the configuration data within a memory structure inside the device. Extracting this data could provide a malicious actor with valuable insight into the circuit's function without necessarily implicating the expensive and time-consuming hardware reverse engineering process. This thesis focuses on the cybersecurity aspect of SoC FPGA devices that could jeopardize the FPGA's configuration data. For instance, while one can adequately secure traditional FPGA devices by limiting access to interfaces directly connected to configuration data's memory, the HPS's intricate interconnections with the FPGA add a level of complexity that necessarily handovers the task of securing the device to the developers. This increased complexity is the primary concern being investigated in this thesis. We aim to derive a generic cybersecurity threat model for SoC FPGA devices to provide a baseline for designers to build upon while performing the cybersecurity analysis of their designs. We provide a thorough review of existing attacks on SoC FPGA devices and identify potential vulnerabilities. One of the identified vulnerabilities, which deals with the effects of electromagnetic fault injections, is the subject of an in-depth investigation into its feasibility. A second identified vulnerability related to the Synchronous Dynamic Random Access Memory (SDRAM) is confirmed via a practical demonstration that exploits the boot process of the SoC FPGA device.
|
2 |
Réseau de capteurs dense pour un micro-incubateur à base d'un système embarqué FPGAGagnon, Mathieu 27 January 2024 (has links)
La culture cellulaire in vitro a toujours motivé les scientifiques pour découvrir de nouveaux médicaments, explorer de nouvelles thérapies et pour mieux comprendre la biologie cellulaire. Cependant, la culture cellulaire requiert un environnement très bien contrôlé, d'où l'émergence des incubateurs cellulaires commerciaux. Ceci dit, la recherche scientifique requiert l'observation en continu du développement cellulaire dans un environnement contrôlé. Bien que plusieurs approches soient disponibles afin de miniaturiser des instruments pour les intégrer dans un incubateur, peu d'approches ont été abordées avec succès pour miniaturiser un micro-incubateur et l'intégrer dans des systèmes de contrôle. Ainsi, le parallélisme présent dans un système à base de FPGA ajouté à la puissance de calcul des processeurs motive l'intégration d'un système de contrôle de micro-incubateur sur une même puce. La volonté de miniaturiser et d'intégrer plusieurs sous-systèmes de contrôle dans un même système embarqué motive d'autant plus l'utilisation d'une architecture Zynq UltraScale+. Ces travaux de recherche permettent d'intégrer le contrôle d'un micro-incubateur sur une architecture Zynq UltraScale+, de développer une interface graphique conviviale permettant l'observation et le contrôle d'un système de micro-incubateur et, finalement, de tester et valider le fonctionnement de l'implémentation des différents sous-systèmes de contrôle du micro-incubateur. Le développement des éléments de contrôle du micro-incubateur s'effectue à l'aide des outils de Xilinx. Ceux-ci permettent de développer le code VHDL, le code des processeurs temps réels et de compiler un système d'exploitation Linux personnalisé. L'interface graphique est développée avec l'outil QtCreator et intégrée sur le système d'exploitation Linux. Une carte de développement Ultra96 et des cartes électroniques connexes permettent de valider le fonctionnement de l'implémentation du contrôle du micro-incubateur. Toutes les composantes du contrôle du micro-incubateur sont validées en simulation VHDL, intégrées sur la carte Ultra96 et testées. L'interface graphique développée sur le système d'exploitation Linux communique de manière efficace avec les processeurs temps réels afin de permettre le contrôle et l'observation des différents sous-systèmes. / The in vitro cell culture has always motivated scientists to discover new drugs, explore new therapies or for a better understanding of cell biology. However, cell culture requires a very well controlled environment, hence the emergence of commercial cell incubators. Thus, research in this field requires the continuous observation of cell development in a controlled environment, among others. Although several approaches were available to miniaturize tools used in biological research to be integrated into an incubator, few approaches have been successfully addressed to miniaturize a micro-incubator to be integrated into a biological sensor. Thus, the parallelism of an FPGA-based system in addition to the computing performances were key elements for the integration of a micro-incubator control system on the same FPGA. In addition, the miniaturization and integration of several control subsystems in a single on-board systems were a key element to use a Zynq UltraScale + architecture. In this research work we aim to integrate the control system of a micro-incubator on a Zynq UltraScale + architecture and to develop a user-friendly graphical interface to observe and to control of a micro-incubator system. Finally, we aim to test and validate our implementations of the various micro-incubator control subsystems. The development of the micro-incubator's control elements is carried out using Xilinx tools. These allow to develop the VHDL code, the code for real-time processors and to compile a custom Linux operating system. The graphical interface was developed with the QtCreator tool and integrated into the Linux operating system. An Ultra96 development board and related electronic boards were used to validate the operation of the micro-incubator control implementation. All the micro-incubator control components were validated in VHDL simulation, integrated in the Ultra96 card and tested. The graphical interface developed on the Linux operating system communicates with the real-time processors in order to control and to observe various subsystems' behavior.
|
3 |
Contribution des structures algébriques ordonnées à la théorie des réseauxBenzaken, Claude 04 March 1968 (has links) (PDF)
.
|
4 |
Apprentissage statistique relationnel : apprentissage de structures de réseaux de Markov logiquesDinh, Quang-Thang 28 November 2011 (has links) (PDF)
Un réseau logique de Markov est formé de clauses en logique du premier ordre auxquelles sont associés des poids. Cette thèse propose plusieurs méthodes pour l'apprentissage de la structure de réseaux logiques de Markov (MLN) à partir de données relationnelles. Ces méthodes sont de deux types, un premier groupe reposant sur les techniques de propositionnalisation et un second groupe reposant sur la notion de Graphe des Prédicats. L'idée sous-jacente aux méthodes à base de propositionnalisation consiste à construire un jeu de clauses candidates à partir de jeux de littéraux dépendants. Pour trouver de tels jeux, nous utilisons une méthode de propositionnalisation afin de reporter les informations relationnelles dans des tableaux booléens, qui serviront comme tables de contingence pour des test de dépendance. Nous avons proposé deux méthodes de propositionnalisation, pour lesquelles trois algorithmes ont été développés, qui couvrent les problèmes d'appprentissage génératif et discriminant. Nous avons ensuite défini le concept de Graphe des Prédicats qui synthétise les relations binaires entre les prédicats d'un domaine. Des clauses candidates peuvent être rapidement et facilement produites en suivant des chemins dans le graphe puis en les variabilisant. Nous avons développé deux algorithmes reposant sur les Graphes des Prédicats, qui couvrent les problèmes d'appprentissage génératif et discriminant.
|
5 |
Apprentissage statistique relationnel : apprentissage de structures de réseaux de Markov logiques / Statistical relational learning : Structure learning for Markov logic networksDinh, Quang-Thang 28 November 2011 (has links)
Un réseau logique de Markov est formé de clauses en logique du premier ordre auxquelles sont associés des poids. Cette thèse propose plusieurs méthodes pour l’apprentissage de la structure de réseaux logiques de Markov (MLN) à partir de données relationnelles. Ces méthodes sont de deux types, un premier groupe reposant sur les techniques de propositionnalisation et un second groupe reposant sur la notion de Graphe des Prédicats. L’idée sous-jacente aux méthodes à base de propositionnalisation consiste à construire un jeu de clauses candidates à partir de jeux de littéraux dépendants. Pour trouver de tels jeux, nous utilisons une méthode de propositionnalisation afin de reporter les informations relationnelles dans des tableaux booléens, qui serviront comme tables de contingence pour des test de dépendance. Nous avons proposé deux méthodes de propositionnalisation, pour lesquelles trois algorithmes ont été développés, qui couvrent les problèmes d’appprentissage génératif et discriminant. Nous avons ensuite défini le concept de Graphe des Prédicats qui synthétise les relations binaires entre les prédicats d’un domaine. Des clauses candidates peuvent être rapidement et facilement produites en suivant des chemins dans le graphe puis en les variabilisant. Nous avons développé deux algorithmes reposant sur les Graphes des Prédicats, qui couvrent les problèmes d’appprentissage génératif et discriminant. / A Markov Logic Network is composed of a set of weighted first-order logic formulas. In this dissertation we propose several methods to learn a MLN structure from a relational dataset. These methods are of two kinds: methods based on propositionalization and methods based on Graph of Predicates. The methods based on propositionalization are based on the idea of building a set of candidate clauses from sets of dependent variable literals. In order to find such sets of dependent variable literals, we use a propositionalization technique to transform relational information in the dataset into boolean tables, that are then provided as contingency tables for tests of dependence. Two propositionalization methods are proposed, from which three learners have been developed, that handle both generative and discriminative learning. We then introduce the concept of Graph of Predicates, which synthethises the binary relations between the predicates of a domain. Candidate clauses can be quickly and easily generated by simply finding paths in the graph and then variabilizing them. Based on this Graph, two learners have been developed, that handle both generative and discriminative learning.
|
6 |
Towards federated social infrastructures for plug-based decentralized social networks / Vers des infrastructures sociales fédérées pour des réseaux sociaux décentralisés à base d'ordinateurs contraintsAriyattu, Resmi 05 July 2017 (has links)
Dans cette thèse, nous abordons deux problèmes soulevés par les systèmes distribués décentralisés - le placement de réseaux logiques de façon compatible avec le réseau physique sous-jacent et la construction de cohortes d'éditeurs pour dans les systèmes d'édition collaborative. Bien que les réseaux logiques (overlay networks) été largement étudiés, la plupart des systèmes existant ne prennent pas ou prennent mal en compte la topologie du réseau physique sous-jacent, alors que la performance de ces systèmes dépend dans une grande mesure de la manière dont leur topologie logique exploite la localité présente dans le réseau physique sur lequel ils s'exécutent. Pour résoudre ce problème, nous proposons dans cette thèse Fluidify, un mécanisme décentralisé pour le déploiement d'un réseau logique sur une infrastructure physique qui cherche à maximiser la localité du déploiement. Fluidify utilise une stratégie double qui exploite à la fois les liaisons logiques d'un réseau applicatif et la topologie physique de son réseau sous-jacent pour aligner progressivement l'une avec l'autre. Le protocole résultant est générique, efficace, évolutif et peut améliorer considérablement les performances de l'ensemble. La deuxième question que nous abordons traite des plates-formes d'édition collaborative. Ces plates-formes permettent à plusieurs utilisateurs distants de contribuer simultanément au même document. Seuls un nombre limité d'utilisateurs simultanés peuvent être pris en charge par les éditeurs actuellement déployés. Un certain nombre de solutions pair-à-pair ont donc été proposées pour supprimer cette limitation et permettre à un grand nombre d'utilisateurs de collaborer sur un même document sans aucune coordination centrale. Ces plates-formes supposent cependant que tous les utilisateurs d'un système éditent le même jeu de document, ce qui est peu vraisemblable. Pour ouvrir la voie à des systèmes plus flexibles, nous présentons, Filament, un protocole décentralisé de construction de cohorte adapté aux besoins des grands éditeurs collaboratifs. Filament élimine la nécessité de toute table de hachage distribuée (DHT) intermédiaire et permet aux utilisateurs travaillant sur le même document de se retrouver d'une manière rapide, efficace et robuste en générant un champ de routage adaptatif autour d'eux-mêmes. L'architecture de Filament repose sur un ensemble de réseaux logiques auto-organisées qui exploitent les similarités entre jeux de documents édités par les utilisateurs. Le protocole résultant est efficace, évolutif et fournit des propriétés bénéfiques d'équilibrage de charge sur les pairs impliqués. / In this thesis, we address two issues in the area of decentralized distributed systems: network-aware overlays and collaborative editing. Even though network overlays have been extensively studied, most solutions either ignores the underlying physical network topology, or uses mechanisms that are specific to a given platform or applications. This is problematic, as the performance of an overlay network strongly depends on the way its logical topology exploits the underlying physical network. To address this problem, we propose Fluidify, a decentralized mechanism for deploying an overlay network on top of a physical infrastructure while maximizing network locality. Fluidify uses a dual strategy that exploits both the logical links of an overlay and the physical topology of its underlying network to progressively align one with the other. The resulting protocol is generic, efficient, scalable and can substantially improve network overheads and latency in overlay based systems. The second issue that we address focuses on collaborative editing platforms. Distributed collaborative editors allow several remote users to contribute concurrently to the same document. Only a limited number of concurrent users can be supported by the currently deployed editors. A number of peer-to-peer solutions have therefore been proposed to remove this limitation and allow a large number of users to work collaboratively. These decentralized solution assume however that all users are editing the same set of documents, which is unlikely to be the case. To open the path towards more flexible decentralized collaborative editors, we present Filament, a decentralized cohort-construction protocol adapted to the needs of large-scale collaborative editors. Filament eliminates the need for any intermediate DHT, and allows nodes editing the same document to find each other in a rapid, efficient and robust manner by generating an adaptive routing field around themselves. Filament's architecture hinges around a set of collaborating self-organizing overlays that utilizes the semantic relations between peers. The resulting protocol is efficient, scalable and provides beneficial load-balancing properties over the involved peers.
|
7 |
Assemblage d'ADN avec graphes de de Bruijn sur FPGAPoirier, Carl 24 April 2018 (has links)
Ce mémoire est consacré à la parallélisation d'un algorithme d'assemblage d'ADN de type de novo sur différentes plateformes matérielles, soit les processeurs multicoeurs et les accélérateurs de type FPGA. Plus précisément, le langage OpenCL est utilisé pour accélérer l'algorithme dont il est question, et de permettre un comparatif direct entre les les plateformes. Cet algorithme est d'abord introduit, puis son implémentation originale, développée pour une exécution sur une grappe de noeuds, est discutée. Les modifications apportées à l'algorithme dans le but de faciliter la parallélisation sont ensuite divulgées. Ensuite, le coeur du travail est présenté, soit la programmation utilisant OpenCL. Finalement, les résultats sont présentés et discutés.
|
8 |
Implémentation sur FPGA de l'algorithme MUSIC sur antenne-réseau expérimentale à 10 GHzKebe, Ahmed 24 April 2018 (has links)
Les techniques des directions d’arrivée (DOA) sont une voie prometteuse pour accroitre la capacité des systèmes et les services de télécommunications en permettant de mieux estimer le canal radio-mobile. Elles permettent aussi de suivre précisément des usagers cellulaires pour orienter les faisceaux d’antennes dans leur direction. S’inscrivant dans ce contexte, ce présent mémoire décrit étape par étape l’implémentation de l’algorithme de haut niveau MUSIC (MUltiple SIgnal Classification) sur une plateforme FPGA afin de déterminer en temps réel l’angle d’arrivée d’une ou des sources incidentes à un réseau d’antennes. Le concept du prototypage rapide des lois de commande (RCP) avec les outils de XilinxTM System generator (XSG) et du MBDK (Model Based Design Kit) de NutaqTM est le concept de développement utilisé. Ce concept se base sur une programmation de code haut niveau à travers des modèles, pour générer automatiquement un code de bas niveau. Une attention particulière est portée sur la méthode choisie pour résoudre le problème de la décomposition en valeurs et vecteurs propres de la matrice complexe de covariance par l’algorithme de Jacobi. L’architecture mise en place implémentant cette dernière dans le FPGA (Field Programmable Gate Array) est détaillée. Par ailleurs, il est prouvé que MUSIC ne peut effectuer une estimation intéressante de la position des sources sans une calibration préalable du réseau d’antennes. Ainsi, la technique de calibration par matrice G utilisée dans ce projet est présentée, en plus de son modèle d’implémentation. Enfin, les résultats expérimentaux du système mis à l’épreuve dans un environnement réel en présence d’une source puis de deux sources fortement corrélées sont illustrés et analysés. / The techniques of Directions of Arrival (DOA) are a promising way to increase the capacity of systems and telecommunications services to better estimate the mobile-radio channel. They allow precise monitoring of cellular users to orient the antenna beams at them. Therefore, in this context, this paper describes step by step implementation of the high-level algorithm MUSIC (Multiple SIgnal Classification) on an FPGA platform to determine in real time the angle of arrival of one or incident sources to an antenna array. The Rapid Control Prototyping (RCP) with the tools of XilinxTM System generator (XSG) and MBDK (Model Based Design Kit) of NutaqTM is the development concept used. This concept is based on a high level programming code through models, to automatically generate a low-level code. A special attention is devoted to the method chosen to solve the eigenvalues decomposition problem for the complex autocorrelation matrix by Jacobi algorithm. The architecture designed implementing it in FPGA (Field Programmable Gate Array) is detailed. Furthermore, it is proved that MUSIC can perform an interesting estimate of the position of the sources without prior calibration of the antenna array. Thus, the calibration technique G matrix used in this project is presented, in addition to the implementation model. Finally, the experimental results of the system tested in a real environment in the presence of one source then two highly correlated sources are illustrated and analyzed.
|
9 |
Accélérateur à très basse latence d'un réseau de neurones sur FPGA pour simulations avec matériel dans la boucleBarnard, Christian 17 June 2024 (has links)
Ce mémoire présente les étapes qui ont mené à la conception et l'implémentation d'un accélérateur matériel d'un réseau de neurones qui sera chargé de la modélisation d'un environnement virtuel dans un simulateur de type "Hardware-in-the-Loop" (HIL). Ce module aura pour but d'offrir un environnement crédible à l'unité de contrôle électronique (ECU) testée sous la forme des signaux d'entrée requis par celle-ci. Cette crédibilité devra être reflétée autant au niveau de l'intégrité des prédictions qu'à celui de la latence de réponse aux actions de l'ECU. Ainsi, le modèle d'apprentissage machine sélectionné devra avoir une charge de calcul relativement légère à l'inférence. Puisque le système désiré devra posséder un haut niveau de portabilité et de réutilisabilité pour permettre l'intégration de différents ECU, le modèle devra être entraînable avec une quantité de données limitée. Suivant ces critères et restrictions, plusieurs architectures de réseaux de neurones furent initialement sélectionnées selon leur succès dans la littérature dans des contextes similaires à celui présenté. Les réseaux de type LSTM, GRU, TCN et NARX furent évalués et comparés sur une tâche de régression de séquences nécessitant la génération de signaux représentant les dynamiques d'un véhicule en freinage équipé d'un système ABS. Le modèle TCN fut capable de démontrer les meilleurs résultats sur la tâche en question comparativement aux autres réseaux. Une technique de régularisation utilisant la différentiation numérique des prédictions fut conçue et appliquée à l'entraînement du modèle afin de promouvoir la génération de signaux plus crédibles. Le réseau TCN fut finalement implémenté sur un accélérateur matériel utilisant les technologies FPGA afin de minimiser la latence des prédictions dans le système HIL. Le produit final permet d'offrir une prédiction du prochain état de l'environnement virtuel après 4.45 μs de latence. Cette valeur ne représente que l'inférence du modèle et omet la latence de communication et de conversion des signaux entre le module de prédiction et l'ECU testé. / This thesis presents the design and implementation of a hardware accelerator for a neural network that will be responsible for modeling a virtual environment in a Hardwarein- the-Loop simulator (HIL). This module aims to provide a credible environment to the electronic control unit (ECU) under test in the form of the input signals required by it. This credibility is reflected both in the integrity of the predictions and in the response latency to ECU actions. Thus, the selected machine learning model has a relatively light computational load at inference. Since the desired system possesses a high level of portability and reusability to allow the integration of different ECUs, the model remains trainable with limited data. Following these criteria and restrictions, several neural network architectures were initially selected according to their success in the literature in contexts similar to the one presented. LSTM, GRU, TCN and NARX architectures were evaluated and compared on a sequence regression task requiring generating signals representing the dynamics of a braking vehicle equipped with an ABS. The TCN model demonstrated the best results on the task in question compared to the other networks. A regularization technique using numerical differentiation of predictions was designed and applied to model training to promote the generation of more believable signals. The TCN network was finally implemented on a hardware accelerator using FPGA technologies to minimize the latency of the predictions in the HIL system. The final product makes it possible to offer a prediction of the next state of the virtual environment after 4.45 μs of latency. This value only represents the model inference and omits the communication and signal conversion latency between the prediction module and the ECU under test.
|
10 |
Implantation FPGA de l'algorithme de chiffrement à courbes elliptiques : génération de clefs privées représentées directement en format w-NAFDupont, Louis 12 April 2018 (has links)
Le chiffrement d'une communication sur un canal quelconque pose un problème de taille. Un émetteur doit en effet transmettre au récepteur une information lui permettant de décoder une communication chiffrée. Le canal d'information n'étant souvent pas physiquement sécurisé, cette information préliminaire doit être transmise sans que les interlocuteurs n'aient à se soucier qu'un autre acteur puisse intercepter cette information. Différents algorithmes ont été développés afin de rendre possible cet échange préliminaire. Parmi les algorithmes communéments utilisés, la cryptographie à courbe elliptique permet de maximiser la sécurité d'une communication avec un minimum d'échange préliminaire d'information. La cryptographie à courbe elliptique repose sur la multiplication d'un point sur cette courbe par un scalaire. Cette opération est relativement lourde au niveau logiciel. Le développement d'un co-processeur spécialisé pour cette opération devient alors pertinent. Ce mémoire résume le développement de pareil co-processeur. Ce dernier a été développé sur FPGA en minimisant les ressources logiques utilisées tout en maximisant la fréquence d'horloge opérationnelle. De plus, le nombre d'opérations sur la courbe elliptique a été minimisé en représentant l'entier multipliant le point sur la courbe elliptique sous sa forme numérique ω-NAF. Ce mémoire propose également une façon inédite pour générer aléatoirement un entier sous sa forme ω-NAF en minimisant les ressources logiques nécessaires pour pareille opération. / The encryption of a communication on a given channel may appear hazardous. An interlocutor must transmit to another one enough information allowing both interlocutors to encrypt or decrypt the communication. Since the communication channel is visible to potentially malicious actors, this preliminary information must be exchanged without worrying about others intercepting it. Several algorithms were developed making that exchange possible. Among the most commonly used algorithms, elliptic curve cryptography provides the highest strength per bit. Elliptic curve cryptography is based on the multiplication of a point on this curve by a scalar. This operation is relatively complex when implemented in software. The use of a specialized co-processor becomes an interesting approach to perform this operation. This thesis describes the development of such a co-processor. It has been developed targeting a FPGA, minimizing the use of logical resources while maximizing the operating frequency. Moreover, the number of operations on the elliptic curve have been minimized by representing the scalar multiplying the point of the elliptic curve in its ω-NAF form. A method randomly generating an integer in its ω-NAF representation is also proposed. This method can be implemented in hardware using a minimum of logical resources.
|
Page generated in 0.0521 seconds