[ Klik-Kanan.com ]
 
 Depan » Fokus Info Banner   Tentang Kami   Buku Tamu   Kontak 

Algoritma Cek Digit Pada Kartu Kredit
Oleh : Yohanes Nugroho

Algoritma Cek Digit Luhn

Algoritma cek digit  merupakan suatu algoritma yang digunakan untuk mengecek validitas suatu angka berdasarkan digit-digit yang membentuknya. Salah satu aplikasi sangat umum yang kita temui dalam kehidupan sehari-hari adalah proses pemasukan data barang belanjaan yang kita beli di supermarket yang kecil (yang masih menggunakan input manual, tidak menggunakan bar code reader). Mungkin kadang-kadang Anda melihat kasir kadang-kadang salah memasukan data sehingga muncul sedikit pesan kesalahan dan kemudian dia mengetik ulang kembali kode barang yang tercantum di barang. Pernahkah Anda berpikir bagaimana komputer bisa tahu bahwa nomor tersebut salah?. Jawabnya adalah dengan menggunakan cek digit, biasanya digit terakhir dari kode barang itu merupakan hasil operasi matematis terhadap digit-digit sebelumnya, sehingga jika ada kesalahan input langsung terdeteksi, misalnya kode barang adalah 98876768532 tetapi yang dimasukkan adalah 98876768533 komputer akan menganggap data ini salah. Andaikan cek digit ini tidak ada, dan setiap kode barang dibuat urut, komputer akan menganggap benar semua data yang dimasukkan, mungkin akan tercantum Anda membeli sebatang coklat Silver Queen padahal yang Anda beli adalah coklat merek lain.

Untuk algoritma cek digit Luhn, sebenarnya saya kurang mengerti sejarah cek digit dengan algoritma ini, tapi algoritma ini dipakai oleh semua bank besar yang mengeluarkan kartu kredit (Visa, MasterCard, Amex, Novus, dan mungkin masih banyak yang lain). Algoritma cek digit ini juga dipakai di kartu-kartu ATM, setidaknya yang sudah saya perhatikan kartu ATM Bank BNI dan BII sepertinya bank yang lain juga menggunakan cara ini. Ketika pihak Telkom memperkenalkan TeCC (Telkom Calling Card), algoritma ini juga dipakai.

Metode cek digit ini sebenarnya sederhana, hanya perlu tiga langkah untuk membuktikan apakah suatu kartu memenuhi algoritma cek digit Luhn, untuk kartu dengan jumlah digit genap (mis Visa [16 digit], MasterCard[16 digit], dan Novus[16 digit]) caranya sebagai berikut :

  1. untuk setiap digit pada posisi yang ganjil (saya menghitung digit mulai dari kiri dengan yang paling kiri adalah digit ke-1), kalikan nilainya dengan dua, jika hasilnya lebih dari 9, kurangi hasilnya dengan 9. Jumlahkan semua angka yang telah didapat itu.
  2. untuk setiap digit pada posisi genap, jumlahkan semua nilainya dan tambahkan hasilnya dengan hasil langkah pertama.
  3. jika hasil pada langkah kedua habis dibagi 10, berarti nomor kartu tersebut sah.

Mudah bukan?, untuk kartu dengan jumlah digit yang ganjil (misalnya Visa [13 digit], Amex [15 digit]) caranya sama, hanya saja pada langkah pertama yang dikalikan adalah digit pada posisi genap, dan pada langkah kedua yang dijumlahkan adalah digit pada posisi ganjil.

© 2001 Klik Kanan
Dilarang memperbanyak artikel yang terdapat pada situs ini tanpa seizin Klik Kanan.