• Tidak ada hasil yang ditemukan

PERANCANGAN APLIKASI KEAMANAN DATA EMAIL MENGGUNAKAN ALGORITMA ENKRIPSI RC6 BERBASIS ANDROID

N/A
N/A
Protected

Academic year: 2018

Membagikan "PERANCANGAN APLIKASI KEAMANAN DATA EMAIL MENGGUNAKAN ALGORITMA ENKRIPSI RC6 BERBASIS ANDROID"

Copied!
6
0
0

Teks penuh

(1)

PERANCANGAN APLIKASI KEAMANAN DATA EMAIL

MENGGUNAKAN ALGORITMA ENKRIPSI RC6

BERBASIS ANDROID

Muhammad Zulham1, Helmi Kurniawan2, Iwan Fitrianto Rahmad3

Jurusan Teknik Informatika, STMIK Potensi Utama

Jl. K.L. Yos Sudarso Km. 6.5 No.3-A, Tanjung Mulia, Medan, Indonesia Email : joi.am116@gmail.com1

Abstrak

Masalah pengiriman data email ataupun pesan telah menjadi masalah penting pada era teknologi informasi seperti sekarang ini. Terkadang data-data ini harus bersifat rahasia agar tidak diketahui secara umum. Apabila data tersebut diketahui, maka data tersebut dapat disalahgunakan untuk kejahatan oleh orang lain. Kriptografi merupakan salah satu alat keamanan yang digunakan untuk menyembunyikan suatu pesan. Kriptografi sudah digunakan di segala bidang keamanan. Untuk itu perlunya sebuah keamanan dengan cara enkripsi dan dekripsi data email menggunakan algoritma kriptografi Rivest Code 6 (RC6). Dalam algoritma kriptografi Rivest Code 6 (RC6), juga dirancang untuk memenuhi persyaratan AES yang diantaranya adalah kemampuan untuk beroperasi pada mode blok 128 bit. Jika besar blok 128 bit langsung dipaksakan untuk diimplementasikan dengan algoritma RC5, maka akan dibutuhkan register kerja 64 bit. Spesifikasi arsitektur dan bahasa yang menjadi tempat implementasi algoritma yang ditentukan oleh AES belum mendukung pengoperasian 64 bit yang efisien. Oleh karena itu, daripada menggunakan 2 register 64 bit seperti pada RC5, RC6 menggunakan 4 register 32 bit. Karena menggunakan 4 register maka akan terdapat 2 operasi rotasi pada setiap half-round yang ada, dan juga akan lebih banyak bit-bit yang akan digunakan untuk mempengaruhi banyaknya bit yang dirotasi. Operasi perkalian ini sangat efektif dalam menghasilkan efek

“diffusion” atau penyebaran yang tentu saja mengakibatkan RC6 lebih aman. Aplikasi yang dihasilkan berbasis android dengan memanfaatkan teknologi terbaru.

Kata Kunci : Keamanan Data, Kriptografi, Rivest Code 6

1. Pendahuluan

Kriptografi (Cryptography) berasal dari

bahasa Yunani yaitu “Cryptos” artinya “secret

(rahasia) dan “graphein” artinya “writing

(tulisan). Jadi, kriptografi berarti “secret writing” (tulisan rahasia). Definisi yang dikemukakan dalam [SCH96] : Kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan. (Cryptography is the art and sience of keeping message secure).

Terdapat pula definisi yang di kemukakan di dalam [MEN96] : Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, serta otentikasi.

(Rinaldi Munir, 2006:3) dalam bukunya menjelaskan, data atau informasi yang dapat dibaca dan dimengerti maknanya disebut plaintext. Plaintext yang tersandi disebut ciphertext. Ciphertext harus dapat ditransformasikan kembali menjadi plaintext semula agar pesan yang diterima bisa dibaca. Proses menyandikan plaintext menjadi ciphertext disebut enkripsi disebut enkripsi (encryption) atau enciphering (standard nama menurut ISO

7498-menjadi plaintext semula dinamakan dekripsi (decryption) atau deciphering (standard nama menurut ISO 7498-2).

Algoritma kriptografi (cipher) dapat dibedakan menjadi dua macam, yaitu: simetrik dan asimetrik. Algoritma simetrik (model enkripsi konvensional) adalah algoritma yang menggunakan satu kunci untuk proses enkripsi dan dekripsi data, contohnya adalah RC2, RC4, RC5, RC6, DES, Blowfish, GOST, AES dan lain-lain. Sedangkan algoritma asimetrik (model enkripsi kunci publik) menggunakan kunci yang berbeda dalam proses enkripsi dan dekripsi pesan, contoh dari algoritma ini adalah RSA, El Gamal.

Berikut gambar kunci simertis dan gambar kunci asimetris :

(2)

Gambar 2. Kunci asimetris

Operator biner yang sering digunakan dalam cipher yang beroperasi dalam mode bit adalah XOR atau exlusive-or. Notasi matematis untuk operator XOR adalah ⊕ (dalam bahasa C, operator XOR dilambangkan dengan ^). Operator XOR dioperasikan pada dua bit dengan aturan sebagai berikut : (Rinaldi Munir, 2006:99)

0 ⊕ 0 = 0 0 ⊕ 1 = 1 1 ⊕ 0 = 1 1 ⊕ 1 = 0

Misalkan a, b, c adalah peubah Boolean. Hukum-hukum yang terkait dengan operator XOR :

1) a ⊕ a = 0 2) a ⊕ b = b ⊕ a

