Aller au contenu principal

Signature numérique

Objectifs

  • Différencier chiffrement symétrique et asymétrique
  • Différencier clé publique et clé privée
  • Expliquer sur quoi repose RSA
  • Expliquer le principe de la signature numérique
  • Combiner chiffrement et signature numérique

Cours

Signature numérique

Sécurité

Cryptographie symétrique

https://upload.wikimedia.org/wikipedia/commons/9/92/Chiffrement_sym%C3%A9trique.png

https://commons.wikimedia.org/wiki/File:Chiffrement_sym%C3%A9trique.png

Cryptographie symétrique

Alice
Bob

Cryptographie symétrique

Alice
Bob

Cryptographie symétrique

Alice

Message en clair : "Salut"

Message chiffré : "Vdoxw"

Bob

Cryptographie symétrique

Alice

Message en clair : "Salut"

Bob

Message chiffré : "Vdoxw"

Message déchiffré : "Salut"

Cryptographie symétrique

Alice

Message en clair : "Salut"

Eve

Message chiffré : "Vdoxw"

Message déchiffré : "Salut"

Bob

Message chiffré : "Vdoxw"

Message déchiffré : "Salut"

Limitations

  • La clé doit être partagée entre l'expéditeur et le/la destinataire et gardée secrète.

  • La clé doit être longue (pour éviter la force brute).

  • La clé doit être changée régulièrement (pour éviter l'analyse de fréquence).

Cryptographie asymétrique

https://upload.wikimedia.org/wikipedia/commons/4/47/Chiffrement_asym%C3%A9trique.png

https://commons.wikimedia.org/wiki/File:Chiffrement_asym%C3%A9trique.png

Vocabulaire

  • Clé publique (+) : clé utilisée pour chiffrer un message.

  • Clé privée (-) : clé utilisée pour déchiffrer un message.

  • L'inverse est aussi possible (chiffrer avec la clé privée et déchiffrer avec la clé publique).

  • Analogie avec une boîte aux lettres : la clé publique est la fente pour insérer le courrier, la clé privée est la clé pour ouvrir la boîte.

  • Analogie avec un cadenas : la clé publique est le cadenas que tout le monde peut fermer, la clé privée est la clé qui ouvre le cadenas.

Cryptographie asymétrique

Alice
Bob

Cryptographie asymétrique

Alice
Bob

Cryptographie asymétrique

Alice

Message en clair : "Salut"

Message chiffré (+) : "u43y8xwJi0"

Bob

Cryptographie asymétrique

Alice

Message en clair : "Salut"

Bob

Message chiffré (+) : "u43y8xwJi0"

Message déchiffré : "Salut"

Cryptographie asymétrique

Alice

Message en clair : "Salut"

Eve

Message chiffré (+) : "u43y8xwJi0"

Message déchiffré

Bob

Message chiffré (+) : "u43y8xwJi0"

Message déchiffré : "Salut"

Propriétés ?

  • Confidentialité ?

    • Oui, car il faut la clé privé pour déchiffrer.

  • Intégrité ?

    • Non, car n'importe qui peut chiffrer un autre message avec la clé publique.

  • Authenticité ?

    • Non, car n'importe qui peut avoir chiffré le message avec la clé publique.

RSA

  • Nom des inventeurs : Rivest, Shamir et Adleman

  • Utilisé sur Internet (HTTPS, SSL), par les banques, les gouvernements, etc.

  • p * q = n : p et q sont des nombres premiers très grands (2048 bits = 617 chiffres)

  • n est la clé publique.

  • p et q sont la clé privée.

  • Il est très difficile de factoriser p et q à partir de n. Record en 2020 : 829 bits (250 chiffres).

Signature numérique

  • Utiliser la clé privée pour chiffrer le hash du message.

  • Fonction de hachage :

    • Deux messages différents ont deux hash différents.

    • Un message a toujours le même hash.

    • Impossible de retrouver le message à partir du hash.

Signature numérique

Alice
Bob

Signature numérique

Alice

Message en clair : "Salut"

Message haché : "#aqIr"

Hachage chiffré (-) : "#PR7JCEGvxu"

Bob

Signature numérique

Alice
Bob

Message en clair : "Salut"

Hachage chiffré (-) : "#PR7JCEGvxu"

Hachage déchiffré : "#aqIr"

hachage("Salut") = #aqIr ?

Signature numérique

https://upload.wikimedia.org/wikipedia/commons/d/dc/Digital_Signature_diagram_fr.svg

https://commons.wikimedia.org/wiki/File:Digital_Signature_diagram_fr.svg

Propriétés ?

  • Confidentialité ?

    • Non, car le message est envoyé en clair.

  • Intégrité ?

    • Oui, car le hash peut être créé uniquement car le détenteur de la clé privée.

  • Authenticité ?

    • Oui, car seul le détenteur de la clé privée peut chiffrer le hash.

Chiffrement + Signature

  • Chiffrer le hash avec la clé privée d'Alice.

    • Intégrité (hash)

    • Authenticité (signature)

  • Chiffrer le message avec la clé publique de Bob.

    • Confidentialité (chiffrement)

Chiffrement + Signature

Alice
Bob

Chiffrement + Signature

Alice

Message en clair : "Salut"

Message chiffré (+) : "u43y8xwJi0"

Message haché : "#aqIr"

Hachage chiffré (-) : "#PR7JCEGvxu"

Bob

Chiffrement + Signature

Alice
Bob

Message chiffré (+) : "u43y8xwJi0"

Message déchiffré : "Salut"

Hachage chiffré (-) : "#PR7JCEGvxu"

Hachage déchiffré : "#aqIr"

hachage("Salut") = #aqIr ?

Chiffrement + Signature

Alice
Eve

Message chiffré (+) : "u43y8xwJi0"

Message déchiffré

Hachage chiffré (-) : "#PR7JCEGvxu"

Hachage déchiffré : "#aqIr"

Message en clair

Bob

Message chiffré (+) : "u43y8xwJi0"

Message déchiffré : "Salut"

Hachage chiffré (-) : "#PR7JCEGvxu"

Hachage déchiffré : "#aqIr"

hachage("Salut") = #aqIr ?

F pour passer en plein écran ou O pour afficher la vue d'ensemble.
Versions sans animation, plein écran, imprimable.

Exercices

Soit la situation suivante :

  1. Alice génère une paire de clés asymétriques (clé publique et clé privée) et envoie sa clé publique à Bob.
  2. Elle chiffre ensuite un message avec sa clé privée et envoie le message chiffré à Bob.
  3. Bob déchiffre le message avec la clé publique d'Alice.

Interception sans modification

Eve a pu voir tous les messages échangés entre Alice et Bob (clé publique, message chiffré).

Est-ce que Eve peut lire le message d'Alice ?

Solution

Oui, Eve peut déchiffrer le message avec la clé publique d'Alice.

Interception avec modification

Max a aussi pu voir tous les messages échangés entre Alice et Bob (clé publique, message chiffré). De plus, étant donné qu'Alice lui a demandé de transmettre le message à Bob, il a pu modifier le message chiffré.

Est-ce que Bob peut vérifier que personne d'autre n'a pu lire le message d'Alice ?

Solution

Non, comme pour Eve, Max peut déchiffrer le message avec la clé publique d'Alice.

Est-ce que Bob peut vérifier que le message qu'il a reçu de Max n'a pas été modifié ?

Solution

Oui, car si Bob peut déchiffrer le message avec la clé publique d'Alice, cela signifie qu'il a été chiffré avec la clé privée d'Alice que seule Alice possède. Donc Max n'a pas pu modifier le message chiffré sans que Bob ne s'en rende compte.

Est-ce que Bob peut vérifier que le message qu'il a reçu de Max provient bien d'Alice ?

Solution

Oui, car si Bob peut déchiffrer le message avec la clé publique d'Alice, cela signifie qu'il a été chiffré avec la clé privée d'Alice que seule Alice possède. Donc le message provient bien d'Alice.

Quelles sont les propriétés de ce système ?

Solution
  • Confidentialité : Non car Eve et Max peuvent lire le message.
  • Intégrité : Oui car Bob peut vérifier que le message n'a pas été modifié.
  • Authentification : Oui car Bob peut vérifier que le message provient bien d'Alice.

RSA

Qu'est-ce que RSA ?

Solution

RSA est un algorithme de chiffrement asymétrique largement utilisé.

Comment casse-t-on RSA ?

Solution

Étant donné que RSA repose sur la difficulté de factoriser un nombre entier en produit de deux nombres premiers, il suffit de réussir à factoriser le nombre entier pour casser RSA.

Est-ce que RSA vous semble sûr ?

Solution

RSA est considéré comme sûr tant que la taille des clés est suffisamment grande. Mais comme les ordinateurs deviennent de plus en plus puissants et que les algorithmes de factorisation sont de plus en plus efficaces, une taille considéré comme sûre aujourd'hui ne le sera probablement plus dans quelques années.

Références