• Aucun résultat trouvé

R´esultats de s´ecurit´e

Th´eor`eme 25. L’inversion (OW-CPA) du chiffrement de El Gamal est ´equivalente au probl`eme Diffie-Hellman Calculatoire :Succow−cpa(t) =Succcdh(t).

D´emonstration. L’in´egalit´eSuccow−cpa(t)≥Succcdh(t) est ´evidente, on ´etudie alors la r´eciproque.

Soit une instance al´eatoire (A = ga, B = gb) du probl`eme Diffie-Hellman que l’on souhaite r´esoudre. On consid`ere un attaquant A contre la notion de s´ecurit´e OW-CPA : on note Game0 le jeu r´eel que joue cet attaquant.

Game0 : on ex´ecute l’algorithme de g´en´eration de cl´es qui retourney=gx pour un xal´eatoire dans

q. Puis l’attaquant re¸coit un challenge (r = gk, s = myk), pour un message m ←R ?p

al´eatoire. L’attaquant retourne m = s/yk avec probabilit´e ε. On note cet ´ev´enement de succ`es S0, ainsi queSi dans les jeuxGamei ci-dessous : Pr[S0] =ε.

Game1 : on modifie un peu le jeu r´eel, notamment le choix de la cl´e publique. Au lieu de prendre y =gxcomme cl´e publique, on utilisey=A, ce qui revient `a prendrex=a. Les distributions dexety sont ainsi identiques `a celles du jeu pr´ec´edent puisqu’il s’agit d’une instance (A, B) al´eatoire : Pr[S1] = Pr[S0].

4. Le chiffrement de El Gamal 41

Soientp un nombre premier etg∈ ?p. On noteG le groupe engendr´e parg.

– Donn´ees communes :p et g – Cl´e priv´ee d’Alice : x∈ p−1

– Cl´e publique d’Alice :y=gxmodp

– Chiffrement : soitm un message `a chiffrer pour Alice.

Ce message mest cod´e comme un ´el´ement de ?p. Bob choisit un ´el´ement k∈ p−1 puis calcule

r=gkmodp et s=yk×mmodp.

Un chiffr´e de m est la paire (r, s).

– D´echiffrement : seule Alice est capable de retrouverm

`a partir du chiffr´e, grˆace `a sa connaissance de x.

En effet,

yk=gxk= (gk)x=rxmodp Ainsi, m=s/rx modp.

Fig. 4. Chiffrement de El Gamal

Game2 : on modifie d´esormais la construction du challenge. Au lieu de prendre r = gk, on utilise r=B, ce qui revient `a prendrek=b. La construction desreste inchang´ee :s=myk, pour un message m ←R ?p al´eatoire. La distribution de r est identique `a celle du jeu pr´ec´edent : Pr[S2] = Pr[S1].

Game3 : enfin, au lieu de d´efinir s = myk, pour un message m ←R ?p al´eatoire, on choisit s ←R ?p

al´eatoire. La structure de groupe fait que la distribution de s est uniforme dans les deux cas : Pr[S3] = Pr[S2].

On peut r´e´ecrire l’´ev´enement S3 de la fa¸con suivante :

ε= Pr[S0] = Pr[S3] = Pr[s←R ?p, a, b←R p−1, y=ga, r=gb :A(y, r, s) =s/yb]

= Pr[A, B ←R G, s←R ?p, y=A, r=B :A(y, r, s) =s/DH(A, B)].

La probabilit´e ε est donc born´ee par la probabilit´e de r´esoudre le probl`eme CDH, en le mˆeme

temps que l’ex´ecution de A. ut

Cet algorithme de chiffrement, contrairement aux sch´emas vus jusqu’`a pr´esent, a la particu-larit´e d’ˆetre probabiliste : il existe plusieurs chiffr´es possibles pour un mˆeme message clair, et ce en raison de l’al´ea k. Il permet d’esp´erer la s´ecurit´e s´emantique.

Th´eor`eme 26. Si les messages sont cod´es par des ´el´ements de G, groupe cyclique d’ordre q, la s´ecurit´e s´emantique (IND-CPA) du chiffrement de El Gamal est ´equivalente au probl`eme Diffie-Hellman D´ecisionnel, et Advind−cpa(t)≤2×Advddh(t).

