Examen de seconde session de Cryptologie 25 juin 2012

Documents pareils
Quelques tests de primalité

Cryptographie et fonctions à sens unique

Cryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Résolution d équations non linéaires

108y= 1 où x et y sont des entiers

Chapitre VI - Méthodes de factorisation

ÉPREUVE COMMUNE DE TIPE Partie D

La cryptographie du futur

CRYPTOGRAPHIE. Signature électronique. E. Bresson. SGDN/DCSSI Laboratoire de cryptographie

Fonction de hachage et signatures électroniques

Introduction à l étude des Corps Finis

Nombres premiers. Comment reconnaître un nombre premier? Mais...

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1

Chapitre 1 : Évolution COURS

3 Approximation de solutions d équations

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Problèmes arithmétiques issus de la cryptographie reposant sur les réseaux

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,

Fonctions homographiques

Le produit semi-direct

Fonctions de plusieurs variables

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Image d un intervalle par une fonction continue

Fibonacci et les paquerettes

Comparaison de fonctions Développements limités. Chapitre 10

INF 4420: Sécurité Informatique Cryptographie II

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

Panorama de la cryptographie des courbes elliptiques

Complément d information concernant la fiche de concordance

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique

Représentation des Nombres

Bien lire l énoncé 2 fois avant de continuer - Méthodes et/ou Explications Réponses. Antécédents d un nombre par une fonction

Gestion des Clés Publiques (PKI)

Pour l épreuve d algèbre, les calculatrices sont interdites.

Chapitre 2 Le problème de l unicité des solutions

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

Probabilités sur un univers fini

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Corrigés Premières notions sur les espaces vectoriels

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

Représentation d un entier en base b

Une forme générale de la conjecture abc

Définitions. Numéro à préciser. (Durée : )

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE

avec des nombres entiers

Extrait du poly de Stage de Grésillon 1, août 2010

Calculabilité Cours 3 : Problèmes non-calculables.

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Examen optimisation Centrale Marseille (2008) et SupGalilee (2008)

Première partie. Préliminaires : noyaux itérés. MPSI B 6 juin 2015

1 Définition et premières propriétés des congruences

Cours 14. Crypto. 2004, Marc-André Léger

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

Cryptographie. Cours 3/8 - Chiffrement asymétrique

Développement décimal d un réel

Mathématiques Algèbre et géométrie

Sommaire Introduction Les bases de la cryptographie Introduction aux concepts d infrastructure à clés publiques Conclusions Références

Probabilités sur un univers fini

Baccalauréat S Antilles-Guyane 11 septembre 2014 Corrigé

CHAPITRE V SYSTEMES DIFFERENTIELS LINEAIRES A COEFFICIENTS CONSTANTS DU PREMIER ORDRE. EQUATIONS DIFFERENTIELLES.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Programmation linéaire et Optimisation. Didier Smets

Cours arithmétique et groupes. Licence première année, premier semestre

Travail d intérêt personnel encadré : La cryptographie

Relation d ordre. Manipulation des relations d ordre. Lycée Pierre de Fermat 2012/2013 Feuille d exercices

Les indices à surplus constant

Bac Blanc Terminale ES - Février 2011 Épreuve de Mathématiques (durée 3 heures)

Résolution de systèmes linéaires par des méthodes directes

Cryptographie RSA. Introduction Opérations Attaques. Cryptographie RSA NGUYEN Tuong Lan - LIU Yi 1

Calcul fonctionnel holomorphe dans les algèbres de Banach

CCP PSI Mathématiques 1 : un corrigé

Groupe symétrique. Chapitre II. 1 Définitions et généralités

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

Tests de primalité et cryptographie

Chapitre 3. Les distributions à deux variables

NOMBRES COMPLEXES. Exercice 1 :

Continuité et dérivabilité d une fonction

La persistance des nombres

Université Paris-Dauphine DUMI2E 1ère année, Applications

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Rapport de stage de fin de première année : exemples de groupes, leur traitement par MAGMA, et applications en cryptographie

Raisonnement par récurrence Suites numériques

Cours d arithmétique Première partie

Fonctions de plusieurs variables, intégrales multiples, et intégrales dépendant d un paramètre

Théorème du point fixe - Théorème de l inversion locale

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Optimisation Discrète

Carl-Louis-Ferdinand von Lindemann ( )

Correction de l examen de la première session

DOCM Solutions officielles = n 2 10.

ALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII

Table des matières. I Mise à niveau 11. Préface

Exercice autour de densité, fonction de répatition, espérance et variance de variables quelconques.

