BAB 2 LANDASAN TEORI 2.1 Pengertian Sistem - Implementasi Algoritma Luhn untuk Otentikasi Nomor Kartu Kredit pada Sistem Transaksi Online

BAB 2 LANDASAN TEORI

2.1 Pengertian Sistem

  Sistem berasal dari bahasa yunani ”System” artinya satuan yang saling bergantung dan saling bekerja sama untuk menghasilkan suatu metode, prosedur serta teknik yang digabung dan diatur sedemikian rupa sehingga menjadi suatu kesatuan yang berfungsi mencapai suatu tujuan tertentu.

  Sistem adalah sekelompok elemen-elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan (Mcleod,2004).

  Sistem adalah sekelompok unsur yang erat hubunganya satu dengan yang lain, yang berfungsi bersama-sama untuk mencapai tujuan tertentu (Sutabri,2005).

2.1.1 Pengertian Informasi

  Informasi adalah hasil dari pengolahan data dalam bentuk yang lebih berguna dan lebih berarti bagi penerimanya yang menggambarkan suatu kejadian

  • –kejadian yang nyata sehingga dapat digunakan sebagai pengambilan keputusan.

  Informasi adalah data yang telah terolah dan sifatnya menjadi data yang lain yang bermanfaat (Supriyanto,2005).

  Informasi adalah data yang telah diklasifikasi atau diolah atau diinterpretasi untuk digunakan dalam proses pengambilan keputusan (Sutabri,2005).

  Informasi adalah rangkaian data yang mempunyai sifat sementara, tergantung dengan waktu, mampu memberikan kejutan atau surprise pada yang menerimanya (Witarto,2004).

  Informasi merupakan data yang telah dibentuk kedalam suatu format yang mempunyai arti dan berguna bagi manusia (Loudon, 2005).

  2.1.2 Kualitas Informasi

  Kualitas suatu informasi tergantung dari 3 (tiga) hal yaitu,informasi harus akurat (accurate), tepat waktu (timelines), dan relevan (relevance) seperti yang diungkapkan oleh Kusrini & Andri (2007) :

  1. Akurat (accurate) Berarti informasi harus bebas dari kesalahan-kesalahan dan tidak menyesatkan serta harus jelas mencerminkan maksudnya, informasi harus akurat, karena dari sumber informasi sampai kepada si penerima informasi kemungkinan banyak terjadi gangguan yang dapat mengubah informasi tersebut.

  2. Tepat waktu (timelines) Berarti informasi yang datang pada sipenerima tidak boleh terlambat.

  Informasi sudah usang tidak mempunyai nilai lagi, sebab informasi mempunyai landasan di dalam pengambilan keputusan.

  3. Relevan (relevance) Berarti informasi tersebut mempunyai manfaat untuk pemakainya. relevansi informasi untuk orang satu dengan yang lainya berbeda.

  2.1.3 Pengertian Sistem Informasi

  Sistem informasi dapat didefinisikan sebagai suatu sistem dalam suatu organisasi yang merupakan kombinasi dari orang-orang, fasilitas, teknologi, media, prosedur-prosedur dan pengendalian yang ditujukan untuk mendapatkan jalur komunikasi yang penting dengan tujuan sebagai pengambilan keputusan.

  Sistem informasi merupakan satuan komponen yang saling berhubungan yang mengumpulkan (mendapatkan kembali), memproses, menyimpan, mendistribusikan informasi untuk mendukung pengambilan keputusan dan kendali dalam suatu organisasi (Loudon,2005).

  Sistem informasi adalah suatu sistem di dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian yang mendukung fungsi operasi organisasi yang bersifat manajerial dengan kegiatan strategis dari suatu organisasi untuk dapat menyediakan pihak luartertentu dengan laporan-laporan yang diperlukan (Kusrini & Andri,2007).

2.1.4 Komponen Sistem Informasi

  Sistem informasi terdiri dari komponen-komponen yang disebut dengan istilah blok bangunan (Building Block) yaitu Blok Masukan (Input Block), Blok Model (Model

  

Block ), Blok Keluaran (Output Block), Blok Teknologi (Technologi Block), Blok

  Dasar Data (Database Block) dan Blok Kendali (Control Block) seperti yang diungkapkan oleh Kusrini & Andri (2007).

  Sebagai sistem, keenam blok tersebut masing-masing saling berinteraksi satu dengan yang lainnya membentuk satu kesatuan untuk mencapai suatu sasaran.

  1. Blok Masukan (Input Block) Input mewakili data yang masuk kedalam sistem informasi. Input disini termasuk metode-metode dan media untuk menangkap data yang dimasukkan, yang dapat berupa dokumen-dokumen.

  2. Blok model (Model Block) Blok ini terdiri dari kombinasi prosedur, logika dan model matematika yang akan memanipulasi data input dan data tersimpan di dasar data dengan cara yang sudah tertentu untuk menghasilkan keluaran yang diinginkan.

  3. Blok Keluaran (Output Block) Produk dari sistem informasi adalah keluaran yang merupakan informasi yang berkualitas dan dokumentasi yang berguna untuk semua tingkatan manajemen serta semua pemakai sistem.

