Aplikasi Enkripsi Asia Chat Berbasis Web Menggunakan Metode Stream Chiper Rc4

Embed Size (px)

DESCRIPTION

Tugas Khusus

Citation preview

APLIKASI ENKRIPSI ASIACHAT BERBASIS JQUERY MENGGUNAKAN METODE STREAM CIPHER RC4PROPOSAL JUDUL

Diajukan Untuk Menempuh Tugas Khusus

Oleh

Irnawati Mochtar

11201217

JURUSAN TEKNIK INFORMATIKA

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER ASIA

MALANG

20141. LATAR BELAKANG

Chatting adalah suatu program dalam internet untuk berkomunikasi langsung sesama pemakai internet yang sedang online (yang sedang menggunakan internet). Komunikasi bisa berupa teks atau suara kepada orang lain yang sedang online, kemudian orang yang dituju membalas pesan anda dengan teks atau suara, demikian seterusnya.

Chatting tidak hanya populer dikalangan remaja saja namun sekarang ini, sudah merambah kalangan dewasa bahkan orang tua sekalipun. Asia chat adalah suatu feature atau program berbasis web membentuk komunitas yang tidak hanya dikalangan mahasiswa Asia tetapi juga berlaku untuk umum para siswa SMK/SMA.

Chatting Asia ini dibuat untuk menjembatani komunikasi internal antar-mahasiswa asia dan juga umum pada anak-anak SMK/SMA. Dikalangan mahasiswa dapat digunakan sebagai tempat pertukaran informasi, tugas dan lain-lain, dan untuk kalangan umum dapat digunakan tempat untuk mencari informasi dari teman-teman komunitas.Akan tetapi jaringan terbuka dapat terbaca sniffer. Oleh karena dengan menggunakan stream chiper RC4 dapat enkripsi dan dekripsi untuk dapat menjaga pesan rahasia dari siapapun kecuali otoritas atau kunci rahasia untuk membuka informasi yang telah disandi, integritas data untuk mendeteksi manipulasi data oleh pihak yang tidak behak dan autentikasi keaslian, isi datanya, waktu pengiriman, dan lain-lain.2. RUMUSAN MASALAHa. Bagaimana cara membuat Applikasi/software komunikasi antar PC menggunakan text dan enkripsi yang cepat komputasi dengan stream cipher.b. Bagaimana cara mengenkripsi dan dekripsi client dan server di sisi PHP dan JQuery.c. Bagaimana cara untuk penyebaran expance key pada tabel berbeda pada pasangan.3. BATASAN MASALAH

a. Karakter dalam penggunaan pada chat sebatas ASCII, tidak sampai pada Unicode, bigendian dst.b. Bahasa pemrograman yang digunakan adalah berbasis web PHP dan JQuery dan hanya digunakan di PC tidak dimobile.4. TUJUAN DAN MANFAAT PENULISAN

Tujuan

a. Membuat wadah komunikasi yang aman antar mahasiswa asia dan juga eksternal umum SMK/SMA.b. Membantu dan mempermudah mahasiswa, umum dan dalam memberi informasi secara cepat dari sesama.Manfaat Bagi Penulis

a. Menambah waswasan koding cara mengenkripsi dan dekripsi mengunakan PHP dan JQuery.b. Belajar menganalisa keamanan informasi dengan menggunakan metode stream cipher RC4.Manfaat Bagi Pembaca

a. Menjadi bahan belajar dan kajian yang dapat dikembangkan dikemudian hari.b. Memberikan wawasan tentang keamanan jaringan dengan cara mengenkripsi dan dekripsi pada aplikasi berbasis web.

5. METODOLOGI PENELITIAN

Untuk mendukung penyelesaian penelitian ini digunakan beberapa metodologi, yaitu:

a. Studi Pustaka (Library Research)

Studi Pustaka dilakukan dengan cara mempelajari teori-teori literature dan buku-buku yang berhubungan dengan objek kajian sebagai dasar dalam penelitian ini, dengan tujuan memperoleh dasar teoritis gambaran dari apa yang dilakukan. Teori yang dipelajari yaitu: teori stream cipher RC4, teori mengenkripsi dan dekripsi, teori PHP dan JQuery, dan sebagainya.b. Analisa Data

Selanjutnya akan dilakukan analisa data yang akan dilakukan kerja sama dengan sekolah SMK untuk uji coba aplikasi, agar data lebih akurat. Analisa data bertujuan untuk mengetahui variable-variabel apa yang dibutuhkan dalam aplikasi ASIAchat kedalam metode stream cipher RC4.c. Perancangan

Berdasarkan anilisa data yang telah dilakukan dalam selanjutnya dilakukan pemodelan data ke dalam algoritma RC4, teori stream cipher enkripsi dan dekripsi RC4. Perancangan algoritma RC4 menggunakan flowchart.

d. Implementasi

Hasil perancangan selanjutnya diimplementasikan dalam bentuk kode program.pada penelitian ini akan digunakan bahasa pemrograman web menggunakan PHP dan JQuery.e. Pengujian

Akan dilakukan pengujian data untuk mengukur keakuratan yang dihasilkan dari program yang telah dibuat.

