• Aucun résultat trouvé

Un nouveau sch´ ema de signature

6.3. Un nouveau sch´ema de signature

L’intuition est la suivante : utiliser z = H(r)x et mettre m dans G(·) dans EDL ne peut ˆ

etre prouv´e sˆur, car un attaquant peut facilement r´eutiliser unz fourni par une simulation, et ainsi empˆecher celle-ci de r´esoudre le probl`eme CDH. Au contraire, dans notre construction, nous allons montrer qu’utiliserz=H(u)x est sˆur, car un attaquant ne peut r´eutiliser unH(u)x fourni par le signataire, `a moins que le logarithme discret ne soit r´ev´el´e : en effet,usatisfait une relation (u=gsy−c) qui ne peut ˆetre d´evoil´ee pour deux valeurs decdiff´erentes sans r´ev´eler le logarithme discret.

Dans cette section, nous introduisons le nouveau sch´ema de signature obtenu `a partir des deux id´ees ´evoqu´ees dans ce pr´eambule. La preuve de s´ecurit´e est ensuite expos´ee, pour confirmer l’intuition que nous venons d’exposer.

6.3.1 Une ´etape de notre construction

Tout d’abord, afin de rendre notre d´emarche la plus claire possible, nous pr´esentons le sch´ema interm´ediaire obtenu lors de nos recherches. Il faut n´eanmoins voir cette section plus comme une

´

etape (vers le sch´ema d´ecrit en Section 6.3.2) que comme une fin en soi.

Pour ce sch´ema, nous conservons les ´etapes d’initialisation et de g´en´eration de cl´es deEDL, `a l’exception pr`es que la fonction de hachageHest maintenant d´efinie parH:M ×G→G\ {1}.

Signature : Pour signer un messagem∈ M, le signataire choisit un nombre al´eatoire k ∈ Zq, et calcule u = gk, h = H(m, u), z = hx, v = hk, c=G(g, h, y, z, u, v) ets=k+cxmodq. La signature ainsi produite du message mest σ= (z, s, c)∈G×Zq2.

V´erification : Pour v´erifier une signature σ = (z, s, c) correspondant `a un message m ∈ M, il suffit de calculer u0 = gsy−c, h0 = H(m, u0) et v0 = h0sz−c. La signature doit alors ˆetre accept´ee si et seulement si c=G(g, h0, y, z, u0, v0) et z∈G.

Cette modification du sch´emaEDL permet de r´eduire les signatures : elles sont plus petites de `r bits que dans la version originale de EDL. Nous montrons ´egalement que la s´ecurit´e n’est pas affect´ee par cette modification.

Th´eor`eme 8. Soit Aun adversaire qui produit, avec une probabilit´e de succ`es εet en un temps τ, une falsification existentielle dans le sch´ema pr´esent´e dans cette section, sous une attaque `a messages choisis, apr`es avoir eu droit `a qh requˆetes `a un oracle de hachage et qs requˆetes `a un oracle de signature, dans le mod`ele de l’oracle al´eatoire.

Alors le probl`eme calculatoire Diffie-Hellman peut ˆetre r´esolu avec une probabilit´eε0 et en un temps τ0, tels que

ε0 >ε−qs

2qs+qh

q

−qh

q et