4. Blok Teknologi (Tecnologi Block) Teknologi merupakan “Kotak Tool” dari pekerjaan sistem informasi.

  Teknologi digunakan untuk menerima input, menjalankn model menyimpan dan mengakses data, menghubungkan dan mengirimkan keluaran dan membantu pengendalian dari sistem secara keseluruhan. Teknologi terdiri dari bagian utama yaitu: a. Teknisi (Humanware dan Brainware)

  b. Perangkat Lunak (Software)

  c. Perangkat keras (Hardware) Teknisi dapat berupa orang-orang yang mengetahui teknologi dan membantunya untuk dapat beroperasi.

  5. Blok Basis Data (Database Block) Basis data merupakan komponen dari data yang saling terhubung satu dengan yang lainnya, tersimpan di perangkat lunak untuk memanipulasinya. Data di dalam basis data perlu diorganisasikan sedemikian rupa supaya informasi yang dihasilkan berkualitas.

  6. Blok Kendali (Control Block) Agar sistem dapat berjalan sesuai dengan yang diinginkan maka perlu diterapkan pengendalian-pengendalian di dalamnya. Banyak hal yang dapat merusak sistem informasi seperti misalnya bencana alam, api, temparatur, air, debu, kecurangan sistem itu sendiri, dan lain-lain.

2.2 Pengertian Basis Data (Database)

  Basis data (database) adalah suatu data yang terintegrasi, diorganisasikan, dan disimpan dalam suatu cara yang memudahkan untuk pengambilan kembali.

  Basis data adalah suatu susunan kumpulan data operasional lengkap dari suatu organisasi/perusahaan yang terorganisir/dikelola dan disimpan secara terintegrasi dengan menggunakan metode tertentu menggunakan komputer sehingga mampu menyediakan informasi optimal yang diperlukan pemakainya (Marlinda, 2004).

  Database adalah suatu pengorganisasian sekumpulan data yang saling terkait sehingga memudahkan aktivitas untuk memperoleh informasi (Kadir,2003).

2.2.1 Relasi Data atau ERD (Entity Relation data)

  

Entitiy Relation Diagram berfungsi untuk menggambarkan relasi dari dua file atau

  dua tabel yang dapat digolongkan menjadi dalam tiga macam bentuk relasi, yaitu satu- satu, satu-banyak, dan banyak ke banyak (Sutedjo,2006). Penggambaran ini akan membantu analisa sistem dalam melakukan perancangan proses yang kelak akan dituangkan dalam bentuk garis-garis program.

  Relasi adalah hubungan antara satu file atau tabel yang lain dalam suatu database, atau hubungan antara dua atribut dalam suatu file. Relasi antara dua file atau tabel dapat di kategorikan menjadi tiga bagian yaitu: a.

   Relasi one to one

  Merupakan hubungan antara file pertama dengan file kedua atau hubungan antara atribut pertama dengan atribut kedua adalah satu berbanding dua.

  Contoh

  Gambar Produk Nama Harga Produk Kode Sub Nama Sub Produk Kategori kategori

  1

  1 Sub Kategori Kategori Produk Produk

Gambar 2.1 Relasi one to one b.

   Relasi one to many

  Merupakan hubungan antara file pertama dengan file kedua atau hubungan antara atribut pertama dengan atribut kedua adalah satu berbanding banyak tetapi tidak sebaliknya. Contoh:

  Gambar Produk Nama Harga Produk Produk Harga Gambar

1 M Produk Kategori Produk

  Pembersih Id Nama

Gambar 2.2 Relasi one to many c.

   Relasi many to many

  Merupakan hubungan antara file pertama dan file kedua atau hubungan antara

  atribut pertama dengan atribut kedua adalah banyak berbanding banyak dan sebaliknya.

  Contoh:

  Nama Alamat Kode Pos Harga Gambar

M M

Produk

  Konsumen Pembersih Id Nama

Gambar 2.3 Relasi many to many

