Algorytm Luhna
Co to jest algorytm Luhna?
Algorytm Luhna — znany również jako „algorytm modułu 10” — to formuła używana do określenia, czy numer identyfikacyjny podany przez użytkownika jest dokładny. Formuła jest szeroko stosowana w walidacji numerów kart kredytowych,. a także innych sekwencji numerów, takich jak rządowe numery ubezpieczenia społecznego (SSN).
Obecnie algorytm Luhna jest niezbędnym elementem elektronicznego systemu płatności i jest używany przez wszystkie główne karty kredytowe.
Jak działa algorytm Luhna
Algorytm formuły LUHN został opracowany przez niemieckiego informatyka Hansa Petera Luhna w 1954 roku podczas pracy naukowej w IBM. Dokładne działanie algorytmu opiera się na arytmetyce modularnej, technice matematycznej opracowanej przez Carla Friedricha Gaussa na początku XIX wieku. Chociaż jego szczegółowe działanie jest dość złożone, najbardziej znany jest z tego, że umożliwia komputerom szybką ocenę, czy numery kart kredytowych podane przez klientów są dokładne.
Robi to poprzez zastosowanie serii obliczeń do podanego numeru karty kredytowej, zsumowanie wyników tych obliczeń i sprawdzenie, czy otrzymana liczba jest zgodna z oczekiwanym wynikiem. Jeśli tak, numer kredytu jest uważany za ważny. Jeśli nie, algorytm odrzuci numer karty kredytowej, wskazując, że użytkownik popełnił błąd podczas wprowadzania numeru.
Z perspektywy klienta cały czas korzystamy z algorytmu Luhna, nawet nie zdając sobie z tego sprawy. Podczas składania zamówień online lub korzystania z terminala handlowego (POS),. systemy komputerowe są w stanie szybko stwierdzić, kiedy popełniliśmy błąd podczas wprowadzania naszych informacji. Dzieje się tak, ponieważ algorytm Luhna został włączony do programowania tych systemów. Bez niej musielibyśmy poczekać, aż całe zamówienie zostanie złożone, zanim zorientujemy się, czy transakcja została zatwierdzona. Innymi słowy, Algorytm Luhna pomaga nam szybko identyfikować błędy użytkowników, a tym samym przyspieszać tempo transakcji.
Rzeczywisty przykład algorytmu Luhna
Jedną z głównych koncepcji algorytmu Luhna jest użycie tak zwanych „cyfr kontrolnych”. Cyfry te składają się z cyfr, które są wstawiane do szerszej sekwencji numerów, aby pomóc zweryfikować lub „sprawdzić”, czy cały numer jest autentyczny.
W przypadku kart kredytowych cyfra kontrolna składa się z jednej cyfry wydrukowanej na końcu numeru karty kredytowej. Zamiast być konkretnie wybieraną przez firmę obsługującą karty kredytowe, cyfra kontrolna jest automatycznie określana przez algorytm Luhna, na podstawie poprzednich liczb w sekwencji. Gdy użytkownicy wprowadzają numery swoich kart kredytowych w celu sfinalizowania transakcji, oprogramowanie do przetwarzania płatności może użyć algorytmu Luhna, aby wykryć, czy podany numer jest dokładny, częściowo na podstawie jego cyfry kontrolnej.
Obecnie algorytm Luhn jest zintegrowany z popularnymi językami programowania i bibliotekami kodów, dzięki czemu stosunkowo łatwo można włączyć weryfikację numeru identyfikacyjnego opartą na Luhn w nowych aplikacjach.
Przegląd najważniejszych wydarzeń
Algorytm Luhna to wzór matematyczny opracowany pod koniec lat pięćdziesiątych.
W finansach pomogło zwiększyć przetwarzanie płatności elektronicznych poprzez szybką identyfikację błędnie wprowadzonych numerów kart kredytowych.
Jest szeroko stosowany do sprawdzania autentyczności numerów identyfikacyjnych.