
Kredi kartı ile alışveriş yapmak istediğiniz zamanlarda bir çoğumuz kart numaramızı yanlış gireriz. Örneğin kart numaranızdaki 44371 yerine 44317 yazarsanız sistem sizden numaranızı tekrarlamanızı ister. Bu hatanın tespiti Luhn Algoritması sayesinde olur. Bir banka kartı numarasının geçerliliği için gerekli olan test, 1954’te IBM’de çalışan bir bilim insanı olan Hans Peter Luhn tarafından, çoğu insanın banka veya kredi kartı olmadan önce icat edildi.
Luhn Algoritması, kötü niyetli saldırılara karşı koruma sağlamak için değil, yanlışlıkla yapılan hatalara karşı koruma sağlamak için tasarlandı. Algoritmanın işleyişi, 19. yüzyılın başlarında Carl Friedrich Gauss tarafından geliştirilen matematiksel bir teknik olan modüler aritmetik üzerine kuruludur.

Luhn Algoritması Nasıl Çalışır?
Tipik bir 16 haneli kredi kartı numarasında, ilk 15 hane kartı veren banka tarafından belirlenmeketdir. Ancak kontrol basamağı olarak adlandırılan son hane, diğer tüm hanelere göre matematiksel olarak belirlenmektedir.

Bunun nasıl çalıştığını anlamak için gelin bir örnek yapalım. Öncelikle bir banka kartı numarasının 16 hanesini aralıklı olarak yazın. Sonucunda bu 16 haneyi 4 erli gruplara ayırdığımızda ve XY şeklinde gruplandırdığımızda görünümü X Y X Y X Y X Y X Y X Y X Y X Y biçiminde olacaktır. Şimdi diyelim ki kart numaranız 79927398713 biçiminde olsun. Şimdi en sağdaki basamaktan başlayarak, her ikinci basamağın yani X ile gösterdiğimiz sayıları iki ile çarpın.
Eğer iki basamaklı bir sayı elde ederseniz, yani sonucunuz 9’dan büyükse (ör., 6 × 2 = 12), o zaman çarpım sonucunda elde ettiğiniz basamakları ayrı ayrı toplamalısınız. (ör., 12: 1 + 2 = 3, 15: 1 + 5 = 6 ).Sonucunuz aşağıdaki gibi olacaktır.

Bir sonraki basamakta yapmanız gereken şey ise aşağıdaki görselde de gördüğünüz gibi bütün sayıları toplamak olacaktır. Sonrasında da sonucuna bakacaksınız. Eğer elde ettiğiniz sonucun son basamağı sıfır ise kredi kartınız sorunsuz çalışacaktır. Verdiğimiz örneğimizde toplam, 10 sayısının bir katı olan 70 olduğundan, hesap numarası muhtemelen geçerlidir.

Luhn Algoritması Nerede Kullanılıyor?
Fark ettiğiniz gibi oldukça basit bir algoritma olan Luhn algoritması daha evvelde dediğimiz gibi kökenlerini modüler matematikten alır. Bu nedenle “mod 10” algoritması olarak da bilinmektedir. Günümüzde Luhn Algoritması popüler programlama dillerine ve kod kitaplıklarına entegre edilmiştir. Bu da Luhn tabanlı kimlik numarası doğrulamasını yeni yazılım uygulamalarına dahil etmeyi kolaylaştırır. Bunun sonucunda Luhn algoritması Mastercard, American Express, Visa ve diğer tüm kredi kartları tarafından kullanılmaktadır.
Kredi kartı numaralarına ek olarak, bu algoritma aynı zamanda SIM kart numaralarındaki kontrol basamağını hesaplamak için de kullanılmaktadır. İşin en güzel tarafı tüm bunlar siz farkında olmadan arka planda olup biter. Çevrimiçi sipariş verirken veya bir satıcının satış noktası (POS) terminalini kullanırken, bilgisayar sistemleri bilgilerimizi girerken arka planda matematik bizim için çalışmaya devam eder. Sonucunda bunu bilmek bile güzel birşey.
Kaynaklar ve ileri okumalar:
- Luhn algorithm; Bağlantı: https://en.wikipedia.org/
- Luhn algorithm; yayınlanma tarihi: 18 Temmuz 2022; Bağlantı: https://www.geeksforgeeks.org/luhn-algorithm/
- What Is the Luhn Algorithm?; Bağlantı: https://www.investopedia.com/
- How Credit Card Numbers Work; Yayınlanma tarihi: 10 Ocak 2014; Bağlantı: https://www.gizmodo.com.au
Dip Not:
Matematiksel, 2015 yılından beri yayında olan ve Türkiye’de matematiğe karşı duyulan önyargıyı azaltmak ve ilgiyi arttırmak amacıyla kurulmuş bir platformdur. Sitemizde, öncelikli olarak matematik ile ilgili yazılar yer almaktadır. Ancak bilimin bütünsel yapısı itibari ile diğer bilim dalları ile ilgili konular da ilerleyen yıllarda sitemize dahil edilmiştir. Bu sitenin tek kazancı sizlere göstermek zorunda kaldığımız reklamlardır. Yüksek okunurluk düzeyine sahip bir web sitesi barındırmak ne yazık ki günümüzde oldukça masraflıdır. Bu konuda bizi anlayacağınızı umuyoruz. Ayrıca yazımızı paylaşarak da büyümemize destek olabilirsiniz. Matematik ile kalalım, bilim ile kalalım
Matematiksel