2.3 Unified Modeling Language (UML)

  Unified Modeling Language (UML) adalah sebuah “bahasa” yang telah menjadi standard industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak (Dharwiyanti, S dan Wahono, S.R., 2003). Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka UML lebih cocok untuk penulisan piranti lunak dalam bahasa berorientasi objek. Unified Modeling Language (UML) bukanlah : 1. Bahasa pemrograman visual, tapi bahasa pemodelan visual.

  2. Spesifikasi kakas, tetapi spesifikasi bahasa pemodelan.

  3. Proses, tetapi yang memungkinkan proses-proses.

  Menurut Hariyanto, B (2004) tujuan perancangan UML adalah:

  1. Menyediakan bahasa pemodelan visual yang ekspresif dan siap pakai untuk mengembangkan dan pertukaran model-model yang berarti.

  2. Menyediakan mekanisme perluasan dan spesialisasi untuk memperluas konsep- konsep inti.

  3. Mendukung spesifikasi independen bahasa pemrograman dan pengembangan tertentu.

  4. Menyediakan basis formal untuk pemahaman bahasa pemodelan.

  5. Mendukung konsep-konsep pengembangan level lebih tinggi seperti komponen, kolaborasi, framework dan pattern.

  Unified Modeling Language (UML) menyediakan sejumlah diagram untuk menggambarkan pemodelan berorientasi objek yang dilakukan. UML membagi diagram menjadi dua tipe yaitu :

  1. Diagram Struktur Diagram ini untuk memvisualisasi, menspesifikasi, membangun dan mendokumentasikan aspek statik dari sistem. Diagram struktur di UML terdiri dari : a. Diagram Kelas (Class diagram)

  b. Diagram Objek (Object diagram)

  c. Diagram komponen (Component Diagram)

  d. Diagram deployment (Deployment Diagram)

  2. Diagram perilaku Diagram ini untuk memvisualisasi, menspesifikasi, membangun dan mendokumentasikan aspek dinamis dari sistem. Diagram struktur di UML terdiri dari : e. Diagram use-case (Use case diagram)

  f. Diagram sekuen (sequence diagram)

  g. Diagram kolaborasi (collaboration diagram)

  h. Diagram statechart (Statechart diagram) i. Diagram aktivitas (Activity diagram)

2.3.1 Diagram Use case

  Diagram Use case (use case diagram) merupakan salah satu diagram untuk memodelkan aspek perilaku sistem atau digunakan untuk mendeskripsikan apa yang seharusnya dilakukan oleh sistem (Hariyanto, B. 2004). Diagram use case terdiri dari beberapa elemen yaitu:

  1. Aktor Aktor adalah pemakai sistem, dapat berupa manusia atau sistem terotomatisasi lain. Aktor adalah sesuatu atau seseorang yang berinteraksi dengan sistem, yaitu siapa dan apa yang menggunakan sistem. Aktor adalah tipe (kelas) bukan instan. Aktor mempresentasikan peran bukan pemakai individu dari sistem. Aktor memiliki nama, nama yang dipilih seharusnya menyatakan peran aktor.

Gambar 2.4 Aktor

  • – aktor Use case

  2. Use-case

  Use case adalah cara spesifik penggunaan sistem oleh aktor. Use case melibatkan

  interaksi antara aktor-aktor dan sistem. Use case mengemukakan suatu kerja yang tampak.

Gambar 2.5 Aktor dan Use case User Admin User Login

  3. Keterhubungan Keterhubungan antar use case dengan use case lain berupa generalisasi antara use

  case yaitu : a. include, perilaku use case merupakan bagian dari use case lain.

  b. extend, perilaku use case memperluas perilaku use case yang lain.

  Pesan «extends» «uses» «extends»

  Lihat Sub Kategori Produk Tambah Pesanan «extends»

  User Checkout

Gambar 2.6 Aktor ,Use case dan Keterhubungan

2.3.2 Spesifikasi Use case Spesifikasi use case memberikan gambaran lengkap spesifikasi tekstual pada use case.

  Spesifikasi use case sistem rekomendasi dilakukan berdasarkan case yang ada pada use case diagram. Spesifikasi use case biasanya terdiri dari : a. Deskripsi singkat case, yang menjelaskan apa yang terjadi pada case.

  b. Pra kondisi yaitu keadaan apa yang terjadi sebelum case berlangsung.

  c. Karakteristik yang dimiliki oleh case.

  d. Skenario (flow of event) yaitu menjelaskan cara kerja case mulai dari awal hingga. akhir.

  e. Pasca kondisi yaitu keadaan apa atau output apa yang dihasilkan setelah case berlangsung.

2.3.3 Diagram Sekuen

  Diagram sekuen (sequence diagram) menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display dan sebagainya) berupa message (pesan) yang digambarkan terhadap waktu.

  Diagram sekuen digunakan untuk memodelkan scenario penggunaan. Skenario penggunaan adalah barisan kejadian yang terjadi selama satu eksekusi sistem. Diagram sekuen menunjukkan objek sebagai garis vertical dan tiap kejadian sebagai panah horizontal dari objek pengirim ke objek penerima. Waktu berlalu dari atas ke bawah dengan lama waktu tidak relevan.

  Diagram sekuen (sequence diagram) memeiliki beberapa elemen yang terdiri dari :

