II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

39
II CRYPTOLOGIE « contemporaine »

Transcript of II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Page 1: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

IICRYPTOLOGIE« contemporaine »

IICRYPTOLOGIE« contemporaine »

Page 2: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Sommaire

1. Les fondements p. 59

2. Les protocoles simples p. 77

Page 3: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.
Page 4: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.
Page 5: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

II. 1Les fondements

II. 1Les fondements

Page 6: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Sommaire

1. Transmission de clefs

2. Confidentialité calculatoire

3. RSA

Page 7: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

1. Transmission de clefs

1.1 Les « puzzles » de Ralph Merkle

1.2 Le protocole de Diffie-Hellman

1.3 Les clefs collectives

Page 8: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

1.1 Les « puzzles » de Ralph Merkle

– première idée de transmission publique– rien n’est caché à l’observateur

l’espionnage est rendu difficile grâce à la complexité

– Ralph C. Merkle • étudiant en physique à l’université de Berkeley (CA) en 1974• élève de Lance Hoffman en cryptologie• devoir de fin d’année : communications privées par des

canaux peu sûrs obtient une mauvaise note due à l’incompréhension de Lance Hoffman

Pionnier de la cryptographie à clef publique

QuickTime™ et undécompresseur TIFF (non compressé)

sont requis pour visionner cette image.

Ralph C. Merkle(1952)

QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.

Page 9: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Le protocole

• Le puzzle en clair

– Alice envoie à Bob un million de puzzles tous différents, non ordonnés par leur numéro et cryptés chacun avec une clef différente de 20 bits non transmise

– Bob cryptanalyse un puzzle pris au hasard puis

envoie à Alice le numéro de ce puzzle en clair

– La clef transmise est celle contenue dans ce puzzle

Eve espionne le dialogue entre Alice et Bob !

000…000 n° du puzzle clef à transmettre « remplissage »

128 bits à zéro

20 bits

Page 10: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Cryptanalyse

• Méthode• par recherche exhaustive de la clef de 20 bits• la clef est trouvée quand on obtient les 128 zéros de

tête du puzzle en clair• il faut tester 220 ( 106 ) clefs possibles• pour 100µs par clef 1 minute par puzzle

– Bob cryptanalyse un seul puzzle … ce qui lui prend environ 1 minute

– Eve doit cryptanalyser 106 puzzles … ce qui lui prend environ …1 an !

Page 11: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

1.2 Le Protocole de Diffie-Hellman

• Principe 1976– Alice et Bob se transmettent publiquement 2

nombres a et p tels que• p est un nombre premier• a est premier avec p

– Alice choisit un nombre secret x

puis transmet à Bob ax = ax mod p– Bob choisit un nombre secret y

puis transmet à Alice ay = ay mod p– Alice calcule ay

x mod p– Bob calcule ax

y mod p

la clef transmise est k = ayx mod p = ax

y mod p

Whitfield Diffie(1944)

QuickTime™ et undécompresseur TIFF (non compressé)

sont requis pour visionner cette image.

Martin Hellman(1946)

QuickTime™ et undécompresseur TIFF (non compressé)

sont requis pour visionner cette image.

QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.

QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.

Page 12: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

AliceAlice réseau public BobBobx a, p yax mod p ay mod pay mod p ax mod p

(ay mod p)x mod p (ax mod p)y mod p = =ayx mod p axy mod p

clef transmise

EveEve

Page 13: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Propriété

(ay mod p)x mod p = (ay mod p)x mod p– la fonction

z = ax mod p est difficilement inversible

x = loga z mod p est appelée logarithme discret

elle est difficilement calculable

– Eve ne « voit » que ax mod p (et ay mod p) elle ne peut calculer ni x ni y

elle ne peut calculer la clef

Page 14: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Attaque du « (wo)man in the middle »

AliceAlice Bob Bobx w z yax mod p ay mod p

ax mod p ay mod p

aw mod p az mod p

aw mod p az mod p

axw mod p ayz mod p

awx mod p azy mod p

EveEve

Page 15: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

1.3 Clefs collectives

• Sécuriser un accès par plusieurs clefs détenues par des personnes différentes

• Protocole de Adi Shamir 1978– k clef maîtresse ouvrant l’accès

personne ne possède k

– n nombre de personnes nécessaires pour obtenir l’accès

– construction d’un polynôme de degré n-1y = p(x) = an-1 xn-1 + an-2 xn-2 + … a2 x2 + a x + k

– distribution de clefs partielleski = (xi, yi) yi = p(xi) couples de points du graphe de y = p(x)

Adi Shamir

QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.

QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.

Page 16: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Propriétés

• n points déterminent les n coefficients d’un polynôme de degré n-1– résolution d’un système de n équations à n inconnues

– n clefs partielles ki permettent de déterminer la clef maîtresse k

• raffinement du protocole– certaines personnes peuvent posséder plusieurs clefs

partielles

– hiérarchie de clefs hiérarchie de confiance

Page 17: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

2. Confidentialité calculatoire

2.1 Confidentialités parfaite et calculatoire2.2 Fonctions à sens unique2.3 Fonctions à sens unique avec brèche

secrète

Page 18: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

2.1 Confidentialités parfaite et calculatoire

• Confidentialité parfaite– difficile à mettre en œuvre

• clef jetable• contraintes sur la distribution probabiliste des clefs

– en général pas indispensable

• Confidentialité calculatoire– la cryptanalyse est difficile au sens de la complexité

algorithmique

Page 19: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

2.2 Fonctions à sens unique

• Définition– mathématiquement inversibles– mais la fonction inverse est difficile à calculercette difficulté est souvent une conjecturecf. second principe de la thermodynamique– l’inversion devient facile par la connaissance

d’un secret (ou brèche) fonction à brèche secrète trapdoor function

Page 20: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Exemple 1 x ax mod p

Exponentiation de a modulo p bijective

p premier a primitif modulo p

– L’inverse est le logarithme discret mod n

P

NP

x

loga y mod p

ax mod p

y

Page 21: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Exemple 2 p, q p x q

Produit de deux nombres premiers p, q

– L’inverse est la factorisation d’un nombre

P

NP

p, qp x q

n

Page 22: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Exemple 3 x x a mod n

– Elévation à la puissance a mod n

ce n’est pas l’exponentiation !

– L’inverse est la racine aième modulo n

P

?

x

a√ y mod n

xa mod n

y

Page 23: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

2.3 Fonctions à sens unique avec brèche secrète

Calcul de x = a√ y mod noù y = xa mod n

x = y1/a mod n = ya-1 mod n on pose b = a-1

x = yb mod n = (xa mod n)b mod n

= xab mod n

Il faut trouver b tel que xab mod n = x

Page 24: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Retour vers le passé …

Le 18 Octobre 1640 Pierre Simon de Fermat écrit à son ami et confident Bernard Frénicle de Bessy :

si p est premier alors ap - a est divisible par p

donc (ap -a) mod p = 0

Mais … il ne donne aucune preuve !cette propriété était connue en Chine pour a = 2elle a été démontrée en 1683 par Leibniz

si a est premier avec p ap-1 mod p = 1

ou encore a NN ap mod p = a mod p

cette propriété est appelée « le petit théorème de Fermat »

QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.

Pierre Simon de Fermat(1601 - 1665)

QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.

Gottfried Wilhelm Leibniz(1646 - 1716)

QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.

Page 25: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Un siècle plus tard …

En 1740 Leonhard Euler (re)démontre le petit théorème de Fermat

En 1760 il donne 2 généralisationssoit Zn* = { x Zn | pgcd (x,n) = 1 } et (n) = |

Zn*|

(n) est le nombre de nombres premiers avec n et < n (n) est appelé totient ou indicatrice d’Euler

1ère généralisation k Z

si a est premier avec n ak.(n) mod n = 1

2ème généralisation k Z

si n = p x q , p et q premiers et si 0 ≤ a < n

ak(n) + 1 mod n = a

QuickTime™ et undécompresseur TIFF (non compressé)

sont requis pour visionner cette image.

Leonhard Euler(1707 - 1783)

QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.

Page 26: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Vers la brèche secrète …

G1 : k Z, pgcd (a, n) = 1

ak.(n) mod n = 1 n’impose pas a < n

G2 : k Z, n = p x q , p et q premiers et

0 ≤ a < n ak.(n) + 1 mod n = a

n’impose pas pgcd (a, n) = 1

G1 G2 et G2 G1

Page 27: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Retour au présent

Trouver b tel que xab mod n = x

Il suffit que ab soit multiple de (n) + 1

a.b = k.(n) + 1 a.b mod (n) = 1 b = a-1 mod (n) (n) va servir de brèche secrète (n) permet de calculer b en temps polynomial par

l’algorithme d’Euclide étendu conjectures :

