PENERAPAN ALGORITMA RC4 UNTUK ENKRIPSI DAN
DEKRIPSI SMS BERBASIS ANDROID
Halim Dermawan ([email protected])
Derry Alamsyah ([email protected])
Jurusan Teknik Informatika
STMIK GI MDP
Abstrak : Pemilik handphone dapat bertukar informasi lewat SMS dengan pemilik handphone lainnya. Akan tetapi, pengguna tidak menyadari apakah informasi yang terkirim tersebut terjaga keamanan dan kerahasiaannya. Tujuan dari penulisan skripsi ini adalah dapat menjaga keamanan penyimpanan informasi SMS dan pengiriman SMS pada sistem operasi Android dengan menerapkan algoritma RC4 untuk mengenkripsi dan mendekripsi SMS. Handphone yang digunakan adalah handphone yang mendukung Android karena aplikasi ini akan di-install terlebih dahulu pada handphone pengguna. Metodologi penelitian yang digunakan penulis adalah metode Rational Unified Process (RUP) yang terdiri dari 4 tahapan yaitu : tahap Inception, Elaboration, Construction, dan Transition.Penerapan RC4 pada proses enkripsi dan dekripsi SMS pada ponsel berbasis Android membantu pengguna dalam menjaga keamanan dan kerahasiaan penyimpanan informasi SMS yang dikirim dan diterima.
Kata Kunci : Algoritma RC4, enkripsi, dekripsi, RUP.
Abstract : Mobile phone owners can exchange information via SMS to other mobile phone owners. However, users are not aware of whether the information sent is held secure and confidential. The purpose of this paper is to maintain the security of information storage and delivery of SMS texting on the Android operating system by implementing a RC4 algorithm to encrypt and decrypt SMS. This research is using mobile phone supported by android because these applications will be installed prior to the user's mobile phone. The research methodology used by the author is Rational Unified Process (RUP), consists of 4 stages: stage Inception, Elaboration, Construction, and Transition. Implementation of the RC4 algorithm using the encryption and decryption process SMS on Android-based phone helps the user in maintaining the security and confidentiality of information storage of SMS sent and received.
Key Word : Algorithme hybrid RC4, encryption, decryption, RUP.
1 PENDAHULUAN
Keamanan merupakan aspek yang sangat penting dalam berkomunikasi dengan menggunakan komputer dan perangkat komunikasi lainnya. Kerahasiaan data atau informasi harus terjaga dari pihak yang tidak berwenang hingga data atau informasi tersebut terkirim kepada penerima yang semestinya. Salah satu alat komunikasi yang saat ini banyak digunakan adalah telepon seluler.
Telepon seluler adalah alat komunikasi yang menyediakan media komunikasi beragam dan salah satunya adalah media SMS (Short Message Service). SMS merupakan suatu layanan untuk
mengirimkan pesan singkat kepada pengguna telepon seluler lainnya dengan cepat dan biaya yang murah. Oleh karena itu layanan ini lebih diminati dan sering digunakan oleh pengguna telepon seluler untuk berkomunikasi.
2 LANDASAN TEORI
2.1 SMS
ke SMS Center (SMSC) dengan prinsip Store and Forward, setelah itu baru dikirimkan ke handphone yang dituju.
Proses pengiriman SMS dapat
dilihat pada dibawah ini.
SMSC
Pengirim
Penerima
Gambar 1 : Skema Cara Kerja SMS
2.2 Algoritma RC4
Algoritma RC4 memiliki dua fase, setup kunci dan pengenkripsian. Setup untuk kunci adalah fase pertama dan yang paling sulit dalam algoritma ini setup Sbit kunci (S merupakan panjang dari kunci), kunci enkripsi digunakan untuk menghasilkan variabel enkripsi yang menggunakan dua buah array, state dan kunci, dan sejumlah-S hasil dari operasi penggabungan. Operasi penggabungan ini terdiri dari pemindahan (swapping) byte, operasi modulo, dan rumus lain. Operasi modulo merupakan proses yang menghasilkan nilai sisa dari satu pembagian. Sebagai contoh, 11 dibagi 4 adalah 2 dengan sisa pembagian 3, begitu juga jika tujuh modulo empat maka akan dihasilkan nilai tiga. Variabel enkripsi dihasikan dari setup kunci dimana kunci akan di XOR-kan dengan plain text untuk menghasilkan teks yang sudah terenkripsi. XOR merupakan operasi logik yang membandingkan dua bit biner. Jika bernilai beda maka akan dihasilkan nilai 1. Jika kedua bit sama maka hasilnya adalah 0. Kemudian penerima pesan akan mendekripnya dngan meng XOR-kan kembali dengan kunci yang sama agar dihasilkan pesan dari plaintext tersebut(Hanriyawan, 2004). cara kerja algoritma RC4 sebagai berikut. Proses Inisalisasi S-Box (Array S), Secara pseudocode langkah ini dapat dituliskan sebagai berikut.
Masukan i dari dengan nilai dari 0 sampai 255 setelah itu nilai i menjadi nilai di dalam S[i], kemudian inisialisikan j dengan 0, kemudian masukan kedalam rumus j menjadi 0 di tambah S[i] yang di
beri nilai tadi antara 0 sampai 255 kemudian panjangan dari sebuah text yang akan di masukan di mod kan dengan 256, kemudian setelah di dapat S[i] di tukar kan dengan nilai S [j] yang di dapat di dalam perhitungan di atas.
Step selanjut nya inisialisasikan kembali i dan j dengan angka 0 kemudian di lakukan perhitungan untuk keluaran yang akan di
hasilkan dengan memasukan variable i dan j ke dalam masing-masing rumus yang telah di sediakan, kemudian di lakukan pertukaran kembali antara S[i] dan S[j] sampai teks yang akan di enkrip selesai, untuk mendapatkan nilai keystream nya masukan kembali nilai s dan j nya didapatkan dari langkah di atas kemudian dimasukkan dalam operasi XOR dengan plaintext yang ada, dengan sebelumnya pesan dipotong-potong terlebih dahulu menjadi byte-byte. Setelah operasi ini dilakukan, langkah satu kembali dilakukan untuk mendapatkan indeks baru dari setiap elemen S. Bagan Alir
Gambar 1 : Bagan Alir Algoritma RC4
Proses Dekripsi RC4
Proses dekripsi merupakan proses mengubah pesan rahasia ciphertext) menjadi pesan asli (plaintext). secara deskriptif algoritma RC4 dapat mengenkrip plainteks dengan cara melakukan operasi
Pada pengembangan rancangan aplikasi enkripsi dan dekripsi SMS menggunakan algoritma RC4 diperlukan dua kebutuhan dalam lingkungan pengembangan sistem, yaitu perangkat lunak (Software) dan perangkat keras (Hardware).
3.2
MetodologiMetodologi yang digunakan dalam perancangan aplikasi enkripsi dan dekripsi data file dengan menggunakan algoritma RC4 adalah RUP (Rational Unified Process). Penulis menggunakan metodologi RUP (Rational Unified Process) yang terbagi dalam empat fase sebagai berikut: a. Inception (Tahap Analisis)
Pada tahap ini, penulis melakukan analisis sistem yang meliputi ruang lingkup, kebutuhan user, analisis pemecahan masalah, serta logika prosedural sistem dengan activity diagram. Analisis kebutuhan user dibagi menjadi dua, yaitu kebutuhan fungsional yang digambarkan melului Use case dan kebutuhan non fungsional. Tahap ini dijelaskann pada bab 1 dan bab 3.
b. Elaboration (Tahap Desain)
Berdasarkan hasil analisis yang diperoleh dari tahap analisis (Inception), maka penulis mulai melakukan perancangan system secara lengkap. Mulai dari merancang tampilan (Interface), package diagram, class diagram, dan sequence diagram. Tahap ini dijelaskan pada bab 3.
c. Construction (Tahap Implementasi) Pada tahap ini, penulis memeriksa kembali hasil dari tahap analisis dan pembuatan perancangan aplikasi pada perangkat keras. Tahap ini dijelaskan pada bab 3 dan bab 4.
d. Transition (Tahap Pengembangan) Pada tahap ini, penulis menyerahkan aplikasi kepada pengguna (user) yang merupakan target dari perancangan aplikasi yang dibuat penulis. Penyerahan dilakukan apabila pengimplementasian telah selesai dilakukan. Kemudian, penulis melakukan uji coba terhadap aplikasi dengan meminta respon dari pengguna (user), tentag aplikasi menggunakan penyebaran kuesioner sebagai media untuk melihat respon dari pengguna (user). Tahap ini dijelaskan pada bab 3 dan bab 4.
3.3 Algoritma RC4
Proses kerja algoritma RC4 adalah sebagai berikut:
1. Langkah pertama adalah sebagai berikut:
a. Inisialsbox s dan k
b. Setelah melakuakn inisial melakukan pengacakan sbox dan di lakukan pertukaran
c. Dilakukan pencarian pseudorandom byte
d. Di lakukan pencarian keystream e. Mengexor kan message dengan
plaintext yang akan di enkrip
3.4 Analisis Kebutuhan
Analisis kebutuhan dilakukan sebelum melakukan tahap desain sistem
Permutasi untuk S - Box
(system design). Pada analisis kebutuhan ini, akan dibahas mengenai analisis kebutuhan kebutuhan fungsional beserta logika prosedural sistem.
Gambar 2 :
Use Case
Implementasi
Algoritma RC4
Tabel 12 :
Glosarium
Use CaseNo Nama Use Case Dekripsi Use Case Use CasePelaku
1 Menulis pesan Use case ini menggambarkan
ketika pengguna menulis pesan. Pengguna
2 Mengirim Pesan Use case ini mengambarkan ketika penguna akan mengirim pesan yang telah di enkripsi
Pengguna
3 Enkripsi pesan Use case ini menggambarkan ketika penggunaingin mengenkripsi suatupesan.
Pengguna
4 Membaca Pesan Use case ini mengambarkan ketika penguna mendapatkan sms yang telah di enkripsi
Sistem
5 Proses Dekripsi Use case ini menggambarkan ketika sistem menampilkan hasil dekrispsi pesan.
Pengguna
4 RANCANGAN SISTEM
4.1 Halaman Utama
Halaman tampilan mengisi no yang dituju, 8 digit kunci, dan isi sms. Tampilannya dapat dilihat pada gambar dibawah ini.
Gambar 3: Tampilan Halaman Utama
4.2 Halaman Menu
Mengisi nomor yang dituju, kunci, dan isi SMS yang ada pada aplikasi. Tampilan halaman menu dapat dilihat pada gambar dibawah ini.
Gambar 4 : Tampilan Halaman Menu
4.3 Halaman Hasil dekripsi
Tampilan enkripsi dan dekripsi. Halaman ini dapat dilihat pada gambar dibawah ini.
Gambar
Gambar 5: Tampilan Halaman enkripsi dan dekripsi
4.4 Evaluasi
Usecase Diagram Enkripsi dan Dekripsi Pesan
Menulis pesan
Mengirim Pesan
Proses Enkrip
Membaca Pesan
Tabel 1: Pengujian Mengunakan Smartphone Berbeda Tetapi Versi Android Sama dan Mengunakan Provider Sama
Jumlah Karakter Dengan Enkripsi Tanpa Enkripsi
Terima (Detik) Kirim (Detik) Terima (Detik) Kirim (Detik)
5 60 110 70 100
20 180 240 230 210
50 230 300 210 260
75 165 240 170 225
100 300 350 262 310
125 410 480 355 500
160 440 690 570 840
Tabel 2 : Pengujian Mengunakan Smartphone Berbeda Tetapi Versi Android Berbeda dan Mengunakan Provider Berbeda
Jumlah Karakter Dengan Enkripsi Tanpa Enkripsi
Terima (Detik) Kirim (Detik) Terima (Detik) Kirim (Detik)
5 90 115 110 120
20 181 244 125 188
50 240 300 180 244
75 180 252 190 225
100 300 325 259 312
125 418 453 345 490
160 460 560 438 585
Tabel 3 : Pengujian Mengunakan Smartphone Sama Tetapi Versi Android Berbeda dan Mengunakan Provider Sama
Jumlah Karakter Dengan Enkripsi Tanpa Enkripsi
5 18 21 30 39
20 20 22 28 40
50 20 24 26 30
75 19 23 23 25
100 36 44 40 49
125 48 50 47 53
160 55 59 62 70
Tabel 4 : Pengujian Mengunakan Smartphone Sama Tetapi Versi Android Berbeda dan Mengunakan Provider Berbeda
Jumlah Karakter Dengan Enkripsi Tanpa Enkripsi
Terima (Detik) Kirim (Detik) Terima (Detik) Kirim (Detik)
5 20 25 32 42
20 22 28 30 43
50 25 28 34 37
75 27 29 33 35
100 36 40 42 44
125 44 55 49 54
160 53 56 60 64
5 PENUTUP
5.1
KesimpulanBerdasarkan hasil pembahasan pada bab-bab sebelumnya dalam
laporan skripsi ini, maka dapat disimpulkan sebagai berikut :
melalui sms agar privasi pengguna lebih terjamin
2. Pada ponsel berbasis Android, pesan dapat diukur kecepatan dan waktu pada saat mengenkripsikan pesan dan dapat memberikan keamanan saat pengiriman pesan. Selanjutnya, pesan dapat didekripsi dengan aplikasi yang sama.
5.2 Saran
Adapun saran-saran yang ingin disampaikan oleh penulis yaitu sebagai berikut :
1. Bagi yang ingin mengembangkan aplikasi ini disarankan agar mengembangkan aplikasi tidak hanya untuk keamanan pesan teks saja melainkan dapat memberikan keamanan image juga.
2. Aplikasi ini hanya dapat memberikan keamanan pesan dalam bentuk teks sehingga penulis berharap dapat dikembangkan untuk keamanan image seperti : png, jpg,dll.
3. Aplikasi ini hanya dapat mengenkripsi dan mendekripsi pesan saja sehingga penulis berharap dapat dikembangkan dengan membuat kotak penyimpanan khusus hasil enkripsi/dekripsi.
DAFTAR PUSTAKA
Ariyus, Dony dan Rum Andri K.R 2008,Komunikasi Data, ANDI, Yogyakarta.
Andri Budiman, Dedy Arisandi & Reza, 20012. Pengamanan file teks mengunakan algoritma Asimetri, Vol 1. No.1.
Arun Kumar, Shefalika Ghosh & Swagat Ranjan, 2012 Increasing Robustness of RC4 Family For Automated Selection of Ciphersuites. Procedia Engineering. Vol 30. No (45-52).
Alfikri, Zakry. F2010, Studi dan Analisis Dua Algoritma Block Chiper : RC4, Program Studi Teknik Informatika ITB, Bandung
Budi Susanto, Ivan Wibowo & Junius Karel, 2009. Penerapan Algoritma Kriptografis Asimetris untuk keamanan data, Jurnal Informatika. Vol 5, No.1.
Cepy Slamet, Dini Destiani & Rodwan Setiawan, 2012. Perancangan sistem pakar. Vol 09. No.1.
Eko Arubiwi, 2008. Aplikasi Pengamanan dokumen dengan algoritma kriptografi kunci asimetris, Vol 2, No.2.