Tabel 2.1 Elemen-elemen Sequence Diagram Nama Penjelasan Gambar

  1. Objek lifeline Menggambarkan batasan Object1 objek

  2. Boundary berhubungan dengan proses input output ataupun Halaman Utama (boundary) interface.

  3. Controller berhubungan dengan proses. Kontrol utama (controller)

  4. Entity berhubungan dengan input- output data Entity Lokasi Wisata (entity)

  Message

  5. Massage arrow menggambarkan alir proses, perintah atau pengiriman message(call) data. Message(return)

  6. Aktivasi (activation) menggambarkan aktivitas objek.

  7. Actor Menggambarkan aktor sebagai objek. User

2.3.4 Otentikasi

  Otentikasi merupakan proses validasi user pada saat memasuki sistem, nama dan password dari user di cek melalui proses yang mengecek langsung ke daftar mereka yang diberikan hak untuk memasuki sistem tersebut. Autorisasi ini diatur oleh administrator, webmaster atau pemilik situs (pemegang hak tertinggi atau mereka yang ditunjuk di sistem tersebut). Untuk proses ini masing-masing user akan di cek dari data yang diberikannya seperti nama (dalam hal ini adalah email), dan password .

  Otentikasi merupakan salah satu langkah untuk menentukan bahwa seseorang tersebut autentik (dapat dipercaya sebagai bukti). Melakukan otentikasi terhadap sebuah objek yaitu melakukan konfirmasi terhadap kebenarannya, sedangkan melakukan otentikasi terhadap seseorang biasanya dengan cara verifikasi identitasnya. Pada sistem komputer, otentikasi biasanya terjadi pada saat login atau permintaan akses.

  Selain itu otentikasi juga merupakan salah satu metode yang digunakan untuk menyediakan bukti bahwa dokumen tertentu yang diterima secara elektronik benar- benar datang dari orang yang bersangkutan dan tak berubah. Caranya adalah dengan mengirimkan suatu kode tertentu melaui e-mail dan kemudian pemilik e-mail me- email tersebut atau mengetikan kode yang telah dikirimkan. Otentikasi server

  replay

  berfungsi untuk mengenali user yang berintegrasi ke jaringan dan memuat semua informasi dari user tersebut, dalam praktek biasanya otentikasi server mempunyai

  

backup yang berfungsi untuk menjaga jika server itu ada masalah sehingga jaringan

dan pelayanan tidak terganggu.

  Dalam aplikasi web dibutuhkan mekanisme yang dapat melindungi data dari pengguna yang tidak berhak mengaksesnya, misalnya sebuah situs web yang berisikan foto-foto keluarga dan hanya dapat diakses sesama anggota keluarga. Mekanisme ini dapat diimplementasikan dalam bentuk sebuah proses login yang biasanya terdiri dari tiga buah tahapan yaitu identifikasi, otentikasi dan otorisasi. Proses otentikasi pada prinsipnya berfungsi sebagai kesempatan pengguna dan pemberi layanan dalam proses pengaksesan resource. Pihak pengguna harus mampu memberikan informasi yang dibutuhkan pemberi layanan untuk berhak mendapatkan resourcenya, sedangkan pihak pemberi layanan harus mampu menjamin bahwa pihak yang tidak berhak tidak akan dapat mengakses resource ini.

  Dalam sistem transaksi online sering menggunakan kartu kredit sebagai alat pembayaran .Otentikasi kartu kredit dilakukan untuk mengetahui keabsahan sebuah nomor kartu kredit. Otentikasi nomor kartu kredit dilakukan dengan menggunakan algoritma Luhn dimana algoritma Luhn mengecek berdasarkan urutan nomor kartu tersebut.

2.3.5 Faktor Otentikasi

  Tiga jenis faktor otentikasi yang umum digunakan adalah:

  a. Sesuatu yang diketahui oleh pengguna Contoh: password, passphrase, dan PIN (Personal Identification Number). b. Sesuatu yang dimiliki oleh pengguna Contoh: ID card, kartu kredit, telepon seluler, dan perangkat token.

  c. Sesuatu yang „ada‟ pada pengguna Contoh: sidik jari, DNA, suara, pola retina, atau aspek biometrik lain.

