MEMBANGUN APLIKASI ENKRIPSI DAN KOMPRESI LAYANAN PESAN SINGKAT MENGGUNAKAN ALGORITMA RSA DAN METODE HUFFMAN BERBASIS ANDROID
Proposal Tugas Akhir
Persyaratan Guna Meraih Gelar Sarjana Strata I Teknik Informatika Universitas Muhammadiyah Malang
NUR ENDAH SETYANINGSIH 09560068
JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG 2013
LEMBAR PERSETUJUAN
MEMBANGUN APLIKASI ENKRIPSI DAN KOMPRESI LAYANAN PESAN SINGKAT MENGGUNAKAN ALGORITMA RSA DAN METODE HUFFMAN BERBASIS ANDROID
TUGAS AKHIR
Oleh : Nur Endah Setyaningsih 09560068
Telah Direkomendasikan Untuk Diajukan Sebagai Judul Tugas Akhir Di Teknik Informatika Universitas Muhammadiyah Malang
Menyetujui,
Pembimbing I
Pembimbing II
Hariyady, S.Kom, M.T
Agus Eko Minarno, S.Kom
NIP : 101.9406.0262
NIDN : 072.9118.203
LEMBAR PENGESAHAN MEMBANGUN APLIKASI ENKRIPSI DAN KOMPRESI LAYANAN PESAN SINGKAT MENGGUNAKAN ALGORITMA RSA DAN METODE HUFFMAN BERBASIS ANDROID
TUGAS AKHIR
Diajukan Untuk Memenuhi Persyaratan Guna Meraih Gelar Sarjana Strata Satu Teknik Informatika Universitas Muhammadiyah Malang
Disusun Oleh : Nur Endah Setyaningsih 09560068
Tugas Akhir ini telah diuji dan dinyatakan lulus oleh tim penguji pada tanggal 26 Juli 2013
Mengetahui/Menyetujui Penguji I
Penguji II
Gita Indah M., S.T NIP: 108.0611.0442
Dhebys Suryani, S.Kom, MT NIDN : 070.6118.8303
Mengetahui Ketua Jurusan Teknik Informatika
Eko Budi Cahyono, S.Kom, MT NIP : 108.9504.0330
LEMBAR PERNYATAAN Yang bertanda tangan di bawah ini: Nama
: Nur Endah Setyaningsih
Tempat / Tgl Lahir
: Muara Badak, 30 April 1993
NIM
:09560068
Fakulats / Jurusan
: Teknik / Teknik Informatika
Dengan ini saya menyatakan bahwa Tugas Akhir dengan judul “MEMBANGUN APLIKASI ENKRIPSI DAN KOMPRESI LAYANAN PESAN SINGKAT MENGGUNAKAN ALGORITMA RSA DAN METODE HUFFMAN BERBASIS ANDROID” beserta seluruh isinya adalah karya saya sendiri dan bukan merupakan karya tulis orang lain, baik sebagian maupun keseluruhan, 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, 15 Juli 2013 Yang Membuat Pernyataan
Nur Endah Setyaningsih Mengetahui, Dosen Pembimbing I
Dosen Pembimbing II
Hariyady, S.Kom., M.T.
Agus Eko Minarno, S.Kom
NIP : 101.9406.0262
NIDN : 072.9118.203
KATA PENGANTAR Puji syukur kehadirat Allah SWT, yang telah memberi kekuatan dan petunjuk serta melimpahkan rahmat, dan hidayah-Nya, sehingga penulis dapat menyelesaikan Tugas
Akhir
yang
berjudul “MEMBANGUN APLIKASI ENKRIPSI DAN
KOMPRESI LAYANAN PESAN SINGKAT MENGGUNAKAN ALGORITMA RSA DAN METODE HUFFMAN BERBASIS ANDROID”.
Dengan menyadari adanya keterbatasan kemampuan, pengetahuan, referensi dan pengalaman, Tugas Akhir ini masih jauh dari sempurna. Untuk itu saran dan masukkan untuk kesempurnaan sangat penulis harapkan. Akhir kata penulis berharap semoga Tugas Akhir ini dapat bermanfaat dan menjadi tambahan ilmu pengetahuan.
Malang,15 Juli 2013
Penulis
DAFTAR ISI
Halaman LEMBAR PERSETUJUAN.............................................................................
i
LEMBAR PENGESAHAN .............................................................................
ii
LEMBAR PERNYATAAN .............................................................................
iii
ABSTRAKSI ...................................................................................................
iv
ABSTRACT .......................................................................................................
v
LEMBAR PERSEMBAHAN ..........................................................................
vi
KATA PENGANTAR .....................................................................................
vii
DAFTAR ISI ....................................................................................................
viii
DAFTAR GAMBAR .......................................................................................
xii
DAFTAR TABEL ............................................................................................
xiv
BAB I : PENDAHULUAN.............................................................................
1
1.1 ........................................................................................................ Latar Belakang..................................................................................................... 1 1.2 Rumusan Masalah ......................................................................................
2
1.3 Batasan Masalah.........................................................................................
3
1.4 Tujuan ........................................................................................................
3
1.5 Metodologi .................................................................................................
3
1.6 Sistematika Penulisan ................................................................................
5
BAB II : LANDASAN TEORI ......................................................................
7
2.1 Short Message Service (SMS) ...................................................................
7
2.1.1 Sejarah SMS ................................................................................
7
2.1.2 Karakteristik SMS .......................................................................
8
2.1.3 Cara Kerja SMS ..........................................................................
9
2.2 ANDROID (Sistem Operasi) .....................................................................
10
2.2.1 Sejarah Sistem Operasi Android .................................................
10
2.2.2 Arsitektur Sistem Operasi Android .............................................
11
2.2.3 Virtual Machine Dalvix...............................................................
14
2.2.4 Application Programming Interface (API) Android ...................
14
2.3 Algoritma RSA ..........................................................................................
15
2.3.1 Mekanisme Kerja RSA ...............................................................
15
2.3.2 Proses Pembuatan Kunci RSA .................................................... 16 2.3.3 Proses Enkripsi RSA ...................................................................
17
2.3.4 Proses Dekripsi RSA ...................................................................
17
2.3.5 Keuntungan dan Kerugian Algoritma RSA ................................
18
2.3.6 Aplikasi Algoritma RSA Sehari - hari ........................................
20
2.4 Algoritma Huffman ....................................................................................
21
2.4.1 Mekanisme Kerja Huffman .........................................................
21
2.4.2 Proses Encoding Huffman ..........................................................
21
2.4.3 Proses Decoding Huffman ..........................................................
22
2.4.4 Perbandingan dengan Algoritma Kompresi Lainnya ..................
23
BAB III : ANALISA DAN PERANCANGAN SISTEM ............................
25
3.1 Deskripsi Perangkat Lunak ........................................................................
25
3.2 Analisis Sistem Enkripsi dan Dekripsi dengan Algoritma RSA ................
25
3.3 Tahap – Tahap Algoritma RSA..................................................................
26
3.3.1 Diagram Pada Algoritma RSA ....................................................
26
3.3.2 Pembangkitan Kunci Pada Algoritma RSA ................................
26
3.3.3 Enkripsi Pada Algoritma RSA ....................................................
27
3.3.4 Dekripsi Pada Algoritma RSA ....................................................
27
3.4 Analisa Sistem Kompresi dan Dekompresi dengan Algoritma Huffman ..
28
3.5 Tahap – Tahap Algoritma Huffman ...........................................................
28
3.5.1 Langkah Algoritma Huffman ......................................................
28
3.5.2 Contoh Algoritma Huffman ........................................................
28
3.6 Analisa Kebutuhan Sistem .........................................................................
31
3.7 Desain Sistem .............................................................................................
32
3.7.1 Flowchart Sistem.........................................................................
32
3.7.2 Use Case Diagram .......................................................................
33
3.8 Perancangan Sistem ...................................................................................
33
3.8.1 Sequence Diagram Sistem...........................................................
33
3.8.2 Activity Diagram Sistem .............................................................
35
3.8.3 Desain Interface ..........................................................................
36
3.8.4 Class Diagram .............................................................................
37
BAB IV : IMPLEMENTASI DAN PENGUJIAN .......................................
38
4.1 Implementasi Sistem ..................................................................................
38
4.1.1 Implementasi Pengembangan Perangkat Keras ..........................
39
4.1.2 Implementasi Lingkungan Pengembangan Perangkat Lunak .....
39
4.2 Implementasi Aplikasi ...............................................................................
40
4.2.1 Main Menu ..................................................................................
40
4.2.2 Code Encoding Decoding Java ...................................................
41
4.2.3 Code SMS Java ...........................................................................
44
4.2.4 Code Inbox Java ..........................................................................
46
4.2.5 Code Huffman Java .....................................................................
48
4.3 Pengujian Sistem ........................................................................................
56
4.3.1 Pengujian Generate Key..............................................................
56
4.3.2 Pengujian Encoding dan Decoding .............................................
60
4.3.3 Create SMS .................................................................................
66
4.3.4 Inbox SMS ..................................................................................
67
4.3.5 About App ...................................................................................
68
4.3.6 BlackBox Testing ........................................................................
68
BAB V : KESIMPULAN DAN SARAN .......................................................
73
5.1 Kesimpulan ................................................................................................
73
5.2 Saran ...........................................................................................................
73
DAFTAR PUSTAKA .....................................................................................
74
DAFTAR PUSTAKA [1] Kurniawan Andi, "Penerapan Digital Signature pada Aplikasi SMS Android," 2012. [2] (2013, Maret) Capai Usia 20 Tahun, Pesan Teks Harus Bersaing dengan Teknologi Baru. [Online]. HYPERLINK "http://portal.paseban.com" http://portal.paseban.com [3] Berda Setya A, Agung Budi P, and Sofwan Aghus. (2011) Aplikasi MP3 Player Berdasarkan Polling SMS. [Online]. HYPERLINK "http://eprints.undip.ac.id/" http://eprints.undip.ac.id/ [4] Terry Firasyan, "Penggunaan Algoritma RSA untuk keamanan transaksi online berbasis aplikasi mobile," 2012. [5] Ed Burnette, Hello, Android “Introducing Google’s Mobile Development Platform"., 2008. [6] Wildan Habibi and Ary Mazharuddin S, "Pembangunan Sistem Pelacakan dan Penelusuran Device Mobile berbasis Global Positioning Sistem (GPS) pada Platform Mobile Google," 2011. [7] Prasetyo Andy Wicaksono, "Studi Pemakaian Algoritma RSA dalam Proses Enkripsi dan Aplikasinya". [8] Muhammad Iqbal, "Studi Teknis Metode Enkripsi RSA dalam Perhitungannya". [9] Yogie Adrisatria, "Penerapan Algoritma Huffman dalam Dunia Kriptografi". [10] Putu Widhiartha, "Pengantar Kompresi Data," 2012.