3) a ⊕ (b ⊕ c) = (a ⊕ b) ⊕ c

Algoritma RC6 merupakan salah satu kandidat Advanced Encryption Standard (AES) yang diajukan oleh RSA Laboratoriest 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 dirancang untuk menghilangkan segala ketidakamanan yang ditemukan pada RC5, karena analisis pada RC5 menunjukkan bahwa ternyata jumlah rotasi yang terjadi pada RC5 tidak sepenuhnya bergantung pada data yang terdapat dalam blok. Selain itu, serangan kriptanalisis diferensial juga ternyata dapat menembus keamanan yang ditawarkan RC5. (Yudi Prayudi dan Idham Halik, 2005 : 153)

RC6 juga dirancang untuk memenuhi persyaratan AES yang diantaranya adalah kemampuan untuk beroperasi pada mode blok 128 bit. Jika besar blok 128 bit langsung dipaksakan untuk diimplementasikan dengan algoritma RC5, maka akan dibutuhkan register kerja 64 bit. Spesifikasi arsitektur dan bahasa yang menjadi tempat implementasi algoritma yang ditentukan oleh AES belum mendukung pengoperasian 64 bit yang efisien. Oleh karena itu, daripada menggunakan 2 register 64 bit seperti pada RC5, RC6 menggunakan 4 register 32 bit. Karena menggunakan 4 register maka akan terdapat 2 operasi rotasi pada setiap half-round yang ada, dan juga akan lebih banyak bit-bit yang

akan digunakan untuk mempengaruhi banyaknya bit yang dirotasi. (Roland L , 2006)

RC6 seperti juga RC5 mengeksploitasi penggunaan operasi-operasi primitif yang diimplementasikan secara efisien dalam prosesor-prosesor modern. RC6 juga selain menggunakan ketiga operasi primitif yang digunakan dalam RC5, juga menggunakan operasi perkalian 32-bit yang telah diimplementasikan secara efisien dalam prosesor modern saat ini. Primitif operasi perkalian ini sangat efektif dalam menghasilkan

efek “diffusion” atau penyebaran yang tentu saja mengakibatkan RC6 lebih aman daripada RC5. Operasi perkalian ini digunakan untuk menghitung jumlah bit yang dirotasi sehingga konsep data-dependent rotations dapat dengan lebih sempurna diimplementasikan. (Roland L, 2006)

Algoritma RC6 adalah versi yang dilengkapi dengan beberapa parameter, sehingga dituliskan sebagai RC6-w/r/b, dimana parameter w merupakan ukuran kata dalam satuan bit, r adalah bilangan bulat bukan negatif yang menunjukan banyaknya iterasi selama proses enkripsi, dan b menunjukan ukuran kunci enkripsi dalam byte. (Yudi Prayudi dan Idham Halik, 2005 : 153)

Adapun tujuan dari penelitian ini adalah: 1. Menganalisis bagaimana cara kerja

algoritma enkripsi RC6 berbasis android dalam memberi layanan kerahasiaan data.

2. Memberi pemahaman bagaimana algoritma enkripsi RC6 melakukan proses enkripsi dan dekripsi.

3. Membangun suatu program yang dapat menjaga keamanan data menggunakan algoritma enkripsi RC6 berbasis android.

2. Metode Penelitian

(3)

Mulai

Gambar 3. Flow Chart Form Enkripsi / Dekripsi Teks Email

3. Perancangan

Perancangan dapat diartikan sebagai suatu tahapan setelah dianalisa dari pengembangan sistem untuk mengembangkan bagaimana suatu sistem itu akan dibentuk. Alur proses terjadinya algoritma Rivert Code 6 (RC6) terhadap proses penyandian pesan dilakukan pada saat email akan dikirim. Langkah – langkah proses pembuatan secara garis besar adalah sebagai berikut:

