i
APLIKASI CHATTING DENGAN SISTEM ENKRIPSI
MENGGUNAKAN CAESAR CIPHER BERBASIS
ANDROID
TUGAS AKHIR
Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Disusun Oleh:
Sofyan 201010370311374
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MALANG
2015
ii
LEMBAR PERSETUJUAN
APLIKASI CHATTING DENGAN SISTEM ENKRIPSI
MENGGUNAKAN CAESAR CIPHER BERBASIS
ANDROID
TUGAS AKHIR
Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Disusun Oleh :
Sofyan 201010370311374
Telah diperiksa dan disetujui,
DOSEN PEMBIMBING I DOSEN PEMBIMBING II
Ilyas Nuryasin, S.Kom, M.Kom Zamah Sari, M.T
iii
LEMBAR PENGESAHAN
APLIKASI CHATTING DENGAN SISTEM ENKRIPSI
MENGGUNAKAN CAESAR CIPHER BERBASIS
ANDROID
TUGAS AKHIR
Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Disusun Oleh :
Sofyan 201010370311374
Tugas Akhir ini telah disetujui dan dinyatakan lulus oleh tim penguji Pada hari :
Disetujui Oleh,
Dosen Penguji 1 Dosen Penguji 2
Mengetahui
Kepala Jurusan Teknik Informatika
Yuda Munarko, S.Kom, M.Sc NIP. 108.0611.0443
iv
SURAT PERNYATAAN
Yang bertanda tangan dibawah ini:
NAMA : SOFYAN
NIM : 201010370311374
FAK./JUR. : TEKNIK/INFORMATIKA
Dengan ini saya menyatakan bahwa Tugas Akhir dengan judul “APLIKASI
CHATTING DENGAN SISTEM ENKRIPSI MENGGUNAKAN CAESAR CIPHER BERBASIS ANDROID” beserta seluruh isinya adalah karya saya sendiri
dan bukan merupakan karya tulis orang lain, baik sebagian maupun seluruhnya, kecuali dalam bentuk kutipan yang telah disebutkan sumbernya.
Demikian surat pernyataan ini saya buat dengan sebenar-benarnya. Apabila kemudian ditemukan adanya pelanggaran terhadap etika keilmuan dalam karya saya ini,atau ada klaim dari pihak lain terhadap keaslian karya saya ini maka saya siap menanggung segala bentuk resiko/sanksi yang berlaku.
Malang, 17 April 2015 Yang Menyatakan (Sofyan) Mengetahui,
Dosen Pembimbing I Dosen Pembimbing II
Ilyas Nuryasin, S.Kom, M.Kom Zamah Sari, M.T
v
ABSTRAK
Enkripsi adalah metode pengamanan data dengan cara mengubah data asli menjadi data yang sudah dimodifikasi atau ditransformasi dengan menggunakan kunci dan algoritma tertentu tanpa mengetahui kunci, sehingga hasil data yang sudah dienkripsi tidak akan dapat dibaca oleh orang lain. Jika ingin membaca data tersebut maka dilakukan proses dekripsi. Dekripsi adalah proses pengembalian data yang sudah dienkripsi menjadi data asli
Dalam kriptografi, sandi Caesar, atau sandi geser, kode Caesar atau Geseran Caesar adalah salah satu teknik enkripsi paling sederhana dan paling terkenal. Sandi ini termasuk sandi substitusi dimana setiap huruf pada teks terang (plaintext) digantikan oleh huruf lain yang memiliki selisih posisi tertentu dalam alfabet.
Pengujian hasil enkripsi dan dekripsi menggunakan key yang sama otomatis menghasilkan output yang sesuai. Pengujian hasil enkripsi dan dekripsi menggunakan
key yang berbeda menghasilkan output yang tidak sesuai
vi
ABSTRACT
Encryption is a method of securing data by changing the original data into data that has been modified or transformed by using a key and a specific algorithm without knowing the key, so that the encrypted data can not be read by others. If you want to read the data decryption process is carried out. Decryption is the process of returning the data that has been encrypted into the original data
In cryptography, cipher, or sliding password, code or slider Caesar Caesar is one of the simplest encryption techniques and the most famous. This password including substitution cipher in which each letter in the light of the text (plaintext) is replaced by another letter which has a difference of a certain position in the alphabet.
Testing results of encryption and decryption using the same key automatically generates the appropriate output. Testing results of encryption and decryption use different keys produce output that is not appropriate
vii
LEMBAR PERSEMBAHAN
Puji syukur kepada Allah SWT atas rahmat dan karunia-Nya sehingga Tugas Akhir ini dapat terselesaikan. Terima kasih juga yang sebesar-besarnya kepada Bapak Ilyas Nuryasin, S.kom M.kom dan Zamah Sari, M.T selaku pembimbing saya.
Untuk Mama, Bapak, saudara dan seluruh keluarga yang selalu memberikan dukungan dan do’a dalam pengerjaan Tugas Akhir ini.
Dan semua sahabat dan teman saya Sugeng Hidayat, Iji Rahayu , Anugrah Ansori, Erlin Nur Hasfani, Akbar, Terutama anak Kelas H angkatan 2010 serta pembimbing di luar kampus lainnya. Terima kasih banyak untuk kalian semua atas semangat dan doa yang kalian berikan selama ini.
Serta semua pihak yang tidak dapat penulis sebutkan satu persatu yang telah berjasa dalam pengerjaan Tugas Akhir ini.
viii
KATA PENGANTAR
Dengan memanjatkan puji syukur kehadirat Allah Subhanahu Wa Ta’ala atas limpahan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan tugas akhir yang berjudul :
“APLIKASI CHATTING DENGAN SISTEM ENKRIPSI MENGGUNAKAN CAESAR CIPHER BERBASIS ANDROID “
Di dalam tulisan ini disajikan pokok-pokok pembahasan yang meliputi pendahuluan, landasan teori, perancangan sistem, implementasi dan pengujian sistem. Peneliti menyadari sepenuhnya bahwa dalam penulisan tugas akhir ini masih banyak kekurangan dan keterbatasan. Oleh karena itu peneliti mengharapkan saran yang membangun agar tulisan ini bermanfaat bagi perkembangan ilmu pengetahuan ke depan.
Malang, 17 April 2015
ix DAFTAR ISI
Halaman
HALAMAN JUDUL ... i
LEMBAR PERSETUJUAN... ii
LEMBAR PENGESAHAN ... iii
LEMBAR PERNYATAAN ... iv
ABSTRAK ... v
ABSTRACT ... vi
LEMBAR PERSEMBAHAN ... vii
KATA PENGANTAR ... viii
DAFTAR ISI ... ix
DAFTAR GAMBAR ... xiii
DAFTAR TABEL ... xv BAB I : PENDAHULUAN... 1 1.1 Latar Belakang ... 1 1.2 Rumusan Masalah ... 2 1.3 Tujuan... 2 1.4 Batasan Masalah ... 3 1.5 Metodologi ... 3 1.6 Sistematika Penulisan ... 4
BAB II : LANDASAN TEORI ... 6
2.1 Kriptografi ... 6
2.2.1 Pengertian Kriptografi ... 7
x
2.2 Serangan Terhadap Kriptografi ... 10
2.2.1 Jenis-Jenis Serangan... 10
2.2.1 Kompleksitas Serangan ... 12
2.3 Keamanan Algoritma Kriptografi... 13
2.4 Algoritma Kriptografi Klasik... 13
2.5 Caesar Cipher ... 14
2.6 Android ... 15
2.6.1 Sejarah Sistem Operasi Android ... 15
2.6.2 Arsitektur Sistem Operasi Android ... 16
2.6.3 Virtual Machine Dalvix ... 18
2.6.4 API Android ... 19
2.7 Software Development Kit (SDK) ... 19
2.7.1 Eclipse ... 20
2.7.2 Java Development Kit (JDK) ... 21
2.8 Unified Modeling Language (UML) ... 21
BAB III : ANALISA DAN PERANCANGAN SISTEM ... 23
3.1 Deskripsi Perangkat Lunak ... 23
3.2 Tahap-Tahap Caesar Cipher ... 24
3.2.1 Diagram Pada Algoritma Caesar Cipher... 24
3.2.2 Proses Enkripsi dan Dekripsi Algoritma Caesar Cipher... 24
3.3 Analisis Kebutuhan Sistem ... 27
3.4 Desain Sistem ... 28
3.4.1 Flowchart Sistem... 28
xi
3.5 Perancangan Sistem ... 29
3.5.1 Sequence Diagram Sistem... 30
3.5.2 Activity Diagram Sistem ... 31
3.5.3 Class Diagram ... 33
3.5.4 Desain Database... 33
3.5.5 Desain Interface... 35
BAB IV : IMPLEMENTASI DAN PENGUJIAN... 36
4.1 Implementasi Sistem ... 36
4.1.1 Implementasi Pengembangan Perangkat Keras ... 36
4.1.2 Implementasi Lingkungan Pengembangan Perangkat Lunak ... 37
4.2 Implementasi Aplikasi ... 37
4.2.1 Main Menu... 37
4.2.2 Code Login Java Android ... 38
4.2.3 Code Enkripsi Java Android ... 39
4.2.4 Code Dekripsi Java Android ... 40
4.3 Pengujian Sistem ... 40
4.3.1 Pengujian Pengiriman Pada Aplikasi Chatting... 41
4.3.2 Pengujian Enkripsi... 42
4.3.3 Pengujian Dekripsi ... 44
4.3.4 Pengujian Kecocokan Kunci ... 47
4.3.5 Pengujian Pada Samrtphone Android ... 48
4.3.6 Blackbox Testing ... 50
BAB V : KESIMPULAN DAN SARAN ... 52
xii
5.2 Saran ... 52
DAFTAR PUSTAKA ... 53
xiii
DAFTAR GAMBAR
Halaman
Gambar 2.1 Skema Enkripsi Dan Dekripsi ... 8
Gambar 2.2 Arsitektur Sistem Operasi Android ... 16
Gambar 3.1 Deskripsi Perangkat Lunak ... 23
Gambar 3.2 Diagram Caesar Cipher ... 24
Gambar 3.3 Flowchart Sistem Secara Umum ... 28
Gambar 3.4 Usecase Diagram ... 29
Gambar 3.5 Sequence Diagram Enkripsi Dan Kirim Pesan ... 30
Gambar 3.6 Sequence Diagram Dekripsi Dan Terima Pesan... 31
Gambar 3.7 Activity Diagram Enkripsi Dan Kirim Pesan ... 32
Gambar 3.8 Activity Diagram Dekripsi Dan Terima Pesan ... 32
Gambar 3.9 Class Diagram... 33
Gambar 3.10 Desain Interface... 35
Gambar 4.1 Main Menu ... 37
Gambar 4.2 Code Login Java Android ... 38
Gambar 4.3 Code Enkripsi Java android ... 39
Gambar 4.4 Code Dekripsi Java Android ... 40
Gambar 4.5 Pengujian Teman Chatting ... 41
Gambar 4.6 Pengujian Chatting Dengan Sesama Teman ... 41
Gambar 4.7 Pengujian Enkripsi Informatika Key 4 ... 42
Gambar 4.8 Pengujian Enkripsi Informatika Key 6 ... 43
Gambar 4.9 Pengujian Enkripsi Universitas Key 4... 43
xiv
Gambar 4.11 Pengujian Dekripsi Informatika Key 4... 45
Gambar 4.12 Pengujian Dekripsi Informatika Key 6... 45
Gambar 4.13 Pengujian Dekripsi Universitas Key 4 ... 46
Gambar 4.14 Pengujian Dekripsi Universitas Key 6 ... 46
Gambar 4.15 Pengujian Kecocokan Kunci Yang Berbeda... 47
Gambar 4.16 Pengujian Kecocokan Kunci Yang Sama ... 48
Gambar 4.17 Pengujian Teman Chatting Pada Smartphone Android ... 49
xv
DAFTAR TABEL
Halaman
Tabel 3.1 Contoh Kasus ... 24
Tabel 3.2 Struktur Tabel User ... 34
Tabel 3.3 Struktur Tabel Friends ... 34
Tabel 3.4 Struktur Tabel Messages... 35
xvi
DAFTAR PUSTAKA
[1] Apriani, Fitri. 2010. Aplikasi Chatting dengan sistem enkripsi menggunakan
algoritma blowfish berbasis android. Tanjungpinang: penerbit Universitas
Maritim Raja All Haji.
[2] Ariyus, Dony. 2006. kriptografi: Keamanan data dan komunikasi Yogyakarta: Graha Ilmu.
[3]
http://sinta.ukdw.ac.id/sinta/resources/sintasrv/getintro/22033299/0148b1f0d7 6310a32f3180f9e6a05490/intro.pdf diakses pada tanggal 27 november 2014. [4] http://id.wikipedia.org/wiki/Sandi_Caesar diakses tanggal 27 november 2014. [5] Ariyus, Dony. 2005. Computer Security. Yogyakarta: penerbit Andi
Yogyakarta.
[6] Ariyus, Dony. 2006. kriptografi: Keamanan data dan komunikasi Yogyakarta: Graha Ilmu
[7] Ariyus, Dony. 2008. Pengantar Ilmu kriptografi Teori, Analisis, dan
Implementasi.Yogyakarta: penerbit Andi Yogyakarta.
[8] Munir, R. 2006. Kriptografi. Bandung: Penerbit Informatika
[9] Burnette, Ed, 2009, “Hello, Android “Introducing Google’s Mobile
Development Platform”, http://androidon.ru, diakses pada 27 januari 2015 pukul 04.48 PM.
[10] Habibi, W., Mazharudding, A. (2011). Pembangunan Sistem Pelacakan Dan
Penelusuran Device Mobile Berbasis Global Positioning Sistem (GPS) Pada Platform Mobile Google.
[11] http://www .Ascii Table.com/ASCII character codes and html, octal, hex and decimal chart conversion.htm diakses pada tanggal 27 januari 2015
[12] Cryptography. http://en.wikipedia.org/wiki/Criptography diakses tanggal 27 januari 2015.