![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() ![]() |
|
Titre : Système de fichiers chiffré et contrôleur de disque multi-canalDurée :6 mois Financement :Projet ANR Tsunamy Équipe d'accueil :Laboratoire LIP6, Département SoC, équipe Alsoc ContexteLe projet ANR TSUNAMY adresse la problématique de la manipulation sécurisée des données personnelles et privées au sein d'architectures manycore. Il vise entre autres à proposer une solution de confiance par construction permettant d'exécuter plusieurs piles logicielles indépendantes en parallèle -- en en garantissant le cloisonnement mutuel -- sur une architecture manycore CC Numa. Pour cela, plusieurs contributions sont proposées dans le cadre de ce projet :
Le premier point est celui qui nous intéresse principalement dans ce stage. Les piles logicielles sont, dans le cadre de ce stage, des systèmes d'exploitation (SE) complets. L'environnement de travail utilisera la bibliothèque de composants soclib et la modélisation SystemC de l'architecture Tsar. MotivationsLa gestion de plusieurs SE sur une même puce demande au matériel de garantir le cloisonnement des mémoires utilisées par ces systèmes. Néanmoins, le disque dur est a priori un point problématique car il peut être monté et lu par n'importe quel SE. ObjectifsUne utilisation possible des cryptoprocesseurs consiste à les exploiter pour implémenter un système de fichier chiffré transparent pour l'utilisateur. Le stage sera basé sur le système de fichiers du système d'exploitation ALMOS. Après avoir chargé une clé de session au démarrage du système (ex : mot de passe), le SE accèdera au contrôleur de disque à l'aide de cette clé. Ainsi, les blocs du disque sont déchiffrés/chiffrés avec cette clé lors d'une lecture/écriture (transfert disque-mémoire). Un tel système de fichier implémenté entièrement en logiciel représente un surcout très important en temps, car le cout du chiffrement d'un bloc est élevé. L'idée ici est de minimiser ce cout en utilisant les cryptoprocesseurs à disposition dans l'architecture. Cela nécessite l'intégration des cryptoprocesseurs dans l'architecture, l'écriture d'un driver pour ce composant, ainsi que la modification du driver de disque existant. Une autre problématique visée par le stage concerne le nombre de canaux du contrôleur de disque. Actuellement, le contrôleur de disque ne possède qu'un seul canal, ce qui va bien lorsqu'il n'y a qu'un système d'exploitation. Avec plusieurs SE, il faut en revanche plusieurs disques ou plusieurs canaux. L'objectif consiste donc à réaliser un contrôleur de disque multi-canaux. Dans un premier temps, on peut faire l'hypothèse d'avoir un disque derrière chaque canal, mais dans l'idéal, l'association d'une partition par canal serait préférable. Cela implique que le contrôleur soit capable de détecter les différentes partitions d'une image disque. RéalisationLe stage comportera entre autres les étapes suivantes : Partie 1 :
Partie 2:
Compétences souhaitées
Références[1] TSUNAMY. Project Home Page. web: www-asim.lip6.fr/trac/tsunamy [2] Tera Scale ARchitecture. Project Home Page. web: tmp-soc.lip6.fr/trac/tsar [3] Soclib. Project Home Page. web: www.soclib.fr [4] G. Almaless : “Conception d’un système d’exploitation pour une architecture many-cores à mémoire partagée cohérente de type cc-NUMA”, these, defense 02/27/2014, supervision Greiner, Alain, co-supervision WAJSBÜRT Franck (2014) EncadrantFranck Wajsburt |