aplikasi chatting dengan sistem enkripsi menggunakan

advertisement
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
Download