Sécurité des Architectures de Calcul Distribué: Authentification et Certification de Résultats Sébastien Varrette Soutenance d une thèse en co-tutelle sous la direction de Franck Leprévost & Jean-Louis Roch Laboratoire LACS, Université du Luxembourg, Luxembourg Laboratoire LIG (UMR 5217), Grenoble, France Vendredi 7 septembre 2007 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 1 / 43
Plan 1 Les architectures de calcul distribué Caractérisations Problématiques de sécurité traitées dans cette thèse 2 Construction d un système d authentification pour Grid 5000 Contexte et motivations Quelle approche pour Grid 5000? Élaboration et validation du système d authentification 3 Certification de résultats sur des exécutions distribuées Problématique et état de l art Modélisations et plate-forme d exécution Certification Monte-Carlo de tâches indépendantes Certification Monte-Carlo de tâches dépendantes 4 Validation expérimentale sur une application médicale 5 Conclusion & perspectives Sébastien Varrette Sécurité des Architectures de Calcul Distribué 2 / 43
Plan Les architectures de calcul distribué 1 Les architectures de calcul distribué Caractérisations Problématiques de sécurité traitées dans cette thèse 2 Construction d un système d authentification pour Grid 5000 Contexte et motivations Quelle approche pour Grid 5000? Élaboration et validation du système d authentification 3 Certification de résultats sur des exécutions distribuées Problématique et état de l art Modélisations et plate-forme d exécution Certification Monte-Carlo de tâches indépendantes Certification Monte-Carlo de tâches dépendantes 4 Validation expérimentale sur une application médicale 5 Conclusion & perspectives Sébastien Varrette Sécurité des Architectures de Calcul Distribué 3 / 43
Les architectures de calcul distribué Rappels du contexte Caractérisations Construction et développement d Internet 1969 : création du réseau Arpanet 4 machines 1980 : naissance d Internet 1988 : premier virus diffusé par l Internet 56000 machines 1994 : démocratisation d Internet dans le monde 2007 : 489.000.000 machines connectées a a [Source : Internet Systems Consortium http://www.isc.org/ops/ds/] Sébastien Varrette Sécurité des Architectures de Calcul Distribué 4 / 43
Les architectures de calcul distribué Caractérisations Définition (Système distribué) A distributed system is a collection of independent computers that appear to the users of the system as a single computer Distributed Operating System. A. Tanenbaum, Prentice Hall, 1994 Application au calcul architectures de calcul distribué Alternative à bas coût aux supercalculateurs parallèles Sébastien Varrette Sécurité des Architectures de Calcul Distribué 5 / 43
Les architectures de calcul distribué Caractérisations Caractérisation des architectures de calcul distribué Cluster user Sébastien Varrette Sécurité des Architectures de Calcul Distribué 6 / 43
Les architectures de calcul distribué Caractérisations Caractérisation des architectures de calcul distribué Grilles de calcul [Foster&al.97] : Grid5000, Globus etc. Cluster 1 user INTERNET Cluster 2 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 6 / 43
Les architectures de calcul distribué Caractérisations Caractérisation des architectures de calcul distribué «Desktop grid» : Seti@Home, BOINC, XtremWeb etc. user INTERNET Sébastien Varrette Sécurité des Architectures de Calcul Distribué 6 / 43
Les architectures de calcul distribué Problématiques de sécurité traitées dans cette thèse Problématiques de sécurité traitées dans cette thèse Fonctionnalités générales à assurer : CAIN + D 2 Confidentialité Authentification Intégrité Non-répudiation Disponibilité Délégation Sébastien Varrette Sécurité des Architectures de Calcul Distribué 7 / 43
Les architectures de calcul distribué Problématiques de sécurité traitées dans cette thèse Problématiques de sécurité traitées dans cette thèse Fonctionnalités générales à assurer : CAIN + D 2 Confidentialité Authentification Intégrité Non-répudiation Disponibilité Délégation 1 er problème : authentification sur grille de grappes efficace et disponible respecte les politiques de sécurité de chaque site assure le Single Sign On Sébastien Varrette Sécurité des Architectures de Calcul Distribué 7 / 43
Les architectures de calcul distribué Problématiques de sécurité traitées dans cette thèse Problématiques de sécurité traitées dans cette thèse Fonctionnalités générales à assurer : CAIN + D 2 Confidentialité Authentification Intégrité Non-répudiation Disponibilité Délégation 2ème problème : certification de résultats pallier au «problème Seti@Home» [Molnar00] approche générale et portable efficace Sébastien Varrette Sécurité des Architectures de Calcul Distribué 7 / 43
Construction d un système d authentification pour Grid 5000 Plan 1 Les architectures de calcul distribué Caractérisations Problématiques de sécurité traitées dans cette thèse 2 Construction d un système d authentification pour Grid 5000 Contexte et motivations Quelle approche pour Grid 5000? Élaboration et validation du système d authentification 3 Certification de résultats sur des exécutions distribuées Problématique et état de l art Modélisations et plate-forme d exécution Certification Monte-Carlo de tâches indépendantes Certification Monte-Carlo de tâches dépendantes 4 Validation expérimentale sur une application médicale 5 Conclusion & perspectives Sébastien Varrette Sécurité des Architectures de Calcul Distribué 8 / 43
Construction d un système d authentification pour Grid 5000 Contexte et motivations Contexte et motivations Le projet Grid 5000 (https://www.grid5000.fr) Grille de grappes regroupant 9 sites en France open-source, noyau Linux etc. Nécessité d un système d authentification robuste premier système trop instable (NIS + VPN) service de nommage centralisé disponibilité faible + délégation inexistante refonte avec contraintes plus fortes : authentification distribuée sécurisée disponibilité + délégation facilement maintenable et déployable efficace Sébastien Varrette Sécurité des Architectures de Calcul Distribué 9 / 43
Construction d un système d authentification pour Grid 5000 Quelle approche pour Grid 5000? Quelle approche pour Grid 5000? (1) Approche locale /etc/passwd, /etc/shadow = non maintenable et inefficace 0.2 Authentication through /etc/passwd 0.18 0.16 0.14 Authentication time (s) 0.12 0.1 0.08 0.06 0.04 0.02 0 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 Row index in /etc/passwd Sébastien Varrette Sécurité des Architectures de Calcul Distribué 10 / 43
Construction d un système d authentification pour Grid 5000 Quelle approche pour Grid 5000? Quelle approche pour Grid 5000? (2) Approche cluster Kerberos : délégation ET disponibilité incompatibles Service de nommage distribué : LDAP standard sécurisé (ldaps) hiérarchique Approche grille : Globus complexe et inefficace Sébastien Varrette Sécurité des Architectures de Calcul Distribué 11 / 43
Construction d un système d authentification pour Grid 5000 Élaboration et validation du système d authentification Construction du système d authentification Modèle centralisé client/serveur ldap.grid5000.fr dc=grid5000,dc=fr ou=people (/etc/passwd) (/etc/shadow) ou=group (/etc/group) ou=hosts (/etc/hosts) Serveur (LDAP+NIS) localisé à Sophia-Antipolis Analyse de la configuration du serveur LDAP indexage des données, niveau de log, backend utilisé latence inter/intra cluster impact de SSL (performances 5) etc. Sébastien Varrette Sécurité des Architectures de Calcul Distribué 12 / 43
Construction d un système d authentification pour Grid 5000 Élaboration et validation du système d authentification Construction du système d authentification (2) Modèle distribué «plat» Grenoble dc=grid5000,dc=fr ldap.grenoble.grid5000.fr Referral ou Réplicat o=sophia o=grenoble ou=people (/etc/passwd) (/etc/shadow) ou=group (/etc/group) ou=hosts (/etc/hosts) ldap.sophia.grid5000.fr dc=grid5000,dc=fr Sophia o=sophia o=grenoble ou=people (/etc/passwd) (/etc/shadow) ou=group (/etc/group) ou=hosts (/etc/hosts) Distribution des tables par réplication partielle chaque site est maître de sa branche et esclave des autres agrégation des contenus localement sur chaque site Sébastien Varrette Sécurité des Architectures de Calcul Distribué 13 / 43
Construction d un système d authentification pour Grid 5000 Performances Élaboration et validation du système d authentification Comparaison du modèle distribué à Globus (GT4) performances 25 1.8 Globus Configuration distribuée LDAP+SSL 1.6 1.4 Temps d authentication (s) 1.2 1 0.8 0.6 0.4 0.2 0 1 10 100 1000 10000 100000 Nombre d utilisateurs enregistrés Sébastien Varrette Sécurité des Architectures de Calcul Distribué 14 / 43
Construction d un système d authentification pour Grid 5000 Performances (2) Élaboration et validation du système d authentification #authentifications / s Configuration Local user Remote user Centralisée NIS 263 35,1 Centralisée LDAP 89 20.1 Centralisée LDAP+SSL 17,4 6,89 Distribuée LDAP 87,9 88,9 Distribuée LDAP+SSL 17,1 17,2 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 15 / 43
Construction d un système d authentification pour Grid 5000 Performances (2) Élaboration et validation du système d authentification #authentifications / s Configuration Local user Remote user Centralisée NIS 263 35,1 Centralisée LDAP 89 20.1 Centralisée LDAP+SSL 17,4 6,89 Distribuée LDAP 87,9 88,9 Distribuée LDAP+SSL 17,1 17,2 Bilan Modèle distribué applicable à toute grille de grappes répond aux contraintes fortes imposées en production depuis 2005 sur Grid5000 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 15 / 43
Certification de résultats sur des exécutions distribuées Plan 1 Les architectures de calcul distribué Caractérisations Problématiques de sécurité traitées dans cette thèse 2 Construction d un système d authentification pour Grid 5000 Contexte et motivations Quelle approche pour Grid 5000? Élaboration et validation du système d authentification 3 Certification de résultats sur des exécutions distribuées Problématique et état de l art Modélisations et plate-forme d exécution Certification Monte-Carlo de tâches indépendantes Certification Monte-Carlo de tâches dépendantes 4 Validation expérimentale sur une application médicale 5 Conclusion & perspectives Sébastien Varrette Sécurité des Architectures de Calcul Distribué 16 / 43
Certification de résultats sur des exécutions distribuées Problématique Problématique et état de l art Falsification de résultat = faute «par valeur» corruptions volontaires ou non (cf. Seti@HOME [Molnar00]) f1 f4 s1 f3 f2 user INTERNET s2 f5 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 17 / 43
Certification de résultats sur des exécutions distribuées Problématique Problématique et état de l art Falsification de résultat = faute «par valeur» corruptions volontaires ou non (cf. Seti@HOME [Molnar00]) f1 f4 s1 f3 f2 user résultat falsifié INTERNET pirate s2 f5 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 17 / 43
Certification de résultats sur des exécutions distribuées Problématique Problématique et état de l art Falsification de résultat = faute «par valeur» corruptions volontaires ou non (cf. Seti@HOME [Molnar00]) f1 f4 s1 f3 f2 user résultat falsifié INTERNET pirate s2 f5 Contre-mesures logicielles : 1 prévention a priori 2 contrôle a posteriori : certification de résultats Sébastien Varrette Sécurité des Architectures de Calcul Distribué 17 / 43
Certification de résultats sur des exécutions distribuées État de l art Problématique et état de l art Orientation : batch de tâches indépendantes Approche spécifique : Simple checker [Blum97] Post-condition de coût moindre que l exécution DLP avec G = n : O( 3 n) Simple checker O(log n) Approche la plus efficace... quand elle est possible! Sébastien Varrette Sécurité des Architectures de Calcul Distribué 18 / 43
Certification de résultats sur des exécutions distribuées État de l art Problématique et état de l art Orientation : batch de tâches indépendantes Approche spécifique : Simple checker [Blum97] Post-condition de coût moindre que l exécution DLP avec G = n : O( 3 n) Simple checker O(log n) Approche la plus efficace... quand elle est possible! Approche générale : réplications d exécutions Certification directe de batch [Germain-Playez03] Renforcement de batch [Sarmenta03] Dans tous les cas : modélisation des attaquants Sébastien Varrette Sécurité des Architectures de Calcul Distribué 18 / 43
Certification de résultats sur des exécutions distribuées État de l art Problématique et état de l art Orientation : batch de tâches indépendantes Approche spécifique : Simple checker [Blum97] Post-condition de coût moindre que l exécution DLP avec G = n : O( 3 n) Simple checker O(log n) Approche la plus efficace... quand elle est possible! Approche générale : réplications d exécutions Certification directe de batch [Germain-Playez03] Renforcement de batch [Sarmenta03] Dans tous les cas : modélisation des attaquants = extension aux cas de tâches dépendantes? Sébastien Varrette Sécurité des Architectures de Calcul Distribué 18 / 43
Certification de résultats sur des exécutions distribuées Modélisations et plate-forme d exécution Modèle d exécution : graphe de flot de données Représentation abstraite d une exécution parallèle P(i) e1 e2 Entrées e3 e4 tâche f1 f4 f2 f5 f3 G < (T) : prédécesseurs de T dans G G (T) : G < (T) {T} Moteur d exécution : Kaapi s1 s2 Sorties Sébastien Varrette Sécurité des Architectures de Calcul Distribué 19 / 43
Certification de résultats sur des exécutions distribuées Plate-forme d exécution Modélisations et plate-forme d exécution Ressources fiables et fortement sécurisées Contrôleur Serveur de Checkpoint Ressources non fiables U Architecture de Calcul Distribué R INTERNET user Partitionnement des ressources R U Système fiable de ré-exécution de tâches Sébastien Varrette Sécurité des Architectures de Calcul Distribué 20 / 43
Certification de résultats sur des exécutions distribuées Modélisations et plate-forme d exécution Impact des fautes sur l exécution (1) i(t,e) T o(t,e) E : exécution de P(i) sur U graphe G complété par les valeurs intermédiaires T E : i(t, E) o(t, E) Ê : exécution de P(i) sur R T Ê : î(t, Ê) ô(t, Ê) Définition (État d une exécution) E est correcte ssi E = Ê. Sinon, E est falsifiée. Sébastien Varrette Sécurité des Architectures de Calcul Distribué 21 / 43
Certification de résultats sur des exécutions distribuées Modélisations et plate-forme d exécution Impact des fautes sur l exécution (2) Définition (État d une tâche et d un résultat) Tâche T défaillante : o(t, E) ô(t, E) détectable directement par les contrôleurs tâche T correcte : aucune tâche défaillante dans G (T) Résultat falsifié : o(t, E) ô(t, Ê) difficile à déterminer car ô(t, Ê) ô(t, E) n F tâches falsifiées Objectif : détection efficace d attaque massive (n F n q = q.n ) L application doit tolérer un nombre limité de fautes [cf. chap.7] Pas d hypothèse sur le comportement de l attaquant Sébastien Varrette Sécurité des Architectures de Calcul Distribué 22 / 43
Certification de résultats sur des exécutions distribuées Modélisations et plate-forme d exécution Certification probabiliste Monte-Carlo (1) Définition (Algorithme de certification Monte-Carlo) { CORRECT (avec probabilité d erreur ε) A : (E, ε) FALSIFIED (avec preuve de falsification) Cf. Miller-Rabin Intérêts : ε fixé par l utilisateur un nombre limité d appels aux contrôleurs (idéalement o(n)) peut être effectué en parallèle sur R! Sébastien Varrette Sécurité des Architectures de Calcul Distribué 23 / 43
Certification de résultats sur des exécutions distribuées Modélisations et plate-forme d exécution Certification probabiliste Monte-Carlo (2) Ressources vitesse moy./proc vitesse totale U Π U Π tot U R Π R Π tot R Ordonnancement par workstealing exécution (sur U) : W 1 W certification (sur R) : W1 C et W C Théorème (Temps d exécution et de certification) [chap. 6, pages 104 et 107] Avec une grande probabilité, [ W1 T EC Π tot + O U ( W Π U )] + [ W C 1 Π tot R ( )] W C + O Π R Sébastien Varrette Sécurité des Architectures de Calcul Distribué 24 / 43
Certification de résultats sur des exécutions distribuées Certification Monte-Carlo de tâches indépendantes Certification Monte-Carlo de tâches indépendantes Exécution correcte : a 14 b 1 c 20 d 2 T 1 T 3 T 5 a+1 T 2 b 1 T 4 d/2 2*b c%3 15 2 0 2 1 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 25 / 43
Certification de résultats sur des exécutions distribuées Certification Monte-Carlo de tâches indépendantes Certification Monte-Carlo de tâches indépendantes Exécution falsifiée : a 14 b 1 c 20 d 2 T 1 T 3 T 5 a+1 T 2 b+3 T 4 d/20 2*b c%3 15 4 2 2 0.1 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 25 / 43
Certification de résultats sur des exécutions distribuées Certification Monte-Carlo de tâches indépendantes Monte-Carlo Test MCT (E) Choisir au hasard T E Ré-exécuter T sur R en utilisant les entrées i(t, E) Preuve de falsification : o(t, E) ô(t, E) Théorème (Certification probabiliste par MCT (E)) [chap. 6, page 109] A(E, ε) : N ε,q = log ε log(1 q) appels à MCT (E) W C 1 N ε,qw et W C = W T EC W 1 Π tot U + O ( W Π U ) + N ε,qw Π tot + O R ( W Π R ) Sébastien Varrette Sécurité des Architectures de Calcul Distribué 26 / 43
Certification de résultats sur des exécutions distribuées Certification Monte-Carlo de tâches indépendantes Impact de ε sur N ε,q 300 q=5% q=10% q=15% q=20% 250 200 N ε,q 150 100 50 0 0.1 0.01 0.001 0.0001 ε (échelle logarithmique) 1e 05 1e 06 1e 07 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 27 / 43
Certification de résultats sur des exécutions distribuées Certification Monte-Carlo de tâches indépendantes Impact de q sur N ε,q 300 250 ε=10 6 ε=10 5 ε=10 4 ε=10 3 200 N ε,q 150 100 50 0 0.05 0.1 0.15 0.2 0.25 0.3 q Sébastien Varrette Sécurité des Architectures de Calcul Distribué 28 / 43
Certification de résultats sur des exécutions distribuées Certification Monte-Carlo de tâches indépendantes Illustration des cas de non-détection 500 n = 10 6, q = 1% et ε = 5% expérience N ε,q Nombre d appels à MCT(E) avant détection 400 300 200 100 N ε,q = 298 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 29 / 43
Certification de résultats sur des exécutions distribuées Certification Monte-Carlo de tâches dépendantes Certification Monte-Carlo de tâches dépendantes Exécution correcte : a 14 b 1 T 1 a+1 T 2 2*b T 3 b 1 r 1 15 r 2 2 r 3 0 T 5 T 4 r 3 %r 2 r 1 /r 2 7.5 0 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 30 / 43
Certification de résultats sur des exécutions distribuées Certification Monte-Carlo de tâches dépendantes Certification Monte-Carlo de tâches dépendantes Exécution falsifiée : a 14 b 1 T 1 a+1 T 2 3*b T 3 b 1 r 1 15 r 2 3 r 3 0 T 5 r 3 %r 2 T 4 r 1 /r 2 5 0 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 30 / 43
Certification de résultats sur des exécutions distribuées Certification Monte-Carlo de tâches dépendantes Certification Monte-Carlo de tâches dépendantes n I tâche initiatrice I(F ) : { i(t, E) = î(t, Ê) o(t, E) ô(t, Ê) tâches falsifiées qu on est sûr de détecter P (MCT (E) = CORRECT ) 1 n I n Théorème (Nombre minimal de tâches initiatrices) [chap. 6 page 115] Pour G de hauteur h et degré maximal d tel que n F n q = q.n n(d 1) n I q d h 1 Sébastien Varrette Sécurité des Architectures de Calcul Distribué 31 / 43
Certification de résultats sur des exécutions distribuées Certification Monte-Carlo de tâches dépendantes Lemme (Caractérisation des tâches falsifiées) [chap. 6 page 113] I(F ) = {T i F : F G < (T i ) = } T est falsifiée G (T) I(F ) Monte-Carlo Test EMCT (E) Choisir au hasard T E Ré-exécuter les T j G (T) sur R Preuve de falsification : o(t j, E) ô(t j, E) Sébastien Varrette Sécurité des Architectures de Calcul Distribué 32 / 43
Certification de résultats sur des exécutions distribuées Certification Monte-Carlo de tâches dépendantes Théorème (Certification probabiliste par EMCT (E)) [chap. 6, page 116] log ε log(1 q) A(E, ε) : N ε,q = appels à EMCT (E) Coût moyen par appel : C G = 1 n T G G (T) En pire cas : W1 C = Ω(W 1) et W C = Ω(W ) Sébastien Varrette Sécurité des Architectures de Calcul Distribué 33 / 43
Certification de résultats sur des exécutions distribuées Certification Monte-Carlo de tâches dépendantes Étude de quelques cas particuliers Arbres Graphes Fork-Join h=0 h h=0 h=1 h=1 h=0 d h=1 Fork tasks OUT TREE IN TREE d 1 Join tasks Théorème (Certif. des arbres et graphes Fork-Join) [chap. 6 page 117-119] Pour G arbre ou graphe Fork-Join de hauteur h : C G h + 3 T EC W 1 Π tot U + O ( W Π U ) + O ( ) hw Π tot + O R ( W Π R ) Sébastien Varrette Sécurité des Architectures de Calcul Distribué 34 / 43
Certification de résultats sur des exécutions distribuées Pour aller plus loin... Certification Monte-Carlo de tâches dépendantes Variantes de EMCT (E) pour limiter le coût en pire cas EMCT α (E) : vérifier une proportion α de G (T) EMCT K (E) : vérifier min ( K, G (T) ) tâches de G (T) Applications auto-tolérantes aux pannes par valeurs [chap. 7] Recherche de contenu Interpolation polynômiale Application embarquée dédiée au tri de valeurs etc. Sébastien Varrette Sécurité des Architectures de Calcul Distribué 35 / 43
Validation expérimentale sur une application médicale Plan 1 Les architectures de calcul distribué Caractérisations Problématiques de sécurité traitées dans cette thèse 2 Construction d un système d authentification pour Grid 5000 Contexte et motivations Quelle approche pour Grid 5000? Élaboration et validation du système d authentification 3 Certification de résultats sur des exécutions distribuées Problématique et état de l art Modélisations et plate-forme d exécution Certification Monte-Carlo de tâches indépendantes Certification Monte-Carlo de tâches dépendantes 4 Validation expérimentale sur une application médicale 5 Conclusion & perspectives Sébastien Varrette Sécurité des Architectures de Calcul Distribué 36 / 43
Validation expérimentale sur une application médicale Application cible du projet RAGTIME Grille de Stockage DB1 DB2 DB3 (0) A archiver D1 (1) A analyser D2 (2) Calcul de score Architecture de Calcul Distribué (3) Resultats Détection de cancer mammographique [chap. 8] Comparaison statistique avec une base de données d images Sébastien Varrette Sécurité des Architectures de Calcul Distribué 37 / 43
Validation expérimentale sur une application médicale Protocole expérimental SAFE RESOURCES (4) Storage grid (PACS) DB1 DB2 DBm C C Comparison Tasks C Hostmanager Hostmanager Hostmanager (3) meta-data Controler/Verifier Farmanager + Checkpoint Server (4) (5) (6) r 1 r 2 Scores r n CERTIFICATION PROCESS S S Sorting tasks S (2) Hostmanager Hostmanager Hostmanager Grid5000 Front End (8) Sorted scores 10% n (7) CERTIFICATION PROCESS UNSAFE RESOURCES (1) INTERNET (1) (8) user (1) User authenticate to the front end server (2) A new mammogram I is send for analyse (3) Using metadata of I, index of n images are selected on the storage grid (4) Farmanager submits n comparison jobs to hostmanagers Input images are anonymized (5) Scores are certified to be correct using result checking algorithms (6) Farmanager submits sorting jobs to hostmanagers (7) The sorting process is certified correct using result checking algorithms A table T containing sorted scores with pointers to corresponding images is produced (8) The first 10% entries of T are sent back to the user Sébastien Varrette Sécurité des Architectures de Calcul Distribué 38 / 43
Validation expérimentale sur une application médicale Expérimentations Déploiement sur Grid5000 ; ε = 0.001, q = 0.01 (N ε,q = 688) 10000 Temps de déploiement des images n=100000 n=10000 n=1000 1000 Temps (s) 100 10 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 n p : nombre de processeurs Sébastien Varrette Sécurité des Architectures de Calcul Distribué 39 / 43
Validation expérimentale sur une application médicale Expérimentations Déploiement sur Grid5000 ; ε = 0.001, q = 0.01 (N ε,q = 688) 350 300 Calcul des scores et certification : 1000 tâches Fin de la phase 3 (certification par MCT sur le serveur de checkpoint) Fin de la phase 2 (calculs de score distribués) 250 Temps (s) 200 150 100 50 0 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 n p : nombre de processeurs Sébastien Varrette Sécurité des Architectures de Calcul Distribué 39 / 43
Validation expérimentale sur une application médicale Expérimentations Déploiement sur Grid5000 ; ε = 0.001, q = 0.01 (N ε,q = 688) Calcul des scores et certification : 10000 tâches 2500 Fin de la phase 3 (certification par MCT sur le serveur de checkpoint) Fin de la phase 2 (calculs de score distribués) 2000 1500 Temps (s) 1000 500 0 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 n p : nombre de processeurs Sébastien Varrette Sécurité des Architectures de Calcul Distribué 39 / 43
Validation expérimentale sur une application médicale Expérimentations Déploiement sur Grid5000 ; ε = 0.001, q = 0.01 (N ε,q = 688) Calcul des scores et certification : 100000 tâches 25000 Fin de la phase 3 (certification par MCT sur le serveur de checkpoint) Fin de la phase 2 (calculs de score distribués) 20000 15000 Temps (s) 10000 5000 0 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 n p : nombre de processeurs Sébastien Varrette Sécurité des Architectures de Calcul Distribué 39 / 43
Plan Conclusion & perspectives 1 Les architectures de calcul distribué Caractérisations Problématiques de sécurité traitées dans cette thèse 2 Construction d un système d authentification pour Grid 5000 Contexte et motivations Quelle approche pour Grid 5000? Élaboration et validation du système d authentification 3 Certification de résultats sur des exécutions distribuées Problématique et état de l art Modélisations et plate-forme d exécution Certification Monte-Carlo de tâches indépendantes Certification Monte-Carlo de tâches dépendantes 4 Validation expérimentale sur une application médicale 5 Conclusion & perspectives Sébastien Varrette Sécurité des Architectures de Calcul Distribué 40 / 43
Conclusion Conclusion & perspectives Système d authentification pour Grid5000 en production depuis 2005 applicable à toute grille de grappes contraintes fortes respectées [Références : RenPar 16, LNCS GADA 05 (Chypre), IEEE ICSIT 05 (Algerie)] Certification de résultats approche par graphe de flots de données pas d hypothèse sur l attaque certification Monte-Carlo généralement très efficace [Références : RenPar 15, IEEE DEXA 04 (Espagne), IEEE SBAC-PAD 04 (Brésil), LNCS EGC 05 (Pays-Bas), IEEE HPS 06 (France), ACM PASCO 07 (Canada)] Interaction avec de nombreux projets de recherche Ragtime, MOAIS, Grid5000, SafeScale, CrynoSec etc. Sébastien Varrette Sécurité des Architectures de Calcul Distribué 41 / 43
Conclusion (2) Conclusion & perspectives Perspectives Système d authentification : évaluation des proxy-caches Construction effective des ressources R (collaboration ENST) Détection d attaques massives : extension de la certification détecter n F q.n alors que k falsifications ont été détectées Applications tolérant un nombre limité de falsifications ABFT (Algorithm-Based Fault Tolerance) [Beckman93,Saha06,Plank&al.97] Sébastien Varrette Sécurité des Architectures de Calcul Distribué 42 / 43
Conclusion & perspectives Merci pour votre attention... Questions? Sébastien Varrette Sécurité des Architectures de Calcul Distribué 43 / 43