2.4 Algoritma Luhn

  Algoritma Luhn atau formula Luhn yang juga di kenal sebagai algoritma „modulus 10, adalah sebuah algoritma sederhana yang dapat digunakan untuk memeriksa validitas sebuah nomor kartu kredit ,ISBN, dan IMEI pada perangkat komunikasi seluler.

  Algoritma ini dibuat oleh ilmuwan dari IBM yang bernama Hans Peter Luhn dan sudah dipatenkan di Amerika Serikat dengan nomor paten 2.950.048 pada 23 Agustus 1960.

  Rumusan Luhn diciptakan dan disimpan sebagai hak paten (sekarang dengan cuma-cuma/bebas) untuk mendeteksi kesalahan kuantitatif yang ditemukan dalam angka-angka yang sudah dibuat sebelumnya. Sejak itu, algoritma Luhn telah digunakan untuk memeriksa atau memverifikasi kebenaran dari urutan angka-angka kartu kredit. Sekarang ini, hampir semua angka-angka kartu kredit yang dikeluarkan dihasilkan dan dibuktikan menggunakan Modulus atau Algoritma Luhn, atau Mod-10 Formula.

  Algoritma ini merupakan public domain dan sudah digunakan secara luas. Sebagian besar layanan penyedia kartu kredit dan beberapa instansi lainnya

  • – menggunakan algoritma ini sebagai cara yang sederhana untuk memilah nomor nomor yang absah dari banyak nomor acak (Kilgo,2006). Dulunya algoritma Luhn ini direalisasikan dalam bentuk mesin genggam. Alat ini menghitung nilai dari operasi mod menggunakan cara mekanik.

  Algoritma Luhn adalah rumus penjumlahan yang digunakan oleh para ahli matematik dan sistem verifikasi pembayaran untuk memverifikasi integritas angka- angka kartu kredit riil. Rumus ini digunakan untuk membantu membuat angka-angka secara acak dan mencegah terdapatnya angka-angka kartu kredit yang salah sebelum diterbitkan. Algoritma Luhn tidaklah digunakan untuk membuat nomor kartu kredit secara langsung, tetapi lebih digunakan sebagai rumusan matematis yang sederhana untuk memeriksa angka-angka kartu kredit yang sah dari daftar angka acak yang sudah di buat sebelumnya. Rumusan ini juga berlaku untuk memeriksa nomor kartu debet (atm) juga (Kilgo,2006).

  Algoritma Luhn hanya mengesahkan 16 digit kartu kredit dan bukan komponen yang lain, misalnya urutan no rekening, apakah nomor kartu kredit tersebut ada atau tidak, apakah tanggal kartu kredit tersebut valid atau sudah expire, dan tidak dapat memeriksa Card Verification Value yang biasanya digunakan (CVV) dan Card Verification Code (CVC), kode tersebut adalah angka-angka yang digunakan untuk membuktikan pemilikan fisik dari kartu kredit atau kartu debet (Gilleland,2007).

  Adapun cara kerja algoritma Luhn adalah sebagai berikut :

  1. Mulai dari angka paling kanan sampai paling kiri, kalikan setiap angka pada urutan ganjil dengan 2. Untuk semua angka yang menjadi lebih besar dari atau sama dengan 10, kurangi angka hasil perkalian tadi dengan 9.

  2. Jumlahkan angka urutan ganjil dan urutan genap.

  3. Jika total dari penjumlahan tadi dimoduluskan 10 kongruen dengan 0, maka nomor itu sah.

2.5 Pengenalan Kartu Kredit

  Kartu kredit pertama kali mulai digunakan sekitar tahun 1920 di Amerika Serikat, namun konsep penggunaaan kartu kredit yang dikenal saat ini baru diciptakan pada tahun 1950. Sistem yang banyak digunakan sekarang ini adalah VISA dan MasterCard yang merupakan gabungan dari berbagai institusi yang bekerja sama dalam membuat standar kartu kredit. Kartu kredit adalah sebuah kartu yang terbuat dari plastik. Sesuai standar ISO 7810 ID-1, kartu kredit berukuran 85,60 x 53,98 mm (3,370 × 2,125 in) dengan ketebalan 0,76 mm dan sudut membulat dengan radius 3,18 mm. Kartu kredit memiliki beberapa penanda fisik pada kedua sisinya. Di sisi depan terdapat nama bank penerbit, nama nasabah, merek kartu, logo hologram, nomor kartu, tanggal berlaku, dan chip EMV. Di bagian belakang terdapat pita magnetik, tanda tangan nasabah, dan card security code (CSC). Data nasabah disimpan dalam pita magnetik sedangkan chip EMV digunakan dalam proses verifikasi(Gilleland, 2007)

  Angka pertama dari nomor kartu kredit adalah tanda pengenal industri mayor / Major Industry Identifier (MII), yang merepresentasikan kategori perusahaan yang mengeluarkan kartu kredit tersebut (Gilleland, 2007). MII yang berbeda-beda merepresentasikan kategori seperti dalam tabel di bawah ini :

Tabel 2.2 Jenis Kartu Kredit

  Angka MII Kategori perusahaan Kategori Perusahaan

  ISO/TC 68 dan industri lain-lain

  1 Perusahaan penerbangan

  2 Perusahaa penerbangan dan industri lain-lain

  3 Travel dan hiburan

  4 Bank dan financial

  5 Bank dan financial

  6 Merchandizing dan bank

  7 Perusahaan petroleum

  8 Telekomunikasi dan industri lain-lain

  9 Perusahaan Negara

  Sebagai contoh, American Express, Diner's Club, dan Carte Blanche berada di kategori travel dan hiburan, VISA, MasterCard, dan Discover berada di kategori bank dan finansial, sementara SUN Oil dan Exxon berada di kategori perusahaan petroleum.

2.5.1 Identifikasi perusahaan yang mengeluarkan kartu kredit

  Enam angka awal dari nomor kartu kredit (termasuk angka MII) membentuk issuer identifier (pengenal perusahaan yang mengeluarkan kartu kredit). Ini berarti total probabilitas perusahaan yang mengeluarkan kartu kredit adalah satu juta kemungkinan (10 dipangkatkan 6). Beberapa perusahaan terkenal dijelaskan pada tabel di bawah ini:

Tabel 2.3 Perusahan yang mengeluarkan Kartu Kredit

  Nama Perusahaan Identifier Panjang Angka Kartu Diner's Club/Carte 300xxx-

  13 Blanche 305xxx,

  13 36xxxx, 38xxxx

  American Express 34xxxx,

  15 37xxxx

  VISA 4xxxxx 13, 16 MasterCard 51xxxx-

  16 55xxxx

  Discover 6011xx

  16 Jika angka MII adalah 9, maka 3 angka berikutnya adalah kode negara yang didefinisikan dalam ISO 3166, dan sisa 2 angkanya bisa didefinisikan oleh badan standar negara masing-masing sesuai kebijakan dari negara tersebut (Gilleland,2007).

2.5.2 Bentuk Fisik Kartu Kredit

Gambar 2.7 Tampilan depan kartu kredit Dari tampilan depan sebuah kartu kredit seperti gambar 2.7 terdiri dari beberapa bagian yaitu : a. Logo Bank

  Logo bank atau nama penerbit ini adalah nama bank/institusi penerbit kartu kredit. Misalnya kartu kredit Anda diterbitkan oleh BCA maka muncul logo atau nama BCA. Begitu juga jika kartu kredit Anda terbitan Citibank, HSBC, ANZ, maka muncul logo atau nama bank-bank tersebut.

  b. Nomor Kartu Setiap kartu kredit memiliki nomornya yang unik dan berbeda. Untuk pasar Indonesia nomor kartu kredit berjumlah 16 digit yang terbagi dalam kelompok 4 dengan jarak yang direnggangkan. Tiap kartu kredit berbeda nomornya dan tidak ada yang sama. Empat digit awal menandakan jenis kartu dan bank penerbit yang berbeda. Jadi tidak pernah ada kartu kredit yang nomornya sama.

  c. Nama Pemilik Kartu kredit akan tercetak nama pemiliknya. Jika nama Anda adalah Surya Nanggala maka di dalam kartu kredit Anda akan tercetak Surya Nanggala.

  d. Masa Berlaku Kartu Kartu kredit diterbitkan memiliki masa berlaku 2

  • –5 tahun, tergantung kebijakan masing-masing bank sebagai penerbit kartu. Dengan demikian, jika masa berlaku kartu habis, otomatis kartu tersebut tidak bisa dipergunakan lagi. Anda sebagai pemilik akan dikirimkan kartu kredit baru oleh bank yang nomornya persis sama kecuali alasan tertentu. Untuk melihat masa berlaku kartu bisa diketahui dari valid thru (berlaku sampai) dan valid from (berlaku sejak). Sedangkan member since artinya sudah berapa lama Anda memegang kartu tersebut sebagai nasabah. Biasanya dihitung dalam bilangan tahunan.
e. Logo Perusahaan Pembayaran Internasional Biasanya disebut juga dengan nama jaringan pembayaran Internasional. Setiap kartu kredit yang Anda apply hanya akan mendapatkan satu nama jaringan pembayaran. Jika Anda apply VISA maka akan mendapatkan kartu kredit berlogo VISA. Jika Anda apply MasterCard maka akan mendapatkan kartu kredit MasterCard.

  f. Chip Chip adalah produk pengaman kartu yang baru. Saat ini untuk semua kartu kredit yang diterbitkan untuk pasar Indonesia sudah diwajibkan untuk memiliki chip guna pengamanan kartu.

Gambar 2.8 Tampilan belakang kartu kredit

  Dari tampilan belakang sebuah kartu kredit seperti gambar 2.8 terdiri dari beberapa bagian yaitu : a. Pita magnetik, pita magnetik ini sama seperti kartu ATM atau kartu debit.

  Kegunaannya adalah untuk merekam beberapa data penting nasabah seperti nomor PIN, nama nasabah, alamat nasabah, limit kartu, saldo tagihan, dsb.

  b. Panel tanda tangan, panel warna putih adalah lembaran khusus untuk menampung tanda tangan pemilik kartu. c. Tiga digit pengaman kartu, di belakang kartu kredit selalu ada 3 digit angka sebagai pengaman kartu yang sering disebut CVV (Card Verification

  Value ).Kode ini ditambahkan sebagai pengaman kartu sama seperti chip.

  Hanya saja teknologi chip adalah teknologi terbaru.

  d. Identitas bank penerbit kartu, nama dan alamat bank sebagai penerbit kartu juga akan tercetak di belakang kartu kredit.

  e. Logo Cirrus/PLUS, logo ini untuk memudahkan Anda sebagai pemilik kartu mengenal mesin-mesin ATM untuk menarik uang tunai. Cirrus untuk MasterCard, sedangkan PLUS untuk VISA.

  f. Hologram, kartu kredit juga memiliki hologram yang biasanya untuk kartu kredit VISA, hologramnya muncul di belakang, sedangkan untuk kartu kredit MasterCard, hologramnya tampak di depan kartu.

2.5.3 Penerapan Algoritma Luhn sebagai pengesahan dan pembuatan Urutan Nomor Kartu kredit

  Bagi mereka yang tidak suka matematika sama hanya saja matematika adalah salah satu bagian dari akademis mulai dari SD sampai perkuliahan, tetapi jika anda suka visual, pemikiran membingungkan seperti permainan Sudoku, anda akan menyukai Algoritma Luhn dan sangat mudah untuk saya jelaskan.

  1. Pertama, anda harus petakan semua 16 digit yang tertera dari nomor kartu kredit kartu debet. Algoritma Luhn selalu dimulai dari baris sebelah kanan, kemudian bergerak ke digit sebelah kiri berikutnya dan gandakan nilai mulai dari digit yang ke 15 dan selangi 1 digit mulai dari digit ke 15. Sebagai contoh, jika kartu kredit adalah suatu 16 digit kartu kredit Visa, digit yang digandakan nilainya adalah dari digit 15, 13, 11, 9, dan seterusnya sampai semua digit yang berselang 1 telah digandakan nilainya.

  2. Jika digit yang digandakan nilainya dan menjadi nilai yang hasilnya sama dengan 10 atau lebih , kita harus menambahkan hasil digit tersebut. Sebagai contoh, digit 5 ketika digandakan akan menjadi 10, kemudian kita harus menambahkan masing-masing nilai tersebut yaitu 1+0. Demikian juga, misalkan digit 9 ketika digandakan akan menjadi 18, maka kita harus menjumlahkan nilai tersebut yaitu 1 + 8 dan hasilnya menjadi 9.

  3. Sekarang, kita lihat hasil dari urutan yang baru dari perhitungan yang kita buat tadi. Digit yang baru yang nilainya kita gandakan tadi akan menggantikan digit yang sebelumnya. Digit yang tidak kita gandakan nilainya akan tetap sama.

  4. Jumlahkan urutan yang baru. Jika dikombinasikan perhitungan jumlah dapat dibagi oleh sepuluh atau berakhir dengan 0, misalnya 70. Jika tidak habis dibagi 10, maka nomor atau jumlah kartu kredit yang tertera tidaklah sah atau tidak benar (valid).

2.5.4 Penerapan Algoritma Luhn untuk validasi Nomor Seri IMEI

  

International Mobile Equipment Identity atau IMEI adalah sebuah nomor unik yang

  dimiliki setiap perangkat komunikasi GSM, UMTS, dan iDEN serta beberapa perangkat telepon satelit. Nomor IMEI digunakan oleh jaringan GSM untuk mengindentifikasi perangkat yang sah dan membuat perangkat komunikasi yang dicuri tidak dapat mengakses sebuah jaringan. Sebagai contoh adalah jika sebuah telepon seluler dicuri, pemiliknya dapat menghubungi layanan penyedia jaringan dan memintanya umtuk memblok telepon yang dicuri tersebut dengan nomor IMEI. Hal ini akan menyebabkan perangkat tersebut tidak dapat digunakan, meskipun kartu SIM di dalamnya diganti ataupun tidak (Matthew, 2007).

  Nomor IMEI hanya digunakan untuk mengidentifikasi sebuah perangkat. Nomor IMEI tidak ada hubungan permanen atau semi permanen dengan pelanggan. Identitas pelanggan tidak dikenali melalui nomor IMEI namun dikenali dari nomor IMSI yang tersimpan pada kartu SIM. Nilai cek digit divalidasi dalam tiga langkah berikut : 1. Mulai dari digit yang paling kanan, kalikan dua kali tiap dua digit.

  2. Jumlahkan semua digit tersebut.

  3. Periksa apakah jumlahnya bisa dibagi 10.

  Sebaliknya nomor IMEI dapat dikalkulasikan dengan memilih cek digit sehingga jumlahnya dapat dibagi

  10. Contohnya adalah nomor

  IMEI 49015420323751?. Jumlah setelah dikalikan adalah 52+?. Untuk membuat jumlahnya dapat dibagi dengan 10, maka kita ganti dengan angka 8.Untuk lebih jelasnya dapat dilihat pada keterangan di bawah ini :

  4

  9

  1

  5

  4

  2

  3

  2

  3

  7

  5 1 ?

  4

  18

  2

  5

  8

  4

  6

  4

  6

  14

  5 2 ?

  4

  9

  2

  5

  8

  2

  3

  4

  3

  5

  5 2 ? a. Baris pertama adalah nomor seri sebelum dilakukan perkalian.

  b. Baris kedua adalah nomor seri setelah dilakukan perkalian.

  c. Baris ketiga adalah hasil perkalian yang dinormalisasi.

  Dari keterangan di atas dapat dilihat bahwa hasil penjumlahan seluruh digit di atas adalah 4+9+0+2+5+8+2+0+3+4+3+5+5+2+? = 52+?. Untuk mendapatkan jumlah yang benar, „?‟ diganti dengan „8‟ sehingga jumlahnya 60 dan 60 mod 10 adalah 0 sehingga nomor seri diatas menjadi benar.

Tabel 2.4 Penelitian Sebelumnya tentang algoritma Luhn

  No JUDUL PENELITI SUMBER

  1. Pembangkitan Nomor Kartu Shanny Avelina Makalah Teknik Kredit dan Pengecekannya Halim Informatika Dengan Menggunakan Institut Teknologi Algoritma Luhn Bandung 2006

  2. Penggunaan Algoritma Modulo Otniel Jurnal Ilmu

  10 Luhn Sebagai Validator Komputer Dan Kartu Kredit

  Teknologi Informasi, Vol 3 No.2, Oktober 2003

  3. Implementasi Algoritma Cek Wawan Wardiana Prosiding Seminar Digit Luhn Untuk Otentikasi Assaoralhaq Arsyad Nasional tenaga Kartu Kredit

  Listrik Dan Mekatronik 2006

  4. Aplikasi Aritmatika Modulo Yudha Adiprabowo Makalah Teknik dalam Validasi Nomor Kartu Informatika kredit

  Institut Teknologi Bandung 2007

  5. Aplikasi Teori Bilangan dalam Mohammad Taufan Makalah Teknik Pembangkitan dan Validasi Tripurnasatria Informatika Nomor Kartu Kredit Institut Teknologi

  Bandung 2007 6.

  IMEI dan Validasinya dengan Matthew Makalah Teknik Algoritma Luhn Wangsadiredja Informatika

  Institut Teknologi Bandung 2008

2.6. PHP

  PHP adalah Bahasa Pemograman Server

  • – side scripting yang menyatu dengan HTML

  untuk membuat halaman web yang dinamis. Server

  • – side Scripting adalah sintaks dan
perintah

  • – perintah yang akan sepenuhnya dijalankan di server, tetapi disertakan pada dokumen HTML. Ketika seorang pengguna internet membuka dahulu server bersangkutan akan memproses semua perintah PHP di server lalu mengirimkan hasilnya dlam format HTML ke web Browser pengguna internet tersebut. Dengan demikian seorang pengguna internet tidak dapat melihat kode program yang ditulis dalam PHP sehingga keamanan dari halaman web menjadi lebih terjamin.

  PHP merupakan perangkat lunak yang gratis (open source) dan mempunyai lintas platform yaitu dapat digunakan dengn sistem operasi dan web server apapun.

PHP mampu berjalan di Windows dan beberapa versi Linux. PHP juga dapat

  dibangun sebagai modul pada web server Apache dan sebagai binary yang dapat berjalan sebagai CGI (Commond Gate Interface), yaitu teknologi untuk menyajikan data yang bersifat dinamis. dapat mengirimkan , dapat men set ,

  PHP HTTP header cookies

  mengauthentication dan re-direct user. PHP menawarkan konektisitas dengan baik dengan beberapa basis data antara lain Oracle, Sybase, MySQL dan lain

  • – lain (Ullman, 2003).

2.6.1. Keunggulan Pemograman PHP

  Adapun keunggulan pemograman PHP seperti yang diungkapkan oleh Ullman (2003) adalah :

  1. PHP memiliki tingkat akses yang lebih cepat dari pemograman yang berbasis web lainnya seperti ASP.

  2. PHP memiliki tingkat keamanan yang lebih tinggi karena server yang bersangkutan akan memproses semua perintah PHP di server dan mengirimkan hasilnya ke web browser. Dengan demikian pengguna internet tidak dapat melihat kode program yang ditulis dalam PHP.

  3. PHP mampu berjalan di beberapa server yag ada seperti : Apache, IIS (Internet

  Information System) dan lain – lain.

4. PHP mampu berjalan di Linux, Unix dan windows.

  5. PHP juga mendukung akses ke beberapa database yang susah, antara lain MySQL, MSQL, dan Windows SQL Server .

  Adapun bentuk penulisan Script PHP dapat dilihat pada tabel 2.5 dibawah ini :

Tabel 2.5 Penulisan Script PHP

  Bentuk Diawali Diakhiri Contoh Standard <?php ?> <?php ……..

  ?> Singkat <? ?> <? ……..

  ?> Script

  <Script=‟php‟> </script> <script language=‟php‟> ………………………… </script>