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 i 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 NIDN : 0723118601 Zamah Sari, M.T NIDN : 07.080877.01 ii 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 iii 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 NIDN : 0723118601 Zamah Sari, M.T NIDN : 07.080877.01 iv 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 Kunci: Caesar cipher, kriptografi, kode ascii . v 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 Key: Caesar cipher, cryptography, ascii code. vi 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. vii 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 mengharapkan kekurangan saran yang dan keterbatasan. membangun agar Oleh tulisan karena ini itu bermanfaat perkembangan ilmu pengetahuan ke depan. Malang, 17 April 2015 Sofyan viii peneliti bagi 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 2.2.2 Tujuan Kriptografi........................................................................ 9 ix 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 3.4.2 Usecase Diagram .......................................................................... 29 x 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 5.1 Kesimpulan.................................................................................................. 52 xi 5.2 Saran ........................................................................................................... 52 DAFTAR PUSTAKA ...................................................................................... 53 xii 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 Gambar 4.10 Pengujian Enkripsi Universitas Key 6........................................ 44 xiii 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 Gambar 4.17 Pengujian Chatting Pada Smartphone Android........................... 49 xiv 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 Tabel 4.1 Blackbox Testing............................................................................... 50 xv 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 Yogyakarta: Graha Ilmu. data dan komunikasi [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. Yogyakarta. [6] Ariyus, Dony. 2006. kriptografi: Keamanan 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. [13] http://en.wikipedia.org/wiki/Caesar_cipher diakses tanggal 27 januari 2015. 2005. Computer Security. xvi Yogyakarta: penerbit Andi data dan komunikasi