• Aucun résultat trouvé

Immunit´e alg´ebrique restreinte

6.4 Immunit´e alg´ebrique `a poids fix´e

6.4.1 Immunit´e alg´ebrique restreinte

Soit S un sous-ensemble arbitraire de Fn

2 et f n’importe quelle fonction d´efinie sur S. On rappelle que dans le cas classique, l’immunit´e alg´ebrique d’une fonction f est d´efinie comme le plus petit degr´e alg´ebrique possible pour un annulateur non-nul de f ou de f + 1. Dans ces conditions, nous pouvons g´en´eraliser la d´efinition 2.20 du chapitre 2 lorsque l’on consid`ere un sous-ensemble d’entr´ees. D´efinition 6.27(Immunit´e alg´ebrique restreinte). Soit S un sous-ensemble de Fn2 etf ∈ Bn. Alors l’immunit´e alg´ebrique restreinte `aS de f est d´efinie par

AIS(f ) = min{deg(g)|gf = 0 ou g(f + 1) = 0 et g 6= 0 sur S}

Dans cette section, nous utilisons plusieurs fois une matrice particuli`ere que nous d´efinissons de la mani`ere suivante.

D´efinition 6.28. Soitd un entier et S un sous-ensemble non-vide de Fn 2, alors nous d´efinissons la matrice Md,S, de taille

d X i=0 n i ! × |S|

dont les lignes sont index´ees par les ´el´ementsu de Fn

2 tels quewH(u) ≤ d, et les colonnes sont index´ees par les ´el´ements x de S, et o`u

Md,S[u, x] = xu= n Y i=1 xui i

Exemple 10. Sur F42, prenons par exemple

S = {0001, 0101, 0111, 1111, 1101, 0100}

et d = 1. Alors en indexant les lignes par les u tels que wH(u) ≤ 1, i.e. {0000, 0001, 0010, 0100, 1000} on a : M1,S=       1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 0      

Sans faire d’hypoth`ese particuli`ere sur S, nous pouvons d’abord d´emontrer la proposition suivante qui g´en´eralise le travail de Courtois et Meier.

Proposition 6.29. Soit S un sous-ensemble non-vide de Fn

2 etf une fonction bool´eenne `a n variables. Soit d et e deux entiers positifs. Soit Md,S etMe,S deux matrices d´efinies par la d´efinition 6.28. Si les rangs de ces matrices v´erifient

rang(Md,S) + rang(Me,S) > |S| ,

alors il existeg ∈ Bn de degr´e plus petit quee, dont la restriction `aS est non nulle, ainsi qu’une fonction bool´eenneh `an variables de degr´e alg´ebrique plus petit que d, telles que la fonction gf co¨ıncide avec h sur S.

Dans le contexte classique (S = Fn

2), l’ensemble des monˆomes forme une famille libre et g´en´eratrice de l’espace vectoriel des fonctions bool´eennes, donc les matrices sont toujours de rang plein. Ce qui rend notre travail plus ardu ici, c’est la restriction `a l’ensemble S, qui implique des d´ependances entre les monˆomes : par exemple, les fonctions sym´etriques, lorsque S d´ecrit un espace de poids fixe appartiennent au noyau de cette matrice, ce qui implique que les matrices ne sont pas de rang plein, et que la condition sur le rang est celle qui est pertinente, puisqu’il est n´ecessaire que la fonction g que l’on multiplie `a f soit non identiquement nulle sur S.

D´emonstration. Soit Fd (respectivement Fe) une famille de monˆomes de degr´e plus petit que d (respectivement e), de taille maximale, et libre sur la restriction S. On note ces monˆomes de la mani`ere standard : xu, avec wH(u) ≤ d. Par d´efinition du rang de la matrice Md,S (respectivement Me,S), on a |Fd| = rang(Md,S) (respectivement |Fe| = rang(Me,S)).

Ensuite, nous consid´erons l’ensemble de fonctions Fef compos´e des fonctions obtenues par le produit des ´el´ements de Feavec la fonction bool´eenne f (avec des r´ep´etitions possibles). Par hypoth`ese, |Fd| + |Fef | est strictement sup´erieur `

