Kredi Kartı Numaraları Nasıl Belirlenir?
Hemen hepimiz kredi kartı kullanıyoruz. Sonuçta paranın bizim cebimizden çıktığını bile bile keyifle yanımızda taşıyor, puan kazandıkça mutlu oluyoruz.
Bildiğimiz gibi bu kartların üstlerinde 16 haneden oluşan bir sayı yer alıyor. İlk bakışta rastgele rakamlardan oluşuyormuş gibi görünen bu numaraların aslında bazı özellikleri var.
Kartın üzerindeki numaranın ilk haneleri, kredi kartı tipini tarif ediyorlar. 4- rakamı ile başlayanlar Visa; 51-, 52-, 53-, 54-, 55- ile başlayanlar Mastercard… American Express ise 34- ve 37- ile başlıyor. Listenin tamamını görmek isteyenleri şöyle alalım.
Aşağıda bu yazı için hazırlanmış örnek bir kredi kartı var:
Kontrol Hanesi
Kredi kartı numaraları, ATMlere girilir, internette kullanılır, evraklara yazılır. Bütün bu aşamalarda numaraların yazımında hata yapılabilir. Hata ihtimalini olabildiğince azaltmak için, kredi kartı numaralarına bir kontrol hanesi eklenmiştir.
Tipik 16 haneli bir kredi kartı numarasının ilk 15 hanesi bankaca belirlenir. Ancak kontrol hanesi olarak isimlendirilen son hane, diğer hanelere göre matematiksel olarak belirlenen bir rakamdır.
Kontrol hanesinin belirlenmesi için kullanılan matematik formülü, IBM mühendislerinden Hans Peter Luhn tarafından 1954 yılında oluşturulur.
Elbette tek bir kontrol hanesiyle bütün hataların tespit edilebilmesi mümkün değildir. Sonuçta 10’da bir ihtimalle doğru rakam yazılabilir. Ancak Luhn algoritmasının, tek hanede yapılan hataları tespit ediyor oluşu güçlü tarafıdır. Mesela 9 rakamını yanlışlıkla 6 olarak yazarsanız, kontrol hanesine takılır. Bunun dışında birbirini takip eden iki hanenin yerlerinin yanlış yazılmasını da neredeyse her zaman engeller. Bu hataların kredi kartı numaralarını yazma sırasında sıkça yapıldığı göz önünde bulundurduğumuzda, kontrol hanesinin her gün belki binlerce kere işe yaradığını anlayabiliriz.
Luhn Algoritması
Kendisinden bu kadar bahsettikten sonra, kontrol hanesinin nasıl hesaplandığını anlatmamak olmaz. Üstelik hesaplaması da gayet kolay:
Sağdan saymaya başlayarak her çift hanedeki rakam 2 ile çarpılır. Sonuç 2 haneli çıkarsa, bu iki hane toplanarak tek bir hane elde edilir. (Mesela 5 sayısı varsa, 2 ile çarpılıp 10 elde edilir. 1 ve 0 toplanır, 1 sonucu çıkar.)
Daha sonra elde edilen bu sayılar ve tek hanelerdeki sayılar toplanır. Çıkan sayıyı (örneğimizde 67), 10’un katlarına tamamlayacak rakam (Örneğimizde 70-67=3) kontrol hanemizi oluşturur.
5457623898234113
Hepsi bu kadar!
Diğer Alanlar
Numaraların doğru yazılıp yazılmadığını anlamak için kontrol hanelerinden yararlanmak, bir çok alanda kullanılagelen bir şey. Kitap ve süreli yayınların ISBN numaraları, araçların VIN numaraları, barkodlar bu alanlardan sadece bazıları…
Daha fazlasını öğrenmek isteyenler için ekleyelim: Piyasadaki tek kontrol hanesi algoritması Luhn’ınki değil elbette. Verhoeff algoritması (1969) ve Damm algoritması (2004) da kullanılabiliyor. Bunlar daha karmaşık algoritmalar ve hataların tespitinde daha başarılılar.