Afin d’incorporer un tweak t aux schémas d’Even-Mansour, il est tentant de
généraliser (2.1) en remplaçant les clés de tourk
ipar une fonctionf
i(k,t) de la clé
maître ket du tweak t (voir figure 2.1). Nous appellerons une telle construction le
schéma d’Even-Mansour paramétrable (TEM). Nous attirons l’attention sur le fait que
cette dénomination (en anglaisTweakable Even-Mansour) a été précédemment utilisée
par les concepteurs de Minalpher [STA
+14], un candidat à la compétition CAESAR,
pour désigner une variante basée sur des permutations de la construction XEX de
Rogaway [Rog04], c’est-à-dire un schéma d’Even-Mansour à un tour dans lequel les
fonctions de dérivation de cléf
0etf
1appliquées à (k,t) dépendent de la permutation
P
1. De telles constructions ont également été étudiées par Mennink [Men16] et Granger
et al [GJMN16]. Dans ce manuscrit, nous considérons des constructions pour lesquelles
les permutations internes sont indépendantes des fonctions de dérivation de clés.
Signalons que le cas particulier de la construction à un tour dont nous allons prouver
la sécurité dans la section 3.2 a déjà été étudié par Kurosawa [Kur10], ce dont nous
n’avions pas connaissance lors de la rédaction de notre article publié à CRYPTO
2015.
L’idée de faire dépendre les clés de tour du tweak a également été introduite par
Jeanet al. [JNP14] dans leur constructionTWEAKEY. Ils y présentent des critères
concrets de conception d’algorithmes de chiffrement par blocs paramétrables sur le
modèle des algorithmes de chiffrement à clé alternée. Leur approche est toutefois
différente de la nôtre puisque leurs arguments sont fondés sur l’étude d’attaques
tandis que nous nous concentrons sur des preuves mathématiques de sécurité.
2.3 Notations et transcriptions
2.3.1 Algorithmes de chiffrement par blocs paramétrables
Un algorithme de chiffrement par blocs paramétrable ayant pour espace de clésK,
espace detweaks T, et espace de messageMest une fonctionE
e:K × T × M → M
telle que, pour toute clék ∈ Ket touttweakt∈ T,x7→E
e(k, t, x) est une permutation
inversible deM. NotonsTBC(K,T, n) l’ensemble des algorithmes de chiffrement par
blocs paramétrables avec espace de clé K, espace de tweak T, et espace de message
{0,1}
n. Une permutation paramétrable dont l’espace de tweaks estT et l’espace de
messages estMest une fonction P
e:T × M → Mtelle que, pour tout tweak t ∈ T,
x7→P
e(t, x) est une permutation de M. On notera TP(T, n) l’ensemble de toutes les
permutations paramétrables ayantT pour espace de tweaks et{0,1}
npour espace
de messages.
2.3.2 Schéma d’Even-Mansour paramétrable
Fixons des entiers naturels n, r ≥ 1. Soient K et T deux ensembles, et soit
f = (f
0, . . . , f
r) un (r+ 1)-uplet de fonctions de K × T vers {0,1}
n. Le schéma
d’Even-Mansour paramétrable à r tours TEM[n, r,f] décrit, à partir d’un r-uplet
P= (P
1, . . . , P
r) de permutations de {0,1}
n, un algorithme de chiffrement par blocs
paramétrable dont l’ensemble des clés estK, celui destweaks T, et celui des messages
x
(k,t)
P
1f
0P
2f
1P
ry
f
rFigure 2.1 – Le schéma d’Even-Mansour à r tours utilisant sur un r-uplet de
permutations publiques (P
1, . . . , P
r).
{0,1}
n, simplement notéTEM
Pdans la suite (les paramètres [n, r,f] seront toujours
clairs en fonction du contexte) qui, à partir d’une clé k ∈ K, d’un tweak t ∈ T,
envoie un texte clairx∈ {0,1}
nsur un chiffré défini par (voir la figure 2.1) :
TEM
P(k,t, x) =f
r(k,t)⊕P
r(f
r−1(k,t)⊕P
r−1(· · ·P
1(f
0(k,t)⊕x)· · ·)).
Nous noteronsTEM
Pkla fonction prenant en entrée (t, x)∈ T × {0,1}
net renvoyant
TEM
P(k,t, x).
Nous nous focaliserons la plupart du temps sur le cas où K = ({0,1}
n)
aet
T = ({0,1}
n)
bpour des entiers naturels a, b≥1. Dans ce contexte, nous noterons
k= (k
0, . . . , k
a−1) ett= (t
0, . . . , t
b−1), les k
iet lest
jétant des chaînes de caractères
den bits, ou simplement k=k, respectivement t=t quanda= 1, respectivement
b= 1. Quand les f
isont linéaires sur ({0,1}
n)
a+b, nous dirons que la construction a
unmixage linéaire du tweak et de la clé.
2.3.3 Description des transcriptions
Soient q
cet q
pdeux entiers naturels et soit r un entier naturel non-nul. On
rappelle que le schéma d’Even-Mansour paramétrable est étudié dans le modèle de la
permutation aléatoire : les permutations de tourP
1, . . . , P
rsont modélisées par des
permutations uniformément aléatoires publiques. Dans ce contexte, un distingueur
Dest, comme précédemment, un algorithme déterministe dont la puissance de calcul
n’est pas bornée et qui interagit avec un uplet der+ 1 oracles noté (P
e0, P
1, . . . , P
r).
Dans le monde réel, l’oracle de constructionP
e0est TEM
Pkoù P= (P
1, . . . , P
r) et k
est aléatoire, alors que dans le monde idéal il s’agit d’une permutation paramétrable
uniformément aléatoire indépendante de (P
1, . . . , P
r). À partir de l’interaction de
D avec ces oracles, on définit la transcription des requêtes (Q
C,Q
P1, . . . ,Q
Pr) de
l’attaque comme suit. La listeQ
Cenregistre les requêtes à l’oracle de construction : si
Deffectue une requête directe (t, x) à l’oracle de construction P
e0et reçoit la réponse
y, ou une requête inverse (t, y) et reçoit la réponse x, alors le triplet (t, x, y) ∈
T × {0,1}
n× {0,1}
nest ajouté à Q
C. De même, pour 1 ≤ i ≤ r, Q
Picontient
toutes les paires (u, v) ∈ {0,1}
n× {0,1}
ntelles que D a effectué soit une requête
directe u à la permutation P
iet reçu pour réponse v, soit une requête inverse v
et reçu pour réponseu. On remarquera que les requêtes sont enregistrées de façon
non-ordonnée et en oubliant la direction de la requête, mais grâce à l’hypothèse que le
distingueur est déterministe, l’interaction deD avec ses oracles peut être totalement
2.3. Notations et transcriptions
reconstruite à partir de la transcription des requêtes (voir par exemple [CS14] pour
plus de détails). Notons également que, puisqu’on a supposé que D n’effectue jamais
de requêtes inutiles, chaque requête à l’oracle de construction résulte en un nouveau
triplet, distinct des précédents, dans Q
C, et chaque requête à P
irésulte en une paire
différente dansQ
Pi. De plus, puisque nous avons supposé que le distingueur effectue
toujours le nombre maximal de requêtes autorisées à chaque oracle, on a|Q
C|=q
cet|Q
Pi|=q
ppour 1≤i≤r. Dans la suite de ce manuscrit, on notera m le nombre
detweaks distincts apparaissant dans Q
C, et q
ile nombre de requêtes pour le ième
tweak, 1 ≤i≤m, en ordonnant les tweaks de façon arbitraire. Remarquons que l’on
a toujours
Pmi=1q
i=q
c, bien que m puisse dépendre des réponses reçues des oracles.
Une transcription des requêtes est diteatteignable (par rapport à un distingueur
fixéD) s’il existe des oracles (P
e0,P) tels que l’interaction de D avec (P
e0,P) résulte
en cette transcription (en d’autres termes, la probabilité d’obtenir cette transcription
dans le monde idéal est non-nulle). De plus, dans le but d’avoir une définition simple
des mauvaises transcriptions, la clé utilisée k est révélée à l’adversaire à la fin de
l’expérience si nous sommes dans le monde réel, alors que, dans le monde idéal, une
clé factice k←
$K est simplement tirée uniformément aléatoirement
indépendam-ment des réponses de l’oracle P
e0(il n’y a évidemment aucune perte de généralité
puisque cette information ne peut qu’aider le distingueur et augmenter son avantage).
Pour conclure, une transcription τ est un uplet τ = (Q
C,Q
P1, . . . ,Q
Pr,k), et une
transcription est dite atteignable si la transcription des requêtes correspondante
(Q
C,Q
P1, . . . ,Q
Pr) est atteignable. On note Θ l’ensemble des transcriptions
attei-gnables. Par la suite, on noteraT
re, respectivement T
id, la distribution de probabilité
de la transcriptionτ induite par le monde réel, respectivement le monde idéal (notons
que ces deux distributions de probabilité dépendent du distingueur). Par extension,
on utilise la même notation pour noter une variable aléatoire distribuée selon chaque
distribution.
2.3.4 Quelques observations utiles
Nous achevons ce chapitre avec quelques observations préliminaires. Tout d’abord,
introduisons quelques notations supplémentaires. Étant donné une transcription
des requêtes à un oracle de permutation Q et une permutation P, on dit que P
prolongeQ, évènement noté P ` Q, si P(u) =v pour tout (u, v)∈ Q. Par extension,
étant donné un uplet de transcriptions de requêtes à des oracles de permutation
Q
P= (Q
P1, . . . ,Q
Pr) et un uplet de permutations P= (P
1, . . . , P
r), on dit que P
prolonge Q
P, évènement noté P` Q
P, si P
i` Q
Pipour chaque i= 1, . . . , r. Notons
que, pour une telle transcription de taille q
p, on a
Pr[P ←
$P(n) :P ` Q] = 1
(N)
qp. (2.2)
De même, étant donné la transcription de l’interaction avec un oracle de construction
e
Qet une permutation paramétrable P
e, on dit que P
eprolonge Q
e, évènement noté
e
P `Q
e, si P
e(t, x) = y pour tout (t, x, y) ∈Q
e. Pour une telle transcription Q
edans
laquelle apparaissentm tweaks distincts et q
irequêtes correspondant au i-ème tweak,
on a
Pr[P
e←
$TP(T, n) :P
e`Q
e] =
m Y i=11
(N)
qi. (2.3)
Il est clair que l’interaction d’un distingueur D avec les oracles (P
e0, P
1, . . . , P
r)
aboutit à une transcription atteignable des requêtes (Q
C,Q
P) où Q
P= (Q
P1, . . . ,
Q
Pr) si et seulement si P
e0` Q
Cet P
i` Q
Pipour 1 ≤ i ≤ r. Dans le monde
idéal, la clé k, les permutations P
1, . . . , P
r, et la permutation paramétrable P
e0sont toutes uniformément aléatoires et indépendantes, de sorte que, d’après (2.2)
et (2.3), la probabilité d’obtenir une quelconque transcription atteignable des requêtes
τ = (Q
C,Q
P,k) dans le monde réel vaut
Pr[T
id=τ] = 1
|K| ×
1
(N)
qp !r×
m Y i=11
(N)
qi.
Dans le monde réel, la probabilité d’obtenir τ est
Pr[T
re=τ] = 1
|K| ×
1
(N)
qp !r×Pr
hP←
$(P(n))
r:TEM
Pk` Q
CP` Q
Pi.
Soit
p(τ)
def= Pr
hP←
$(P(n))
r:TEM
Pk` Q
CP` Q
Pi.
Alors on a
Pr[T
re=τ]
Pr[T
id=τ] =p(τ)
m Y i=11
(N)
qi. (2.4)
Par conséquent, l’application du lemme 1 requiert trois étapes : tout d’abord, définir
les bonnes et les mauvaises transcriptions, puis majorer la probabilité d’obtenir une
mauvaise transcription dans le monde idéal, et finalement minorer la probabilité p(τ)
dans le monde réel lorsqueτ est une bonne transcription afin d’utiliser l’équation (2.4).
Chapitre 3
Un mixage non-linéaire de la clé et
du tweak
3.1 Présentation de la construction
Ce chapitre est consacré à l’étude d’une variante paramétrable du schéma
d’Even-Mansour inspirée de la construction de Liskov, Rivest et Wagner [LRW02]. On
rappelle que cette construction générique permet, à partir d’une familleε-AXU de
fonctions de T vers {0,1}
n, notée H, et d’un algorithme de chiffrement par blocs E
travaillant sur des blocs den bits et dont l’ensemble de clés est notéK, de construire
un algorithme de chiffrement par blocs paramétrable E
e, sûr jusqu’à la borne des
anniversaires, ayant pour ensemble de clés le produit cartésienH × K, pour ensemble
de tweaks T et pour ensemble de messages {0,1}
ntel que, pour tout quadruplet
(h
1, k
1, t, x)∈ H × K × T × {0,1}
n,
e
E
(h1,k1)(t, x) =h
1(t)⊕E
k1(h
1(t)⊕x).
Cette construction peut être itérée plusieurs fois, en utilisant deux nouvelles clés
indépendantes pour chaque tour, afin d’augmenter la sécurité de l’algorithme final,
qui dépend également du choix de l’algorithmeE. En utilisant les résultats de sécurité
existants, pour obtenir une sécurité convenable, il serait nécessaire de remplacerE
par un schéma d’Even-Mansour à plusieurs tours, aboutissant à un algorithme ayant
de mauvaises performances. Il paraît plus prometteur de combiner la construction
LRW d’une part et le schéma d’Even-Mansour à un tour d’autre part. On obtient
alors un schéma de chiffrement par blocs paramétrable E sûr jusqu’à la borne des
anniversaires, ayant pour ensemble de clés le produit cartésienH × {0,1}
n× {0,1}
n,
pour ensemble de tweaks T et pour ensemble de messages {0,1}
ntel que, pour tout
quadruplet (h
1, k
1, k
2, t, x)∈ H × {0,1}
n× {0,1}
n× T × {0,1}
n, défini comme suit :
E
(h1,k1)(t, x) = h
1(t)⊕k
2⊕P(h
1(t)⊕k
1⊕x).
Cette construction n’est cependant pas optimale : si l’on demande à la famille de
fonctions H d’être uniforme, nous allons voir que les clés k
1et k
2peuvent être
supprimées.
Définition 6. Une famille F de fonctions de A vers B est dite uniforme lorsque,
pour tout élément a dans A et tout élément b dans B, on a
Pr [f ←
$F : f(a) = b] = 1
|B|.
Plus précisément, fixons pour le reste de ce chapitre un entier naturel n et une
famille uniforme etε-AXU de fonctions d’un ensemble non-videT vers{0,1}
nnotée
H. Notons également N = 2
n. La construction que nous allons étudier est le schéma
d’Even-Mansour paramétrableTEM[n, r,f
H], pour lequel la famille f
H= (f
0, . . . , f
r)
de fonctions de dérivation de clés est définie sur l’ensemble H × T par, pour i =
0, . . . , r,
∀((h
1, . . . , h
r), t)∈ H
r× T, f
i((h
1, . . . , h
r), t) =h
i+1(t)⊕h
i(t),
où, par convention,h
0(t) =h
r+1(t) = 0 pour tout t ∈ T. Nous allons prouver que
cette construction dispose de fortes garanties de sécurité : un tour est suffisant pour
atteindre le niveau de la borne des anniversaires, tandis que deux tours suffisent
pour que la construction soit sécurisée tant que le nombre de requêtes de l’adversaire
est petit devant 2
2n/3, où n est la taille du bloc. Nous prouvons finalement une
borne asymptotique qui tend vers la sécurité optimale à mesure que le nombre r de
tours croît. Ces travaux ont fait l’objet d’une publication à la conférence CRYPTO
2015 [CLS15].
Dans le document
Le schéma d'Even-Mansour paramétrable : preuves de sécurité à l'aide de la technique des coefficients H
(Page 60-65)