2
Cryptographie TD 2 Cryptographie asymétrique Questions générales : 1) Quels sont les éléments généraux présents dans tous les algorithmes de chiffrement asymétriques ? Il y a une paire de clés privée/publique. On peut aussi considérer la présence de tiers de confiance, pour l'authenticité des clés publiques. 2) Pour quelles usages utilisent on la cryptographie symétrique ? Asymétrique ? La crypto symétrique : chiffrement de grandes quantités de données, chiffrement rapide. Elle apporte la confidentialité, mais pas le reste. La clé secrète à partager est un point faible. La crypto asymétrique : chiffrement de courts messages, distinction entre émetteur et destinataire. Apporte la confidentialité. Peut également être utilisé dans des schémas de signatures. 3) Quels sont les avantages/inconvénients de la cryptographie asymétrique par rapport à la symétrique ? Avantage de l'asymétrique : on peut chiffrer pour quelqu'un sans partager de secret préalable. Seul le destinataire peut déchiffrer. Par contre, est plus lente que la crypto symétrique. 4) Qu'est ce qu'un chiffrement probabiliste ? Dans quel cas cela est important ? Un chiffrement probabiliste évite que deux messages n'aient le même chiffré. Par exemple, si l'on chiffre un message dont les morceaux se répètent, cette répétition pourrait apparaître dans le chiffré (cas d'une image). Le chiffrement probabiliste rende différente tous les chiffrés. 5) Qu'est-ce qu'un chiffrement déterministe ? Donner un exemple. C'est l'inverse de probabiliste. RSA est déterministe : si l'on chiffre plusieurs fois le même message, on obtient le même chiffré. 6) Qu'est-ce que l'indistinguabilité ? Quelles sont les hypothèses principales considérées pour cela ? Est-ce que ElGamal répond à ces hypothèses ? Et RSA ? Un système cryptographique est indistinguable si, pour deux messages clairs et le chiffré de l'un des deux messages, l'attaquant ne peut pas déterminer de quel message clair il s'agit. Rappel sur l'analyse d'un système de chiffrement : principe de la boite noire. L'attaquant peut avoir accès à un oracle de (dé)chiffrement, qui lui cache la clé. On voit alors l'analyse comme un jeu, ou à partir de plusieurs tentatives de (dé)chiffrement, on cherche à retrouver la clé, ou a (dé)chiffrer des messages sans passer par l'oracle. Il y a trois hypothèses principales à considérer : - ind-cpa : l'attaquant soumet deux messages clairs, et reçoit un seul chiffré au hasard. Il ne doit pas pouvoir retrouver de quel message clair il provient. Comme il

TD 2 - Cryptographie asymétrique (corrigé)

Embed Size (px)

Citation preview

Page 1: TD 2 - Cryptographie asymétrique (corrigé)

CryptographieTD 2

Cryptographie asymétrique

Questions générales :

1) Quels sont les éléments généraux présents dans tous les algorithmes de chiffrement asymétriques ?Il y a une paire de clés privée/publique. On peut aussi considérer la présence de tiers de confiance, pour l'authenticité des clés publiques.

2) Pour quelles usages utilisent on la cryptographie symétrique ? Asymétrique ?La crypto symétrique : chiffrement de grandes quantités de données, chiffrement rapide. Elle apporte la confidentialité, mais pas le reste. La clé secrète à partager est un point faible.La crypto asymétrique : chiffrement de courts messages, distinction entre émetteur et destinataire. Apporte la confidentialité. Peut également être utilisé dans des schémas de signatures.

3) Quels sont les avantages/inconvénients de la cryptographie asymétrique par rapport à la symétrique ?Avantage de l'asymétrique : on peut chiffrer pour quelqu'un sans partager de secret préalable. Seul le destinataire peut déchiffrer. Par contre, est plus lente que la crypto symétrique.

