Services et Mécanismes de base de la Cryptographie Systèmes symétriques et asym
Services et Mécanismes de base de la Cryptographie Systèmes symétriques et asymétriques Fonction de hachage Signature numérique Khaled SAMMOUD Sommaire Domaine de la sécurité. Services de sécurité. Algorithmes de chiffrement symétrique. Chiffrement symétrique – DES. Algorithmes de chiffrement asymétrique. Chiffrement asymétrique – RSA. Fonctions de hachage. Signature. Certificat. Quelques standards Services de la sécurité Authentification Identification Intégrité Confidentialité Non-répudiation Non-rejeu Contre l’analyse de trafic Horodatage Problématique Failles dans les protocoles de communication Toute information circulant sur Internet peut être capturée et enregistrée et/ou modifiée Problème de confidentialité et d’intégrité Toute personne peut falsifier son adresse IP (spoofing) ce qui engendre une fausse identification Problème d’authentification Aucune preuve n’est fournie par Internet quant à la participation dans un échange électronique Problème d’absence de traçabilité Cryptographie Science mathématique permettant d’effectuer des opérations sur un texte intelligible afin d’assurer une ou plusieurs propriétés de la sécurité de l’information. Confidentialité Non Répudiation Intégrité Authentification Définition d’un crypto-système Un crypto-système est décrit par cinq uplets (P,C,K,E,D), satisfaisant ces conditions: « P » est un ensemble fini de textes clairs (Plain text) « C » est un ensemble fini de textes cryptés (Cypher text) « K » est l’espace de clés (key space), représente un ensemble fini de clés possibles. Pour chaque k € K, il existe une fonction cryptage ek € E, et une fonction de décryptage correspondante dk € D Les fonctions ek : P C et dk : C P doivent satisfaire: dk(ek(x))=x pour chaque x € P Principaux objectifs Le texte clair ne doit pas être facilement obtenu à partir d’un texte crypté. Les clés ne doivent pas être facilement obtenues à partir d’un texte crypté. L’espace des clés doit être assez large pour résister aux attaques brute-force. Cryptanalyse Principes et méthodes permettant de trouver un message clair à partir d’un message crypté sans connaissance de la clé. Attaques classifiées selon le type de connaissance disponible pour l’intrus (cryptanalyst). Connaissant C=E(P,K) mais pas K, l’objectif est de trouver P ou K. Types d’attaques de cryptanalyse: Texte chiffré uniquement: uniquement C et E sont connus par l’intrus Texte clair connu: Uniquement E, C, et quelques paires de messages clairs/cryptés avec K, sont connus par l’intrus Texte clair choisi: E, C, sont connus, et P a été choisi par l’intrus. … Cryptage symétrique Exigences: Un algorithme de cryptage solide. Une clé secrète partagée et connue entre l’émetteur et le récepteur. Y = EK(X) X = DK(Y) Suppose que l’algorithme de cryptage est connu à l’avance. Les clés sont distribuées à travers des canaux sécurisés. Exemples : Algorithmes : DES, IDEA, AES Taille des clés : 56-128-192-256-… bits Cryptage symétrique: principe de base Voici le numéro de ma carte de crédit 111111, Texte clair Clé 01010000111 Clé 01010000111 Emetteur Récepteur Voici le numéro de ma carte de crédit 111111, Texte clair Cryptage Décryptage ☺☼♀☻ ♠♣▼╫◊ ♫◙◘€£ ¥₪Ω٭ Texte crypté Internet Transmission par canal sécurisé Cryptanalyst Algorithme Symétrique Une seule clé: clé secrète Transformation et permutation. Traitement relativement rapide. Problème d’échange et de gestion des clés. Usage : service de confidentialité Message chiffré Message clair chiffrement Clé Message clair déchiffrement Clé Alice Bob Cryptage symétrique: Modes Opérationnels Cryptage par flux (Stream Cipher) Principe: Traite les éléments d’entrée de façon continue, produisant à la fois un élément de sortie (crypté). La clé est aussi longue que le stream de données. Mode adapté pour la communication en temps réel: Pas besoin d’attendre l’arrivé du block entier Implémenté en général sur des supports hardware. Cryptage par bloc (Bloc Cipher) Principe: Le texte est divisé en différents blocks de taille fixe. Un block est traité à la fois, produisant un block de données cryptées. le block doit être entièrement disponible avant le traitement La même fonction et la même clé est utilisée pour crypter les blocks successifs. Implémentation d’une manière logicielle en générale. Algorithme Symétrique Deux modes: Chiffrement symétrique en stream Chiffrement symétrique en bloc Electric Code Block (ECB). - Cipher Block Chaining (CBC). E Mi-1 Ci-1 E Mi Ci ECB Mode E Mi-1 Ci-1 E Mi Ci CBC Mode Cryptographie Symétrique: opérations de base Substitution Remplacement de chaque élément (bit, lettre, groupe de bits ou de lettres) dans le texte clair par un autre élément. Transposition Réarrangement des éléments du texte clair La plupart des systèmes utilisent plusieurs étapes de transposition et de substitution. Aucune information ne doit être perdue durant ces deux opérations Exemple de cryptage par substitution Exemple: Caesar's cipher Etapes: Clé = 3 Remplacer chaque lettre par celle qui la succède de trois (3). a devient d, b devient e, …, y devient b, z devient c L’algorithme peut être décrit comme suit: C = E(p) = (p+3) mod (26) Problèmes rendant la cryptanalyse de cet algorithme simple: Algorithme de cryptage et de décryptage connu. Seulement 25 clés à essayer. Le langage du message clair est connu et facilement identifiable. Exemple de cryptage par transposition Exemple: Rail fence technique Principe: Le texte clair est réécrit comme une séquence de lignes, puis réordonnée comme une séquence de colonnes Key: 4 3 1 2 5 6 7 Plaintext: a t t a c k p o s t p o n e d u n t i l t w o a m x y z Ciphertext: TTNA APTM TSUO AODW COIX KNLY PETZ Cryptanalyse possible vue que l’algorithme préserve la fréquence de distribution des lettres du texte original. Algorithmes de chiffrement en continu (Stream Cipher) Exemple : RC4 (RSA Security) Taille de la clé variable (128 bits en pratique). Algorithmes de chiffrement par blocs (Block Cipher) Chiffrement par blocs de texte clair: 64 bits (DES), 128 bits (AES). DES (clé 56 bits), 3DES (clé de 168 bits ou 112 bits). RC2 (clé 128 bits), Blowfish (clé 128bits, jusqu'à 448 bits), AES (clé 128, 192, 256 bits). Cryptographie Symétrique : exemples Algorithme Symétrique Algorithme Nom et commentaires Type de chiffrement Longueur de la clé Normalisé DES Data Encryption Standard en bloc de 64 bits 56 bits FIPS Pub 81,1981 ANSI X3.92, X3.105, X3.106 ISO 8372 ISO/IEC 10116 IDEA International Data Encryption Algorithm, en bloc de 64 bits 128 bits RC2 dévelopé par Ronald Rivest en bloc de 64 bits variable, 40 b.export. Non et propriétaire RC4 dévelopé par R. Rivest enfilé variable 40/ 128 bits Non, mais divulgé sur l’Internet en 1994 RC5 dévelopé par R. Rivest en bloc de 32, 64 ou 128 bits variable jusqu’à 2048 bits Non et propriétaire SKIPJACK Confidentiel développé aux États Unis par la NSA (National Security Agency - Agence de sécurité nationale des États Unis) pour des applications sur la carte PCMCIA Fortezza. en bloc de 64 bits 80 bits Secret défence aux États- Unis Triple DES en bloc de 64 bits 112 bits ANSI X9.52 Cryptage symétrique Avantages Confidentialité des données. Rapidité, et facilité de mise en œuvre sur des circuits. Limitations Problématique de l'échange de la clé de chiffrement Établissement préalable d'un canal sûr pour la transmission de la clé Une tierce partie ne peut pas s’assurer de l’authenticité des messages. Problème de la distribution des clés de cryptage Nécessité d’établir un canal sécurisé pour la transmission de la clé Nombre de clés échangées (en n²). DES (Data Encryption Standard) DES (Data Encryption Standard) IBM 1977 L’algorithme de cryptage (Block cipher) à clés symétriques le plus utilisé. Crypte des blocks de 64 bits en utilisant des clés relativement courtes (taille effective 56-bit). Produit de transpositions et de substitutions. Implémentation facile en matériel. Boites transposition P-Box Boites de substitution S-Box Les étapes des cette élaboration sont restés secrets, (la conception des S Boxes). Les S Boxes sont des tables qui définissent des permutation. Le message est découpé en blocs de 64 bits. Initialisation : permutation de tous les bits formant ce bloc. On le coupe en deux parties : L0 et R0. Algorithme DES 48 bits 1 2 4 3 DES (étapes 1 et 3): P-Box Permutation initiale Permutation finale Le bit numéro 1 deviendra à la position 58 Implémentation simple en matériel DES (étape 2) Les sous-clés (Round keys) sont générées à partir de la clé principale de 56 bits: Diviser la clé de 56 bits en deux segments. Rotation de chaque segment par un ou deux bits à droite. Sélection de 24 bits de chaque segment. DES (étape 3) Un tour DES (One DES round) Cryptage Décryptage Block de 64 bits en entrée 32 bits Li 32 bits Ri 32 bits Li+1 32 bits Ri+1 Block de 64 bits en sortie Fonction de cryptage + Block de 64 bits en entrée 32 bits Li+1 32 bits Ri+1 32 bits Li 32 bits Ri Block de 64 bits en sortie Fonction de cryptage + Sous-clé de 48 bits Sous-clé de 48 bits A B C Fonction de cryptage A- Fonction d’expansion Etendre les blocks d’entré Ri de 32 bits à un block Ri’ de 48 bits. Division des 32 bits en des segments de 4 bits Élargir chaque segment de 4 bits avec les bits de ses voisins pour attendre 6 bits. XOR des uploads/s1/ crypto-1.pdf
Documents similaires
-
23
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Fev 09, 2021
- Catégorie Administration
- Langue French
- Taille du fichier 0.6814MB