JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-6
1
Aplikasi Enkripsi SMS dengan Metode Rabin pada Android Gayuh Taruna Muko, Muchammad Husni, Hudan Studiawan Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember (ITS) Jl. Arief Rahman Hakim, Surabaya 60111 E-mail:
[email protected] Abstrak — SMS merupakan suatu layanan pengiriman pesan singkat melalui telepon genggam. Penggunaan SMS menjadi populer dikalangan masyarakat dikarenakan dengan begitu mudahnya kita dapat saling bertukar informasi tanpa batasan jarak dan waktu dengan cepat dan biaya yang murah. Hal yang riskan pada komunikasi melalui SMS adalah pesan yang dikirimkan akan disimpan di SMSC (Short Message Service Center), yaitu tempat dimana SMS disimpan sebelum dikirim ke tujuan. Pesan yang sifatnya plaintext ini dapat disadap oleh siapa saja yang berhasil memiliki akses ke dalam SMSC. Akibatnya, informasi penting seperti password, nomer pin, dan lain-lain dapat dibaca oleh orang yang tidak berhak untuk mengetahuinya. Dari permasalah keamanan isi pesan SMS tersebut, dapat dikembangkan perangkat lunak yang berfungsi sebagai Aplikasi SMS yang mampu melakukan proses enkripsi dan dekripsi pesan SMS pada perangkat mobile. Dengan adanya fitur enkripsi dan dekripsi isi pesan SMS diharapkan keamanan isi pesan SMS akan lebih terjaga. Salah satu metode enkripsi yang dapat digunakan adalah dengan menggunakan metode kriptografi Rabin. Dari hasil uji coba yang telah dilakukan, dapat diketahui jika enkripsi SMS dengan metode Rabin telah berfungsi sesuai dengan yang diharapkan, proses enkripsi dan dekripsi dapat berfungsi dengan baik dalam menjaga kerahasiaan isi pesan SMS, waktu yang dibutuhkan untuk proses enkripsi maupun dekripsi relatif cepat. Kata Kunci — Android, Kriptografi, Kunci publik, Rabin, SMS.
S
I. PENDAHULUAN
aat ini telepon selular (mobile phone) merupakan sebuah alat komunikasi yang telah digunakan oleh sebagian besar orang di seluruh dunia. Telepon selular menyediakan media komunikasi yang beragam dan salah satu diantaranya adalah media SMS (Short Message Service). SMS merupakan suatu layanan pengiriman pesan singkat melalui telepon genggam. Walaupun merupakan bagian dari kemampuan standard GSM fase pertama, SMS masih merupakan layanan yang banyak digunakan oleh masyarakat. Penggunaan SMS menjadi populer dikalangan masyarakat dikarenakan dengan begitu mudahnya dapat saling bertukar informasi tanpa batasan jarak dan waktu dengan cepat dan biaya yang murah [1]. Seiring dengan berkembangnya teknologi pada perangkat mobile muncul masalah yang berhubungan dengan tingkat keamanan pada perangkat mobile tersebut, seperti penyadapan, pencurian informasi dan yang lainnya. Hal yang riskan pada komunikasi melalui SMS adalah pesan yang dikirimkan akan disimpan di SMSC (Short Message Service Center), yaitu
tempat dimana SMS disimpan sebelum dikirim ke tujuan. Pesan yang sifatnya plaintext ini dapat disadap oleh siapa saja yang berhasil memiliki akses ke dalam SMSC. Akibatnya, informasi penting seperti password, nomer pin, dan lain-lain dapat diketahui oleh orang yang tidak berhak untuk mengetahuinya. Hal-hal tersebut dapat menjadi sangat merugikan jika informasi yang dicuri atau disadap adalah informasi yang bersifat pribadi atau rahasia. Dari permasalah keamanan isi pesan SMS yang telah di jelaskan sebelumnya, muncul permasalahan bagaimana cara untuk mengatasi permasalahan tersebut. Salah satu cara untuk mengatasi permasalahan tersebut adalah dengan melakukan enkripsi terhadap pesan SMS. Dengan semakin majunya perkembangan pada perangkat mobile, implementasi suatu algoritma enkripsi menjadi mungkin untuk diterapkan. Salah satu metode enkripsi yang dapat digunakan untuk permasalahan keamananan adalah dengan menerapkan enkripsi dengan metode Rabin. Teknik kriptografi Rabin merupakan bagian dari kriptografi kunci publik atau asymmetric cryptosystem dimana kunci yang digunakan untuk proses enkripsi berbeda dengan kunci yang digunakan pada proses dekripsi [2]. Android merupakan salah satu sistem operasi smartphone yang baru diperkenalkan beberapa tahun belakangan ini. Namun, kehadiranya tidak dapat dianggap sebelah mata karena pengguna sistem operasi Android saat ini telah mengalamai peningkatan yang luar biasa. Android menawarkan sebuah lingkungan yang bersifat open source kepada pengembang. Setiap aplikasi memiliki tingkatan yang sama. Android tidak membedakan antara aplikasi inti dengan aplikasi pihak ketiga. API yang disediakan menawarkan akses ke hardware, maupun data-data ponsel sekalipun, atau data sistem sendiri. Bahkan pengguna dapat menghapus aplikasi inti dan menggantikanya dengan aplikasi pihak ketiga. Sifat open source inilah yang membuat Android memiliki tempat di antara para pengembang aplikasi saat ini [5]. II. METODE A. Dasar Teori Sistem kriptografi Rabin (Rabin Cryptosystem) adalah suatu teknik kriptografi asimetris atau kriptografi kunci publik yang memiliki tingkat keamanan terkait dengan masalah
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-6 sulitnya faktorisasi. Sistem Kriptografi Rabin pertama kali dipublikasikan pada bulan Januari 1979 oleh Michael O.Rabin. Sistem kriptografi Rabin termasuk dalam sistem kriptografi asimetris yang menerapkan konsep untuk mendapatkan keseluruhan plaintext dari suatu ciphertext yang diketahui berdasarkan pada kesulitan dalam melakukan faktorisasi [4]. Seperti teknik kriptografi kunci publik atau asimetris lainnya, Sistem kriptografi Rabin menggunakan suatu pasangan kunci, yaitu kunci publik dan kunci privat. Kunci publik diperlukan dalam melakukan proses enkripsi yang nantinya dapat dipublikasikan, sementara kunci privat harus dirahasiakan untuk digunakan pada proses dekripsi. Proses pembangkitan kunci pada Rabin hanya melibatkan sedikit saja variabel dalam pembangkitan kunci, namun memiliki kesulitan dalam hal pemfaktoran bilangan prima, untuk menambah keamanannya. Berikut adalah langkah langkah yang dilakukan untuk membangkitkan kunci Rabin:
2 Proses Dekripsi pada teknik Rabin dilakukan dengan menggunakan sebuah rumus sederhana, namun membutuhkan teorema Chinese remainder. Teorema ini digunakan untuk mendapatkan plaintext yang benar. Namun yang menjadi poin penting dari teknik ini adalah teknik Rabin tidak menghasilkan jawaban plaintext tunggal. Jawaban yang dihasilkan pada teknik Rabin ini terdiri dari 4 kemungkinan jawaban, tidak menghasilkan satu jawaban yang pasti. Pada Gambar 2 adalah pseudo-code algoritma dekripsi kriptografi Rabin [4]. Dekripsi(p,q,C) { a1 ← + ( a2 ← - ( b1 ← + ( b2 ← - (
C=
mod n
C : Cipherteks P : Plainteks n : kunci publik Proses enkripsi yang sederhana ini menyebabkan proses enkripsi teknik Rabin ini dapat dilakukan dalam waktu yang relatif singkat karena tidak memiliki proses yang rumit. Kesederhanaan ini merupakan keuntungan yang dimiliki teknik Rabin untuk menghadapi keterbatasan resource yang ada pada media kriptografi. Pada Gambar 1 adalah pseudocode algoritma enkripsi kriptografi Rabin. Enkripsi(n,P){ C ← mod n return C } Gambar 1. Pseudo-code enkrpsi kriptografi Rabin.
mod mod mod mod
p p q q
// Chin_Rem adalah fungsi untuk // memanggil Chinese Remainder
1. Tentukan dua buah bilangan prima p dan q. 2. Hitung nilai n = p х q 3. Mendapatkan nilai kunci publik dan kunci privat, dimana kunci publik adalah n dan kunci privat adalah p dan q. Kedua bilangan prima p dan q harus berada dalam persamaan 4k+1 atau 4k+3. Walaupun dibatasi dalam persamaan, tetapi proses pemecahan kunci teknik Rabin ini tetap sulit, karena proses pemfaktoran bilangan akan membutuhkan waktu yang lama, terlebih jika menggunakan bilangan yang sangat besar. Teknik Rabin merupakan algoritma kriptografi kunci publik, maka semua orang dapat melakukan enkripsi dengan satu kunci publik tertentu, namun proses dekripsi hanya dapat dilakukan dengan menggunakan kunci privat oleh orang yang bersangkutan. Proses enkripsi pada teknik Rabin sangat sederhana. Proses enkripsi tersebut dapat dituliskan dalam rumus berikut [8].
) ) ) )
Hasil_1 Hasil_2 Hasil_3 Hasil_4 }
← ← ← ←
Chin_Rem(a1,b1,p,q) Chin_Rem(a1,b2,p,q) Chin_Rem(a2,b1,p,q) Chin_Rem(a2,b2,p,q)
return Hasil_1, Hasil_2, Hasil_3, Hasil_4
Gambar 2. Pseudo-code dekripsi kriptografi Rabin.
Teknik Rabin selalu menghasilkan 4 kemungkinan hasil yang diberikan semuanya kepada orang yang melakukan dekripsi terhadap pesan rahasia. Kemudian orang tersebut harus dapat menentukan mana pesan yang sebenarnya diantara keempat hasil dekripsi tersebut. Walaupun menghasikan 4 pesan berbeda pada akhirnya penerima pesan dapat memilih pesan yang benar dengan tidak terlalu sulit karena pesan yang benar seharusnya akan terlihat jelas dibandingkan dengan ketiga hasil dekripsi yang lain. B. Rancangan Sistem Domain permasalahan yang diangkat dalam pengerjaan Tugas Akhir ini adalah bagaimana membangun sebuah aplikasi mobile berbasis Android yang dapat melakukan proses enkripsi dan dekripsi SMS dengan metode Rabin. Dalam implementasinya di butuhkan dua buah perangkat mobile berbasis Android, dimana mobile pertama berfungsi sebagai pihak pengirim dan mobile kedua berfungsi sebagai pihak penerima. Sebagai pihak pengirim pihak pertama harus memiliki kunci publik (public key) milik pihak penerima untuk melakukan enkripsi terhadap pesan SMS yang akan dikirimkan. Pada pihak penerima (receiver) harus memiliki kunci rahasia (private key) untuk melakukan dekripsi terhadap pesan SMS yang telah diterima dari pihak pengirim.
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-6
3 Pada proses penerimaan SMS dari pengirim atau (sender), SMS akan diterima oleh aplikasi bawaan yang terdapat pada perangkat mobile yang digunakan oleh pihak penerima (receiver), jadi dalam hal ini tidak ada perbedaan antara pesan SMS yang terenkripsi atau pesan SMS normal tanpa enkripsi. Jika pada proses pengiriman SMS dari pihak pengirim (sender) telah dilakukan enkripsi, maka pesan yang diterima akan berupa pesan rahasia (ciphertext) berupa karakter yang sulit dimengerti. Untuk dapat mendapatkan plaintext dari ciphertext, pihak penerima (receiver) harus melakukan dekripsi terhadap pesan tersebut dengan menggunakan private key miliknya.
Gambar 3. Skema enkripsi dan dekripsi SMS.
Pada Gambar 3 menjabarkan alur proses pengiriman SMS dengan penambahan fitur enkripsi dan dekripsi. Pihak pengirim (sender) harus memiliki kunci publik milik pihak penerima (receiver) untuk dapat melakukan enkripsi pesan (plaintext) sehingga menjadi pesan rahasia (ciphertext) dan penerima harus memiliki kunci privat untuk dapat melakukan dekripsi terhadap pesan rahasia (ciphertext) sehingga dapat diperoleh plaintext. Untuk mendapatkan kombinasi public key dan private key disediakan fitur key generator pada aplikasi yang di rancang pada Tugas Akhir kali ini, fitur key generator berfungsi untuk menghasilkan kombinasi public key dan private key yang nantinya akan digunakan pada proses enkripsi dan dekripsi pesan SMS. C. Flowchart Pada Gambar 4 di bawah ditunjukan alur proses pengiriman SMS, user (sender) dapat memilih untuk mengenkripsi pesan terlebih dulu atau tidak. Jika memilih untuk melakukan enkripsi terlebih dahulu, user (sender) harus menentukan public key penerima SMS untuk digunakan pada proses enkripsi, tanpa memiliki public key penerima SMS, sender tidak dapat melakukan enkripsi pesan SMS.
Gambar 5. Flowchart dekripsi SMS.
Pada Gambar 5 di atas ditunjukan flowchart proses dekripsi, terdapat dua pilihan dekripsi, yaitu auto decrypt dan manual decrypt. Hal ini dikarenakan metode enkripsi Rabin merupakan metode dengan fungsi 4 ke 1 yang artinya hasil dekripsi menghasilkan empat kemungkinan hasil yang berbeda, dimana user harus menentukan sendiri mana plaintext yang benar diantara empat hasil tersebut. Akan tetapi keambiguan hasil ini dapat di minimalisir dengan menggunakan ukuran kunci pada range tetentu, sehingga dari ke empat hasil tesebut, plaintext yang benar adalah plaintext pada block dengan ukuran terkecil. Meskipun demikian faktor keambiguan dari hasil dekripsi kriptografi Rabin tetap tidak dapat dihilangkan, jadi pemilihan kunci pada range tertentu tersebut hanya meminimalisir keambiguan tersebut. Oleh karena itu disediakan fitur manual decrypt yang berfungsi untuk melibatkan interaksi pengguna untuk menentukan message block yang benar yang selanjutnya disusun menjadi plaintext. III. UJI COBA DAN ANALISIS
Gambar 4. Flowchart proses mengirim SMS.
Pengujian fungsionalitas dilakukan untuk mengetahui kesesuaian keluaran dari setiap tahapan atau langkah penggunaan fitur terhadap skenario yang dipersiapkan
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-6 (correctness). Berikut ini penjabaran proses pengujian fungsionalitas terhadap aplikasi yang dirancang. A. Uji Coba Fungsionalitas Key generator Pada uji coba pembangkitan pasanganan kunci dengan menggunakan fitur key generator, dikondisikan pengguna tidak memiliki kombinasi kunci public dan kunci privat yang tersimpan pada database, maka akan muncul notifikasi yang memberitahukan bahwa pengguna tidak memiliki kombinasi pasangan kunci yang tersimpan. Pengguna diminta untuk menekan tombol generate new yang berfungsi untuk menghasilkan kombinasi pasangan kunci publik dan kunci privat. Setelah tombol generate new ditekan oleh pengguna, selanjutnya akan muncul dialog box yang menampilkan kombinasi pasangan kunci publik dan kunci privat dan kombinasi pasangan kunci tersebut akan disimpan pada database setelah pengguna menekan tombol save pada dialog box.
4 B. Uji Coba Fungsionalitas Enkripsi Pada Gambar 7 di bawah ditunjukan dialog box yang menampilkan proses enkripsi telah berhasil dilakukan, dimana pada uji coba kali ini string plaintext yang di enkripsi adalah “Teknik Informatika ITS”. Setelah muncul notifikasi berhasil, selanjutnya plaintext yang terdapat pada field message akan digantikan dengan ciphertext yang diperoleh dari hasil enkripsi tersebut untuk dikirim sebagai pesan SMS kepada penerima.
Gambar 7. Hasil uji coba enkripsi SMS.
C. Uji Coba Fungsionalitas Dekripsi Pada uji coba kali ini, akan dilakukan uji coba untuk fungsionalitas fitur dekripsi SMS yang terdapat pada aplikasi. Terdapat dua metode dekripsi yang dilakukan, yaitu manual decrypt dan auto decrypt. Uji coba dilakukan dengan data yang di tunjukan pada Tabel 1 berikut. Tabel 1. Data uji coba
Gambar 6. Hasil uji coba Key generator.
Pada Gambar 6 di atas ditunjukan fitur key generator berhasil membangkitkan kombinasi pasangan kunci. Dimana kombinasi kunci privat adalah private key 1 dan private key 2, sedangkan kunci publik adalah Public key. Hasil public key dari key generator inilah yang nantinya akan digunakan pada proses enkripsi sehingga dapat disebarluaskan pada orang lain karena tidak bersifat rahasia. Sedangkan private key 1 dan private key 2 harus dirahasiakan, karena digunakan pada proses dekripsi pesan rahasia. Terdapat dua buah tombol, yaitu tombol save yang berfungsi untuk menyimpan kombinasi kunci hasil key generator pada database dan tombol cancel untuk membatalkan. Ketika pengguna menekan tombol save, secara otomatis aplikasi juga akan mengganti kombinasi kunci yang sebelumnya telah tersimpan pada database dengan kombinasi kunci yang terbaru, yang dihasilkan dari key generator.
No
Paintext
1
Selamat ulang tahun kota surabaya
Public key
1794917
Private key
1283
1399
Ciphertext GWsIF8/lFna 9Cf3kC5odE DTCCB7sDj/ bCr5zFeeeC4 UIDj/bDDKr ERtRBxMCG JSvACTB
Fitur auto decrypt adalah fitur yang disediakan untuk menghasilkan hasil dekripsi berupa plaintext yang murni dari hasil dekripsi aplikasi atau tanpa interaksi dengan pengguna selama proses dekripsi. Telah di dijelaskan sebelumnya jika dekripsi pada kriptografi Rabin selalu menghasilkan sebanyak empat hasil dekripsi yang berupa message block dan selanjutnya pengguna harus menentukan sendiri mana diantara keempat hasil dekripsi yang berupa message block tersebut yang merupakan hasil dekripsi yang benar untuk disusun menjadi plaintext yang benar.
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-6
Gambar 8. Hasil uji coba auto decrypt.
Pada Gambar 8 di atas menunjukan hasil dekripsi dengan fitur auto decrypt, pada Gambar tersebut dapat dilihat jika plaintext yang dihasilkan sesuai dengan plaintext yang terdapat pada Tabel 1. Dari uji coba diatas menunjukan jika fitur auto decrypt telah berfungsi sesuai dengan yang diharapkan.
5
Gambar 10. Hasil akhir uji coba manual decrypt.
D. Uji Performa Uji coba performa dilakukan dengan tujuan mengetahui waktu yang dibutuhkan suatu proses tertentu. Setelah mengetahui waktu yang dibutuhkan, dapat dilakukan perbandingan terhadap proses yang memiliki kesamaan tujuan. Sehingga dapat dilakukan perbandingan dari sisi efisiensi waktu. Pada uji coba berikut ini, akan dilakukan perhitungan waktu yang dibutuhkan untuk menyelesaikan proses enkripsi SMS. Pengujian dilakukan dengan melakukannya secara berulang sejumlah 10 kali proses dengan panjang data yang diproses berbeda kemudian dihitung nilai rata-rata dari 10 kali proses tersebut. Berikut Tabel 2 menyajikan tahapan uji coba. Tabel 2. Uji coba performa enkripsi
no 1 2 3 4 5 6 7 8 9 10 Gambar 9. Hasil uji coba manual decrypt.
Pada Gambar 9 di atas ditunjukan beberapa message block yang dihasilkan selama proses manual decrypt, pada gambar tersebut dapat dilihat jika dari setiap proses manual decrypt yang menghasilkan empat message block terdapat satu message block berisi karaketr yang mudah dimengerti dibandingkan dengan tiga message block lainya, sehingga pengguna dapat memilih message block tersebut untuk disusun menjadi plaintext. Setelah proses manual decrypt selesai dijalankan, dalam hal ini pengguna telah menentukan message block yang akan disusun menjadi plaintext, selanjutnya akan ditampilkan dialog box yang berisi plaintext yang dihasilkan pada prose manual decrypt. Hasil akhir dari proses manual decrypt ditunjukan pada Gambar 10 di bawah.
Panjang plaintext
4 11 13 29 37 69 97 112 124 146 Rata-rata
Lama waktu proses 6 14 22 42 65 89 139 187 195 204 96.3
Satuan milidetik milidetik milidetik milidetik milidetik milidetik milidetik milidetik milidetik milidetik milidetik
Pada hasil uji coba enkripsi SMS yang ditunjukan pada Tabel 2 di atas, uji coba dengan menggunakan panjang plaintext yang berbeda, dapat dilihat jika panjang dari plaintext mempengaruhi lama proses enkripsi. Dari hasil uji coba performa enkripsi tersebut diketahui jika rata-rata lama proses enkripsi adalah 96,3 milidetik. Dimana proses enkripsi tercepat pada enkripsi dengan plaintext terpendek dan enkripsi terlama pada enkripsi dengan plaintext terpanjang. Pada uji coba selanjutnya, akan dilakukan perhitungan waktu yang dibutuhkan untuk menyelesaikan proses dekripsi SMS. Pengujian dilakukan dengan melakukannya secara berulang sejumlah 10 kali proses dengan panjang data yang berbeda kemudian dihitung nilai rata-rata dari 10 kali proses
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-6 tersebut. Dikarenakan terdapat dua fitur dekripsi, yaitu auto decrypt dan manual decrypt maka akan dilakukan uji coba terhadap masing-masing fitur dekripsi tersebut. Tabel 3 di bawah menyajikan hasil uji coba performa dekripsi.
no 1 2 3 4 5 6 7 8 9 10
Panjang ciphertext 6 18 22 36 43 74 113 121 129 152
Rata-rata
Tabel 3. Uji coba performa dekripsi
Lama waktu proses
Satuan
Auto 12 24 42 65 77 112 172 197 225 254
Manual 2354 7346 9567 19987 22756 28547 36754 38769 46534 54375
milidetik milidetik milidetik milidetik milidetik milidetik milidetik milidetik milidetik milidetik
118
26698,9
milidetik
6 Kelebihan: 1. Proses enkripsi teknik kriptografi Rabin terbilang sederhana sehingga proses enkripsi membutuhkan waktu yang relatif cepat. 2. Teknik kriptografi Rabin efektif untuk digunakan pada resource yang sederhana dengan processor yang tidak dapat melakukan komputasi yang kompleks dan rumit, seperti perangkat mobile. Kekurangan: 1. Hasil dekripsi dirasa kurang efektif dikarenakan menghasilkan 4 kemungkinan plaintext berbeda yang semuanya diberikan kepada pengguna dan selanjutnya pengguna harus mementukan mana diantara keempat plaintext tersebut yang benar. Namun, pada Aplikasi yang dirancang terdapat fitur auto decrypt yang memudahkan pengguna untuk mendapatkan plaintext dalam waktu yang lebih cepat. UCAPAN TERIMA KASIH
Pada hasil uji coba performa dekripsi yang ditunjukan pada Tabel 3 di atas dapat dilihat jika rata-rata lama proses dekripsi dengan fitur auto decrypt adalah 118 milidetik dan fitur manual decrypt adalah 26698,9 milidetik atau 0.46 menit. Jika dibandingkan dengan rata-rata proses dekripsi antara fitur auto decrypt dan fitur manual decrypt maka terdapat perbedaan lama proses yang sangat besar, hal ini dikarenakan proses pada auto decrypt hanya dipengaruhi oleh panjang ciphertext yang didekripsi, sedangkan pada manual decrypt selain dipengaruhi oleh panjang ciphertext juga dipengaruhi oleh interaksi pengguna untuk menentukan message block yang benar dari semua message block yang dihasilkan selama proses dekripsi, sehingga hal tersebut memerlukan waktu yang lebih banyak daripada waktu yang digunakan pada proses auto decrypt. IV. KESIMPULAN Dari hasil pengamatan selama perancangan, implementasi, dan proses uji coba yang dilakukan, dapat diambil kesimpulan bahwa perangkat lunak yang dibangun telah mampu memenuhi kebutuhan sebagai Aplikasi SMS pada perangkat mobile berbasis Android. Semua fungsionalitas yang dimiliki perangkat lunak dapat berjalan sebagaimana mestinya. Perangkat yang dibangun mampu mengintegrasikan metode kriptografi Rabin dengan fungsionalitas SMS pada perangkat mobile berbasis Android. Fitur enkripsi dan dekripsi pada Aplikasi telah berjalan sebagaimana mestinya, Waktu yang dibutuhkan oleh Aplikasi untuk melakukan enkripsi terhadap isi SMS rata-rata sebesar 96,3 milidetik. Waktu yang dibutuhkan oleh Aplikasi untuk melakukan dekripsi dengan fitur auto decrypt rata-rata sebesar 118 milidetik sedangkan dengan fitur manual decrypt rata-rata sebesar 26698,9 milidetik. Berikut adalah kelebihan dan kekurangan dari kriptografi Rabin.
Segala puji bagi Allah SWT yang senantiasa melancarkan dan memudahkan segala urusan terutama dalam penyelesaian Tugas Akhir ini. Banyak pihak yang secara langsung maupun tidak langsung telah berkontribusi dalam membantu penyelesaian. Kepada bapak M. Husni dan bapak Hudan Studiawan yang senantiasa memberikan bimbingan dan dukungan selama pengerjaan Tugas Akhir ini, penulis ingin menyampaikan penghormatan dan terimakasih yang sebesarbesarnya. DAFTAR PUSTAKA [1].
Firdaus, Rangga. 2010. “Penerapan Enkripsi Pesan Rahasia Untuk Pengiriman SMS Menggunakan Algoritma Arc4 Pada Peralatan Teknologi Mobile”, Bandar lampung: Universitas Lampung. [2]. Munir, Ir. Rinaldi, M.T. Diktat Kuliah IF5054 Kriptografi. Teknik Informatika ITB, 2006. [3]. Adhitama, Gagarin. 2011. “Enkripsi Sederhana SMS (Short Message Service) Menggunakan Vigenere Cipher”, Program Studi Teknik Informatika ITB. [4]. Linda C, Maureen. 2011 “Perbandingan Algoritma Kriptografi Kunci Publik RSA, Rabin dan ElGamal”, Program Studi Teknik Informatika ITB. [5]. Hermawan S, Stephanus. 2011. “Mudah Membuat Aplikasi Android”. Yogyakarta : Andi Offset. [6]. EMS, Tim. 2012. “Panduan Cepat Pemrograman Android”. Jakarta : PT Elex Media Komputindo. [7]. Siregar, Ivan M, S.T., M.T. 2011. Membongkar Source Code Berbagai Aplikasi Android. Yogyakarta : Gava Media. [8]. Munir, Renaldi. 2004. “ Sistem Kriptografi Kunci Publik”, Departemen Teknik Informatika ITB. [9]. Escudero Sanchez, Naiara. 2007. “The Rabin Cryptosystem”. Jerman : University of Paderborn. [10]. Bishop, David. 2003. “Introduction to Cryptography with Java Applets”, USA : Jones and Bartlett Publisher,Inc. [11]. Rădulescu, Mihnea. 2008. “Public-Key Crypthography: The RSA And The Rabin Cryptosystem”, Hungaria : Babes-Bolyai University. [12]. Android Developers. 2010. What is Android?, (online), (http://developer.android.com/guide/basics/what-is-android.html, diakses tanggal 28 April 2011).