D´emonstration. Comme ci-dessus, soit une instance al´eatoire (A = ga, B = gb) du probl`eme Diffie-Hellman D´ecisionnel, avec C ∈ G comme candidat. On consid`ere un attaquant A = (A1, A2) contre IND-CPA en tempst: on note le jeu r´eel Game0.

Game0 : on ex´ecute l’algorithme de g´en´eration de cl´es qui retourney =gx pour unx al´eatoire dans

q. Sur y, A1 retourne deux messages m0, m1 ∈ G. Sur le chiffr´e γ = (r, s) de mδ, A2 retourne son choix δ0. Avec probabilit´e (ε+ 1)/2, on a δ0 = δ. On note cet ´ev´enement de succ`es S0, ainsi que Si dans les jeuxGamei ci-dessous : Pr[S0] = (ε+ 1)/2.

Game1 : comme pr´ec´edemment, on modifie un peu le jeu r´eel, en utilisant y = A puis r = B, ce qui revient `a prendre x = a et k = b. La construction de s reste inchang´ee : s = mδyk.

Les distributions de x, y et r sont identiques, en raison de l’instance al´eatoire (A, B) : Pr[S1] = Pr[S0].

Game2 : puis, au lieu de d´efinirs=mδyk, on d´efinits=mδC, pourC =DH(A, B). Alors, Pr[S2] = Pr[S1].

Game3 : maintenant, on remplaceC =DH(A, B) par un candidat C=gc al´eatoire. Puisque l’´ev´ene-ment δ0 =δ est d´etectable, on peut d´efinir le distingueurD qui ex´ecute le mˆeme jeu que le Game2, qui peut ˆetre effectivement le Game2 ou le Game3 selon queC =DH(A, B) ou non, ce que l’on ignore. Toujours est-il que le distingueur, `a la fin du jeu retourne 0 si δ0 6=δ, et 1 siδ0 =δ :

Pr[1← D |C ←R G] = Pr[S3] et Pr[1← D |C =DH(A, B)] = Pr[S2].

Ainsi,

| Pr[S3]−Pr[S2]| ≤Advddh(D)≤Advddh(t).

Enfin, il est ais´e de remarquer que Pr[S3] = 1/2. On applique alors l’in´egalit´e triangulaire : ε

2 = 1 +ε 2 − 1

2 =| Pr[S3]−Pr[S0]| ≤Advddh(t).

Donc l’avantage ε est born´e par deux fois l’avantage dans la d´ecision du probl`eme DDH, en le

mˆeme temps que l’ex´ecution deA. tu

Cependant, en raison de la propri´et´e homomorphe, la non-mall´eabilit´e est inaccessible, ni mˆeme la moindre s´ecurit´e face `a des attaques `a chiffr´es choisis adaptatives : si (r, s) est un chiffr´e dem, (r,2s) est un chiffr´e de 2m.

5 Conclusion

