1 / 21

INF4420: Sécurité Informatique

INF4420: Sécurité Informatique. Cryptographie I. Aperçu du module – Cryptographie (3 sem.). Définitions et histoire Notions de base (théorie de l'information) Chiffrement Méthodes "classiques" Cryptanalyse de base Chiffrement symétrique Chiffrement à clé publique

wyman
Download Presentation

INF4420: Sécurité Informatique

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. INF4420: Sécurité Informatique Cryptographie I

  2. Aperçu du module – Cryptographie (3 sem.) • Définitions et histoire • Notions de base (théorie de l'information) • Chiffrement • Méthodes "classiques" • Cryptanalyse de base • Chiffrement symétrique • Chiffrement à clé publique • Autres primitives cryptographiques • Principes d'applications • Risques résiduels RÉFÉRENCES : • Stinson, « Cryptography : Theory and Practice », chap. 1,2,3,4. • Bishop, « Computer Security : Art and Science », chap. 9,10,11,32.

  3. Définition et nomenclature Historique Modèle de Shannon Source d’information Codage et compression Entropie et redondance Chiffrement Chiffrement et codage Algorithmes « classiques » Cryptanalyse de base Force brute Reconnaissance de texte Analyse de fréquences Texte et cryptogramme choisi Aperçu – Crypto I (aujourd’hui)

  4. Un peu de grec classique… Kryptos = "caché", "secret" Graphos = écriture => Cryptographie => Cryptanalyse Logos = "savoir" => Cryptologie Stéganos = "couvert", "étanche" => Stéganographie Un peu d'américain… Alice Bob Ève (Charlie) Encrypt and Decrypt Un peu de français !!! Chiffrer et déchiffrer Coder et décoder Crypter et décrypter (!) Irène !!! (l'ingénieure) Un peu de math… Définitions et terminologie

  5. Historique • Les trois ères de la cryptographie • « Classique » • Jusqu’au masque jettable • « Moderne » • Crypto électro-mécanique et WWII • Guerre froide … • Crypto électronique et informatique - DES • « Âge d’or » • Chiffrement à clé publique • Cryptologie et autres tâches cryptographiques • Internet et enjeux commerciaux

  6. Modèle de Shannon • Source • Produit des symboles d'un "alphabet" (sigma) • Fonctionne "sur demande" (d'où le "bouton") • Codage • Regroupe et transforme les symboles de la source dans un format pouvant être transmis ou sauvegardé • Canal • Peut introduire du bruit • Transmission peuvent être interceptés • Décodage • Permet de reconstruire le message original (séquence des symboles de source) Source Codeur Décodeur Récepteur Canal Alice Bob Irène

  7. Source d'informations • Alphabet • Ensemble discret fini  = {1, …, M} • Par convention taille de , || = M • Contrôle • un "bouton" qui permet d'obtenir un symbole à la fois • Principe de la boîte noire • Autre que le bouton et un nombre petit d'observations (symboles), on ne peut rien savoir sur le contenu ou fonctionnement de la source(sauf peut-être Alice, mais pas Ève, Irène ou Bob). • Pourquoi cette abstraction ?? • Permet de discuter de l'efficacité du codage (théorie de l'information) • Permet d'analyser correctement la résistance à certaines menaces • Algorithmes de chiffrement • Choix de mots de passes et phrases de passe

  8. Sources dérivées • Source par bloc • Étant donné une source S, et un entier positif b,la source Sbreprésente la source obtenue en encapsulant S par une boîte qui mets b symboles de S dans un tampon ("buffer") avant de les sortir à l'extérieur • Noter que l'alphabet de Sbest maintenant b • Source par échantillonnage • Étant donné une source S, et un entier positif b,la source S1/breprésente la source obtenue en encapsulant S par une boîte qui émet seulement le 1er symbole de chaque b symboles sortie de S dans • L'alphabet de S1/b est le même que S, soit 

  9. Modélisation de la source • Interprétations • "Déterministe" • La boîte "connaît" à l'avance toute la séquence de symboles (potentiellement infinie…) • Probabiliste • La boîte choisit les symboles au fur et à mesure selon un distribution de probabilité • Processus markovien ou "sans mémoire" : • p_i = Prob (S => " i"),  1<i<M • e.g. Prob (Sb => " i , j") = pipj • Processus non-markovien • Les probabilités de symboles peuvent dépendre des symboles antérieurs sortis de la source…

  10. Codage • Translittération • Un codage traduit les symboles de source vers un autre "alphabet"  = {1, …, N}, • Fonction de codage • F : , •  = F(), représente comment le symbole  devra être transmis • Fonction de décodage • F-1:   •  ' = F-1(), • si  ' ≠ , il n'y a eu une erreur de transmission/codage

  11. Efficacité du codage - Compression • Compression • Dans certaines circonstances, on voudrait pouvoir coder en utilisant moins de bande passante, p.ex. tel que N < M • Efficacité du code est mesuré en bits transmis par chaque symbole de source émis • 1er Théorème de Shannon • 1. Efficacité maximum d'un code compresseur est approx. égale à H(S) • 2. Il existe un code compresseur (sans erreur) avec efficacité H(S)+1

  12. Entropie de Shannon • Définitions • H(S) =  i pi log2 1/pi • Q: Comment est-ce qu'on calcule pi si la source n'est pas Markovienne? • A: En utilisant les fréquences de symboles, calculés sur la chaîne infinie… • Propriétés •  = 0,1 • Prob (S="0") = Prob (S="1") = 1/2 => H(S) = 1 bit (valeur maximal) • Prob (S="1") = 1; Prob (S="0") = 0 => H(S) = 0 bit (valeur minimal) •  arbitraire, || = N • Valeur minimale • H(S) = 0 , quand Prob (S= )=1 pour un  donné • Valeur maximale • H(S) = log Nbits, quand Prob (S= i) = Prob (S= j),  i , j  • Source markovienne • Si S est markovien, alors • H(Sb) = b*H(S) • Sinon, en général • H(Sb) b*H(S)

  13. Interprétation de l’entropie d’une source • Interprétation de H(S) • 1er théorème dit que • chaque symbole émit par S peut être codé individuellement avec en moyenne H(S) bits • Mais si, on permet que le codage regroupe 2 lettres à la fois ?  Alors, par 1er théorème on peut coder chaque digramme (2 symboles) avec H(S2) bits, soit H(S2)/2 bits par symbole • Taux de compression • Sans compression  log N bits par symbole • Avec compression par bloc de b lettres • H(Sb)/b bits par lettre • Taux de compression =

  14. Entropie du langage de la source • À cause des propriétés de H, plus b est grand plus le taux de compression sera élevé, jusqu’à une certaine limite • On définit l’entropie HLdu langage associé à la source S(langage = ensemble de chaînes que S génère) qui représente le « minimum » de bits par symboles qu’il sera nécessaire pour coder des chaînes de symboles émises par S, mêmesi on permet de coder par blocs de plusieurs symboles à la fois.

  15. Correction d'erreur • Code correcteur d'erreur • L'introduction de bruit dans le canal est compensé en utilisant code "correcteur d'erreur" t.q.Prob (F-1(') = )  1, quand ' est le symbole reçu via le canal • L'efficacité du code correcteur d'erreur • Dépend du niveau de bruit introduit par le canal •  celui-ci peut être mesuré avec l'entropie de Shannon • Se mesure également en nombre de bits nécessaires par symbole de source, pour un code qui corrige "presque toutes les erreurs" • 2e Théorème de Shannon • Établit le lien entre l'efficacité du code correcteur d'erreur et le niveau de bruit du canal

  16. Modèle de Shannon révisé Ève   '   Source Codeur Chiffr. Déchif. Décodeur Récepteur Bob Alice Irène

  17. Modèle de Shannon révisé • Ève • Peut intercepter impunément tous les mots de codes transmis sur le canal • Irène • Choisit l'algorithme de chiffrement • Détermine la politique de choix et gestion de clés • Doit tenir en compte le codage • en considérant les caractéristiques de la source (DP, entropie, etc.) • en influençant le choix de codage (si possible) • en choisissant et adaptant l'algorithme de chiffrement en conséquence (choix de taille de clés, compression/décompression, etc.) • Pourquoi : voir TP 1…

  18. Algorithme de chiffrement – Concepts généraux • Alphabet • Entrée :  • Sortie : en général , mais peut-être un autre alphabet • Fonction de chiffrement • Clé de chiffrement = ke • ' = E(ke, ) = Ek1 () • Fonction de déchiffrement • Clé de déchiffrement = kd •  = D(kd, ') = Dk2() • Ne corrige pas les erreurs donc, • En général  = '

  19. Algorithme de César Source texte en caractères latin Codage lettres  chiffres de 1 à 26 (20 pour être historiquement exact) Chiffrement xx+3 mod 26 Clés  nil Algorithme de décalage Source et codage idem Chiffrement xx + k mod 26 Clés k{1,…,26} Algorithme de substitution Source Idem Codage aucun Chiffrement x(x) Clé  (une table de substitution) Algorithme afin Source et codage  lettres en chiffres Chiffrement x ax + b mod 26 Clé (a,b) où a, b  {1,…,26} Algorithmes "classiques" mono-alphabétiques

  20. Algorithme de Vigenère • Algorithme de Vigenère • Source • Texte en caractères latin • Codage • lettres  chiffres de 1 à 26 • Clé • K = k1 k2 … km , mot/phrase de longueur m • Chiffrement • xi(xi + k i mod m ) mod 26 C E C I N E S T P A U N E P I P E ... S E X Y S E X Y S E X Y S E X Y S ... 3 5 3 9 14 5 19 20 16 1 21 14 5 16 9 16 5 ... 19 5 24 25 19 5 24 25 19 5 24 25 19 5 24 25 19 ... + 22 10 1 8 7 10 17 19 9 6 19 13 24 21 7 15 24 ... V J A H G J Q S I F S M N U G O X ...

  21. Méthode de cryptanalyse de base • Force brute • Taille de l’espace de clés • Critère de reconnaissance ou succès • Patron ou format reconnaissable • Le texte « fait du sens » • Le texte « marche », e.g. mot de passe, etc. • Analyse fréquentielle • Établir le tableau des fréquences • Connaître les fréquences de la source • Codage connu • Rétro-ingénierie de l'algorithme de chiffrement: • Marche pour les algorithmes de substitution mono-alphabétiques • Peut marcher pour les poly-alphabétiques, si fréquences connues • Mesure de facilité • ENTROPIE !!!! • (mais attention : entropie de la source vs. entropie du langage) • COMPRÉSSIBILITÉ !!!

More Related