DÉRIVÉES. I Nombre dérivé - Tangente. Exercice 01 (voir réponses et correction) ( voir animation )

Continuité en un point

I. Ensemble de définition d'une fonction

Transcription:

Module LI336 - Introduction à la Cryptologie Version enseignant LI336 page 1/5 Examen de seconde session de Cryptologie 25 juin 2012 Auteurs Guénaël Renault Version du 10 avril 2013 Les seuls documents autorisés sont les slides du cours. L utilisation d un appareil électronique est proscrit pendant toute la durée de l épreuve. Exercice 1 Questions de cours/td (12 points) Dans tout cet exercice on demande aux étudiants de répondre de manière très précise à chacune des questions. Chaque réponse sera accompagnée de deux ou trois phrases d argumentation ou d une présentation des calculs la plus claire possible comme vue en cours/td. 1. (1 point) Définir la cryptographie symétrique. Quels sont ses avantages/désavantages par rapport à la cryptographie asymétrique? La cryptographie symétrique utilise la même clef pour chiffrer et déchiffrer, le chiffrement et le déchiffrement nécessitent la connaissance complète de la clef. L avantage majeur de la cryptographie symétrique est sa rapidité puisqu elle met en jeu des outils extrêmement basiques. L inconvénient est l explosion combinatoire du nombre de clefs : pour que n personnes communiquent il faut O(n 2 ) clefs qui doivent être échangées de façon sûre (ce qui est particulièrement difficile pour établir la communication avec quelqu un qu on ne connaît pas donc avec qui on a aucune raison de partager un secret) au lieu de O(n) clefs en cryptographie asymétrique. 2. (1.5 point) Qu évoquent pour vous les noms propres ou communs suivants : Turing, DLP, Diffie, Hellman, Enigma en cryptologie? Vous replacerez ces noms dans leur contexte historique. Enigma est un système de chiffrement utilisé par les Allemands pendant la seconde guerre mondiale, Alan Turing et son équipe ont cryptanalysé Enigma. Diffie et Hellman ont décrit en 1976 un algorithme d échange de clefs qui a marqué l avènement de la cryptographie asymétrique. Le DLP (Discrete Logarithm Problem) consiste dans un groupe cyclique multiplicatif G = g à trouver n tel que g n = a pour a donné dans G. Ce problème est devenu d une actualité brûlante avec l apparition de la cryptographie asymétrique. 3. (1 point) Comment peut-on cryptanalyser un texte chiffré par un cryptosystème mono-alphabétique? Comment cette méthode peut-être généralisée au cas d un chiffrement de type Vigenère? (Vous répondrez de manière concise. Un paragraphe faisant plus de dix lignes ne sera pas considéré par le correcteur.)

Module LI336 - Introduction à la Cryptologie Version enseignant LI336 page 2/5 On compare la fréquence des caractères du texte chiffré avec celle d un texte de référence dans la même langue. Pour un chiffrement de Vigenère, une fois que l on a trouvé la longueur de la clef k, chaque sous-chaîne S i, 1 i k des caractères en position λk + i dans le texte est chiffré par décalage qui est un cas particulier de chiffrement mono-alphabétique et on applique l analyse de fréquences sur chacune de ces sous-suites, ou bien seulement à la première sous-suite si on utilise l indice de multi-coïncidences, pour associer le caractère le plus fréquent de la sous-suite à celui le plus fréquent de la langue, ce qui nous indique le décalage de la sous-suite. 4. (1 point) À quoi sert l échange de clefs de Diffie et Hellman et pourquoi joue-t-il un rôle central en cryptographie? L échange de clefs permet, à partir d un couple (clef publique, clef privée) pour A et B d obtenir une clef de session K commune pour que A et B puissent communiquer par un réseau non sûr sans que la clef K soit jamais transmise sur ce réseau. On utilise la cryptographie asymétrique pour cet échange de clef, la clef K sert ensuite à faire de la cryptographie symétrique entre A et B. 5. (1 point) Quelles sont la principale qualité et la limite de l algorithme Baby Step Giant Step? L algorithme BSGS, qui permet de résoudre le DLP, est optimal puisqu il a un coût en O( H ) et que la résolution du DLP dans un groupe générique nécessite au moins O( H ) opérations dans H. Cet algorithme est cependant limité car il suppose de créer un tableau ou une table de hachage de taille H, donc pour un tableau on est limité par la taille maximale de l index d un tableau, H MAX où MAX est le plus grand entier non signé et il est bien clair que les DLP traités dans la vraie vie n entrent généralement pas dans cette catégorie, et de toute façon pour un tableau ou une table de hachage stocker H éléments a un coût mémoire prohibitif pour tout exemple réaliste. 6. (0.5 point) Quel est l intérêt de l utilisation des courbes elliptiques en cryptographie? Il n y a pas d attaque connue de complexité sous-exponentielle pour les cryptosystèmes à base de courbes elliptiques. L arithmétique sur les courbes elliptiques peut être rendue très rapide. Les clefs sont plus petites pour une sécurité équivalente : il suffit de seulement 160 bits pour les courbes elliptiques pour obtenir la même sécurité qu avec 1024 bits pour RSA. 7. (4 points) Soit le message m = 11 à chiffrer avec le cryptosystème RSA défini avec les clés publique e = 3 (l exposant de chiffrement) et N = 187 (le module). Donner le chiffré c de m. Sachant que N = pq, avec p = 11 et q = 17, déchiffrer c = 23 m 3 = 11 121 = 1331 et c = 1331 mod 187 = 22. Il faut calculer l exposant de déchiffrement d à partir e et φ(n) = (p 1)(q 1) = 160. On a 53 3 = 159 et donc 53 est l inverse de 3 modulo φ(n). On calcule 23 107 mod 187. Pour cela on utilise le CRT. 23 107 mod 11 = 1 mod 11 et 23 107 mod 17 = 6 11 mod 17. Pour ce calcul on a 6 11 = 6 (6 2 ) 5 = 6 (2 5 ) = 6 32 = 6 ( 2) = 12 = 5 mod 17.

