PENERAPAN ALGORITMA RC6 UNTUK PERANCANGAN APLIKASI PENGAMANAN SMS PADA MOBILE DEVICE BERBASIS ANDROID

dokumen-dokumen yang mirip
BAB II LANDASAN TEORI

BAB I PENDAHULUAN. yang beragam dan salah satu di antaranya adalah media SMS (Short Message

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM. telah dijelaskan pada bab sebelumnya. Analisis yang dilakukan bertujuan untuk

BAB III ANALISIS PENYELESAIAN MASALAH

BAB I PENDAHULUAN. yang beragam dan salah satu diantaranya adalah media SMS ( Short Message

BAB 1 PENDAHULUAN Latar Belakang

PERANCANGAN APLIKASI KEAMANAN DATA MENGGUNAKAN ALGORITMA ENKRIPSI RC6 BERBASIS ANDROID

BAB III ANALISA DAN PERANCANGAN. 3.1 Analisa Berikut tahap-tahap awal dalam pembuatan:

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN. dan SMS hingga ponsel cerdas. Ponsel cerdas atau juga dikenal dengan smartphone memiliki

PENERAPAN PROTOCOL DATA UNIT PADA SHORT MESSAGE SERVICE HASIL STUDI MAHASISWA (STUDI KASUS : STMIK BUDI DARMA MEDAN) Abstrak

BAB IV HASIL DAN UJI COBA

STMIK GI MDP. Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2010/2011

BAB III ANALISIS DAN DESAIN SISTEM

BAB I PENDAHULUAN. dari isinya, informasi dapat berupa penting atau tidak penting. Bila dilihat dari sifat

APLIKASI ENKRIPSI SMS (SHORT MESSAGE SERVICE) MENGGUNAKAN ALGORITMA DATA ENCRYPTION STANDARD (DES) BERBASIS ANDROID

BAB IV HASIL DAN UJI COBA

BAB IV HASIL DAN PEMBAHASAN

BAB I PENDAHULUAN. teknologi Short Message Service (SMS). SMS (Short Message Service) atau

BAB IV HASIL DAN UJI COBA

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM. Analisa yang dilakukan bertujuan untuk menentukan solusi dari

BAB I PENDAHULUAN. berkembang pesat pada era ini. Terlebih lagi, banyak aplikasi mobile yang diciptakan, membuat

IMPLEMENTASI PENGAMANAN DATA ENKRIPSI SMS DENGAN ALGORITMA RC4 BERBASIS ANDROID

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN. yang ada pada sistem dimana aplikasi dibangun, meliputi perangkat

BAB III ANALISIS DAN PERANCANGAN

BAB I PENDAHULUAN , 1.1. Latar Belakang

BAB III ANALISIS DAN PERANCANGAN

Penerapan Enkripsi Pesan Rahasia untuk Pengiriman Sms Menggunakan Algoritma Arc4 pada Peralatan Teknologi Mobile

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA MASALAH DAN PERANCANGAN PROGRAM

BAB III ANALISA DAN DESAIN SISTEM

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. multiplayer games, transfer data, vidio streaming dan lain-lain. Berbagai

BAB III ANALISIS KEBUTUHAN DAN PERANCANGAN SISTEM. KriptoSMS akan mengenkripsi pesan yang akan dikirim menjadi ciphertext dan

PERBANDINGAN ALGORITMA

BAB III ANALISA DAN PERANCANGAN

Analisis Keamanan Algoritma Kriptografi RC6

Implementasi Algoritma RC6 Untuk Enkripsi SMS Pada Telepon Selular

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

IMPLEMENTASI ALGORITMA STEGANOGRAFI WHITESPACE DAN ENKRIPSI RC6 UNTUK KEAMANAN PADA TEKS

BAB I PENDAHULUAN. muncul sampai dengan adanya yang disebut smartphone, yang memiliki berbagai fungsi seperti

APLIKASI PENGAMAN ISI LAYANAN PESAN SINGKAT PADA TELEPON SELULER BERBASIS J2ME MENGGUNAKAN ALGORITHMA SIMETRI SKRIPSI. Oleh : MIFTAHUL.

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

SEMINAR TUGAS AKHIR PERIODE JANUARI 2012

Aplikasi Enkripsi Untuk Pengiriman Pesan Rahasia Berbasis Android

BAB IV IMPLEMENTASI, PENGUJIAN, DAN ANALISIS HASIL. Perangkat keras yang digunakan untuk perancangan aplikasi ini adalah : : Intel Pentium Dual core

BAB IV PERANCANGAN. SMSSender. - inter : Interface + run () : void. inbox inboxdate outbox outboxdate sender receiver

BAB IV HASIL DAN UJI COBA

RC4 Stream Cipher. Endang, Vantonny, dan Reza. Departemen Teknik Informatika Institut Teknologi Bandung Jalan Ganesha 10 Bandung 40132


BAB III ANALISIS DAN DESAIN SISTEM

PERANCANGAN ENKRIPSI DAN DESKRIPSI DENGAN METODE ALPHA-QWERTY REVERSE PADA APLIKASI SHORT MESSAGE SERVICE BERBASIS ANDROID

VISUALISASI ALGORITMA CHIPER BLOCK CHAINING SEBAGAI MEDIA PEMBELAJARAN BERBASIS MOBILE ANDROID

BAB I PENDAHULUAN. keamanan, kerahasiaan, dan keotentikan data. Oleh karena itu diperlukan suatu

Oleh: Benfano Soewito Faculty member Graduate Program Universitas Bina Nusantara

Penerapan Mode Blok Cipher CFB pada Yahoo Messenger

APLIKASI SECURE MESSAGE MENGGUNAKAN ALGORITMA CR6 BERBASIS ANDROID

BAB III ANALISA DAN DESAIN SISTEM

BAB IV. dilakukan dari sistem yang telah selesai dirancang dan dapat digunakan. Hasil sistem yang dibuat

PERANCANGAN APLIKASI PENGAMANAN INFORMASI TEKS DENGAN MENGGUNAKAN ALGORITMA KRIPTOGRAFI ALPHA-QWERTY REVERSE

Penggabungan Algoritma Kriptografi Simetris dan Kriptografi Asimetris untuk Pengamanan Pesan

BAB I PENDAHULUAN. Perkembangan teknologi informasi yang semakin pesat. dapat dirasakan hampir di setiap bidang kehidupan. Salah

KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN UNIVERSITAS BRAWIJAYA FAKULTAS TEKNIK JURUSAN TEKNIK ELEKTRO

Implementasi Algoritma Blowfish dalam Layanan Pesan Singkat pada Platform Android

Bab I Pendahuluan 1 BAB I PENDAHULUAN

BAB I PENDAHULUAN 1.1. Latar Belakang

Bab 1 PENDAHULUAN Latar Belakang

APLIKASI JAVA KRIPTOGRAFI MENGGUNAKAN ALGORITMA VIGENERE. Abstract

BAB I PENDAHULUAN. melalui ringkasan pemahaman penyusun terhadap persoalan yang dibahas. Hal-hal

TINJAUAN PUSTAKA. Kriptografi

ALGORITMA ELGAMAL UNTUK KEAMANAN APLIKASI


Security Chatting Berbasis Desktop dengan Enkripsi Caesar Cipher Key Random

BAB I PENDAHULUAN 1.1 Latar Belakang

Aplikasi Enkripsi Short Message Service (SMS) Berbasis Android Menggunakan Metode XXTEA

BAB 2 TINJAUAN PUSTAKA

APLIKASI SHORT MESSAGE SERVICE DENGAN ENKRIPSI TEKS MENGGUNAKAN ALGORITMA ADVANCED ENCRYPTION STANDARD BERBASIS MOBILE PADA PLATFORM ANDROID

BAB III ANALISA MASALAH DAN PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB I PENDAHULUAN. Kerahasiaan dan keamanan saat melakukan pertukaran. data adalah hal yang sangat penting dalam komunikasi data,

BAB I PENDAHULUAN. 1. aa

BAB I PENDAHULUAN. dengan munculnya berbagai sistem operasi yang lengkap layaknya komputer,

Teknik Konversi Berbagai Jenis Arsip ke Dalam bentuk Teks Terenkripsi

BAB III ANALISIS DAN DESAIN SISTEM

BAB IV HASIL DAN PEMBAHASAN

BAB II TINJAUAN PUSTAKA

BAB 1 PENDAHULUAN. khususnya internet sangatlah cepat dan telah menjadi salah satu kebutuhan dari

APLIKASI MOBILE-CHATTING MENGGUNAKAN FASILITAS BLUETOOTH DENGAN J2ME

BAB III ANALISIS DAN PERANCANGAN

Bab 2 Tinjauan Pustaka 2.1 Penelitian Terdahulu

KEAMANAN DATA DENGAN MENGGUNAKAN ALGORITMA RIVEST CODE 4 (RC4) DAN STEGANOGRAFI PADA CITRA DIGITAL

Menggunakan Algoritma Kriptografi Blowfish

BAB III ANALISA DAN DESAIN SISTEM

BAB IV PENGUJIAN DAN ANALISA

BAB III PERANCANGAN DAN PEMBUATAN

PENGAMANAN SQLITE DATABASE MENGGUNAKAN KRIPTOGRAFI ELGAMAL

BAB 3. ANALISA SISTEM

BAB 1 PENDAHULUAN. Jaringan selular adalah sebuah komponen yang sangat penting dalam

Transkripsi:

PENERAPAN ALGORITMA RC6 UNTUK PERANCANGAN APLIKASI PENGAMANAN SMS PADA MOBILE DEVICE BERBASIS ANDROID Yusfrizal 1 1,2 Program Studi Teknik Informatika, Fakultas Teknik dan Ilmu Komputer, Universitas Potensi Utama 3 Universitas Potensi Utama, Jl. K.L.Yos Sudarso Km.6,5 No.3-A Medan (20241) 1 yusfrizal@ymail.com Abstrak Telepon selular ( mobile device) merupakan alat komunikasi yang sudah dipakai oleh sebagian besar orang di dunia. Telepon selular menyediakan media komunikasi yang beragam dan salah satu di antaranya adalah media SMS (Short Message Service). Layanan pengiriman pesan singkat ini sangatlah standar dan tidak jarang para pengguna telepon selular menggunakan layanan SMS ini untuk mengirimkan suatu pesan yang penting dan rahasia, namun para pengguna layanan SMS tersebut sering kali tidak mengetahui bahwa jalur komunikasi SMS memiliki banyak sekali celah yang memungkinkan untuk terjadinya serangan pada pesan teks yang dikirim. Dengan majunya kemajuan teknologi telepon selular, di mana banyaknya bermunculan telepon selular yang memiliki memori yang cukup besar, memungkinkan untuk melakukan implementasi enkripsi pada SMS menjadi memungkinkan. Oleh karena dalam melakukan implementasi algoritma kriptografi, algoritma tersebut diharapkan kuat namun tidak terlalu rumit. Salah satu algoritma yang dapat digunakan adalah algoritma RC6, algoritma ini cukup diakui kesederhanaannya dan kesesuaiannya untuk diimplementasikan pada prosesor dengan arsitektur ARM yang banyak dipakai pada telepon selular (mobile device) berbasis android. Kata kunci : SMS, mobile device, android, algoritma RC6 1. Pendahuluan Telepon selular merupakan alat komunikasi yang sudah dipakai oleh sebagian besar orang di dunia. Telepon selular menyediakan media komunikasi yang beragam dan salah satu di antaranya adalah media SMS (Short Message Service). SMS merupakan suatu layanan yang memungkinkan pengguna telepon selular untuk mengirimkan pesan singkat kepada pengguna telepon selular lainnya dengan cepat dan dengan biaya yang kecil. SMS bekerja pada sistem nirkabel. Sistem nirkabel yang paling populer di dunia adalah GSM (Global System for Mobile Communication). Layanan pengiriman pesan singkat ini sangatlah standar dan tidak jarang para pengguna telepon selular menggunakan layanan SMS ini untuk mengirimkan suatu pesan yang penting dan rahasia, namun para pengguna layanan SMS tersebut sering kali tidak mengetahui bahwa jalur komunikasi SMS memiliki banyak sekali celah yang memungkinkan untuk terjadinya serangan pada pesan teks yang dikirim. Kelebihan dari SMS ini adalah ketika tujuan sedang sibuk, pesan tetap dapat dikirimkan dengan menyimpan pesan tersebut pada SMSC (Short Message Service Center) dan akan mengirimkan ketika tujuan sudah tidak sibuk. Namun, kelebihan ini juga menjadikan celah yang sangat vital pada SMS, dengan tersimpannya pesan pada SMSC, maka penyerang dapat mendapatkan pesan dengan melakukan penyusupan pada SMSC tersebut. Selain itu serangan juga dapat terjadi pada perangkat mobile pengirim dan dengan penyadapan frekuensi radio. Untuk mengurangi resiko yang ditimbulkan dari celah-celah yang terdapat pada layanan SMS tersebut salah satu cara penanggulangannya adalah dengan menerapkan suatu algoritma kriptografi pada pesan yang dikirimkan. Dengan terenkripsinya pesan yang dikirim maka seseorang yang berhasil mencuri informasi pesan teks yang dikirim tersebut akan kesulitan untuk mengetahui isi dari pesan tersebut. Dengan majunya kemajuan teknologi telepon selular, di mana banyaknya bermunculan telepon selular yang memiliki memori yang cukup besar, memungkinkan untuk melakukan implementasi enkripsi pada SMS menjadi memungkinkan. Telepon selular pada umumnya tidak memiliki prosesor cepat seperti layaknya PC, oleh karena dalam melakukan implementasi algoritma kriptografi, algoritma tersebut diharapkan kuat namun tidak terlalu rumit. Algoritma RC6 yang dirancang oleh Ronald L. Rivest, M.J.B. 518

Robshaw, R. Sidney, dan Y.L. Yin merupakan salah satu algoritma yang menjadi finalis kandidat untuk menjadi AES. Algoritma ini cukup diakui kesederhanaannya dan kesesuaiannya untuk diimplementasikan pada prosesor dengan arsitektur ARM yang banyak dipakai pada telepon selular dibandingkan dengan finalis yang lainnya pada saat itu. Oleh karena itu, penulis mengusulkan sebuah aplikasi pengamanan SMS menggunakan algoritma RC6 pada mobile device berbasis android. 2. Short Message Service (SMS) Short Message Service (SMS) merupakan sebuah layanan yang banyak diaplikasikan pada sistem komunikasi tanpa kabel, memungkinkan dilakukannya pengiriman pesan dalam bentuk teks. SMS didukung oleh GSM (Global System For Mobile Communication), TDMA (Time Division Multiple Access), CDMA (Code Division Multiple Access) yang berbasis pada telepon seluler yang saat ini banyak digunakan. [1] SMS merupakan suatu fasilitas untuk mengirim dan menerima suatu pesan singkat berupa teks melalui perangkat komunikasi telepon selular. Pada proses pengiriman SMS, SMS tersebut tidak langsung dikirimkan dari mobile phone pengirim ke mobile phone tujuan, akan tetapi terlebih dahulu dikirim ke Short Message Service Center (SMSC), kemudian dengan system store and forward SMS tersebut dikirimkan ke mobile phone tujuan. [2] Secara umum sebuah telepon selular hanya dapat melakukan pengiriman satu buah paket SMS dalam satu pesan, namun dengan kemajuan teknologi yang ada sekarang, beberapa telepon selular mampu mengirimkan beberapa paket SMS dalam satu pesan. Yang dilakukan telepon selular agar dapat melakukan pengiriman beberapa paket dalam satu kali pengiriman pesan adalah melakukan konkatinasi, jadi sebenarnya hal yang dilakukan sama dengan mengirimkan beberapa pesan hanya saja dengan melakukan konkatinasi, beberapa pesan yang disatukan tersebut dapat terlihat menjadi satu buah pesan. Dengan adanya fitur konkatinasi, sebuah SMS seolah-olah dapat mengirim pesan dengan panjang lebih dari 160 karakter (7 bit karakter) dalam satu buah pesan, namun pada fitur konkatinasi ini dibutuhkan sebuah informasi tambahan pada pesan untuk menyambungkan beberapa pesan menjadi satu buah pesan, oleh karena itu panjang satu buah pesan akan menjadi lebih kecil. Pada sebuah aplikasi penerimaan SMS pada telepon selular dikenal nomor port, nomor port ini digunakan sebagai pengenal apabila terdapat dua buah atau lebih aplikasi penerimaan SMS pada sebuah telepon selular. Aplikasi penerimaan SMS tersebut akan menunggu pesan yang ditujukan pada nomor port tersebut. Untuk mengirimkan pesan pada port yang spesifik, pengirim harus menyertakan nomor port pada pesan yang dikirimkannya. Jika pengirim tidak menyertakan nomor port, seperti halnya yang dilakukan oleh aplikasi standar setiap telepon selular, maka pesan akan ditujukan ke aplikasi standar yang dimiliki oleh telepon selular atau aplikasi yang memiliki nomor port 0. Informasi nomor port tersebut dibawa bersama paket pesan yang dikirimkan oleh pengirim, oleh karena itu jika pengirim menyertakan informasi nomor port tujuan, maka panjang maksimal pesan yang dapat dikirimkan akan berkurang karena sebagian terpakai oleh informasi nomor port. 3. Kriptografi Keamanan data adalah suatu hal yang sangat penting dan harus diperhatikan jika kita akan melakukan pengiriman data dari satu pihak ke pihak lainnya. Hal tersebut dilakukan karena mungkin saja data yang dikirimkan tersebut dicuri oleh pihak lain sebelum data tersebut sampai ke pihak yang dituju, ataupun salah kirim secara tidak sengaja ke tujuan yang salah. Oleh sebab itu, data harus diamankan terlebih dahulu sebelum dikirimkan agar data terlindungi dari pihak yang tidak memiliki izin untuk membaca dan mengetahui isi dari data yang dikirimkan tersebut. Salah satu teknik pengamanan data yang umum dilakukan adalah pengamanan dengan cara mengubah data asli ke dalam bentuk yang tidak terbaca dengan menggunakan seperangkat aturan tertentu yang hanya diketahui oleh pihak pengirim dan penerima, sehingga pihak lain yang tidak berhak atas data tersebut akan menemui kesulitan untuk mengetahui isi dari data yang sudah diamankan tersebut. [3] Dalam kriptografi suatu pesan yang akan dirahasiakan akan disandikan dengan menggunakan suatu algoritma. Pesan yang telah disandikan disebut plaintext dan pesan yang sudah diacak atau disandikan disebut ciphertext. Proses untuk mengkonversi plaintext menjadi ciphertext disebut enkripsi (encrypt) dan proses untuk mengembalikan plaintext dari ciphertext disebut dekripsi (decrypt). Dengan diagram blok, proses enkripsi dan dekripsi dapat digambarkan pada Gambar 1 berikut : [4] Gambar 1. Diagram Blok Proses Enkripsi dan Dekripsi Pada operasi enkripsi dan dekripsi dibutuhkan suatu kunci yang gunanya untuk 519

menjaga kerahasiaan cara kerja dari algoritma enkripsi dan dekripsi. Algoritma enkripsi yang didasarkan pada kunci digolongkan menjadi dua bagian : a. Algoritma Simetrik (Symmetric Algorithms), dimana kunci yang dipakai untuk proses enkripsi maupun proses dekripsi sama. Algoritma ini dapat disebut juga secret-key algorithms atau one-key algorithms. b. Algoritma Asimetrik (Asymmetric Algorithms), dimana menggunakan kunci yang berbeda yaitu kunci publik (public key) untuk melakukan proses enkripsi dan kunci pribadi (private key) untuk melakukan proses dekripsi. [4] 4. Mobile Device Mobile Device merupakan piranti yang berfungsi sebagai alat bantu (tool) bagi pengguna untuk meminta informasi. Hasil dari informasi yang diminta dapat berupa teks, suara, gambar dan lain sebagainya. Piranti mobile yang dapat digunakan bisa berupa PDA, smartphone, laptop. Selain itu, piranti mobile dapat juga berfungsi sebagai alat navigasi di kendaraan seperti halnya alat navigasi berbasis GPS. Informasi yang diinginkan dapat dicari melalui fasilitas untuk mengakses internet seperti GPRS atau wireless. Pada umumnya perangkat mobile atau Mobile Device lebih praktis karena bersifat mudah dibawa (portable) dari pada perangkat teknologi lainnya. Meningkatnya pemakaian piranti mobile (Mobile Device) telah merevolusi kegiatankegiatan yang bersifat tradisional menjadi lebih sederhana dan mudah dengan penggunaan perangkat mobile. Mobilitas yang tinggi tidak menjadi penghalang lagi, karena saat ini piranti mobile sudah dapat mengakses server di pusat data. Piranti mobile sekarang tidak hanya berfungsi sebagai pencatat jadwal dan buku alamat. Fungsi piranti mobile sudah berkembang pesat dan idealnya siap mengganti dokumen berbasis kertas. 5. Algoritma RC6 Algoritma enkripsi RC6 adalah suatu algoritma yang menggunakan kunci private, mampu bekerja dengan panjang kunci yang beragam dan mengunakan prinsip intered chiper. Algoritma RC6 merupakan salah satu kandidat Advanced Encryption Standard (AES) yang diajukan oleh RSA Security Laboratories kepada NIST. Dirancang oleh Ronald L Rivest, M.J.B. Robshaw, R. Sidney dan Y.L. Yin, algoritma ini merupakan pengembangan dari algoritma sebelumnya yaitu RC5 dan telah memenuhi semua kriteria yang diajukan oleh NIST. RC6 adalah algoritma yang menggunakan ukuran blok hingga 128 bit, dengan ukuran kunci yang digunakan bervariasi antara 128, 192 dan 256 bit. Algoritma RC6 dilengkapi dengan beberapa parameter, sehingga dituliskan sebagai RC6-w/r/b. Parameter w merupakan ukuran kata dalam satuan bit, parameter r merupakan bilangan bukan negatif yang menunjukan banyaknya iterasi selama proses enkripsi dan parameter b menunjukan ukuran kunci enkripsi dalam byte. Setelah algoritma ini masuk dalam kandidat AES, maka ditetapkan bahwa nilai w = 32, r = 20 dan b bervariasi antara 16, 24 dan 32 byte. [5] 5.1. Pembentukan Kunci Internal Untuk membangkitkan urutan kunci internal yang akan digunakan selama proses enkripsi, algoritma RC6 melakukan proses pembangunan kunci yang identik dengan algoritma RC5, yang membedakan hanyalah pada algoritma RC6, jumlah word yang diambil dari kunci yang dimasukan oleh pengguna ketika melakukan enkripsi ataupun dekripsi lebih banyak. Tujuan dari proses pembangunan kunci tersebut adalah untuk membangun suatu array S yang berukuran 2r+4 dari kunci masukan pengguna sepanjang b bytes (0 b 255), array tersebut akan digunakan baik dalam proses enkripsi maupun dekripsi. Proses untuk membangun kunci-kunci internal menggunakan dua buah konstanta yang disebut dengan magic constant. Dua buah magic constant Pw dan Qw tersebut didefinisikan sebagai berikut : Pw= Odd((e-2)2 w )........ (1) Qw= Odd(( -1)2w)......(2) Di mana : e = 2.7182818284859 (basis dari logaritma natural) =1.618022988749 (golden ratio) Odd (x) adalah integer ganjil terdekat dari x, jika x genap maka diambil integer ganjil setelah x. Berikut adalah daftar magic constant pada beberapa panjang blok dalam heksadesimal : P16 = b7e1 Q16 = 9e37 P32 = b7e15163 Q32 = 9e3779b9 P64 = b7e151628aed2a6b Q64 = 9e3779b97f4a7c15 Kunci yang dihasilkan oleh proses pembentukan kunci ini memiliki sifat satu arah, sehingga proses pembentukan kunci ini dapat digunakan sebagai fungsi hash satu arah. Dengan sifat satu arah tersebut, maka kunci internal akan sangat berbeda dengan kunci yang dimasukkan oleh pengguna, hal ini akan membuat hubungan statistik antara kunci yang dimasukan oleh pengguna dengan plaintext dan ciphertext menjadi 520

lebih rumit karena dalam melakukan enkripsi, kunci yang dipakai adalah kunci internal. Pada pembentukan kunci internal digunakan iterasi yang cukup banyak baik pada tahap satu, di mana untuk melakukan ekspansi kunci dibutuhkan iterasi, dan pada tahap dua, dimana dibutuhkan iterasi untuk melakukan inisialisai array serta pada tahap terakhir yang dibutuhkan untuk menggabungkan dua buah array, yang bahkan dilakukan selama tiga kali. Iterasi-iterasi ini membutuhkan waktu yang cukup besar untuk dilakukan. 5.2. Proses Enkripsi dan Dekripsi Algoritma RC6 bekerja dengan empat buah register A,B,C,D yang masing-masing berukuran w-bit, register-register tersebut akan diisi oleh plainteks yang kemudian akan digunakan selama proses enkripsi dan setelah proses enkripsi berakhir isi dari register-register tersebut merupakan cipherteks. Byte pertama dari plainteks atau cipherteks akan disimpan pada least significant byte dari A dan byte terakhir dari plainteks atau cipherteks disimpan pada most significant byte dari D. Proses enkripsi dan dekripsi algoritma RC6 menggunakan enam buah operasi dasar : a. a + b = penjumlahan integer modulo 2w b. a - b = pengurangan integer modulo 2w c. a b = operasi bitwise exclusive-or sebesar w-bit words d. a * b = perkalian integer modulo 2w e. a<<<b = rotasi sejumlah w-bit word ke kiri sebanyak jumlah yang diberikan oleh least sifnificant lg w bit dari b f. a>>>b = rotasi sejumlah w-bit word ke kanan sebanyak jumlah yang diberikan oleh least sifnificant lg w bit dari b. Langkah-langkah enkripsi algoritma RC6 secara detil adalah sebagai berikut : a. Blok plainteks dibagi menjadi 4 bagian A, B, C dan D yang masing-masing memiliki panjang w bit atau panjang blok dibagi 4. Kemudian B dan D dijumlahkan (dalam modulo 2w) dengan kunci internal S[0] dan S[1]. b. Selanjutnya pada setiap putaran dari 1 sampai r, lakukan XOR dan pergeseran ke kiri terhadap A dengan f(x) yang di geser ke kiri sebanyak lg w, di mana f(x) = x* (2x+1) dan x = B. Setelah itu melakukan penjumlahan (dalam modulo 2w) dengan kunci internal. Hal serupa dilakukan pula terhadap C dengan x = D. Kemudian melakukan swapping A B, B C, C D dan D A c. Setelah iterasi selesai langkah terakhir adalah melakukan penjumlahan (dalam modulo 2 w ) terhadap A dan C dengan dua kunci internal terakhir. Setelah semua selesai blok yang terbagi menjadi 4 bagian disatukan kembali. Algoritma RC6 termasuk kedalam iterated cipher, kekuatan utama algoritma ini terletak pada iterasi yang dilakukannya. Dengan dilakukannya iterasi yang berulang ulang dengan menggunakan kunci yang berbeda-beda, maka prinsip confusion dan diffusion dilakukan secara berulang-ulang pula, sehingga keamanan akan semakin baik. Serangan yang paling baik untuk memecahkan algoritma RC6 adalah serangan dengan menggunakan exhaustive search yang ditujukan kepada kunci yang dimasukkan oleh pengguna atau kunci internal. Untuk serangan yang lebih rumit seperti kriptanalisis differensial dan linier, dapat digunakan untuk memecahkan algoritma RC6 yang menggunakan jumlah rotasi yang kecil, untuk jumlah rotasi 20 ke atas, serangan ini tidak dapat bekerja dengan baik karena sulitnya menemukan karakteristik iteratif yang baik atau perkiraan linier. 6. Perancangan Masalah utama dari penelitian ini adalah melakukan implementasi algoritma RC6 untuk melakukan enkripsi SMS pada telepon selular. Agar pesan dapat dikirimkan dengan baik, dalam melakukan enkripsi, yang dienkripsi hanya bagian message body saja karena jika bagian dari message header dienkripsi, maka pesan tidak akan disampaikan dengan baik. Sebagai contoh, salah satu bagian dari message header adalah nomor tujuan, apabila nomor tujuan ini dienkripsi, maka nomor dapat menjadi tidak dikenali atau berubah menjadi nomor lain sehingga pesan tidak dapat dikirimkan atau salah mengirimkan. 6.1. Analisis Penerapan Enkripsi SMS Algoritma RC6 merupakan algoritma yang sederhana, fungsi yang digunakan merupakan fungsi yang sederhana dan hanya mengandalkan prinsip iterated cipher untuk keamanan. Sehingga, dalam implementasi untuk melakukan enkripsi SMS pada telepon selular tidak diperlukan adanya penanganan khusus dalam melakukan implementasi algoritma, yang perlu diperhatikan dalam melakukan implementasi algoritma RC6 untuk enkripsi SMS pada telepon selular adalah menghindari pemakaian memory yang berlebihan dan melakukan penyesuaian aplikasi SMS terhadap algoritma RC6. Aplikasi yang akan dibangun merupakan aplikasi pengiriman dan penerimaan pesan yang berdiri sendiri. Hal tersebut berdasarkan pertimbangan dimana aplikasi SMS standar tiap jenis telepon selular tidaklah sama, panjang sebuah karakter dapat beragam dan kemampuan 521

untuk melakukan konkatinasi tidak dimiliki oleh semua jenis telepon selular dan juga tidak semua aplikasi pengiriman SMS mengirimkan pesan dalam bentuk binary. Tampilan hasil enkripsi dan data hasil enkripsi yang diterima harus diperhatikan, hal ini dikarenakan pada data hasil enkripsi, setiap karakternya akan memiliki panjang 8 bit, sedangkan sebagian telepon selular hanya dapat menampilkan karakter dengan panjang 7 bit. Untuk 128 karakter pertama pada karakter ASCII dengan panjang 8 bit yang jarak karakternya direpresentasikan oleh bit-bit 00000000 sampai 01111111 akan dapat ditampilkan oleh telepon selular karena bit MSB yang bernilai 0 tidak akan dibaca, namun apabila bit MSB tersebut bernilai 1, maka jika dipaksa untuk ditampilkan sebagai karakter oleh telepon selular, akan ditampilkan sebagai karakter dalam format ucs2 atau unicode yang memiliki panjang 16 bit atau menjadi bernilai 2 byte. hal ini akan sangat merugikan jika diimplementasikan untuk SMS. Dengan pertimbangan tersebut, dalam implementasi yang akan dilakukan, jika sebuah pesan telah terenkripsi, maka, dalam pengiriman pesan, pesan yang dikirim berupa pesan binary yang terdiri dari byte-byte hasil enkripsi. 6.2. Analisis Spesifikasi dan Kebutuhan Perangkat Lunak Perangkat lunak yang akan dibangun memiliki dua buah fitur utama, yaitu: a. Melakukan enkripsi SMS pada telepon selular dengan algoritma RC6. Pada perangkat lunak yang akan dibangun, pengguna harus dapat melakukan pembuatan SMS yang kemudian dapat dienkripsi dan pesan SMS yang telah terenkripsi tersebut harus dapat dikirimkan ke tujuan dengan baik oleh perangkat lunak yang akan dibangun. b. Melakukan dekripsi dari SMS terenkripsi yang diterima oleh telepon selular dengan algoritma RC6. Perangkat lunak harus dapat menerima pesan yang telah terenkripsi dan perangkat lunak juga harus dapat mendekripsi dengan baik pesan yang telah terenkripsi tersebut, jika kunci yang dimasukan benar. Agar kedua fitur utama tersebut dapat dipenuhi dan pengguna dapat menggunakan sistem dengan mudah, maka perangkat lunak yang akan dibangun memiliki beberapa kebutuhan yang harus tersedia pada perangkat lunak tersebut, kebutuhan fungsional perangkat lunak tersebut, yaitu: a. Sistem memiliki kemampuan untuk dapat melakukan pengiriman pesan yang berbentuk binary. b. Sistem dapat melakukan enkripsi SMS dengan menggunakan algoritma RC6. c. Sistem harus dapat melakukan penyimpanan pesan. d. Dalam melakukan penyimpanan pesan, pesan yang akan / sudah terkirim dengan pesan yang diterima harus dapat dibedakan. e. Sistem harus dapat menerima pesan.untuk dapat menerima pesan ini, system harus dapat berjalan terus dan dapat memberikan pemberitahuan jika pesan datang. f. Sistem harus mampu melakukan dekripsi. Pesan yang telah terenkripsi harus dapat dikembalikan menjadi pesan semula jika masukkan kunci dari pengguna benar. g. Sistem memiliki fasilitas untuk melakukan pemilihan properti algoritma RC6. Selain kebutuhan fungsional di atas, aplikasi yang akan dibangun harus dapat memenuhi beberapa kebutuhan non-fungsional yang dapat membantu pengguna dalam menggunakan aplikasi dan juga dapat memudahkan dalam pengembangan lebih lanjut. Kebutuhan nonfungsional itu antara lain: a. Sistem akan memiliki antar muka yang menarik dan juga mudah untuk dimengerti. b. Sistem akan memiliki menu bantuan agar memudahkan dalam penggunaan. c. Sistem mudah untuk dikembangkan lebih lanjut. Untuk memenuhi hal ini, sistem sebaiknya dibangun dengan konsep pemrograman berorientasi objek, dengan rancangan kelas yang baik. 6.2. Flowchart Flowchart atau diagram alir adalah sekumpulan simbol-simbol atau skema yang menunjukkan atau menggambarkan rangkaian kegiatan-kegiatan program dari mulai awal hingga akhir. Adapun flowchart dari aplikasi enkripsi dengan menggunakan algoritma RC6 yang diterapkan untuk enkripsi SMS adalah : 522

a. Flowchart Menu Utama Gambar 2. Flowchart Menu Utama b. Flowchart Kirim Pesan Dalam proses pembuatan aplikasi ini penulis menggunakan software Eclipse Galileo. Aplikasi ini diberi nama PengamananSMS, menghasilkan file yaitu RC6SMS.apk. Pembuatan program java dibuat melalui Eclipse, yang kemudian disimulasikan dengan menggunakan Eclipse Galileo. Eclipse Galileo berfungsi sebagai bahasa pemograman android project sekaligus emulator android yang terinstal pada PC untuk menguji coba hasil running dari program java yang telah dibuat. Melalui program ini dari folder bin diambil file.apk yang diaplikasikan ke dalam android. Untuk dapat menjalan aplikasi ini pada handphone, user hanya perlu mentransfer file.apk aplikasi ini melalui bluetooth atau kabel data ke dalam memory handphone. Setelah itu install aplikasi ke dalam handphone dan aplikasi siap untuk dijalankan. 7.1. Tampilan Awal Aplikasi Pada menu ini terdapat lima tombol yang memiliki fungsi masing-masing yaitu, tombol Tulis pesan berfungsi untuk menuju activity tulis pesan. Tombol kotak masuk berfungsi menuju activity Inbox. Tombol bantuan berfungsi menuju activity Bantuan. Sedangkan tombol About berfungsi menuju activity About dan tombol Pengaturan Keamanan berfungsi menuju activity Pengaturan Keamanan.Tampilanya adalah pada Gmabar 4 : Gambar 3. Flowchart Kirim Pesan c. Flowchart Baca Pesan Gambar 4. Tampilan Awal Aplikasi Gambar 3. Flowchart Baca Pesan 7. Implementasi 7.2. Tampilan Menu Tulis Pesan Pada tab Tulis Pesan ini pengguna diharapkan untuk memasukan nomor tujuan, pesan yang ingin disampaikan, memasukan kunci pesan, menekan tombol enkripsi kemudian bisa akan muncul hasil enkripsi kemudian setelah muncul hasil enkripsi pengguna dapat menekan tombol kirim. Tampilan Tulis Pesan seperti Gambar 6 berikut : Implementasi dilakukan pada membuat sebuah aplikasi bergerak (mobile application) dengan memanfaatkan Java Android Project. 523

Gambar 5. Tampilan Menu Tulis Pesan Program aplikasi Pengamanan SMS ini baik digunakan untuk mengamankan SMS yang penting sehingga tidak dapat dibaca oeh pihak yang tidak diinginkan. Aplikasi ini cukup mudah untuk digunakan oleh orang awam sekalipun karena berisi perintah - perintah yang sederhana dan mudah penginstalannya. Aplikasi ini masih membutuhkan pengembangan agar aplikasi ini tampil lebih menarik lagi. 8. Kesimpulan Dari pembahasan yang dilakukan diperoleh kesimpulan sebagai berikut: e. Penerapan algoritma kunci private untuk enkripsi SMS pada telepon selular dapat meningkatkan keamanan pada pesan yang dikirim. Pesan yang terenkripsi tidak akan dapat dibaca jika tidak didekripsi dengan menggunakan kunci yang benar, sehingga orang yang tidak mengetahui kunci yang sebenenarnya tidak dapat membaca pesan yang dikirimkan. f. Algoritma RC6 dapat diimplementasikan dengan baik untuk melakukan enkripsi SMS yang bekerja pada jaringan GSM. g. Kekurangan dari implementasi algoritma RC6 untuk enkripsi SMS adalah pesan yang dikirimkan menjadi lebih besar karena harus bekerja pada 8 bit dan dibutuhkan padding untuk memenuhi panjang blok. h. Semakin besar jumlah rotasi pada algoritma RC6, maka tingkat keamanan akan semakin baik, namun waktu yang diperlukan untuk melakukan enkripsi dan dekripsi akan semakin besar. i. Program aplikasi ini hanya bisa dijalankan pada handphone yang memiliki fitur Java. j. Aplikasi ini hanya bisa dijalankan pada handphone tujuan yang juga sudah terinstal aplikasi dengan versi sama. k. Aplikasi game ini hanya bisa dijalankan pada mobile device yang memiliki sistem operasi Symbian. Daftar Pustaka: [1] Yudi Wiharto, 2011, Sistem Informasi Akademik Berbasis SMS Gateway, Jurnal Teknologi dan Informatika (Teknomatika), Palembang. [2] Evi Mariani Harahap, 2012, Impelementasi Kompresi Teks Menggunakan Metode Huffman untuk MenghematKarakter pada Short Message Service, Universitas Sumatera Utara, Medan. [3] Hartono, 2010, Aplikasi Pengamanan Data Menggunakan Metode Skipjack, STMIK IBBI, Medan. [4] Semuil Tjiharjadi, 2009, Pengamanan Data Menggunakan Metoda Enkripsi Einstein, Seminar Nasional Informatika 2009 (semnasif 2009), Bandung. [5] Defni, 2014, Enkripsi SMS (Short Message Service) Pada Telepon Selular Berbasis Android Dengan Metode RC6, Jurnal Momentum, Politeknik Negeri Padang, Padang. 524