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).
Universitas Sumatera Utara
7
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
Universitas Sumatera Utara
8
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.
Universitas Sumatera Utara
9
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.
Universitas Sumatera Utara
10
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 satusatu, 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.
Universitas Sumatera Utara
11
Contoh Gambar Produk Nama Produk
Harga Produk
Kode Sub Kategori
1
Kategori Produk
1
Nama Sub kategori
Sub Kategori 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 Produk
Harga Produk
Kategori Produk
Harga
1
M
Gambar
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.
Universitas Sumatera Utara
12
Contoh: Nama
Alamat
Kode Pos Harga
Konsumen
M
M
Gambar
Produk 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.
Universitas Sumatera Utara
13
2. Menyediakan mekanisme perluasan dan spesialisasi untuk memperluas konsepkonsep 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)
Universitas Sumatera Utara
14
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.
Admin
User
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.
Login
User
Gambar 2.5 Aktor dan Use case
Universitas Sumatera Utara
15
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.
«extends» «uses»
Pesan
Lihat Sub Kategori «extends» Produk «extends» Tambah Pesanan
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.
Universitas Sumatera Utara
16
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 1.
2.
3.
Nama Objek lifeline
Boundary
Controller
Penjelasan Menggambarkan batasan objek
berhubungan dengan proses input output ataupun interface.
Gambar Object1
Halaman Utama (boundary)
berhubungan dengan proses. Kontrol utama (controller)
Universitas Sumatera Utara
17
4.
Entity
5.
Massage arrow
berhubungan dengan inputoutput data
menggambarkan alir proses, perintah atau pengiriman data.
Entity Lokasi Wisata (entity)
Message
message(call)
Message(return)
6.
Aktivasi (activation)
menggambarkan objek.
aktivitas
7.
Actor
Menggambarkan sebagai objek.
aktor
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.
Universitas Sumatera Utara
18
Selain itu otentikasi juga merupakan salah satu metode yang digunakan untuk menyediakan bukti bahwa dokumen tertentu yang diterima secara elektronik benarbenar datang dari orang yang bersangkutan dan tak berubah. Caranya adalah dengan mengirimkan suatu kode tertentu melaui e-mail dan kemudian pemilik e-mail mereplay email tersebut atau mengetikan kode yang telah dikirimkan. Otentikasi server 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).
Universitas Sumatera Utara
19
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 dikenal 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 angkaangka kartu kredit riil. Rumus ini digunakan untuk membantu membuat angka-angka
Universitas Sumatera Utara
20
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
Universitas Sumatera Utara
21
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
0
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
Universitas Sumatera Utara
22
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
Universitas Sumatera Utara
23
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.
Universitas Sumatera Utara
24
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.
Universitas Sumatera Utara
25
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.
Universitas Sumatera Utara
26
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.
Universitas Sumatera Utara
27
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 sehingga
jumlahnya
dapat
dikalkulasikan dengan memilih cek digit
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
0
1
5
4
2
0
3
2
3
7
5
1
?
4
18
0
2
5
8
4
0
6
4
6
14
5
2
?
4
9
0
2
5
8
2
0
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
Universitas Sumatera Utara
28
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
Nomor Kartu Kredit
Informatika 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
Universitas Sumatera Utara
29
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.
PHP
dapat
mengirimkan
HTTP
header,
dapat
men
set
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.
Universitas Sumatera Utara
30
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
Standard
Diakhiri
Contoh
?>
Singkat
?>
…….. ?>
Script
<Script=‟php‟> <script language=‟php‟> …………………………
Universitas Sumatera Utara