Calculateur de chiffre de contrôle de Luhn
Données
| Mode | Calculer le chiffre de contrôle |
|---|---|
| Nombre | 7992739871 |
Calculateur de chiffre de contrôle de Luhn
Calculez le chiffre de contrôle de Luhn (modulo 10) d’un nombre ou vérifiez si un nombre satisfait la somme de contrôle de Luhn. Fonctionne pour toute suite de chiffres : numéros d’identification, IMEI et codes-barres.
Données
Nombre
compute_hint
Résultats
Saisissez une valeur pour afficher les résultats.
Résultat
Chiffre de contrôle de Luhn
L’algorithme de Luhn — également appelé algorithme modulo 10 — est une formule de somme de contrôle qui protège les longs numéros d’identification contre les fautes de frappe accidentelles. Il fonctionne en ajoutant un chiffre supplémentaire, le chiffre de contrôle, dérivé de tous les autres chiffres. Un court test arithmétique sur le nombre complet révèle alors s’il est cohérent en interne. Hans Peter Luhn a décrit la méthode chez IBM en 1954, et elle est aujourd’hui normalisée dans le cadre de l’ISO/CEI 7812.
Ce calculateur propose deux modes : calculer un chiffre de contrôle pour un nombre qui n’en a pas encore, et valider si un nombre complet satisfait la condition de Luhn. Il fonctionne avec toute suite de chiffres et convient donc aussi bien aux numéros d’identification, aux identifiants d’appareils IMEI qu’aux codes-barres.
Comment fonctionne l’algorithme
En partant du chiffre le plus à droite et en progressant vers la gauche, un chiffre sur deux est doublé. Lorsque le doublement donne un nombre à deux chiffres, on additionne ses chiffres — ce qui revient à soustraire 9. Toutes les valeurs obtenues sont ensuite additionnées. Pour une charge sans chiffre de contrôle, le chiffre de contrôle vaut :
où est la somme pondérée. Un nombre complet est valide lorsque cette même somme pondérée, cette fois chiffre de contrôle inclus, est un multiple de 10.
Exemple résolu — 7992739871
Prenons la charge 7992739871 (l’exemple neutre de la spécification de l’algorithme). Numérotez les chiffres à partir de la droite, puis doublez un chiffre sur deux en commençant à la position 1 :
| Position (à partir de la droite) | Chiffre | Étape | Valeur |
|---|---|---|---|
| 1 | 1 | ×2 | 2 |
| 2 | 7 | — | 7 |
| 3 | 8 | ×2 | 16 → 7 |
| 4 | 9 | — | 9 |
| 5 | 3 | ×2 | 6 |
| 6 | 7 | — | 7 |
| 7 | 2 | ×2 | 4 |
| 8 | 9 | — | 9 |
| 9 | 9 | ×2 | 18 → 9 |
| 10 | 7 | — | 7 |
Les valeurs totalisent . Le chiffre de contrôle est donc :
En l’ajoutant, on obtient le nombre complet 79927398713. Pour valider ce nombre complet, la somme pondérée vaut 70, un multiple de 10 : il passe donc.
Quelles erreurs il détecte
Le chiffre de contrôle unique ne peut pas détecter toutes les erreurs, mais il est réglé sur les erreurs que les gens commettent réellement en recopiant de longs nombres :
- Toute erreur d’un seul chiffre — un chiffre mal tapé — est toujours détectée.
- La plupart des transpositions de deux chiffres adjacents sont détectées. La seule exception est l’échange de la paire 09 en 90 (et inversement), car ces deux-là produisent la même contribution pondérée.
Comme il utilise une somme pondérée en base 10, le schéma de Luhn est une vérification d’intégrité légère, et non un code correcteur d’erreurs : il peut indiquer que quelque chose est faux, mais pas quel chiffre l’est. Pour la correction d’erreurs, des outils de la théorie du codage comme une Calculateur de distance de Hamming ou un Calculateur de somme de contrôle CRC sont l’étape suivante appropriée.
Où apparaissent les chiffres de contrôle de Luhn
Le schéma modulo 10 est intégré à de nombreux formats d’identifiants du quotidien :
- Les numéros IMEI, les identifiants à 15 chiffres des téléphones mobiles, se terminent par un chiffre de contrôle de Luhn.
- Les numéros de cartes de paiement et de fidélité portent un chiffre de Luhn final pour qu’un terminal de point de vente puisse rejeter une faute de frappe évidente avant de contacter le réseau.
- Les numéros nationaux et fiscaux d’identification de plusieurs pays comportent un chiffre de Luhn.
- Les codes-barres de produits et d’expédition utilisent Luhn ou des variantes de modulo 10 étroitement liées.
Ce que réussir la vérification signifie et ne signifie pas
L’algorithme de Luhn est une formule publique sans clé secrète. Le réussir prouve seulement que les chiffres d’un nombre sont cohérents entre eux — jamais que le nombre a réellement été émis, enregistré ou qu’il appartient à quelqu’un. N’importe qui peut écrire une suite de chiffres qui satisfait la vérification.
C’est pourquoi Luhn est utilisé comme premier filtre rapide : rejeter immédiatement les saisies manifestement erronées et laisser le reste à une consultation officielle. C’est une aide à la qualité des données, et cet outil sert à comprendre le fonctionnement de la somme de contrôle et à tester des suites de chiffres quelconques comme des identifiants, des numéros IMEI et des codes-barres. Pour une vérification d’intégrité à clé et résistante à la falsification, on utiliserait plutôt une fonction de hachage cryptographique ; le Calculateur de probabilité de collision de hachage montre pourquoi la longueur de la somme de contrôle y est importante.
Questions fréquentes (FAQ)
Qu’est-ce que l’algorithme de Luhn ?
L’algorithme de Luhn, aussi appelé algorithme modulo 10, est une formule de somme de contrôle simple publiée par le scientifique d’IBM Hans Peter Luhn en 1954 et normalisée dans le cadre de l’ISO/CEI 7812. Il ajoute à un nombre un chiffre supplémentaire — le chiffre de contrôle — afin qu’un court test arithmétique détecte les fautes de saisie les plus courantes.
Pour calculer le chiffre de contrôle, on part du chiffre le plus à droite de la charge et on double un chiffre sur deux. Si le doublement donne un nombre à deux chiffres, on additionne ses chiffres (ce qui revient à soustraire 9). On additionne toutes les valeurs obtenues, et le chiffre de contrôle vaut (10 − somme mod 10) mod 10. Un nombre complet est valide lorsque cette même somme pondérée, chiffre de contrôle inclus, est un multiple de 10.
Où le chiffre de contrôle de Luhn est-il utilisé ?
Les chiffres de contrôle de Luhn figurent dans de nombreux numéros d’identification. L’IMEI qui identifie un téléphone mobile utilise un chiffre de Luhn, tout comme les numéros de compte des cartes de paiement et de fidélité, certains numéros nationaux d’identification et divers codes-barres de produits et d’expédition.
L’algorithme est conçu uniquement pour détecter les erreurs accidentelles : un seul chiffre mal tapé, ou la plupart des cas d’inversion de deux chiffres adjacents. C’est une aide à l’intégrité des données dans les formulaires et les scanners, et non un moyen de prouver qu’un identifiant est authentique ou enregistré.
Passer le test de Luhn signifie-t-il qu’un nombre est réel ?
Non. L’algorithme de Luhn est une formule publique sans clé secrète : le réussir signifie seulement que les chiffres sont cohérents entre eux, pas que le nombre a été attribué à quelqu’un. N’importe qui peut construire une suite de chiffres qui satisfait le test.
C’est pourquoi Luhn sert de premier filtre pour rejeter les saisies manifestement erronées avant une consultation officielle plus lente, jamais de preuve de validité ou de propriété. Cet outil sert à comprendre le fonctionnement de la somme de contrôle et à tester des suites de chiffres quelconques comme des identifiants, des numéros IMEI et des codes-barres.
Recommandations
Calculateur de probabilité de collision de hachage
Estimez la probabilité d'une collision de hachage par effet anniversaire parmi un ensemble de valeurs hachées, et déterminez le nombre d'éléments nécessaires pour atteindre 50 % de chance de collision pour une taille de hachage donnée.