4) Qu'est ce qu'un chiffrement probabiliste ? Dans quel cas cela est important ?Un chiffrement probabiliste évite que deux messages n'aient le même chiffré. Par exemple, si l'on chiffre un message dont les morceaux se répètent, cette répétition pourrait apparaître dans le chiffré (cas d'une image). Le chiffrement probabiliste rende différente tous les chiffrés.

5) Qu'est-ce qu'un chiffrement déterministe ? Donner un exemple.C'est l'inverse de probabiliste. RSA est déterministe : si l'on chiffre plusieurs fois le même message, on obtient le même chiffré.

6) Qu'est-ce que l'indistinguabilité ? Quelles sont les hypothèses principales considérées pour cela ? Est-ce que ElGamal répond à ces hypothèses ? Et RSA ?Un système cryptographique est indistinguable si, pour deux messages clairs et le chiffré de l'un des deux messages, l'attaquant ne peut pas déterminer de quel message clair il s'agit.Rappel sur l'analyse d'un système de chiffrement : principe de la boite noire. L'attaquant peut avoir accès à un oracle de (dé)chiffrement, qui lui cache la clé. On voit alors l'analyse comme un jeu, ou à partir de plusieurs tentatives de (dé)chiffrement, on cherche à retrouver la clé, ou a (dé)chiffrer des messages sans passer par l'oracle.Il y a trois hypothèses principales à considérer :- ind-cpa : l'attaquant soumet deux messages clairs, et reçoit un seul chiffré au hasard. Il ne doit pas pouvoir retrouver de quel message clair il provient. Comme il

Page 2: TD 2 - Cryptographie asymétrique (corrigé)

dispose d'un oracle de chiffrement, un algorithme déterministe ne peut pas être ind-cpa (il suffit à l'attaquant de chiffrer les deux messages lui même).- ind-cca : l'attaquant à maintenant accès à un oracle de déchiffrement (en plus de l'oracle de chiffrement). Il peut l'utiliser tant qu'il n'a pas reçu le chiffré (du test précédent).- ind-cca2 : il peut utiliser l'oracle de déchiffrement tout le temps, sauf qu'il ne peut pas lui soumettre le chiffré reçu lors du challenge.RSA n'est pas ind-cpa, ElGamal l'est, mais n'est pas ind-cca.

7) Qu'est ce qui est important pour la clé publique ? La clé privée ?La clé publique doit pouvoir être « authentifiée », ou associée à un utilisateur/une identité. En revanche, elle peut être diffusé sans restriction.La clé privé ne doit jamais être diffusée, et son stockage doit faire l'objet d'une sécurité importante.

Applications :

1) Quels sont les trois étapes d'un algorithme de chiffrement symétrique ?Génération de clé, Chiffrement, Déchiffrement

2) Décrire ces trois étapes pour ElGamal.Voir le cours

3) Supposons qu'Alice souhaite envoyer un petit message à Bob en utilisant ElGamal. Quels éléments du calcul doit-elle connaître à l'avance ?(p,g,y) la clé publique de Bob.

4) Quels moyens peut-on utiliser pour assurer l'authenticité d'une clé publique ?On utilise généralement un ou plusieurs tiers de confiance. Une autorité de certification par exemple, mais également des systèmes distribués ou chacun peut « confirmer » une clé publique. En générale, tout les individus d'un groupe doivent utiliser la même PKI pour cela.

5) Proposer un protocole qui permettrait à Alice d'envoyer un très gros fichier à Bob, en utilisant à la fois la cryptographie symétrique et asymétrique. L'objectif est de permettre un envoi le plus rapide possible mais sécurisé.Alice génère une clé secrète, qu'elle chiffre avec la clé publique de Bob (petit message). Elle chiffre ensuite avec de la crypto symétrique (algo et mode d'utilisation) en utilisant cette clé secrète. Elle envoie ensuite à Bob le chiffré de la clé secrète, ainsi que le message chiffré en symétrique.Dans ce schéma, seul Bob peut déchiffrer la clé, et récupérer le message.