JURNAL KEAMANAN KOMPUTER
APLIKASI ENKRIPSI - DEKRIPSI DENGAN ALGORITMA RC2 MENGGUNAKAN JAVA NETBEANS
Jumrotul Nafidah [1412120204]1, Mochamad Abdul Rifa’i[1412120257]2 , Ika Budi Prasetyo [1412120171]3.
Fakultas Teknik Informatika 2012 A, Universitas PGRI Ronggolawe Tuban
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 2 (RC2). Dalam algoritma kriptografi Rivest Code 2 (RC2), dirancang dalam pemrograman java netbeans yang diantaranya adalah kemampuan untuk beroperasi langsung untuk diimplementasikan dengan mode algoritma RC2. Spesifikasi arsitektur dan bahasa yang menjadi tempat implementasi algoritma yang ditentukan belum mendukung pengoperasian 64 bit yang efisien. Oleh karena itu, daripada menggunakan 2 register 64 bit seperti pada RC2, RC2 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 RC2 lebih aman. Aplikasi yang dihasilkan berbasis android dengan memanfaatkan teknologi terbaru.
Kata Kunci : Keamanan Data, Kriptografi, Rivest Code 2(RC2), Pemrograman Java
Abstract
The problem of data delivery email or messaging has become an important issue in the era of information technology as it is today . Sometimes these data should be confidential so as not generally known. If the data is known, then the data can be misused for crime by others . Cryptography is a security tool used to hide a message . Cryptography has been used in all areas of security . For that we need a security by means of encryption and decryption of email data using cryptographic algorithms Rivest Code 2 ( RC2 ) . In the cryptographic algorithms Rivest Code 2 ( RC2 ) , designed in java programming netbeans which include the ability to operate directly for RC2 algorithm implemented by mode . Specifications architectures and languages into a specified algorithm implementation does not yet support 64-bit operating efficiently. Therefore , instead of using two 64 -bit registers as in RC2 , RC2 uses four 32 -bit registers . Because it uses four registers there will be two rotation operation on each half- round there , and it will also be a lot of bits that will be used to affect the number of bits that are rotated . This multiplication operation is very effective in producing the effect of " diffusion " or which of course resulted in the deployment of more secure RC2 . Android -based application that is generated by utilizing the latest technology .
Keywords : Data Security , Cryptography , Rivest Code 2 ( RC2 ) , Java Programming
BAB I PENDAHULUAN
1.1 Latar Belakang
Masalah keamanan dan
kerahasiaan merupakan salah satu
aspek penting dari suatu pesan, data,
atau informasi. Di mana kebenaran
dan keaslian suatu informasi sangat
penting baik pada saat pengiriman
ataupun pada saat informasi tersebut
diterima. Pesan, data, atau informasi
tidak akan berguna lagi apabila pada
saat pengiriman informasi tersebut
disadap atau dibajak oleh orang yang
tidak berhak atau berkepentingan.
Keamanan dan kerahasian
data pada jaringan komputer saat ini
menjadi isu yang sangat penting dan
terus berkembang. Beberapa kasus
menyangkut keamanan jaringan
komputer saat ini menjadi suatu
pekerjaan yang membutuhkan biaya
penanganan dan pengamanan yang
sedemikian besar. Sistem-sistem
vital, seperti sistem pertahanan,
sistem perbankan, sistem bandara
udara dan sistem-sistem lain yang
setingkatnya, membutuhkan tingkat
keamanan yang sedemikian tinggi.
Hal ini disebabkan oleh adanya
kemajuan bidang jaringan komputer
dengan konsep open system-nya
sehingga siapapun, di manapun dan
kapanpun, mempunyai kesempatan
untuk mengakses kawasan-kawasan
vital tersebut. Untuk menjaga
keamanan dan kerahasiaan pesan,
data, atau informasi dalam suatu
jaringan komputer maka diperlukan
beberapa enkripsi guna membuat
pesan, data, atau informasi tersebut
tidak dapat dibaca atau dimengerti
oleh sembarang orang, kecuali untuk
Dengan adanya sebuah
kriptografi yang meliputi proses
enkripsi maka pesan, data, maupun
informasi dapat dikodekan sehingga
orang yang tidak berkepentingan
tidak dapat membaca informasi
tersebut, selain orang yang
mengetahui kunci (Key) untuk
mendeskripsikannya. Berdasarkan
kunci yang digunakan, algoritma
enkripsi terbagi menjadi algoritma
kunci simetri dan kunci asimetri yang
juga dikenal sebagai kunci publik.
Salah satu algoritma kunci simetri
yang dikenal adalah RC2. RC2
merupakan merupakan salah satu
jenis stream cipher, yaitu memproses
unit atau input data pada satu saat.
Dengan cara ini enkripsi atau dekripsi
dapat dilaksanakan pada panjang
yang variabel. Algoritma ini tidak
harus menunggu sejumlah input data
tertentu sebelum diproses, atau
menambahkan byte tambahan untuk
mengenkrip. Metode enkripsi RC2
sangat cepat kurang lebih 10 kali
lebih cepat dari DES.
Menurut hasil pengetesan kecepa
tan algoritma
kriptografi RC2 adalah 5380,035
Kbytes/detik pada Pentium133
memori 16 MB pada Windows 95.
Hasil pengetesan didapat dengan
enkripsi 256 byte per blok sebanyak
20480 kali, atau setara dengan
kurang lebih 5 MB data.
1.2 Rumusan Masalah
Dari latar belakang yang telah
diuraikan di atas maka dapat
dirumuskan permasalahan, yaitu
bagaimana caranya untuk menangani
masalah keamanan data pada jaringan
komputer dengan menggunakan
1.3 Tujuan Penulisan
Dari permasalahan yang ada pada rumusan masalah maka makalah ini bertujuan:
1. Mengenalkan algoritma kriptografi RC2.
2. Mempelajari cara untuk
melakukan penggunaan
algoritma kriptografi RC2.
1.4 Batasan Masalah
Adapun batasan dari makalah ini
adalah sebagai berikut :
1) Hanya mengenkripsi dan
dekripsi sebuah file atau
data.
2) Hanya membahas analisis
waktu proses dan
kecepatan proses enkripsi
dan dekripsi.
BAB II
LANDASAN TEORI 2.1 Enkripsi dan Dekripsi
Salah satu hal yang
sangat penting dalam
komunikasi menggunakan
komputer untuk menjamin
kerahasiaan data adalah
dengan enkripsi. Enkripsi
adalah sebuah proses yang
melakukan perubahan sebuah
kode dari yang bisa
dimengerti menjadi sebuah
kode yang tidak bisa
dimengerti (tidak terbaca).
Enkripsi dapat diartikan
sebagai kode atau cipher.
Sebuah sistem pengkodean
menggunakan suatu tabel atau
kamus yang didefinisikan
untuk mengganti kata dari
informasi atau yang
merupakan bagian dari
informasi yang dikirim
Deskripsi merupakan
algoritma atau cara yang dapat
digunakan untuk membaca
informasi yang telah
kembali dibaca. Dengan kata
lain dekripsi merupakan
proses membalikkan hasil
yang diberikan dari proses
enkripsi ke dalam bentuk awal
sebelum d enkrip.
2.2 Algoritma RC2
Pada tahun 1987 di
Laboratorium Rsa, Ron Rivest
menemukan suatu algoritma
yang diberi nama RC2. RC itu
sendiri merupakan singkatan dari Ron’s Code. Karena algoritma RC2 dapat
diimplementasikan secara
efisien pada perangkat lunak
maka menjadikan algoritma
RC2 populer untuk aplikasi
internet antara lain digunakan
sebagai standar WEP (Wired
Equivalent Privacy), WPA
(Wifi Protected Acces) dan
TLS (Transport Layer
Protocol). RC2 juga
diimplementasikan pada
protokol SSL (Source Socket
Layer) yaitu sebuah protokol
untuk memproteksi trafik
intenet.
Terdapat dua tahapan
untuk membangkitkan aliran
kunci algoritma RC2 yaitu
Key Scheduling Algorithm
(KSA) dan Pseudo-Random
Generator Algorithm
(PRGA).
Key Scheduling
Algorithm (KSA) merupakan
tahapan pemberian nilai awal
berdasarkan kunci enkripsi.
State dari nilai awal tersebut
berupa array dengan
representasi permutasi 256
byte (dengan indeks 0 sampai
dengan 255) dinamakan array
S. Menggunakan rentang
tersebut karena RC2
(255 = 2˄8 dan 8 bit = 1 byte). Artinya maksimal panjang
kunci yang dapat tersimpan
pada array U adalah 256
karakter. Permutasi terhadap
nilai array S dilakukan dengan
pseudo-code berikut :
j = 0
For i = 0 to 255
S[i] = i
For i = 0 to 255
j = (j + S[i] + U[i]) mod 256
swap (S[i], S[j])
(*pertukaran nilai S[i] dan
S[j]*)
Tahap selanjutnya hasil dari array S
yang telah melalui KSA akan diproses
kembali pada
PRGA(Pseudo-Random Generator Algorithm). Pada
tahap PRGA terjadi modifikasi state
dan output sebuah byte dari aliran
kunci, dimana array S beroperasi
dengan array U yang selanjutnya akan
menghasilkan keystream. Nilai S[i]
dan S[j] diambil dan dijumlahkan
dengan modulo 256 untuk
membangkitkan aliran kunci. Hasil
dari perhitungan tersebut akan
menjadi indeks S[indeks] yang
menjadi aliran kunci K yang
kemudian digunakan untuk
mengenkripsi plainteks ke-aliran
kunci K yang kemudian digunakan
untuk mengenkripsi plainteks ke-idx.
Setiap putaran bagian keystream
sebesar 1 byte (dengan nilai antara 0
sampai 255) dioutputkan oleh PGRA
berdasarkan state S. I = 0 J = 0 For idx = 0 to PanjangPlainteks – 1 do I = ( i + 1 ) mod 256 J = ( j + S[i] ) mod 256
Swap ( S[i], S[j] ) (*penukaran nilai
S[i] dan S[j]*)
K = ( S[i] + S[j] ) mod 256
Endfor
Setelah keystream terbentuk,
kemudian keystream tersebut
dimasukkan dalam operasi XOR
dengan plaintext.
BAB III
PERANCANGAN SISTEM
3.1 Pengertian RC2
RC2 adalah 64-bit blok cipher dengan ukuran variabel kunci.18 Its putaran diatur sebagai sumber-berat jaringan Feistel,dengan 16 putaran dari satu jenis (pencampuran) diselingi oleh dua putaran jenis lain (dihaluskan.Sebuah putaran
pencampuran terdiri dari empat aplikasi transformasi MIX,seperti ditunjukkan pada diagram.
3.2 Implementasi Perancangan Program
1.Tampilan Awal Program
Sebelum memulai program kita
mengimport terdahulu secara
otomatis :
4. Button Deskripsi
5. Button Simpan
6. Button Buka