Luhn Algoritması ~ Discover the Security

Luhn Algoritması

Luhn Algoritması

0

Luhn Algoritması, 1954 yılında, Hans Peter Luhn isimli bilim insanı tarafından geliştirilmiş bir algoritmadır. Luhn algoritması, günümüzde kredi kartı numaralarında kullanılan bir algoritma’ dır.

Kredi Kartı Numaraları Nasıl Doğrulanır?

Kredi kartı numaraları toplamda 16 haneden oluşmaktadır. 16 haneyi 4 erli gruplara ayırdığımızda ve XY şeklinde gruplandırdığımızda aşağıdaki şekilde olacaktır.

X Y X Y    X Y X Y    X Y X Y    X Y X Y

İlk olarak Y grubundaki sayıları toplayalım.

İkinci adım olarak X grubundaki sayıları 2 ile çarpıp, çıkan sonucu toplayalım.

Sonuçları toplayıp, çıkan sonucu mod10 yaparsak, kalan 0 a eşit olmalıdır. Eğer bu şartları karşılayan 16 haneli bir sayı grubu varsa, bunun bir kredi kartı numarası olma ihtimali çok yüksektir.

Luhn
Örnek

Örnek olarak aşağıdaki 16 haneli sayı, bir kredi kartı numarası mı, tespit edelim.

4417-1234-5678-9113

4, 7, 2, 4, 6, 8, 1, 3 rakamları için;

4 + 7 + 2 + 4 + 6 + 8 + 1 + 3 = 35

4, 1, 1, 3, 5, 7, 9, 1 rakamlarını 2 ile çarparsak sırasıyla 8, 2, 2, 6, 10, 14, 18, 2 sayılarını elde ederiz. Elde ettiğimiz sayıların basamaklarındaki rakamları toplarsak;

8 + 2 + 2 + 6 + 1 + 0 + 1 + 4 + 1 + 8 + 2 = 35

Sonrasında X grubunda yapılan işlemin sonucunu ve Y grubunda yapılan işlemin sonucunu topladığımızda ve işlem sonucunu 10 a böldüğümüzde kalan 0 olmalıdır.

35 + 35 = 70 yapar.

70 / 10 kalan 0 dır.

Dolayısıyla 4417-1234-5678-9113 bir kredi kartı numarasıdır.

Vakit bulduğum zaman kredi kartı, TC kimlik numarası, IBAN numarası veya diğer sosyal kimlik numaralarını hesaplayan bir araç geliştirmeyi planlıyorum. 🙂

Geliştirirsem burada yayınlayacağım.

Leave A Reply

Your email address will not be published.