6. LANDASAN TEORIa. RC4 (Rons Code #4)

Scheiner [15], menyatakan bahwa RC4 adalah suatu variable kunci stream cipher yang dikembangakan pada tahun 1987 oleh Ron Rivest untuk RSA Data Security, Inc. selama tujuh tahun algoritma itu dirahasiakan karena adanya suatu perjanjian untuk menjaga kerahasiaanya. Pada bulan September 1994 seseorang telah mengirimkan source code RC4 ke milis Cypherpunks. Dengan source code tersebut menyebar ke newgroup usenet yaitu sci.crypt dan internet melalui situs-situs ftp di seluruh dunia. Kemudian RSA Data Security, Inc. mencoba menarik source code tersebut dengan mengklaim source code tersebut masih merupakan rahasia dagang merekameskipun itu telah tersebar ke publik, tetapi itu sudah terlambat. Sejak itulah algoritma RC4 dibahas dan dibedah di usenet, didistribusikan di konfersi dan diajarkan dikursus kriptografi. Dan RSA Data Security dan baru di publikasikan untuk umum pada tahun 1997.Menurut Stallings[17], RC4 telah digunakan dalam SSL/TLS (Secure Socket Layer/Transport Layer Security) yang merupakan standar yang telah ditetapkan untuk komunikasi antara web browser dan server. RC4 juga digunakan dalam protocol WEP (wired Equivalent Privacy) dan yang lebih baru yaitu pada protocol WiFi Protected Access (WPA).b. KRIPTOGRAFI RC4

Algoritma kriptografi Rivest Code 4 (RC4) merupakan salah saru algoritma kunci simetris yang dibuat oleh RSA Data Security Inc (RSADSI). Dipilihnya RC4 sebagai metode kriptogragfi untuk proteksi query dan hasil query berdasarkan pada beberapa hal, yaitu:

1. Pengamanan transmisi database memerlukan suatu proses yang cepat, maka algoritma kriptografi simetris adalah solusi yang tepat.

2. RC4 merupakan algoritma stream cipher yang paling tepat dibandingkan dengan algoritma stream cipher yang lain untuk masalah transmisi query database seperti ini. Hal ini dikarenakan RC4 memiliki proses enkripsi yang cukup sederhana dan hanya melibatkan beberapa saja per byte-nya.Menurut hasil pengujian, kecepatan algoritma kriptografi RC4 adalah 5380,035 Kbytes/detik pada pentiuml 33 memori 16 MB pada windows 95. Kecepatan dalam testing ini adalah kecepatan enkripsi dimemori. Hasil testing didapat dengan enkripsi 256 byte per blok sebanyak 20480 kali, atau setara dengan kurang lebih 5 MB data.

Cara kerja algoritma RC4 yaitu inisialisasi S-Box pertama, S[0],S[1],...,S[255], dengan bilangan 0 sampai 255. Pertama isi secara berurutan S [0] = 0, S[1] = 1,..., S[255] = 255. Kemudian inisialisasi array lain (S-Box lain), misal array K dengan panjang 256. Isi array K dengan kunci yang diulangi sampai seluruh array K[0], K[1],...,K[255] terisi seluruhnya. Proses inisialisasi S-Box (Array S) for i = 0 to 255 S[i] = I Proses inisialisasi S-Box (Array K) Array Kunci // Array dengan panjang kunci length. for i = 0 to 255 K[i] = Kunci[i mod length] Kemudian lakukan langkah pengacakan S-Box dengan langkah sebagai berikut:

i = 0 ; j = 0

for i = 0 to 255

{

j = (j + S[i] + K[i]) mod 256

swap S[i] dan S[j]

}

Setelah itu, buat pseudo random byte dengan langkah sebagai berikut:

i = ( i + 1 ) mod 256

j = ( j + S[i] ) mod 256

swap S[i] dan S[j]

t = (S[i] + S[j]) mod 256

K = S[t]

Gambar 1. Skema Kunci Asimetris

c. Algoritma RC4

Algoritma RC4 adalah algoritma yang sangat sederhana dan cukup mudah untuk menjelaskan, sebuah variable kunci yang panjangnya 1 sampai dengan 256 byte (8 sampai dengan 2.048 bit) digunakan untuk menginisialisasi 256 byte larik S, dengan elemen S[0], S[1], , S[255]. Setiap larik S berisi permutasi dari semua angka 8-bit mulai dari 0 sampai 255 untuk enkripsi dan dekripsi, sebuah byte k dihasilkan dari larik S dengan memilih salah satu byte dari 255 byte secara sistematis. Karena setiap nilai k dihasilkan dari nilai larik S yang dipermutasi.Algoritma RC4 merupakan algoritma enkripsi stream chipher dan symmetric key, dimana algoritma ini melakukan proses enkripsi dan dekripsi one byte at a time dan menggunakan kunci yang sama. Algoritma RC4 terdiri atas 2 bagian yaitu Key Scheduling Algorithm (KSA) dan Pseudo Random Generation Algorithm (PRGA). key

key stream

plaintext

chipertext

Gambar 2. Blok Diagram Algoritma RC4

1. Key Scheduling Algorithm (KSA)

Proses KSA melakukan pemberian nilai inisialisasi pada tabel sbox, key dan selanjutnya melakukan proses permutasi sebanyak 256 iterasi

//Inisialisasi sbox dan key

Len_key = length(key_str)

For(i=0;i