Sécurité des Architectures de Calcul Distribué: Authentification et Certification de Résultats



Documents pareils
Robin Favre Fabien Touvat. Polytech Grenoble RICM 3 ème Année Vendredi 21 Novembre 2008 Etude d Approfondissement Réseau

3A-IIC - Parallélisme & Grid GRID : Définitions. GRID : Définitions. Stéphane Vialle. Stephane.Vialle@supelec.fr

Vers l'orchestration de grilles de PC par les mécanismes de publicationsouscription

Architecture de la grille

La sécurité dans les grilles

Limitations of the Playstation 3 for High Performance Cluster Computing

La sécurité des Réseaux Partie 7 PKI

Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services

Rapport d activité. Mathieu Souchaud Juin 2007

Equilibrage de charge pour les grilles de calcul : classe des tâches dépendantes et indépendantes.

Solution de stockage et archivage de grands volumes de données fichiers.

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Contributions à l expérimentation sur les systèmes distribués de grande taille

Les environnements de calcul distribué

Authentification unifiée Unix/Windows

Windows Server Chapitre 1: Découvrir Windows Server 2008

Plan du cours. Incarnations/applications du Grid Computing. Super-calcul virtuel

Gestion électronique de documents

Groupe Eyrolles, 2004 ISBN :

MEAD : temps réel et tolérance aux pannes pour CORBA

Linux. Sécuriser un réseau. 3 e édition. l Admin. Cahiers. Bernard Boutherin Benoit Delaunay. Collection dirigée par Nat Makarévitch

ViSaGe. Virtualisation du Stockage dans les Grilles. Informatiques. RenPar 16, 6-8 Avril 2005 Thiebolt François

E-Biothon : Une plate-forme pour accélérer les recherches en biologie, santé et environnement.

Hadoop, les clés du succès

Mise en place d une politique de sécurité

Description de la maquette fonctionnelle. Nombre de pages :

La haute disponibilité de la CHAINE DE

DG-ADAJ: Une plateforme Desktop Grid

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing

Gestion des identités Christian-Pierre Belin

LINUX Préparation à la certification LPIC-3 (examen LPI 300) - 2ième édition

Introduction...3. Objectif...3. Manipulations...3. Gestion des utilisateurs et des groupes...4. Introduction...4. Les fichiers de base...

Le cloud,c est quoi au juste?

Journée Utiliateurs Nouvelles du Pôle ID (Informatique) Pierre Neyron, LIG/CNRS

Utiliser Améliorer Prêcher. Introduction à LDAP

Prise en compte des ressources dans les composants logiciels parallèles

Cours Bases de données

Introduction. aux architectures web. de Single Sign-On

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Middleware et services de la grille

Big Data. Les problématiques liées au stockage des données et aux capacités de calcul

Bases de données documentaires et distribuées Cours NFE04

EJBCA Le futur de la PKI

Projet IGGI. Infrastructure pour Grappe, Grille et Intranet. Fabrice Dupros. CASCIMODOT - Novembre Systèmes et Technologies de l Information

La gamme express UCOPIA.

ETUDE ET IMPLÉMENTATION D UNE CACHE L2 POUR MOBICENTS JSLEE

Windows 2000: W2K: Architecture. Introduction. W2K: amélioration du noyau. Gamme windows W2K pro: configuration.

La Continuité d Activité

ORACLE 10g Découvrez les nouveautés. Jeudi 17 Mars Séminaire DELL/INTEL/ORACLE

Graphes d attaques Une exemple d usage des graphes d attaques pour l évaluation dynamique des risques en Cyber Sécurité

Conception des systèmes répartis

FORMATION CXA01 CITRIX XENAPP & WINDOWS REMOTE DESKTOP SERVICES

Consolidation. Grid Infrastructure avec la 11gR2

SysFera. Benjamin Depardon

Sécurité des réseaux sans fil

Agenda. Le groupe Keyrus. Orange Tunisie. Présentation du projet. Choix initial de Talend Open Studio. Evolution de la plateforme. Nécessité de migrer

NFS Maestro 8.0. Nouvelles fonctionnalités

Conception et contrôle des SMA tolérants aux fautes

CORBA haute performance

Quel serveur pour vous?

OpenLDAP, un outil d administration Réseau. Une implémentation d OpenLDAP

Architectures PKI. Sébastien VARRETTE

Automatisation de l administration système

Proposition d une architecture pour ebay, en mettant l accent sur les notions de scalabilité, de résilience, et de tolérance aux pannes.

Programmation parallèle et distribuée (Master 1 Info )

Public Key Infrastructure (PKI)

Evolution des technologies et émergence du cloud computing Drissa HOUATRA, Orange Labs Issy

ADMINISTRATION EXADATA

Introduction aux systèmes temps réel

Présentation Alfresco

Présentation SafeNet Authentication Service (SAS) Octobre 2013

CIBLE DE SECURITE CSPN DU PRODUIT PASS. (Product for Advanced SSO)

Le produit WG-1000 Wireless Gateway

OpenLDAP : retour d expérience sur l industrialisation d annuaires critiques

L expertise en sécurité pour toutes les entreprises! Passez à la vitesse supérieure. Kaspersky. avec. Open Space Security

BONJOURGRID : VERSION ORIENTÉE DONNÉE & MAPREDUCE SÉCURISÉ

SUJET EPREUVE ECRITE. JURY ASI Bap E Gestionnaire de parc informatique et Télécom.

T. Gasc 1,2,3, F. De Vuyst 1, R. Motte 3, M. Peybernes 4, R. Poncet 5

Livre blanc Haute disponibilité sous Linux

Déploiement d une architecture Hadoop pour analyse de flux. françois-xavier.andreu@renater.fr

PRODIGUER un noeud français de distribution de données GIEC/IPCC

La Latecion protection anti-intrusion Web Web Le concept «Zero effort Security» La protection des applications Extranet

Oracle Maximum Availability Architecture

Séminaire Partenaires Esri France 7-8 juin Paris Cloud Computing Stratégie Esri

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Le cadre des Web Services Partie 1 : Introduction

Kick Off SCC 2015 Stockage Objet. Vers de nouveaux horizons

Le Cloud Open-Mind! Emilien Macchi

FOURNIR UN SERVICE DE BASE DE DONNÉES FLEXIBLE. Database as a Service (DBaaS)

Organisation du parcours M2 IR Les unités d enseignements (UE) affichées dans la partie tronc commun sont toutes obligatoires, ainsi que le stage et

Evaluation, Certification Axes de R&D en protection

Protégez-vous du vol de données en renforçant la sécurité de vos procédures d identification lors des connexions distantes

La citadelle électronique séminaire du 14 mars 2002

CheckPoint R76 Security Engineering niveau 2 (Cours officiel)

Introduction aux applications réparties

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

Annuaires LDAP et méta-annuaires

vworkspace VDI : La virtualisation des postes de travail enfin possible, quelque soit l HyperViseur

Plan du cours. Autres modèles pour les applications réparties Introduction. Mode de travail. Introduction

Transcription:

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