Introduction à la cryptographie

Mastère Professionnel: Services et Sécurité Réseaux ISITCOM-HS 2011/2012
1

Introduction à la cryptographie
Mastère Professionnel: Services et Sécurité Réseaux ISITCOM-HS 2011/2012
2

Plan du cours
• • • • • Chapitre 1: Sécurité et cryptographie Chapitre 2: Cryptosystèmes symétriques Chapitre 3: Cryptosystèmes asymétriques Chapitre 4: Applications de la cryptographie Chapitre 5: Initiation à la stéganographie

3

Sécurité et cryptographie

4

des échanges de données. de nombreuses failles se multiplient. et donc des transmissions entre individus.Sécurité et cryptographie (1/8) • Avec la popularité grandissante des réseaux. 5 .

Les menaces intentionnelles reposent sur l’action d’un tiers désirant s’introduire et relever des informations. La détection est facilitée. mais il peut être déjà trop tard lorsque celle-ci a lieu. et autres défaillances «incontrôlables »). 6 . ni altère les systèmes). pannes matérielles.Sécurité et cryptographie (2/8) • Classification des menaces: Les menaces accidentelles ne supposent aucune préméditation ( bugs logiciels. ce qui rend sa détection relativement difficile (cet audit ne modifie pas les fichiers. – Attaque active: l’intrus aura volontairement modifié les fichiers ou le système en place. – Attaque passive: l’intrus va tenter d’avoir les informations par audit.

Sécurité et cryptographie (3/8) Menaces actives: Interruption = problème lié à la disponibilité des données Modification = problème l’intégrité des données Fabrication = problème l’authenticité des données lié à lié à Menace passive: Interception = problème lié à la confidentialité des données 7 .

Sa sécurité est dépendante du niveau de sécurité des clefs. Signature numérique: données ajoutées pour vérifier l'intégrité ou l'origine des données. Ils ne protègent pas contre un intrus qui emploie un logiciel légitime. 8 .Sécurité et cryptographie (4/8) • Exemples de mécanismes de sécurité: Chiffrement : algorithme généralement basé sur des clefs et transformant les données. Notarisation : utilisation d’un tiers de confiance pour assurer certains services de sécurité. Contrôle d’accès : vérifie les droits d’accès d'un acteur aux données. Antivirus : logiciel censé protéger un ordinateur contre les logiciels (ou fichiers potentiellement exécutables) néfastes.

Sécurité et cryptographie (5/8) • Modèles de communication: La transmission de données vue par Shannon-Weaver en 1949 La transmission de données simplifiée 9 .

Sécurité et cryptographie (6/8) • Définitions liées à la cryptologie: Cryptographie : étude des méthodes donnant la possibilité d’envoyer des données d’une manière confidentielle sur un support de transmission. Cryptologie : science mathématique qui réunit la cryptographie et la cryptanalyse. 10 . Cryptanalyse : (≠ cryptographie) a pour but de retrouver la donnée en clair à partir des données chiffrées en déterminant les failles du système et des algorithmes de cryptographie.

Sécurité et cryptographie (7/8) • Chiffrement et déchiffrement: Clé de chiffrement Donnée chiffrée ou cryptogramme Clé de déchiffrement Donnée en clair Algorithme de chiffrement Algorithme de déchiffrement Donnée en clair Par cryptanalyse Donnée en clair et/ou clés 11 .

Crypotosystème symétrique : clé de chiffrement = clé de déchiffrement Cryptosystème asymétrique : clé de chiffrement ≠ clé de déchiffrement 12 .Sécurité et cryptographie (8/8) • Cryptosystèmes et symétrie Cryptosystème (ou système cryptographique): ensemble des clés possibles. des données claires et chiffrées associées à des algorithmes données.

Cryptosystèmes symétriques 13 .

2. Fonction de chiffrement (connue par Alice): Ek(m)= c avec m ∈ M. M: ensemble des données (ou messages) claires. C: ensemble des données (ou messages) chiffrées. 14 . Fonction de déchiffrement (connue par Bob): Dk(c)= m Règle de déchiffrement à satisfaire: Dk(Ek(m))=m ∀ m ∈ M.Cryptosystèmes symétriques (1/30) • Principe formel Trois ensembles non vides: 1. 3. c ∈ C et k ∈ K. il est apte de décrypter tout message envoyé par Alice avec la clé k. K: ensemble des clés. Remarque: Si l’espion connait la fonction de déchiffrement.

…. 15 .25} du latin.….1. ensemble des l-uplets de bits. Pour chaque clé k= (k1.Cryptosystèmes symétriques (2/30) • Exemple: chiffre de Vernam (1917) Soit Ζ2={0..1} (représente les bits) et ⊕ addition modulo 2 des bits (fonction XOR) M=C= K= (Ζ2)l avec l un entier naturel ≥ 1. kl) La fonction de déchiffrement est identique à celle de chiffrement. Question: vérifier la règle de déchiffrement Remarque: ce code peut être vu sur Ζ26={0.

Entropie conjointe: 16 .…. xn) et (y1. yn): Question: calculer l’entropie sur l’expérience de lancement d’un dé à 6 faces.….Cryptosystèmes symétriques (3/30) • Mathématiques: théorie de l’information Entropie: mesure de l’incertitude sur l’information Soient deux variables aléatoires X et Y à valeurs respectives dans (x1.

Cryptosystèmes symétriques (4/30) H(X/Y): incertitude qui reste sur X lorsque Y est connue 17 .

Cryptosystèmes symétriques (5/30) Information mutuelle moyenne: Remarque: Le maximum de H(X) est atteint pour n fixé dans le cas uniforme (probabilités égales ou équiprobables) Question: Déterminer ce H(X). 18 .

Cryptosystèmes symétriques (6/30) • Approches de sécurité (Shannon) Première approche: confidentialité parfaite (sureté inconditionnelle) Un cryptosystème est dit inconditionnellement sûr ou assure une confidentialité parfaite lorsque la connaissance d’un message chiffré n’apporte aucune information sur le clair correspondant exemple: chiffre de Vernam Conditions: 1. Les clés sont équiprobables 19 . Cardinal de l’ensemble des messages possibles (aussi de l’ensemble des clés et des chiffrés) n = 26m . 3. Phrase de m lettres latines (message en clair) 2.

Cryptosystèmes symétriques (7/30) Objectif de démonstration: Par définition: Relations utiles: 1. M et K sont indépendants 20 . C= M+K (somme modulo 26) 2.

C= M+K (somme modulo 26) 2. M et K sont indépendants 21 .Cryptosystèmes symétriques (8/30) Objectif de démonstration: Par définition: Relations utiles: 1.

Cryptosystèmes symétriques (9/30) Objectif de démonstration: Par définition: Relations utiles: 1. C= M+K (somme modulo 26) 2. M et K sont indépendants 22 .

Cryptosystèmes symétriques (10/30) 23 .

En conséquence. les clés sont aussi volumineuses que les messages.Cryptosystèmes symétriques (11/30) • Cryptosytème parfait Théorème: Si un cryptosystème est parfait alors Interprétation: 1. 2. il y a au moins autant d’incertitude sur les clés que sur les messages. Remarque : Un système pratique est à l’opposé d’un système parfait : la clé doit être de taille raisonnable et réutilisable 24 .

Cryptosystèmes symétriques (12/30) • • 1. 2. Deuxième approche: sécurité statistique La difficulté de l’emploi des cryptosystèmes à confidentialité parfaite ont obligé l’établissement d’un critère affaibli La solidité statistique repose sur deux propriétés informelles utiles pour évaluer les cryptosystèmes pratiques et modernes: Diffusion confusion 25 .

Cryptosystèmes symétriques (13/30) • Diffusion Chaque élément d’un message chiffré (par exemple lettre d’un texte chiffré) dépend de tous les éléments du message clair correspondant et de la clé utilisée. Interprétation: dépendance forte aux conditions initiales Confusion: Masquer les statistiques d’un alphabet donné (par exemple d’une langue) à travers le chiffrement afin de les rendre inexploitable par un adversaire 26 .

Passer au bloc suivant et effectuer les opérations à partir de 3/ 27 . 2. 3. Déplacer certains bits du bloc obtenu Répéter les deux opérations précédentes un certain nombre de fois appelées rondes. 4. 5. Idée: Convertir les éléments d’un alphabet en binaire.Cryptosystèmes symétriques (14/30) • Chiffrement par blocs 1. 6. Découper la chaine binaire en blocs de taille donnée. Chiffrer le bloc en effectuant la somme binaire avec les bits de la clé.

Cryptosystèmes symétriques (15/30) Catégories: 1. Chiffrement par produit: C’est la combinaison des deux. Chiffrement par transposition: mélanger les symboles ou les groupes de symboles d’un message clair suivant des règles prédéfinies. 28 . Chiffrement par substitution: remplacer des symboles ou des groupes de symboles par d’autres symboles ou groupes de symboles 2. 3. Une suite de transpositions forme une permutation.

Cryptosystèmes symétriques (16/30) Réseaux S-P de Shannon: succession des rondes 29 .

Cryptosystèmes symétriques (17/30) Exemple: structure de Feistel (IBM. 1973) 30 .

Cryptosystèmes symétriques (18/30) Data Encryption Standard (DES) 31 .

le second le bit 50… 32 .Cryptosystèmes symétriques (19/30) • Permutation initiale Les 64 bits du bloc d’entrée subissent la permutation suivante: Exemple: Le premier bit sera le bit 58.

Cryptosystèmes symétriques (20/30) • Permutation finale Les 64 bits des blocs d’entrée subissent la permutation suivante: 33 .

Cryptosystèmes symétriques (21/30) • Calcul médian Les 64 bits initiaux de données sont divisés en 2 blocs (L et R): 34 .

Cryptosystèmes symétriques (22/30) • Expansion-Permutation Les 32 bits sont étendus à 48 bits grâce à une table d’expansion (également appelée matrice d’expansion) 35 .

Cryptosystèmes symétriques (23/30) • Addition à la sous-clé Kn Le résultat de l’expansion est additionné (par XOR ) à la sous-clé Kn de longueur 48 bits correspondant à l’itération selon la formule : 36 .

Cryptosystèmes symétriques (24/30) • Transformations par S-Boxes Chaque bloc Bj constitue ensuite l’entrée de l’opération de substitution réalisée sur base des S-Box. 37 .

38 .Cryptosystèmes symétriques (25/30) Pour chaque S-Box on à déterminer: b1b6: numéro de la ligne b2b3 b4b5 : numéro de la colonne Puis effectuer la substitution par la valeur de la case correspondante en binaire.

Cryptosystèmes symétriques (26/30) • Transformations par P-Box L’opération de permutation est réalisée sur le résultat de la substitution des S-box et est basée sur cette matrice: 39 .

1.Permutation sur les 56 bits: 40 . Les 8 autres des bits de parité des 7 groupes de 8 bits.Réduction en 56 bits par enlèvement de bits de parité.Cryptosystèmes symétriques (27/30) • Calcul de la sous-clé Kn La clé est constituée de 64 bits dont 56 sont utilisés dans l’algorithme de calcul des sous-clés. 2.

chaque sous-clé de 28 bits subit une rotation d’1 ou 2 bits vers la gauche selon: 41 .Cryptosystèmes symétriques (28/30) 3. 4.A chaque itération.Réduction en 56 bits par enlèvement de bits de parité.

Cryptosystèmes symétriques (29/30) 5.Réduction : après concaténation des deux sous-clés précédentes. la clé résultante (56 bits) est réduite à une sousclé de 48 bits sur base de la matrice de réduction suivante: 42 .

k2. 2. Opération de chiffrement sur chaque élément du texte clair (caractères/bits): on chiffre un caractère/bit à la fois.…. Le séquence de clés est infinie et pseudo-aléatoire (si c’était aléatoire c’est le One Time Pad de Vernam) 43 . kj 3.Cryptosystèmes symétriques (30/30) • Chiffrement par flots (par stream/de flux) 1. Repose sur un générateur de clés qui produit une séquence de clés k1.

Sign up to vote on this title
UsefulNot useful