La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Yonel GRUSSON 1. 2 LA PROTECTION DES ECHANGES D'INFORMATION.

Présentations similaires


Présentation au sujet: "Yonel GRUSSON 1. 2 LA PROTECTION DES ECHANGES D'INFORMATION."— Transcription de la présentation:

1 Yonel GRUSSON 1

2 2 LA PROTECTION DES ECHANGES D'INFORMATION

3 Yonel GRUSSON 3 Le traitement de l'information par une machine passe par de nombreuses et successives transmissions : Mémoire Centrale Unité Centrale (Bus) Périphérique M.C et/ou U.C (Parallèle) Périphérique M.C et/ou U.C (Série) Ordinateur Ordinateur (Transmission) Toute les transmissions sous-entendent une possibilité d'erreur. INTRODUCTION

4 Yonel GRUSSON 4 Le problème de la détection voire de la correction des erreurs de transmission se double du problème de la protection (confidentialité) des données transmises -cryptage-. Attention : Les deux problèmes ne se situent pas au même niveau. La détection des erreurs de transmission se situe dans les couches basses alors que le cryptage se situe au niveau de la couche 6. INTRODUCTION

5 Yonel GRUSSON 5 PLAN 1 ère Partie Détection et correction des erreurs de transmission. 2 ème Partie Protection des données (confidentialité). 3 ème Partie Le protocole SSH. Le protocole SSL. INTRODUCTION

6 Yonel GRUSSON 6 1 ère Partie : DETECTION ET CORRECTION DES ERREURS DE TRANSMISSION. Principe général Le contrôle par checksum Le contrôle par parité simple Le contrôle par parité croisée Le contrôle polynomial

7 Yonel GRUSSON 7 Principe Général Attention : L'erreur peut-être dans I comme dans C A l'émission Information à transmettre (I)Clé 1 (C1) Algorithme (A) Transmission de : I C1 A la réception Réception de : I C1 Information reçue (I)Clé 2 (C2) Algorithme (A) C1 = ? = C2 Non : Erreur de transmission Oui : Présomption d'absence d'erreur

8 Yonel GRUSSON 8 Méthode ancienne utilisée : –Entre UC et Périphériques, –Dans les trames de certains protocoles. Méthode assez simple qui consiste à faire une somme binaire d'un ensemble d'octets. Exemple de la méthode du checksum dans une trame IP : …… Contrôle par checksum

9 Yonel GRUSSON 9 A la transmission de A7 30 et C5 A C Somme Repli de la retenue Total Complément à = le CheckSum Transmission de : Contrôle par checksum

