• Aucun résultat trouvé

4.3.1 Description de la construction

Les constructions à 1 et 2 tours pouvant être distinguées d’une permutation

paramétrable idéale, nous allons maintenant considérer la constructionTEM à trois

tours munie des fonctions de dérivation de clé triviales : nous fixonsK=T ={0,1}

n

et, pour tout i = 0, . . . ,3 et tout (k, t) ∈ {0,1}

n

× {0,1}

n

, on a f

i

(k, t) = kt.

Étant donné trois permutationsP

1

, P

2

, P

3

de {0,1}

n

, on noteTEM

P1,P2,P3

[n,3,f]

le schéma

d’Even-Mansour paramétrable TEMmuni du quadruplet de fonctions de dérivation

de clés triviales qui, à une clék ∈ {0,1}

n

, un tweak t ∈ {0,1}

n

et à un texte clair

x∈ {0,1}

n

associe le chiffré défini par

TEM

P1,P2,P3

k

(t, x) =ktP

3

(ktP

2

(ktP

1

(ktx))).

On prouve le résultat suivant [CS15b], qui a été découvert indépendamment par

Farshim et Procter [FP15].

Théorème 9. Soient q

e

, q

p

deux entiers naturels. On a

Adv

ccaTEM[n,3,f]

(q

c

, q

p

)≤ 6q

c

q

p

N +

4q

2 c

N .

Démonstration. La preuve découle du lemme 1 combiné aux lemmes 23 et 24

démon-trés ci-dessous.

4.3.2 Description des mauvaises transcriptions

Définition 10. Soit τ = (Q

C

,Q

P1

,Q

P2

,Q

P3

, k) une transcription atteignable. On

dit que τ est mauvaise si

k ∈BadK=

[

1≤i≤2

BadK

i

où :

4.3. Une construction à 3 tours

k∈BadK

2

il existe (t, x, y)∈ Q

C

et (u

3

, v

3

)∈ Q

P3

tels que kt=yv

3

.

Dans le cas contraire, τ est une bonne transcription. Notons Θ

bad

l’ensemble des

mauvaises transcriptions, et Θ

good

= Θ\Θ

bad

l’ensemble des bonnes transcriptions.

En premier lieu, majorons la probabilité d’obtenir une mauvaise transcription

dans le monde idéal.

Lemme 23. On a

Pr[T

id

∈Θ

bad

]≤ 2q

c

q

p

N .

Démonstration. Puisque nous sommes dans le monde idéal, la clé k est tirée

unifor-mément aléatoirement après la dernière requête, indépendamment de la

transcrip-tion des requêtes. Ainsi, nous devons simplement majorer le nombre de mauvaises

valeurs possibles pour k pour toutes les transcriptions atteignable des requêtes

(Q

C

,Q

P1

,Q

P2

,Q

P3

). Pour ce faire, fixons une quelconque transcription atteignable

des requêtes (Q

C

,Q

P1

,Q

P2

,Q

P3

). Alors, pour toute requête (t, x, y)∈ Q

C

et toute

requête (u

1

, v

1

) ∈ Q

P1

, il existe une unique clé k telle que k = xtu

1

. Ainsi,

|BadK

1

| ≤q

c

q

p

. De même,|BadK

2

| ≤q

c

q

p

. Ainsi, pour i= 1,2,

Pr [k

$

{0,1}

n

:k ∈BadK

i

]≤ q

c

q

p

N .

On en déduit le résultat par l’inégalité de Boole.

4.3.3 Étude des bonnes transcriptions

Lemme 24. Pour toute bonne transcription τ ∈Θ

good

, on a

Pr [T

re

=τ]

Pr [T

id

=τ] ≥1− 4q

c

q

p

N4q

2 c

N .

Démonstration. Si Θ

good

= ∅, il n’y a rien à prouver. Sinon, fixons une bonne

transcription τ = (Q

C

,Q

P1

,Q

P2

,Q

P3

, k). Soit m le nombre de différents tweaks t

qui apparaissent dans Q

C

et q

i

le nombre de requêtes utilisant le i-ème tweak (en

ordonnant les tweaks de façon arbitraire). Notons queq

c

=

Pmi=1

q

i

. Dans le monde

idéal, on a simplement

Pr[T

id

=τ] = Pr[k

0

$

{0,1}

n

:k

0

=k]×Pr[P

i

$

Perm(n) :P

i

` Q

Pi

, i= 1,2,3]

×Pr[E

$

TBC(n, n) : (E, k)` Q

C

]

= 1

N · 1

((N)

qp

)

3

·

Qm

1

i=1

(N)

qi

. (4.7)

Nous devons simplement minorer la probabilité suivante :

Pr [T

re

=τ] =

1

Soient

U

1

={u

1

∈ {0,1}

n

: (u

1

, v

1

)∈ Q

P1

}, V

1

={v

1

∈ {0,1}

n

: (u

1

, v

1

)∈ Q

P1

},

U

2

={u

2

∈ {0,1}

n

: (u

2

, v

2

)∈ Q

P2

}, V

2

={v

2

∈ {0,1}

n

: (u

2

, v

2

)∈ Q

P2

},

U

3

={u

3

∈ {0,1}

n

: (u

3

, v

3

)∈ Q

P3

}, V

3

={v

3

∈ {0,1}

n

: (u

3

, v

3

)∈ Q

P3

}

les ensembles de définition et image de Q

P1

, Q

P2

, et Q

P3

respectivement. Pour

u

01

∈ {0,1}

n

, soient X(u

01

) = {(t, x, y) ∈ Q

C

: xkt = u

01

}, et U

10

= {u

01

{0,1}

n

:X(u

01

)6= ∅}. De même, pourv

03

∈ {0,1}

n

, soient Y(v

30

) = {(t, x, y)∈ Q

C

:

ykt =v

03

}, etV

30

= {v

30

∈ {0,1}

n

:Y(v

03

)6= ∅}. Notons que, par définition d’une

bonne transcription, on aU

1

U

10

=∅ etV

3

V

30

=∅. Soient également α =|U

10

| et

β=|V

30

|. Par souci de clarté, on note

U

10

={u

01,1

, . . . , u

01,α

}

V

30

={v

03,1

, . . . , v

03,β

}

en ordonnant les éléments de façon arbitraire. Notons que

q

e

=

α X i=1

|X(u

01,i

)|=

β X i=1

|Y(v

03,i

)|. (4.8)

Il est alors suffisant pour prouver notre résultat de minorer le nombre d’uplets

de valeurs possibles pour (v

1,10

, . . . , v

1,α0

) et (u

03,1

, . . . , u

03,β

) tels que, en imposant

P

1

(u

01,i

) = v

1,i0

pour 1 ≤ iα et P

3

(u

03,j

) = v

3,j0

pour 1 ≤ jβ, l’évènement

E

P1,P2,P3

k

` Q

C

est équivalent àq

c

«nouvelles» équations surP

2

(c’est-à-dire, distinctes

des équations imposées parP

2

` Q

P2

). Plus précisément, soit N

