K­r­e­d­i­ ­K­a­r­t­ı­ ­N­u­m­a­r­a­l­a­r­ı­n­d­a­k­i­ ­G­i­z­l­i­ ­A­l­g­o­r­i­t­m­a­:­ ­B­i­r­k­a­ç­ ­B­a­s­i­t­ ­İ­ş­l­e­m­ ­Y­a­p­a­r­a­k­ ­H­e­m­e­n­ ­S­i­z­ ­d­e­ ­D­e­n­e­y­e­b­i­l­i­r­s­i­n­i­z­

K­r­e­d­i­ ­K­a­r­t­ı­ ­N­u­m­a­r­a­l­a­r­ı­n­d­a­k­i­ ­G­i­z­l­i­ ­A­l­g­o­r­i­t­m­a­:­ ­B­i­r­k­a­ç­ ­B­a­s­i­t­ ­İ­ş­l­e­m­ ­Y­a­p­a­r­a­k­ ­H­e­m­e­n­ ­S­i­z­ ­d­e­ ­D­e­n­e­y­e­b­i­l­i­r­s­i­n­i­z­

Hans Peter Luhn, Luhn algoritmasının yaratıcısı ve günümüzde kullandığımız tüm kredi kartı numaralarının oluşturulmasını sağlayan bilim insanıdır. Bu algoritma çok ileri düzey bir matematik gerektirmese de oldukça kullanışlı ve düzenlidir.

Luhn algoritması 1950'li yıllardan itibaren kullanılmaya başlandı. Peki tam olarak çalışma mantığı nedir? Kredi kartı numaraları Luhn algoritması ile kolaylıkla bulunabilir mi? Bu yazımızda bu iki soruya odaklanacağız.

Tabii ki burada 16 haneli kredi kartı numarası üzerinden hesaplar yapmadık. Düşünelim ki 12345 sayısına sahibiz. Başlangıç değeri dahil olmak üzere ikişerli atlayarak gittiğimiz sayıları 2 ile çarparız ve çarpma işleminden sonra toplarız. Yapılan işlem 1*2+3*2+5*2'dir.

İki ile çarpma durumunda eğer çarpım değeri 10 ve 10'dan büyükse basamaktaki rakamları toplarız. Örneğimize odaklandığımızda 5*2 mevcut. Çarpım sonucu 10 olduğu için 1+0 işlemi gerçekleştirilir ve 1 elde edilir. 

İşlemlerin sonucunda 2+6+1=9 sonucuna ulaştık. Tabii ki iki işlem daha yapmamız gerekli. Boşta sayılarımız kaldı. Şimdi boştaki sayıları(2 ve 4) da alalım ve 9 ile toplayalım. 9+2+4=15 sonucuna ulaştık. Son olarak elde ettiğimiz değeri 10'a böleriz. Kalanı 0 elde etmemiz durumunda bu numaraların gerçek bir kredi kartı olduğu anlaşılır. Eğer kalan 0'dan farklı bir değer ise gerçek bir kredi kartı numarası değildir.

Luhn algoritmasının çalışma mantığına baktığımızda oldukça basit bir mantığı bulunuyor. Üstelik, yazılım dillerinden faydalanarak el ile hesap yapmadan otomatik bir şekilde kart numaralarını bulabiliriz.

Bu duruma endişeli yaklaşmayın. Kredi kartı numarasının kolay bulunması, diğer bilgilerin de kolay bulunabilirliği anlamına gelmiyor. Yani kredi kartlarınız sanıldığından çok güvenli bir şekilde oluşturulur.

Biraz uzaklara gidelim, Afrika taraflarına. Güney Afrika, kimlik kartlarını oluştururken Luhn algoritmasından yararlanmaktadır. Bu sefer de hiç uzaklara gitmeyelim, telefonunuzu elinize alın ve *#06# kombinasyonunu telefonunuzda aratın.

Görüntüleyeceğiniz numaralar telefonunuzun IMEI numarasıdır. IMEI numaraları da Luhn algoritmasına göre oluşturulmuştur. Çok etkileyeci değil mi?

Malum bugün okullarda ve çeşitli eğitim kurumlarında ezbere matematik anlatımı yapılıyor. Hepimiz bir kere de olsa matematik dersinde "Ben bunu öğrendim, şimdi benim ne işime yarayacak?" şeklinde soru sormuşuzdur.

Bir yazılım eğitmeni olarak şunu söyleyebilirim ki günlük hayattaki her şeyde matematiğin izi var. Luhn algoritması da bunlardan sadece bir tanesi.

İLGİLİ HABER

Çöpçatanlık Uygulamalarında Bir Türlü Eşleşemeyenler Toplansın: Algoritmayı Nasıl Sıfırlayabilirsiniz?

İLGİLİ HABER

Sadece Algoritmik Bir Zekaya Sahip Olanların Çözebileceği "İki Kova Problemi"

Popular Articles

Latest Articles