a la dimension de l’espace des fonctions bool´eennes d´efinies uniquement sur la restriction S. Ainsi, il existe n´ecessairement une combinaison lin´eaire entre les ´el´ements de Fd et Fef , qui induit une fonction nulle sur S. En s´eparant d’un cˆot´e les ´el´ements venant de Fd et ceux de Fef , on obtient respectivement une

fonction h et une fonction g, telles que f g = h sur S. De plus, les restrictions de g et de h `a S sont n´ecessairement non-nulles, puisque les familles Fd et Fe ont ´et´e choisies libres sur S.

En appliquant la proposition 6.29 `a e = 0, n´ecessairement rang(M0,S) = 1, puisque la fonction constante `a 1 ne s’annule jamais, on obtient le corollaire qui suit.

Corollaire 6.30. Soit S un sous-ensemble non-vide de Fn

2 et f ∈ Bn. Soit d tel querang(Md,S) ≥ |S|, alors il existe une fonction bool´eenne `an variables de degr´e plus petit qued qui co¨ıncide avec f sur S.

Comme nous l’avons vu pr´ec´edemment, les monˆomes de degr´e strictement plus grand que k sont tous nuls lorsque l’on consid`ere une restriction `a des mots de poids inf´erieur `a k. Nous verrons dans la suite que ces monˆomes ne sont pas les seules fonctions qui sont dans le noyau de Md,S lorsque S correspond aux mots de poids fix´e. Il est donc n´ecessaire d’avoir en tˆete que le degr´e alg´ebrique peut d´ecroˆıtre en restreignant l’entr´ee.

Par ailleurs, nous pouvons assurer l’existence d’un annulateur de degr´e plus petit que e en appliquant la proposition 6.29 `a d = 0.

Corollaire 6.31. SoitS un sous-ensemble non-vide de Fn

2 et f une fonction bool´eenne `a n variables, Soit e tel que rang(Me,S) = |S|, alors il existe un annulateur non-nul de f sur S et de degr´e alg´ebrique au plus e.

Finalement, le cas de l’immunit´e alg´ebrique, qui consid`ere simultan´ement les annulateurs de f et ceux de f + 1, revient `a choisir e = d (comme dans le contexte classique).

Corollaire 6.32. SoitS un sous-ensemble non-vide de Fn

2 et f une fonction bool´eenne `an variables, Soit e tel que rang(Me,S) > |S|2 , alors il existeg de degr´e alg´ebrique au plus e, telle que gf ou g(f + 1) est nulle sur S, et g n’est pas identiquement nulle surS.

D´emonstration. En utilisant la mˆeme id´ee que dans [MPC04], nous reprenons les fonctions g et h obtenues dans la proposition 6.29. Ou bien g et h co¨ıncident sur S, et dans ce cas, on a gf + h = g(f + 1) = 0 sur S, ou bien ces deux fonctions ne co¨ıncident pas, et dans ce cas, en multipliant l’´egalit´e h = gf sur S par f , on obtient que hf = gf sur S, et donc (g + h)f = 0. Comme g et h ne co¨ıncident pas sur S et sont toutes deux de degr´e plus petit que d = e, on obtient bien une fonction annulatrice de f sur S et non-nulle sur S.

Finalement, nous pouvons borner sup´erieurement la valeur de l’immunit´e alg´ebrique lorsque l’on restreint nos entr´ees par le corollaire suivant.

Corollaire 6.33. L’immunit´e alg´ebrique de n’importe quelle fonction bool´eenne restreinte `aS est born´ee sup´erieurement par

min  e; rang(Me,S) > |S| 2  .

A priori, sans faire d’hypoth`eses sur la structure de S, on ne peut pas pr´evoir quelle sera la valeur de rang(Me,S). Ainsi, les bornes sur l’immunit´e alg´ebrique ne peuvent ˆetre obtenues qu’en investiguant cette matrice, et ce pour tous les sous-ensembles que l’on devra consid´erer. Comme notre analyse s’axe autour du chiffrement FLIP, nous ´etudions cette matrice lorsque S = Sn,k.

6.4.2 Immunit´e alg´ebrique pour des entr´ees de poids de