• p. 48 (Exercice 2.7) – Dans la question 3, nous avons LiR = KR ⋘ a i et LiL = KL ⋘ a i (de même avec  ˜
LiR et  ˜
LiL et il faut remplacer K i par K dans la suite de la correction). Il faut également changer la conclusion en : Nous en déduisons (KR ⋘ j) =  ˜
KR et (KR ⋘ j) =  ˜
KR pour tout nombre impair j.
  • p. 60 Le polynôme a(X) de A est défini par a(X) = {03}X3 + {01}X2 + {01}X + {02} (le coefficient de degré 2 est {01} au lieu de {02}). Le système linéaire de la page 61 doit être modifié de la même façon (mais le résultat est correct).
  • p. 63 Rconi ne fait qu’un octet, donc dans la définition de w4i, le “ou exclusif” se fait avec Rconi seulement pour le premier octet.
  • p. 67 (Exercice 2.18) Dans la question 2, il faut considérer m = n (comme dans la question 3).
  • p. 72 La valeur hexadécimale de 1101 est D (et non pas E) ! La valeur de S1(011011) est donc 0101 puisque la valeur 5 = 0101 est à l’intersection de la ligne 1 et de la colonne D.
  • p. 97(Exercice 3.10) Il ne faut pas considérer F la fonction de tour de DES avec échange des parties droite et gauche car il ne s’agit pas d’une involution. L’argument est correct si on remplace FK1 par une fonction F1 qui est la fonction de tour avec la clé K1 sans cet échange et la fonction FK2 par une fonction F2 qui est à la fonction de tour avec la clé K2 précédée et suivie de l’échange des parties droite et gauche (dans ce cas F1 et F2 sont bien des involutions).
  • p. 129 (Exercice 4.10) – Il faut prendre ℓ = ℓ1 + ℓ2 + ℓ3
  • p. 104 (Exercice 3.13) – Les valeurs numériques sont fausses : la valeur de p64,256 est proche de exp(-27)∕exp(-2-57) ≃ 2-184 (au lieu de 2-92) et il y a 256 clés possibles pour chaque tour (et non pas 248). Le coût de l’attaque de la question 3 est donc de 236 ⋅ 256 chiffrements DES pour la clé du dernier tour et, 257 pour celle du troisième tour et 256 pour les deux autres, soit un coût total de 1∕4⋅(292 +257 +2⋅256) ≃ 290 chiffrements complets Ladder-DES.
  • p. 150 (Exercice 5.4) – Il faut prendre γ1 = h (et non pas g)
  • p. 159-160 (Problème 5.7) – Il faut supposer que q est un nombre premier. La matrice à considérer pour la question 6 est la matrice à k + 1 colonnes et k lignes :
    ⌊                          ⌋
 e1,1 e2,1  ...  ek,1  ek+1,1
||e1,2 e2,2  ...  ek,2  ek+1,2||
|  ..              ..     ..  |
⌈  .              .     .  ⌉
 e1,k e2,k  ... ek,k  ek+1,k
  • p. 166 (Exercice 5.9) – N’importe quoi ! Dans l’analyse heuristique, il faut lire N et s de l’ordre de √ --
  T (au lieu de N et T) et les logarithmes discrets de xi et yj sont donc dans un intervalle de longueur O(T). Par conséquent, si l’on précalcule, les élements gF(x) comme indiqué dans l’Algorithme 5.8, la complexité en mémoire n’est pas constante. On peut donc soit les recalculer à chaque fois ce qui donne une complexité en temps en O(√ --
  T log(T)) (et O(1) en mémoire), soit considérer une fonction F : 𝔾-→{1,…,s} qui ne prend qu’un nombre constant de valeurs différentes α1, . . ., αc dans {1,…,s} (de moyenne s∕2) et seules les élements gα1, . . ., gαc sont précalculés.
  • p. 191 (Exercice 6.7) – Dans la question 1, il faut montrer que n est premier si et seulement si n divise les coefficients binomiaux indiqués.
  • p. 198 Dans le nombre d’opérations de la méthode de Fermat, il faut remplacer (√ --
  n-α)2 ∕2c par (√ --
  n - α)2 ∕2α.
  • p. 225 (Exercice 7.1) – Dans l’algorithme 7.1, après y ← y2, il faut remplacer k ← k +1 par ℓ ← ℓ + 1. Dans la conclusion, c’est la probabilité que x(ed-1)∕2k⁄= ± 1 qui est supérieure à 1∕2 pour x uniformément aléatoire dans ℤN*.
  • p. 227 (Problème 7.3) – La question 4 n’est pas énoncée . . .elle est identique à la question 3 en remplaçant δ par γ (i.e. Montrer comment transformer tout algorithme polynomial calculant γ(z) pour tout z ∈ ℤN* en un algorithme polynomial qui inverse la fonction RSA).
  • p. 242 (Exercice 7.13) – Il faut prendre g = g1(p-1)∕q1e1…g ℓ(p-1)∕qℓeℓ.
  • p. 244 (Description du chiffrement d’ElGamal) – Il est écrit “le signataire” mais il s’agit de l’utilisateur.
  • p. 265 (Exercice 8.8) – Précision : après la question (4a), la condition (ii’) remplace évidemment la condition (ii) et puisqu’on suppose qu’il est impossible de calculer un multiple de r, la condition (iv) n’est plus supposée.