18 avril 2021 8:01

Algorithme de Luhn

Qu’est-ce que l’algorithme de Luhn?

L’algorithme de Luhn – également appelé «algorithme du module 10» – est une formule utilisée pour déterminer si le numéro d’identification fourni par un utilisateur est exact. La formule est largement utilisée pour valider les numéros de carte de crédit, ainsi que d’autres séquences de numéros telles que les numéros de sécurité sociale (SSN) du gouvernement.

Aujourd’hui, l’algorithme de Luhn est un composant essentiel du système de paiement électronique et est utilisé par toutes les principales cartes de crédit.

Points clés à retenir

  • L’algorithme de Luhn est une formule mathématique développée à la fin des années 1950.
  • Il est largement utilisé pour valider l’authenticité des numéros d’identification.
  • Dans le domaine de la finance, il a contribué à accroître le traitement des paiements électroniques en identifiant rapidement les numéros de carte de crédit mal saisis.

Comment fonctionne l’algorithme de Luhn

L’algorithme de formule LUHN a été développé par un informaticien allemand nommé Hans Peter Luhn en 1954 alors qu’il travaillait comme chercheur chez IBM.  Le fonctionnement exact de l’algorithme est basé sur l’arithmétique modulaire, une technique mathématique développée par Carl Friedrich Gauss au début du XIXe siècle. Bien que son fonctionnement détaillé soit plutôt complexe, il est surtout connu pour permettre aux ordinateurs d’évaluer rapidement si les numéros de carte de crédit fournis par les clients sont exacts.

Pour ce faire, il faut appliquer une série de calculs au numéro de carte de crédit donné, additionner les résultats de ces calculs et vérifier si le nombre résultant correspond au résultat attendu. Si tel est le cas, le numéro de crédit est considéré comme valide. Sinon, l’algorithme rejettera le numéro de carte de crédit, indiquant que l’utilisateur a commis une erreur lors de la saisie du numéro.

Du point de vue du client, nous utilisons l’algorithme de Luhn tout le temps, sans même nous en rendre compte. Lors de la passation de commandes en ligne ou en utilisant le terminal de point de vente (PDV) d’ un commerçant, les systèmes informatiques sont en mesure de savoir rapidement si nous avons commis une erreur lors de la saisie de nos informations. C’est parce que l’algorithme de Luhn a été incorporé dans la programmation de ces systèmes. Sans cela, nous aurions besoin d’attendre que la totalité du bon de commande soit soumise avant de savoir si la transaction a été approuvée. En d’autres termes, l’algorithme de Luhn nous aide à identifier rapidement les erreurs des utilisateurs et à accélérer ainsi le rythme des transactions. »

Exemple réel de l’algorithme de Luhn

L’un des concepts centraux de l’algorithme de Luhn est l’utilisation de «chiffres de contrôle». Ces chiffres se composent de nombres qui sont insérés dans la séquence de nombres plus large afin d’aider à vérifier, ou «vérifier», si le nombre entier est authentique.

Pour les cartes de crédit, le chiffre de contrôle se compose d’un seul chiffre imprimé à la fin du numéro de carte de crédit. Plutôt que d’être spécifiquement choisi par la société de carte de crédit, le chiffre de contrôle est à la place automatiquement déterminé par l’algorithme de Luhn, sur la base des numéros précédents dans la séquence. Lorsque les utilisateurs entrent leurs numéros de carte de crédit pour effectuer des transactions, le logiciel de traitement des paiements peut utiliser l’algorithme de Luhn pour détecter si le numéro spécifié est exact, en partie sur la base de son chiffre de contrôle.

Aujourd’hui, l’algorithme de Luhn est intégré dans les langages de programmation et les bibliothèques de codes populaires, ce qui rend relativement facile d’inclure la vérification du numéro d’identification basée sur Luhn dans les nouvelles applications logicielles.