Module LI336 - Introduction à la Cryptologie Version enseignant LI336 page 3/5 Reste à remonter le résultat par le CRT. Comme on a la relation de Bézout 1 = 2 17 3 11 on en déduit le clair m = 2 17 + 5 ( 3 11) = 56 mod 187 8. (2 points) Soit a = 1515 et b = 4046 deux entiers. Calculer le logarithme discret de b en base a en tant qu éléments de (Z/1511Z). Nous avons a = 4 mod 1511 et b = 1024 mod 1511 et donc b = a 5 car 2 10 = 1024.

Module LI336 - Introduction à la Cryptologie Version enseignant LI336 page 4/5 Exercice 2 Courbe elliptique sur un corps de caractéristique 2 (12 points) La définition d une courbe elliptique donnée en cours n est valide (en toute généralité) qu en caractéristique différente de 2 et 3. Plus généralement une courbe elliptique est définie par une équation de la forme y 2 + a 1 xy + a 3 y = x 3 + a 2 x 2 + a 4 x + a 6 (1) et ceci quelle que que soit la caractéristique du corps. Dans ce cas, l addition entre deux points est donnée par des équations différentes de celles du cours et par exemple on a pour P = (x, y) un point de la courbe : P = (x, a 3 y a 1 x) Nous allons étudier une telle courbe dans le cas où elle est définie sur un corps K de caractéristique 2. 1. (Points d ordre deux 1 point) Supposons que la courbe E soit définie par une équation de la forme (1) telle que les coefficients dans K vérifient a 3 = a 4 = 0, a 1 = 1, a 6 0 et a 2 0. Montrer que les points de la courbe E définie sur K et d ordre 2 sont ceux dont l abscisse est nulle. Un point P = (x, y) d ordre 2 vérifie par définition P + P = O ce qui est équivalent à P = P. D après l énoncé, ceci revient à (x, y) = (x, a 3 y a 1 x) et d après les hypothèses faites sur la courbe E on a (x, y) = (x, x y) = (x, x + y), la dernière égalité étant obtenue car les coordonnées des points sont dans un corps de caractéristique 2. L égalité sur les ordonnées nous donne y = x + y ce qui est équivalent à x = 0 et le résultat suit. 2. (0.5 point) Montrer que dans K tout élément est un carré. En déduire que la courbe elliptique vérifiant les hypothèses de la question précédente a toujours exactement un point d ordre 2. Soit a un élément de K et notons q le cardinal de K. Alors, d après une version généralisée d un théorème de Fermat et du à Euler (vu en TD), on a a q = a. Comme K est de caractéristique 2 son cardinal q est nécessairement une puissance de 2, soit q = 2 k. Posant r = a 2k 1 K on a bien r 2 = (a 2k 1 ) 2 = a 2k = a q = a, ce qu il fallait démontrer. Plus directement, nous avons vu en cours que le morphisme de Frobenius x x c est bijectif dans un corps de caractéristique c. Donc tout élément est bien le carré d un autre. D après la question précédente, les points d ordre deux sont ceux d abscisse nulle, ils vérifient donc y 2 = a 6. Comme a 6 n a qu un seul antécédent r par le morphisme de Frobenius il existe donc une ordonnée possible et donc un seul point d ordre deux (0, r). 3. (1 point) Soit x 2 + bx + c = 0 une équation du second degré à coefficients dans K dont on cherche les solutions dans K. Pourquoi ne pouvons-nous pas utiliser les formules habituelles pour déterminer les racines de cette équation? Montrer que si b 0 alors cette équation peut être transformée en z 2 + z + c = 0 après un changement de variable que vous exhiberez. Les formules usuelles de résolution d une équation du second degré nécessite de diviser par 2, ce qui est impossible en caractéristique 2. Si b 0 alors b est inversible dans K et on peut considérer le changement de variable z = b 1 x. L équation en x devient alors b 2 z 2 + b 2 z + c = 0 et en divisant le tout par b 2 (qui est lui aussi inversible puisque K est intègre, c est un corps) on obtient l équation z 2 + z + b 2 c = 0. Posant c = c b 2 on obtient le résultat attendu. 4. (0.5 point) Soit α une racine dans K d une équation de la forme z 2 + z + c = 0 avec c dans K. Montrer que α + 1 est aussi une racine de cette équation. Existe-t-il d autres solutions à cette équation? (Argumentez votre réponse.)