10 Yonel GRUSSON 10 A la réception : Checksum reçu OU Checksum recalculé (avant complément à 1) Vérification (Avec l'opérateur ET le résultat serait ) Contrôle par checksum

11 Yonel GRUSSON 11 Contrôle de parité (ou d'imparité) Il s'agit du contrôle le plus ancien et le plus simple. Il consiste à ajouter à la fin de chaque bloc de (n-1) bits un bit supplémentaire de telle sorte que le nombre total de bits égaux à 1 dans le bloc de n bits soit pair (ou impair). Souvent n = 8 (octet). Exemples :

12 Yonel GRUSSON 12 Avantages : Simplicité ; Peut se faire électroniquement (cf. UART). Inconvénients : Perte d'un bit de donnée ; Deux erreurs peuvent s'annuler ; Cette méthode ne permet pas de corriger automatiquement l'erreur (retransmission). Contrôle de parité (ou d'imparité)

13 Yonel GRUSSON 13 Le contrôle par parité croisée L'abandon de la transmission en mode caractère au profit de la notion de "bloc de bits" (cf. La liaison de données) a amené de nouvelles méthodes. Le contrôle par parité croisée est une amélioration du contrôle de parité simple.

14 Yonel GRUSSON 14 Exemple : Soit transmettre le bloc de bits suivants : Ce bloc est découpé de façon à faire apparaître une parité horizontale, verticale et un bit de parité croisée. Le contrôle par parité croisée

15 Yonel GRUSSON Parité Horizontale (LRC : Longitudinal Redundancy Checkink) Parité croisée Parité Verticale (VRC : Vertical RedundancyCheckink) Le contrôle par parité croisée

16 Yonel GRUSSON 16 Transmission de : Supposons une erreur lors de la transmission : Le contrôle par parité croisée

17 Yonel GRUSSON LRC recalculé VRC recalculé Parité croisée recalculée Le contrôle par parité croisée

18 Yonel GRUSSON 18 Le contrôle par parité croisée Détection de l'erreur avec la différence sur les parités croisées. 2 - Après vérification l'erreur ne provient pas de la transmission des LRC et VRC 3 - Après comparaison des LRC et VRC calculées et reçues, recherche, détection et correction de l'erreur

19 Yonel GRUSSON 19 L'évolution des transmissions et la recherche d'une sécurité accrue ont amenées le contrôle polynomial. Principe : Bloc d'informations de n bitsContrôle (k bits) Les k bits sont générés à partir des n bits d'information à partir d'un polynôme connu de l'émetteur et du récepteur. Le contrôle polynomial

20 Yonel GRUSSON 20 Les données Toute suite binaire de n bits peut être associée à un polynôme de degré (n-1) : A(x)=b x n-1 + b x n-2 + … + b x 0 avec b dans {0,1} D'autre part on utilise un polynôme générateur G(x) de degré k G(x)=b x k + b x k-1 + … + b x 0 Polynôme connu par l'émetteur et le récepteur. Exemple Le contrôle polynomial

21 Yonel GRUSSON 21 A l'émission A(x) est multiplié par x k Cette opération consiste à ajouter k zéros derrière A(x) Le résultat est divisé par G(x) A(x). x k / G(x) A(x). x k = Q(x). G(x) + R(x) avec Q(x) le quotient et R(x) le reste de la division Le polynôme de contrôle sera R(x) et le message envoyé M(x) = A(x). x k + R(x) Exemple Le contrôle polynomial

22 Yonel GRUSSON 22 A la réception M(x) est divisé par G(x) et le reste est nul si la transmission est sans erreur __________ Les polynômes générateurs les plus utilisés sont x 7 + x x 12 + x 11 + x 3 + x 2 + x + 1 x 16 + x 12 + x (Polynôme normalisé) Le contrôle polynomial Exemple

23 Yonel GRUSSON 23 2 ème Partie : PROTECTION DES DONNEES La CONFIDENTIALITE des données dans les transmissions mais également sur un support comme le disque pour protéger des données, est obtenue avec des techniques CRYPTOGRAPHIQUES.

24 Yonel GRUSSON 24 Chiffrement par substitution Ancienne technique de chiffrement (Jules César) qui regroupe de nombreux algorithmes dont le plus simple est le code «AvautK», «BvautL», etc. Message facile à décrypter en utilisant la fréquence de répétition des lettres. La substitution polyalphabétique utilise plusieurs alphabets : le 'C' en cinquième position utilisera l'alphabet n°5 qui remplace le 'C' par 'F' par exemple. Différentes méthodes de chiffrement

25 Yonel GRUSSON 25 La cryptographie moderne repose sur la notion de CLE qui regroupe : Chiffrement symétrique (ou cryptage symétrique) Méthode à clé unique Chiffrement asymétrique (ou cryptage asymétrique) Méthode à deux clés Différentes méthodes de chiffrement

26 Yonel GRUSSON 26 Soit coder le message «LA TAXE», Avec la CLE «BTS» et avec les correspondances suivantes : Espace = 0 ; A = 1 ; B = 2 ; … ; E = 5 ; … ; L = 12 ; … ; S = 19 ; T = 20 ; … ; X = 24 ; Z = 26 Cryptographie à clé unique

27 Yonel GRUSSON 27 Phase de Cryptage B T S B T S B L A T A X E Soit en équivalent numérique Cryptographie à clé unique

28 Yonel GRUSSON 28 Le message codé sera : N U S V U Q G Phase de décodage : Cryptographie à clé unique

29 Yonel GRUSSON 29 Dans la pratique informatique les équivalents numériques sont les codes des caractères (ASCII par exemple). Faiblesses du système : –Facilement "crakable". En particulier par la répétition statistique des lettres qui est propre à une langue. –Il faut transmettre la clé en clair Cryptographie à clé unique

30 Yonel GRUSSON 30 Le futur destinataire génère une clé. Cette clé est dite privée car elle est conservée par le destinataire pour décrypter les futurs messages qu'il va recevoir. Le futur destinataire génère également à l'aide d'un algorithme et à partir de sa clé privée une seconde clé dite publique qui sera diffusée auprès des futurs émetteurs. Cryptographie à deux clés

31 Yonel GRUSSON 31 Diffusion des clés publiques : –soit directement du créateur aux utilisateurs. –soit à l'aide de serveur de clés sur Internet. Exemple de clé publique trouvée sur le net... Cryptographie à deux clés

32 Yonel GRUSSON 32 Pasty's Clé publique pour PGP Type Bits/KeyID Date User ID pub 512/D8ED58B5 1996/04/14 Patrick Asty -----BEGIN PGP PUBLIC KEY BLOCK----- Version: 2.6.3i mQBNAzFw+hkAAAECANecrbGGPTZmqU+q+7t8E/6btByZbQHPQ9qlKo6HDT6zImDJ VSwe0/oaft3lwNSUPT+Ab7hC9QJdZkjamtjtWLUABRG0IFBhdHJpY2sgQXN0eSA8 cGFzdHlAbWljcm9uZXQuZnI+iQCVAgUQMXHzUYFdzKExeYBpAQEGRQP+Osjdo33s cGRp08ESxJIpZsKRMr7J0Gy3riE93zvN6PjYXbY0IqCljhtSxCxcR7oaBbnpAL3m /xmp3DXiwK6878wphWgk8OmPJ5fbW7ZUo4PaNDr3G3rbfTq8h4ripJ/eC5AdCO3J 5GsE7uh/32UIhgt5xooL+E21rhf/UW3kmZyJAFUDBRAxcPoZZkjamtjtWLUBASpl AgCMynq/IwfChy2UN5b8hWx7AKX34eJtOBXo8yANNtNWO4H0YP6t7777l4kvpArb CfgydCL1Vj3JVMMZ19YWK4Hn =7RVR -----END PGP PUBLIC KEY BLOCK----- Cryptographie à deux clés

33 Yonel GRUSSON 33 Les émetteurs cryptent leurs messages avec la clé publique du destinataire (c'est la seule qu'il connaisse). Le destinataire décrypte le message avec sa clé privée. De même, ce qui est crypté avec la clé privée est décrypté par la clé publique. Ceci est à la base de la signature électronique qui permet d'authentifier l'origine d'un message. Évidemment les deux partenaires utilisent le même logiciel de cryptage (Pretty Good Privacy -PGP- par exemple). Cryptographie à deux clés

34 Yonel GRUSSON 34 Résumé pour le cryptage d'un message La personne A génère : –Sa Clépriv a –Sa CléPub = f(Clépriv a ) La personne B crypte –MessCrypté = f(MessClair, Clépub a ) La personne A décrypte : –MessClair = f(MessCrypté, Clépriv a ) f représente l'algorithme de cryptage. Cryptographie à deux clés

35 Yonel GRUSSON 35 Résumé pour la signature électronique La personne A –A veut authentifier son message. Il crypte une partie du message (ou la totalité) avec sa clé privée (CléPriv a ) –SignatCrypté = f(SignatClair, CléPriv a ) La personne B –B décrypte à l'aide de (CléPub a ) –SignatClair = f(SignatCrypté, CléPub a ) Cryptographie à deux clés

36 Yonel GRUSSON 36 Le protocole Secure SHell (SSH) A l'origine le protocole SSH était un protocole permettant à un client d'ouvrir une session interactive (avec telnet par exemple) sur une machine distante. La sécurité est assurée car : Le client et le serveur s'authentifie mutuellement. Les données circulent chiffrées. La version 1 de SSH date 1995, une faille de sécurité amène la version 2 en SSH1 et SSH2 sont incompatibles.

37 Yonel GRUSSON 37 Le protocole Secure SHell (SSH) SSH2 définit 3 couches faisant l'objet d'une normalisation à l'IETF : SSH transport layer Protocol qui prend en charge le chiffrement, la compression et l'authentification des machines SSH Authentification Protocol qui prend en charge l'authentification de l'utilisateur SSH Connection protocol qui gère la session avec la gestion d'un tunnel

38 Yonel GRUSSON 38 Le protocole Secure SHell (SSH) L'authentification principale de SSH2 repose en particulier sur l'utilisation de clés publiques/clés privées. Le client et le serveur génèrent (commande > ssh –keygen) un couple de clés privée/publique ; puis s'échangent leur clé publique (par FTP ou mail ou commande scp). La clé privée peut être consolidée par une phrase clé (passphrase) qui sera fourni à chaque connexion (sauf avec l'utilisation de ssh-agent).

39 Yonel GRUSSON 39 Le protocole Secure SHell (SSH) Connexion (exemple Linux) : $ ssh Avec login le nom de l'utilisateur serveur_ssh le nom de la machine distante (ou adresse IP) Selon la configuration de ssh, l'authentification peut se faire soit par mot de passe soit par clé publique/privée

40 Yonel GRUSSON 40 Le protocole Secure SHell (SSH) Par mot de passe $ ssh The authenticity of host 'serv_ssh ( )' can't be established. RSA key fingerprint is a9:bb:55:35:86:4d:ca:81:7f:9e:2b:2c:79:10:96:3c. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'serv_ssh ( )' (RSA) to the list of known hosts. Password:*********** L'empreinte (key fingerprint) envoyée par le serveur permet au client d'authentifier ce dernier ( demande faite à la première connexion ).

41 Yonel GRUSSON 41 Le protocole Secure SHell (SSH) Par clé publique/privée (authentification simple) $ ssh 1.Si le client ssh ne possède pas la clé publique de serv_ssh, une première connexion permet à ce dernier de lui envoyer cette clé. 2.Le client génère une clé secrète aléatoire et l'envoie à serv_ssh, en cryptant l'échange avec la clé publique du serveur. Serv_ssh décrypte la clé secrète en utilisant sa clé privée. Seul le serveur peut effectuer ce décryptage.