τ0 6τ + (6qs+qh0 o`u τ0 d´esigne le temps d’une exponentiation dansG.

La preuve compl`ete de ce th´eor`eme est tr`es similaire `a la preuve d’EDLpr´esent´ee Section6.1.2 et est omise dans cette th`ese. N´eanmoins, le lecteur int´eress´e pourra la trouver dans la version compl`ete de notre article [Che05a, Annexe B]. D´ecrivons maintenant le sch´ema final.

6.3. Un nouveau sch´ema de signature

6.3.2 Description de notre sch´ema Notre sch´ema est le suivant :

Crypto’05[Che05a] Initialisation des param`etres : Soient`p et`q des param`etres de s´ecurit´e.

SoitGle groupe cyclique d’ordreq, engendr´e parg, o`uq est un premier de`qbits et la repr´esentation des ´el´ements deGest incluse dans{0,1}`p. Enfin, soient H: G→ G\ {1} et G :M ×G6 → Zq deux fonctions de hachage.

G´en´eration de cl´es : La cl´e priv´ee est un nombre al´eatoire x ∈ Zq. La cl´e publique correspondante esty=gx.

Signature : Pour signer un messagem∈ M, le signataire choisit un nombre al´eatoire k ∈ Zq, et calcule u = gk, h = H(u), z = hx et v = hk. Ensuite, le signataire prouve une ´egalit´e de logarithmes, c’est-`a-dire que DLh(z) = DLg(y). Pour cela, il calcule c = G(m, g, h, y, z, u, v) et s = k+cxmodq.

La signature ainsi produite du message mest σ= (z, s, c)∈G×Zq2. V´erification : Pour v´erifier une signatureσ = (z, s, c) d’un messagem∈ M,

il faut calculer u0 = gsy−c, h0 = H(u0), et v0 = h0sz−c. La signature σ est alors accept´ee si et seulement si c=G(m, g, h0, y, z, u0, v0) et z∈G.

Un avantage de notre sch´ema apparaˆıt alors clairement : nos signatures sont plus petites que les signatures EDL ou mˆeme KW-CDH : elles ne font que (`p+ 2`q) bits de long. Il nous reste encore `a prouver que notre sch´ema poss`ede une r´eduction fine au probl`eme CDH, ce qui est fait dans la prochaine partie — mais d`es `a pr´esent, nous pouvons constater que, pour les valeurs num´eriques donn´ees dans [GJ03,KW03] le gain est de 111 bits par signature par rapport `aEDL, et de 1 bit par rapport `a KW-CDH.

6.3.3 Preuve de s´ecurit´e de notre sch´ema

Dans cette section, nous r´eduisons le sch´ema propos´e dans la section pr´ec´edente `a la s´ecurit´e du probl`eme CDH. La preuve est assez proche de la preuve du sch´ema EDL.

Th´eor`eme 9. Soit A un adversaire qui produit, avec une probabilit´e de succ`es ε et en un tempsτ, une falsification existentielle dans le sch´ema pr´esent´e Section 6.3.2, sous une attaque `a messages choisis, apr`es avoir eu droit `a qh requˆetes `a un oracle de hachage et qs requˆetes `a un oracle de signature, dans le mod`ele de l’oracle al´eatoire.

Alors le probl`eme calculatoire Diffie-Hellman peut ˆetre r´esolu avec une probabilit´eε0 et en un temps τ0, tels que

ε0 >ε−2qs

qs+qh

q

et

τ0 6τ + (6qs+qh0

o`u τ0 d´esigne le temps d’une exponentiation dans G.

D´emonstration. Notre r´eduction re¸coit en entr´ee un groupeGainsi qu’un challengeCDH(g, y= gx, A=ga). Nous utilisons alors l’attaquantA contre le sch´ema de signature de la Section6.3.2 pour r´esoudre ce challenge, c’est-`a-dire pour calculer gax. Par d´efinition, l’attaquant A, apr`es

avoir eu droit `a qH requˆetes `a un oracle de hachage H,qG requˆetes `a un oracle de hachage G etqs requˆetes `a un oracle de signature, est capable de produire une falsification sur un nouveau message, en un tempsτ et avec une probabilit´e de succ`es deε. Notons qh=qH+qG.

L’attaquant Aest utilis´e avec la simulation suivante.

Initialisation : Aest initialis´e avec les param`etres publics (g, q,G) et la cl´e publique y.

R´eponse `a une nouvelle requˆete G(m, g, h, y, z, u, v) : le simulateur retourne un al´ea deZq. R´eponse `a une nouvelle requˆete H(u) : le simulateur tire un nombre al´eatoire d ∈ Zq, et

retourneAd. Les valeurs deu sont m´emoris´ees dans une liste appel´eeU-List.

R´eponse `a une requˆete de signature sur un message mi∈ M : le simulateur tire trois nombres al´eatoires (κ, s, c) ∈ Zq ×Zq2. Alors, il calcule u = gsy−c. Si H(u) est d´ej`a d´efini, le simulateur s’arrˆete, et la r´eduction ´echoue ( ´Ev´enement 1). Sinon, le simulateur pose H(u) =gκ, et calculez=yκ — nous remarquons alors queDLh(z) =DLg(y) (=x).

Finalement, le simulateur calculev=hsz−c. Si la valeurG(mi, g, h, y, z, u, v) est d´ej`a d´ efi-nie, le simulateur s’arrˆete et la r´eduction ´echoue ( ´Ev´enement 2). Sinon, le simulateur pose G(mi, g, h, y, z, u, v) =c. Il peut alors retourner (z, s, c) comme une signature valide demi. Tous lesu apparaissant dans les requˆetes de signature sont stock´es dans une liste Υ-List.

Comme nous pouvons le voir, la simulation est valide et indistinguable d’un v´eritable signa-taire, et n’´echoue que lors des ´ev´enements suivants :

– ´Ev´enement 1 : Comme u est un al´ea de G, la probabilit´e que H(u) soit d´ej`a pos´e est plus petite que qH+qq s, lors d’une requˆete de signature. Pour l’ensemble des qs requˆetes de signature, la probabilit´e d’apparition de l’ ´Ev´enement 1 est donc major´ee par qs·(qHq+qs). – ´Ev´enement 2 : d’apr`es notre simulation des requˆetes de signature, les entr´ees de l’oracle

G sont de la forme (m, g, h, y, z, u, v) = (m, g, gκ, y, yκ, gk, gκk) avec (k, κ) ∈ Zq ×Zq. De plus, comme l’ ´Ev´enement 1 n’est pas arriv´e, la valeur de H(u) n’est pas encore d´ e-finie, et donc κ est totalement al´eatoire aux yeux de l’adversaire. Aussi, la probabilit´e que G(m, g, h, y, z, u, v) ait d´ej`a ´et´e pos´e est plus petite que qqG(q−1)+qs , pour une requˆete de signature donn´ee. Pour l’ensemble des requˆetes de signature, la probabilit´e d’apparition de l’ ´Ev´enement 2 est donc limit´ee `a qsq·(q(q−1)G+qs) 6 qs·(qGq+qs).

Aussi, except´es les ´ev´enements pr´ec´edents, dont la probabilit´e est plus petite que δsim = qs qh+2qs

q

, notre simulation est un succ`es, et est indistinguable du monde r´eel.

En d’autres termes, avec une probabilit´e εsim > ε−δsim, l’attaquant A est capable de retourner une falsification (ˆz,s,ˆ c) d’un message ˆˆ m ∈ M qu’il n’a jamais soumis `a l’oracle de signature. Le simulateur peut alors en d´eduire les valeurs (ˆu,ˆv,h) correspondantes : ˆˆ u=gˆsy−ˆc, ˆh=H(ˆu), et ˆv= ˆhsˆ−ˆc. Notamment, si la valeur H(ˆu) n’avait pas ´et´e demand´ee explicitement par l’attaquant `a l’oracle de hachage ou calcul´ee lors d’une requˆete de signature, le simulateur fait la demande `a l’oracle de hachage H lui-mˆeme. Aussi, ˆu est n´ecessairement membre de la liste U-Listou de la listeΥ-List.

R´esolution du challenge CDH : A cette ´` etape, notre preuve se divise en deux cas, contraire-ment aux preuves de EDLou de KW-CDH.

Dans le premier de ces cas, ˆuappartient `a la liste U-List. C’est la situation qui correspond

`

a la preuve deEDLou deKW-CDH. Comme pour ces preuves, commeh est un g´en´erateur de G, nous ´ecrivons ˆu=gk, ˆv = ˆhk0 et ˆz= ˆhx0, et nous obtenons alors grˆace `a l’´etape de v´erification, comme la signature est valide, que k= ˆs−ˆcxmodq et k0 = ˆs−ˆcx0 modq.

6.3. Un nouveau sch´ema de signature Ainsi, si x 6= x0, nous avons ˆc = G( ˆm, g,ˆh, y,ˆhx0, gk,ˆhk0) = k−kx0−x0 modq. Par les mˆemes arguments que dans les preuves deEDL ou deKW-CDH, nous savons qu’une telle ´equation ne peut ˆetre r´esolue, sauf avec une probabilit´e de qqG. Aussi, mis `a part ce cas minime d’erreur, nous avons DLˆh(ˆz) = DLg(y) (= x). Alors, l’attaquant a retourn´e ˆz = ˆhx, et la r´eduction connaˆıt d6= 0 tel que ˆh = H(ˆu) = Ad. La r´eduction peut donc r´esoudre le probl`emeCDH, en retournant la r´eponse ˆz1/dmodq. En conclusion, dans ce premier cas, la falsification est utilis´ee avec succ`es pour r´esoudre le probl`eme, sauf avec une probabilit´e δ1= qqh.

Dans le second cas, ˆun’appartient pas `a la listeU-List, et donc appartient `a la listeΥ-List.

Ce cas peut arriver, contrairement au sch´ema EDL, car il n’y a pas, dans notre sch´ema, de message en entr´ee de la fonction de hachage H, et ainsi, nous pouvons imaginer que l’attaquant r´eutilise unu qui serait apparu lors des requˆetes de signatures. Dans ce second cas, la r´eduction retrouve, dans son historique, les quantit´es correspondant `a ce u = ˆu, c’est-`a-direh,v,z,s,c etm.

A ce moment, nous pouvons voir que nous avons` u=gsy−c = ˆu=gsˆy−ˆc. C’est exactement le genre d’´equation qui est utilis´ee par le lemme de bifurcation pour prouver une s´ecurit´e lˆache. Cependant, ici, cette ´egalit´e n’est pas obtenue en red´emarrant l’attaquant (comme cela est fait dans le lemme de bifurcation), mais juste par construction. Ainsi, nous pouvons retrouver la cl´e priv´eex, si ˆc6=cmodq.

Comme le message ˆm est nouveau,c6= ˆc ou alors une collision sur la fonction de hachage G a ´et´e trouv´ee par l’attaquant, entre un G-hach´e retourn´e par la simulation de signature, et un G-hach´e retourn´e par un appel direct `a l’oracle de hachage G. Ceci ne peut arriver qu’avec une probabilit´e plus petite que qs·qqG. Aussi, mise `a part une erreur plus petite que δ2 = qsq·qG, nous avons ˆc 6= c, et donc la r´eduction peut retrouver la cl´e secr`ete x.

L’´equation s−xc= ˆs−xˆc (modq) donne en effetx= s−ˆc−ˆsc modq. Nous pouvons voir que ce second cas ne donne pas seulement la solution du challenge CDH, mais aussi la solution au probl`eme du logarithme discret.

En conclusion, dans les deux cas, notre r´eduction peut utiliser la falsification produite par l’attaquant pour r´esoudre le probl`eme CDH. Sa probabilit´e de succ`es satisfait la relation ε0 >ε−δsim−max(δ1, δ2), ce qui, en utilisantqH+qG=qh, donne

ε0 >ε−2qs

qs+qh

q

.

De plus, le temps d’ex´ecution de la r´eduction τ0 est tel que τ06τ+ (6qs+qh0 .

u t

6.3.4 Utilisation de coupons dans notre sch´ema

L’un des avantages de notre sch´ema est qu’il permet l’utilisation de coupons, et ceci sans aucun coˆut pour le signataireet le v´erifieur. En effet, le signataire peut d´ecider d’utiliser ou non des coupons, sans que ce choix ne change l’´etape de v´erification (et notamment, sans la rendre plus coˆuteuse). Ceci est ´egalement le cas de la signature Schnorr, mais par exemple n’est pas vrai pour les signatures `a coupons bas´ees sur les fonctions de hachage cam´el´eon, et notamment pas pour la signatureEDL-CH.

Ce proc´ed´e de coupon est fait de fa¸con tr`es naturelle : l’´etape de signature (voir Section6.3.2) est simplement divis´ee en deux sous-´etapes.

Crypto’05 Signature, partie hors-ligne : Pour cr´eer un coupon, le signataire choisit k ∈ Zq et calcule u = gk, h = H(u), z = hx et v = hk. Le coupon est alors (u, v, h, z, k)∈G4×Zq.

Signature, partie en-ligne : Pour signer un message m ∈ M, le signa-taire utilise un nouveau coupon (u, v, h, z, k) et calcule simplement c=G(m, g, h, y, z, u, v) ets=k+cxmodq. La signature sur le message m estσ = (z, s, c)∈G×Zq2.

Comme nous pouvons le voir, la proc´edure de v´erification reste la mˆeme. Cette propri´et´e de signature en-ligne/hors-ligne est tr`es utile, car elle permet au calcul en-ligne d’ˆetre le plus rapide possible, sa dur´ee ´etant r´eduite au temps de calcul d’un hach´e et d’une multiplication modulaire.

Ceci est tout `a fait comparable aux signatures `a coupons les plus rapides actuellement,Schnorr, GPS ou PS.

Le lecteur remarquera que le sch´ema GPS ne n´ecessite pas de r´eduction modulo l’ordre du groupe, au prix d’une signature l´eg`erement plus longue. Cette technique peut aussi ˆetre utilis´ee dans notre sch´ema, afin d’acc´el´erer encore l’´etape en-ligne, au prix d’une signature l´eg`erement plus longue.

Comme d´ecrit dans cette section, les coupons font (4`p +`q) bits. Cette taille peut ˆetre facilement r´eduite `a (3`p+`q) bits, en ne stockant simplement pas h, c’est-`a-dire en ayant un coupon (u, v, z, k). Alors, la valeur h =H(u) est simplement recalcul´ee lors de l’´etape en-ligne.

Ceci peut ˆetre int´eressant lorsque la m´emoire est limit´ee, par exemple sur certaines cartes `a puces.

Une version qui minimise encore plus la taille des coupons est d´ecrite dans les annexes de notre publication [Che05a, Annexe A].

6.3.5 Taille des param`etres

Dans cette section, nous expliquons comment d´efinir les param`etres de s´ecurit´e `q et `p, pour atteindre un niveau de s´ecurit´e donn´e. Notre analyse suit celle d’Eu-Jin GohetStanislaw Jarecki pour le sch´ema EDL. Prenons le meilleur attaquant (qh, qs, τ, ε) contre notre sch´ema : il peut trouver, en un temps moyen τε une falsification. En posant τ = 2n et ε = 2−e, nous obtenons log2(τε) =n+e=κ, par d´efinition le niveau de s´ecurit´e d’un sch´ema en bits.

Comme prouv´e dans la Section 6.3.3, nous pouvons utiliser cet attaquant pour r´esoudre le probl`eme CDH dans un temps moyen τε00. Notons 2κ0 le niveau de difficult´e du probl`eme CDH dans le groupe G. Alors, par d´efinition, κ0 6 log2(τε00). De plus, par les attaques g´en´eriques en O(√

q) sur le logarithme discret (et donc sur le probl`eme calculatoire Diffie-Hellman), nous avons`q>2κ0.

Utilisons le coˆut de calcul d’un hach´e comme temps unitaire. Alors,qh 62n. Si de plus, nous estimons queτ0 (le temps d’une exponentiation dansG) est d’environ 100 fois le temps du calcul d’un hach´e, en sachant que qs6qh, nous obtenons queτ0 '2n+7 etε0 &ε−4qsq·qh. Du moment queqs62`q−e−3−n= 2`q−κ−3 (par exemple,κ= 80, qs6280,qh 6280 et`q >176), nous avons ε0&2−e−1. Aussi, log2(τε00).n+ 7 +e+ 1 =κ+ 8. Finalement, nous obtenonsκ>κ0−8.

Citons notamment l’attaque par pas-de-b´eb´e pas-de-g´eant et l’attaque rho dePollard

6.3. Un nouveau sch´ema de signature Dans notre exemple, si le niveau de s´ecurit´e escompt´eκest de 80 bits, il est suffisant d’utiliser κ0 = 88 (et notamment `q >176). Ceci prouve que notre sch´ema est tr`es efficace en terme de taille de signature, comme il nous est possible d’utiliser le mˆeme sous-groupeGque celui utilis´e par Eu-Jin Goh et Stanislaw Jarecki, en ayant le mˆeme niveau de s´ecurit´e. Nous pouvons remarquer aussi que notre sch´ema reste aussi sˆur, avec les mˆemes param`etres de s´ecurit´e, mˆeme pour unqs pouvant aller jusqu’`a 280, alors que dansEDL,qsest limit´e `a 230ou l’al´ea rdoit ˆetre rendu plus grand.

6.3.6 Comparaison de notre sch´ema avec EDL, KW-CDH et autres sch´emas Dans ce paragraphe, nous r´esumons les avantages de notre sch´ema. Compar´e `a EDL, notre sch´ema a les caract´eristiques suivantes :

1. une proc´edure de signature plus rapide, avec l’utilisation de coupons, sans surcoˆut pour le v´erifieur : la partie en-ligne de notre sch´ema ne requiert que le calcul d’un hach´e suivi du calcul d’une multiplication modulaire dans Zq, alors que dans EDL, cette phase consiste en deux calculs de hach´es et surtout deux exponentiations dansG;

2. mˆeme efficacit´e de v´erification des signatures ;

3. des signatures plus petites de`r >111 bits : en prenant un sous-groupe de Zp, avec alors

`p = 1024 et `q = 176, c’est une am´elioration de 7%. Dans le cas des courbes elliptiques, le gain est encore plus important, comme zpeut ˆetre repr´esent´e avec une longueur autour de `q = 176 : notre sch´ema r´esulte alors en une am´elioration de la taille des signatures de 17%.

AvecKW-CDH, notre sch´ema se compare comme suit :

1. une proc´edure de signature plus rapide, avec l’utilisation de coupons, sans coˆut pour le v´erifieur : la partie en-ligne de notre sch´ema ne requiert que le calcul d’un hach´e suivi du calcul d’une multiplication modulaire dans Zq, alors que dans KW-CDH, cette phase consiste en deux calculs de hach´es et surtout deux exponentiations dansG;

2. mˆeme efficacit´e de v´erification des signatures ;

3. de fa¸con moins significative, des signatures plus petites de 1 bit, et un niveau de s´ecurit´e sup´erieur de 1 bit.

4. une taille de cl´es plus petite, car le calcul de b dans KW-CDH par une fonction pseudo-al´eatoire n´ecessite une cl´e additionnelle, qu’il vaudrait mieux, pour des raisons de s´ecurit´e, ne pas relier `a la cl´e priv´eex.

De plus, comme not´e dans [KW03], le calcul d’une fonction de hachage H : G → G peut ˆetre tr`es long, par exemple dans le cas des sous-groupes de Zp, si `q `p. En effet, il faut alors proc´eder `a une exponentiation de (`p −`q) bits, ce qui est bien plus long que les deux exponentiations dans G, pour `q = 176. Dans notre sch´ema, ce calcul de hach´e peut ˆetre fait hors-ligne, au contraire des sch´emasEDL ouKW-CDH.

Enfin, si nous comparons notre sch´ema `a EDL-CH, la version avec coupons de EDL, nous voyons que notre sch´ema pr´esente :

1. une proc´edure de v´erification plus rapide et surtout inchang´ee (il faut se rappeler qu’EDL-CH s’appuie sur des fonctions de hachage cam´el´eon, qui n´ecessitent des exponentiations additionnelles) ;

2. des signatures plus petites, c’est-`a-dire un gain de `q > 176 bits par rapport `a EDL-CH; pour le cas des sous-groupes de Zp, si nous prenons`p = 1024 et`q= 176, cela repr´esente une am´elioration de 11%, et, pour les courbes elliptiques, un gain de 25%.

De fa¸con g´en´erale, en raison de sa r´eduction fine de s´ecurit´e, notre sch´ema poss`ede les mˆemes avantages que ceux deEDLetKW-CDH, en comparaison avec les sch´emas bas´es sur le logarithme discret tels queSchnorr etGPS, pour un niveau de s´ecurit´e donn´e.

D’une part, si nous prenons G ⊆ Zp, il est possible d’utiliser des modules p huit fois plus petits et des ordres q deux fois plus petits que dans les sch´emas bas´es sur le probl`eme DL `a preuve de s´ecurit´e lˆache — mˆeme s’il faut cependant noter que le probl`eme sous-jacent (CDH) est plus facile que DL. Cela signifie notamment que les cl´es publiques sont huit fois plus petites et que les cl´es priv´ees sont deux fois plus petites. Par contre, les signatures sont environ deux fois plus grandes que les signatures de Schnorr.

D’autre part, si nous prenons le cas des courbes elliptiques, nos cl´es (publiques et priv´ees) sont deux fois plus petites, et nos signatures sont r´eduites de 25% par rapport aux sch´emas bas´es sur le logarithme discret `a r´eduction lˆache.

6.3.7 Derniers raffinements

Dans la version compl`ete de notre papier [Che05a, Annexe C], nous montrons ´egalement qu’il est possible de gagner encore quelques bits sur la taille de la signature, par une technique assez classique due `a Marc Girault et Jacques Stern [GS94] (elle s’applique ainsi ´egalement aux sch´emasSchnorr,EDL,KW-CDHetKW-DDH). Pour cela, nous proposons d’utiliser une fonction de hachage M ×G6 → {0,1}`c, plutˆot que celle utilis´ee dans la Section 6.3.2. La preuve du sch´ema est alors tr`es l´eg`erement modifi´ee, pour arriver `a un th´eor`eme similaire au Th´eor`eme 9, o`u ε0 > ε−2qs(qs+qq h)− 2q`ch. Nous pouvons alors adapter la discussion de la Section 6.3.5, et voir que `c = 82 bits est suffisant pour un niveau de s´ecurit´e de 80 bits. Cela permet ainsi d’obtenir des signatures dans un sous-groupe deZp (en prenant`p = 1024,`q = 176 et`c = 82), faisant 1024 + 176 + 82 = 1282 bits. Dans le cas des courbes elliptiques, le gain est encore plus important, carz peut ˆetre repr´esent´e avec une longueur d’environ`q= 176 : les signatures font alors 176∗2 + 82 + 1 = 435 bits.

6.3.8 A propos du test d’appartenance de` z `a G

Tels que nous les avons pr´esent´es, les sch´emas EDL, KW-CDH et le sch´ema pr´esent´e dans cette section n´ecessitent, dans l’´etape de v´erification, de tester quez∈G. Ceci n’est pas coˆuteux pour les courbes elliptiques qui sont, rappelons-le, le meilleur cas d’utilisation de nos sch´emas.

Au contraire, pour les sous-groupes de Zp d’ordre premier q, avecq p, ce test peut ˆetre tr`es p´enalisant, puisqu’il est fait au moyen d’une exponentiation de `p−`q bits.

Dans [GJKW06], Eu-Jin Goh,Stanislaw Jarecki,Jonathan Katz and Nan Wangont ex-pliqu´e comment se passer de ce test pourEDLetKW-CDH. Cette m´ethode s’applique ´egalement

`

a notre sch´ema, comme nous allons le montrer.

Consid´erons notre sch´ema de la Section6.3.2, dans lequel la v´erification ne comporterait plus la v´erification de l’appartenance de z `a G. Ainsi, consid´erons que le groupe G est inclus dans un groupe plus grand Hd’ordreα q, o`u α est appel´e le co-facteur. Nous restreignons seulement l’usage du sch´ema `a des groupes o`uα etqsont premiers entre eux. Dans la falsification propos´ee par l’adversaire,zpourrait appartenir `aHsans appartenir `aG. Or, dans les preuves, nous avons suppos´e z ∈ G pour pouvoir ´ecrire ˆv = ˆhk0 et ˆz = ˆhx0, et en d´eduire ensuite que x = x0 sauf avec une probabilit´e de qqh (voir Section 6.3.3, lors de l’utilisation de la falsification dans le cas o`u u∈U-List).

L’id´ee est dor´enavant que le sch´ema n’est plus une preuve que z = hx, mais plutˆot que

6.4. Conclusion