1. Operasi dasar d. A x B Operasi perkalian bilangan integer. e. A<<<B A dirotasikan ke kiri sebanyak

variabel kedua (B)

f. A>>>B A dirotasikan ke kanan sebanyak variabel kedua (B)

2. Algoritma Kunci S-Box S[0] = Pw

Karena RC6 memecah blok 128 bit menjadi 4 buah blok 32 bit, maka algoritma ini bekerja dengan 4 buah register 32-bit A, B, C, D. Byte yang pertama dari plainteks atau cipherteks ditempatkan pada byte A, sedangkan byte yang terakhirnya ditempatkan pada byte D. Dalam prosesnya akan didapatkan (A, B, C,D) = (B, C, D, A) yang diartikan bahwa nilai yang terletak pada sisi kanan berasal dari register di sisi kiri. Diagram blok berikut akan lebih menjelaskan proses enkripsi yang terjadi pada algoritma RC6.

B = B + S[ 0 ]

Gambar 4. Algoritma Enkripsi

(4)

S[0] hingga S[43]. Masing-masing sub kunci panjangnya 32 bit. Proses enkripsi pada algoritma RC6 dimulai dan diakhiri dengan proses whitening yang bertujuan untuk menyamarkan iterasi yang pertama dan yang terakhir dari proses enkripsi dan dekripsi. Pada proses whitening awal, nilai B akan dijumlahkan dengan S[0] dan nilai D dijumlahkan dengan S[i]. Pada masingmasing iterasi pada RC6 menggunakan dua (2) buah sub kunci. Sub kunci pada iterasi yang pertama menggunakan sub-sub kunci lanjutannya. Setelah iterasi ke-20 selesai, dilakukan proses whitening akhir dimana nilai A dijumlahkan dengan S[42], dan nilai C dijumlahkan dengan S[43].

Setiap iterasi pada algoritma RC6 mengikuti aturan sebagai berikut, nilai B dumasukkan ke dalam fungsi f, yang didefinisikan sebagai f(x) = x(2x + 1), kemudian diputar ke kiri sejauh 5 bit. Hasil yang didapat pada proses ini dimisalkan sebagai u. Nilai u kemudian di XOR dengan C dan hasilnya menjadi nilai C.

Nilai t juga digunakan sebagai acuan bagi C untuk memutar nilainya ke kiri. Begitu pula dengan nilai U, juga digunakan sebagai acuan bagi nilai A untuk melakukan proses pemutara ke kiri. Kemudian sub kunci S[2i] pada iterasi dijumlahkan dengan A, dan sub kunci S[2i+1] dijumlahkan dengan C. Keempat bagian dari blok kemudian akan dipertukarkan dengan mengikuti aturan bahwa nilai A ditempatkan pada D, nilai B ditempatkan pada A, nilai C ditempatkan pada B, dan nilai (asli) D ditempatkan pada C. Demikian iterasi tersebut terus berlangsung hingga dua puluh (20) kali.

4. Algoritma Dekripsi

Proses dekripsi cipherteks pada algoritma RC6 merupakan pembalikan dari proses enkripsi. Pada proses whitening, bila proses enkripsi menggunakan operasi penjumlahan, maka pada proses dekripsi menggunakan operasi pengurangan. Sub kunci yang digunakan pada proses whitening setelah iterasi terakhir diterapkan sebelum iterasi pertama, begitu juga sebaliknya sub kunci yang diterapkan pada proses whitening sebelum iterasi pertama digunakan pada whitening setelah iterasi terakhir. Akibatnya, untuk melakukan dekripsi, hal yang harus dilakukan semata-mata hanyalah menerapkan algoritma yang sama dengan enkripsi, dengan tiap iterasi menggunakan sub kunci yang sama dengan yang digunakan pada saat enkripsi, hanya saja urutan sub kunci yang digunakan terbalik. (Yudi Prayudi dan Idham Halik, 2005:154)

C = C - S[ 43 ]

Gambar 5. Algoritma Dekripsi

4. Hasil dan Pembahasan

Pada tahapan ini menjelaskan hasil rancangan, tampilan program aplikasi dan kesimpulan dari uji coba baik dari analisa hasil serta kelebihan dan kekurangan dari hasil perancangan.

Tampilan Aplikasi

Berikut ini akan dijelaskan tentang tampilan hasil aplikasi keamanan data email menggunakan algoritma enkripsi RC6 berbasis Android.

Tampilan Halaman Awal

(5)

Gambar 6. Tampilan Halaman Awal

Tampilan Halaman Utama

Halaman utama merupakan tampilan yang memiliki beberapa pilihan list, yaitu diantaranya new message, inbox, about dan exit, dapat dilihat pada gambar berikut:

Gambar 7. Tampilan Halaman Utama

Tampilan Halaman New Message

Halaman New Message merupakan halaman dimana user melakukan proses pengiriman pesan yang sudah terenkripsi terlebih dahulu. Untuk melihat tampilan halaman new message dapat dilihat pada gambar berikut:

Gambar 8. Tampilan Halaman New Message

Tampilan Halaman Inbox

Halaman ini merupakan halaman dimana user melakukan proses pembacaan pesan yang sudah diterima sehingga dapat terbaca. Untuk melihat tampilan halaman inbox dapat dilihat pada gambar berikut:

Gambar 9. Tampilan Halaman Inbox

5. Kesimpulan

Penulis meninjau bagaimana proses pengiriman pesan menggunakan email sehingga dapat dienkripsi dan kerahasiaan pesan sangat terjaga. Berdasarkan uraian dan penjelasan sebelumnya, penulis membuat kesimpulan untuk aplikasi keamanan data email menggunakan algoritma enkripsi RC6 yaitu:

1. Dengan adanya aplikasi ini pesan dapat disandikan sehingga keamanan isi pesan sangat terjaga dalam kerahasiaan data. 2. Aplikasi ini mampu mengirim dan menerima

(6)

operasi android dengan menggunakan aplikasi DroidRC6.

3. Aplikasi ini menggunakan algoritma enkripsi RC6, sehingga tingkat keamanan lebih terjamin, karena algoritma RC6 menggunakan algoritma blok cipher dengan 4 register sehingga lebih sulit untuk dipecahkan keamanannya.

Daftar Pustaka

Ariyus, Dony, 2009, Pengantar Ilmu Kriptografi

Teori, Analisis, dan Implementasi,

Penerbit Andi, Yogyakarta.

Huda, Arif, Akbarul, 2012, 24 Jam Pintar

Pemrograman Android, Penerbit Andi,

Yogyakarta.

Munir, Rinaldi, 2006, Kriptografi, Penerbit Informatika, Bandung.

Roland, 2006, Jurnal Perbandingan Algoritma

Block Cipher RC5 dan RC6, Institut

Teknologi Bandung.

Sadikin, Rifki, 2012, Kriptografi Untuk

Keamanan Jaringan, Penerbit Andi,

Jakarta.

Safaat, Nazruddin, 2012, Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android, Penerbit Informatika, Bandung.

Safrina, Rika, 2006, Jurnal Studi dan Perbandingan Pesan dengan Algoritma

RC2, RC4, RC5 dan RC6, Institut

Teknologi Bandung.

Suprianto, Dodit, 2012, Pemrograman Aplikasi

Android, Penerbit Mediakom, Yogyakarta.

Yudi, Idham, 2005, Jurnal Studi dan Analisis Algoritma Rivest Code 6 (RC6) dalam

Enkripsi/Dekripsi Data, Universitas Islam

Gambar

gambar kunci asimetris :
Gambar 2. Kunci asimetris
Gambar 3. Flow Chart Form Enkripsi / Dekripsi Teks Email
Gambar 5. Algoritma Dekripsi
+2

Referensi

Dokumen terkait

Protokol ini berbasis pada standard HTTP dan XML , dimana request data dilakukan melalui HTTP dan metadata yang didapatkan adalah dalam format XML yang sesuai dengan standar

Hasil penelitian menunjukkan bimbingan sosial efektif untuk mengembangkan perilaku asertif remaja, dibuktikan pada peningkatan skor 10 indikator yaitu: hormat

Preprocessing data telah dilakukan sesuai dengan proses yang ada pada KDD, dengan menghasilkan set data yang baru hasil dari penggabungan dua sumber data yang berbeda yaitu

karona cuaoh untuk nondapatkan aurat porlntah darl hakin dongas oogoro, codon^can koadaaa aangat mcndcoak untuk cogara ncnboolah curat-aurat yang borada dl Kaator Poa* naka Jalan

b. Pihak Pemko akan memanfaatkan bekas wilayah tamka tersebut dengan membangun resort dan sarana olah raga seperti lapangan pacu kuda, arena motor cross, sircuit road

Dalam penelitian yang dilakukan oleh penulis definisi operasional yang akan diamati adalah Budaya Kerja , Motivasi Kerja dan kinerja guru.Ada tiga definisi

Dari hasil penelitian uji antidiare kombinasi ekstrak etanol kunyit, beluntas, salam dan jambu biji dengan metode proteksi dan transit intestinal yang diberikan per oral pada

Untuk menemukan hubungan pola asuh orang tua, pergaulan teman sebaya dan media televisi terhadap karakter siswa di SMP Negeri 25 Purworejo, dengan unsur pokok kajian seperti