Günlük Hayatımızda Matematik

Luhn Algoritması İle Kredi Kartınız Nasıl Doğrulanır?

Tüm kredi ve banka kartlarının üzerinde genellikle 16 haneli basılı rakamlar yer alır. Bu rakamlar, bir kart için benzersiz bir hesap numarasını belirtir ve kartı veren kuruluş ve ilgili hesap hakkında bazı bilgileri saklar. Bu nedenle de belli bir modeli takip eder.

Çoğu kredi kartı ve banka kartı 16 hanelidir. Visa kartındaki ilk rakam 4, MasterCard’da 5 ve American Express’te 3’tür. Tüm bu kartlarda kart üzerindeki sayı dizisinin son rakamı kontrol numarasıdır. Check digit olarak isimlendirilen bu rakam, kredi kartı numarasının geçerli olup olmadığını kontrol etmektedir.

Tipik bir on altı haneli kredi kartı numarasında, ilk on beş hane ilgili banka tarafından belirlenmektedir. Ancak kontrol basamağı adı verilen son hane, diğer tüm hanelere göre matematiksel olarak oluşturulmaktadır. Bu rakam Luhn Algoritması ile üretilir.

Luhn Algoritması Nedir?

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 edilmiştir.

Modüler aritmetik, Carl Friedrich Gauss tarafından başyapıtı Disquisitiones Arithmeticae adlı eserinin ilk sayfasında tanıtıldı. Gauss bu kitabı henüz 21 yaşındayken tamamladı ve üç yıl sonra 1801 yılında da yayınlandı. Bu çalışma, önceki birçok çalışmayı bir araya getirerek sayı teorisinde devrim yarattı.

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.

Her ne kadar tüm hatalar tek bir kontrol basamağıyla tespit edilemese de yine de bir basamağın yanlış olup olmadığının anlaşılması mümkündür. Örneğin bir e-ticaret uygulaması bir kart numarasını doğrulamak zorunda kaldığında, geri kalan bilgiyi bankaya göndermeden önce bu son rakamı kontrol eder.

Luhn Algoritması Nasıl Çalışır?

Tipik bir 16 haneli kredi kartı numarasında, ilk 15 hane kartı veren banka tarafından belirlenmektedir. Ancak kontrol basamağı olarak adlandırılan son hane, diğer tüm hanelere göre matematiksel olarak atanır.

Bunun nasıl çalıştığını anlamak için gelin bir örnek yapalım. Öncelikle elimizde 16 haneli bir banka kartı olduğunu düşünelim. Diyelim ki kart numaranızın 15 hanesi 533361950371570 biçiminde olsun. Son haneyi ise x olarak kabul edelim. Şimdi en sağdaki basamaktan yani x’ten başlayarak her ikinci basamağın yani çift basamaklarda duyan 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.

Luhn Algoritması İle Kredi Kartınız Nasıl Doğrulanır?
Herhangi bir Kredi/Banka kartı için kontrol basamağını hesaplama örneği

Bir sonraki basamakta yapmanız gereken şey bütün sayıları toplamak olacaktır. Sonrasında da sonucuna bakacaksınız. Elde edilen toplam 48+x’tir, 10’a bölünebilir olmalıdır, ancak o zaman bu sayı geçerli bir kart numarasıdır. Bu durumda kontrol basamağındaki x rakamı 2 olmalıdır. Sonucunda 48+2 = 50 olduğu için toplam 10 sayısına bölünebilecektir.

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.

luhn algoritması

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. Ayrıca göz atmak isterseniz: Dewey Onlu Sınıflama Sistemi Ve ISBN Arasında Gizli Matematik


Kaynaklar ve ileri okumalar:


Size Bir Mesajımız Var!

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 veya Patreon üzerinden ufak bir bağış yaparak da büyümemize destek olabilirsiniz. Matematik ile kalalım, bilim ile kalalım.

Matematiksel

Sibel Çağlar

Merhabalar. Matematik öğretmeni olarak başladığım hayatıma 2016 yılında kurduğum matematiksel.org web sitesinde içerikler üreterek devam ediyorum. Matematiğin aydınlık yüzünü paylaşıyorum. Amacım matematiğin hayattan kopuk olmadığını kanıtlamaktı. Devamında ekip arkadaşlarımın da dahil olması ile kocaman bir aile olduk. Amacımıza da kısmen ulaştık. Yolumuz daha uzun ama kesinlikle çok keyifli.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu