1,854 research outputs found

    Implantation sur circuit SoC-FPGA d'un système de chiffrement/déchiffrement AES-128 bits en utilisant deux approches de différents niveaux d'abstraction

    Get PDF
    RÉSUMÉ : La sécurité des données est une priorité absolue dans le monde technologique. Pour garantir la sécurité et la confidentialité des données, l'usage des systèmes de chiffrement/déchiffrement devient une nécessité dans plusieurs domaines. Dans ce mémoire nous présentons une architecture simple de système de chiffrement avancé à 128 bits en mode compteur (AES-CTR-128 bit), implantée sur une carte PYNQ-Z2 pour chiffrer/déchiffrer des signaux d'électrocardiogramme ECG (ElectroCardioGram) de la base de données MIT-BIH. Le système n'utilise que 13% des ressources matérielles du circuit Xilinx ZYNQ XC7Z020. Il consomme une puissance de 43 mW et opère à une fréquence maximale de 109.43 MHz, qui correspond à un débit maximal de 14 Gbps. Le temps d'exécution de chiffrement et de déchiffrement d'un fichier de valeurs séparée par des virgules CSV (Comma Separated Value) par rapport d'un fichier texte TXT (Text) est environ deux fois plus court dans les deux plateformes utilisant deux approches ayant des niveaux d'abstraction différents. La première utilise la programmation bas-niveaux via la plateforme Xilinx Vitis alors que la seconde utilise l'outil Jupyter/Python. L'architecture matérielle proposée est environ quatre fois plus rapide que l'implantation logicielle et il y a une légère différence au niveau du temps d'exécution pour l'implantation de notre architecture sur les deux plateformes présentées (Vivado/Vitis ou Jupyter/Python). Nous avons aussi testé notre architecture matérielle avec d'autres types de données tels que les signaux audio et des images. Nous avons utilisé la plateforme Jupyter/Python pour sa simplicité de manipulation. Le chiffrement/déchiffrement d'un signal audio d'une durée de 7 secondes et d'une fréquence d'échantillonnage de 8 kHz est réduit respectivement à 4.6 ms et 4.87 ms, par rapport à 16.18 ms et 15.8 ms pour le chiffrement/déchiffrement d'un signal audio par l'implantation logicielle. De même pour l'image couleur et l'image en niveau de gris. Ainsi que le temps de chiffrement d'une image couleur prend entre trois à quatre fois le temps de chiffrement d'une image en niveau de gris dans les deux implantations logicielle et matérielle. L'architecture matérielle présentée peut être utilisée dans un large éventail d'applications embarquées. Les résultats présentés ont montré que l'architecture proposée a surpassé toutes les autres implantations existantes sur FPGA. -- Mot(s) clé(s) en français : Cryptographie, AES, Circuit FPGA, Signal ECG, Circuit ZYNQ, Chiffrement/Déchiffrement, Cryptage/Décryptage. -- ABSTRACT : Data security is a top priority in the technological world. To ensure data security and privacy, the use of encryption/decryption systems becomes a necessity in several areas. In this dissertation, we present a simple architecture of advanced 128-bit counter mode encryption systems (AES-CTR-128 bit), implemented on a PYNQ-Z2 board to encrypt/decrypt electrocardiogram (ECG) signals from the MIT-BIH database. The system uses only 13% of the hardware resources of the Xilinx ZYNQ XC7Z020 chip. It consumes 43 mW of power and operates at a maximum frequency of 109.43 MHz, which corresponds to a maximum through of 14 Gbps. The execution time of encryption and decryption of the comma-separated value (CSV) file compared to the text file (TXT) is about twice as short in both platforms using two approaches with different abstraction levels. The first use low-level programming via the Xilinx Vitis platform while the second uses the Jupyter/Python tool. The proposed hardware architecture is about four times faster than the software implementation and there is a slight difference in execution time for the implementation of our architecture on the two platforms presented (Vivado/Vitis or Jupyter/Python). We also tested our hardware architecture with other types of data such as audio signals and images. We used the Jupyter/Python platform for its simplicity of handling. The encryption/decryption of an audio signal with a duration of 7 seconds and a sampling rate of 8 kHz are reduced to 4.6 ms and 4.87 ms, respectively, compared to 16.18 ms and 15.8 ms for the encryption/decryption of an audio signal by the software implementation. The same applies to the color and grayscale image. Thus, the encryption time of a color image takes between three and four times the encryption time of a grayscale image in both software and hardware implementations. The presented hardware architecture can be used in a wide range of embedded applications. The presented results showed that the proposed architecture outperformed all other existing FPGA-based implementations. -- Mot(s) clé(s) en anglais : Cryptography, AES, FPGA circuit, ECG signal, ZYNQ circuit, Encryption/Decryption

    Netlang : un langage de haut niveau pour les routeurs programmables dans le contexte des réseaux SDN

    Get PDF
    Développer des applications réseaux pour des routeurs programmables basés sur les Network Processors (NPs) implique l'utilisation de langages de bas-niveau et d'outils propriétaires fortement dépendants des architectures matérielles sous-jacentes. Le code source, généralement écrit en langage assembleur, n'est pas facile à écrire et cause des problèmes de maintenance. Les applications résultantes sont également difficiles à déboguer. Dans ce mémoire nous proposons NETLANG, un nouveau langage de programmation de haut-niveau dédié aux NPs. De plus d'être un langage simple et élégant, de réduire les coûts de développement et de la maintenance, et d'améliorer la réutilisation du code, NETLANG a pour objectif essentiel de décrire le comportement des paquets dans un NP. NETLANG est un langage qui permet de développer des applications de traitement de paquets. Il établit deux niveaux. Le premier niveau du langage offre une abstraction et une description du routeur à travers un pipeline de tables OpenFlow et des règles de forwarding ayant l'aptitude d'être modifiées dynamiquement et donc de permettre de changer le comportement du routeur à la volée. La sémantique du langage est inspirée du protocole OpenFlow qui a permis d'exprimer les principales tâches de traitement de paquets telles que le parsing, le lookup et la modification. Le langage est bâti en respectant le modèle des Software Defined Networks (SDNs) qui définit un nouveau plan de séparation entre le control plane et le data plane. Le deuxième niveau de NETLANG est traduit en matériel et permet l'adaptabilité du langage à plusieurs plateformes. Des adaptateurs spécifiques à des plateformes différentes sont intégrés au compilateur de NETLANG et permettent de rendre le langage portable. En effet, nous avons utilisé deux environnements pour l'implémentation de NETLANG ; le NP4 d'EZchip caractérisé par sa structure de TOPs (Task Optimized Processors) en pipeline et le NFP-3240 de Netronome connu pour son parallélisme et l'exploitation du multithreading. La validation de NETLANG s'est basée sur un ensemble d'applications réseau ayant des complexités et des domaines différents. A travers ce mémoire nous avons démontré qu'on est capable d'avoir aujourd'hui un langage pour les routeurs programmables. La sémantique d'OpenFlow, sur laquelle nous avons basé notre langage NETLANG, est suffisante et même pertinente en termes de description de comportement des paquets dans un NP.\ud ______________________________________________________________________________ \ud MOTS-CLÉS DE L’AUTEUR : langages à domaine spécifique, réseaux programmables, processeurs de réseau

    Construction de réponses coopératives : du corpus à la modélisation informatique

    Get PDF
    Les stratégies utilisées pour la recherche d’information dans le cadre du Web diffèrent d’un moteur de recherche à un autre, mais en général, les résultats obtenus ne répondent pas directement et simplement à la question posée. Nous présentons une stratégie qui vise à définir les fondements linguistiques et de communication d’un système d’interrogation du Web qui soit coopératif avec l’usager et qui tente de lui fournir la réponse la plus appropriée possible dans sa forme et dans son contenu. Nous avons constitué et analysé un corpus de questions-réponses coopératives construites à partir des sections Foire Aux Questions (FAQ) de différents services Web aux usagers. Cela constitue à notre sens une bonne expérimentation de ce que pourrait être une communication directe en langue naturelle sur le Web. Cette analyse de corpus a permis d’extraire les caractéristiques majeures du comportement coopératif et de construire l’architecture de notre système informatique webcoop, que nous présentons à la fin de cet article.Algorithms and strategies used on the Web for information retrieval differ from one search engine to another, but, in general, results do not lead to very accurate and informative answers. In this paper, we describe our strategy for designing a cooperative question answering system that aims at producing the most appropriate answers to natural language questions. To characterize these answers, we collected a corpus of cooperative question in our opinion answer pairs extracted from Frequently Asked Questions. The analysis of this corpus constitutes a good experiment on what a cooperative natural language communication on the Web could be. This analysis allows for the elaboration of a general architecture for our cooperative question answering system webcoop, which we present at the end of this paper

    Intégration des cycles d'usinage avancés des machines-outils à commande numérique aux logiciels de FAO

    Get PDF
    L'utilisation des machines-outils à commande numérique (MOCN) et des logiciels de conception et de fabrication assistées par ordinateur (CAO / FAO) est devenue omniprésente dans le domaine de la fabrication. Ces technologies exigent un haut niveau d'intégration de manière à permettre le transfert d'une information de qualité entre la plate-forme logicielle et le contrôleur de la machine, assurant ainsi un degré de performance et de rentabilité maximisés. Les derniers développements technologiques au niveau des contrôleurs de MOCN font en sorte que l'on y retrouve maintenant des routines avancées, permettant une augmentation significative des possibilités et de la flexibilité des machines les utilisant. Toutefois, le développement de ces nouvelles fonctionnalités est effectué de manière propriétaire par chaque fabricant de contrôleur. Ceci a comme conséquence que la majorité des fonctionnalités avancées actuellement offertes avec les MOCN ne peuvent pas être utilisées par les systèmes de FAO de la génération des trajets d'outils. Le présent projet a pour but de définir une méthodologie d'intégration des modules FAO et de post-processeur de manière à rendre disponible à même le logiciel de FAO les cycles avancés des MOCN. Le projet a permis de réaliser une telle intégration à l'aide du développement logiciel d'un module spécialisé dans le système CFAO Pro/ENGINEER 2000.. de la firme PTC ainsi que dans le logiciel de post-processeur CAM-POST de ICAM. Il a été prouvé qu'une telle intégration était possible, des essais d'usinage ont été effectués à titre comparatif en utilisant le module qui a été développé et avec l'approche traditionnelle. Les résultats des essais comparatifs d'usinage avec et sans l'intégration proposée ont permis de prouver que l'intégration des cycles avancés permettait d'obtenir une meilleure lisibilité des programmes d'usinage ainsi qu'une plus large possibilité de modifications du programme par l'opérateur de la MOCN. De plus, les programmes de taille réduite ainsi obtenus, une fois modifiés par l'opérateur de la MOCN, peuvent être réacheminés au département d'ingénierie afin d'assurer la mise à jour automatique des modèles CFAO. Les temps d'usinage lors de l'utilisation des cycles avancés sont comparables à ceux qui résultent de l'emploi des capacités natives du système FAO
    • …
    corecore