Luhn-algoritme
Wat is het Luhn-algoritme?
Het Luhn-algoritme – ook bekend als het “Modulus 10-algoritme” – is een formule die wordt gebruikt om te bepalen of het identificatienummer dat door een gebruiker wordt verstrekt, juist is. De formule wordt veel gebruikt bij het valideren van creditcardnummers, evenals bij andere nummerreeksen, zoals socialezekerheidsnummers van de overheid (SSN’s).
Tegenwoordig is het Luhn-algoritme een essentieel onderdeel van het elektronische betalingssysteem en wordt het door alle gangbare creditcards gebruikt.
Belangrijkste leerpunten
- Het Luhn-algoritme is een wiskundige formule die eind jaren vijftig is ontwikkeld.
- Het wordt veel gebruikt om de authenticiteit van identificatienummers te valideren.
- In de financiële sector heeft het de verwerking van elektronische betalingen helpen verhogen door snel verkeerd ingevoerde creditcardnummers te identificeren.
Hoe het Luhn-algoritme werkt
Het formule-algoritme van LUHN is ontwikkeld door een Duitse computerwetenschapper genaamd Hans Peter Luhn in 1954 terwijl hij als onderzoeker bij IBM werkte. De exacte werking van het algoritme is gebaseerd op modulaire rekenkunde, een wiskundige techniek ontwikkeld door Carl Friedrich Gauss in het begin van de 19e eeuw. Hoewel de gedetailleerde werking nogal complex is, is het vooral bekend omdat het computers in staat stelt snel te beoordelen of de creditcardnummers die door klanten worden verstrekt, juist zijn.
De manier waarop het dit doet, is door een reeks berekeningen toe te passen op het opgegeven creditcardnummer, de resultaten van die berekeningen bij elkaar op te tellen en te controleren of het resulterende getal overeenkomt met het verwachte resultaat. Als dit het geval is, wordt het kredietnummer als geldig beschouwd. Als dit niet het geval is, weigert het algoritme het creditcardnummer, wat aangeeft dat de gebruiker een fout heeft gemaakt bij het invoeren van het nummer.
Vanuit het perspectief van de klant gebruiken we het Luhn-algoritme de hele tijd, zonder het zelfs maar te beseffen. Bij het online plaatsen van bestellingen of het gebruik van een verkooppunt (POS) -terminal van een handelaar, kunnen computersystemen snel zien wanneer we een fout hebben gemaakt bij het invoeren van onze informatie. Dit komt doordat het Luhn-algoritme is opgenomen in de programmering van die systemen. Zonder dit zouden we moeten wachten tot de volledige bestelling is ingediend voordat we ons realiseren of de transactie is goedgekeurd. Met andere woorden, het Luhn-algoritme helpt ons gebruikersfouten snel te identificeren en daardoor het tempo van transacties te versnellen. “
Voorbeeld uit de echte wereld van het Luhn-algoritme
Een van de centrale concepten binnen het Luhn-algoritme is het gebruik van zogenaamde “controlecijfers”. Deze cijfers bestaan uit cijfers die in de bredere cijferreeks worden ingevoegd om te helpen verifiëren, of “controleren”, of het hele nummer authentiek is.
Voor creditcards bestaat het controlecijfer uit een enkel cijfer dat aan het einde van het creditcardnummer wordt afgedrukt. In plaats van specifiek te worden gekozen door de creditcardmaatschappij, wordt het controlecijfer in plaats daarvan automatisch bepaald door het Luhn-algoritme, gebaseerd op de voorgaande cijfers in de reeks. Wanneer gebruikers hun creditcardnummers invoeren om transacties te voltooien, kan de betalingsverwerkingssoftware het Luhn-algoritme gebruiken om te detecteren of het opgegeven nummer correct is, gedeeltelijk op basis van het controlecijfer.
Tegenwoordig is het Luhn-algoritme geïntegreerd in populaire programmeertalen en codebibliotheken, waardoor het relatief eenvoudig is om op Luhn gebaseerde identificatie-nummerverificatie op te nemen in nieuwe softwaretoepassingen.