Cours gratuit: Sécurité dans les systèmes temps réel

Sommaire: Cours gratuit: Sécurité dans les systèmes temps réelSécurité dans les systèmes

1 Introduction
1.1 Le problème
1.2 Organisation du mémoire
2 Pré-requis
2.1 Systèmes temps réel
2.1.1 Introduction
2.1.2 Les travaux
2.1.3 Les tâches
2.1.4 Le système
2.1.5 L’ordonnancement
2.2 Cryptologie
2.2.1 Introduction
2.2.2 Confidentialité
2.2.3 Intégrité et authentification
3 Etat de l’art
3.1 Introduction
3.2 Qualité de service et longueur des clés
3.2.1 Introduction
3.2.2 Modélisation du système
3.2.3 L’algorithme d’ajustement de la qualité de service
3.2.4 Conclusion
3.3 Ordonnancement dynamique basé sur des niveaux de sécurité
3.3.1 Conclusion
3.4 Méthode SASES
3.4.1 Modélisation
3.4.2 Différents services
3.4.3 Calcul du bénéfice au système
3.4.4 L’algorithme SASES
3.4.5 Conclusion
3.5 Méthode en graphe de services
3.5.1 Modélisation
3.5.2 Recherche dans le graphe
3.5.3 Conclusion : Comparaison avec SASES
3.6 Conclusion
4 Récompense et sécurité
4.1 Introduction
4.2 Reward-Based Scheduling
4.2.1 Introduction
4.2.2 Une fonction de récompense
4.2.3 Modélisation du système
4.2.4 Calcul de la récompense moyenne du système
4.2.5 Approche Mandatory-First (parties obligatoires d’abord)
4.2.6 Optimalité
4.2.7 Optimalité avec des fonctions linéaires de récompense
4.2.8 Optimalité avec des fonctions convexes de récompense
4.3 Conclusion
5 Simulations
5.1 Introduction
5.2 Génération d’un système
5.2.1 Génération des périodes
5.2.2 Génération de l’ensemble de tâches
5.3 L’algorithme orienté évènement
5.3.1 La gestion des évènements
5.3.2 L’algorithme
5.4 Rappel du problème d’optimisation des temps optionnels
5.5 Notations utilisées
5.6 Le recuit simulé
5.7 La recherche tabou
5.8 Obtention d’une solution voisine
5.9 Expérimentation
5.9.1 Limites des algorithmes
5.9.2 Analyse avec des fonctions linéaires de récompense
5.9.3 Simulation avec des fonctions convexes de récompense
5.10 Conclusion
6 Conclusion
A Complément à la démonstration de H. Aydin
B Code source de la simulation
B.1 Système
B.1.1 Systeme.h
B.1.2 Systeme.cpp
B.2 Tâche
B.2.1 Tache.h
B.2.2 Tache.cpp
B.3 Travail
B.3.1 Travail.h
B.3.2 Travail.cpp
B.4 Générateur
B.4.1 Generateur.h
B.4.2 Generateur.cpp
B.5 Divers
B.5.1 Divers.h
B.5.2 Divers.cpp
B.6 Event
B.6.1 Event.h
B.6.2 Event.cpp
B.7 Solution
B.7.1 Solution.h
B.7.2 Solution.cpp
B.8 Main
B.8.1 Main.cpp

Extrait du cours gratuit sécurité dans les systèmes temps réel

Chapitre 1 Introduction
1.1 Le problème
Les systèmes temps réel prennent une place de plus en plus importante dans notre société, ils servent à contrôler, réguler en « temps réel » des dis-positifs électroniques grâce à des capteurs, embarqués dans des robots, des véhicules spatiaux, etc. Ces systèmes temps réel embarqués sont souvent uti-lisés par le public dans la vie de tous les jours sans même qu’on ne s’en rende compte, par exemple dans les systèmes de freinage d’une voiture, le contrôle de vol d’un avion,. . .
Pour contrôler des systèmes critiques comme des centrales nucléaires, des réseaux électriques, etc. . . , le réseau public Internet est de plus en plus utilisé car cela a deux avantages majeurs :
– la maintenance du système est facilitée, on peut se connecter au système à partir de tout endroit où une connexion Internet est disponible ;
– les coûts sont réduits étant donné qu’il ne faut pas mettre en place un réseau privé.