42 Yonel GRUSSON 42 Le protocole Secure SHell (SSH) 3.Pour s'authentifier auprès du client, le serveur lui crypte un message standard avec sa clé secrète. Si le client retrouve le message standard en utilisant la clé secrète, il a la preuve que le serveur est bien le vrai serveur. 4.Une fois la clé secrète échangée, le client et le serveur peuvent alors établir un canal sécurisé grâce à la clé secrète commune appelée clé de session (cryptographie symétrique).

43 Yonel GRUSSON 43 Le protocole Secure SHell (SSH) 5.Une fois que le canal sécurisé est en place, le client va pouvoir envoyer au serveur le login et le mot de passe de l'utilisateur pour vérification. La canal sécurisé reste en place jusqu'à ce que l'utilisateur se déconnecte. Par clé publique/privée (double authentification) Dans le cas ou le client possède également une clé publique/privée, il peut également s'authentifier selon la même procédure auprès du serveur.

44 Yonel GRUSSON 44 Le protocole Secure SHell (SSH) Grâce une configuration identique sur le client et le serveur, une fois la connexion SSH établie il est possible de rediriger certaine application (certains ports) comme telnet ou ftp vers le tunnel SSH.

45 Yonel GRUSSON 45 3 ème Partie - SSL (Sécure Socket Layer) SSL est un protocole, conçu par Netscape pour assurer la sécurité des échanges sur Internet en particulier pour les échanges commerciaux (paiement, connexion bancaire, etc..) La version 2.0 fut développée par Netscape ; La version 3.0 est actuellement la plus répandue ; La version 3.1 baptisée TLS (transport Layer Security, RFC 2246) est standardisée par l'IETF (Internet Engineering Task Force).

46 Yonel GRUSSON 46 SSL – Sécure Socket Layer SSL est un protocole indépendant du protocole de l'application. Il peut s'utiliser avec HTTP, FTP, POP, etc. SSL se situe entre les couches application et transport (TCP le plus généralement). On le considère comme un protocole de session. Les ports utilisés sont : HTTPS443LDAPS636 SMTPS465POP3S995 NNTPS563IMAPS995 TELNETS992

47 Yonel GRUSSON 47 SSL – Sécure Socket Layer Aujourd'hui, les navigateurs supportent tous ce protocole. Son utilisation est repérable –Par le début de l'URL : https://… où le "s" signifie "sécurité" –Par l'icône :

48 Yonel GRUSSON 48 SSL – Sécure Socket Layer SSL comprend essentiellement 2 protocoles : SSL Handshake protocol qui est la phase de négociation entre le client et le serveur. SSL Record protocol qui chiffre les informations échangés et effectue divers contôles. Donc 2 phases : La négociation La communication

