şükela:  tümü | bugün
  • banka server'larini bo$ yere me$gul etmemek icin tasarlanmi$ basit bir pre-check mekanizmasi..
  • bildiğim kadarıyla sayının tek hanelerindeki rakamları (1,3,5 vs) 1 ile, çift hanelerindeki rakamları 2 ile çarpıp topladıktan sonra ortaya çıkan sonuç 10a bölünebilir ise numara validdir gibi..

    yani
    1234567890123 gibi bir sayıda, sağdan sola şöyle bi hareket izleniyor:
    (3+(2*2)+1+(1*2)+0+(9*2)+8+(7*2)+6+(5*2)+4+(3*2)+2+(1*2)) mod 10 = 0 ise, kart numarası valid, değil ise değil.
  • kredi kart sahtekarlığı yapmaya teşebbüs edenlerin öğrenmesi zorunlu bir hesaplama şeklidir. kredi kartının son hanesi hesaplamaya sokulmaz. hesap sonunda elde edilen sayı ile kredi kartının son hanesi aynı olmak zorundadır
  • 1960'lı yıllarda ibm'de çalışmakta olan hans peter luhn (1896-1964) tarafından bulunmuş algoritmanın adı
  • 2004 sonunda yapılan lisans üstü eğitim sınavında bu algoritmaya dayanan bir soru sorulmuştur.
  • sadece banka ve bankacılıkta değil, gsm operatorlerinin ürettiği sim kart, yemek firmalarının sağladığı kartlar * * * * için de kullanılan algoritmadır.
  • ibm bilim adamlarından hans peter luhn tarafından bulunan ve geliştirilen luhn algoritması; imei, kredi kartı gibi id'lerin numaralarını doğrulamak için kullanılan matematiksel bir algoritmadır. sanılanın aksine gsm şirketlerleri sim kart üretirken bu algoritmayı kullanmazlar.

    check yapacağımız id'nin geçerliliği mod 10 ile şöyle test edilir:

    1) kredi kartı veya imei kodunun sonundaki ikinci rakamdan başlanarak ve birer birer atlanarak (ikişerli şekilde) alınan rakamların iki katı alınır.

    örn: "1234 5678 9098 7654" numaralı kod "2 2 6 4 10 6 14 8 18 0 18 8 14 6 10 4" haline gelir.

    2) iki katı alınan sayılar sonucunda oluşmuş olan sayılar birbiriyle toplanır. (eğer '2' ile çarpma sonucunda iki basamaklı sayı oluştuysa haneleri toplanır. bir önceki işlemde sondan ikinci hanenin 10 çıkması gibi = 1+0=1 )

    2 katı toplamlar sonucunda "2 2 6 4 1 6 5 8 9 0 9 8 5 6 1 4" haline gelir.

    3) elde edilen rakamlar toplanır.

    "2+2+6+4+1+6+5+8+9+0+9+8+5+6+1+4=75"

    4) elde edilen toplam değerin 10'a göre modu alınır. eğer 10'a göre modu '0' ise check yapılan id geçerlidir, değilse geçersizdir.

    toplam değer: "75 mod 10 = 5"

    geçersizdir.

    buna benzer olan iban numarasının geçerliliğini kontrol etmek için ise sizi şuraya alabiliriz.