47
Sécurité des Systèmes d’Information Théorie et Pratique Michel Dubois [email protected] Dernière mise à jour: 10 janvier 2011 Introduction Bases mathématiques Histoire En pratique ... Table des matières 1 Introduction 2 Bases mathématiques 3 Histoire 4 En pratique ... 2/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

Introduction Bases mathématiques Histoire En pratique...Sécurité des Systèmes d’Information Théorie et Pratique Michel Dubois [email protected] Dernière mise à jour:

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

  • Sécurité des Systèmes d’InformationThéorie et Pratique

    Michel Dubois

    [email protected]

    Dernière mise à jour: 10 janvier 2011

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Table des matières

    1 Introduction

    2 Bases mathématiques

    3 Histoire

    4 En pratique ...

    2/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Introduction

    1 Introduction

    2 Bases mathématiques

    3 Histoire

    4 En pratique ...

    3/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Qu’est-ce que la crypto ?

    1 IntroductionQu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    4/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Une énigme. . .

    I Alice désire envoyer un cadeau à Bob

    I Elle ne fait aucune confiance au convoyeurI Comment doit-elle s’y prendre pour être sûre que Bob reçoive son cadeau ?

    I Sans qu’il soit modifiéI Sans qu’il soit ouvert

    Alice Cadeau Bob

    canal non sécurisé canal non sécurisé

    5/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Une énigme . . .

    Solution symétrique : une seule clé secrète partagée

    I Alice et Bob choisissent ensemble un cadenas et une clé. Chacun possède undouble de la clé

    I Alice ferme le paquet du cadeau avec le cadenas et l’envoie à Bob

    I Bob reçoit le paquet, l’ouvre avec sa clé et récupère son cadeau

    Alice

    Cadeau

    Bob

    canal sécurisé

    canal non sécurisé canal non sécurisé

    6/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Une énigme . . .

    Solution asymétrique : Une clé publique pour chiffrer, une clé privée pour déchiffrer

    I Bob choisi un cadenas

    I Il l’envoie ouvert à Alice, et en garde la clé

    I Lorsque Alice veut envoyer son cadeau à Bob, elle ferme la paquet du cadeauavec le cadenas et l’envoie à Bob

    I Bob reçoit le paquet, l’ouvre avec sa clé et récupère son cadeau

    Alice

    Cadeau

    Bob

    canal non sécurisé

    canal non sécurisé canal non sécurisé

    7/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Les fondements

    Base

    L’objectif fondamental de la cryptographie est de permettre à deux personnes decommuniquer au travers d’un canal non sécurisé de façon à ce qu’un inconnu nepuisse intercepter la communication.

    Alice

    Cadeau

    Bob

    Ève

    canal non sécurisé canal non sécurisé

    pira

    te

    8/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Pourquoi la crypto ?

    1 IntroductionQu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    9/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    La cryptographie est utilisée pour. . .Garantir la confidentialité

    Confidentialité

    La confidentialité est la propriété qu’une information n’est ni disponible ni divulguéeaux personnes, entités ou processus non autorisés.

    I Confidentialité

    Garder l’information secrète pour tous ceux qui nesont pas autorisés à la consulter.

    I Anonymat

    Dissimuler l’identité d’une entité impliquée dans unprocessus.

    10/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    La cryptographie est utilisée pour. . .Garantir l’intégrité

    Intégrité

    L’intégrité est la prévention d’une modification non autorisée de l’information.

    I Intégrité des données

    S’assurer que l’information n’a pas été modifiée parune entité non autorisée.

    I Validation

    Un moyen de fournir l’autorisation d’utiliser ou demanipuler une information ou une ressource.

    11/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    La cryptographie est utilisée pour. . .Garantir l’intégrité

    Intégrité

    L’intégrité est la prévention d’une modification non autorisée de l’information.

    I Witnessing

    Vérifier la création ou l’existence d’une informationou d’une entité par quelqu’un d’autre que lecréateur.

    I Autorisation

    Transfert, à une autre entité, de l’approbation defaire ou d’être quelque chose.

    12/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    La cryptographie est utilisée pour. . .Assurer l’authentification

    Authentification

    Prouver son identité par ce que l’on connait, par ce que l’on est, par ce que l’on a, parce que l’on fait ou par l’endroit où l’on se trouve.

    I Authentification desentités

    Prouver de façon interactivel’identité d’une entité.

    I Authentification desmessages

    Confirmation de la source del’information.

    I Timestamping

    Enregistrement de la date et del’heure de la création ou del’existence d’une information.

    13/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    La cryptographie est utilisée pour. . .Garantir les transactions informatiques

    Transaction informatique

    Une transaction informatique consiste à effectuer une opération informatiquecohérente composée de plusieurs tâches unitaires. L’opération n’est valide que sitoutes les tâches unitaires sont effectuées correctement.

    I Non répudiation

    Prévenir le déni d’engagements ou d’actionsprécédentes.

    I Signature

    Une méthode pour lier une information à une entité.

    14/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    La cryptographie est utilisée pour. . .Garantir les transactions informatiques

    Transaction informatique

    Une transaction informatique consiste à effectuer une opération informatiquecohérente composée de plusieurs tâches unitaires. L’opération n’est valide que sitoutes les tâches unitaires sont effectuées correctement.

    I Réception

    S’assurer que l’information transmise a bien étéreçue.

    I Confirmation

    Accusé de réception que le service a bien été fourni.

    15/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    La cryptographie est utilisée pour. . .Garantir le contrôle d’accès

    Contrôle d’accès

    Le contrôle d’accès consiste à vérifier si une entité demandant d’accéder à uneressource a les droits nécessaires pour le faire. Le contrôle d’accès offre la possibilitéd’accéder à des ressources physiques ou logiques.

    I Contrôle d’accès

    Restreindre l’accès à desressources d’entitésconfidentielles.

    I Certification

    Approbation d’une informationpar une entité de confiance.

    I Révocation

    Retrait d’un certificat ou d’uneautorisation.

    16/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    La cryptographie est utilisée pour. . .Garantir la propriété

    I Propriété

    Méthode permettant de se procurer une entité avec l’autorisation légale de l’utiliserou de la transférer vers d’autres.

    17/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Définitions

    1 IntroductionQu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    18/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Information et Cryptographie

    Information

    Dans le monde de la cryptographie, le concept d’information définit une quantitécompréhensible.

    Cryptographie

    I κρυπτός : caché, secret ou obscur

    I γράφειν : action de dessiner

    Ensemble des méthodes mathématiques mises en œuvre pour assurer la protectiond’un message.

    19/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Chiffrement et déchiffrement

    Chiffrement

    Le chiffrement consiste, à l’aide d’une clé de chiffrement, à transformer un texte enclair en un texte chiffré.

    Déchiffrement

    Le déchiffrement est l’opération réciproque du chiffrement consistant à traduire untexte chiffré en clair, en connaissant la clé de chiffrement.

    Cryptogramme

    C’est le message chiffré.

    20/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Décryptage et cryptanalyse

    Décrypter

    Décrypter consiste à traduire un texte chiffré en clair sans posséder la clé dedéchiffrement.

    Cryptanalyse

    La cryptanalyse est l’étude destechniques mathématiquespermettant de réaliser le décryptaged’un cryptogramme.

    21/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Qu’est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Cryptologie

    Cryptologie = Cryptographie + Cryptanalyse

    22/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Bases mathématiques

    1 Introduction

    2 Bases mathématiques

    3 Histoire

    4 En pratique ...

    23/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Notation

    2 Bases mathématiquesNotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    24/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Notation

    I A définit l’ensemble fini appelé alphabet de définitionI P définit l’ensemble fini appelé espace des textes clairs (plain text)I C définit l’ensemble fini appelé espace des textes chiffrés (cipher text)I K définit l’ensemble fini appelé espace des clefs (key space)I E et D définissent respectivement l’ensemble fini des fonctions de chiffrement

    (encryption) et de déchiffrement (decryption).

    I si, pour chaque e ∈ K, il existe une fonction Ee ∈ E de P→ C, alors Ee estappelée fonction de chiffrement

    I si, pour chaque d ∈ K, il existe une fonction Dd ∈ D de C→ P, alors Dd estappelée fonction de déchiffrement

    Un cryptosystème est le sextuplet S tel que S = {A,P,C,K,E,D}

    25/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Bases

    I Un schéma cryptographique est l’ensemble des fonctions de chiffrement{Ee : e ∈ K} et des fonctions de déchiffrement correspondantes {Dd : d ∈ K}avec la propriété que ∀e ∈ K il existe une clé unique d ∈ K tel que Dd = E−1e .Soit Dd(Ee(p)) = p ∀p ∈ P.

    I Dans ce cas (e,d) désigne la paire de clefs.

    I Un schéma cryptographique est dit "cassable" si une partie tierce, sansconnaissance préalable de la paire de clefs (e,d), peut systématiquementretrouver le texte clair à partir du texte chiffré dans un laps de tempsraisonnable.

    26/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Processus de chiffrement

    p ∈ PTexte en clair

    Ee(p)Fonction de chiffrement

    e ∈ K

    p ∈ PTexte en clair

    Dd(c)Fonction de déchiffrement

    d ∈ K

    c ∈ CTexte chiffré

    Alice Bob

    canal non sécurisé

    Clé de chiffrement Clé de déchiffrement

    27/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Quelques définitions. . .

    Fonction à sens unique (one way function) : une fonction f deX→ Y est une fonction à sens unique si :

    I f(x) est "facile" à calculer ∀x ∈ X et,I pour la plupart des éléments y ∈ Im(f)

    il est "quasiment impossible" de trouverx ∈ X tel que f(x) = y.

    Fonction à sens unique avec trappe (trapdoor one wayfunction) : une fonction f de X→ Y est unefonction à sens unique avec trappe si,connaissant certains élémentssupplémentaires, il devient "facile", pour laplupart des éléments y ∈ Im(f), de trouverun x ∈ X tel que f(x) = y.

    28/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Théorie de l’information

    2 Bases mathématiquesNotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    29/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Théorie de l’information

    Théorie de l’information

    La théorie de l’information est définie par Claude Elmwood Shannon dans son article“A Mathematical Theory of Communications” publié en 1948.

    Système de communication

    Source

    Encodeur

    Canal

    Décodeur

    DestinataireSource de bruit

    message

    signal signal

    message

    Un message est un ensemble de signes. Cela implique donc un codage parl’émetteur, et un décodage par le récepteur.

    30/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Théorie de l’information

    La théorie de l’information permet de quantifier l’information en déterminantmathématiquement le taux d’information transmis dans la communication d’unmessage par un canal de communication en présence de parasites.

    La théorie de l’information permet :

    1 d’étudier l’efficience des communication : compressionet codes correcteurs

    2 d’étudier la possibilité de communication secrète

    Shannon généralise la notion de bit comme unité de mesure de l’information.

    31/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Théorie de l’informationL’entropie

    Quelle est la quantité d’information nécessaire pour coder les données suivantes ?

    I homme

    I femme

    I 1

    I 0

    I dimanche

    I lundi

    I mardi

    I mercredi

    I jeudi

    I vendredi

    I samedi

    I 000

    I 001

    I 010

    I 011

    I 100

    I 101

    I 110

    I a

    I . . .

    I z

    I A

    I . . .

    I Z

    I 0

    I . . .

    I 9

    I 000001

    I . . .

    I 011010

    I 011011

    I . . .

    I 110100

    I 110101

    I . . .

    I 111110

    Entropie d’un message

    L’entropie du message M est le nombre minimal de bits nécessaires pour codertoutes les significations n possibles de ce message. Elle est calculée à l’aide de laformule : H(M) = log2n.

    32/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Théorie de l’informationL’incertitude

    Incertitude d’un message

    L’incertitude d’un message est le nombre de bits de texte en clair nécessaires pourretrouver le texte clair en entier à partir du texte chiffré.

    Exemple

    Si le message chiffré YHGTERSF a pour signification soit chien soit oiseau, alors sonincertitude vaut 1.En effet, il suffit de découvrir 1 bit pour retrouver le texte clair.

    33/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Théorie de l’information

    Taux du langage et Redondance

    I Le taux du langage : r = H(M)/N (N est la longueur des messages).Pour l’anglais, r = 1, 3 ;

    I Le taux absolu d’un langage est le nombre maximal de bits qui peuvent êtrecodés par chaque caractère : R = log2L ou L est le nombre de caractères dulangage.Pour l’anglais, R = log226 = 4, 7 ;

    I La redondance d’un langage est définie par D = R− r. Pour l’anglais, D = 4, 7− 1, 3 = 3, 4 ;Cela signifie que que chaque caractère apporte 3, 4 bits d’information redondante.

    Confusion et Diffusion

    I La confusion gomme les relations entre le message et le cryptogramme. Le moyenle plus simple pour y parvenir est la substitution

    I La diffusion disperse la redondance du texte clair en la répartissant dans le textechiffré. Le moyen le plus simple pour y parvenir est la permutation

    34/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Théorie de la complexité

    2 Bases mathématiquesNotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    35/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Théorie de la complexité

    La complexité d’un algorithme est déterminée par lapuissance de calcul nécessaire pour l’exécuter. Elle estmesurée par :

    I T pour la complexité en temps

    I S pour la complexité en espace mémoire

    I n correspondant à la taille de l’entrée

    36/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Théorie de la complexité

    Si en analysant un algorithme, nous constatons que le temps nécessaire afin derésoudre un problème de taille n est donné par T(n) = 4n2 − 2n + 2 alors on peutdire que T(n) est de l’ordre de n2. Soit : T(n) = O(n2)

    notation grand O

    I O(n) définit l’ordre de grandeur de la complexitédu calcul

    I Cette notation permet de voir la façon dont lesbesoins en temps et en espace évoluent avec lataille des entrées.

    37/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Théorie de la complexité

    Temps de calcul pour différentes classes d’algorithmes

    Classe Complexité Nombre d’opérations pour n =106

    Temps pour 106 opérations par se-conde

    Constants O(1) 1 1µs

    Linéaires O(n) 106 1s

    Quadratiques O(n2) 1012 11, 6j

    Cubiques O(n3) 1018 32000 années

    Exponentiels O(2n) 10301030 10301006 fois l’âge de l’univers

    38/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Théorie des nombres

    2 Bases mathématiquesNotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    39/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Congruence

    Cas pratique

    Imaginons le cas, suivant : “Alice doit rencontrer Bernard, à 20h00,malheureusement ce dernier a 18h00 de retard. À quelle heure serencontreront ils ?”

    Résultat

    C’est de l’arithmétique modulo 24. La réponse est (20 + 18) mod 24 = 14, ils serencontreront donc le lendemain à 14h00. Dans le cas présent, nous pouvons direque 14 et 38 sont équivalents modulo 24, ce qui peut s’écrire :(20 + 18) ≡ 14 (mod 24).

    Définition

    La congruence est la relation symétrique, liant deux éléments a et b telle quea ≡ b (mod n) avec a = b + kn, k ∈ Z.

    40/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Application à la cryptographie

    La cryptographie fait un usage intensif de l’arithmétique modulo n car elle permet derestreindre la tailles des résultats intermédiaires et finaux.

    Exponentiation modulaire

    I Calcul de c ≡ be (mod m)I Fonction à sens unique

    I le calcul de c ≡ be (mod m) est facileI le calcul du logarithme discret (retrouver c, e et m à partir de b) est difficile

    41/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Exponentiation modulaire

    Algorithme

    1 l’exposant e est décomposé en binaire : e =n−1∑i=0

    bi2i avec :

    • n = longueur de e en bits• b = 0 ou 1

    2 ae peut alors s’écrire : ae = a

    (n−1∑i=0

    bi2i

    )=

    n−1∏i=0

    (a2

    i)bi

    3 le résultat de ae(m) est doncn−1∏i=0

    (a2

    i)bi

    (m)

    42/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Exponentiation modulaire

    Exemple

    I Calcul de be mod m avec :

    I b = 10200, e = 10100 et m = pq avec :I p = 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000267I q = 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000949

    I resultat :52862119265573549113884106184518395486641361403717209157297528744058613976960892237244387252167641994401233419446389985938189423343416094198301967144242351185100373100473831963955273178200552330080000

    I temps de calcul : 0.0139420032501s

    Démonstration

    def modexp(base , exposant , modulo) :result = 1while exposant : # Tant que exposant est dif ferent de 0

    i f exposant%2: # Si l ’exposant est impairresult = ( result * base) % modulo #test

    exposant >>= 1 # On divise l ’exposant par 2base = (base * base) % modulo

    return result % modulo

    43/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    NotationThéorie de l’informationThéorie de la complexitéThéorie des nombres

    Les nombres premiers

    Définition

    Un nombre premier est un nombre entier, strictement plus grand que 1, dont lesseuls facteurs sont 1 et lui-même.

    I Un nombre non premier est un nombre composé

    I 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83,89 et 97 sont les nombres premiers inférieur à 100

    I le plus grand nombre premier connu est : 243112609 − 1, il a été découvert le 23août 2008, il s’appel M47 et contient 12 978 189 chiffres en base 10

    44/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    Histoire

    1 Introduction

    2 Bases mathématiques

    3 Histoire

    4 En pratique ...

    45/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    felix le chat

    I taille = 200× 200 pixels soit une matrice carré d’ordre 200I longueur du message 40 000 caractères

    I Image en niveau de grisI Alphabet = [0..255] Alphabet classique = [0..25]

    I Opérations modulo 256 Opérations modulo 26

    46/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    Première période : âge artisanal

    3 HistoirePremière période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    47/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines às 1918Le chiffre de César

    Le chiffre de César

    Le texte est chiffré en décalant les lettres du message de 3 rangs.

    I Message : VENI VIDI VICI

    I Cryptogramme : YHQL YLGL YLFL

    Principes

    I Il s’agit d’un algorithme de chiffrement par substitution monoalphabétique

    I Chiffrement : Ck(x) = x + k mod 26

    I Déchiffrement : Dk(y) = y− k mod 26I pour le chiffre de César, k = 3

    48/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918Le chiffre de César

    Inconvénient

    Le chiffre de César ne change pas l’entropie du message.Sa cryptanalyse est aisée si le cryptogramme est suffisamment long.

    49/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918Le chiffre de César

    Chiffrement par substitution monoalphabétique : visualisation

    Décalage de 32

    Décalage de 64

    Décalage de 96

    Décalage de 128

    Décalage de 160

    Décalage de 192

    Décalage de 224

    Décalage de 256

    50/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918Le chiffrement affine

    Le chiffrement affine

    Le texte est chiffré en appliquant à chaque caractère une fonction affine : y = ax + b

    I Message : VENI VIDI VICI

    I Cryptogramme : RSTE REPE REME

    Principes

    I Il s’agit d’un algorithme de chiffrement par substitution monoalphabétique

    I Chiffrement : C(a,b)(x) = (ax + b) mod 26

    I Déchiffrement : D(a,b)(y) = a−1(y− b) mod 26

    I pour notre exemple, a = 3, b = 6

    51/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918Le chiffrement affine

    Chiffrement par substitution affine : visualisation

    a=1, b=0

    a=1, b=40

    a=1, b=100

    a=40, b=0

    a=40, b=40

    a=40, b=100

    a=100, b=0

    a=100, b=40

    52/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918La Scytale lacédémonienne

    La Scytale lacédémonienne

    Le texte est inscrit sur une bandelette enroulée, par la suite, sur un bâton dediamètre fixé (la clé). Le message est alors chiffré en lisant les caractères le long dubaton.

    I Message : VENI VIDI VICI

    I Cryptogramme : VNEIV IID IV Clef : [0, 2, 1]

    I C’est un anagramme du message initial

    Principes

    I Il s’agit d’un algorithme de chiffrement par permutation

    I Chiffrement : Ck(x1, . . . , xm) = (xk(1), xk(2), . . . , xk(m))

    I Déchiffrement : Dk(y1, . . . , ym) = (y−1k(1), y

    −1k(2), . . . , y

    −1k(m))

    53/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918La Scytale lacédémonienne

    Chiffrement par blocs

    Ce mode de chiffrement introduit la notion de blocs : le message est divisé en blocsde la longueur de la clef de permutation. Chaque bloc est chiffré indépendamment.

    54/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918La Scytale lacédémonienne

    Chiffrement par permutation : visualisation

    Longueur de clef = 4

    Longueur de clef = 10

    Longueur de clef = 40

    Longueur de clef = 100

    Longueur de clef = 400

    Longueur de clef = 4000

    55/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918Le chiffre de Vigenère

    Le chiffre de Vigenère

    Au XVIe siècle, Blaise de Vigenère, diplomate français, imagina une extension duchiffre de César en ajoutant la notion de clef. La clef définie un décalage variablepour chaque lettre du message.

    I Message : VENI VIDI VICI

    I Cryptogramme : QMTMMZZHDHBMPM Clef : vigenere

    Principes

    I Il s’agit d’un algorithme de chiffrement par substitution polyalphabétique

    I Chiffrement : Ck(x1, . . . , xn) = (x1 + k1 mod 26), . . . , (xn + kn mod 26)

    I Déchiffrement : Dk(y1, . . . , yn) = (y1 − k1 mod 26), . . . , (yn + kn mod 26)

    56/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918Le chiffre de Vigenère

    Le carré de Vigenère

    57/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918Le chiffre de Vigenère

    Chiffrement par substitution polyalphabétique : visualisation

    Longueur de clef = 4

    Longueur de clef = 10

    Longueur de clef = 40

    Longueur de clef = 100

    Longueur de clef = 400

    Longueur de clef = 4000

    58/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918Les principes de Kerckhoffs

    Auguste Kerckhoffs

    I né le 19 janvier 1835

    I décédé le 9 août 1903

    I hollandais

    I docteur ès lettres

    I professeur d’allemand à l’École des HautesÉtudes Commerciales

    I linguiste et cryptographe

    I défenseur de la langue volapük

    59/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918Les principes de Kerckhoffs

    Auguste Kerckhoffs décrit les principes du chiffrement modernedans son essai “La Cryptographie militaire” publié en 1883

    dans le "Journal des sciences militaires"

    1 Le système doit être matériellement, sinon mathématiquement, indéchiffrable

    2 Il faut qu’il n’exige pas le secret, et qu’il puisse sans inconvénient tomber entreles mains de l’ennemi

    3 La clef doit pouvoir en être communiquée et retenue sans le secours de notes écrites,et être changée ou modifiée au gré des correspondants

    4 Il faut qu’il soit applicable à la correspondance télégraphique

    5 Il faut qu’il soit portatif, et que son maniement ou son fonctionnement n’exige pas leconcours de plusieurs personnes

    6 Enfin, il est nécessaire, vu les circonstances qui en commandent l’application, que lesystème soit d’un usage facile, ne demandant ni tension d’esprit, ni la connaissanced’une longue série de règles à observer

    60/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918Les principes de Kerckhoffs

    Commentaires sur les principes de Kerckhoffs

    1 Le système doit être matériellement, sinon mathématiquement, indéchiffrable

    2 Il faut qu’il n’exige pas le secret, et qu’il puisse sans inconvénient tomber entreles mains de l’ennemi

    3 La clef doit pouvoir en être communiquée et retenue sans le secours de notes écrites,et être changée ou modifiée au gré des correspondants

    Les points 2 et 3 sont les nouveaux axiomes fondamentaux de la cryptographie

    I l’algorithme cryptographique est public

    I le secret réside dans la clef de chiffrement

    I un algorithme cryptographique basé uniquement sur le secret de l’algorithme est dangereux car le jouroù il est découvert son modèle de sécurité s’écroule

    61/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    des origines à 1918Conclusion : l’âge artisanal

    « Il n’y a pas de chiffre introuvable avec quarante page de dépêches chiffrées. »

    Napoléon

    1 Les cryptanalystes ont l’avantage

    2 Moyens de chiffrement limités

    3 Émergence de la notion de clef

    Découverte fondamentale

    Le secret ne réside pas dans le mécanisme de chiffrement mais dans les réglages dece mécanisme : la clef de chiffrement.

    62/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    Deuxième période : âge technique

    3 HistoirePremière période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    63/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    de 1919 à 1975Apparition des machines chiffrantes : Enigma

    I 3 rotors pris parmi 5

    I tableau de connexions àfiche

    I 159× 1018 clefs possibles

    64/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    de 1919 à 1975L’épopée des « code talker »

    Durant la seconde guerre mondiale, les américains, profitant de la complexité de leur langue, a employé desindiens Navajos comme opérateur radio. L’opérateur Navajo traduisait le message en dialecte Navajo et letransmettait ensuite par radio. À la réception, un autre opérateur Navajo, traduisait le message en anglais

    pour le transmettre à ses supérieurs.Les japonais n’ont jamais réussi à casser le « code ».

    65/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    de 1919 à 1975Le Data Encryption Standard – DES

    I méthode de chiffrement utilisant desclefs de 56 bits sur des blocs de 64bits

    I le premier standard DES est publiépar FIPS le 15 janvier 1977 sous lenom FIPS PUB 46

    I mis au point à partir de l’algorithmeLucifer de IBM

    66/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    de 1919 à 1975Le XOR

    XOR ou l’opération d’addition modulo 2 sur des bits (0,1)

    XOR

    ⊕ 0 10 0 1

    1 1 0

    Longueur de clef = 4

    Longueur de clef = 10

    Longueur de clef = 40

    Longueur de clef = 100

    Longueur de clef = 400

    Longueur de clef = 4000

    67/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    de 1919 à 1975Le chifre parfait : Vernam

    Le chiffre de Vernam, ou “One-Time-Pad” ou “masque jetable” a été proposé en 1917par Gilbert Vernam, ingénieur à l’American Telephone and Telegraph Company,chargé de la sécurité des téléscripteurs.

    I Chiffrement C = M ⊕ kI Déchiffrement M = C ⊕ kI La clef et le message ont la même

    longueur

    I Ce mode de chiffrement a été utilisépour chiffrer les communications dutéléphone rouge

    68/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    Troisième période : âge paradoxal

    3 HistoirePremière période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    69/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    de 1976 à nos jours

    Développement des algorithmes de chiffrement symétriques

    Chiffrements par blocs – block cipher

    I DES normal : clef de 56 bits, blocsde 64 bits

    I DES renforcé : clef de 112 bits,blocs de 168 bits (triple DES)

    I IDEA : clef de 128 bits, blocs de 64bits

    I AES : clef de 128, 196 ou 256 bits,blocs de 128 bits utilisé par WPA2

    I A5/1 : clef de 64 bits utilisé pour leGSM

    Chiffrements par flot – stream cipher

    I Vernam : générateurpseudo-aléatoire

    I RC4 : chiffrement octet par octetutilisé par le WEP

    I E0 : clef de 128 bits utilisé pour lebluetooth

    70/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    de 1976 à nos joursLe produit de chiffrements

    Produit par composition de deux systèmes cryptographiques : Ck(x) = C′k1(C

    ′′k2(x))

    Permutation et Subsitution (4)

    Permutation et Subsitution (10)

    Permutation etSubsitution (40)

    Subsitution et Permutation (4)

    Subsitution et Permutation (10)

    Subsitution et Permutation (40)

    71/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    de 1976 à nos joursLe chiffrement asymétrique

    I Cryptographie asymétrique ou cryptographie à clé publiqueI Fondée sur l’existence de fonctions à sens unique avec trappe (clef privée)

    I Algorithme RSA (1978) – racines modulaires (factorisation)I Algorithme El Gamal (1985) – logarithme discret

    Alice

    clef publique Alice

    clef privée Alice

    Bob

    génère

    génère

    transmet

    72/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    de 1976 à nos joursLe chiffrement asymétrique

    Signature électronique

    Alice

    clef privée Alice clef publique Alice

    Bob

    message

    signe

    message signé message

    auth

    entifi

    e

    73/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    de 1976 à nos joursLe chiffrement asymétrique

    Chiffrement et signature électronique

    Alice

    clef privée Alice clef publique Bob clef privée Bob clef publique Alice

    Bob

    message

    signe

    message chiffré

    chiffre

    message chiffré signé

    message chiffré

    déch

    iffre

    message

    auth

    entifi

    e

    74/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    de 1976 à nos joursLe chiffrement asymétrique

    Diffie – Hellman

    Comment générer un secret partagé sans avoir aucune connaissance préalable l’un sur l’autre ?

    Alice Bob

    Alice et Bob choisissent un nombre premier p = 23 et une base g = 3

    Alice choisit un nombre secret a = 6

    Alice envoie ga mod p soit 36 mod 23 = 16 à Bob

    Bob choisit un nombre secret b = 15

    Bob envoie gb mod p soit 315 mod 23 = 12 à Alice

    Alice calcule la clé secrète : (gb mod p)a mod p soit 126 mod 23 = 9

    Bob calcule la clé secrète : (ga mod p)b mod p soit 1615 mod 23 = 9

    75/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Première période : âge artisanalDeuxième période : âge techniqueTroisième période : âge paradoxal

    de 1976 à nos joursTaxonomie des algorithmes de chiffrement

    76/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    En pratique ...

    1 Introduction

    2 Bases mathématiques

    3 Histoire

    4 En pratique ...

    77/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Le Web

    4 En pratique ...Le WebLes emailsLes fonctions de hachageLes données

    78/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Chiffrement de flux

    Connection sur www.google.fr en clair

    79/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Chiffrement de flux

    Connection sur www.google.fr avec le protocole SSL

    80/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Chiffrement de flux

    Protocole proposé par www.google.fr

    1 SSL handshake has read 1777 bytes and written 316 bytes2 ---3 New, TLSv1/SSLv3, Cipher is AES256-SHA4 Server public key is 1024 bit5 Compression: NONE6 Expansion: NONE7 SSL-Session:8 Protocol : TLSv19 Cipher : AES256-SHA

    10 Session-ID: B40A7F0C631658D70DCFFF3F94B513598E430FAD56C77599A11 Session-ID-ctx:12 Master-Key: 83BABE8C038466DEC7301EFCC8D17B34D665F025950A0F22813 Key-Arg : None14 Start Time: 120639234815 Timeout : 300 (sec)16 Verify return code: 20 (unable to get local issuer certificate)17 ---18 read:errno=0

    81/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Les emails

    4 En pratique ...Le WebLes emailsLes fonctions de hachageLes données

    82/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Chiffrement d’emails

    Exemple d’email chiffré

    —–BEGIN PGP MESSAGE—–Charset : ISO-8859-1Version : GnuPG v1.4.6 (GNU/Linux)hQEOA+6Lqc04sm0qEAP/d0yeNbAxiyPdsyuwe8zI8U4RH9TOzecsy7m3+Nu5MXLdQxH5yyl1wSopwLFEn+ZrH8E2xvf5V6G44z/WzSE+X8EYU8b3fWIBqTmALiTZI+/QB5Qn60NwXoyWeCdio75bt4KChYdxEUjYfQIsO9gyjg0jvvUpAKpiC5hMUFUne7YD/0Ippa2IqgcbqbGwfQsZgaRrt10hlcFkGw0pa3lqCT8ydoywnkDPt9K5lhCoHxo0+GJNhVCAMA7/+oXnLWZlJe+p/JJZSunk4YD0sQnR08hAUDf106ul3nKj8/D3OjgpZaoUHe/1y7t0LcBDfjhXcrZY3agNZbeDzTYgHWEeUa6qJXkZltdwRfbmtoqLYIj9zPeS/ecFutXtJImJvuwqecnWx3iLTVk15ApTfe+dJKPW9iPsg4XWoO+8gmcTnU3Mfuk7WcRsluNR8JW83H+oNZVxVmfRAOmNXyeDworVRYfvjOGCipEkgsHLAQ/6OURG98g7Av8uvRsN39k9wgi2Q4isIBGX5oK1e/XpS4EuXnfQ7NyxheXhiWBMkdgeZAp6h4jnd4OWxGJjnuJqTTkWkUfoqaThgxosio+MLAGb7BqUrqMBgr3OaUccNwZvoA86SAG3Ve0NdYsI2htwMEs4y2cNpIrcXME2/rgPR4vPliOq0q3pYwBeATTrfFlSPwgwXKCIuIlnWgZjZ2ggW1ip0219HGzOXg8mKVWEIYrPRwqKKRk6X5xwldo==yyg5—–END PGP MESSAGE—–

    83/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Les fonctions de hachage

    4 En pratique ...Le WebLes emailsLes fonctions de hachageLes données

    84/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Les fonctions de hachageDéfinition

    Une fonction de hachage est une fonction mathématique à sens unique qui, à partird’un texte d’origine, calcule une empreinte unique, de taille fixée et de manièreirréversible.

    I TOTO =⇒ 04c1d7cd203ef496f200ee5a096b5764I ToTo =⇒ 3cca12013a4f82de305ba73b01a84509I Toto =⇒ 998db284485ec6c227f8dc34086128e1I toto =⇒ f71dbe52628a3f83a77ab494817525c6I Le ciel est rouge demain il fera beau. =⇒

    caf7a1f03adc02afe3ef1dd51bd3e8b1

    Les fonctions de hachage sont notamment utilisées pour stocker les mots de passe

    85/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Les mots de passeL’authentification – Processus d’authentification local sous Windows

    86/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Les mots de passeTrouver un mot de passe

    Deviner le mot de passe

    Par des techniques de social engineering (canulars téléphoniques, fouille despoubelles, recherche sur Internet. . . ).

    Se faire passer pour le système

    Par des techniques de spoofing un faux logiciel de connexion imitant le vraienregistre le mot de passe dans un fichier accessible par le pirate.

    Espionner le système

    Par des techniques de keylogging ou de sniffing des protocoles réseaux.

    Attaquer le fichier de mot de passe

    Par des techniques d’attaques par dictionnaire ou par force brute.

    87/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Les mots de passeTrouver un mot de passe

    Attaque par dictionnaire

    1 pour chaque mot d’un dictionnaire

    2 calcul du hash

    3 comparaison avec celui du système

    88/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Les mots de passeTrouver un mot de passe

    Attaque par force brute

    I parcours exhaustif de l’espace des mots de passe

    I plus le mot de passe est long plus il est difficile à trouver

    I plus l’espace des mots de passe est grand plus le temps nécessaire à la parcourir sera grand

    Lettres minuscules (26) Caractèresalphanumériques (62)

    Caractères ASCII (256)

    4 caractères 264 = 460000 624 = 1, 5 · 107 2564 = 4, 3 · 109

    5 caractères 265 = 1, 2 · 107 625 = 9, 2 · 108 2565 = 1, 1 · 1012

    6 caractères 266 = 3, 1 · 108 626 = 5, 7 · 1010 2566 = 2, 8 · 1014

    7 caractères 267 = 8, 0 · 109 627 = 3, 5 · 1012 2567 = 7, 2 · 1016

    8 caractères 268 = 2, 1 · 1011 628 = 2, 2 · 1014 2568 = 1, 8 · 1019

    89/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Les données

    4 En pratique ...Le WebLes emailsLes fonctions de hachageLes données

    90/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Chiffrement de fichier

    Chiffrement de fichier avec AES

    I Chiffrement

    openssl enc −e −aes−256−cbc −k password −in hamlet . txt −out hamlet−cipher . txt

    I Déchiffrement

    openssl enc −d −aes−256−cbc −k password −in hamlet−cipher . txt

    91/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Questions ?

    92/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

  • IntroductionBases mathématiques

    HistoireEn pratique ...

    Le WebLes emailsLes fonctions de hachageLes données

    Licence

    PaternitéVous devez citer le nom de l’auteur original de la manière indiquée par l’auteur de l’œuvre ou le titulairedes droits qui vous confère cette autorisation (mais pas d’une manière qui suggèrerait qu’ils voussoutiennent ou approuvent votre utilisation de l’œuvre).

    Pas d’utilisation commerciale

    Vous n’avez pas le droit d’utiliser cette création à des fins commerciales sans autorisation écrite de l’auteur.

    Partage des conditions initiales à l’identique

    Si vous modifiez, transformez ou adaptez cette création, vous n’avez le droit de distribuer la création qui enrésulte que sous un contrat identique à celui-ci.

    93/93 Michel Dubois © 2008-2010 Sécurité des Systèmes d’Information

    IntroductionQu'est-ce que la crypto ?Pourquoi la crypto ?Définitions

    Bases mathématiquesNotationThéorie de l'informationThéorie de la complexitéThéorie des nombres

    HistoirePremière période: âge artisanalDeuxième période: âge techniqueTroisième période: âge paradoxal

    En pratique ...Le WebLes emailsLes fonctions de hachageLes données