(n) nécessite de connaître la factorisation de n la factorisation de n = p x q est difficile

Page 28: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

La brèche de la fonction y a√ y mod n

P

NP

x, a, n

x = a√ y mod n

xa mod n = y

y, a,

n = p x q P

brèchesecrète

n

Page 29: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

Cryptographie utilisant une fonction à

brèche secrète

P

NPx y

P

+brèchesecrète

• Propriétés tout est public sauf la brèchela brèche ne circule jamais sur le réseaucontrairement à une clef privée

Page 30: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

3. Cryptographie RSA

QuickTime™ et undécompresseur TIFF (non compressé)

sont requis pour visionner cette image.

QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.

Ronald Rivest, Adi Shamir, Leonard Adleman

Page 31: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

3.1 Principes

3.2 Mise en œuvre

3.3 Choix des facteurs premiers

3.4 Tests de primalité

3.5 Choix des clefs

3.6 Cryptage & décryptage

3.7 Cryptanalyse

Page 32: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

3.1 Principes

Cryptage endomorphe C = P = {0, 1}n

n = p x q p et q premiers

x P y C e, d Zn

En,e : P C y = xe mod n

Dn,d : C P x = yd mod n

avec d.e mod (n) = 1

n et e sont publics et (n,e) est la clef publique

p et q sont secrets

(n) est la brèche secrète et d la clef secrète

Page 33: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

3.2 Mise en œuvre

Détenteur du secret • choisit 2 nombres premiers p et q de grande taille (au moins

300 bits)

• calcule n = p x q et (n) = (p-1) x (q-1)

• choisit e premier avec (n)

• calcule d = e-1 mod (n)

• publie n et e

• garde secret d (issu de (n))

Rappel d ne circule jamais sur le réseau

aucun passage de clef n’est nécessaire

Page 34: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

3.3 Choix des facteurs premiers

grands nombres premiers– Densité des nombres premiers inférieurs à n

• π (n) ≈ 1 / ln(n) exemple : π (2500) ≈ 350

pour des nombres de 500 bits, environ 1/350 sont premiers

– Choix au hasard puis test de primalité• test de Fermat

– choisir au hasard a

– si an-1 mod n = 1 n est premier ou pseudo-premier (n) densité des nombres pseudo-premiers inférieurs à n (n) / π(n) 0 quand n théorème de Pomerance

– Exemples de nombres pseudo- premiers : les nombres de Carmichael

le test de Fermat n’est pas assez sûr

Page 35: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

3.4 Tests de primalité

• test de Solovay-Strassen– choisir au hasard a

– test positif ssi a(n-1)/2 mod n = J (a/n)

J est le symbole de Jacobi

– si n est composé la probabilité du test est < 1/2

répétition du test pour différentes valeurs de a

• test déterministe en temps polynomial

Agrawal, Kayal et Saxena sept. 2004www.math.princeton.edu/~annals/issues/2004/Sept2004/Agrawal.pdf

– Construction déterministe• n = 1 + p1

1 + p22 + … pk

k pi premiers i N \ {0}

• n premier ssi a Zn* a(n-1) mod n = 1 et p premier et p | (n-1) a(n-1)p mod n ≠ 1

Page 36: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

3.5 Choix des clefs

• Choix de e– premier avec (n)

– test par l’algorithme d’Euclide

• Calcul de d = e-1 mod (n)– Algorithme d’Euclide étendu polynomial

Page 37: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

3.6 Cryptage & décryptage

• Emetteur du cryptogramme– Calcul de y = xe mod n polynomial

• Récepteur du cryptogramme– Calcul de x = yd mod n idem

simplifications possibles en conservant p, q, d mod (p-1), d mod (q-1), q-1 mod p et

en utilisant le théorème des restes chinois

Page 38: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.

3.7 Cryptanalyse

– Tous les niveaux sont équivalents possibilité d’attaque par texte choisi

– Conjectures équivalentes• les facteurs premiers de n ne peuvent être calculés en temps

polynomial (n) ne peut être calculé en temps polynomial

– Recherche de x connaissant y• calcul de x = e√y mod n

• conjecture : x ne peut être calculé qu’avec d

– Recherche de d connaissant e• calcul de d = e-1 mod (n)

• conjecture : d ne peut être calculé sans (n)

Page 39: II CRYPTOLOGIE « contemporaine » Sommaire 1.Les fondements p. 59 2.Les protocoles simples p. 77.