1

le nombre d’uplets

de valeurs deux à deux distinctes (v

1,10

, . . . , v

1,α0

) tels que, pour tout i= 1, . . . , α :

(i) v

01,i

6=v

1

pour toutv

1

V

1

,

(ii) v

01,i

6=ktu

2

pour tout (t, x, y)∈X(u

01,i

) et tout u

2

U

2

,

(iii) v

01,i

6= tv

1,j0

t

0

pour tout (t, x, y)∈X(u

01,i

), 1≤ji−1, (t

0

, x

0

, y

0

)∈X(u

01,j

).

Alors

N

1

α Y i=1  

Nq

p

i+ 1− |X(u

01,i

)|(q

p

+

i−1 X j=1

|X(u

01,j

)|)

 

α Y i=1

Nq

p

q

e

− |X(u

01,i

)|(q

p

+q

e

)

par (4.8).

De même, soit N

3

le nombre d’uplets de valeurs deux à deux distinctes pour

(u

03,1

, . . . , u

03,β

) tels que, pour tout i= 1, . . . , β :

(i’) u

03,i

6=u

3

pour tout u

3

U

3

,

(ii’) u

03,i

6=ktv

2

pour tout (t, x, y)∈Y(v

03,i

),v

2

V

2

,

4.3. Une construction à 3 tours

Alors

N

3

β Y i=1  

Nq

p

i+ 1− |Y(v

03,i

)|(q

p

+

i−1 X j=1

|Y(v

3,j0

)|)

 

β Y i=1

Nq

p

q

e

− |Y(v

3,i0

)|(q

p

+q

e

)

par (4.8).

Pour chaque choix possible de (v

1,10

, . . . , v

01,α

) et (u

03,1

, . . . , u

03,β

) satisfaisant ces

condi-tions,P

1

sera fixé sur exactement q

p

+α points,P

2

surq

p

+q

c

points etP

3

surq

p

+β

points. Plus précisément, supposonsN

1

·N

3

>0 et fixons deux uplets quelconques

de valeurs (v

1,10

, . . . , v

1,α0

) et (u

03,1

, . . . , u

03,β

) satisfaisant ces conditions, et soit Ev

1

l’évènement P

1

(u

01,i

) = v

01,i

pour 1 ≤iα et Ev

3

l’évènement P

3

(u

03,j

) = v

03,j

pour

1≤jβ. Alors, d’après les conditions (i) et (i’) on a

Pr [Ev

1

∧(P

1

` Q

P1

)] = 1

(N)

qp

Pr [Ev

3

∧(P

3

` Q

P3

)] = 1

(N)

qp

.

Fixons maintenantP

1

etP

3

satisfaisantEv

1

etEv

3

. Pour chaque (t, x, y)∈ Q

C

, soient

respectivementu

02

et v

20

les entrées et sorties de P

2

pour cette requête, c’est-à-dire

que u

02

=v

1,i0

kt pour i tel que xkt = u

01,i

, et v

20

= u

03,j

kt for j tel

que ykt = v

3,j0

. Alors, les q

c

valeurs u

02

n’appartiennent pas à U

2

d’après la

condition (ii), et sont deux à deux distinctes d’après la condition (iii). De même

lesq

c

valeurs v

02

ne sont pas dans V

2

d’après la condition (ii’), et sont deux à deux

distinctes d’après la condition (iii’). Il suit que

Pr

h

(TEM

P1,P2,P3

, k)` Q

C

∧(P

2

` Q

P2

)

Ev

1

∧(P

1

` Q

P1

)∧Ev

3

∧(P

3

` Q

P3

)

i

= 1

(N)

qp+qc

.

Ainsi, en sommant sur les (au moins) N

1

·N

3

paires possibles d’uplets, on obtient

Pr [T

re

=τ]≥ N

1

·N

3

N ·(N)

qp

·(N)

qp+qe

·(N)

qp

. (4.9)

Cette dernière inégalité est également vraie dans le cas oùN

1

·N

3

= 0. En utilisant

(4.7) et (4.9), on a

Pr [T

re

=τ]

Pr [T

id

=τ] ≥ N

1

·N

3

·N ·(N)

3 qp Qm i=1

(N)

qi

N·(N)

qp

·(N)

qp+qc

·(N)

qp

N

1

·N

3

·

Qm i=1

(N)

qi

(Nq

p

)

α

·(Nq

p

)

qc

·(Nq

p

)

β

N

1

·N

3

·(N)

qc

(Nq

p

)

α

·(Nq

p

)

qc

·(Nq

p

)

β

N

1

·N

3

N

α+β

.

Finalement, on a, puisqueαq

c

,

N

1

N

α

=

i=1

Nq

p

q

c

− |X(u

01,i

)|(q

p

+q

c

)

N

α

≥1−

α X i=1

q

p

+q

c

+|X(u

01,i

)|(q

p

+q

c

)

N

≥1− q

c

q

p

Nq

2 c

N −(q

p

+q

c

)

α X i=1

|X(u

01,i

)|

N

≥1− 2q

c

q

p

N2q

2 c

N par (4.8).

La même borne inférieure peut être prouvée pour

N3

. Ainsi

Pr [T

re

=τ]

Pr [T

id

=τ] ≥ 1−2q

c

q

p

N2q

2 c

N

!2

≥1− 4q

c

q

p

N4q

2 c

N .

4.3.4 De l’exactitude de notre borne

Remarquons que notre construction est en fait un cas particulier de construction

générique d’un algorithme de chiffrement par blocs paramétrable à partir d’un

algorithme de chiffrement par blocs standard. En effet, si E est un algorithme

de chiffrement par blocs, on peut définir un algorithme de chiffrement par blocs

paramétrable E

e

, qui, pour toute clék, tout tweak t, associe à tout message clairx le

chiffré

e

E

k

(t, x) = E

kt

(x).

Lorsque l’on remplace l’algorithmeE par le schéma d’Even-Mansour à trois tours et

utilisant des clés de tours identiques, on obtient le schéma précédent. Or il existe

une attaque contre cette construction générique qui retrouve la clé en environ 2

n/2

requêtes. L’attaque fonctionne de la façon suivante : l’adversaire effectue simplement

des requêtes à l’oracle de construction sur les entrées (t

i

,0) pourq

c

valeurst

i

distinctes,

et calculeE

kj

(0) pour q

p

valeurs distinctes k

j

, ce qui se transpose, dans le modèle

de la permutation aléatoire, en q

p

requêtes à chaque permutation interne. Si les t

i

et lesk

j

sont choisis tels que l’ensemble des valeurs t

i

k

j

recouvre{0,1}

n

, alors il

existera une paire (i, j) telle que (dans le monde réel) k

t

i

=k

j

, où k

est la clé

réellement utilisée dans l’oracle de construction. Ceci peut être détecté en recherchant

une collision entre les deux listes (P

e

(t

i

,0))

1iqe

et (E

kj

(0))

1jqp

, qui suggère un

candidat pour la clé réellek

. Ceci entraîne en particulier que, avec une clé de n bits,

la borne de sécurité ne peut pas être améliorée en augmentant le nombre de tours de

notre construction.