Département informatique Le 27/05/2012 Faculté Electronique et Informatique Master RSD 1ère année USTHB Examen de Sécurité Informatique Durée : 1h30 – Documents Documents non autorisés Exercice 1 (7pts) Dans tout cet exercice, nous étudierons la courbe elliptique E définie sur Z7 par l’´equation E : y2 = x3 + x + 3 1. Vérifier que E définit bien une courbe elliptique sur Z 7. 2. Donner l’ensemble des carrés dans Z7. Vous justifierez vos calculs. 3. Remplir les lignes du tableau suivant (vous justifierez les calculs de chacune de ces lignes). x x3 + x + 3 mod 7 (x,y)E 0 1 2 3 4 5 6 4. Soit P1 = (4; 1) de E. Calculer [2] P1 et [3]P1
Exercice 2 : (13pts) Un protocole d'identification permet à Alice de s'identifier auprès de Bob. Ceci est par exemple fait en employant un protocole avec lequel Alice prouve à Bob la connaissance de certaine clé secrète. Pour ce qui suit, Oscar désigne un adversaire qui espionne le canal reliant Alice et Bob. a) Supposons que Alice et Bob partagent une clé k. Un protocole d'identification très simple pour ce cas est le suivant: 1. Alice envoie à Bob k. 2. Bob vérifie que la valeur reçue est égale à k. Comment Oscar peut-il violer la sécurité de ce protocole d'identification? b) Afin d’améliorer le protocole précédent, Alice et Bob utilisent le protocole d'identification suivant: 1. Alice choisit une valeur v aléatoire et envoie (v, c) à Bob, où c est le chiffré chiffré de v avec la clé k. 2. Bob déchiffre c et vérifie que le résultat est égal à v. Comment Oscar peut-il violer la sécurité de ce protocole d'identification? c) Modifier le protocole (b) pour résoudre le problème de sécurité, votre solution devrait fonctionner même lorsque Alice et Bob peuvent stocker constamment de nombreuses valeurs. d) Un inconvénient des protocoles ci-dessus est que si le malicieux Oscar peut lire les données internes de Bob ainsi que les messages envoyés / reçus par Bob, il peut toujours utiliser la clé partagée pour usurper l'identité d'Alice. En outre, pour permettre l'identification dans un grand groupe de personnes, chaque paire de personnes doit partager une clé secrète distincte. Comment pourriez-vous résoudre ces problèmes? e) Envisager le protocole de Fiat-Shamir décrit dans la conférence (page 14). 1. Comment cela peut-il pe ut-il être utilisé comme un protocole d'identification? 2. Comment la propriété zéro-knowledge du protocole aide à se défendre contre Oscar? 3. Quels sont les avantages et les inconvénients de l'utilisation du protocole de Fiat-Shamir pour l'identification au lieu d'utiliser le protocole de (d)?
Département informatique Faculté Electronique et Informatique USTHB
Le 27/05/2012 Master RSD 1ère année Corrigé :
Exercice 1:
3
2
2
1. On calcule le discriminant Δ = -16(4a +27b ) mod 7 = 5 * (4-3 ) = -45 = 4 une courbe elliptique sur Z 7.
0 mod 7 donc E définit bien
2. On calcule tout d’abord les carrés pour y Z 7 : y 0 1 2 3 4 5 6 0 1 4 2 2 4 1 y 3
3
2
3. Puis on calcule les x + x + 3 pour x Z 7 et lorsque la valeur de x + x + 3 correspond à y dans la table ci-dessus alors (x; y) est un point de la courbe elliptique : x points x +x+3 0 3 1 5 2 6 3 5 4 1 (4,1), (4,6) 5 0 (5,0) 6 1 (6,1), (6,6) 4. Soit P1 = (4; 1). P2 = [2]P1 : 2 = (3x1 +a)/2*y1 =0 2 d’où x2 = - 2x1 = 0-2*4 = 6 mod 7 et y2 = (x1 -x2)-y1 = -1 =6 mod 7 donc P2 = [2]P1 = (6; 6). P3 = [3]P1 = P1+P2 -1 = (y2-y1)/(x 2-x1) = (6-1)/(6-4) = 5*2 =5*4=6 mod 7 2 , d’où x3 = -x1-x2 = 36-4-6 =5 mod 7 et y3 = (x1 - x3) - y1 = 6 * (4 - 5) -1 = 0 mod 7 donc P3 = [3]P1 = (5; 0).
Exercice 2:
a) Comme la clé privée est envoyé en clair sur le canal, OSCAR peut le lire et l'utiliser pour usurper l'identité d'Alice. b) OSCAR ne peut pas calculer la clé k de la paire (v, c), mais il peut faire une attaque par rejeu comme suite: il sauvegarde le couple (v, c) et à un moment ultérieur usurpe Alice en envoyant (v, c) à Bob. Bob vérifie que c est le cryptage de v avec la clé k et d'identifier OSCAR comme Alice. c) On peut changer le protocole comme suite : 1. Bob choisit un v aléatoire et l'envoie à Alice. 2. Alice chiffre v avec k et envoie le cryptogramme correspondant c à Bob 3. Bob déchiffre c et vérifie que le résultat est égal à c d) Utiliser cryptographie à clé publique. Au lieu de chiffrer v à l'étape 2, Alice signe numériquement v et envoie la signature de Bob. Celui- ci vérifie la signature d’Alice pour l’authentifier. e) 1. Soit m = pq, où p, q sont des nombres premiers, x ∈ {1,. . . , m-1} être une valeur choisie de manière uniforme connu seulement à Alice (c'est la clé secrète d'Alice), et
Département informatique Faculté Electronique et Informatique USTHB
Le 27/05/2012 Master RSD 1ère année
z = x2 mod m public connu (z est la clé publique correspondant à x). Pour authentifier Alice auprès de Bob, le protocole de Fiat-Shamir est invoquée lorsque Alice révèle à Bob qu'elle connaît x. Le protocole est invoqué à plusieurs reprises et Bob accepte si et seulement s’il accepte de toutes les invocations. Alice choisit r ∈ {1,. . . , m-1} calcule n=r 2 mod m et l’envoie à Bob Bob choisit un bit aléatoire e et l’envoie à Alice Alice calcule y= r.x e mod m et l’envoie à Bob Bob calcule y2 et vérifie y = n.v e mod m alors il authentifie Alice 2. Pour usurper Alice, Oscar doit prouver qu'il connait clé secrète x d'Alice. La propriété zéro connaissance du protocole d'identification implique que Oscar n’a aucune information sur x 3. Avantage: Bob (ou Oscar) ne peuvent pas utiliser la transcription de l'interaction à une date ultérieure temps pour prouver à tout le monde que Alice a essayé de s'authentifier. Inconvénient: Besoin de plus de communication et d'interaction pour obtenir une faible pro babilité d’usurpation de l’identité d’ Alice.