Dans ce chapitre, on a pr´ecis´e les notions de s´ecurit´e souhaitables pour garantir convenable-ment la confidentialit´e des communications. La s´ecurit´e s´emantique face aux attaques `a chiffr´es choisis adaptatives est ind´eniablement la notion de s´ecurit´e maximale que l’on puisse formaliser dans le mod`ele de s´ecurit´e consid´er´e (o`u les moyens de l’attaquant sont mod´elis´es par des oracles parfaits). Il ne faut pas pour autant voir ce niveau de s´ecurit´e comme superflu. En effet, des sc´enarios semblables `a ce type d’attaques sont parfaitement r´ealistes en pratique [65,15,66].

On a ´egalement pr´esent´e les deux sch´emas de chiffrement asym´etrique les plus classiques (RSA et El Gamal). Malheureusement, ils n’atteignent respectivement que les niveaux de s´ecurit´e OW-CPAetIND-CPA, et non le niveau d´esormais requis, `a savoir IND-CCA2. Le chapitre suivant

´etudie un certain nombre de techniques pour y parvenir.

Attaques ` a chiffr´ es choisis adaptatives

Sommaire

1 Le mod`ele de l’oracle al´eatoire . . . . 43 1.1 Notions de s´ecurit´e classiques . . . . 44 1.2 Plaintext-awareness . . . . 44 1.3 Discussions . . . . 45 2 Constructions g´en´eriques . . . . 46 2.1 Premi`ere construction g´en´erique . . . . 46 2.2 OAEP : Optimal Asymmetric Encryption Padding . . . . 48 2.3 REACT : Rapid Enhanced-security Asymmetric Cryptosystem Transform . . . . 48 2.4 Autres conversions g´en´eriques . . . . 50 3 Conclusion . . . . 51

1 Le mod`ele de l’oracle al´eatoire

On a vu que le niveau de s´ecurit´e souhaitable est la r´esistance aux attaques `a chiffr´es choisis.

N´eanmoins l’efficacit´e ne doit pas en pˆatir. Il semble malheureusement difficile d’obtenir des sch´emas efficaces, avec un niveau de s´ecurit´e IND-CCA2 prouv´e dans le mod`ele standard. On verra ult´erieurement un tel candidat [33], qui n’atteint toutefois pas une efficacit´e calculatoire importante.

Un compromis possible consiste `a faire certaines hypoth`eses sur les attaques mises en œuvre par les adversaires. Plusieurs hypoth`eses, qui supposent certains objets id´eaux, ont d´ej`a ´et´e propos´ees :

– le mod`ele du groupe g´en´erique [85,121,117], qui suppose que l’attaquant n’exploite pas les propri´et´es du codage des ´el´ements du groupe utilis´e. Par cons´equent, la loi interne du groupe est effectu´ee par l’interm´ediaire d’un oracleO(x, y,±). Et c’est le seul moyen qu’a l’adversaire pour obtenir un nouvel ´el´ement dans ce groupe ;

– le mod`ele du chiffrement id´eal [9], qui suppose qu’un sch´ema de chiffrement sym´etrique par blocs est parfait. Cela signifie que pour chaque cl´e k, on a affaire `a une permutation parfaitement al´eatoire, ind´ependante des autres. Comme pr´ec´edemment, les fonctions de chiffrement et de d´echiffrement sont mod´elis´ees par des oraclesE(k, x) etD(k, y) ;

– le mod`ele de l’oracle al´eatoire [10] (voir le chapitre Preuves de s´ecurit´e, section 4).

Dans ce mod`ele, les fonctions de hachage sont des fonctions al´eatoires, mod´elis´ees par des oracles qui retournent des images H(x) parfaitement al´eatoires, ind´ependantes les unes des autres.

Ainsi, l’attaquant a acc`es `a divers oracles suppl´ementaires, en fonction du mod`ele consid´er´e : aucun oracle dans le mod`ele standard, oracle de loi interneOdans le mod`ele du groupe g´en´erique, oracles de chiffrement E et d´echiffrement D dans le mod`ele du chiffrement id´eal, et oracle de hachage H (ou oracle al´eatoire ) dans le mod`ele de l’oracle al´eatoire.

Ce dernier mod`ele est le plus faible des trois, et donc le plus proche de la r´ealit´e, mˆeme si dans la pratique les fonctions de hachage sont fix´ees. Ce mod`ele revient `a ne consid´erer que les attaques g´en´eriques, ind´ependantes de l’impl´ementation des fonctions de hachage. Ainsi, pour attaquer un sch´ema prouv´e dans ce mod`ele, un adversaire devra exploiter des propri´et´es sp´ecifiques aux fonctions de hachage utilis´ees. Mais alors, le simple changement de la fonction de hachage rendra cette attaque inefficace. Dans la suite, on ne consid`ere donc que ce mod`ele de l’oracle al´eatoire, comme compromis pour ´evaluer la s´ecurit´e de sch´emas efficaces. N´eanmoins, une preuve dans le mod`ele du groupe g´en´erique est propos´ee dans l’article [103], pr´esent´e en annexe (page 241).

Comme on vient de le voir, dans ces mod`eles id´eaux, les oracles sont `a ajouter `a l’espace de probabilit´es dans lequel sont d´efinies les notions de s´ecurit´e. On peut donc red´efinir les notions pr´esent´ees dans le chapitre pr´ec´edent, afin d’en tenir compte, avec notamment l’oracleHdans le mod`ele de l’oracle al´eatoire. Bellare et Rogaway [11] ont ´egalement propos´e une nouvelle notion, appel´ee plaintext-awareness, qui n’a d’ailleurs de sens que dans un tel mod`ele id´eal `a oracle, grˆace `a la liste des questions-r´eponses de l’oracle.

Documents relatifs