ATLAS Ouvrir dans l'atlas →

ExerciceMaths expertes, chapitre 4 — Congruences · Exercices d'approfondissement

Exercice 25 Clé de contrôle ISBN

DémonstrationCalcul

Jusqu'en 2007, les livres étaient identifiés par un numéro ISBN de dix chiffres a1a2…a10a_{1}a_{2}\dots a_{10}, le dernier, appelé clé, étant choisi dans ⟦0;10⟧\llbracket 0;10\rrbracket (la valeur 1010 s'écrivant X) de sorte que : S=10a1+9a2+8a3+⋯+2a9+a10≡0  [11].S=10a_{1}+9a_{2}+8a_{3}+\dots+2a_{9}+a_{10}\equiv 0\;[11].

1. Vérifier que le numéro fictif 22-76547654-32103210-44 est valide.

2. Déterminer la clé du numéro 22-12341234-56785678-a10a_{10}.

3. On commet une erreur sur un seul chiffre : aia_{i} est remplacé par bi≠aib_{i}\neq a_{i}. Montrer, à l'aide du lemme d'Euclide, que la nouvelle somme n'est plus divisible par 1111, donc que l'erreur est détectée.

4. Montrer de même que l'échange de deux chiffres consécutifs distincts est toujours détecté.

Corrigé

1. S=10×2+9×7+8×6+7×5+6×4+5×3+4×2+3×1+2×0+4=220=11×20S=10\times 2+9\times 7+8\times 6+7\times 5+6\times 4+5\times 3+4\times 2+3\times 1+2\times 0+4=220=11\times 20 : le numéro est valide\boxed{\text{valide}}.

2. Les neuf premiers chiffres donnent 20+9+16+21+24+25+24+21+16=176=11×16≡0  [11]20+9+16+21+24+25+24+21+16=176=11\times 16\equiv 0\;[11]. La clé doit donc vérifier a10≡0  [11]a_{10}\equiv 0\;[11] : a10=0\boxed{a_{10}=0}.

3. Le chiffre aia_{i} est affecté du poids w=11−i∈⟦1;10⟧w=11-i\in\llbracket 1;10\rrbracket. La nouvelle somme est S′=S+w(bi−ai)≡w(bi−ai)  [11]S'=S+w(b_{i}-a_{i})\equiv w(b_{i}-a_{i})\;[11]. Si 1111 divisait S′S', il diviserait le produit w(bi−ai)w(b_{i}-a_{i}), donc, 1111 étant premier, il diviserait ww ou bi−aib_{i}-a_{i} (lemme d'Euclide). C'est impossible, puisque 1⩽w⩽101\leqslant w\leqslant 10 et 1⩽∣bi−ai∣⩽101\leqslant|b_{i}-a_{i}|\leqslant 10. Donc S′≢0  [11]\boxed{S'\not\equiv 0\;[11]} et l'erreur est détectée.

4. Si l'on échange aia_{i} et ai+1a_{i+1}, de poids ww et w−1w-1, la somme varie de (wai+1+(w−1)ai)−(wai+(w−1)ai+1)=ai+1−ai,\big(wa_{i+1}+(w-1)a_{i}\big)-\big(wa_{i}+(w-1)a_{i+1}\big)=a_{i+1}-a_{i}, qui est non nul et de valeur absolue au plus 1010, donc non divisible par 1111 : l'erreur est détectée.

Le choix du nombre premier 1111 est essentiel : modulo 1010, avec un poids 22, la modification d'un chiffre de 55 unités passerait inaperçue.

Dans l'édifice

Thèmes

congruences, divisibilité, chiffres et critères de divisibilité, codage et cryptographie

Notions

entiers modulo n (anneau des)

Ouvrir dans l'atlas interactif →