221 |
Définition d'une architecture IoT sécurisée et adaptative basée sur la blockchain / A new blockchain-based secure and adaptative IoT frameworkMoinet, Axel 17 January 2019 (has links)
Au cours des quinze dernières années, le développement de plateformes embarquées intelligentes et les progrès des protocoles de communication radio ont permis l'émergence de réseaux de capteurs sans-fils (WSN). D'autre part, la démocratisation d'Internet et du Web, ainsi que l'augmentation des débits ont contribué à l'essor d'un nouveau paradigme : le Cloud computing. L'Internet des Objets, (IoT) ou Internet des Objets réalise la convergence entre les réseaux de capteurs et le Cloud computing. De nombreux travaux adressant les problématiques de l'IoT ont étés menés ces dix dernières années, cependant ces propositions manquent ne tiennent pas suffisamment compte des problématiques de sécurité et de protection des données. D'après Gartner, 70 % des plateformes déployées ne disposent pas d'une solution de sécurité efficace, les rendant vulnérables aux attaques. Dans le domaine des monnaies numériques, Bitcoin propose en son sein une nouvelle structure de données authentifiée et trustless permettant la décentralisation de l'enregistrement de transactions en s'appuyant sur un protocole permettant d'obtenir un consensus : la blockchain. Cette thèse se focalise sur l'utilisation de cette nouvelle structure de données dans les WSN dans un contexte IoT, comme base pour la définition d'une architecture sécurisée et adaptative basée sur la blockchain. Le but de cette architecture est d'intégrer les solutions existantes pour l'organisation du réseau et l'accès aux services de manière innovante afin de réaliser l'intégration des WSN avec l'infrastructure web; mais aussi d'y adjoindre une solution répondant aux nouveaux besoins de sécurités et contraintes spécifiques des réseaux de capteurs. Nous proposons pour cela un framework nommé Network Service Loader (NSL) en charge de la gestion de services et d'agents mobiles, auquel s'adjoint notre solution Blockchain Authentication and Trust Module (BATM) en charge de l'authentification, du contrôle d'accès, ainsi que des évaluations de confiance via l'algorithme Maximum Likelihood Trust Estimator (MLTE). / During the last fifteen years, the rise of smart and wireless enabled embedded devices lead to the development of wireless sensor networks (WSN). In the same time, the emerging of Cloud computing with the development of the Internet and the Web as an everyday technology thanks to the rise of bandwidth and processing power leads to new network paradigms. The Internet of Things (IoT) primary goal is to bridge the gap between these technologies and bring WSN sensing and actuating abilities to Cloud applications. We count a significant amount of work targetting the IoT in the last decade, however they lack proper solutions to ensure data privacy and security. Gartner investigations shows that 70 % of connected and smart devices provide little or no security policies and solutions, making both user and devices vulnerable to attackers. In the field of digital currencies, Bitcoin proposed a new authenticated and trustless data structure dedicated to transactions logging in a decentralized network with the help of a consensus protocol : the blockchain. This thesis is focused on bringing the blockchain technology as a new solutions for security in decentralized WSN in the IoT, providing the basis for a secure and adaptative agent-based middleware and execution framework. This framework attempt to federate existing work regarding the architecture of the IoT, but also to tackle security issues regarding network access, agent execution and trust evaluation. To achieve this goal, we propose Network Service Loader (NSL), an agent-based middleware constructed of existing protocols in a new way, along with a new solution called Blockchain Authentication and Trust Module (BATM) dedicated to node and users authentication, access control policies, and trust evaluation through our new Maximum Likelihood Trust Estimator (MLTE) algorithm.
|
222 |
Reengineering Object Oriented Software Systems for a better Maintainability / Ré-ingénierie des applications à objets pour une amélioration de leurs attributs de qualitéZellagui, Soumia 05 July 2019 (has links)
Les systèmes logiciels existants représentent souvent des investissements importants pour les entreprises qui les développent avec l’intention de les utiliser pendant une longue période de temps. La qualité de ces systèmes peut être dégradée avec le temps en raison des modifications complexes qui leur sont incorporées. Pour faire face à une telle dégradation lorsque elle dépasse un seuil critique, plusieurs stratégies peuvent être utilisées. Ces stratégies peuvent se résumer en: 1) remplaçant le système par un autre développé à partir de zéro, 2) poursuivant la maintenance(massive) du système malgré son coût ou 3) en faisant une réingénierie du système. Le remplacement et la maintenance massive ne sont pas des solutions adaptées lorsque le coût et le temps doivent être pris en compte, car elles nécessitent un effort considérable et du personnel pour assurer la mise en œuvre du système dans un délai raisonnable. Dans cette thèse, nous nous intéressons à la solution de réingénierie. En général, la réingénierie d’un système logiciel inclut toutes les activités après la livraison à l’utilisateur pour améliorer sa qualité. Cette dernière est souvent caractérisé par un ensemble d’attributs de qualité. Nous proposons trois contributions pour améliorer les attributs de qualité spécifiques, que soient:la maintenabilité, la compréhensibilité et la modularité. Afin d’améliorer la maintenabilité, nous proposons de migrer les systèmes logiciels orientés objets vers des systèmes orientés composants. Contrairement aux approches existantes qui considèrent un descripteur de composant comme un cluster des classes, chaque classe du système existant sera migré en un descripteur de composant. Afin d’améliorer la compréhensibilité, nous proposons une approche pour la reconstruction de modèles d’architecture d’exécution des systèmes orientés objet et de gérer la complexité des modèles résultants. Les modèles, graphes, générés avec notre approche ont les caractéristiques suivantes: les nœuds sont étiquetés avec des durées de vie et des probabilités d’existence permettant 1) une visualisation des modèles avec un niveau de détail. 2) de cacher/montrer la structure interne des nœuds. Afin d’améliorer la modularité des systèmes logiciels orientés objets, nous proposons une approche d’identification des modules et des services dans le code source de ces systèmes.Dans cette approche, nous croyons que la structure composite est la structure principale du système qui doit être conservée lors du processus de modularisation, le composant et ses composites doivent être dans le même module. Les travaux de modularisation existants qui ont cette même vision, supposent que les relations de composition entre les éléments du code source sont déjà disponibles ce qui n’est pas toujours évident. Dans notre approche, l’identification des modules commence par une étape de reconstruction de modèles d’architecture d’exécution du système étudié. Ces modèles sont exploités pour d’identification de relations de composition entre les éléments du code source du système étudié. Une fois ces relations ont été identifiées, un algorithme génétique conservatif aux relations de composition est appliqué sur le système pour identifier des modules. En dernier, les services fournis par les modules sont identifiés à l’aide des modèles de l’architecture d’exécution du système logiciel analysé. Quelques expérimentations et études de cas ont été réalisées pour montrer la faisabilité et le gain en maintenabilité, compréhensibilité et modularité des logiciels traités avec nos propositions. / Legacy software systems often represent significant investmentsfor the companies that develop them with the intention of using themfor a long period of time. The quality of these systems can be degraded over time due to the complex changes incorporated to them.In order to deal with these systems when their quality degradation exceeds a critical threshold, a number of strategies can be used. Thesestrategies can be summarized in: 1) discarding the system and developinganother one from scratch, 2) carrying on the (massive) maintenance of the systemdespite its cost, or 3) reengineering the system. Replacement and massive maintenance are not suitable solutions when the cost and time are to be taken into account, since they require a considerable effort and staff to ensurethe system conclusion in a moderate time. In this thesis, we are interested in the reengineering solution. In general, software reengineering includes all activities following the delivery to the user to improve thesoftware system quality. This latter is often characterized with a set of quality attributes. We propose three contributions to improve specific quality attributes namely: maintainability, understandability and modularity.In order to improve maintainability, we propose to migrateobject oriented legacy software systems into equivalent component based ones.Contrary to exiting approaches that consider a component descriptor as a clusterof classes, each class in the legacy system will be migrated into a componentdescriptor. In order to improve understandability, we propose an approach forrecovering runtime architecture models of object oriented legacy systems and managing the complexity of the resulted models.The models recovered by our approach have the following distinguishing features: Nodes are labeled with lifespans and empirical probabilities of existencethat enable 1) a visualization with a level of detail. 2) the collapsing/expanding of objects to hide/show their internal structure.In order to improve modularity of object-oriented software systems,we propose an approach for identifying modulesand services in the source code.In this approach, we believe that the composite structure is the main structure of the system that must be retained during the modularization process, the component and its composites must be in the same module. Existing modularization works that has this same vision assumes that the composition relationships between the elements of the source code are already available, which is not always obvious. In our approach, module identification starts with a step of runtime architecture models recovery. These models are exploited for the identification of composition relationships between the elements of the source code. Once these relationships have been identified, a composition conservative genetic algorithm is applied on the system to identify modules. Lastly, the services provided by the modules are identified using the runtime architecture models of the software system. Some experimentations and casestudies have been performed to show the feasibility and the gain inmaintainability, understandability and modularity of the software systems studied with our proposals.
|
223 |
Communication stratégique et réseauxHagenbach, Jeanne 19 November 2009 (has links) (PDF)
Depuis une dizaine d'années, l'étude des réseaux est une branche très active de la recherche en économie. Il est désormais largement admis que ceux-ci jouent un rôle central dans la transmission décentralisée des informations entre les individus. Les informations communiquées par ces derniers concernent aussi bien les opportunités d'emplois que l'état du marché dans lequel une équipe de travailleurs évolue. Cette thèse propose une nouvelle approche du lien entre la manière dont les agents transmettent stratégiquement leurs informations privées et la structure du réseau dont ils font partie. La théorie des jeux non coopérative a été appliquée à l'étude des réseaux sociaux et économiques dans les deux branches suivantes: d'une part, les Jeux en Réseaux considèrent que les joueurs sont les membres d'un réseau donné et analysent la manière dont les comportements stratégiques et les résultats économiques sont influencés par l'architecture de ce réseau ; d'autre part, les Jeux de Formation de Réseaux modélisent la construction stratégique des connections entre les individus. Ce travail apporte une contribution µa ces deux domaines de recherche. Dans la première partie de ma thèse, que forme le Chapitre 1 intitulé Centralisation des Informations dans les Réseaux, les joueurs appartiennent à un réseau qui affectent leur manière de transmettre leurs informations. Dans la seconde partie, constituée des Chapitres 2 et 3 et intitulée Réseaux de Communication Stratégique, la structure des liens entre les agents découle de leur communication stratégique.
|
224 |
ROTATIONS DISCRETES ET AUTOMATES CELLULAIRESNouvel, Bertrand 14 September 2006 (has links) (PDF)
Dans un espace discret, comme l'ensemble des points à coordonnées entières, la modélisation de l'isotropie pose des difficultés théoriques notables. À ce jour, aucune théorie géométrique sur $\ZZ^n$ n'est apte à rendre compte de l'isotropie telle qu'elle est décrite par la géométrie euclidienne. Dans l'optique de contribuer à cette problématique, nous nous intéressons à la conception d'algorithmes capables de donner aux rotations discrètes des propriétés proches de celles de la rotation euclidienne. Ces algorithmes doivent de plus fonctionner à base d'arithmétique entière. Après avoir montré la non-existence de rotation discrète transitive sur $\ZZ^n$, nous introduisons un codage de rotations discrètes que nous relions à la fois à la dynamique symbolique et aux automates cellulaires. Il s'agit alors de mener une étude locale des rotations discrètes. Cette étude se situe au carrefour entre géométrie discrète et systèmes dynamiques symboliques. La pertinence des configurations obtenues est justifiée par l'existence de transducteurs planaires capables d'effectuer des rotations à partir des configurations. Ensuite, afin de réinterpréter ces configurations dans le cadre de la théorie des systèmes dynamiques, nous étendons des notions classiques de cette théorie à la dimension 2. Pour la rotation discrétisée, la dynamique symbolique associée est conjuguée avec un jeu de deux translations orthogonales sur un tore bidimensionnel. Après analyse, nous constatons que les configurations obtenues sont des superpositions de configurations de faible complexité. Cela évoque alors les généralisations planaires des mots sturmiens étudiées entre autres par Valérie Berthé et Laurent Vuillon. Des résultats analogues sont aussi obtenus pour les rotations $3$-transvections. L'analyse les rotations discrètes par le biais de systèmes dynamiques a permis de nombreux résultats : mise en évidence de la quasipériodicité des configurations, calcul de la fréquence des symboles, caractérisation des rotations discrétisées bijectives, ce qui est aussi la réciproque du théorème d'Éric Andrès et Marie-Andrée Jacob. Nous avons aussi étudié les discontinuités du processus de rotation. Ces discontinuités ont lieu pour des angles issus d'un sous-ensemble des angles quadratiques (i.e. les angles charnières). En combinant ces remarques, nous aboutissons à deux algorithmes. Le premier algorithme réalise des rotations sans faire aucun calcul à virgule flottante et sans calculer aucun sinus ni aucun cosinus. Il fonctionne de manière incrémentale et en ordre de complexité optimal. Le second algorithme est une implémentation de la rotation $3$-transvections sur automates cellulaires. D'autres pistes pour la conception d'algorithmes sont mentionnées dans la thèse. En outre, nous nous intéressons aussi aux méthodes substitutives qui engendrent les configurations de rotations. Pour les angles quadratiques, nous montrons que les configurations de rotations sont des entrelacements de configurations autosimilaires; et nous présentons le schéma d'une approche basée sur les graphes de Rauzy pour l'inférence de substitutions planaires. En combinant ces deux approches, nous mettons en avant les éléments essentiels de la démonstration de l'autosimilarité de $C_{\pi/4}$. Les applications potentielles de cette thèse concernent à terme l'implémentation d'algorithmes de rotations pour processeurs graphiques. Elle contribue aussi à l'étude des méthodes algorithmiques pour la modélisation physique en milieu discret de phénomènes isotropes.
|
225 |
Outils pour le pavage de surfacesFavreau, Jean-Marie 22 October 2009 (has links) (PDF)
Alors que l'on observe une disponibilité croissante de données décrivant des objets 3D, il semble essentiel de disposer de moyens de traitement efficaces de ces derniers. Ainsi, nous présentons dans ce mémoire un ensemble d'outils de manipulation de surfaces, qui exploitent à la fois leurs propriétés géométriques et topologiques. Après avoir décrit différents résultats classiques de topologie, et les structures et résultats fondamentaux de la topologie algorithmique, nous présentons les concepts de M-tuiles et M-pavages, offrant notamment une grande souplesse combinatoire, et permettant de décrire finement le résultat d'algorithmes de découpage topologique. En s'appuyant sur les possibilités de description de ce formalisme, nous présentons différents algorithmes de découpage de surface, prenant en compte non seulement la topologie et la géométrie des surfaces, mais également les propriétés des M-tuiles issues de ces découpages. Nous présentons également dans ce mémoire une généralisation des lacets par les n-cets, permettant notamment de décrire une approche originale de pavage de surfaces en cylindres puis en quadrangles. Enfin, deux applications de ces outils de découpage sont présentées. Dans un premier temps, nous déclinons ces algorithmes de découpage dans le contexte de l'infographie, en proposant un ensemble d'outils d'aide à la manipulation de surfaces. Puis nous présentons dans un second temps une chaîne complète de traitement de données issues de l'imagerie médicale, permettant la visualisation dynamique de données complexes sur des cartes planes de la surface du cerveau, en illustrant sa pertinence dans le contexte de la stimulation corticale. En conclusion de ces travaux, nous présentons les perspectives que laissent entrevoir ces développements originaux, notamment en exploitant les possibilités offertes par les n-cets et les M-pavages, qui semblent multiples. Nous soulignons également la richesse qu'assure une exploration des domaines applicatifs par des outils issus de la géométrie algorithmique.
|
226 |
Contribution à la caractérisation et à l'évaluation de l'interopérabilité pour les entreprises collaborativesBlanc, Séverine 20 December 2006 (has links) (PDF)
Cette thèse consiste en la définition d'une méthodologie de caractérisation et d'évaluation du niveau d'interopérabilité interentreprises, afin d'améliorer leur fonctionnement propre, ainsi qu'en la définition d'une méthodologie de gestion de l'évolution de ces entreprises, leur apportant ainsi un cadre pour la mise en place de projets successif ayant pour objectif l'amélioration du niveau d'interopérabilité. Ces méthodes s'appliquent à tous les niveaux, tant opérationnels que stratégiques, ainsi que pour tous types de collaboration que ce soit entre services d'une même entreprise ou entre plusieurs entreprises d'une chaîne logistique. Ces méthodes sont basées sur le fait que l'interopérabilité peut être vu comme une performance de l'entreprise. Ceci nous permet de caractériser et d'évaluer l'interopérabilité, notamment, grâce à l'utilisation de la théorie des graphes qui apporte un cadre formel, des outils mathématiques et une représentation graphique qui sont autant d'aides tant pour la conduite de l'étude que pour la communication avec les différents acteurs concernés.
|
227 |
Modélisation et traitement décentralisé des graphes dynamiques<br />Application aux réseaux mobiles ad hocPigné, Yoann 04 December 2008 (has links) (PDF)
Les graphes dynamiques sont un outil de plus en plus utilisé dans des contextes variés où il s'avère nécessaire de modéliser des environnements changeants ou incertains. Les modèles aujourd'hui proposés sont dédiés à ces applications précises. Il n'existe pas de modèle général reprenant, hors de tout contexte applicatif, ces caractéristiques. D'autre part la résolution de problèmes liés à ces environnements dynamiques et incertains est problématique. Nous proposons, ici, la formalisation d'un modèle général de graphe dynamique. <br /><br />Nous étudions la résolution de problèmes dans ces graphes à l'aide de méthodes inspirées de mécanismes d'intelligence collective. <br /><br />Les modèles proposés sont validés dans le contexte applicatif des réseaux mobiles ad hoc. Une approche originale de construction et de maintien de chemins de communication sous plusieurs contraintes est proposée. Le problème de la construction et du maintien d'une forêt couvrante dans un réseau mobile ad hoc est également étudié.
|
228 |
Simulations d'automates cellulairesMartin, Bruno 08 April 2005 (has links) (PDF)
Ce mémoire est composé de deux grandes parties. Dans la première, nous simulons le fonctionnement d'automates cellulaires par différents modèles de calcul parallèle comme les PRAM, les XPRAM et les machines spatiales. Nous obtenons ainsi différentes preuves de l'universalité de ces modèles. Nous tirons quelques conséquences de ces résultats du point de vue de la calculabilité et de la complexité. Dans la seconde partie, nous considérons les automates cellulaires définis sur des graphes de Cayley finis. Nous rappelons la simulation de Róka qui permet de mimer le fonctionnement d'un tore hexagonal d'automates par un tore d'automates de dimension deux. Nous décrivons ensuite différentes manières de plonger un tore d'automates de dimension deux dans un anneau d'automates. Nous déduisons de ces résultats la simulation de tores de dimension finie par un anneau d'automates et celle d'un tore hexagonal d'automates par un anneau d'automates.
|
229 |
Un calcul de réécriture de graphes : applications à la biologie et aux systèmes autonomesAndrei, Oana 05 November 2008 (has links) (PDF)
L'objectif de cette thèse est d'explorer des descriptions formelles pour la structure et le fonctionnement des systèmes biologiques, ainsi que des outils formels pour raisonner au sujet de leur comportement. Cette thèse s'inscrit dans les travaux étudiant les modèles informatiques sûrs où les calculs sont exprimés par l'intermédiaire de la réécriture, et où nous pouvons compter sur la vérification formelle pour exprimer et valider les propriétés des modèles. Dans cette thèse nous développons un calcul de réécriture d'ordre supérieur pour décrire des molécules, des règles de réaction, et la génération des réseaux biochimiques. Le calcul est basé sur la métaphore chimique en décrivant les calculs en termes de solutions chimiques dans lesquelles les molécules représentant des données agissent l'une sur l'autre librement selon des règles de réaction. Ainsi nous avons obtenu un Calcul Biochimique Abstrait étendant le modèle chimique d'ordre supérieur en considérant des molécules structurées. Le calcul est équipé d'une spécification naturelle de la concurrence et des mécanismes de contrôle grâce à l'expression des stratégies de réécriture sous forme de molécules. La description des complexes moléculaires ou des réactifs chimiques appartient à une classe spécifique de graphes. Nous définissons la structure des graphes avec ports et nous montrons que les principes du calcul biochimique instanciés pour les graphes avec ports sont assez expressifs pour modéliser des systèmes autonomes et des réseaux biochimiques. En plus, les techniques de la réécriture stratégique ouvrent la voie au raisonnement basé sur les calculs et à la vérification des propriétés des systèmes modélisés.
|
230 |
Étude de la complexité des logiciels de type flots de données en vue de la fiabilité : application à l'atelier logiciel SAGAChevalier, Marcel 28 November 1989 (has links) (PDF)
Cette thèse présente une métrique de complexité des logiciels adaptée aux programmes écrits dans un langage de type flots de données. Dans un premier temps, on décrit l'environnement qui a servi de base à cette étude: il s'agit de l'atelier logiciel saga (spécification d'applications et génération automatisée) mis au point par l'entreprise Merlin Gerin, dans lequel les programmes produits sont de type flots de données synchrone, et sont construits grâce a un outil graphique. On décrit ensuite la métrique proposée: celle-ci vise a mesurer la complexité graphique des logiciels considérés. Une campagne de mesures a été conduite sur des applications réelles en cours de développement à Merlin Gerin (département systèmes et électronique de sûreté) pour étudier le comportement empirique de cette métrique. On observe les résultats obtenus conjointement avec d'autres métriques de complexité plus sobres
|
Page generated in 0.0364 seconds