PERANCANGAN DAN PEMBUATAN APLIKASI PENGAMANAN DATA PADA SMS DENGAN METODE ALGORITMA RC-6 BERBASIS ANDROID LAPORAN TUGAS AKHIR Disusun sebagai syarat untuk menyelesaikan Pendidikan Diploma 3 OLEH: FACHRI ALWI SIREGAR 1205112016 PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER DAN INFORMATIKA POLITEKNIK NEGERI MEDAN MEDAN 2015
Abstrak Semakin berkembangnya teknologi informasi sekarang ini, membuat perangkat mobile menjadi salah satu kebutuhan informasi oleh masyarakat di dunia. Salah satu perkembangan yang sangat signifikan adalah penggunaan pengiriman pesan (SMS) untuk pertukaran informasi. Masalah keamanan dan kerahasiaan data merupakan salah satu aspek penting dari suatu sistem informasi. Dalam hal ini, sangat terkait dengan betapa pentingnya informasi tersebut dikirim dan diterima oleh orang yang berkepentingan. Informasi akan tidak berguna lagi apabila di tengah jalan informasi itu disadap atau dibajak oleh orang yang tidak berhak. Ada banyak model dan metode enkripsi, salah satu diantaranya adalah enkripsi dengan algoritma Rivest Code 6 (RC6). Model ini merupakan salah satu algoritma kunci simetris. Berdasarkan pengujian perangkat lunak yang dilakukan dapat dilihat bahwa perangkat lunak dapat berjalan dengan baik dan algoritma RC6 dapat diimplementasikan untuk enkripsi SMS pada android, dan bisa mengenkripsi maupun dekripsi pesan kurang lebih 160 karakter. Kata kunci: SMS, Kriptografi, Enkripsi, Dekripsi, RC6. iii
KATA PENGANTAR Puji dan syukur penulis panjatkan kehadirat Allah SWT atas rahmat dan hidayah yang Allah berikan, sehingga penulis dapat menyelesaikan laporan Tugas Akhir yang berjudul Perancangan dan Pembuatan Aplikasi Pengamanan Data pada SMS dengan Metode Algoritma RC-6 Berbasis Android. Tugas Akhir dibuat sebagai salah satu syarat akademis yang harus ditempuh untuk menyelesaikan Program Diploma 3 (tiga) pada Program Studi Teknik Komputer (Computer Engineering) Jurusan Teknik Komputer dan Informatika Politeknik Negeri Medan. Dalam penyelesaian Tugas Akhir ini, penulis banyak mendapat bimbingan dan bantuan baik berupa tenaga, materi maupun dorongan semangat dari berbagai pihak yang sangat bermanfaat bagi penulis. 1. M. Syahruddin, S.T., M.T., selaku Direktur Politeknik Negeri Medan. 2. Ferry Fachrizal, S.T., M. Kom selaku Ketua Jurusan Teknik Komputer Informatika 3. Zakaria Sembiring, S.T., M.Sc. selaku Kepala Program Studi Teknik Komputer. 4. Handri Sunjaya, S. Si., M.Cs. selaku dosen pembimbing dalam penyelesaian laporan Tugas Akhir ini. 5. Eviliana Sembiring, selaku Administrasi Program Studi Teknik Komputer yang telah membantu penulis untuk menyelesaikan administrasi. iv
6. Keluarga penulis, terutama untuk Ibunda Rosida Fitri Yanti dan Ayahanda Sallahuddin Siregar yang telah banyak memberi dukungan moril dan materil serta doa yang tiada hentinya kepada penulis dalam menyelesaikan laporan Tugas Akhir ini. 7. Kepada Abang saya Rachmad Hidayat Siregar yang banyak memberikan saran dan dukungan serta doa untuk penulis dalam menyelesaikan laporan Tugas Akhir ini. 8. Seluruh teman-teman penulis di CE-6B 12, khususnya Kiki Nugraha Indra Setiawan, Lumalo Portibi Harahap, Matius Daniel Sinurat, Niskar Brasnover Zega, Theofranz Christian Manihuruk. Terima kasih buat bantuan, dukungan, hiburan dan semuanya yang sudah kalian berikan kepada penulis. 9. Terima kasih kepada Tri Intan Fandini, yang selalu menemani dan memberikan motivasi dalam menyelesaikan tugas akhir penulis. v
10. Terima kasih juga kepada abang dan kakak senior, Andri, Zafry, Dyan, yang banyak membantu penulis dalam menyusun dan menyelesaikan laporan Tugas Akhir ini. 11. Semua pihak yang telah membantu dalam penyelesaian Tugas Akhir ini. Walaupun penulis sudah berusaha semaksimal mungkin, penulis menyadari bahwa Tugas Akhir ini masih terdapat kekurangan yang masih perlu diperbaiki. Untuk itu penulis mengharapkan saran dan kritik yang bersifat membangun dari para pembaca. Akhir kata, penulis berharap semoga Laporan Tugas Akhir ini dapat lebih sempurna dan dapat memberi manfaat bagi penulis dan para pembaca umumnya. Medan, 26 Agustus 2015 Penulis, Fachri Alwi Siregar NIM:1205112016 vi
DAFTAR ISI LEMBAR PERSETUJUAN... i LEMBAR PENGESAHAN... ii Abstrak... iii KATA PENGANTAR... iv DAFTAR ISI... vii DAFTAR GAMBAR... ix DAFTAR TABEL... x DAFTAR LAMPIRAN... xi BAB 1 PENDAHULUAN... 1 1.1 Latar Belakang Masalah... 1 1.2 Rumusan Masalah... 2 1.3 Batasan Masalah... 3 1.4 Tujuan Tugas Akhir... 3 1.5 Manfaat Tugas Akhir... 4 1.6 Metode Tugas Akhir... 4 1.6.1 Melakukan Observasi dan Studi Literatur... 4 1.6.2 Melakukan Perancangan Aplikasi Mobile... 4 1.6.3 Pembuatan Aplikasi Mobile... 5 1.7 Sistematika Penyusunan... 5 BAB 2 LANDASAN TEORI... 7 2.1 Sejarah SMS (Short Message Service)... 7 2.2 Kriptografi... 8 2.2.1 Algoritma Kriptografi... 9 2.3 Algoritma RC-6... 10 2.3.1 Metode Enkripsi RC-6... 11 2.3.2 Metode Dekripsi RC-6... 13 2.4 Pengertian Android... 21 2.4.1 Sejarah Android... 22 2.5 Android Studio... 25 2.5.1 Android Software Development Kit (SDK Android)... 30 2.5.2 Android Package (APK)... 30 vii
2.5.3 Android Virtual Devices (AVD)... 31 2.5.4 Java Software Development Kit (SDK Java)... 31 2.6 Emulator... 31 2.7 Unified Modelling Language (UML)... 32 2.7.1 Konsep Dasar UML... 32 BAB 3 PERANCANGAN DAN PEMBUATAN SISTEM... 40 3.1 Gambaran Umum Aplikasi... 40 3.2 Identifikasi Sistem... 40 3.3 Kebutuhan Sistem... 40 3.3.1 Perangkat Keras... 41 3.4 Perancangan Sistem... 42 3.4.1 Use Case Diagram... 42 3.4.2 Class Diagram... 43 3.4.3 Activity Diagram... 45 3.4.4 Sequence Diagram... 47 3.5 Desain Antarmuka... 49 BAB 4 IMPLEMENTASI DAN PENGUJIAN... 57 4.1 Implementasi Antarmuka... 57 4.3 Kelebihan dan Kekurangan Aplikasi... 68 4.3.1 Kelebihan Aplikasi yang Dirancang... 68 4.3.2 Kekurangan Aplikasi yang Dirancang... 68 BAB 5 KESIMPULAN DAN SARAN... 69 5.1 Kesimpulan... 69 5.2 Saran... 69 DAFTAR PUSTAKA... 70 viii
DAFTAR GAMBAR Halaman Gambar 2.1 Skema Proses Enkripsi dan Dekripsi... 9 Gambar 2.2 Diagram Enkripsi RC-6... 12 Gambar 2.3 Diagram Dekripsi RC-6... 14 Gambar 2.4 Logo Android Studio... 26 Gambar 2.5 Tampilan proyek Android... 27 Gambar 2.6 Tampilan proyek build file... 28 Gambar 2.7 Tampilan struktur proyek Android Studio... 29 Gambar 3.1 Use Case Diagram... 43 Gambar 3.2 Class Diagram... 44 Gambar 3.3 Activity Diagram... 46 Gambar 3.4 Sequence Diagram Tulis Pesan... 47 Gambar 3.5 Sequence Diagram Baca SMS... 48 Gambar 3.6 Tampilan Register... 49 Gambar 3.7 Tampilan Login... 50 Gambar 3.8 Tampilan Menu Utama Aplikasi... 51 Gambar 3.9 Tampilan Tulis Pesan... 52 Gambar 3.10 Tampilan Kotak Masuk... 53 Gambar 3.11 Tampilan Baca SMS... 54 Gambar 3.12 Tampilan Tentang (About)... 55 Gambar 3.13 Tampilan Ganti Password... 56 ix
DAFTAR TABEL Tabel Halaman Tabel 2.1 Kunci Sbox RC-6... 13 Tabel 2.2 Use Case Diagram... 33 Tabel 2.3 Class Diagram... 36 Tabel 2.4 Statechart Diagram... 37 Tabel 2.5 Activity Diagram... 38 x
DAFTAR LAMPIRAN 1. SURAT KESEDIAAN DOSEN PEMBIMBING 2. SURAT PERMOHONAN PENGAJUAN JUDUL TUGAS AKHIR 3. SURAT PERSETUJUAN JUDUL TUGAS AKHIR 4. KARTU BIMBINGAN TUGAS AKHIR MAHASISWA 5. FORMULIR BEBAS REVISI 6. DAFTAR NILAI PKL DARI PERUSAHAAN 7. LISTING PROGRAM xi
BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Semakin berkembangnya teknologi informasi sekarang ini, membuat perangkat mobile menjadi salah satu kebutuhan informasi oleh masyarakat di dunia. Salah satu perkembangan yang sangat signifikan adalah penggunaan pengiriman pesan (SMS) untuk pertukaran informasi. Masalah keamanan dan kerahasiaan data merupakan salah satu aspek penting dari suatu sistem informasi. Dalam hal ini, sangat terkait dengan betapa pentingnya informasi tersebut dikirim dan diterima oleh orang yang berkepentingan. Informasi akan tidak berguna lagi apabila di tengah jalan informasi itu disadap atau dibajak oleh orang yang tidak berhak. Kriptografi merupakan salah satu teknik yang dapat memberikan layanan yang mendukung untuk meningkatkan keamanan informasi. Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, serta otentifikasi. Ilmu sandi (kriptografi) sendiri telah ada sejak lama. Tercatat dalam sejarah bahwa Julius Caesar (kaisar romawi) menggunakan penyandian untuk menyampaikan pesan rahasia saat perang. Otentifikasi merupakan layanan yang berhubungan dengan identifikasi kebenaran sumber pesan, sedangkan kerahasiaan adalah layanan yang ditunjukkan untuk menjaga agar informasi atau pesan agar tidak dapat dibaca oleh pihak tidak berhak yaitu melalui proses enkripsi dan dekripsi. 1
2 Enkripsi ialah proses mengamankan suatu informasi dengan membuat informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan dan atau alat khusus. Sedangkan dekripsi merupakan algoritma atau cara yang dapat digunakan untuk membaca informasi yang telah dienkripsi untuk kembali dapat dibaca. Untuk mengurangi dampak penyadapan terhadap pengiriman informasi melalui perangkat mobile penulis ingin mencoba membuat aplikasi SMS terenkripsi. Saat ini terdapat berbagai algoritma penyandian dalam ilmu kriptografi, namun dalam hal ini penulis memilih RC-6. Algoritma yang mulai diperkenalkan sekitar tahun 1998 ini adalah hasil pengembangan dari algoritma RC5. RC6 dikembangkan dari RC5 dengan menambahkan 4 buah register dalam proses enkripsi dan dekripsi teks. Aplikasi ini akan berjalan pada perangkat mobile dengan menggunakan platform android. Alasan penulis menggunakan platform android karena sistem operasi untuk ponsel ini sedang berkembang akhir-akhir ini dan kebanyakan aplikasi yang dikembangkan didapatkan secara gratis. Sehingga bebas untuk dikembangkan lebih lanjut lagi bagi yang ingin mengembangkannya. Dengan alasan inilah penulis memilih judul Perancangan dan Pembuatan Aplikasi Pengamanan Data pada SMS dengan Metode Algoritma RC-6 Berbasis Android dalam penulisan Tugas Akhir ini. 1.2 Rumusan Masalah Berdasarkan latar belakang masalah yang sudah dikemukakan maka rumusan masalah yang dikaji dalam tugas akhir ini adalah:
3 1. Bagaimana merancang Aplikasi SMS Kriptografi dengan metode RC-6 berbasis Sistem Operasi Andorid? 2. Bagaimana mengembangkan Aplikasi SMS Kriptografi menjadi sebuah aplikasi yang mudah dan praktis untuk digunakan? 3. Bagaimana menguji sistem untuk mengetahui tingkat kebenaran aplikasi tersebut? 1.3 Batasan Masalah Dalam perancangan dan pembuatan tugas akhir ini diberikan batasanbatasan masalah sebagai berikut: 1. Aplikasi ini hanya bersifat mobile based. 2. Ruang lingkup hanya di batasi pada Aplikasi SMS kriptografi. 3. Aplikasi ini akan berjalan pada sistem operasi android minimum dengan versi 2.3.1 (Gingerbread) atau lebih. 4. Aplikasi ini dibuat menggunakan software IDE Android Studio. 1.4 Tujuan Tugas Akhir Tujuan dati tugas akhir ini adalah : 1. Sebagai salah satu syarat untuk menyelesaikan program pendidikan Diploma III pada program studi Teknik Komputer Politeknik Negeri Medan. 2. Mengimplementasikan kriptografi pada perangkat mobile untuk keamanan pesan SMS.
4 3. Mengintegrasikan metode kriptografi RC-6 dengan Aplikasi SMS pada perangkat mobile. 4. Memberikan kenyamanan bagi pengguna SMS didalam bertukar informasi atau data. 1.5 Manfaat Tugas Akhir Manfaat yang dapat diberikan melalui pembuatan aplikasi ini adalah : Tugas akhir ini diharapkan akan mampu memberikan keamanan bagi user dalam menggunakan SMS agar orang yang tidak berhak tidak bisa membaca informasi yang ada pada SMS tersebut, sehingga keamanan dan kerahasiaan data yang ada pada SMS dapat terjaga. 1.6 Metode Tugas Akhir Ada beberapa bagian metode dalam penulisan tugas akhir ini adalah : 1.6.1 Melakukan Observasi dan Studi Literatur Penulis melakukan pencarian dan pengumpulan data dengan cara mempelajari masalah melalui pengamatan secara langsung maupun studi literatur, disertai dengan pencarian solusi atas masalah tersebut. 1.6.2 Melakukan Perancangan Aplikasi Mobile Berdasarkan observasi yang telah dilakukan, langkah selanjutnya adalah melakukan perancangan aplikasi mobile. Dimana teknologi yang digunakan adalah teknologi Android, karena memiliki kompatibilitas terhadap banyak
5 perangkat mobile. Kemudian dilakukan perancangan UML dengan menggunakan visio sebelum dilakukan proses coding. 1.6.3 Pembuatan Aplikasi Mobile Melakukan perancangan desain dalam bentuk struktur program, UML, dan antar muka sistem untuk memudahkan proses implementasi pada tahap selanjutnya. 1.7 Sistematika Penyusunan Sistematika penulisan tugas akhir ini terdiri dari beberapa bab yang saling terkait. Adapun kerangka bab yang merupakan bagian isi dari tugas akhir ini secara garis besar adalah sebagai berikut: BAB 1 PENDAHULUAN Pada bab ini dibahas dan dikemukakan latar belakang, rumusan masalah, tujuan, batasan masalah, metode penyelesaian, dan sistematika penulisan tugas akhir ini. BAB 2 LANDASAN TEORI Dalam bab ini akan dijelaskan tentang landasan teori yang menjadi referensi utama dalam penulisan tugas akhir. Teori yang dibahas berhubungan dengan aplikasi yang akan di buat dan juga yang digunakan untuk kepentingan analisis dan perancangan aplikasi. BAB 3 PERANCANGAN DAN PEMBUATAN SISTEM Dalam bab ini dijelaskan tentang apa saja tahapan yang dilakukan dalam melakukan perancangan dan pembuatan sebuah Aplikasi
6 SMS Kriptografi dengan menggunakan algoritma RC-6 berbasis android. BAB 4 HASIL DAN PEMBAHASAN Dalam bab ini dijelaskan tentang proses pengujian dan analisa yang dilakukan untuk mendapatkan tingkat efektifitas dan efisiensi dari aplikasi yang telah dirancang dan dibuat. BAB 5 KESIMPULAN DAN SARAN Bab ini menjelaskan hasil akhir dari penulisan yang dikerjakan yaitu simpulan dan saran yang berisi masukan guna mengembangkan dan melengkapi aplikasi yang telah dibangun.