Sécurité dans les systèmes
1.2 Organisation du mémoire
Clairement, ce mémoire liera donc deux disciplines en informatique, l’ordonnancement de systèmes temps réel et la sécurité de systèmes informatiques. Nous ferons d’abord un état des techniques utilisées dans la littérature pour résoudre ce problème. Nous nous pencherons sur les algorithmes itératifs permettant de chiffrer les données (ex : AES, RC6,. . . ), sur l’authentification de l’information et sur le contrôle d’intégrité (ex : méthodes HMAC, CBC-MAC,. . . ). Nous analyserons ensuite une méthode, le « Reward Based Scheduling » fournissant une récompense en fonction du temps ajouté pour la mise en place dans notre cas de la sécurité.
Pour clôturer, nous étudierons des heuristiques qui sur base de cette méthode tentent de trouver les temps se rapprochant le plus possible des temps optimaux pour établir la sécurité tout en validant le système, c.-à-d. en vérifiant par simulation que les contraintes d’échéance soient respectées.

Sécurité dans les systèmes
Chapitre 2 Pré-requis
2.1 Systèmes temps réel
2.1.1 Introduction
Nous apporterons dans cette section quelques définitions largement inspirées de [7] et notations qui pourront servir à la compréhension de la suite de ce mémoire.
Un système temps réel est constitué d’un ensemble de tâches et chacune d’elles doit effectuer une quantité de calculs. Les résultats produits par ces différentes tâches doivent être d’une certaine qualité mais aussi être fournis avant un instant donné, que nous appellerons l’échéance de cette tâche.Ces systèmes sont utilisés principalement dans des applications critiques qui ne peuvent pas se permettre de fournir un résultat erroné ou incomplet au moment de l’échéance, comme pour le contrôle d’une centrale nucléaire, le contrôle aérien, …

Sécurité dans les systèmes
2.1.2 Les travaux
Toute tâche no i (que nous noterons Ti ) prise dans un ensemble de n tâches (i ∈ [1, n]) composant le système, partage la quantité de calculs qu’elle doit effectuer en un certain nombre de travaux. Ces travaux obtiennent le processeur à intervalle régulier (périodique) ou non. Chaque travail (aussi appelé instance  ou job en anglais) obtient le processeur à un instant donné et peut s’exécuter sur une certaine durée.
2.1.3 Les tâches
Classiquement dans un système temps réel, les calculs (l’exécution de ces travaux) sont récurrents, les tâches peuvent être périodiques ou sporadiques. Nous nous focaliserons dans ce mémoire sur les systèmes à tâches périodiques.
Définition Tâche périodique : Une tâche périodique Ti est caractérisée par le tuple (Ai, Pi, Di, Ci )
– Ai est la date d’arrivée du premier travail de la tâche Ti , ce qui ne signifie pas que celui-ci s’exécutera à cette date.
– Pi est la période, c.-à-d. la durée qui sépare deux arrivées successives de travaux. Le deuxième travail d’une tâche Ti ne pourra donc pas s’exécuter avant l’instant A i + Pi.
– Di est l’échéance de la tâche Ti , qui dénote la limite supérieure de temps entre l’arrivée d’un travail et la fin de son exécution.

……..
Si le lien ne fonctionne pas correctement, veuillez nous contacter (mentionner le lien dans votre message)
Cours gratuit: Sécurité dans les systèmes temps réel (810 KO) (Cours PDF)
Sécurité dans les systèmes

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *