• Aucun résultat trouvé

Attaques alg´ebriques “univari´ees”

Etant donn´e que les crit`eres cryptographiques sur la fonction de filtrage ne sont pas pr´eserv´es par la transformation X 7→ Xk, il est tout naturel de se demander quel est l’impact de cette ´equivalence non-lin´eaire sur les attaques classiques des g´en´erateurs filtr´es, notamment les attaques alg´ebriques et les attaques par corr´elation rapides. Les r´esultats obtenus avec Anne Canteaut sont d´ecrits dans la suite de ce chapitre et ont ´et´e publi´es `a Fast Software Encryption en 2016 [CR16].

4.5 Attaques alg´ebriques “univari´ees”

D´eterminer les propri´et´es cryptographiques d’une fonction bool´eenne en consid´erant tous les changements possibles de racine primitive du corps fini F2n semble a priori difficile, puisque les crit`eres de non-lin´earit´e et d’immunit´e alg´ebrique ne sont pas invariants par cette transformation [RC10, Appendix A].

Pour ce qui est du degr´e et de l’immunit´e alg´ebrique, les travaux de Massey et Serconek [MS94], puis plus r´ecemment ceux de Gong, Helleseth et Rønjom [RGH07, RH07, Gon11, HR11] ont montr´e que la repr´esentation univari´ee est bien plus pertinente que la repr´esentation multivari´ee pour ´evaluer correctement la s´ecurit´e des registres filtr´es. Pour le cas des attaques alg´ebriques, c’est cette repr´esentation univari´ee qui donne exactement la valeur de la complexit´e lin´eaire de la suite produite, ce qui d´etermine pr´ecis´ement la s´ecurit´e de ce type de g´en´erateur. En effet, l’action de l’´equivalence monomiale sur la fonction de filtrage est bien plus simple `a d´ecrire lorsque l’on choisit la repr´esentation univari´ee que la repr´esentation multivari´ee.

Soit F une fonction bool´eenne donn´ee sous sa forme univari´ee, i.e. F (X) = 2n−2 X i=0 AiXi,

alors l’ensemble des fonctions bool´eennes dans la classe d’´equivalence de F est d´efini par les fonctions G dont la repr´esentation univari´ee

G(X) =

2n−2

X

i=0

BiXi

est obtenue en d´ecimant la repr´esentation univari´ee de F par un entier k premier avec (2n− 1), i.e.,

Bi= Aik mod (2n−1).

4.5.1 Complexit´e lin´eaire

Comme nous l’avons d´ecrit `a la section 4.3, l’attaque alg´ebrique la plus simple consiste `a collecter des ´equations (multivari´ees) liant l’´etat initial et la suite chiffrante. Dans ces conditions, la complexit´e de l’attaque d´epend du degr´e de la fonction de filtrage. Or, plutˆot que de lin´eariser le syst`eme, nous pouvons adopter une strat´egie compl`etement diff´erente et beaucoup plus performante : nous pouvons consid´erer la sortie du g´en´erateur filtr´e comme la sortie d’un unique LFSR (de taille bien plus grande). La taille de ce LFSR est la complexit´e lin´eaire Λ de la suite chiffrante (d´efinition 4.5). Cette valeur d´etermine exactement la complexit´e de r´esolution du plus petit syst`eme lin´eaire qui lie les bits de la suite chiffrante et l’´etat initial. Pour le cas particulier de la combinaison de registres, nous savons que la complexit´e lin´eaire croit suffisamment vite avec le degr´e de la fonction [Key76, Rue86]. En revanche, dans le cas des g´en´erateurs filtr´es, le th´eor`eme de Blahut [Bla83, MS94] implique que la valeur de la complexit´e lin´eaire Λ est enti`erement d´etermin´ee par le nombre de coefficients non nuls dans la repr´esentation univari´ee de la fonction de filtrage. Plus pr´ecis´ement, soit Ai ∈ F2n pour 0 ≤ i ≤ 2n− 2 les coefficients de la repr´esentation univari´ee de F , alors la complexit´e lin´eaire de la suite sortante d’un LFSR de polynˆome caract´eristique primitif et filtr´e par F est donn´ee par

Λ = #{0 ≤ i ≤ 2n− 2 : Ai6= 0} .

L’´equivalence monomiale correspond `a la d´ecimation par un certain entier k premier avec (2n− 1) des coefficients dans la repr´esentation univari´ee. La valeur des coefficients reste donc inchang´ee par cette transformation, ce qui nous permet d’assurer la proposition suivante.

Proposition 4.11(Invariance de la complexit´e lin´eaire). La complexit´e lin´eaire d’une suite engendr´ee par un LFSR filtr´e est un invariant pour l’´equivalence monomiale.

Une observation importante faite par Rønjom et Helleseth dans [RH07] est que la complexit´e lin´eaire est toujours plus petite que le nombre de monˆomes pr´esents dans l’attaque alg´ebrique classique. En effet, pour l’attaque alg´ebrique classique, le syst`eme lin´earis´e admet approximativement

deg f X i=1 n i 

inconnues. Or, on sait que le degr´e de la fonction monomiale Tr(λxk) est ´egal au poids de Hamming de k, c’est-`a-dire le nombre de 1 dans sa repr´esentation binaire. Ainsi, si l’on a une fonction bool´eenne de degr´e d, on sait que tous les coefficients Ak dans la repr´esentation univari´ee o`u wH(k) > deg f doivent n´ecessairement ˆetre nuls. Ainsi, la complexit´e lin´eaire Λ du g´en´erateur, i.e., le nombre de coefficients non nuls dans la repr´esentation univari´ee, est au plus le nombre d’entiers k tels que wH(k) ≤ deg(f ), ce qui correspond au nombre d’inconnues dans le syst`eme multivari´e lin´earis´e. Dans ces conditions, pour n’importe quel g´en´erateur filtr´e obtenu par ´equivalence monomiale, la meilleure attaque alg´ebrique a une complexit´e en donn´ees de O(Λ). La connaissance de Λ bits de suite chiffrante permet de d´eterminer l’´etat initial du registre en un temps de calcul lin´eaire en Λ. Cependant, la phase de pr´ecalcul consiste `a calculer la complexit´e lin´eaire engendr´ee par le g´en´erateur, ainsi que le polynˆome minimal de la suite chiffrante. Ceci peut ˆetre r´ealis´e en appliquant l’algorithme de Berlekamp-Massey (algorithme 2, page 69) au g´en´erateur filtr´e, initialis´e par une valeur arbitraire avec un coˆut quadratique en la complexit´e lin´eaire, i.e.en O(Λ2). Cette complexit´e peut ˆetre am´elior´ee en utilisant des techniques similaires `a celles employ´ees dans les attaques alg´ebriques rapides afin d’obtenir une complexit´e de l’ordre de O(Λ log2Λ) comme expliqu´e dans [RH07]. Comme ces attaques exploitent le spectre de Fourier de la fonction de filtrage, il est clair que l’´equivalence monomiale n’affecte en rien la complexit´e de ces attaques.

4.5.2 Attaques alg´ebriques

D’apr`es les observations pr´ec´edentes, Rønjom et Cid ont d´efini dans leur article l’immunit´e alg´ebrique g´en´eralis´ee [RC10, D´efinition 6], c’est-`a-dire la plus petite immunit´e alg´ebrique pour toutes les fonctions bool´eennes dans la classe d’´equivalence induite par le changement de racine primitive dans le corps fini F2n. Comme expliqu´e au chapitre 2 mais aussi `a la section 4.3, les attaques alg´ebriques permettent `a l’attaquant.e de diminuer le degr´e des ´equations liant l’´etat initial et les bits de la suite chiffrante en utilisant l’existence d’un annulateur de petit degr´e de la fonction de filtrage [CM03]. La mˆeme id´ee peut ˆetre utilis´ee afin d’am´eliorer les attaques alg´ebriques utilisant la repr´esentation univari´ee de la fonction. En d’autres termes, si le polynˆome repr´esentant la fonction de filtrage n’est pas creux mais que la fonction admet un annulateur creux, alors l’attaque peut ˆetre r´ealis´ee sur cet annulateur plutˆot que sur la fonction elle-mˆeme (comme pour les attaques alg´ebriques classiques). Ainsi, la complexit´e de la meilleure

attaque est d´etermin´ee par la plus petite complexit´e lin´eaire d’un annulateur de la fonction de filtrage. Cette quantit´e est d´efinie comme l’immunit´e spectrale de la suite sortante [GRHH11, D´efinition 1].

D´efinition 4.12(Immunit´e Spectrale). Soit s une suite binaire de p´eriode N , alors l’immunit´e spectraleSI(s) est d´efinie par

SI(s) = min

b∈FN 2

{Λ(b)|s · b = 0 ou (s + 1) · b = 0, b 6= 0}

Exemple 3. C’est cette propri´et´e particuli`ere qui a permis `a Sondre Rønjom [Røn15] de casser la famille de chiffrements `a flot Welch-Gong [NG05] dont les suites chiffrantes ont une faible immunit´e spectrale.

En utilisant la correspondance entre suites et fonctions bool´eennes [GG04], cette d´efinition s’´etend tout naturellement aux fonctions bool´eennes en consid´erant le nombre de coefficients non nuls dans la repr´esentation univari´ee. Ainsi, nous pourrons parler de complexit´e lin´eaire d’une fonction bool´eenne comme la com-plexit´e lin´eaire d’une suite engendr´ee par un g´en´erateur filtr´e par cette fonction. Nous discuterons de ce nouveau crit`ere cryptographique en prenant un peu de recul `a la conclusion. Or, pour tout annulateur G de F , nous avons toujours l’in´egalit´e Λ(G) ≤ deg G X i=0 n i  ,

impliquant directement que l’attaque exploitant la repr´esentation univari´ee est toujours plus performante que l’attaque classique.

Il nous reste `a montrer que l’´equivalence monomiale n’affecte pas non plus l’immunit´e spectrale de F .

Soit k un entier premier avec (2n− 1) et soit F0(x) = F (xk). Soit G0 un annulateur non-nul de F0. Par d´efinition G0 est un annulateur non-nul de F0

si et seulement si G(x) = G0(xr) est un annulateur non-nul de F , avec rk ≡ 1 mod (2n− 1). La complexit´e lin´eaire de G0est donc ´egale `a la complexit´e lin´eaire de G, annulateur de F . Dans ces conditions, une attaque alg´ebrique sur le g´en´erateur filtr´e par F a exactement le mˆeme coˆut que sur le g´en´erateur filtr´e par F0. Plus g´en´eralement, l’immunit´e spectrale des fonctions bool´eennes est invariante par l’´equivalence monomiale.

Proposition 4.13. L’´equivalence monomiale n’affecte pas la complexit´e des meilleures attaques alg´ebriques sur les g´en´erateurs filtr´es.