Disusun oleh:
Pembimbing:
1
DAFTAR ISI
HALAMAN JUDUL..................................................................................................................................................... i
DAFTAR ISI................................................................................................................................................................ ii
DAFTAR GAMBAR.................................................................................................................................................. iii
BAB I PENDAHULUAN............................................................................................................................................ 1
1.1 Latar Belakang.................................................................................................................................................... 1
1.2 Perumusan Masalah............................................................................................................................................. 2
1.3 Tujuan Penelitian................................................................................................................................................. 2
1.4 Manfaat Penelitian............................................................................................................................................... 2
1.5 Sistematika Penelitian.......................................................................................................................................... 2
BAB II LANDASAN TEORI...................................................................................................................................... 3
2.1 Sejarah RC4........................................................................................................................................................ 3
2.2 Kriptografi........................................................................................................................................................... 3
2.3 Algoritma............................................................................................................................................................ 3
2.4 Teknologi Informasi............................................................................................................................................ 4
2.4 Komputer............................................................................................................................................................ 4
2.5 Keamanan Informasi........................................................................................................................................... 4
2.6 Algoritma Simetris.............................................................................................................................................. 4
BAB III DATA............................................................................................................................................................. 5
3.1 Algoritma RC4.................................................................................................................................................... 5
3.2 Cara Kerja Algoritma RC4..................................................................................................................................6
BAB IV ANALISIS DAN PEMBAHASAN.............................................................................................................13
4.1 Implementasi dari Algoritma RC4....................................................................................................................13
4.2 Keamanan RC4.................................................................................................................................................14
BAB V PENUTUP..................................................................................................................................................... 15
DAFTAR PUSTAKA................................................................................................................................................ 16
ii
DAFTAR GAMBAR
iii
BAB I PENDAHULUAN
Dewasa ini, sistem keamanan memainkan peran penting dalam perancangan sistem
teknologi informasi. Area dan jangkauan aplikasi yang membutuhkan sistem keamanan
seperti tanpa ada akhirnya, contohnya : komunikasi internet, perangkat-perangkat nirkabel
(misalnya : handphone dan wireless LAN), komunikasi antar mobil, ecommerce, e-Banking,
proteksi hak cipta untuk media digital, elektronik bar code pada produk-produk, stampel
elektronik, dll. Maka rancangan dan implementasi untuk solusi sistem keamanan di masa
mendatang akan sangat menantang untuk dilakukan, karena penyerang biasanya akan
menyerang link yang lemah dalam sistem keamanan. Penyerangan ini dapat menggunakan
berbagai opsi, contohnya menerobos crypto-algorithm. Dalam kebanyakan kasus, crypto-
algorithm adalah perangkat inti dalam aplikasi sistem keamanan dan karena itu
cryptoalgorithm harus didesain secara hati-hati, kemudian dipilih, dan diimplementasikan
untuk menghindari inti kriptografi tersebut menjadi link yang terlemah apapun solusi
keamanannya.
Sekarang ini ada 2 macam protokol kriptografi yang populer, yaitu : symmetric-key
dan asymmetric-key. Pada protokol symmetric-key, sebuah kunci (kunci rahasia atau kunci
privat) digunakan oleh kedua pihak yang berkomunikasi untuk mengenkripsi dan
mendekripsi pesan. Protokol jenis ini sudah lama digunakan. Penemuan protokol ini
1
diperkirakan sekitar tahun 1900 BC, yang meliputi kode kriptografi dan teknik cipher
(contohnya Caesar Cipher, Hill Cipher, Vernam Cipher). Sedangkan pada protokol
kriptografi dengan asymmetric key, satu kunci di sebarluaskan ke publik dan menahan yang
lainnya sebagai private key. Private key tersebut didesain agar sulit untuk dipecahkan,
walaupun telah mengetahui kunci yang disebarluaskan ke publik
3
BAB II LANDASAN TEORI
RC4 didesain oleh Ron Rivest yang berasal dari RSA Security pada tahun 1987. RC
sendiri mempunyai singkatan resmi yaitu “Rivest Chiper”, namun juga dikenal sebagai
“Ron’s Code” RC4 sebenarnya dirahasiakan dan tidak dipublikasikan kepada khalayak
ramai, namun ternyata ada orang yang tidak dikenal menyebarkan RC4 ke mailing list
Cypherpunks. Kemudian berita ini dengan cepat diposkan ke sci.crypt newsgroup, dan dari
newsgroup ini kemudian menyebar luas di internet. Kode yang dibocorkan tersebut
dipastikan keasliannya karena output yang dikeluarkan sama dengan software-software yang
menggunakan RC4 yang berlisensi. Nama RC4 sudah dipatenkan, sehingga RC4 sering
disebut juga ARCFOUR atau ARC4 (Alleged RC4) untuk menghindari masalah pematenan.
RSA Security tidak pernah secara resmi merilis algoritma tersebut, Makalah IF2091
Struktur Diskrit – Sem. I Tahun 2010/2011 namun Rivest secara pribadilah yang merilisnya
tersebut dengan menhubunkan Wikipedia Inggris ke catatancatatan yang ia punya. RC4
telah menjadi bagian dari protokol enkripsi yang standard dan sering digunakan, termasuk
WEP dan WPA untuk wireless card, serta TLS. Faktor utama yang menjadi kesuksesan dari
RC4 adalah kecepatannya dan kesederhanaannya dalam menangani banyak applikasi,
sehingga mudah untuk mengembangkan implementasi yang effisien ke software dan
hardware.
2.2 Kriptografi
Kriptorafi adalah suatu ilmu tentang teknik enkripsi naskah asli (plaintext) yang
diacak memanfaatkan sebuah kunci enkripsi sehingga naskah asli tersebut berubah menjadi
naskah yang sulit dibaca (chipertext) oleh pihak yang tidak memiliki kunci dekripsi.
2.3 Algoritma
Algoritma adalah logika, metode dan tahapan “urutan” sistematis yang digunakan
untuk memecahkan suatu permasalahan. Algoritma dapat juga diartikan sebagai urutan
langkag secara sistematis dan logis. Dalam perkembangannya, algoritma banyak dipakai di
4
bidang komputer.
2.4 Komputer
Komputer adalah alat elektronik yang terdiri dari rangkaian berbagai komponen
yang saling terhubung sehingga membentuk suatu sistem kerja. Sistem di dalam komputer
tersebut dapat melakukan pekerjaan secara otomatis berdasarkan program yang
diperintahkan kepadanya sehingga mampu menghasilkan informasi berdasarkan data dan
program yang ada.
5
BAB III DATA
RC4 menghasilkan pseudorandom stream bit. Seperti halnya stream cipher lainnya,
algoritma RC4 ini dapat digunakan untuk mengenkripsi dengan mengombinasikannya
dengan plainteks dengan menggunakan bit-wise Xor (Exclusive-or). Proses dekripsinya
dilakukan dengan cara yang sama (karena Xor merupakan fungsi simetrik). Untuk
menghasilkan keystream, cipher menggunakan state internal yang meliputi dua bagian : 1.
Sebuah permutasi dari 256 kemungkinan byte. 2. 2 Indeks-pointer 8-bit. Permutasi di
inisialisasi dengan sebuah variabel panjang kunci, biasanya antara 40 sampai 256 bit
dengan menggunakan algoritma key-scheduling (KSA). Setelah proses ini selesai, stream
yang terdiri dari sekumpulan bit tersebut terbentuk dengan menggunakan Pseudo-Random
Generation Algorithm (PRGA).
6
2. Pseudo-Random Generation Algortihm
PRGA (Pseudo-Random Generation Algortihm) memodifikasi state dan output
sebuah byte dari keystream. Hal ini penting karena banyaknya dibutuhkan iterasi. Dalam
setiap iterasi, PRGA menginkremen i, menambahkan nilai S yang ditunjuk oleh i sampai
j, kemudian menukar nilai S[i] dan S[j], lalu mengembalikan elemen dari S di lokasi S[i]
+ S[j] (modulo 256). Setiap elemen S ditukar dengan elemen lainnya paling tidak satu
kali setiap 256 iterasi.
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 diulangi sampai seluruh array K[0], K[1], ……., K[255]
terisi seluruhnya. Proses inisialisasi S-Box (Array S)
7
8
Byte K di-XOR kan dengan plaintext untuk menghasilkan ciphertext atau di XOR kan
dengan ciphertext untuk menghasilkan plaintext. Enkripsi sangat cepat kurang lebih 10
kali lebih cepat dari DES.
Berikut adalah contoh penerapan algoritma RC4 dengan mode 4 byte (agar lebih
sederhana). Pertama inisialisasi S-Box dengan panjang 4 byte, dengan S[0]=0, S[1]=1,
S[2]=2, dan S[3]=3 sehingga array S menjadi :
0123
Inisialisasi 4 byte kunci array, Ki. Misalkan kunci terdiri dari 2 byte yaitu byte 1 dan
byte 7. Ulang kunci sampai memenuhi seluruh array K sehingga array K menjadi :
17 1 7
For i = 0 to 4
Dengan algoritma seperti diatas maka nilai awal i=0 sampai i=3 akan menghasilkan
9
array S seperti berikut :
Iterasi pertama :
i = 0, maka
= (0 + 0 + 1 ) mod 4
=1
10 2 3
Iterasi kedua :
i = 1, maka
= (1 + 0 + 7 ) mod 4 = 0
0123
Iterasi ketiga :
i = 2, maka
= (0 + 2 + 1 ) mod 4
=3
0132
10
Iterasi keempat :
i = 3, maka
= (3 + 2 + 7 ) mod 4
=0
2130
Setelah didapat hasil array S dari iterasi keempat, maka proses selanjutnya yaitu meng-
XOR-kan pseudo random byte dengan plaintext, misalnya plaintext yang dimasukkan
adalah “HI”.
Karena plaintext terdiri dari dua karakter maka terjadi dua iterasi. Iterasi pertama yaitu :
i = 0; j = 0;
i = ( i + 1 ) mod 4
= (0 + 1 ) mod 4
=1
Dan
j = ( j + S[i] ) mod 4
= ( 0 + 2 ) mod 4
=2
Swap S[i] dan S[j] yaitu S[1] dan S[2] sehingga array S menjadi :
2310
= ( 3 + 1 ) mod 4
11
=0
K = S[t] = S[0] = 2
Byte dua/K inilah yang di-XOR-kan dengan plaintext “H”. Selanjutnya iterasi keduanya
yaitu :
i = 1; j = 2
i = ( i + 1 ) mod 4
= ( 1 + 1 ) mod 4
=2
Dan
j = ( j + S[i] ) mod 4
= ( 2 + 2 ) mod 4 = 0
Swap S[i] dan S[j] yaitu S[2] dan S[0] sehingga array S menjadi :
1320
= ( 2 +1 ) mod 4
=3
K = S[t] = S [3] = 2
13
BAB IV ANALISIS DAN PEMBAHASAN
14
4.2 Keamanan RC4
Tidak seperti stream cipher modern, RC4 tidak mengambil nonce yang terpisah
bersamaan dengan kunci. Hal ini berarti jika kunci single long-term digunakan untuk
mengenkripsi beberapa stream, kriptosistemnya harus menentukan bagaimana cara
mengombinasikan nonce tersebut dan kunci long-term untuk menghasilkan kunci stream untuk
RC4. Sebuah pendekatan untuk menangani hal tersebut adalah dengan membuat sebuah kunci
RC4 dengan menggunakan fungsi hash. Enkripsi dengan menggunakan RC4 dapat diterobos
dan rentan terhadap bit-flipping attack. Untuk menanggulangi hal ini, skema enkripsi harus
dikombinasikan dengan message authentication code yang kuat.
Pada tahun 2001 Fluhrer, Martin, dan Shamir membuat suatu penemuan yang
mengejutkan. Dari semua kemungkinan kunci RC4, statistik untuk beberapa byte yang pertama
dari keluaran keystream sangat tidak random, dan membocorkan informasi untuk kunci ini. Jika
kunci long-term dikonkat dengan nonce untuk menghasilkan kunci RC4, kunci long-term
ini dapat ditemukan dengan menganalisis sejumlah besar pesan yang dienkripsi dengan kunci
ini. Efek ini dugunakan untuk menerobos enkripsi WEP dengan jaringan wireless 802.11. Hal
ini menyebabkan perebutan untuk pengganti standard WEP.
Pada tahun 2005, Andreas Klein mempresentasikan sebuah analisis terhadap RC4 stream
cipher yang menunjukan lebih banyak korelasi antara keystream RC4 dan kunci tersebut. Erik
Tews, Ralf-Philip Weinmann, dan Andrei Pychkine menggunakan analisis ini untuk membuat
aircrack-ptw, yaitu sebuah perangkat untuk memecahkan 104-bit RC4 yang digunakan di 128-
bit WEP dalam waktu 1 menit.
15
BAB V PENUTUP
16
DAFTAR PUSTAKA
17