Introduction ALOHA RIP SSL/TLS Les algorithmes qui font l’internet Hadrien Croubois Doctorant, Laboratoire de l’informatique du Parallélisme École Normale Supérieure de Lyon, France 1 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Introduction 2 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Conclusion Qu’est ce qu’un algorithme ? Qu’est ce qu’un algorithme ? « Un algorithme est une suite finie et non ambiguë d’opérations ou d’instructions permettant de résoudre un problème ou d’obtenir un résultat. » (wikipedia) 3 / 37 Hadrien Croubois Les algorithmes qui font l’internet Introduction ALOHA RIP SSL/TLS Qu’est ce qu’un algorithme ? Un exemple d’algorithme 1 2 3 4 5 6 7 8 9 4 / 37 Algorithme 1 : Algorithme de l’œuf à la coque Entrées : Des œufs frais Sorties : Des bons œufs à la coque début Faire chauffer une casserole d’eau ; Attendre que l’eau bout ; Plonger les œufs dans l’eau ; Attendre 3 minutes ; Sortir les œufs de l’eau bouillante ; Enlever la coquille ; Assaisonner à votre goût ; fin Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Qu’est ce qu’un algorithme ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 5 / 37 Algorithme 2 : Algorithme de la mayonnaise Entrées : Œufs, moutarde, vinaigre, huile, sel, poivre Sorties : De la mayonnaise début Séparer les jaunes d’œufs ; Ajouter une pointe de moutarde et une c.a.s. de vinaigre ; Assaisonner; tant que Le mélange n’est pas homogène faire Mélanger la préparation; fin tant que Il reste de l’huile faire Rajouter un peu d’huile ; répéter Mélanger vigoureusement ; jusqu’à L’émulsion est bonne; fin fin Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Qu’est ce qu’un algorithme ? Un algorithme = Une recette de cuisine 6 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Conclusion Qu’est ce qu’un algorithme ? Un exemple en mathématique : l’algorithme d’Euclide 1 2 3 4 5 6 7 8 7 / 37 Algorithme 3 : Algorithme d’Euclide Entrées : A et B, deux entiers non nuls Sorties : PGCD(A, B) début tant que B ≠ 0 faire R ← A%B ; A ← B; B ← R; fin retourner A fin Hadrien Croubois Les algorithmes qui font l’internet Introduction ALOHA RIP SSL/TLS Qu’est ce que l’internet ? Qu’est ce que l’internet ? 8 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Conclusion Qu’est ce que l’internet ? Réseau informatique mondial = Réseau de réseaux décentralisé 9 / 37 Hadrien Croubois Les algorithmes qui font l’internet Introduction ALOHA RIP SSL/TLS Qu’est ce que l’internet ? 10 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Qu’est ce que l’internet ? 11 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Qu’est ce que l’internet ? 12 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Conclusion Qu’est ce que l’internet ? Comment s’organisent les échanges de données dans l’internet ? Grâce à des algorithmes ! 13 / 37 Hadrien Croubois Les algorithmes qui font l’internet Introduction ALOHA RIP SSL/TLS Le modèle OSI 14 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS ALOHA 15 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le partage de la couche physique avec ALOHA 16 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le partage de la couche physique avec ALOHA 17 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le partage de la couche physique avec ALOHA 18 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Conclusion Le partage de la couche physique avec ALOHA Algorithme 4 : Algorithme ALOHA 1 2 3 4 5 6 7 8 9 début répéter Transmettre les données; si Un autre station transmet en même temps que nous alors Interrompre la transmission; Attendre un temps aléatoirement long; fin jusqu’à Les données sont transmises; fin 19 / 37 Hadrien Croubois Les algorithmes qui font l’internet Introduction ALOHA RIP SSL/TLS Le partage de la couche physique avec ALOHA 20 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le partage de la couche physique avec ALOHA Encore utilisé aujourd’hui : Dans les réseaux GSM (2G) et EDGE (2G+) ; Dans la norme IEEE 802.11 (Wi-Fi) ; Pour les communications satellitaires. 21 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS RIP 22 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le routage avec RIP Le routage qu’est ce que c’est ? 23 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le routage avec RIP Les adresses IP 4 nombres entre 0 et 255 : 8.8.8.8 140.77.51.10 179.60.192.36 24 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le routage avec RIP Sous reseaux et plage d’IP ENS de Lyon : 140.76.X .Y et 140.77.X .Y En binaire : 10001100.01001100.00000000.00000000 (140.76.000.000) 10001100.01001101.11111111.11111111 (140.77.255.255) Sous réseau : 140.76.0.0/15 ou IP+Masque : 140.76.0.0, 255.254.0.0 25 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le routage avec RIP 26 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le routage avec RIP 27 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Conclusion Le routage avec RIP Algorithme 5 : Algorithme de Bellman-Ford 1 2 3 4 5 6 7 8 9 10 11 12 13 début tant que Vrai faire Envoyer notre table a nos voisins; Recevoir les tables de nos voisins; pour chaque voisin (v ) faire pour chaque route proposée par v (r ) faire si passer par v permet d’aller plus vite jusqu’à r alors Mettre à jour le chemin vers r pour passer par v fin fin fin fin fin 28 / 37 Hadrien Croubois Les algorithmes qui font l’internet Introduction ALOHA RIP SSL/TLS SSL/TLS 29 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS Garanties L’authentification du serveur ; La confidentialité des données échangées ; L’intégrité des données échangées. 30 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS 31 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS 32 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS Un problème difficile à résoudre : la factorisation 6 33 / 37 Hadrien Croubois = ? Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS Un problème difficile à résoudre : la factorisation 6 33 / 37 Hadrien Croubois = 2×3 Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS Un problème difficile à résoudre : la factorisation 6 35 33 / 37 Hadrien Croubois = = 2×3 ? Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS Un problème difficile à résoudre : la factorisation 6 35 33 / 37 Hadrien Croubois = = 2×3 5×7 Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS Un problème difficile à résoudre : la factorisation 6 35 91 33 / 37 Hadrien Croubois = = = 2×3 5×7 ? Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS Un problème difficile à résoudre : la factorisation 6 35 91 33 / 37 Hadrien Croubois = = = 2×3 5×7 7 × 13 Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS Un problème difficile à résoudre : la factorisation 6 35 91 5251 33 / 37 Hadrien Croubois = = = = 2×3 5×7 7 × 13 ? Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS Un problème difficile à résoudre : la factorisation 6 35 91 5251 33 / 37 Hadrien Croubois = = = = 2×3 5×7 7 × 13 59 × 89 Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS Un problème difficile à résoudre : la factorisation 6 35 91 5251 251669256883479537757 33 / 37 Hadrien Croubois = = = = = 2×3 5×7 7 × 13 59 × 89 ? Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Conclusion Le chiffrement asymétrique avec SSL/TLS Un problème difficile à résoudre : la factorisation 6 35 91 5251 251669256883479537757 33 / 37 Hadrien Croubois = = = = = 2×3 5×7 7 × 13 59 × 89 11037271613 × 22801763489 Les algorithmes qui font l’internet Introduction ALOHA RIP SSL/TLS Le chiffrement asymétrique avec SSL/TLS 34 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Conclusion Le chiffrement asymétrique avec SSL/TLS Algorithme 6 : Établissement d’une session TLS 1 2 3 4 5 6 7 8 9 10 11 12 13 début Le client demande son certificat au serveur; Le serveur envoie son certificat au client; si Le certificat est signé par une autorité alors Le client génère une clef de chiffrement symétrique pour la session; Le client chiffre la clef de chiffrement avec la clef public contenue dans le certificat; Le serveur déchiffre la clef de chiffrement symétrique avec sa clef privé; La connexion est établie; fin sinon Erreur, la connexion n’est pas établie; fin fin 35 / 37 Hadrien Croubois Les algorithmes qui font l’internet Introduction ALOHA RIP SSL/TLS Conclusion 36 / 37 Hadrien Croubois Les algorithmes qui font l’internet Conclusion Introduction ALOHA RIP SSL/TLS Conclusion Conclusion Ce n’était que 3 "petits" algorithmes ! Beaucoup d’autres algorithmes à tous les niveaux du modèle OSI ; Beaucoup de variantes au modèle OSI ; Beaucoup d’autres axes de recherche en informatique. Ce n’est pas magique, il y a beaucoup de gens qui travaillent pour que ça marche ! 37 / 37 Hadrien Croubois Les algorithmes qui font l’internet