Rahasia Sebuah Nomor Kartu Kredit
Pemberitahuan: Kami tidak mengajarkan pembaca untuk bermian main dengan nomor kartu kredit, tapi kami hanya mengajarkan konsep dasar bagaimana perhitungan didalam sebuah nomor kartu kredit - CEO Radicaltech - | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pernahkan Anda memiliki keinginan untuk membuat script untuk mengecek valid tidaknya nomor dari sebuah kartu kredit ? Tulisan dibawah ini akan menjelaskan hal tersebut agar Anda bisa membuat script untuk pengecekan nomor kartu kredit sendiri.
Pada dasarnya semua nomor kartu kredit menggunakan algoritma cek digit, yaitu sebuah algoritma yang digunakan untuk mengecek validitas suatu angka berdasarkan digit-digit yang membentuknya. Algoritma yang dipergunakan untuk seluruh nomor kartu kredit adalah algoritma cek digit Luhn. Entah bagiamana sejarahnya, yang jelas algoritma cek digit Luhn adalah algoritma cek digit yang saat ini digunakan oleh seluruh bank besar di dunia yang mengeluarkan kartu kredit.
Perlu tiga langkah untuk membuktikan apakah suatu kartu memenuhi algoritma cek digit Luhn, langkah-langkah tersebut adalah sebagai berikut :
Umumnya kartu kredit memiliki jumlah digit sebanyak 16, tetapi ada juga kartu kredit yang memiliki jumlah digit yang ganjil, misalnya 13 atau 15 digit. Untuk kartu-kartu kredit yang memiliki jumlah digit ganjil, langkah pertama yang dikalikan adalah digit yang terletak pada posisi genap, dan langkah kedua yang dijumlahkan adalah digit pada posisi ganjil.
Contoh :
Nomor kartu kredit : 1800-2020-3047-8690 Apakah kartu kredit ini valid ? Cara pengecekannya adalah sebagai berikut :
Contoh :
Jika saya punya kartu dengan nomor : 7889-8594-5435-5413 dan saya ingin tahu apakah angka ini benar-benar nomor kartu kredit yang sah atau tidak saya bisa melakukan langkah sbb (perhatikan jumlah digit ada 16): 1) mengalikan semua angka pada digit ganjil dengan dua dan mengurangkan hasilnya dengan 9 jika lebih dari 9, lalu dijumlahkan inilah digit-digit pada posisi ganjil D01 = 7 D03 = 8 D05 = 8 D07 = 9 D09 = 5 D11 = 3 D13 = 5 D15 = 1 Jika dilakukan operasi kali dua dan kurangi 9 (jika lebih dari 9) didapat D01' = 7 x 2 = 14, karena lebih dari maka hasilnya dikurangi 9 D02' = 14 - 9 = 5 D03' = 8 x 2 = 16, karena lebih dari maka hasilnya dikurangi 9 D02' = 16 - 9 = 7 D05' = 8 x 2 = 16, karena lebih dari maka hasilnya dikurangi 9 D02' = 16 - 9 = 7 D07' = 9 x 2 = 18, karena lebih dari maka hasilnya dikurangi 9 D02' = 18 - 9 = 9 D09' = 5 x 2 = 10, karena lebih dari maka hasilnya dikurangi 9 D02' = 10 - 9 = 1 D11' = 3 x 2 = 6 , kurang dari 9 jadi tetap 6 D13' = 5 x 2 = 10, karena lebih dari maka hasilnya dikurangi 9 D02' = 10 - 9 = 1 D15' = 1 x 2 = 2 , kurang dari 9 jadi tetap 2 Jumlah D01' + D03' + D05' + D07' + D09' + D11' + D13' + D15' = 5 + 7 + 7 + 9 + 1 + 6 + 1 + 2 = 38 2) Menjumlahkan semua digit pada posisi genap D02 = 8 D04 = 9 D06 = 5 D08 = 4 D10 = 4 D12 = 5 D14 = 4 D16 = 3 Jumlah = 8 + 9 + 5 + 4 + 4 + 5 + 4 + 3 = 42 Bila hasil langkah 1 dan langkah 2 dijumlahkan didapat 38 + 42 = 80, karena 80 habis dibagi 10 maka nomor tersebut sah sebagai nomor kartu kredit. Sudah jelas kan?, ternyata algoritma cek digit pada kartu kredit sangat mudah dilakukan Anda pun bisa menghasilkan nomor-nomor yang sah sebagai nomor kartu kredit dengan menggunakan program, dan katanya dulu ini bisa dipakai untuk melakukan credit card fraud saya sendiri masih kurang mengerti dengan caranya karena menurut saya sekarang ini pemeriksaan sudah jauh lebih ketat dan hampir tidak mungkin seseorang lolos dengan hanya berbekal nomor yang sah saja tanpa expiration date dan nama pemiliknya.
Untuk penambahan jika Anda membuat script validasi nomor kartu kredit, tabel dibawah ini bisa disertakan untuk mengecek apakah kartu tersebut sesuai dengan bank yang mengeluarkannya (jenisnya).
|
0 komentar: