Université de Bordeaux Master CSI
Collège Sciences et Technologies Cryptologie
Année 2017-2018
Corrigé du devoir surveillé du 28 Février 2018
Exercice 1– On a Pr(M = 0|C= 0) = 1, et sic6= 0Pr(M = 0|C=c) = 0. Mais Pr(M = 0) = 1/26n.
Exercice 2 –
1)Soient m∈ Metc∈ C. Pour fixer les idées, prenonsm=aetc= 1. Alors Pr(M =a|C= 1) = Pr(M =a, C= 1)
Pr(C = 1)
= Pr(M =a, K = i) Pr(C= 1)
= Pr(M =a)Pr(K = i) Pr(C= 1)
= 1/3×1/6 3/18
= 1/3
= Pr(M =a)
Les autres cas sont similaires par permutation. Le système est donc à confidentialité parfaite.
2)Un attaquant envoie par exemple 1. Ce message sera accepté si la clé est i, v ou vi. Dans les autres cas, on a toujours trois clés sur six compatibles. La probabilité d’imposture est donc de 3/6 = 1/2.
Cette fois-ci, il intercepte un chiffré et cherche à lui substituer un autre chiffré. Admettons qu’il intercepte par exemple 1. La clé utilisée est donc i, v ou vi. Il lui substitue un chiffré 6= 1qui a le plus de chance d’être accepté. Facilement on voit que c’est 2 ou 6 car parmi ces trois clés, deux font que le chiffré 2 ou 6 sera accepté, à savoir les clés i et vi pour 2, les clés v et vi pour 6. Pour 3 et 5 une seule clé convient (i et v respectivement). Pour 4, aucune. Les autres cas se traitent de la même façon. La probabilité de substitution est donc de 2/3.
Exercice 3 – La fonction inverse de Fi est Gi : AkB 7→ B +fi(A)kA et le déchiffrement correspond à G1◦G2◦G3. Si on note F la fonction de chiffrement et Gcelle de déchiffrement, on a
F :AkB 7→B⊕f2(A⊕f1(B))kA⊕f1(B)⊕f3(B⊕f2(A⊕f1(B))), G:AkB 7→B⊕f3(A)⊕f1(A⊕f2(B⊕f3(A)))kA⊕f2(B⊕f3(A)).
Si on déchiffre 0k0 on obtient
XLkXR=f3(0)⊕f1(f2(f3(0)))kf2(f3(0)).
Remarquons que
XL=f3(0)⊕f1(XR).
On chiffre0kXR et on obtient
YLkYR=XR⊕f2(f1(XR))kf1(XR)⊕f3(XR⊕f2(f1(XR))).
On a alors
XL⊕YR=f3(0)⊕f3(XR⊕f2(f1(XR))).
Déchiffrons YLkXL⊕YR. Le bloc de droite est
ZR=YL⊕f2(XL⊕YR⊕f3(YL)).
Or
f3(YL) =f3(XR⊕f2(f1(XR))) =YR⊕f1(XR).
On a donc
ZR=YL⊕f2(XL⊕f1(XR)) =YL⊕f2(f3(0)) =YL⊕XR. Exercice 4 –
1)L’algorithme de déchiffrement est
(1) m1 =DK(c1)⊕c0 =DK(c1)⊕IV ; (2) I1 = (0,0, . . . ,0)∈Fk2;
(3) Pour 26i6n,Ii =Ii−1⊕ci−1 etmi=DK(ci)⊕Ii.
2) Sii >0 et si ci est altéré, mi =DK(ci)⊕Ii (oùIi est correct) sera faux. De plus, Ii+1 sera faux, et doncmi+1 aussi. De mêmeIi+2 sera faux etmi+2 aussi. On voit en fait que tous les mj obtenus pour j>iseront erronés.
Si c’estc0qui est faux,m1 sera erroné mais lesmj avecj >1seront exacts (c0 n’intervient qu’en (1)).
Exercice 5 –
1) Les premiers termes de la suite u sont 1011011011. . .On voit que ui+3 =ui pour06i64 et pour i > 5 on procède par récurrence sur i en appliquant la relation de récurrence linéaire suivant le schéma ui+3=ui+2+ui−2 =ui−1+ui−5 =ui. La période de uvaut donc 3.
2)Si P(X) =X5+X4+ 1qui est le polynôme caractéristique de u est irréductible, la période de u (de vecteur initial non nul) est l’ordre de n’importe quelle racine de P(X) dans F×25. Elle doit donc diviser 31. Absurde.
3) Les premiers termes de v sont 10010111001011. . . On voit que vi+7 = vi pour 0 6 i 6 4 et pour i > 5 on procède par récurrence sur i en appliquant la relation de récurrence linéaire suivant le schéma vi+7 =vi+6+vi+2=vi−1+vi−5 =vi. La période dev vaut donc7.
4)On utilise la périodicité de u etv.
U(X) = 1 +X2+ (1 +X2)X3+ (1 +X2)X6+· · ·
= (1 +X2)(1 +X3+X6+· · ·)
= 1 +X2 1 +X3. On obtient de même
V(X) = 1 +X3+X5+X6+ (1 +X3+X5+X6)X7+ (1 +X3+X5+X6)X14+· · ·
= (1 +X3+X5+X6)(1 +X7+X14+· · ·)
= 1 +X3+X5+X6 1 +X7 .
5)On met les fractions précédentes sous forme irréductible. On obtient U(X) = (1 +X)2
(1 +X)(1 +X+X2 = 1 +X 1 +X+X2, V(X) = (1 +X)3(1 +X+X3)
(1 +X)(1 +X+X3)(1 +X2+X3) = (1 +X)2 1 +X2+X3. La complexité linéaire deu vaut 2, celle de v vaut 3.
6) Par la question précédente on connaît les polynômes de connexion minimaux de u et v, à savoir 1 +X+X2 et1 +X2+X3. On en déduit que u etv vérifient
ui+2=ui+1+ui et vi+3=vi+1+vi pour tout i>0.
En outre ces relations sont les plus courtes vérifiées paru etv.
7) Les polynômesX2+X+ 1et X3+X2+ 1 sont premiers entre eux. La complexité linéaire de u+v vaut donc 2 + 3 = 5.
De plus on a évidemment (u+v)i+21=ui+21+vi+21=ui+vi = (u+v)i. La période de u+v divise donc21. Comme ce n’est ni 1, ni 3 (carvi+3=vi pour toutiest faux), ni 7 (carui+7 =ui
pour tout iest faux), la période deu+v est 21.