49 Yonel GRUSSON 49 SSL – Sécure Socket Layer Phase 1 : La négociation Le client se connecte au serveur sécurisé par SSL et demande au serveur de s'authentifier. Cette demande est accompagnée de la liste des systèmes de cryptage (longueur des clés) que le client supporte. Le serveur répond au client en lui envoyant un certificat contenant sa clé publique. Ce certificat est signé électroniquement par une autorité de certification (tiers de confiance).

50 Yonel GRUSSON 50 SSL – Sécure Socket Layer Phase 1 : La négociation En d'autre terme le certificat reçu est crypté à l'aide de la clé privée du tiers de confiance. A réception, le client doit donc s'assurer de l'identité du serveur. Est-il bien celui qu'il prétend être ? Les navigateurs possèdent un certains nombre de PKI (Public Key Infrastructure) contenant la clé public du tiers de confiance. Celle-ci permet de vérifier la signature.

51 Yonel GRUSSON 51 SSL – Sécure Socket Layer Phase 1 : La négociation Une fois le serveur authentifié, le client génère une clé de cryptage aléatoire et chiffre cette clé avec la clé public du serveur. Le serveur peut déchiffrer la clé du client avec sa clé privée. Note : Le protocole prévoit également que le serveur puisse demander au client de s'authentifier ; mais ceci est très rare car peu de clients possèdent des clés certifiées.

52 Yonel GRUSSON 52 SSL – Sécure Socket Layer Phase 2 : La communication L'intégrité et la confidentialité des échanges sont garantis par l'utilisation des clés de chiffrement détenues par chaque partenaire. Le client chiffre avec la clé publique du serveur et déchiffre avec la clé qu'il à généré aléatoirement Le serveur chiffre avec la clé qu'il a reçu du client et déchiffre avec sa clé privée

53 Yonel GRUSSON 53 SSL – Sécure Socket Layer La gestion des certificats par Internet Explorer

54 Yonel GRUSSON 54 SSL – Sécure Socket Layer Le protocole SSL est évidemment utilisé sur l'Internet dans des échanges qui doivent être protégés. Mais il peut être aussi mis en œuvre dans le cadre d'un intranet entre le serveur d'une entreprise et des stations clientes mobiles. Dans ce cas, l'authentification du client est plus importante que celle du serveur.

55 Yonel GRUSSON 55 SSH - SSL SSH et SSL paraissent très proches ( OpennSSH s'appuie d'ailleurs sur les bibliothèques d'OpenSSL ). SSH provient surtout du monde Unix où il permet de sécuriser les sessions interactives entre des équipements "partenaires". Il existe des implantations pour Windows. SSL utilise la notion de certificat et met en relation des équipements "indépendants" (Internaute et serveur commercial).

56 Yonel GRUSSON 56

57 Yonel GRUSSON 57 Exemple La suite binaire suivante peut être associée au polynôme suivant : A(x)=1 x x x x x x 0 Exercices : Donner le polynôme de : Donner la suite binaire correspondant à : B(x)=1 x x x x x x 0

58 Yonel GRUSSON 58 Exemple Soit : A(x)=1 x x x x x x 0 ou la suite binaire : G(x) = x 3 + x + 1 ou la suite binaire 1011 A(x) * x 3 soit * 1000 =

59 Yonel GRUSSON 59 Exemple A(x) * x 3 / G(x) Division polynomiale

60 Yonel GRUSSON 60 Exemple Message transmis M(x) = A(x) * x 3 + R(x) soit : Message = Exercice : Transmettre le message avec un contrôle utilisant G(x)=x 3 + 1

61 Yonel GRUSSON 61 Exemple A la réception :

62 Yonel GRUSSON 62 Exemple Exercice : La réception de : est-elle correcte ? Le polynôme générateur étant G(x) = x 3 + 1

63 Yonel GRUSSON 63 Division Polynomiale 2x 3 - 5x 2 + 4x - 1 x 2 + x (2x 3 +2x 2 + 2x) 2x x 2 + 2x (-7x 2 - 7x - 7) 0 + 9x + 6


Télécharger ppt "Yonel GRUSSON 1. 2 LA PROTECTION DES ECHANGES D'INFORMATION."

Présentations similaires


Annonces Google