Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
PENGAMANAN TRANSAKSI PAKET UMROH DENGAN MENERAPKAN KOMBINASI ALGORITMA CAESAR
CIPHER DAN RSA (Studi Kasus : PT. UMROH AMANAH HANDAL)
SKRIPSI
Sebagai Salah Satu Syarat Untuk Meraih Gelar Sarjana Komputer
Disusun Oleh:
Achmad Munandar
NIM. 1112091000135
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA 1440 H/2019
ii
UIN SYARIF HIDAYATULLAH JAKARTA
iii
UIN SYARIF HIDAYATULLAH JAKARTA
iv
UIN SYARIF HIDAYATULLAH JAKARTA
PERNYATAAN ORISINALITAS
Dengan ini saya menyatakan bahwa:
1. Skripsi ini benar-benar hasil karya Saya sendiri diajukan untuk memenuhi
salah satu persyaratan memperoleh gelar Strata 1 di UIN Syarif Hidayatullah
Jakarta.
2. Sumber yang Saya gunakan dalam penulisan ini telah Saya cantumkan sesuai
dengan ketentuan yang berlaku di UIN Syarif Hidayatullah Jakarta.
Jakarta, Agustus 2019
Achmad Munandar NIM. 1112091000135
v
UIN SYARIF HIDAYATULLAH JAKARTA
KATA PENGANTAR
Puji dan syukur penulis panjatkan kehadirat Allah SWT atas segala rahmat
dan karunia-Nya yang telah diberikan kepada penulis sehingga penulis dapat
menyelesaikan penelitian dan penulisan skripsi ini. Shalawat dan Salam selalu
tersampaikan kepada Nabi Besar Muhammad SAW, keluarga, sahabat dan para
pengikutnya hingga akhir zaman.
Skripsi penulis yang berjudul “Implementasi Algoritma Caesar Cipher dan
RSA untuk Transaksi Pembelian Paket Umroh Berbasis Web pada Aplikasi
Ecommerce Paket Umroh” disusun untuk memenuhi salah satu syarat dalam
menyelesaikan Program Strata Satu (S1) pada Program Studi Teknik Informatika,
Universitas Islam Negeri Syarif Hidayatullah Jakarta.
Suatu kebanggan tersendiri bagi penulis apabila skripsi ini dapat
bermanfaat terutama bagi pihak-pihak yang membutuhkannya. Pada kesempatan
ini, penulis ingin mengucapkan terima kasih kepaada pihak-pihak yang telah
membantu penulis, baik secara moril maupun materil, sehingga penulisan ini
terlaksana dengan baik. Secara khusus penulis mengucapkan terimakasih kepada:
1. Ibu Prof.Dr.Lily Surraya Eka Putri,M.Env.Stud, Selaku Dekan Fakultas Sains
dan Teknologi.
2. Bapak Dr. Imam Marzuki Shofi, MT. selaku Ketua Program Studi Teknik
Informatika dan Bapak Andrew Fiade M.Kom selaku Sekretaris Jurusan
vi
UIN SYARIF HIDAYATULLAH JAKARTA
Program Studi Teknik Informatika, yang selalu memberikan motivasi dan
arahan kepada penulis.
3. Ibu Arini, MT selaku Dosen Pembimbing I yang telah banyak sekali
memberikan motivasi, arahan, masukan, dan senantiasa mengingatkan penulis
untuk segera menyelesaikan skripsi ini.
4. Bapak Hendra Bayu Suseno, M.Kom selaku Dosen Pembimbing II, yang
telah memberikan arahan atau bimbingan kepada penulis.
5. Seluruh Dosen Program Studi Teknik Informatika, Fakultas Sains dan
Teknologi. Yang telah banyak memberikan bimbingan dan pengarahan
kepada penulis selama menjalankan aktifitas perkuliahan.
6. Ayahanda Darmin dan Ibunda Mutiatun yang selalu sabar dalam menghadapi
situasi sulit anaknya, serta selalu mendoakan siang malam demi kemudahan
segala urusan penulis.
7. KH. Luqman Hakim Hamid, selaku Pengasuh Pondok Pesantren Al Hamid
dan guru penulis yang telah memberikan doa dan nasihatnya kepada penulis.
8. Terimakasih kepada Nuryaumal Fitri, selaku istri penulis yang selalu
memberikan dukungan dan bersedia mendampingi penulis demi selesainya
skripsi ini
9. Bethari Zattira dan Taufik Indra, selaku sahabat penulis yang telah banyak
sekali memberikan bantuan dan dukungan kepada penulis dalam
menyelesaikan skripsi ini
10. Terima kasih juga buat teman yang bernama Faizal Bahri, selalu memberikan
semangat untuk mengerjakan skripsi ini.
vii
UIN SYARIF HIDAYATULLAH JAKARTA
11. Terimakasih kepada bapak Ridho Irawan, selaku Direktur PT. Umroh
Amanah Handal yang telah memberikan dukungannya kepada penulis mulai
dari sebelum penulis bergabung ke perusahaan beliau dan memberikan
penulis kelongggaran kerja demi terselesaikannya skripsi ini.
12. Terimakasih kepada Rifky Aditia Hamdan, selaku rekan kerja di PT. Umroh
Amanah Handal yang telah banyak membantu memberikan bantuan dan
support selama penulis melakukan riset disana.
13. Terimakasih kepada rekan-rekan seperjuangan di UIN Syarif Hidayatullah
Jakarta, yang telah memberikan dukungan dan semangat serta saran-saran
yang berguna hingga akhir penulisan skripsi ini.
14. Semua pihak yang telah membantu penulis dalam menyelesaikan skripsi ini,
yang tidak dapat penulis sebutkan satu per satu. Semoga Allah SWT
memberikan berkah dan karunia-Nya serta membalas kebaikan mereka.
Amin.
viii
UIN SYARIF HIDAYATULLAH JAKARTA
Nama : Achmad Munandar Program Studi : Teknik Informatika Judul : Pengamanan Transaksi Paket Umroh dengan
Menerapkan Kombinasi Algoritma Caesar Cipher dan RSA
ABSTRAK
Kemajuan teknologi dan komunikasi di era global saat ini membawa pengaruh bebas terutama pada bagian keamanan data dan informasi penting dan rahasia yang di alami di berbagai belahan dunia. Data menjadi sangat rentan untuk dicuri, dirusak dan dimanipulasi oleh pihak-pihak yang tidak bertanggung jawab. Dari fenomena tersebut maka dibutuhkan suatu metode yang dapat menjaga kerahasiaan informasi. Oleh karena itu, dibuatlah suatu aplikasi keamanan database transaksi pembelian paket umroh yang dapat menjaga dan mengamankan kerahasiaan informasi. Dalam perancangan aplikasi ini, penulis membuat suatu metode dengan cara proses enkripsi. Penulis akan menggunakan 2 (dua) algoritma kriptografi yaitu Caesar Cipher dan Rivest Shamir Adleman (RSA). Dengan aplikasi kriptografi ini, diharapkan informasi data transaksi yang disimpan dalam aplikasi akan aman dan tidak bocor kepada penyadap atau pihak yang tidak bertanggung jawab. Pada aplikasi ini, informasi yang dienkripsi hanya berupa data jamaah umroh dan hanya pihak PT. Amanah Umroh Handal yang dapat menggunakan aplikasi ini. Berdasarkan implementasi dan pengujian program, penulis dapat menyimpulkan bahwa aplikasi ini mudah digunakan dan mampu menjaga dan melindungi kerahasiaan data dan informasi. Serta dapat memberikan manfaat bagi pihak PT. Amanah Umroh Handal dalam menjalankan tugas pokok, fungsi, dan peran dalam keamanan tekonologi.
Kata Kunci : Kriptografi, Database, Enkripsi, Dekripsi, Caesar Cipher, RSA,
ix
UIN SYARIF HIDAYATULLAH JAKARTA
DARTAR ISI
LEMBAR PERSETUJUAN PEMBIMBING .................................................... ii
LEMBAR PENGESAHAN ................................................................................ iii
PERNYATAAN ORISINALITAS .................................................................... iv
KATA PENGANTAR .......................................................................................... v
ABSTRAK ......................................................................................................... viii
DAFTAR ISI ........................................................................................................ ix
DAFTAR GAMBAR .......................................................................................... xii
DAFTAR TABEL ............................................................................................. xiv
BAB I PENDAHULUAN ..................................................................................... 1
1.1. Latar Belakang........................................................................... 1 1.2. Perumusan Masalah ................................................................... 6 1.3. Batasan Masalah ........................................................................ 6 1.4. Tujuan Penelitian ....................................................................... 7 1.5. Manfaat Penelitian ..................................................................... 7
1.5.1 Bagi Peneliti ..................................................................... 7 1.5.2 Bagi PT Umroh Amanah Handal ..................................... 8 1.5.3 Bagi Universitas ............................................................... 8 1.6. Metodologi Penelitian ............................................................... 8 1.7. Sistematika Penulisan ................................................................ 9
BAB II LANDASAN TEORI ............................................................................ 11
2.1. Aplikasi ....................................................................................... 11 2.2. Kriptografi ................................................................................... 12
2.2.1 Definisi Kriptografi ........................................................ 12 2.2.2 Sejarah Kriptografi ......................................................... 12 2.2.3 Kriptografi Klasik .......................................................... 15 2.2.4 Kriptografi Modern ........................................................ 17 2.2.5 Tujuan dan Aspek Keamanan Kriptografi ..................... 18 2.2.6 Algoritma Kriptografi .................................................... 20
2.3. Database ...................................................................................... 26 2.4. Caesar Cipher ..................................................................................... 27
x
UIN SYARIF HIDAYATULLAH JAKARTA
2.4.1 Pengertian Caesar Cipher ................................................ 27 2.4.2 Algoritma Caesar Cipher ................................................. 28
2.5. RSA ............................................................................................... 30 2.5.1 Pengenalan Algoritma RSA .............................................. 30 2.5.2 Algoritma Pembangkitan Pasangan Kunci ........................ 30 2.5.3 Enkripsi Pesan Algoritma RSA ........................................ 31 2.5.4 Dekripsi Pesan Algoritma RSA ........................................ 31
2.6. PHP (Hypertext Preprocessor) ..................................................... 31 2.7. MySQL ......................................................................................... 32 2.8. Basis Data ..................................................................................... 33 2.9. Pengujian Blackbox ...................................................................... 34
BAB III METODOLOGI PENELITIAN ........................................................ 40
3.1. Metode Pengumpulan Data ........................................................... 40 3.1.2 Studi Lapangan ............................................................... 40 3.1.2 Studi Pustaka .................................................................. 41 3.1.3. Studi Literatur ................................................................. 41
3.2. Metode Pengembangan Sistem ...................................................... 42 3.3. Kerangka Berfikir .......................................................................... 45
BAB IV ANALISA DAN PEMBAHASAN ...................................................... 46
4.1. Requirements Planning .............................................................. 46 4.1.1 Analisa Masalah ............................................................... 46 4.1.2 Tinjauan Perusahaan ......................................................... 47
4.1.2.1 Bidang Bisnis / Usaha ..................................... 47 4.1.2.2 Visi dan Misi Perusahaan ............................... 47 4.1.2.3 Struktur Organisasi ......................................... 48
4.1.3 Identifikasi Sistem Berjalan ............................................. 50 4.1.4 Identifikasi Sistem Usulan ................................................ 51
4.2. Workshop Design ......................................................................... 52 4.2.1 Perancangan Proses Enkripsi ............................................ 52 4.2.2 Perancangan Proses Dekripsi ........................................... 57 4.2.3 Perancangan Model UML ................................................ 58
4.2.3.1 Use Case Diagram ........................................... 58 4.2.3.2 Activity Diagram ............................................. 76 4.2.3.3 Sequence Diagram ........................................... 84
4.2.4 Database Scheme .............................................................. 88 4.2.4.1 Class Diagram .................................................. 88 4.2.4.2 ERD ................................................................. 88 4.2.4.3 Logic Record Structur ...................................... 89 4.2.4.4 Spesifikasi Basis Data ...................................... 90
4.2.5 Perancangan User Interface .............................................. 96 4.2.5.1 Rancangan Layar Dashboard ......................... 96 4.2.5.2 Rancangan Layar Produk ............................... 97
xi
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.3 Rancangan Layar Tambah Produk ................. 98 4.2.5.4 Rancangan Layar Ubah Produk ..................... 99 4.2.5.5 Rancangan Layar Kategori Produk .............. 100 4.2.5.6 Rancangan Layar Partner ............................. 101 4.2.5.7 Rancangan Layar Jamaah ............................ 102 4.2.5.8 Rancangan Layar Pembayaran ..................... 103 4.2.5.9 Rancangan Layar Pemesanan ...................... 104 4.2.5.10 Rancangan Layar End User Home ............... 105 4.2.5.11 Rancangan Layar End User Register ........... 106 4.2.5.12 Rancangan Layar End User Detail Produk .. 107 4.2.5.13 Rancangan Layar End User Pemesanan ...... 108
4.3. Fase Implementasi ..................................................................... 108 4.3.1 Pengujian Sistem ............................................................... 109 4.3.2 Implementasi Perangkat .................................................... 110
BAB V Hasil dan Pembahasan ....................................................................... 111 5.1. Hasil Output .............................................................................. 111
5.1.1 Halaman Home Utama ................................................... 112 5.1.2 Halaman Detail Paket ..................................................... 112 5.1.3 Halaman Kategori Paket ................................................. 113 5.1.4 Halaman Keranjang Belanja ........................................... 114 5.1.5 Halaman Pendaftaran Jamaah ......................................... 114 5.1.6 Halaman Login Jamaah .................................................. 114 5.1.7 Halaman Profile Jamaah User Dashboard ...................... 115 5.1.8 Halaman Pesanan Saya User Dashboard ........................ 116 5.1.9 Halaman Detil Pesanan Saya User Dashboard ............... 116 5.1.10 Halaman Konfirmasi Pembayaran User Dashboard ..... 117 5.1.11 Halaman Login Admin ................................................. 118 5.1.12 Halaman Data Jamaah Admin Dashboard .................... 119 5.1.13 Halaman Pesanan Paket Umroh Admin Dashboard ..... 120 5.1.14 Halaman Detail Pesanan Paket Umroh Admin ............ 120 5.1.15 Halaman Verifikasi Pembayaran Admin Dashboard ... 121
5.2. Hasil Wawancara .......................................................................... 121 5.3. Pembahasan .............................................................................. 123
BAB VI PENUTUP .......................................................................................... 125
6.1. Kesimpulan ............................................................................... 125 6.2 Saran ......................................................................................... 126
DAFTAR PUSTAKA ....................................................................................... 127
xii
UIN SYARIF HIDAYATULLAH JAKARTA
DAFTAR GAMBAR
Gambar 1.1: Perilaku Pengguna Internet Indonesia .............................................. 1 Gambar 2.1: Proses Enkripsi Dekripsi ................................................................. 12 Gambar 2.2: Hieroglyph ...................................................................................... 13 Gambar 2.3: Scytale ............................................................................................. 14 Gambar 2.4: Mesin Enigma ................................................................................. 17 Gambar 2.5: Kriptografi Asimetris ....................................................................................... 23 Gambar 2.6: Kriptografi Simetris ......................................................................... 24 Gambar 2.7: Data Processing Cycle ...................................................................... 27 Gambar 2.8: Tabel Subtitusi Caesar Cipher .......................................................... 28 Gambar 3.1: Kerangka Berpikir ........................................................................... 45 Gambar 4.1: Struktur Organisasi PT. Umroh Amanah Handal ........................... 48 Gambar 4.2: Sistem Berjalan PT. Umroh Amanah Handal ................................. 50 Gambar 4.3: Sistem Usulan .................................................................................. 51 Gambar 4.4: Use Case Diagram Master ............................................................... 59 Gambar 4.5: Use Case Diagram Transaksi .......................................................... 60 Gambar 4.6: Use Case Diagram Konfirmasi Transaksi ......................................... 60 Gambar 4.7: Activity Diagram Login ..................................................................... 76 Gambar 4.8: Activity Diagram Master Kategori ................................................. 77 Gambar 4.9: Activity Diagram Master Produk .................................................... 78 Gambar 4.10: Activity Diagram Master Partner .................................................. 79 Gambar 4.11: Activity Diagram Registrasi Jamaah ............................................. 80 Gambar 4.12: Activity Diagram Transaksi Pesanan Jamaah ............................... 81 Gambar 4.13: Activity Diagram Transaksi Pembayaran Jamaah ........................ 82 Gambar 4.14: Activity Diagram Logout .............................................................. 83 Gambar 4.15: Sequence Diagram Login .............................................................. 83 Gambar 4.16: Sequence Diagram Kategori ......................................................... 84 Gambar 4.17: Sequence Diagram Produk ............................................................ 84 Gambar 4.18: Sequence Diagram Partner ............................................................ 85 Gambar 4.19: Sequence Diagram Jamaah ........................................................... 85 Gambar 4.20: Sequence Diagram Transaksi Pesanan .......................................... 86 Gambar 4.21: Sequence Diagram Transaksi Pembayaran ................................... 86 Gambar 4.22: Class Diagram ............................................................................... 87 Gambar 4.23: ERD (Entity Relationship Diagram) ............................................. 88 Gambar 4.24: LRS (Logical Record Structure) ................................................... 89 Gambar 4.25: Rancangan Layar Dashboard ........................................................ 95 Gambar 4.26: Rancangan Layar Produk .............................................................. 95 Gambar 4.27: Rancangan Layar Tambah Produk ................................................ 97 Gambar 4.28: Rancangan Layar Ubah Produk .................................................... 98 Gambar 4.28: Rancangan Layar Kategori Produk ............................................... 99 Gambar 4.30: Rancangan Layar Partner ............................................................ 100
xiii
UIN SYARIF HIDAYATULLAH JAKARTA
Gambar 4.31: Rancangan Layar Jamaah ............................................................ 101 Gambar 4.32: Rancangan Layar Pembayaran .................................................... 101 Gambar 4.33: Rancangan Layar Pemesanan ...................................................... 102 Gambar 4.34: Rancangan Layar End User Home .............................................. 103 Gambar 4.35: Rancangan Layar End User Register .......................................... 104 Gambar 4.36: Rancangan Layar End User Detail Produk ................................. 105 Gambar 4.37: Rancangan Layar End User Pemesanan ...................................... 106 Gambar 5.1: Halaman Home Utama .................................................................. 110 Gambar 5.2: Halaman Detail Paket Umroh ....................................................... 111 Gambar 5.3: Halaman Kategori Paket Umroh ................................................... 112 Gambar 5.4: Halaman Keranjang Belanja ......................................................... 112 Gambar 5.5: Halaman Pendaftaran Jamaah ....................................................... 113 Gambar 5.6: Halaman Login Jamaah ................................................................. 114 Gambar 5.7: Halaman Profile Jamaah ............................................................... 114 Gambar 5.8: Halaman Pesanan Saya User Dashboard ...................................... 115 Gambar 5.9: Halaman Detil Pesanan Saya User Dashboard ............................. 116 Gambar 5.10: Halaman Konfirmasi Pembayaran User Dashboard ................... 117 Gambar 5.11: Halaman Login Admin ............................................................... 118 Gambar 5.12: Halaman Data Jamaah Admin Dashboard .................................. 118 Gambar 5.13: Halaman Data Pesanan Admin Dashboard ................................. 119 Gambar 5.14: Halaman Detail Pesanan Admin Dashboard ............................... 120 Gambar 5.15: Halaman Verifikasi Pembayaran Admin Dashboard .................. 120
xiv
UIN SYARIF HIDAYATULLAH JAKARTA
DAFTAR TABEL
Tabel 2.1: Perbandingan Blackbox Testing dan Whitebox Testing ................... 35 Tabel 3.1: Perbandingan Studi Literatur Sejenis dengan Penulis ...................... 42 Tabel 4.1: Deskripsi Use Case Master Kategori ................................................ 61 Tabel 4.2: Deskripsi Use Case Master Produk ................................................... 64 Tabel 4.3: Deskripsi Use Case Master Jamaah .................................................. 68 Tabel 4.4: Deskripsi Use Case Transaksi Pesanan ............................................. 69 Tabel 4.5: Deskripsi Use Case Transaksi ........................................................... 71 Tabel 4.6: Deskripsi Use Case Transaksi Konfirmasi Pesanan ........................... 72 Tabel 4.7: Deskripsi Use Case Transaksi Konfirmasi Pembayaran ................... 73 Tabel 4.8: Struktur Table Jamaah ....................................................................... 90
1
UIN SYARIF HIDAYATULLAH JAKARTA
BAB I
PENDAHULUAN
1.1. Latar Belakang
Seiring dengan berkembangnya teknologi dan semakin mudahnya
akses internet untuk masyarakat, berbagai macam transaksi mulai dilakukan
dengan menggunakan aplikasi. Mulai dari transaksi untuk perjalanan,
penginapan, sampai transaksi untuk belanja kebutuhan sehari-hari banyak
dilakukan dengan menggunakan aplikasi.
Berdasarkan hasil survei 2016 oleh Asosiasi Penyelenggara Jasa
Internet Indonesia (APJII), sekitar 46,1 juta jiwa atau 34,8% dari populasi
Indonesia melakukan transaksi online lebih dari 1 bulan sekali.
Gambar 1.1 Perilaku Pengguna Internet Indonesia
2
UIN SYARIF HIDAYATULLAH JAKARTA
Meningkatnya transaksi secara online di Indonesia ini juga pastinya
akan berdampak pula pada meningkatan terjadinya kejahatan siber. CNN
Indonesia memberitakan bahwa kasus kejahatan siber atau cyber crime
menjadi kasus paling banyak yang ditangani Ditreskrimsus Polda Metro
Jaya di sepanjang 2016. Dari 1.627 kasus yang ditangani polisi, 1.207 kasus
merupakan kasus cyber crime. Dari 1.207 laporan kasus tersebut, sebanyak
699 kasus telah diselesaikan. Diperkirakan kejahatan siber ini akan selalu
meningkat drastis dari tahun ke tahun. Mulai dari peretasan akun, penipuan
via telepon, sampai pencurian data perusahaan kerap terjadi di era internet
saat ini. Diperkiraan kejahatan siber ini tidak akan berkurang jumlahnya dan
akan selalu meningkat seiring dengan meningkatnya penggunaan internet.
Dengan meningkatnya kejahatan siber di Indonesia, maka penyedia
jasa transaksi online di Indonesia harus meningkatkan keamanan sistemnya,
terutama pada penyedia jasa transaksi online dalam jumlah besar, salah
satunya adalah transaksi untuk ibadah umroh. PT. Amanah Umroh Handal
merupakan marketplace yang menyediakan paket umroh lebih dari 100
travel umroh terpercaya di Indonesia dengan izin resmi Kementerian
Agama. PT. Amanah Umroh Handal yang beralamat Equity Tower lt.18,
SCBD, Sudirman, Jakarta Selatan, saat ini menyediakan aplikasi berbasis
web dan Android untuk memudahkan jamaah dalam melaksanakan ibadah
umroh. Ibadah terasa mudah karena tidak lagi pusing untuk mencari travel
umroh dan paket umroh yang diinginkan. Pengguna dapat dengan mudah
3
UIN SYARIF HIDAYATULLAH JAKARTA
mencari biro umroh terpercaya disertai dengan berbagai paket umroh, mulai
dari umroh regular, umroh plus yang disertai dengan wisata ke negara Islam,
hingga umroh spesial bersama dengan ustadz-ustadz favorit. Selain
banyaknya pilihan biro umroh dan paket umroh, pengguna juga dimanjakan
dengan layanan pembuatan paspor online, sehingga jamaah tidak perlu
repot-repot mengantri di kantor imigrasi untuk mengurus paspor.
Pelaksanaan ibadah umroh membutuhkan biaya yang tidak sedikit.
Oleh karena itu, penyedia layanan transaksi umroh berbasis internet seperti
PT. Umroh Amanah Handal harus memiliki system keamanan yang bagus.
Selain keamanan jaringan dan keamanan aplikasi, keamanan data juga perlu
dijaga supaya tidak dapat dibaca oleh pihak yang tidak diinginkan. Jadi,
seandainya ada pihak yang telah berhasil masuk ke dalam sistem dan
berhasil memperoleh database, maka orang tersebut tidak dapat membaca isi
data dari database tersebut. Jika data tersebut tidak diamankan, akibatnya
orang tersebut akan menggunakan data yang ia peroleh untuk melakukan
kejahatan siber seperti melakukan penipuan terhadap jamaah atas nama PT.
Umroh Amanah Handal, menjual data kepada pihak lain, dan sebagainya.
Salah satu cara untuk mengatasi permasalahan keamanan data di
atas, yaitu dengan menggunakan metode enkripsi dan dekripsi yang dapat
digunakan untuk mengamankan data-data tersebut, di antaranya adalah
kriptografi. Kriptografi yang bertujuan untuk menyamarkan suatu pesan
(plaintext) menjadi suatu pesan yang sulit dibaca atau dimengerti
(chipertext). Maka dibutuhkan suatu solusi yang dapat mengamankan data
4
UIN SYARIF HIDAYATULLAH JAKARTA
tersebut dari pihak yang tidak memiliki kepentingan. Salah satunya dengan
menggunakan algoritma Caesar cipher dan RSA (Ron Rivest, Shamir, dan
Leonard Adleman). Caesar cipher merupakan teknik enkripsi yang paling
sederhana dan banyak digunakan. Cipher ini berjenis cipher substitusi,
dimana setiap huruf pada plaintextnya digantikan dengan huruf lain yang
tetap pada posisi alfabet, Rivest Shamir Adleman (RSA) merupakan teknik
kriptografi dengan memanfaatkan 2 bilangan prima. Dari kedua bilangan
prima tersebut dapat diperoleh sebuah public key (digunakan untuk
mengenkripsi sebuah plainteks) dan sebuah private key (digunakan untuk
mendekripsi cipherteks).
Adapun penelitian yang berkaitan dengan kriptografi dengan metode
Caesar Cipher atau RSA diantaranya yaitu Khairani Puspita, M. Rhifky
Wahyadi (2015) Analisis Kombinasi Metode Caesar Cipher, Vernam Cipher
dan Hill Cipher. Pada penelitian ini plaintext akan dikonversi terlebih
dahulu menjadi bilangan biner kemudian di enkripsi menggunakan
algoritma Caesar Cipher dengan penggeseran 5 langkah. Selanjutnya hasil
dari enkripsi akan di enkripsi kembali dengan menggunakan metode
Vernam Cipher dengan kunci bilangan biner dari 5 dan dikonversi menjadi
desimal dan dienkripsi kembali dengan metode Hill Cipher dengan kunci 5
dan hasil enkripsi di konversi kembali menjadi karakter.
Penelitian terkait lainnya yaitu Yusuf Triyuswoyo, Ferina Ferdianti,
Donny Ajie Baskoro, Lia Ambarwati, Septiawan (2014) Implementasi
Algoritma Caesar, Cipher Disk, dan Scytale pada aplikasi enkripsi dan
5
UIN SYARIF HIDAYATULLAH JAKARTA
dekripsi pesan singkat LumaSMS. Pada penelitian ini plaintext tidak
dikonversi ke dalam bilangan biner ataupun desimal. Karakter yang berupa
alfabet di enkripsi menggunakan algoritma Caesar Cipher sebanyak 1
langkah, kemudian di enkripsi kembali menggunakan metode Cipher Disk
dengan kunci "CHARLIE" dan di enkripsi kembali menggunakan metode
Skytale dengan jumlah 8 karakter setiap barisnya. Pada penelitian ini
Karakter angka tidak di enkripsi.
Selanjutnya penelitian lainnnya yang menggunakan algoritma RSA
yaitu Anang Paramita Wahyadyatmika, R. Rizal Istanto, dan Maman
Somantri (2014) Implementasi Algoritma Kriptografi RSA pada Surat
Elektronik (E-mail). Pada penelitian ini plaintext akan dikonversi menjadi
desimal kemudian dienkripsi menggunakan algoritma RSA.
Adapun penelitian yang saya lakukan yaitu melakukan melakukan
enkripsi dengan menggunakan metode Caesar Cipher dan RSA. Plaintext
akan dikonversi menjadi bilangan biner kemudian dienkripsi dengan
menggunakan metode Caesar Cipher dengan penggeseran sebanyak
sebanyak 3 langkah. Selanjutnya hasil enkripsi dikonversi menjadi desimal
dan dienkripsi kembali dengan metode RSA.
Algoritma RSA merupakan teknik kriptografi yang paling efektif
sampai saat ini. Hal ini disebabkan karena butuh waktu yang sangat lama
untuk mendapatkan private key. (Chandra, 2011). Karena alasan tersebutlah
akhirnya penulis memilih RSA sebagai algoritma yang digunakan dalam
kriptografi ini. Kemudian supaya hasil kriptografi ini lebih kuat lagi, penulis
6
UIN SYARIF HIDAYATULLAH JAKARTA
akan mengkombinasikannya dengan algoritma Caesar Cipher yang akan
diimplementasikan pada penggeseran bilangan biner.
Merujuk kelebihan yang dimiliki Algoritma Caesar Cipher dan RSA
pada penjelasan yang sudah disebutkan diatas maka penulis membuat
penelitian dengan judul “Pengamanan Transaksi Paket Umroh dengan
Menerapkan Algortitma Caesar Cipher dan RSA (Studi Kasus: PT
Umroh Amanah Handal)”. Melalui penelitian ini diharapkan Algoritma
Caesar Cipher dan RSA dapat diimplementasikan pada Aplikasi Ecommerce
yang akan dirancang untuk PT. Amanah Umroh Handal.
1.2. Rumusan Masalah
Berdasarkan latar belakang diatas maka dapat ditarik rumusan
masalah tersebut terdiri dari :
1. Bagaimana cara yang dapat dilakukan untuk melindungi data dan
informasi yang disimpan ke dalam record database?
2. Bagaimana konsep dasar matematika yang digunakan dalam penyandian
database menggunakan algoritma caesar cipher dan RSA?
1.3. Batasan Masalah
Berdasarkan rumusan masalah yang telah diuraikan diatas, maka
batasan masalah pada penelitian skripsi ini adalah membahas mengenai:
1. Metode algoritma kriptografi yang digunakan adalah Caesar Cipher dan
RSA.
7
UIN SYARIF HIDAYATULLAH JAKARTA
2. Data yang akan dienkripsi dan dekripsi adalah data berbentuk teks.
3. Data yang dienkripsi dan dekripsi hanya data Jamaah.
4. Bahasa pemrograman yang digunak an adalah PHP.
5. Database yang digunakan adalah MySQL.
6. Aplikasi yang dibuat berbasis web, dijalankan dengan menggunakan
browser.
7. Aplikasi ini dikembangkan untuk PT. Umroh Amanah Handal.
1.4. Tujuan Penelitian
Tujuan dari penelitian ini adalah Mengimplementasikan Algoritma
Caesar Cipher dan RSA pada transaksi pembelian paket umroh berbasis web
pada PT. Amanah Umroh Handal.
1.5. Manfaat Penelitian
Berikut ini adalah beberapa manfaat yang didapatkan dari penelitian
ini, yaitu:
1.5.1 Bagi Penulis
1. Mampu mengimplementasikan Caesar Cipher dan RSA dalam
Aplikasi transaksi pembelian paket umroh berbasis web-based
pada PT. Amanah Umroh Handal.
2. Dapat menerapkan ilmu yang diperoleh di bangku kuliah ,
khususnya pada Analisis Algoritma.
8
UIN SYARIF HIDAYATULLAH JAKARTA
1.5.2 Bagi PT. Amanah Umroh Handal
1. Membantu kinerja petugas PT. Amanah Umroh Handal dalam
mengelola data.
1.5.3 Bagi Universitas
1. Memperkaya keilmuan pada bidang Implementasi algoritma
Caesar Cipher dan RSA.
2. Sebagai referensi bagi peneliti selanjutnya.
1.6. Metode Penelitian
Metode penelitian yang digunakan terdiri dari dua macam, yaitu
metode pengumpulan data dan metode pengembangan sistem.
Dalam penelitian ini, metodologi penelitian yang digunakan peneliti
adalah:
1. Metode Penelitian
a. Studi Literatur
Penulisan ini dimulai dengan studi kepustakaan yaitu
mengumpulkan data dengan mencari dan membaca buku-buku,
jurnal, artikel, makalah, dan beberapa situs internet yang dapat
membantu dalam menunjang penyusunan Tugas Akhir.
2. Metode Pengembangan
9
UIN SYARIF HIDAYATULLAH JAKARTA
Dalam penyusunan laporan ini, metode pengembangan sistem ini
menggunakan Rapid Application Development (RAD) dan didukung
dengan permodelan berorientasi objek dengan tools-nya UML (Unified
Modeling Languange) versi 2.0. Alasan penulis menggunakan metode
RAD karena cocok dalam waktu pengerjaan yang singkat dan tidak
memerlukan daya yang cukup besar. (Kendall, J.E. & Kendall, K.E. 2010).
1.7. Sistematika Penulisan
Dalam penyusunan laporan skripsi ini disusun dengan sistematika
penulisan sebagai berikut :
BAB I PENDAHULUAN
Bab ini membahas secara keseluruhan mengenai penelitian laporan.
Bab ini berisi latar belakang, rumusan masalah, ruang lingkup, tujuan,
manfaat, metodologi penelitian, dan sistematika penulisan.
BAB II LANDASAN TEORI
Bab ini berisikan berbagai teori yang mendasari penelitian
permasalahan dan berhubungan dengan topik yang akan dibahas.
BAB III METODOLOGI PENELITIAN
Bab ini berisi uraian lebih rinci tentang metodologi penelitian yang
meliputi metodologi pengumpulan data dan metodologi pengembangan
sistem.
10
UIN SYARIF HIDAYATULLAH JAKARTA
BAB IV PERANCANGAN DAN PEMBAHASAN
Bab ini berisi tentang perancangan sistem yang sedang berjalan dan
yang diusulkan.
BAB V PENUTUP
Bab ini berisi kesimpulan yang didapat dari hasil penelitian yang
dilakukan dan saran-saran yang dapat digunakan sebagai bahan masukan
untuk pengembangan lebih lanjut.
11
UIN SYARIF HIDAYATULLAH JAKARTA
BAB II
LANDASAN TEORI
2.1. Aplikasi
Pengembangan adalah suatu usaha untuk meningkatkan kemampuan
teknis, teoritis dan konseptual sesuai dengan kebutuhan melalui pendidikan
dan latihan demi tercapainya suatu tujuan yang diinginkan (Wikipedia :
Kamus Besar Bahasa Indonesia).
Aplikasi merupakan suatu subteks perangkat lunak komputer yang
memanfaatkan kemampuan komputer langsung untuk melakukan satu tugas
yang diinginkan pengguna. Terdapat beberapa teori yang mendefinisikan
aplikasi seperti yang di kemukanan oleh beberapa ahli, di antaranya adalah
(Rahilah, dkk : 2013) :
1. Menurut Pranama (2012) aplikasi adalah satu unit perangkat lunak
yang dibuat untuk melayani kebutuhan akan beberapa aktivitas
seperti sistem perniagaan, game, pelayanan masyarakat,
periklanan, atau semua proses yang hampir dilakukan manusia.
2. Menurut Yuhefizar (2012) aplikasi merupakan program yang
dikembangkan untuk memenuhi kebutuhan pengguna dalam
menjalankan pekerjaan tertentu. Jadi aplikasi merupakan sebuah
program yang dibuat dalam sebuah perangkat lunak dengan
computer untuk memudahkan pekerjaan atau tugas-tugas seperti
penerapan, penggunaan dan penambahan data yang dibutuhkan.
12
UIN SYARIF HIDAYATULLAH JAKARTA
2.2. Kriptografi
2.2.1 Definisi Kriptografi
Kriptografi adalah ilmu mengenai teknik enkripsi di mana data diacak
menggunakan suatu kunci enkripsi menjadi sesuatu yang sulit dibaca oleh
seseorang yang tidak memiliki kunci dekripsi. Dekripsi menggunakan kunci
dekripsi mendapatkan kembali data asli. Proses enkripsi dilakukan
menggunakan suatu algoritma dengan beberapa parameter. Algoritma
biasanya tidak dirahasiakan, bahkan enkripsi yang mengandalkan
kerahasiaan algoritma dianggap sesuatu yang tidak baik. Rahasia terletak di
beberapa parameter yang digunakan, jadi kunci ditentukan oleh parameter.
Parameter yang menentukan kunci dekripsi itulah yang harus dirahasiakan
(Kromodimoeljo, 2010) Kriptografi pada awalnya dijabarkan sebagai ilmu
yang mempelajari bagaimana menyembunyikan pesan. Namun seiring
perkembangannya kriptografi pada pengertian modern adalah ilmu yang
bersandarkan pada teknik matematika untuk berurusan dengan keamanan
informasi seperti kerahasiaan, keutuhan data dan otentikasi entitas. Jadi, bila
diklasifikasikan terdapat kriptografi klasik dan kriptografi modern
.
13
UIN SYARIF HIDAYATULLAH JAKARTA
Gambar 2.1 : Proses Enkripsi dan Dekripsi (Kromodimoeljo, 2009)
2.2.2 Sejarah Kriptografi
Sejak 300 SM yang lalu kriptografi sudah diperkenalkan orang Mesir
lewat hieroglyph (Gambar 2.2) walaupun bukan dalam bentuk tulisan
standard. Hieroglyohcs diturunkan dari bahasa Yunani hieroglyphcs yang
berarti ukiran rahasia. Hieroglyohcs berevolusi menjadi hieratic, yaitu
stylized script yang lebih mudah untuk digunakan.
Gambar 2.2 : Hieroglyph (Dante, 2012)
Pada tahun 4000 tahun lalu kriptografi telah dikenal oleh orang-orang
Mesir lewat hieroglyph walaupun bukan dalam bentuk tulisan standard.
Pada zaman Rumawi Kuno, Julius Caesar mengirimkan pesan rahasia
kepada panglima perang di medan perang dengan mengganti semua susunan
alfabet dari: a b c d e f g h i j k l m n o p q r s t u v w x y z, menjadi: d e f g
h i j k l m n o p q r s t u v w x y z a b c.
14
UIN SYARIF HIDAYATULLAH JAKARTA
Pada zaman Romawi Kuno, telah ada alat untuk mengirim pesan
rahasia dengan nama scytale yang digunakan oleh tentara Sparta. Scytale
merupakan alat yang memiliki pita panjang dari daun papirus dan sebatang
silinder. Pesan ditulis diatas pita yang dililitkan pada sebatang silinder,
setelah itu pita dilepas dari batang silinder lalu dikirim. Untuk membaca
pesan, pita tersebut dililitkan kembali pada sebatang silinder yang
diameternya sama sehingga yang menjadi kunci pada Scytale adalah
diameter silinder.
Gambar 2.3 : Scytale (Silalahi , 2015)
Secara umum, sejarah perkembangan kriptografi dapat dibagi menjadi
dua bagian yaitu: kriptografi klasik dan kriptografi modern. Kriptogafi
klasik didefinisikan sebagai kriptografi yang menggunakan tulisan-tulisan
maupun dengan bantuan peralatan-peralatan mekanis tertentu sedangkan
kriptografi modern didefinisikan sebagai kriptografi yang menggunakan
proses-proses perhitungan matematis tertentu dengan bantuan komputasi
oleh komputer.
15
UIN SYARIF HIDAYATULLAH JAKARTA
Berbeda dengan kriptografi klasik yang menitik beratkan kekuatan
pada kerahasiaan algoritma yang digunakan (yang artinya apabila algoritma
yang digunakan telah diketahui maka pesan sudah jelas “bocor” dan dapat
diketahui isinya oleh siapa saja yang mengetahui algoritma tersebut),
kriptografi modern lebih menitikberatkan pada kerahasiaan kunci yang
digunakan pada algoritma tersebut (oleh pemakainya) sehingga algoritma
tersebut dapat saja disebarkan ke kalangan masyarakat tanpa takut
kehilangan kerahasiaan bagi para pemakainya.
Sedangkan di Jerman kriptografi umunya digunakan di kalangan
militer. Pemerintah Nazi Jerman membuat mesin enkripsi yang dinamakan
Enigma (Gambar 2.4). Mesin ini digunakan selama PD-II sebagai alat
pengkodean.
2.2.3 Kriptografi Klasik
Sebelum komputer ada, kriptografi dilakukan dengan algoritma
berbasis karakter. Algoritma yang digunakan termasuk ke dalam sistem
kriptografi simetri dan digunakan jauh sebelum sistem kriptografi kunci
publik ditemukan. Terdapat sejumlah algoritma yang tercatat dalam sejarah
kriptografi (sehingga dinamakan algoritma kriptografi klasik), namun
sekarang algoritma tersebut sudah usang karena ia sangat mudah
dipecahkan. Algoritma kriptografi klasik terdiri dari dua bagian yaitu:
Cipher Substitusi (Substitution Ciphers) dan Cipher Transposisi
(Transposition Ciphers) (Munir, 2009).
16
UIN SYARIF HIDAYATULLAH JAKARTA
1) Cipher Substitusi
Ini adalah algoritma kriptografi yang mula-mula digunakan
oleh kaisar Romawi, Julius Caesar untuk menyandikan pesan yang
ia kirim kepada para gubernurnya. Caranya adalah dengan
mengganti (menyulih atau mensubstitusi) setiap karakter dengan
karakter lain dalam susunan abjad (alfabet).
2) Cipher Transposisi
Pada cipher transposisi, plainteks tetap sama, tetapi
urutannya diubah. Dengan kata lain, algoritma ini melakukan
transpose terhadap rangkaian karakter di dalam teks. Nama lain
untuk metode ini adalah permutasi, karena transpose setiap
karakter di dalam teks sama dengan mempermutasikan karakter-
karakter tersebut.
3) Enigma Cipher
Perkembangan kriptografi menjadi semakin pesat pada masa-
masa perang. Memasuki masa perang dunia ke-2 (World War II),
pemerintah Jerman membuat mesin kriptografi yang dinamakan
Enigma.
17
UIN SYARIF HIDAYATULLAH JAKARTA
Gambar 2.4 : Mesin Enigma (Jauhari, 2014)
Enigma menggunakan sistem rotor (mesin berbentuk roda yang
berputar) untuk membentuk huruf cipherteks yang berubah-ubah. Setelah
setiap huruf dienkripsi, rotor kembali berputar untuk membentuk huruf
ciphertext baru untuk huruf plaintext berikutnya. Jerman meyakini bahwa
ciphertext yang dihasilkan Enigma tidak mungkin dipecahkan. Namun,
sejarah membuktikan bahwa pihak Sekutu berhasil juga memecahkan kode
Enigma. Keberhasilan memecahkan Enigma dianggap sebagai faktor yang
memperpendek Perang Dunia II menjadi hanya 2 tahun.
2.2.4 Kriptografi Modern
Kriptografi modern dipicu oleh perkembangan peralatan komputer.
Kriptografi modern menggunakan gagasan dasar yang sama seperti
kriptografi klasik (permutasi dan transposisi) tetapi penekanannya berbeda.
Pada kriptografi klasik, kriptografer menggunakan algoritma yang
sederhana, yang memungkinkan cipherteks dapat dipecahkan dengan mudah
(melalui penggunaan statistik, terkaan, intuisi, dan sebagainya).
18
UIN SYARIF HIDAYATULLAH JAKARTA
Algoritma kriptografi modern dibuat sedemikian kompleks sehingga
kriptanalis sangat sulit memecahkan cipherteks tanpa mengetahui kunci.
Algoritma kriptografi modern umumnya beroperasi dalam mode bit
ketimbang mode karakter (seperti yang dilakukan pada cipher substitusi
atau cipher transposisi dari algoritma kriptografi klasik).
Operasi dalam mode bit berarti semua data dan informasi (baik kunci,
plainteks, maupun cipherteks) dinyatakan dalam rangkaian (string) bit biner,
0 dan 1. Algoritma enkripsi dan dekripsi memproses semua data dan
informasi dalam bentuk rangkaian bit. Rangkaian bit yang menyatakan
plainteks dienkripsi menjadi cipherteks dalam bentuk rangkaian bit,
demikian sebaliknya. Perkembangan algoritma kriptografi modern berbasis
bit didorong oleh penggunaan komputer digital yang merepresentasikan data
dalam bentuk biner.
2.2.5 Tujuan dan Aspek Keamanan Kriptografi
Tujuan kriptografi terdiri dari empat, di antaranya :
a . Confidentiality (kerahasiaan)
Layanan yang ditujukan untuk menjaga agar pesan tidak
dapat dibaca oleh pihak-pihak yang tidak berhak. Di dalam
kriptografi, layanan ini direalisasikan dengan menyandikan pesan
menjadi cipherteks.
b . Authentication (otentikasi)
19
UIN SYARIF HIDAYATULLAH JAKARTA
Layanan yang berhubungan dengan identifikasi, baik
mengidentifikasi kebenaran pihak-pihak yang berkomunikasi (user
authentication atau entity authentication) maupun
mengidentifikasi kebenaran sumber pesan (data origin
authentication). Dua pihak yang saling berkomunikasi harus dapat
mengotentikasi satu sama lain sehingga ia dapat memastikan
sumber pesan. Pesan yang dikirim melalui saluran komunikasi juga
harus diotentikasi asalnya. Otentikasi sumber pesan secara implisit
juga memberikan kepastian integritas data, sebab jika pesan telah
dimodifikasi berarti sumber pesan sudah tidak benar. Oleh karena
itu, layanan integritas data selalu dikombinasikan dengan layanan
otentikasi sumber pesan.
c . Integrity (integritas)
Layanan yang menjamin bahwa pesan masih asli/utuh atau
belum pernah dimanipulasi selama pengiriman. Untuk menjaga
integritas data, sistem harus memiliki kemampuan untuk
mendeteksi manipulasi pesan oleh pihak-pihak yang tidak berhak,
antara lain penyisipan, penghapusan, dan pensubsitusian data lain
kedalam pesan yang sebenarnya.
d . Nonrepudiation (nirpenyangkalan)
Layanan untuk mencegah entitas yang berkomunikasi
melakukan penyangkalan, yaitu pengirim pesan menyangkal
20
UIN SYARIF HIDAYATULLAH JAKARTA
melakukan pengiriman atau penerima pesan menyangkal telah
menerima pesan.
Selain keempat tujuan tersebut, terdapat beberapa aspek-
aspek keamanan, antara lain:
1) Authority
Informasi yang berada pada system jaringan tidak dapat
dimodifikasi oleh pihak yang tidak berhak untuk mengaksesnya.
2) Privacy
Lebih kearah data-data yang bersifat pribadi.
3) Availability
Aspek availabilitas berhubungan dengan ketersediaan
informasi ketika dibutuhkan. Sistem informasi yang diserang
atau dijebol dapat menghambat atau meniadakan akses ke
informasi.
4) Access Control
Aspek ini berhubungan dengan cara pengaturan akses ke
informasi. Hal ini biasanya berhubungan dengan masalah
otentifikasi dan privasi. Kontrol akses seringkali dilakukan
dengan menggunakan kombinasi user id dan password ataupun
dengan mekanisme.
2.2.6 Algoritma Kriptografi
21
UIN SYARIF HIDAYATULLAH JAKARTA
Algoritma dalam kriptografi merupakan sekumpulan aturan (fungsi
matematis yang digunakan) untuk proses enkripsi dan dekripsi. Dalam
beberapa metode kriptografi terdapat beberapa perbedaan antara fungsi
enkripsi dan fungsi dekripsi.
Konsep matematis yang mendasari algoritma adalah relasi antara
himpunan, yaitu relasi antara himpunan yang berisi elemen-elemen
chipertext. Enkripsi dan dekripsi merupakan fungsi yang memetakan
elemen-elemen antara kedua himpunan tesebut. Misalkan himpunan elemen
plaintext dinotasikan P dan himpunan elemen chipertext dinotasikan C,
maka fungsi enkripsi E memetakan himpunan P ke himpunan C.
E(P) = C
Dan fungsi dekripsi memetakan himpunan C ke himpunan P,
D(C) = P
Karena fungsi dekripsi D mengembalikan himpunan C menjadi
himpunan P asal, maka algoritma kriptografi harus memebuhi persamaan
D(E(P)) = P
Tingkat keamanan suatu algoritma dalam kriptografi seringkali diukur
dari kuantitas proses yang dilakukan dalam suatu fungsi, baik itu fungsi
enkripsi maupun fungsi dekripsi. Proses tersebut juga dapat dihubungkan
dengan sumber daya yang dibutuhkan untuk mengerjakan fungsi tersebut,
misalkan dengan waktu, uang, dan lain-lain. Semakin besar proses yang
dikerjakan, yang berarti juga semakin lama waktu yang dibutuhkan,
menunjukan semakin kuat algoritma kriptografi tersebut.
22
UIN SYARIF HIDAYATULLAH JAKARTA
Pada kriptografi klasik, keamanan kriptografi terletak pada
kerahasiaan algoritma kriptografinya. Salah satu contohnya adalah mesin
enigma yang dikeluarkan oleh pemerintah Jerman pada masa Perang Dunia
ke – 2. Namun, hal ini menjadi titik lemah ketika algoritma ini bocor ke
pihak yang seharusnya tidak berwenang sehingga mengharuskan untuk
menyusun suatu algoritma baru tanpa rasa khawatir akan kebocoran
informasi tersebut, sebab informasi tersebut hanya dapat didekripsikan, oleh
pihak yang memang mempunyai kunci pribadi.
Algoritma kriptografi berdasarkan jenis kunci yang digunakan dapat
dibedakan menajadi dua jenis, yaitu :
1) Algoritma Asimetris
Kriptografi public key sering disebut dengan kriptografi asimetris.
Kunci yang digunakan pada proses enkripsi dan proses dekripsi pada
kriptografi kunci public (public key) ini berbeda satu sama lain. Jadi dalam
kriptografi kunci publik, suatu kunci generator akan menghasilkan dua
kunci berbeda dimana satu kunci digunakan untuk melakukan proses
enkripsi dan kunci yang lain digunakan untuk melakukan proses dekripsi.
Kunci yang digunakan untuk melakukan proses enkripsi akan
dipublikasikan kepada umum untuk dipergunakan secara bebas. Oleh sebab
itu, kunci yang digunakan untuk melakukan proses enkripsi disebut juga
kunci public. Sedangkan kunci yang digunakan untuk melakukan dekripsi
akan disimpan oleh pembuat kunci dan tidak akan dipublikasikan kepada
23
UIN SYARIF HIDAYATULLAH JAKARTA
umum. Kunci untuk melakukan dekripsi ini disebut dengan kunci pribadi
(private key).
Gambar 2.5 : Kriptografi Asimetris (Maizarti, 2011)
Dengan cara demikian, semua orang yang akan mengirimkan pesan
kepada pembuat kunci dapat melakukan proses enkripsi terhadap pesan
tersebut, sedangkan proses dekripsi hanya dapat dilakukan oleh pembat atau
pemilik kunci dekripsi. Dalam kenyataannya, kriptografi asimetris ini
dipakai dalam ssh, suatu layanan untuk mengakses suatu server.
Pada umumnya kunci publik digunakan sebagai kunci enkripsi
sementara kunci pribadi digunakan sebagai kunci dekripsi.
Kelebihan dari kriptografi asimetris :
1. Masalah keamanan pada distribusi kunci dapat lebih baik atau
tidak diperlukan pengiriman kunci rahasia.
2. Masalah manajemen kunci yang lebih baik karena jumlah
kunci yang lebih sedikit.
Kelemahan dari kriptografi asimetris :
1. Kecepatan proses enkripsi dan dekripsi yang lebih rendah bila
dibandingkan dengan algoritma simetris.
24
UIN SYARIF HIDAYATULLAH JAKARTA
2. Untuk tingkat keamanan yang sama, kunci yang digunakan
lebih panjang dibandingkan dengan algoritma simetris.
Algoritma-algoritma yang termasuk kedalam kriptorafi asimetris
diantaranya adalah : Elliptic Curve Cryptography (ECC), Digital Signature
Algorithm (DSA), LUC, RSA, ELGAMAL, Diffie-Hellman (DH).
2) Algoritma Simetris
Kriptografi simetris atau secret key adalah kriptografi yang hanya
melibatkan satu kunci dalam proses enkripsi dan dekripsi. Pada sistem
kriptografi simetris, kunci untuk proses enkripsi sama dengan kunci untuk
proses dekripsi. Keamanan sistem kriptografi simetris terletak pada
kerahasiaan kunci. Istilah lain untuk kriptografi simetris adalah kriptografi
kunci pribadi (private key cryptography) atau kriptografi konvensional
(conventional cryptography) (Kurniawan, 2014).
Gambar 2.6 : Kriptografi Simetris (Kurniawan, 2014)
Kelebihan dari kriptografi simetris :
1. Kecepatan operasi lebih tinggi bila dibandingkan dengan
algoritma asimetris.
25
UIN SYARIF HIDAYATULLAH JAKARTA
2. Karena kecepatannya yang cukup tinggi, maka dapat
digunakan pada sistem real time.
Kelemahan dari kriptografi simetris :
1. Untuk tiap pengiriman pesan dengan pengguna yang berbeda
dibutuhkan kunci yang berbeda pula, sehingga akan terjadi
kesulitan dalam manajemen kunci tersebut.
2. Permasalahan dalam pengiriman kunci itu sendiri yang disebut
“key distribution problem” . Algoritma kriptografi simetris
dapat dikelompokkan menjadi dua kategori antara lain:
a) Cipher aliran (stream cipher)
Algoritma kriptografi beroperasi pada plaintext atau ciphertext
dalam bentuk bit tunggal yang dalam hal ini rangkaian bit
dienkripsikan atau didekripsikan bit per bit. Cipher aliran
mengenkripsi satu bit setiap kali. Contoh algoritma stream
cipher: RC4, Panama dan Pike.
b) Cipher blok (block cipher)
Algoritma kriptografi beroperasi pada plaintext atau ciphertext
dalam bentuk blok bit, yang dalam hal ini rangkaian bit dibagi
menjadi blok-blok bit yang panjangnya sudah ditentukan
sebelumnya. Cipher blok mengenkripsi satu blok bit setiap
kali. Contoh algoritma block cipher: Blowfish, Rinjdael (AES),
Twofish, LOKI97, CAST-128, DES dan IDEA.
26
UIN SYARIF HIDAYATULLAH JAKARTA
2.3. Database
Database adalah sekumpulan data yang saling berhubungan yang
disimpan secara bersama sedemikian rupa dan tanpa pengulangan
(redudansi) yang tidak perlu, untuk memenuhi kebutuhan atau kumpulan file
/ table / arsip yang berhubungan yang disimpan di media penyimpanan
elektronis.
Database juga didefinisikan sebagai suatu kumpulan / susunan data
operasional yang lengkap dari suatu organisasi / perusahaan yang dikelola
dan disimpan secara terintegrasi dengan metode tertentu menggunakan
komputer sehingga mampu menyediakan informasi optimal yang diperlukan
oleh pemakainya. Database dapat dibuat dengan software yang ada seperti
Microsoft SQL Server, Oracle, MySQL, Microsoft Access, dBaseIII, dll.
(Hasrul & Siregar, 2016)
Aspek-aspek layanan keamanan data yang ada dalam suatu database
adalah :
• Kerahasiaan (confidentiality). Layanan untuk menjaga agar pesan tidak
dapat dibaca oleh pihak-pihak yang tidak berhak.
• Integritas (data integrity). Layanan yang menjamin bahwa pesan masih
asli/utuh, atau belum pernah dimanipulasi selama pengiriman.
• Otentikasi (authentication). Layanan yang berhubungan dengan
identifikasi baik mengedintifikasi kebeneran pihak-pihak yang
berkomunikasi (user authentication) maupun mengedintifikasi
kebenaran sumber data (data origin authentication).
27
UIN SYARIF HIDAYATULLAH JAKARTA
• Penyakalan (non-repudation), Layanan untuk mencegah entitas yang
berkomunikasi untuk melakukan penyangkalan yaitu pengirim pesan
menyangkal telah melakukan pengiriman pesan atau penerima pesan
menyangkal telah menerima pesan yang dikirimkan.
Proses pengolahan data dalam database terdiri dari tiga tahapan dasar
yang disebut siklus pengolahan data (data processing cycle) yaitu input,
processing, dan output sebagai berikut (Hasrul & Siregar, 2016).
Gambar 2.7 : Data Proccessing Cycle
2.4. Caesar Cipher
2.4.1 Pengertian Caesar Cipher
Metode penyandian ini dinamakan caesar cipher, setelah
digunakan Julius Caesar untuk berkomunikasi dengan para
panglimanya. Dalam kriptografi, caesar cipher dikenal dengan
beberapa nama seperti: shift cipher, caesar’s code atau caesar shift.
Caesar cipher merupakan teknik enkripsi yang paling sederhana dan
banyak digunakan. Cipher ini berjenis cipher substitusi, dimana setiap
huruf pada plaintextnya digantikan dengan huruf lain yang tetap pada
28
UIN SYARIF HIDAYATULLAH JAKARTA
posisi alfabet. Misalnya diketahui bahwa pergeseran = 3, maka huruf A
akan digantikan oleh huruf D, huruf B menjadi huruf E, dan seterusnya.
Gambar 2.8 : Tabel Subtitusi Caesar Cipher (Said, 2010)
2.4.2 Algoritma Caesar Cipher
Algoritma caesar cipher merupakan algoritma klasik yang
memiliki langkah-langkah logis sebagai berikut:
a. Menghitung panjang karakter / huruf yang diinputkan dalam
plaintext.
b. Tiap-tiap huruf diubah menjadi kode ASCII menggunakan proses
looping.
c. Untuk melakukan pergeseran / proses enkripsi maka kode ASCII
tersebut digeser dengan cara ditambah sebanyak pergeseran. Misal
pergeseran 3 huruf maka kode ASCII ditambah dengan 3.
d. Jika ditemukan spasi (ASCII=32), maka tidak usah dilakukan
penambahan.
29
UIN SYARIF HIDAYATULLAH JAKARTA
e. Hasil pergeseran bilangan ASCII dikembalikan lagi menjadi huruf /
karakter.
Transformasi Caesar Cipher dapat direpsentasikan dengan
menyelaraskan plaintext dengan ciphertext ke kiri atau kanan sebanyak
jumlah pergeseran yang diinginkan. Sebagai contoh dengan jumlah
pergeseran sebanyak 3 :
Plaintext : ABCDEFGHIJKLMNOPQRSTUVWXYZ
Ciphertext : DEFGHIJKLMNOPQRSTUVWXYZABC
Untuk membaca pesan yang dienkripsi penerima dapat
menyelaraskan huruf ciphertext yang diterima dengan plaintext yang
tepat berada di atasnya. Sebagai contoh enkripsinya sebagai berikut :
Plaintext : UIN SYARIF HIDAYATULLAH JAKARTA
Ciphertext : XLQ VBDULI KLGDBDWXOODK NDNDUWD
Pada penelitian kali ini, metode Caesar Cipher yang penulis
terapkan yaitu dengan menggeser bilangan biner dari karakter plaintext
sebanyak 3 langkah. Sebagai contoh Proses enkripsinya adalah sebagai
berikut:
Plaintext : U I N
30
UIN SYARIF HIDAYATULLAH JAKARTA
Biner : 01010101 01001001 01001110
Enkripsi Biner : 10101010 00101001 11001001
Chippertext : ª ) É
2.5. RSA
2.5.1 Pengenalan Algoritma RSA (Rivest Shamir Adleman)
Algoritma RSA (Rivest Shamir Adleman) diperkenalkan oleh tiga
peneliti dari MIT (Masschussets Institute of Technology) yaitu Ron
Rivest, Adi Shamir, dan Len Adleman pada tahun 1976. RSA merupakan
teknik kriptografi dengan memanfaatkan 2 bilangan prima. Dari kedua
bilangan prima tersebut dapat diperoleh sebuah public key (digunakan
untuk mengenkripsi sebuah plainteks) dan sebuah private key
(digunakan untuk mengdekripsi cipherteks). Algoritma RSA (Rivest
Shamir Adleman) merupakan teknik kriptografi yang paling efektif
sampai saat ini. Hal ini disebabkan karena butuh waktu yang sangat
lama untuk mendapatkan private key. (Chandra, 2011)
2.5.2 Algortima Pembangkitan Pasangan Kunci
Untuk pembangkita pasangan kunci RSA (Rivest Shamir
Adleman) digunakan algoritma sebagai berikut:
a) Dipilih dua buah bilangan prima sembarang yang besar p dan q.
Nilai p dan q harus dirahasiakan.
b) Dihitung n = p x q. Besaran n tidak perlu dirahasikan.
31
UIN SYARIF HIDAYATULLAH JAKARTA
c) Dihitung m = (p - 1) (q - 1).
d) Dipilih e (kunci publik) yang relative prima terhadap m.
e) Relatif prima terhadap m artinya factor pembagi terbesar keduanya
adalah 1, secara matematis disebut gcd (e, m) = 1. Untuk
mencarinya dapat digunakan algoritma Euclid.
f) Dihitung d (kunci pribadi) untuk mencari nilai d secara matematis
(d x e) mod m = 1.
2.5.3 Enkripsi Pesan Algoritma RSA
a) Menggunakan kunci public (e,n)
b) Plaintext M dinyatakan menjadi blok-blok m1, m2, m3.
c) Setiap blom m di enkripsikan menjadi blok c dengan rumus c1 =
m1e mod n
2.5.4 Dekripsi Pesan Algoritma RSA
a) Menggunakan kunci pribadi (d, n).
b) Pilih ciphertext C
c) Setiap blok c didekripsikan menjadi blok m dengan rumus m1 = c1d
mod n
2.6. PHP (Hypertext Preprocessor) PHP termasuk dalam Open Source Product, sehingga source code
PHP dapat diubah dan didistribusikan secara bebas. PHP juga mampu lintas
32
UIN SYARIF HIDAYATULLAH JAKARTA
platform. Artinya, PHP dapat berjalan di banyak sistem operasi diantaranya:
Sistem Operasi Microsoft Windows (semua versi), Linux, Mac OS, Solaris
(Arief, 2011).
Menurut Sibero (2012), “PHP adalah pemograman (interpreter)
adalah proses penerjemahan baris sumber menjadi kode mesin yang
dimengerti komputer secara langsung pada saat baris kode dijalankan”.
Menurut Anhar (2010), “PHP singakatan dari Hypertext
Preprocessor yaitu bahasa pemograman web server-side yang bersifat open
source”.
Berdasarkan pendapat para ahli yang dikemukakan di atas dapat
ditarik kesimpulan bahwa PHP adalah bahasa pemrograman yang digunakan
secara luas untuk penanganan pembuatan dan pengembangan sebuah situs
web dan bisa digunakan bersamaan dengan HTML.
2.7. MySQL
MySQL merupakan softwere Relational Database Management
System (RDBMS) atau server database yang dapat mengelola database
dengan sangat cepat, dapat menampung data dalam jumlah sangat besar,
dapat diakses oleh banyak user (multi-user), dan dapat melakukan suatu
proses secara sinkron atau bersamaan (multi-threaded) (Budi Raharjo,
2011).
Lisensi MySQL terbagi menjadi dua, yaitu dapat menggunakan
MySQL sebagai produk opensource dibawah General Public License (GNU)
33
UIN SYARIF HIDAYATULLAH JAKARTA
secara gratis atau dapat membeli lisensi dari versi komersialnya. MySQL
versi komersial tentu memiliki nilai lebih atau kemampuan yang tidak
disertakan pada versi gratis. Pada kenyataannya, untuk keperluan industri
menengah kebawah, versi gratis dapat digunakan dengan baik (Budi
Raharjo, 2011).
2.8. Basis Data
Basis data (database) menurut Yakub (2012) diarikan sebagai
markas atau gudang, tempat bersarang atau berkumpul. Prinsip utama basis
data adalah pengaturan data dengan tujuan utama fleksibilitas dan kecepatan
dalam pengambilan data kembali. Adapun tujuan basis data diantaranya
sebagai efisisensi yang meliputi speed, space & accurancy, menangani data
dalam jumlah besar, kebersamaan pemakaian, dan meniadakan duplikasi.
Beberapa manfaat basis data adalah untuk kecepatan dan
kemudahan, efisien ruang penyimpanan, keakuratan, ketersediaan,
kelengkapan, keamanan, dan kebersamaan. (Yakub, 2012) :
1. Kecepatan dan kemudahan, pemanfaatan basis data memungkinkan
untuk dapat menyimpan, mengubah, dan menampilkan kembali data
tersebut dengan lebih cepat dan mudah.
2. Efisisensi ruang penyimpanan, dengan basis data efisiensi/optimalisasi
penggunaan ruang penyimpanan dapat dilakukan, karena penekanan
jumlah redudansi data, baik dengan sejumlah pengkodean.
34
UIN SYARIF HIDAYATULLAH JAKARTA
3. Keakuratan, pembentukan relasi antardata bersama dengan penerapan
aturan tipe, domain, dan keunikan data dapat diterapkan dalam sebuah
basis data.
4. Ketersediaan, dapat memilah data utama, transaksi, data histori hingga
data kadaluarsa.
5. Kelengkapan, lengkap atau tidaknya data dalam sebuah basis data
bersifat relatif.
6. Keamanan, untuk menentukan siapa-siapa yang berhak menggunakan
basis data berserta objek-objek didalamnya dan menetukan jenis-jenis
operasi apa saja yang boleh dilakukan.
7. Kebersamaan pemakai, basis data dapat digunakan oleh beberapa
pemakai dan beberapa lokasi. Basis data yang dikelola oleh sistem
yang mendukung multi user dapat memenuhi kebutuhan, akan tetapi
harus menghindari inkonsistensi data.
2.9. Pengujian Blackbox
Pengujian Blackbox digunakan untuk menguji fungsi-fungsi
perangkat lunak yang dirancang. PengujianBlackbox berfokus pada
persyaratan fungsional perangkat lunak. Dengan demikian, pengujian
Blackbox memungkinkan perekayasa perangkat lunak mendapatkan
serangkaian kondisi masukan yang sepenuhnya menggunakan semua
persyaratan fungsional untuk suatu program. Pengujian Blackbox berusaha
menemukan kesalahan dalam kategori sebagai berikut (Pressman, 2009):
35
UIN SYARIF HIDAYATULLAH JAKARTA
1. Fungsi-fungsi yang tidak benar atau hilang.
2. Kesalahan antarmuka.
3. Kesalahan dalam struktur data atau akses basis data eksternal.
4. Kesalahan kinerja.
5. Inisialisasi dan kesalahan terminasi.
2.9.1. Proses dalam Blackbox Testing
Terdapat beberapa proses di dalam pengujian blackbox
testing yaitu sebagai berikut (Pressman, 2009):
1. Menganalisa kebutuhan dan spesifikasi dari perangkat lunak.
2. Pemilihan jenis input yang mungkin menghasilkan output yang
benar.
3. Pengujian dilakukan dengan input-input yang benar-benar telah
diseleksi.
4. Pembandingan output yang dihasilkan dengan output yang
diterapkan.
5. Menentukan fungsionalitas yang harusnya ada pada perangkat
lunak yang diuji.
Berikut ini merupakan tabel perbandingan antara metode
pengujian Blackbox Testing dan Whitebox Testing.
Tabel 2. 1 Perbandingan Blackbox Testing dan WhiteboxTesting (Pressman, 2009)
Metode Pengujian Kelebihan Kekurangan
36
UIN SYARIF HIDAYATULLAH JAKARTA
Blackbox Testing -Software tester dalam
jumlah yang banyak
dapat menguji program
tersebut tanpa harus
memiliki pengetahuan
tentang programming.
- Cocok untuk source
code dengan skala besar.
- Menguji program dari
sudut pandang user.
- Pengujian tidak spesifik
karena software tester
tidak memiliki akses ke
source code.
- Pengujian tidak efisien
karena software tester
memiliki pengetahuan
yang terbatas tentang
program.
- Software tester hanya
menjalankan beberapa
skenario pengujian yang
dipilih.
Whitebox Testing -Sebagai software
engineer yang memiliki
akses ke source code, hal
ini menjadi sangat mudah
untuk melakukan
skenario pengujian secara
efektif.
- Baris kode yang tidak
efisien dapat dihilangkan
agar mencegah bugs pada
- Karena dibutuhkan
softwareengineer yang
berpengalaman dalam
Whitebox Testing
sehingga mengeluarkan
biaya tambahan.
- Terkadang sangat sulit
melihat setiap baris kode
untuk mencari bugs pada
program yang akan diuji.
37
UIN SYARIF HIDAYATULLAH JAKARTA
program.
Dari perbandingan metode pengujian perangkat lunak di
atas, penulis memilih metode pengujian Blackbox Testing karena
dengan Blackbox Testing pengguna tidak harus mengetahui tentang
bahasa pemrograman, tetapi user hanya melihat output sistem sudah
sesuai dengan apa yang di masukkan (input).
2.10. Tinjauan Studi
Berikut ini adalah beberapa penelitian yang telah dilakukan
sebelumnya terkait dengan topik yang dibahas mengenai enkripsi:
a. Penulis : (Khairani Puspita & M. Rhifky Wayahdi, 2015)
Judul : Analisis Kombinasi Metode Caesar Cipher, Vernam
Cipher dan Hill Cipher dalam Proses Kriptografi..
Bentuk : Jurnal / ISSN : 2302 – 3805
Terbitan : STMIK AMIKOM Yogyakarta, 6-8 Februari 2015
Dekripsi : Dengan menggunakan metode Caesar Cipher dapat
disimpulkan bahawa jenis kriptografi klasik yang cukup
kuat jika dilihat dari segi keamanannya dengan sedikit
modifikasi. Metode ini dapat dikombinasikan dalam proses
kriptografi (enkripsi dan dekripsi) dengan tingkat keamanan
yang sangat baik dan sulit untuk dipecahkan. Metode
Caesar Cipher dengan memperkenalkan fungsi polinom
38
UIN SYARIF HIDAYATULLAH JAKARTA
acak dan modular pengurangan yang membuat metode ini
semakin kuat terhadap differential pembacaan sandi Metode
Caesar Cipher ini hanya membutuhkan sebuah kunci (key)
dalam proses enkripsi maupun dekripsi yang akan
memudahkan kita untuk mengingatnya.
b. Penulis : (Yusuf Tryuswoyo, Ferina Ferdianti, Donny Ajie Baskoro,
Lia Ambrawati & Septiawan, 2014)
Judul : Implementasi Algoritma Caesar, Cipher Disk dan
Sctytale pada Aplikasi Enkripsi dan Dekripsi Pesan
Singkat, Luma SMS
Bentuk : Jurnal / ISSN : 2302 – 3740 (2014)
Terbitan : Jurusan Manajemen Sistem Informasi Universitas
Gunadarma, 14 – 15 Oktober 2014
Dekripsi : Aplikasi keamanan pesan singkat dengan menggunakan
tiga algoritma kriptografi klasik, yaitu: Caesar, Cipher
Disk dan Scytale telah berhasil dibuat dan hasil dari
proses enkripsi dan dekripsi pesan singkat telah sesuai
dengan hasil tahapan setiap algoritma apabila dilakukan
pemrosesan secara manual. Dari hasil uji tes tingkat
keamanan, aplikasi ini mampu
c. Penulis : (Anang Paramita Wayahdyatmika, R. Rizal Isnanto, dan
Maman Somantri, 2014)
39
UIN SYARIF HIDAYATULLAH JAKARTA
Judul : Implementasi Algoritma Kritografi RSA pada surat
Elektronik (E-Mail).
Bentuk : Jurnal / ISSN : 2302 – 9927 (2014)
Terbitan : Jurusan Teknik Elektro, Universitas Diponegoro
Semarang, Desember 2014
Dekripsi : Aplikasi email client untuk melakukan proses enkripsi
pesan sebelum dikirimkan dan didekripsi saat menerima
pesan. Melalui aplikasi ini pengguna dapat melakukan
distribusi pesan secara aman. Pada penelitian ini juga
dilakukan analisis keamanan dari algoritma kriptografi
RSA dengan cara serangan langsung terhadap cipher text
saja, serangan faktorisasi, dan serangan brute force dan
dapat disimpulkan bahwa algoritma RSA cukup handal
untuk mengatasi serangan-serangan tersebut.
40
UIN SYARIF HIDAYATULLAH JAKARTA
BAB III
METODOLOGI PENELITIAN
Di dalam melakukan penelitian ini digunakan dua buah metodologi, yaitu
metode pengumpulan data untuk mencari informasi terkait penelitian berdasarkan
studi kasus yang diambil, dan metode pengembangan sistem yang dipakai untuk
mencapai tujuan dari penelitian. Berikut adalah metode yang dipakai adalah
sebagai berikut:
3.1. Metode Pengumpulan Data
Dalam penelitian ini, terdapat tiga tahap dalam melakukan
pengumpulan data untuk menggali informasi yang berguna bagi penelitian
ini. Tahap pengumpulan data tersebut meliputi studi lapangan, studi pustaka
dan studi literature.
3.1.1. Studi Lapangan
Observasi
Pengumpulan data secara observasi dilakukan dengan melihat
langsung proses dan kegiatan yang berjalan saat ini pada PT. Amanah
Umroh Handal. Melihat kegiatan proses pembelian transaksi paket umroh
dan selanjutnya sampai transaksi jamaah yang sudah melakukan
pembayaran. Kegiatan pengamatan langsung ini dilakukan di bawah
pengawasan Ridho Irawan selaku Direktur PT. Amanah Umroh Handal.
41
UIN SYARIF HIDAYATULLAH JAKARTA
Wawancara
Metode Wawancara ini dilakukan dengan cara melakukan diskusi
dengan beberapa narasumber yang sekaligus mengawasi penulis saat
melakukan riset yaitu Ridho Irawan. Wawancara dilakukan dengan
mengajukan pertanyaan mengenai alur dari proses bertransaksi di
umroh.com atau PT. Amanah Umroh Handal, dari mulai pendaftaran sampai
dengan proses selesainya transaksi paket umroh. Selain itu pihak
umroh.com mengusulkan untuk dibuatkannya aplikasi yang dapat berfungsi
sebagai keamanan transaksi dalam pembelian paket umroh.
Dari wawancara yang dilakukan dapat diketahui sistem yang
sedang berjalan saat ini di umroh.com, masalah-masalah yang mereka
hadapi serta kebijakan-kebijakan yang ada di umroh.com.
3.1.2. Studi Pustaka
Metode ini dilakukan dengan mencari sumber referensi yang relevan
mengenai topik yang akan dibahas, seperti buku teori, jurnal ilmiah, dan
artikel atau tulisan dari internet.
3.1.3. Studi Literatur
Metode ini dilakukan dengan menelusuri literatur terhadap beberapa
jurnal yang berkaitan dengan Caesar Cipher dan Rivest Shamir Adleman
(RSA). dari jurnal–jurnal tersebut diambil beberapa kesimpulan seperti
algoritma yang digunakan, kelebihan dan kekurangan setiap penelitian, dsb.
42
UIN SYARIF HIDAYATULLAH JAKARTA
Berikut adalah tabel perbandingan studi literatur dari beberapa jurnal
penelitian yang telah dipelajari dan dibandingkan dengan penulis:
Tabel 3. 1 Perbandingan Studi Literatur Sejenis dengan Penulis
3.2. Metode Pengembangan Sistem
Pada pengembangan sistem ini penulis menggunakan metode Rapid
Application Development (RAD) dalam menganalisis, merancang (design)
dan mengimplementasikan Sistem yang akan dibuat. Penulis menggunakan
metode pengembangan RAD karena dengan RAD memungkinkan pengguna
untuk aktif dan berparsitipasi dalam pengembangan sistem sehingga dapat
memenuhi secara langsung permintaan user. Adapun tahapan yang
dilakukan peneliti yaitu:
1. Requirement Planning (Perencanaan Syarat-Syarat)
Dalam tahap ini penulis melakukan langkah-langkah sebagai berikut :
43
UIN SYARIF HIDAYATULLAH JAKARTA
a) Analisis masalah, yaitu melakukan analisis terhadap masalah
yang terjadi pada sistem yang sedang berjalan pada PT.
Amanah Umroh Handal.
b) Gambaran umum organisasi, berisikan tentang sejarah instansi
dan struktur organisasi dari PT. Amanah Umroh Handal.
c) Sistem yang sedang berjalan, berisikan tentang tampilan dari
system yang sedang berjalan dan akan dikembangkan oleh
penulis pada PT. Umroh Handal.
d) Sistem usulan yang diusulkan untuk memperbaiki sistem yang
lama.
2. RAD Design Workshop (Workshop Desain RAD)
Dalam tahap ini penulis melakukan langkah-langkah sebagai berikut:
a) Melakukan perancangan input, meliputi keyword yang di-input
sebagai pattern yang akan dicari, serta data jamaah yang
bersumber dari PT. Amanah Umroh Handal.
b) Melakukan perancangan input, meliputi teks yang di-input
sebagai plainteks yang akan di enkripsi ke dalam database.
c) Merancang spesifikasi proses, menerjemahkan dalam algoritma
dan mengimplementasikan dalam bentuk program
d) Merancang Unifed Modeling Language (UML), yang terdiri
dari :
44
UIN SYARIF HIDAYATULLAH JAKARTA
i. Membuat use case diagram, bertujuan untuk
mendeskripsikan usecase yang telah dibuat pada tahap
pertama.
ii. Membuat activity diagram, bertujuan untuk membuat alur
kerja dari satu aktivitas ke aktivitas lainnya.
iii. Membuat sequence diagram, bertujuan untuk menjelaskan
interaksi objek yang disusun dalam suatu urutan waktu.
iv. Membuat class diagram, bertujuan untuk memperlihatkan
himpunan kelas, interface, kolaborasi dan relasi.
e) Merancang database, menetukan jumlah tabel, coloumn, type
coloumn dan hubungan antar tabel.
f) Merancang interface atau tampilan untuk mempermudah
pengguna.
g) Melakukan pengkodean program.
3. Implementation (Implementasi)
Tahap ini merupakan tahap presentasi dari hasil perancangan ke
dalam program. Dalam pembuatan Aplikasi E-Commerce Paket Umroh,
fase inplementasi terdiri dari tiga tahap, yaitu :
a) Implementasi Perangkat Lunak
b) Implementasi Perangkat Keras
c) Implementasi Interface
45
UIN SYARIF HIDAYATULLAH JAKARTA
3.3. Kerangka Berpikir
Dalam tahap ini penulis akan menggambarkan sebuah kerangka
berfikir penelitian sebagai berikut:
Gambar 3.1 Kerangka Berpikir
46
UIN SYARIF HIDAYATULLAH JAKARTA
BAB IV
ANALISISA DAN PEMBAHASAN
4.1 Requirements Planning (Perencanaan Syarat-Syarat)
4.1.1 Analisa Masalah
PT. Amanah Umroh Handal adalah marketplace yang menyediakan
paket umroh lebih dari travel umroh terpercaya di Indonesia dengan izin
resmi Kementerian Agama. Ibadah terasa mudah karena tidak lagi pusing
untuk mencari travel umroh dan temukan paket umroh yang diinginkan. Cari
paket umroh dengan mudah dan aman, banyaknya pilihan paket umroh dari
berbagai travel umroh terpercaya.
Pelaksanaan ibadah umroh membutuhkan biaya dengan nominal yang
cukup besar. Oleh karena itu, penyedia layanan transaksi umroh berbasis
internet seperti PT. Umroh Amanah Handal harus memiliki system keamanan
yang bagus. Selain keamanan jaringan dan keamanan aplikasi, keamanan data
juga perlu dijaga supaya tidak dapat dibaca oleh pihak yang tidak diinginkan.
Jadi, seandainya ada pihak yang telah berhasil masuk ke dalam sistem dan
berhasil memperoleh database, maka orang tersebut tidak dapat membaca isi
data dari database tersebut. Jika data tersebut tidak diamankan, akibatnya
orang tersebut akan menggunakan data yang ia peroleh untuk melakukan
kejahatan siber seperti melakukan penipuan terhadap jamaah atas nama PT.
Umroh Amanah Handal, menjual data kepada pihak lain, dan sebagainya.
47
UIN SYARIF HIDAYATULLAH JAKARTA
Pada Analisis Masalah dan Solusi yang penulis lakukan di tempat riset
belum ada sistem keamanan pada transaksi pembelian paket umroh
menggunakan kriptografi. Oleh karena itu dibutuhkan algoritma kriptografi
Caesar Cipher dan RSA yang dapat mengamankan record database data
pelangggan dan transaksi.
4.1.2 Tinjauan Perusahaan
Tinjauan terhadap organisasi menjelaskan tentang visi dan misi
organisasi, tujuan dibentuknya organisasi dan struktur organisasi.
4.1.2.1 Bidang Bisnis / Usaha
PT. Amanah Umroh Handal bergerak di bidang teknologi website dan
mobile android dan ios. PT. Amanah Umroh Handal adalah sebuah
marketplace online yang menjadi jembatan antara travel umroh dan jamaah
umroh dan menyediakan fitur muslim lainnya, seperti al-qur’an jadwal sholat
dan konten video islam.
4.1.2.2 Visi dan Misi Perusahaan
1. Visi
Menjadikan kehadiran kami sebagai tempat layanan terbesar
kebutuhan perjalanan umroh bagi saudara dan saudari muslim
dimanapun berada dan jamaah yang ingin berangkat umroh
48
UIN SYARIF HIDAYATULLAH JAKARTA
menjadi aman dan nyaman dalam bertransaksi di umroh.com (PT.
Amanah Umroh Handal).
2. Misi
Memenuhi kebutuhan umat muslim dalam melakukan ibadah
seperti berangkat umroh, tabungan umroh, membaca al-qur’an,
jadwal sholat dan fitur lainnya yang disedian oleh fitur teknologi
umroh.com (PT. Amanah Umroh Handal)
4.1.2.3 Struktur Organisasi
Adapun struktur organisasi yang ada pada PT. Amanah Umroh Handal
adalah sebagai berikut:
Gambar 4.1 Struktur Organisasi PT. Umroh Amanah Handal
Berikut merupakan uraian tugas dari struktur organisasi pada PT.
Amanah Umroh Handal :
49
UIN SYARIF HIDAYATULLAH JAKARTA
• Direktur bertugas untuk Memimpin dan Mengelolah perusahaan PT.
Amanah Umroh Handal dari Divisi yang ada di struktur organisasi
perusahaan.
• Marketing Manager bertugas untuk mempimpin marketing dan admin
dan menghandle kerja sama dengan mitra travel dan acara seperti
pendekatan dengan ibu-ibu pengajian dan bukan stand both di setiap
acara.
• Marketing bertugas untuk menghandle kerja sama dengan mitra travel
dan acara seperti pendekatan dengan ibu-ibu pengajian dan bukan
stand both di setiap acara
• Admin bertugas untuk melayani pengunjung atau pengguna aplikasi
website dan mobile dan mengupdate paket umroh ke whatsapp dan
social media
• Lead Programmer bertugas memimpin jalannnya suatu pengembangan
sistem dengan front end programmer, backend programmer dan mobile
programmer dan membuat kerangkat kerja agar memudahkan
perkerjaan programmer.
• Front Programmer berutgas pengembangan tampilan pengguna seperti
vendor dashboard, user dashboard dan tampilan home, login, dan
register menggunakan teknologi frontend seperti html, css dan
javascript
50
UIN SYARIF HIDAYATULLAH JAKARTA
• Backend Programmer bertugas pengembangan functional sistem atau
disebut dengan pengembangan API menggunakan teknologi backend
seperti laravel.
• Mobile Programmer bertugas untuk pengembangan aplikasi android
dan ios
• QA (Quality Assurance) bertugas untuk quality sistem saat pengujian
sebelum naik ke production yang sudah dikerjakan oleh team
programmer
• Dev Ops bertugas untuk mendeploy sebuah perkerjaan yang sudah
dilakukan oleh programmer dan di quality sistem oleh QA (Quality
Assurance)
4.1.3 Identifikasi Sistem Berjalan
Pada sistem yang berjalan saat ini, penyimpanan data jamaah ke
dalam database tidak dienkripsi. Sehingga jika database aplikasi
berhasil dicuri oleh seseorang, maka orang tersebut bisa
memanfaatkannya untuk keuntungan pribadi. Berikut adalah gambar
dari sistem berjalan dari Umroh.com:
51
UIN SYARIF HIDAYATULLAH JAKARTA
Gambar 4.2 Sistem Berjalan Umroh.com
4.1.4 Identifikasi Sistem Usulan
Dengan melihat kemungkinan permasalahan yang akan terjadi pada
sistem Umroh.com. Maka penulis mengusulkan suatu solusi dari
permasalahan tersebut, yaitu dengan menggunakan kriptografi pada
penyimpanan database. Untuk melindungi data jamaah dari pihak yang tidak
berhak untuk melihatnya, maka data jamaah yang akan dimasukan kedalam
database akan dienkripsi terlebih dahulu. Kemudian ketika data tersebut
butuh untuk dilihat, maka data tersebut di dekripsi sehingga dapat dibaca
kembali. Berikut adalah gambar dari sistem usulan yang dibuat oleh penulis:
52
UIN SYARIF HIDAYATULLAH JAKARTA
Gambar 4.2 Sistem Usulan
Dengan diterapkannya kriptografi pada penyimpanan database, maka
diharapkan data jamaah terlindung dari penyalahgunaan oleh orang-orang
yang berniat jahat dengan memanfaatkan data tersebut.
4.2 Workshop Design
4.2.1 Perancangan Proses Enkripsi
Penerapan algoritma Caesar Cipher dan RSA pada aplikasi adalah
untuk melindungi data jamaah dengan cara melakukan enkripsi pada
data transaksi tersebut. Pengguna algoritma Caesar Cipher pada
aplikasi ecommerce pada fitur transaksi digunakan untuk pengamanan
data di record database, proses enkripsi dan dekripsi diterapkan pada
proses melakukan proses selesai transaksi, dimana saat table transaksi
dan detail transaksi saat user sudah melakukan transaksi pada sistem
dan sistem akan secara otomatis menenkripsi data transaksi dan detail
transaksi ke dalam database, setelah masuk dan tersimpan kedalam
database data transaksi tersebut akan berubah menjadi data teks acak
53
UIN SYARIF HIDAYATULLAH JAKARTA
(ciphertext) yang sulit diartikan ke teks biasa. Sebaliknya pada proses
enkripsi, ketika data transaksi yang ada pada database akan dipanggil
dan ditampilkan kedalam aplikasi kembali, maka fungsi dekripsi akan
terpanggil sehingga akan merubah menjadi tesk biasa seperti pada
proses melakukan fitur transaksi pada sistem dan pengguna aplikasi
akan dapat membaca informasi transaksi dan detail transaksi tanpa
mengetahui proses enkripsi dan dekripsi tersebut sedang berjalan.
Pada contoh kali ini penulis akan mencoba untuk melakukan
enkripsi nama jamaah bernama Zaid. Berikut adalah proses enkripsi
dengan metode Caesar Cipher dan RSA yang diimplementasikan pada
sistem ini:
1. Konversi karakter plaintext menjadi bilangan biner 8 digit
Plaintext : Z a i d
Biner : 01011010 01100001 01101001 01100100
2. Lakukan penggeseran bilangan biner tersebut ke kanan
sebanyak 3 langkah
Biner : 01011010 01100001 01101001 01100100
Hasil : 01001011 00101100 00101101 10001100
3. Selanjutnya hasil enkripsi tersebut akan dikonversi kedalam
ASCII desimal untuk dienkripsi kembali menggunakan metode
RSA
Hasil : 01001011 00101100 01101001 10001100
ASCII Desimal : 75 44 45 140
54
UIN SYARIF HIDAYATULLAH JAKARTA
4. Proses pembentukan kunci RSA
Proses ini dilakukan oleh pihak penerima
a. Pilih bilangan prima p dan q
Misalkan p = 11 dan q = 29
b. Hitung n = p.q
n = 11.29
= 319
c. Hitung m = (p - 1)(q - 1)
m = (11 - 1)(29 - 1)
= 10*28
= 280
d. Pilih sebarang bilangan e, 1 < e < m, dengan gcd(e,m) = 1
Karena e mempunyai ketentuan e > 1 dan e < m, maka e
dimulai dari e = 2
Nilai e = 2, gcd(2,280)
2 = (0*280) + 2
280 = (140*2) + 0
Jadi, gcd(2,108) = 2
Karena gcd(2,280) = 2, maka tidak memenuhi gcd(e,m) = 1
Nilai e = 3, gcd(3, 280)
3 = (0*280) + 3
280 = (93*3) + 1
3 = 3*1
55
UIN SYARIF HIDAYATULLAH JAKARTA
Jadi, gcd(3, 280) = 1
Karena gcd(3, 280) = 1, maka memenuhi gcd(e,m) = 1
Jadi diperoleh nilai e = 3
e. Hitung nilai d, yaitu (1+nm)/e
Hitung nilai d = (1+nm)/e, kemudian dipilih nilai dari
n mulai dari 0 sampai dengan tak terhingga sampai
ditemukan nilai d berupa bilangan bulat.
n = 0 => d = (1 + 0. 280)/3
d= 0,3 (tidak memenuhi sarat)
n = 1 => d = (1 + 1.280)/3
d = 93,6 (tidak memenuhi sarat)
n = 2 => d = (1 + 2. 280)/3
d = 187 (memenuhi sarat)
Jadi, diperoleh nilai d = 65
f. Public Key (e, n) dan Private Key (d,n).
Public Key = (3, 319)
Private Key = (187, 319)
5. Proses Enkripsi RSA
56
UIN SYARIF HIDAYATULLAH JAKARTA
Proses enkripsi dilakukan dengan menggunakan Public Key,
yaitu (3, 319). Rumus untuk enkripsi yaitu:
c = Pe mod n
= P3 mod 319
Sebelumnya kita telah memperoleh hasil enkripsi dari Caesar
Cipher sebagai berikut:
ASCII Desimal : 75 44 45 140
P1 = 75, P2 = 44, P3 = 45, P4 = 140
Maka enkripsi datanya adalah sebagai berikut:
c1 = 753 mod 319
= 421875 mod 319
= 157
c2 = 443 mod 319
= 85184 mod 319
= 11
c3 = 453 mod 319
= 91125 mod 319
= 210
c4 = 1403 mod 319
= 2744000 mod 319
= 281
Maka hasil enkripsinya adalah 157,11,210,281
57
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.2 Perancangan Proses Dekripsi
Untuk dapat membaca text yang sudah dienkripsi, maka kita perlu
melakukan proses dekripsi. Berikut adalah langkah-langkah proses
dekripsi:
1. Proses Dekripsi RSA
Proses dekripsi dilakukan dengan menggunakan Private Key,
yaitu (65, 133). Rumus untuk enkripsi yaitu:
P = cd mod n
P = c65 mod 133
Sebelumnya kita telah memperoleh hasil enkripsi dari Caesar
Cipher sebagai berikut:
ASCII Desimal: 157 11 210 281
c1 = 157, c2 = 11, c3 = 210, c4 = 218
Maka enkripsi datanya adalah sebagai berikut:
P1 = 157187 mod 319
= 75
P2 = 11187 mod 319
= 44
P3 = 210187 mod 319
= 45
P4 = 281187 mod 319
= 140
2. Konversi ASCII desimal menjadi bilangan biner
58
UIN SYARIF HIDAYATULLAH JAKARTA
ASCII Desimal : 75 44 45 140
Biner : 01001011 00101100 00101101 10001100
3. Lakukan penggeseran bilangan biner tersebut ke kiri sebanyak
3 langkah
Biner : 01001011 00101100 00101101 10001100
Hasil : 01011010 01100001 01101001 01100100
4. Konversi bilangan biner menjadi karakter
Hasil : 01011010 01100001 01101001 01100100
Karakter : Zaid
4.2.3 Perancangan Model UML
Sebagaimana yang telah dijelaskan pada bab sebelumnya perancangan
pemodelan objek mengguakan UML untuk merancang dan pengembangan
aplikasi. Selanjutnya akan dijelaskan UML apa saja yang digunakan dalam
penelitian ini.
4.2.3.1 Use Case Diagram
Use case diagram mendeskripsikan interaksi aktor didalam
Sistem. Hal ini diperlukan agar sistem dapat digunakan sesuai
kebutuhan. Adapun langkah-langkah dalam membuat usecase diagram
adalah sebagai berikut :
59
UIN SYARIF HIDAYATULLAH JAKARTA
Identifikasi Aktor :
Pengidentifikasian terhadapat aktor diperlukan agar sistem dapat
digunakan sesuai kebutuhan. Berikut ini identifikasi aktor pada Aplikasi
Sistem Ecommerce Paket Umroh :
No Nama Aktor Deskripsi
1 Admin Orang yang memiliki hak untuk mengatur hak
akses pengguna sistem administrator (user) dan
mengelola seluruh data didalam aplikasi seperti,
mengelola data jamaah, data produk, data
transaksi pesanan dan data pembayaran.
2 Jamaah Orang yang memiliki hak akses untuk dapat
menjadi user atau pengunjung halaman user
dashboard pada end user atau frontend
Berdasarkan Aktor dan fungsi yang terdapat dalam aplikasi maka
digambarkan use case seperti berikut :
60
UIN SYARIF HIDAYATULLAH JAKARTA
1. Use Case Diagram Master
Gambar 4.4 Use Case Diagram Master
2. Use Case Data Transaksi
Gambar 4.5 Use Case Diagram Transaksi
61
UIN SYARIF HIDAYATULLAH JAKARTA
3. Use Case Data Konfirmasi Transaksi
Gambar 4.6 Use Case Diagram Konfirmasi Transaksi
Narasi Use Case
Dari use case pada gambar 4.1 akan dijelaskan dengna narasi
sebeagai berikut :
Tabel 4.1 Deskripsi Use Case Master Kategori
UseCase Name Master
UseCase Id 1
Actor Admin
Description
Use case menggambarkan kegiatan
admin untuk mengelolah kategori
produk
Precondotion Admin mengelolah master kategori
produk
Typical Course
and Event
Actor Action System Reponse
1. Admin 2. Untuk
62
UIN SYARIF HIDAYATULLAH JAKARTA
membuka
halaman menu
master dan pilih
halaman data
kategori dan
muncul halaman
list data kategori.
menambah data
kategori, admin
klik tombol
tambah kategori
produk. Isi data
kategori produk
baru, lalu klik
tombol tambah
data
3. Sistem akan
menyimpan data
kategori
berdasarkan data
yang di input oleh
admin.
4. Jika admin
ingin mengubah
data kategori
yang sudah
disimpan, Admin
harus mencari
data kategori
yang ingin
diubah di kolom
Search terlebih
dahulu.
5. Sistem akan
memunculkan
data kategori yang
6. Admin pilih
tombol edit
untuk mengubah
63
UIN SYARIF HIDAYATULLAH JAKARTA
dipilih oleh admin data kategori
sesuai dengan
yang di inginkan.
Apabila sudah
mengubah data,
admin pilih
tombol edit data.
7. Sistem akan
mengubah data
kategori.
8. Jika admin
ingin menghapus
data kategori
yang sudah
disimpan, Admin
harus mencari
data kategori
yang ingin
dihapus di kolom
Search terlebih
dahulu.
9. Sistem akan
memunculkan
data kategori yang
dipilih oleh
10. Admin pilih
tombol remove
untuk menghapus
data kategori
64
UIN SYARIF HIDAYATULLAH JAKARTA
admin. sesuai dengan
yang di inginkan.
Lalu muncul pop
up untuk
memastikan
bahwa admin
ingin menghapus
atau tidak data
tersebut, apabila
ingin menghapus
data, admin pilih
tombol remove
data.
11. Sistem akan
menghapus data
kategori
12. Sistem akan
membersihkan
form input data
kategori, sesuai
dengan data
kategori yang
dipilih untuk di
hapus.
13. Use case ini
berakhir ketika
65
UIN SYARIF HIDAYATULLAH JAKARTA
sistem menutup
form dan kembali
ke menu utama.
Post Condition Admin mengelolah master kategori.
Tabel 4.2 Deskripsi Use Case Master Produk
UseCase Name Master
UseCase Id 2
Actor Admin
Description Use case menggambarkan kegiatan
admin untuk mengelolah produk
Precondotion Admin mengelolah master produk
Typical Course
and Event
Actor Action System Reponse
1. Admin
membuka
halaman menu
master dan pilih
halaman produk
dan muncul
halaman list
produk.
2. Untuk
menambah data
produk, admin
klik tombol
tambah produk.
Isi data produk
baru, lalu klik
tombol tambah
66
UIN SYARIF HIDAYATULLAH JAKARTA
data.
3. Sistem akan
menyimpan data
produk
berdasarkan data
yang di input oleh
admin.
4. Sistem akan
menyimpan data
produk
berdasarkan data
yang di input
oleh admin.
5. Sistem akan
memunculkan
data produk yang
dipilih oleh
admin.
6. Admin pilih
tombol edit
untuk mengubah
data produk
sesuai dengan
yang di inginkan.
Apabila sudah
mengubah data,
admin pilih
tombol edit data
7. Sistem akan
mengubah data
produk
8. Jika admin
ingin menghapus
data produk yang
sudah disimpan,
Admin harus
mencari data
67
UIN SYARIF HIDAYATULLAH JAKARTA
produk yang
ingin dihapus di
kolom Search
terlebih dahulu
9. Sistem akan
memunculkan
data produk yang
dipilih oleh
admin.
10. Admin pilih
tombol remove
untuk
menghapus data
produk sesuai
dengan yang di
inginkan. Lalu
muncul pop up
untuk
memastikan
bahwa admin
ingin menghapus
atau tidak data
tersebut, apabila
ingin menghapus
data, admin pilih
tombol remove
data.
11. Sistem akan 12. Sistem akan
68
UIN SYARIF HIDAYATULLAH JAKARTA
menghapus data
produk.
membersihkan
Form input data
produk, sesuai
dengan data
produk yang
dipilih untuk di
hapus.
13. Use case ini
berakhir ketika
sistem menutup
form dan kembali
ke menu utama.
Post Condition Admin mengelolah master produk.
Tabel 4. 3 Deskripsi Use Case Master Jamaah
UseCase Name Master
UseCase Id 3
Actor Jamaah
Description
Use case menggambarkan kegiatan si
jamaah atau user mendaftar sebagai
jamaah
Precondotion Aktor mendaftar sebagai jamaah
69
UIN SYARIF HIDAYATULLAH JAKARTA
Typical Course
and Event
Actor Action System Reponse
1. Jamaah masuk
ke halaman web
2. memilih menu
Register untuk
mendaftar data
jamaah
3. input data
jamaah
4. Lalu klik
tombol simpan.
5. Sistem akan
menyimpan data
jamaah
berdasarkan data
yang di input oleh
jamaah
6. Pelanggan
menginput
username dan
password lalu
klik tombol
login.
Post Condition Jamaah menginput data jamaah.
Tabel 4.4 Deskripsi Use Case Transaksi Pesanan
UseCase Name Transaksi
UseCase Id 4
Actor Jamaah
Description Use case menggambarkan jamaah
memesan paket umroh di web
70
UIN SYARIF HIDAYATULLAH JAKARTA
Precondotion Aktor memesan produk paket umroh
Typical Course
and Event
Actor Action System Reponse
1. Setelah jamaah
sudah memiliki
akun, jamaah bisa
login dan
melakukan
pemesanan serta
melakukan
transaksi
2. Untuk
melakukan
pemesanan,
jamaah
membuka
halaman kategori
produk, lalu pilih
produk yang
ingin di pesan
dan input jumlah
pemesanan.
3. Pelanggan pilih
tombol “Add To
Cart”.
4. Akan muncul
halaman data
pemesanan yang
sudah dipesan,
jamaah dapat
menghapus,
menambah,
maupun
71
UIN SYARIF HIDAYATULLAH JAKARTA
melanjutkan
pemesanan lalu
pilih Checkout.
5. Sistem akan
menyimpan data
pemesanan
berdasarkan data
yang di input oleh
jamaah
Post Condition Jamaah memesan paket produk.
Tabel 4.5 Deskripsi Use Case Transaksi Pembayaran
UseCase Name Transaksi
UseCase Id 5
Actor Jamaah
Description Use case menggambarkan jamaah
melakukan pembayaran
Precondotion Aktor melakukan pembayaran
Typical Course
and Event
Actor Action System Reponse
1. Setelah
pelanggan
2. Sistem
menampilkan
72
UIN SYARIF HIDAYATULLAH JAKARTA
checkout
pemesanan, dan
jamaah sudah
melakukan
pembayaran, lalu
pilih menu
konfirmasi
pembayaran
form
pembayaran.
3. Jamaah upload
foto bukti transfer
4. Sistem akan
menyimpan data
pembayaran
berdasarkan data
yang di upload
oleh jamaah.
5. Sistem akan
menyimpan data
pembayaran yang
baru dikonfirmasi
berdasarkan data
pembayaran yang
di setujui oleh
admin
6. Admin akan
terima
konfirmasi
pembayaran
Post Condition Jamaah menginput pembayaran.
73
UIN SYARIF HIDAYATULLAH JAKARTA
Tabel 4.6 Deskripsi Use Case Transaksi Konfirmasi Pemesanan
UseCase Name Transaksi
UseCase Id 6
Actor Admin
Description Use case menggambarkan admin
melakukan konfirmasi pemesanan
Precondotion Aktor melakukan konfirmasi
pemesanan
Typical Course
and Event
Actor Action System Reponse
1. Admin
membuka
halaman menu
transaksi, lalu
pilih pemesanan
2. Admin dapat
melakukan
update status
pemesanan
berupa cancel,
pending,
complete
3. Untuk
melakukan update
status pemesanan,
admin pilih nomor
pemesanan, lalu
4. Pilih menu
order status, lalu
akan muncul list
order status,
seletalah
74
UIN SYARIF HIDAYATULLAH JAKARTA
akan muncul
tampilan detail
pemesanan.
memilih salah
satu list order
status, klik
tombol update.
5. Sistem akan
menyimpan data
pemesanan
berdasarkan data
yang di input oleh
admin.
Post Condition Admin mengubah konfirmasi
pesanan.
Tabel 4.7 Deskripsi Use Case Transaksi Konfirmasi Pembayaran
UseCase Name Transaksi
UseCase Id 7
Actor Admin
Description Use case menggambarkan admin
melakukan konfirmasi pembayaran
Precondotion Aktor melakukan konfirmasi
pembayaran
Typical Course Actor Action System Reponse
75
UIN SYARIF HIDAYATULLAH JAKARTA
and Event 1. Admin
membuka
halaman menu
transaksi, lalu
pilih pembayaran.
2. Akan muncul
list pembayaran.
3. Admin bisa
update status
pembayaran
berupa sedang
diproses dan lunas
4. Pilih tombol
edit pada nomor
pemesanan, lalu
akan muncul
detail
pembayaran, lalu
admin bisa
mengubah status
pembayaran lalu
pilih tombol edit.
5. Sistem akan
menyimpan data
pembayaran
berdasarkan data
yang di input oleh
admin.
6. Untuk
melakukan cetak
invoice, admin
pilih tombol
cetak invoice,
lalu akan muncul
tampilan detail
invoice.
76
UIN SYARIF HIDAYATULLAH JAKARTA
Post Condition Admin mengubah konfirmasi
pembayaran.
4.2.3.2 Activity Diagram
Setelah perancangan use case selesai maka akan dilanjutkan
dengan perancangan activity diagram untuk menggambarkan kegiatan
sistem. Berikut adalah penggambaran activity diagram:
1. Activity Diagram Login
Gambar 4.7 Activity Diagram Login
77
UIN SYARIF HIDAYATULLAH JAKARTA
Keterangan :
Activity Diagram diatas dilakukan oleh 2 aktor yaitu admin dan
jamaah. Untuk masuk kedalam system maka actor harus login
telebih dahulu dengan memasukan email dan password. Setelah itu
system akan memvalidasi apakah data tersebut valid atau tidak
apabila data email dan password tidak valid maka aktof harus
memasukkan lagi email dan password, maka aktof akan masuk
kedalam sistem.
78
UIN SYARIF HIDAYATULLAH JAKARTA
2. Activity Diagram Master Kategori
Gambar 4.8 Activity Diagram Master Kategori
Keterangan:
Alur dan proses dari activity diagram mengelolah data kategori.
Aktor membuka menu kategori lalu menampilkan data kategori dan
aktor dapat menambah, mengubah dan mengedit data kategori.
79
UIN SYARIF HIDAYATULLAH JAKARTA
3. Activity Diagram Master Produk
Gambar 4.9 Activity Diagram Master Produk
Keterangan :
Alur dan proses dari activity diagram mengelolah data produk. Aktor
membuka menu produk lalu menampilkan data produk dan aktor
dapat menambah, mengubah dan mengedit data produk.
80
UIN SYARIF HIDAYATULLAH JAKARTA
4. Activity Diagram Master Partner
Gambar 4.10 Activity Diagram Master Partner
81
UIN SYARIF HIDAYATULLAH JAKARTA
Keterangan :
Alur dan proses dari activity diagram mengelolah data partner. Aktor
membuka menu partner lalu menampilkan data partner dan aktor
dapat menambah, mengubah dan mengedit data partner.
5. Activity Diagram Registrasi Jamaah
Gambar 4.11 Activity Diagram Master Jamaah
82
UIN SYARIF HIDAYATULLAH JAKARTA
Keterangan:
Alur dan Proses activity diagram Aktor pilih menu registrasi lalu
aktor menginput form registrasi, form akan mengecek jika valid data
jamaah pilih daftar lalu simpan data, jika tidak mengulan ke input
form registrasi.
6. Activity Diagram Transaksi Pesanan Jamaah
Gambar 4.12 Activity Diagram Transaksi Pesanan Jamaah
83
UIN SYARIF HIDAYATULLAH JAKARTA
Keterangan :
Alur dan Proses activity diagram Aktor Pilih Login lalu pili kategori
produk pesanan yang ingin di pilih, lalu masukan pesanan ke dalam
kerangjang belanja, aktor pilih metode pembayaran lalu pilih
checkout, simpan data pesanan.
7. Activity Diagram Transaksi Pembayaran Jamaah
Gambar 4.13 Activity Diagram Transaksi Pembayaran Jamaah
Keterangan :
Alur dan Proses activity diagram Aktor Pilih menu konfirmasi
pembayaran lalu aktof input form konfirmasi pembayaran da kirim
foto bukti transfer lalu simpan data jika valid admin mengubah status
konfirmasi pembayaran jika tidak jamaah kembali ke halaman menu
konfirmasi pembayaran.
84
UIN SYARIF HIDAYATULLAH JAKARTA
8. Activity Diagram Logout
Gambar 4.14 Activity Diagram Logout
Keterangan :
Alur dan Proses activity diagram Aktor kehalaman utama apabila
aktor ingin keluar dari aplikasi aktof pilih menu logout, aktor
diarahakan kehalaman login.
4.2.3.3 Squence Diagram
1. Squence Diagram Login
Gambar 4.15 Squence Diagram Login
85
UIN SYARIF HIDAYATULLAH JAKARTA
2. Squence Diagram Data Kategori
Gambar 4.16 Squence Diagram Kategori
3. Squence Diagram Data Produk
Gambar 4.17 Squence Diagram Produk
86
UIN SYARIF HIDAYATULLAH JAKARTA
4. Squence Diagram Data Partner
Gambar 4.18 Squence Diagram Partner
5. Squence Diagram Data Jamaah
Gambar 4.19 Squence Diagram Jamaah
87
UIN SYARIF HIDAYATULLAH JAKARTA
6. Squence Diagram Transaksi Pesanan Jamaah Administrator
Gambar 4.20 Squence Diagram Transaksi Pesanan
7. Squence Diagram Transaksi Pembayaran Jamaah
Administrator
Gambar 4.21 Squence Diagram Transaksi Pembayaran
88
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.4 Database Scheme
4.2.4.1 Class Diagram
Class Diagram ini menjelaskan hubungan antar table di dalam
model desain dari suatu sistem. Aturan-aturan dan tanggung jawab
entitas yang menentukan perilaku sistem, juga diperlihatkan pada class
diagram, seperti yang di tunjukan pada Gambar 4.22
Gambar 4.22 Class Diagram
4.2.4.2 ERD
Menurut Brady dan Loonam, (2010) Entity Relationship
Diagram (ERD) dibuat untuk menggambarkan atau membuat model
suatu database dengan diagram yang sederhana sehingga memudahkan
89
UIN SYARIF HIDAYATULLAH JAKARTA
dalam membuat sebuah database yang kompleks maupun yang
sederhana. Dengan ERD ini juga akan memudahkan pengguna dalam
hal ini orang yang merancang database tersebut dalam membuat
perubahan didalam database jika sewaktu-waktu terjadi. Seperti yang di
tunjukan pada Gambar 4.23
Gambar 4.23 ERD (Entity Relationship Diagram)
4.2.4.3 LRS (Logical Record Structure)
Berdasarkan ERD pada gambar diatas maka didapatkan hasil
transformasi ERD ke LRS (Logical Record Structure). Seperti terlihat
pada Gambar 4.24 berikut ini:
90
UIN SYARIF HIDAYATULLAH JAKARTA
Gambar 4.24 LRS (Logical Record Structure)
4.2.4.4 Spesifikasi Basis Data
1. Nama Table : Jamaah
Isi : Data Jamaah
Media : Harddisk
Primary Key : id_plg
Struktur
91
UIN SYARIF HIDAYATULLAH JAKARTA
Tabel 4.8 : Struktur Table Jamaah
Nama Field Type Ukuran Keterangan
Id_plg Int 11 ID Plg
Pass_plg Varchar 150 Pasword Jamaah
Nm_plg Varchar 150 Nama Jamaah
Photo_plg Varchar 150 Foto Jamaah
Email_plg Varchar 150 Email Jamaah
Tlp_plg Varchar 150 Telp Jamaah
Alamat Text 65,535 Alamat Jamaah
Kota Varchar 150 Kota Jamaah
Kode Pos Varchar 150 Kode Pos
2. Nama Table : Produk
Isi : Data Produk
Media : Harddisk
Primary Key : kd_produk
Struktur
Tabel 4.9 : Struktur Table Produk
Nama Field Type Ukuran Keterangan
Kd_produk Varchar 20 Kode Produk
Kd_kategori Int 11 Kode Kategori
Partner_id Varchar 250 ID Partner
Nm_produk Varchar 150 Nama Produk
92
UIN SYARIF HIDAYATULLAH JAKARTA
Lama_Perjalanan Int 11 Lama Perjalanan
Gambar_produk Varchar 159 Gambar Produk
Harga Varchar 150 Harga
Produk_Start Date 11 Tanggal Mulai
Produk_end Date 11 Tanggal
Berakhir
3. Nama Table : Pesanan
Isi : Data Pesanan
Media : Harddisk
Primary Key : kd_pesanan
Struktur
Tabel 4.10 : Struktur Table Pesanan
Nama Field Type Ukuran Keterangan
Kd_pesanan Varchar 20 Kode Pesanan
Kd_plg Int 11 Kode Jamaah
Alamat_kirim Text 65,535 Nama Mata
Pelajaran
Catatan Text 65,535 Catatan
Status_pesanan Tinyint 11
4. Nama Table : Pembayaran
Isi : Data Pembayaran
93
UIN SYARIF HIDAYATULLAH JAKARTA
Media : Harddisk
Primary Key : kd_pembayaran
Struktur
Tabel 4.11 : Struktur Table Pembayaran
Nama Field Type Ukuran Keterangan
Kd_pembayaran Int 11 Kode
Pembayaran
Kd_pesenan Int 11 Kode P
Tgl_pembayaran Date 11 Tanggal
Pembayaran
Nm_pembank Varchar 150 Nama Pemilik
Bank
No_rek Varchar 150 No Rekening
Nm_bank Varchar 150 Nama Bank
Total_bayar Varchar 150 Total Bayar
Foto_bukti Varchar 150 Foto Bukti
Status_pembayaran Tinyint 11 Status
Pembayaran
Pem_date_add Datetime 11 Tanggal
Pembayaran
94
UIN SYARIF HIDAYATULLAH JAKARTA
5. Nama Table : Detil_pesanan
Isi : Data Detail Pesanan
Media : Harddisk
Primary Key : detil_pesanan_id
Struktur
Tabel 4.12 : Struktur Table Detil Pesanan
Nama Field Type Ukuran Keterangan
Detil_pesanan_id Int 11 ID Detil Pesanan
Kd_pesanan Varchar 11 Nama Kelas
Kd_produk Varchar 11 Kode Produk
Qty Varchar 150 Jumlah
Harga_jual Varchar 150 Harga_jual
6. Nama Table : Partners
Isi : Data Partner
Media : Harddisk
Primary Key : id
Struktur
Tabel 4.13 : Struktur Table Partner
Nama Field Type Ukuran Keterangan
id Int 15 ID Partner
Nama_partner Varchar 150 Nama
Picture_partner Varchar 150 Picture
95
UIN SYARIF HIDAYATULLAH JAKARTA
Alamat_partner Varchar 150 Alamat
No_hp_partner Varchar 150 No. HP
Email_partner Varchar 150 Email
Customer_per_tahun Varchar 150 Customer_per_ta
hun
7. Nama Table : Kategori
Isi : Data Kategori
Media : Harddisk
Primary Key : kd_kategori
Struktur
Tabel 4.14 : Struktur Table Kategori
Nama Field Type Ukuran Keterangan
Kd_kategori Int 11 Kode Kategori
Nm_kategori Varchar 150 Nama Kategori
96
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5 Perancangan User Interface
4.2.5.1 Rancangan Layar Dashboard
Ini adalah Tampilan Utama Dashboard di Administrator :
Gambar 4.25 Rancangan Layar Dashboard
97
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.2 Rancangan Layar Produk
Ini adalah Tampilan Halaman Produk di Administrator :
Gambar 4.26 Rancangan Layar Produk
98
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.3 Rancangan Layar Tambah Produk
Ini adalah Tampilan Halaman Tambah Produk di Administrator :
Gambar 4.27 Rancangan Layar Tambah Produk
99
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.4 Rancangan Layar Ubah Produk
Ini adalah Tampilan Halaman Ubah Produk di Administrator :
Gambar 4.28 Rancangan Layar Ubah Produk
100
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.5 Rancangan Layar Kategori Produk
Ini adalah Tampilan Halaman Kategori Produk di Administrator :
Gambar 4.29 Rancangan Layar Kategori Produk
101
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.6 Rancangan Layar Partner
Ini adalah Tampilan Halaman Partner atau Travel Umroh di
Administrator :
Gambar 4.30 Rancangan Layar Partner
102
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.7 Rancangan Layar Jamaah
Ini adalah Tampilan Halaman Jamaah atau Travel Umroh di
Administrator:
Gambar 4.31 Rancangan Layar Jamaah
103
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.8 Rancangan Layar Pembayaran
Ini adalah Tampilan Halaman Pembayaran di Administrator :
Gambar 4.32 Rancangan Layar Pembayaran
104
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.9 Rancangan Layar Pemesanan
Ini adalah Tampilan Halaman Pemesanan di Administrator :
Gambar 4.33 Tampilan Layar Pemesanan
105
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.10 Rancangan Layar End User Home
Ini adalah Tampilan Home di Enduser:
Gambar 4.34 Rancangan Layar End User Home
106
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.11 Rancangan Layar End User Register
Ini adalah Tampilan Home di Enduser:
Gambar 4.35 Rancangan Layar Registe
107
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.12 Rancangan Layar End User Detail Produk
Ini adalah Tampilan Detail Produk di Enduser:
Gambar 4.36 Rancangan Layar Detail Produk
108
UIN SYARIF HIDAYATULLAH JAKARTA
4.2.5.13 Rancangan Layar End User Pemesanan
Ini adalah Tampilan Pemesanan di Enduser:
Gambar 4.37 Rancangan Layar Pemesanan
4.3 Fase Implementasi
Tahap selanjutnya yaitu dilakukan pemrogramam sistem yang akan
diusulkan menggunakan bahasa pemrograman PHP dan dengan
menggunakan MySQL sebagai basis datanya.
109
UIN SYARIF HIDAYATULLAH JAKARTA
4.3.1 Pengujian Sistem
Pengujian ini menggunakan black-box testing dengan melakukan
test-case yaitu dengan masuk kedalam aplikasi dan memasukkan data
dan selanjutnya melihat output (keluaran) apakah sesuai dengan yang
diharapkan.
Tabel 4.15. Pengujian Blackbox
NO Deskripsi Hasil yang diharapkan Hasil Sebenarnya
1 Jamaah
melakukan
Registrasi
Setelah proses registrasi,
maka data jamaah yang
tersimpan di database
sudah terenkripsi
Berhasil
2 Jamaah
melakukan
proses login
Ketika proses login
dilakukan, maka input
email akan dienkripsi
terlebih dahulu,
kemudian dicocokan
dengan record yang ada
di database
Berhasil
3 Jamaah
melihat profile
Data jamaah yang
terenkripsi di database
akan didekripsi agar
jamaah bisa melihat
datanya
Berhasil
110
UIN SYARIF HIDAYATULLAH JAKARTA
4 Admin melihat
data Jamaah
Data jamaah yang
terenkripsi di database
akan didekripsi agar
admin bisa melihat
datanya
Berhasil
4.3.2 Implementasi Perangkat
Perangkat keras yang digunakan untuk mendukung sistem ini
minimal dengan spesifikasi sebagai berikut:
1. Perangkat Keras
1) CPU 1 Core
2) RAM / Memory 1 GB
3) Hardisk 25 GB
4) Sistem Operasi 64-bit
2. Perangkat Lunak
1) Apache 2
2) MySQL 5.1+
3) PHP 5.6+
4) PHP GMP
111
UIN SYARIF HIDAYATULLAH JAKARTA
BAB V
HASIL DAN PEMBAHASAN
1.1 Hasil Output
Berikut merupakan printscreen program sebagai hasil output yang
akan ditampilkan:
5.1.1 Halaman Home Utama
Berikut ini adalah halaman home utama, halaman home utama ini
menampilkan data paket-paket umroh, terlihat pada Gambar 5.1:
Gambar 5. 1 Halaman Home Utama
112
UIN SYARIF HIDAYATULLAH JAKARTA
5.1.2 Halaman Detail Paket
Berikut ini adalah halaman detail paket yang menampilkan data detail
paket umroh, dari nama travel umroh, lama perjalanan, tanggal
pemberangkatan dan deskirpsi paket umroh, terlihat pada Gambar 5.2:
Gambar 5. 2 Halaman Detail Paket Umroh
5.1.3 Halaman Kategori Paket
Berikut ini adalah halaman kategori paket umroh yang berisikan daftar
paket berdasarkan kategori paket, paket regular, paket wisata dan paket
special, terlihat pada Gambar 5.3:
113
UIN SYARIF HIDAYATULLAH JAKARTA
Gambar 5. 3 Halaman Kategori Paket Umroh
5.1.4 Halaman Keranjang Belanja
Berikut ini adalah halaman keranjang belanja setelah jamaah
melakukan pemesanan paket umroh, terlihat pada Gambar 5.4:
Gambar 5. 4 Halaman Keranjang Belanja
114
UIN SYARIF HIDAYATULLAH JAKARTA
5.1.5 Halaman Pendaftaran Jamaah
Berikut ini adalah halaman pendaftaran jamaah setelah melakukan
proses transaksi keranjang belanja, disini proses kriptografi dilakukan untuk
meenkripsi data transaksi jamaah dan data jamaah untuk dilakukan
keamanan data jamaah, terlihat pada Gambar 5.5:
Gambar 5. 5 Halaman Pendaftaran Jamaah
5.1.6 Halaman Login Jamaah
Berikut ini adalah login jamaah untuk masuk kehalaman user
dashboard jamaah, terlihat pada Gambar 5.6:
115
UIN SYARIF HIDAYATULLAH JAKARTA
Gambar 5. 6 Halaman Login Jamaah
5.1.7 Halaman Profile Jamaah User Dashboard
Berikut ini adalah halaman profil jamaah yang sudah di dekripsi dan
ditampilkan ke dalam user dashboard, terlihat pada Gambar 5.7:
Gambar 5. 7 Halaman Profil Jamaah
116
UIN SYARIF HIDAYATULLAH JAKARTA
5.1.8 Halaman Pesanan Saya User Dashboard
Berikut ini adalah halaman user dashboard yang bisa diakses setelah
login, terlihat pada Gambar 5.8:
Gambar 5. 8 Halaman Pesanan Saya User Dashboard
5.1.9 Halaman Detail Pesanan Saya User Dashboard
Berikut ini adalah halaman pesanan saya pada user dashboard, terlihat
pada Gambar 5.9:
117
UIN SYARIF HIDAYATULLAH JAKARTA
Gambar 5. 9 Halaman Detail Pesanan Saya User Dashboard
5.1.10 Halaman Konfirmasi Pembayaran User Dashboard
Berikut ini adalah halaman konfirmasi pembayaran pada user dashboard,
terlihat pada Gambar 5.10:
118
UIN SYARIF HIDAYATULLAH JAKARTA
Gambar 5. 10 Halaman Konfirmasi Pembayaran User Dashboard
5.1.11 Halaman Login Admin
Berikut ini adalah login admin, terlihat pada Gambar 5.11:
119
UIN SYARIF HIDAYATULLAH JAKARTA
Gambar 5. 11 Halaman Login Admin
5.1.12 Halaman Data Jamaah Admin Dashboard
Berikut ini adalah halaman data jamaah yang sudah di dekripsi pada admin
dashboard, terlihat pada Gambar 5.12:
Gambar 5. 12 Halaman Data Jamaah Admin Dashboard
120
UIN SYARIF HIDAYATULLAH JAKARTA
5.1.13 Halaman Pesanan Paket Umroh Admin Dashboard
Berikut ini adalah halaman data Pesanan paket umroh pada admin
dashboard, terlihat pada Gambar 5.13:
Gambar 5. 13 Halaman Pesanan Paket Umroh Admin Dashboard
5.1.14 Halaman Detail Pesanan Paket Umroh Admin Dashboard
Berikut ini adalah halaman data Detail Pesanan paket umroh pada admin
dashboard, terlihat pada Gambar 5.14:
121
UIN SYARIF HIDAYATULLAH JAKARTA
Gambar 5. 14 Halaman Detail Pesanan Paket Umroh Admin Dashboard
5.1.15 Halaman Verifikasi Pembayaran Admin Dashboard
Berikut ini adalah halaman konfirmasi pembayaran pada admin dashboard,
terlihat pada Gambar 5.15:
Gambar 5. 15 Halaman Verifikasi Pembayaran Admin Dashboard
1.2 Hasil Wawancara
Dari hasil wawancara yang dilakukan penulis mendapatkan hasil
sebagai berkut :
122
UIN SYARIF HIDAYATULLAH JAKARTA
Narasumber : Ridho Irawan
Jabatan : Direktur PT. Amanah Umroh Handal
1. Bagaimana proses Pembelian paket umroh di Aplikasi umroh.com ?
Pada umroh.com proses pembelian paket umroh jamaah pertama
melakukan pemilihan paket umroh yang ingin dipilih dan jamaah dapat
melakukan pesanan melalui website dan mobile android umroh.com
2. Bagaimana pengguna atau jamaah melakukan pembayaran pada Aplikasi
umroh.com ?
Metode pembayaran jamaah saat melakukan proses transaksi paket
umroh, jamaah bisa melakukan pembayara menggunakan bank manual
dan virtual account.
3. Apakah ada tahapan pembayaran pada saat pengguna melakukan
pembayaran paket umroh ?
Ada, tahapan pembayaran paket umroh bisa berupa 2 kali pembayaran,
pertama sebagai down payment dan kedua sebagai pelunasan paket
umroh.
4. Bagaiman proses penyimpanan data-data yang berkaitan dengan data
jamaah dan data transaksi di umroh.com ?
Saat ini data-data tersebut tersimpan di cloud dan dijaga privasinya,
tetapi data tersebut belum dilakukan keamanan kriptografi
5. Apakah ada kendala dari pengelolaan dan penyimpanan data saat ini ?
Tidak ada, karena penyimpanan saat ini sudah diolah oleh seseorang
database kami.
123
UIN SYARIF HIDAYATULLAH JAKARTA
6. Jika data masih belum menggunakan sistem kriptografi, apa pendapat
anda jika ada sistem kriptografi yang dibuat untuk mengamankan data
transaksi di umroh.com ?
Apabila kriptografi salah satu cara untuk memperkuat keamanan data
kami , menurut saya ada nilai plus apabila data jamaah dilakukan
keaamanan kriptografi.
7. Apakah ada hal lain yang ingin ditambahkan dalam sistem yang akan
kami ajukan ?
Menurut kita tergantung kebutuhan aja ya.
8. Seberapa pentingkah penambahan itu dimasukkan kedalam sistem ?
Penting, apabila ada penambahan ketika fitur tersebut dibutuhkan.
1.3 Pembahasan
Sesuai dengan perumusan masalah maka dalam pembahasan ini
Penulis memaparkan hubungan antara rumusan masalah dan hasil penelitian
untuk mencari kesimpulan yang dapat menjawab rumusan masalah yang
telah ditentukan.
5.3.1 Bagaimana Implementasi Algoritma Caesar Cipher dan
Algoritma Rivest Shamir Adleman (RSA) untuk sistem aplikasi
transaksi paket umroh pada PT. Amanah Umroh Handal?
Dalam aplikasi umroh.com terdapat beberapa data dan diantara yang
paling penting pada penelitian ini adalah data jamaah. Penulis ingin
mengimplementasikan data tersebut kedalam kriptografi agar terjamin
124
UIN SYARIF HIDAYATULLAH JAKARTA
keamanannya, penulis menggunakan metode Caesar Cipher dan Algoritma
Rivest Shamir Adleman (RSA). Caesar Cipher dan RSA dipilih dikarenakan 1
metode saja tidak cukup untuk di implementasikan seperti Caesar Cipher
dikarena perhitungan sandi mudah ditebak, penulis muncul ide untuk
memperpadukan Caesar Cipher dan RSA untuk dijadikan keamanan pada
sistem ini. Alasan ini diperkuat dengan adanya penelitian berkaitan dengan
metode Caesar Cipher. Oleh sebab itu akan diterapkan pada proses
pendaftaran jamaah saat melakukan transaksi, data jamaah tersebut akan di
enkripsi dengan metode Caesar Cipher dan RSA yang dimana data jamaah
merubah data asli (plainteks) ke data acak (ciphertext) dan akan masuk
kedalam database jamaah yang tidak akan diketahui oleh pihak yang tidak
bertanggung jawab. Selanjutnya proses dekripsi di implementasikan pada
fitur data jamaah, yang dimana data acak didalam database akan di
kembalikan data asli (plainteks) untuk di dekripsi.
125
UIN SYARIF HIDAYATULLAH JAKARTA
BAB VI
PENUTUP
1.4 Kesimpulan
Berdasarkan hasil dan pembahasan untuk menjawab rumusan masalah
yang ada di dalam penelitian ini, maka dapat ditarik beberapa kesimpulan
sebagai berikut:
1. Dari hasil implementasi yang sudah dilakukan dapat diketahui bahwa
kriptografi dapat digunakan untuk melindungi data dan informasi yang
disimpan ke dalam record database. Sehingga record database yang
ingin dijaga kerahasiaannya menjadi tidak terbaca kecuali setelah
didekripsi.
2. Konsep dasar yang digunakan dalam algoritma Caesar Cipher cukup
mudah, namun sukar untuk dibaca. Caesar Cipher merupakan teknik
enkripsi yang paling sederhana dan banyak digunakan. Cipher ini
berjenis cipher substitusi, dimana setiap karakter pada plaintextnya
digantikan dengan karakter lain yang tetap pada posisi plaintext
tersebut.
3. Algoritma RSA (Rivest Shamir Adleman) merupakan teknik kriptografi
yang paling efektif sampai saat ini. Hal ini disebabkan karena butuh
waktu yang sangat lama untuk mendapatkan private key. RSA
merupakan teknik kriptografi dengan memanfaatkan 2 bilangan prima.
Dari kedua bilangan prima tersebut dapat diperoleh sebuah public key
126
UIN SYARIF HIDAYATULLAH JAKARTA
(digunakan untuk mengenkripsi sebuah plainteks) dan sebuah private
key (digunakan untuk mengdekripsi cipherteks)
1.5 Saran
Aplikasi yang penulis buat tentu saja masih belum sempurna, masih
banyak hal yang dapat dikembangkan guna membuat manfaat aplikasi
menjadi lebih baik lagi untuk kedepannya. Oleh karena itu penulis juga
menyampaikan beberapa saran untuk pengembangan selanjutnya, yaitu:
1. Sistem nantinya dapat dikembangkan dengan menambahkan algoritma
lainnya, tidak hanya menggunakan algoritma RSA saja tetapi dapat
menambahkan algoritma keamanan lainnya yang memiliki sistem
pengamanan yang lebih sempurna.
2. Untuk penggunaan metode RSA dengan ASCII desimal sangat
disarankan untuk menggunakan nilai n lebih dari 255, dikarenakan
karakter ASCII desimal mencapai 255. Jika nilai n lebih kecil dari 255
maka proses enkripsi dan dekripsi tidak dapat dilakukan ketika
mendapatkan bilangan ASCII desimal lebih besar dari n
127
UIN SYARIF HIDAYATULLAH JAKARTA
DAFTAR PUSTAKA
Anang Paramita Wayahdyatmika, R. R. (2014). Implementasi Algoritma
Kritografi RSA pada surat Elektronik (E-Mail). Jurusan Teknik Elektro,
Universitas Diponegoro Semarang, 2302 - 9925.
Arief. (2011). Pengertian PHP.
Chandra. (2011). Pengenalan Algoritma RSA (Rivest Shamir Adleman).
Kromodimoeljo. (2010). Definisi Kriptografi.
Kurniawan. (2014). Definisi Kriptografi Klasik.
Munir. (2009). Definisi Kriprografi Klasik.
Pressman. (2009). Pengujian Blackbox.
Raharjo, B. (2011). Pengertian MySqll.
Rahilah. (2013). Definisi Aplikasi.
Siregar, H. d. (2016). Definisi Daatabase.
Wayahdi, K. P. (2015). Analisis Kombinasi Metode Caesar Cipher, Vernam
Cipher dan Hill Cipher dalam proses kriptografi. STMIK AMIKOM
Yogyakarta, 2302-3805.
Yakub. (2012). Pengertian Basis Data.
Yusuf Tryuswoyo, F. F. (2014). Implementasi Algoritma Caesar, Cipher Disk dan
Sctytale pada aplikasi enkripsi dan dekripsi pesan singkat, Luma SMS.
Jurusan Manajemen Sistem Informasi Universitas Gunadarma, 2302 -
3740.
128
UIN SYARIF HIDAYATULLAH JAKARTA
LAMPIRAN
A. SK Bimbingan Skripsi
129
UIN SYARIF HIDAYATULLAH JAKARTA
B. Surat Keterangan Riset
130
UIN SYARIF HIDAYATULLAH JAKARTA
C. Source Code Kriptografi
class Umrohcrypt
{
const OFFSET = 3; // jumlah langkah enkripsi Caesar Cipher
//attribute untuk enkripsi RSA
const d = 3;
const e = 187;
const n = 319;
public function encrypt($plaintext) {
$pArr = str_split($plaintext);
$encrypted = [];
for ($i = 0; $i < sizeof($pArr); $i++) {
// konversi binary
$binary = str_pad(decbin(ord($pArr[$i])), 8, 0, STR_PAD_LEFT);
// encrypt caesar cipher
$cc = $this->encryptCC($binary);
$rsa = $this->encriptRSA(bindec($cc));
$encrypted[] = $rsa;
}
return implode(",", $encrypted);
131
UIN SYARIF HIDAYATULLAH JAKARTA
}
public function decrypt($chipertext) {
$cArr = explode(",", $chipertext);
$decrypted = "";
for ($i = 0; $i < sizeof($cArr); $i++) {
// decrypt RSA
$decryptRsa = $this->decriptRSA($cArr[$i]);
// konversi binary
$binary = str_pad(decbin($decryptRsa), 8, 0, STR_PAD_LEFT);
// decrypt caesar cipher
$decryptCc = $this->decryptCC($binary);
// konversi character
$char = chr(bindec($decryptCc));
$decrypted .= $char;
}
return $decrypted;
}
/**
* Encrypt Caesar Cipher
*
132
UIN SYARIF HIDAYATULLAH JAKARTA
* @param $str
* @param $offset
* @return string
*/
private function encryptCC($str) {
$strArr = str_split($str);
$encrypted = [];
foreach ($strArr AS $idx => $val) {
$encIdx = $idx+self::OFFSET;
if($encIdx >= strlen($str)) {
$encIdx = ($encIdx % strlen($str));
}
$encrypted[$encIdx] = $val;
}
$encryptedStr = "";
for ($i = 0; $i < sizeof($encrypted); $i++) {
$encryptedStr .= $encrypted[$i];
}
return $encryptedStr;
}
/**
* Decrypt Caesar Cipher
133
UIN SYARIF HIDAYATULLAH JAKARTA
*
* @param $str
* @param $offset
* @return string
*/
private function decryptCC($str) {
$strArr = str_split($str);
$decrypted = [];
foreach ($strArr AS $idx => $val) {
$encIdx = $idx-self::OFFSET;
if($encIdx < 0) {
$encIdx = (strlen($str) + $encIdx);
}
$decrypted[$encIdx] = $val;
}
$decryptedStr = "";
for ($i = 0; $i < sizeof($decrypted); $i++) {
$decryptedStr .= $decrypted[$i];
}
return $decryptedStr;
}
/**
134
UIN SYARIF HIDAYATULLAH JAKARTA
* enkripsi RSA
*
* @param $decimal
* @return string
*/
function encriptRSA($decimal) {
$gmp_pow = gmp_pow($decimal,self::d);
return gmp_strval(gmp_mod($gmp_pow,self::n));
}
/**
* dekripsi RSA
*
* @param $decimal
* @return string
*/
function decriptRSA($decimal) {
$gmp_pow = gmp_pow($decimal,self::e);
return gmp_strval(gmp_mod($gmp_pow,self::n));
}
}