Chiffrement et codes de contrôle - Exercice 3

25 min
40
Le numéro ISBN-13 d'un livre comporte 1313 chiffres a1a_{1}, a2a_{2}, …, a13a_{13}. Le dernier, a13a_{13}, est une clé de contrôle : c'est le chiffre entre 00 et 99 choisi pour que S=a1+3a2+a3+3a4+…+a11+3a12+a13≡0[10]S=a_{1}+3a_{2}+a_{3}+3a_{4}+\ldots+a_{11}+3a_{12}+a_{13}\equiv 0\left[10\right] (les chiffres de rang impair sont multipliés par 11, ceux de rang pair par 33).
Question 1

Calculer la clé du numéro dont les douze premiers chiffres sont 978  2  07  036822978\;2\;07\;036822.

Correction
On multiplie chaque chiffre par son poids :
9+21+8+6+0+21+0+9+6+24+2+6=1129+21+8+6+0+21+0+9+6+24+2+6=112, donc S=112+a13S=112+a_{13}.
Il faut 112+a13≡0[10]112+a_{13}\equiv 0\left[10\right], c'est-à-dire a13≡−112≡8[10]a_{13}\equiv -112\equiv 8\left[10\right], avec 0≤a13≤90\le a_{13}\le 9 :
a13=8a_{13}=8
Question 2

En recopiant ce numéro, un libraire remplace le chiffre 88 de rang 1010 par 55. L'erreur est-elle détectée ?

Correction
Le chiffre de rang 1010 a le poids 33 : la somme SS diminue de 3×(8−5)=93\times\left(8-5\right)=9.
On obtient S=120−9=111S=120-9=111, et 111≡1[10]111\equiv 1\left[10\right] : SS n'est plus congru à 00 modulo 1010.
L'erreur est détectée.
Question 3

Montrer qu'une erreur sur un seul chiffre est toujours détectée.

Correction
Soient mm un entier naturel (m≥2)\left(m \geq 2\right), aa, bb, cc et dd des entiers relatifs vérifiant : a≡b[m]\red{a} \equiv \red{b}\left[m\right] et c≡d[m]\blue{c} \equiv \blue{d}\left[m\right].
  • a+c≡b+d[m]\red{a}+\blue{c} \equiv \red{b}+\blue{d}\left[m\right]
  • a×c≡b×d[m]\red{a}\times\blue{c} \equiv \red{b}\times\blue{d}\left[m\right]
  • Pour tout entier naturel kk : ak≡bk[m]\red{a}^{k} \equiv \red{b}^{k}\left[m\right]
  • Supposons qu'un chiffre aa soit remplacé par un chiffre b≠ab\neq a. Alors d=b−ad=b-a est un entier non nul compris entre −9-9 et 99, et la somme SS est modifiée de dd (poids 11) ou de 3d3d (poids 33).
    D’une part :\red{\text{D'une part :}} dd n'est pas un multiple de 1010, car 0<∣d∣<100\lt \left|d\right|\lt 10.
    D’autre part :\red{\text{D'autre part :}} si l'on avait 3d≡0[10]3d\equiv 0\left[10\right], en multipliant par 77 on obtiendrait 21d≡021d\equiv 0, c'est-à-dire d≡0[10]d\equiv 0\left[10\right] (car 21≡1[10]21\equiv 1\left[10\right]), ce qui est impossible.
    Dans les deux cas, la nouvelle somme n'est plus congrue à 00 modulo 1010 :
    l'erreur est toujours détectée

    Signaler une erreur

    Aide-nous à améliorer nos contenus en signalant les erreurs ou problèmes que tu penses avoir trouvés.

    Connecte-toi ou crée un compte pour signaler une erreur.