BERBASIS ANDROID
SKRIPSI
TANTA ADITYA PRANATA
111401122
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
SKRIPSI
Diajukan untuk melengkapi tugas akhir dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
TANTA ADITYA PRANATA
111401122
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
PERSETUJUAN
Judul : IMPLEMENTASI ALGORITMA XOR DAN
ALGORITMA RC4 PADA APLIKASI ENKRIPSI
DAN DEKRIPSI TEKS BERBASIS ANDROID
Kategori : SKRIPSI
Nama : TANTA ADITYA PRANATA
Nomor Induk Mahasiswa : 111401122
Program Studi : SARJANA (S1) ILMU KOMPUTER
Departemen : ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI
Diluluskan di
Medan, Januari 2016
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Amalia, ST, MT Dr. Poltak Sihombing, M.Kom
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
PERNYATAAN
IMPLEMENTASI ALGORITMA XOR DAN ALGORITMA RC4 PADA
APLIKASI ENKRIPSI DAN DEKRIPSI TEKS BERBASIS ANDROID
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, November 2015
PENGHARGAAN
Puji dan syukur atas kehadirat Allah SWT karena dengan rahmat dan izin-Nya,
sehingga penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat
untuk memperoleh gelar Sarjana Komputer pada Program Studi S1 Ilmu
Komputer Fasilkom-TI Universitas Sumatera Utara. Dan tidak lupa sholawat dan
salam selalu dipersembahkan kepada Rasulullah SAW sebagai pembawa
kebenaran yang telah membawa kita dari alam kegelapan (jahiliyah) ke alam
terang benderang yang penuh dengan ilmu pengetahuan seperti saat ini.
Penulis ingin menyampaikan rasa hormat dan terima kasih yang sebesar–
besarnya kepada :
1. Bapak Prof. Drs. Subhilhar, M.A., Ph.D selaku Pejabat Rektor Universitas
Sumatera Utara.
2. Bapak Prof. Dr. Muhammad Zarlis selaku Dekan Fakultas Ilmu Komputer
dan Teknologi Informasi Universitas Sumatera Utara.
3. Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi
Universitas Sumatera Utara.
4. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1
Ilmu Komputer Universitas Sumatera Utara dan selaku Dosen
Pembimbing I yang telah memberikan bimbingan, masukan dan saran
dalam penyempurnaan skripsi ini.
5. Ibu Maya Silvi Lydia, B.Sc, M.Sc selaku Sekretaris Program Studi S1
Ilmu Komputer Universitas Sumatera Utara.
6. Ibu Amalia, ST, MT selaku Dosen Pembimbing II yang telah memberikan
bimbingan, saran, dan masukan kepada penulis dalam pengerjaan skripsi
ini.
7. Bapak M. Andri Budiman, ST, M.Comp.Sc, M.E.M selaku Dosen
Pembanding I yang telah memberikan kritik, dan saran kepada penulis
dalam pengerjaan skripsi ini.
8. Bapak Ade Candra, ST, M.Kom selaku Dosen Pembanding II yang telah
9. Seluruh Dosen serta pegawai tata usaha di Program Studi S1 Ilmu
Komputer Fasilkom-TI USU yang telah memperlancar semua urusan
penulis dalam menyelesaikan administrasi.
10.Kedua orang tua saya yaitu Surahman dan Rispa serta kedua adik saya
Fikri Al-Akbari dan Fadli Al-Ikhsal yang telah memberikan kasih sayang,
doa, semangat, motivasi dan bantuan yang tak ternilai kepada penulis
dalam menyelesaikan skipsi ini.
11.Sahabat-sahabat penulis Anggiat, Juca , Reza, Agus serta semua
teman-teman perumahan, SD, SMP, SMA penulis yang sampai saat ini selalu
memberikan dukungan dan motivasi, terkhusus kepada Anggiat dan Juca.
12.Nurhayati Lubis S.Kom atas semangat, dukungan, perhatian, kasih sayang,
pengertian, dan kesabaran dalam mendengarkan keluh kesah penulis,
semoga kita sama-sama sukses di masa depan.
13.Teman-teman seperjuangan dalam mengerjakan skripsi ini, Henry, Patra,
Edwin, Farid, Fernandes, Samuel serta teman-teman Pengurus IMILKOM
periode 2014/2015 yang telah memberikan banyak saran, hiburan,
dukungan, bantuan, dan semangat dalam pengerjaan skripsi ini.
14.Teman-teman seperjuangan stambuk 2011 yang sedang mengerjakan
skripsi khususnya Kom A 2011, 4 tahun penuh suka dan duka bersama
kalian semoga kita bisa sukses, tetap kompak serta tetap menjalin
silaturahim kelak.
15.Semua pihak yang terlibat langsung maupun tidak langsung yang tidak
dapat penulis ucapkan satu demi satu yang telah membantu penulis dalam
menyelesaikan skripsi ini.
Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah
memberikan bantuan, perhatian, serta dukungan kepada penulis dalam
menyelesaikan skripsi ini. Penulis menyadari bahwa skripsi ini masih memiliki
banyak kekurangan dan jauh dari kesempurnaan. Oleh karena itu, penulis
mengharapkan kritik dan saran yang bersifat membangun untuk menyempurnakan
skripsi ini sehingga dapat bermanfaat bagi semua pihak.
Medan, November 2015
ABSTRAK
Kriptografi dapat dimanfaatkan untuk mengamankan pengiriman pesan pada smartphone berbasis Android. Pada penelitian ini penulis mengkombinasikan kriptografi klasik dan kriptografi modern dengan tujuan untuk memperkuat keamanan pesan. Untuk kriptografi klasik, penulis memilih algoritma XOR dikarenakan mudah diimplementasikan dan tidak sulit secara komputasional. Untuk kriptografi modern, penulis memilih algoritma RC4 dikarenakan proses algoritma ini cepat dan juga kuat. Proses pengamanan pesan diawali dengan proses enkripsi plainteks menggunakan algoritma XOR untuk menghasilkan cipherteks pertama yang disebut cipherxor. Selanjutnya cipherxor dienkripsi lagi dengan algoritma RC4 sehingga menghasilkan cipherteks akhir. Sedangkan untuk proses dekripsi, tahap awal cipherteks didekripsi dengan algoritma RC4 untuk mendapatkan cipherxor. Kemudian cipherxor didekripsi lagi dengan algoritma XOR untuk menghasilkan plainteks kembali. Hasil dari penelitian ini menunjukkan bahwa waktu pemrosesan enkripsi dan dekripsi dari kombinasi algoritma XOR dan algoritma RC4 lebih efisien dibandingkan dengan penjumlahan waktu pada proses enkripsi maupun proses dekripsi masing-masing algoritma tersebut. Untuk proses enkripsi selisihnya adalah 0,015 detik sedangkan untuk proses dekripsi selisihnya adalah 0,016 detik. Waktu tersebut juga berbanding lurus dengan panjang plainteks.
IMPLEMENTATION OF XOR ALGORITHM AND RC4 ALGORITHM
IN TEXT ENCRYPTION AND DECRYPTION APPLICATION
BASED ON ANDROID
ABSTRACT
Cryptography can be used to secure the delivery of messages on an Android-based smartphone. In this research, the authors combine classical cryptography and modern cryptography with the aim to strengthen the security of message. For classical cryptography, the author chose XOR algorithm because it’s easy to implement and it’s not difficult computationally. For modern cryptography, the author chose RC4 algortihm because the process of this algorithm is fast and the security is also strong. The process of securing message begins with encryption process of plaintext using XOR algorithm to produce a first ciphertext that called cipherxor. Furthermore, the cipherxor is encrypted again with RC4 algorithm to produce last ciphertext. As for the decryption process, the first step ciphertext is decrypted with RC4 algorithm to get cipherxor. Cipherxor then decrypted again with the XOR algorithm to generate the plaintext back. The results from this research showed that the encryption and decryption processing time of the combination of XOR algorithm and RC4 algorithm is more efficient than the sum of encryption and decryption processing time each of both algorithms. For the encryption process difference was 0.015 seconds while the decryption process difference was 0.016 seconds. That time is also directly proportional to the lenght of plaintext.
DAFTAR ISI
2.1.2 Algoritma Kriptografi 6
2.2 Macam-Macam Algoritma Kriptografi 7
2.2.1 Algoritma Simetri 7
2.2.2 Algoritma Asimetri 8
2.3 Tipe dan Model Algoritma Kriptografi 9
2.3.1 Aliran kode 9
2.3.2 Blok kode 12
2.4 Algoritma Kriptografi XOR 14
2.5 Algoritma Kriptografi RC4 16
2.5.1 Key Scedulling Algorithm 17
2.5.2 Pseudo Random Generation Algorithm 19
2.6 Android 20
2.7 Penelitian yang Relevan 21
Bab 3 Analisis dan Perancangan Sistem
3.1 Analisis Sistem 22
3.1.1 Analisis Masalah 22
3.1.2 Analisis Kebutuhan 23
3.2 Pemodelan 25
3.3.2 Flowchart Program Enkripsi Pesan dengan Algoritma XOR 34
3.3.3 Flowchart Program Enkripsi Pesan dengan Algoritma RC4 35
3.3.4 Flowchart Program Dekripsi Pesan dengan Algoritma RC4 36
3.3.5 Flowchart Program Dekripsi Pesan dengan Algoritma XOR 37
3.4 Pseudocode 38
4.2.3 Hubungan Waktu Proses Enkripsi dan Dekripsi Terhadap Plaintext 71
Bab 5 Kesimpulan dan Saran
5.1Kesimpulan 74
5.2Saran 75
DAFTAR GAMBAR
Gambar 2.7 Proses Enkripsi dan Dekripsi Block Cipher 13
Gambar 2.8 Gerbang logika XOR 14
Gambar 3.8 Flowchart Program Enkripsi Pesan dengan Algoritma XOR 34
Gambar 3.9 Flowchart Program Enkripsi Pesan dengan Algoritma RC4 35
Gambar 3.10 Flowchart Program Dnkripsi Pesan dengan Algoritma RC4 36
Gambar 3.11 Flowchart Program Dekripsi Pesan dengan Algoritma XOR 37
Gambar 3.12 Rancangan Antarmuka Form Home 42
Gambar 3.13 Rancangan Antarmuka Form Main Menu 43
Gambar 3.14 Rancangan Antarmuka Form Encryption 44
Gambar 3.15 Rancangan Antarmuka Form Decryption 45
Gambar 3.16 Rancangan Antarmuka Form Help 47
Gambar 4.9 Pesan Peringatan Ketika Plaintext Tidak Dimasukkan 54
Gambar 4.10 Pesan Peringatan Ketika Salah Satu Kunci Tidak Diisi 55
Gambar 4.12 Contoh Proses Dekripsi dan Hasilnya 65
Gambar 4.13 Contoh Proses Share Plaintext Melalui Aplikasi Pesan Xiaomi 65
Gambar 4.14 Pesan Peringatan Ketika Ciphertext Tidak Dimasukkan 66
Gambar 4.15 Pesan Peringatan Ketika Salah Satu Kunci Tidak Diisi 66
DAFTAR TABEL
Hal.
Tabel 2.1 Tabel XOR 14
Tabel 2.2 Larik 256 Byte Kotak-S Awal 17
Tabel 2.3 Larik 256 Byte Kunci 18
Tabel 2.4 Larik 256 Byte Kotak-S Akhir 18
Tabel 3.1 Naratif Use Case Encryption 26
Tabel 3.2 Naratif Use Case Decryption 27
Tabel 4.1 Tabel Modifikasi untuk Algoritma XOR 56
Tabel 4.2 Hasil Pengujian Lamanya Waktu Proses Enkripsi 71
Tabel 4.3 Hasil Pengujian Lamanya Waktu Proses Dekripsi 72
DAFTAR LAMPIRAN
Hal.
A. Listing Program 78