Module LI336 - Introduction à la Cryptologie Version enseignant LI336 page 5/5 Soit Q(z) le polynôme z 2 + z + c. Par hypothèse, on a Q(α) = 0. Évaluons Q en α + 1. On a Q(α + 1) = (α + 1) 2 + (α + 1) + c = α 2 + 1 + α + 1 + c = Q(α) = 0 où la deuxième égalité est obtenue par application du Frobenius. Il est donc clair que α + 1 est aussi une solution de l équation Q(z) = 0. D après un théorème de Lagrange vu en TD, comme Q est de degré 2 il ne peut pas avoir plus de deux racines ou encore Q(z) = 0 ne peut avoir plus de deux solutions dans K. 5. (3 points) Déduire des questions précédentes une méthode générale pour résoudre une équation du second degré x 2 + bx + c = 0 à coefficients dans K. Pour se faire, on exprimera les solutions de cette équation à partir de celles d une équation du second degré plus simple (c est-à-dire n ayant qu un seul coefficient différent de 1). Notez que dans le cas usuel c est aussi ce que nous faisons puisque nous exprimons les racines en fonctions de racines carrées (ces dernières étant des solutions d une équation de la forme z 2 c = 0). Si b = 0 alors la solution unique est le résidu quadratique de c dans K, c est-à-dire c 2k 1 comme vu à l une des questions précédentes. Si b 0 alors, après changement de variable z = b 1 x, on s intéresse à une équation z 2 + z + c = 0 où c = b 2 c. Cette équation est plus simple que la première, considérons donc ses racines α et α+1. Les solutions de la première seront alors bα et b(α + 1). 6. (1.5 points) Nous avons vu en cours et en TD une méthode générale pour calculer les points rationnels d une courbe elliptique sur un corps premier de cardinal > 3. Déduire de la question précédente une variante de cette méthode dans le cas d une courbe définie sur K de la forme de celle de la question 1. On commence par faire deux tableaux de correspondance entre antécédents et images de b b 2 et z z 2 + z à partir de toutes les valeurs de K. Pour chaque abscisse x possible dans K, on évalue l équation de la courbe en cette abscisse et on se retrouve à résoudre une équation du second degré. En utilisant la méthode de la question précédente et les tableaux que nous venons de calculer, on transforme cette équation en une équation simple et on calcule les solutions pour obtenir les ordonnées correspondantes. 7. (0.5 point) Donner une construction explicite d un corps de cardinal 8. On notera pour la suite K un tel corps. Montrer que tout élément non nul et différent de 1 dans K est un générateur du groupe multiplicatif K. On utilise un polynôme irréductible de degré 3 à coefficients dans F 2. D après la correction de l examen de première session, nous savons que x 3 + x + 1 est un tel polynôme. Le corps K peut alors être construit à l aide du quotient F 2 [x]/ x 3 + x + 1. 8. (4.5 points + bonus à tout va s ils vont jusqu ici!!!) Soit ω un élément d ordre 7 dans K, le corps de la question précédente, et E la courbe elliptique définie sur K par l équation y 2 + xy = x 3 + x 2 + ω Donner l ensemble des points rationnels, l ordre du groupe construit à partir de E et montrer qu il est cyclique.