rc4 citra encryption

6
IMPLEMENTASI ALGORTIMA ENKRIPSI RC4 UNTUK ENKRIPSI DAN DEKRIPSI CITRA . Erfan Hasmin STMIK Dipanegara Jl. P. Kemerdekaan KM.9 Makassar 0411-5!194"01#4#51$$!$ erfan.%asmin&gmail.'(m Abstract )ilai 'i*ra digi*al +ang *er,s menigka* seiring erkem angn+a pengg,naa 'i*radigi*al men adikan ke ,*,%an pengamanan da*a *er,*ama dapa* pengiriman 'i*ra digi*al di dalam aringan k(mp,*er p,n men er agai *eknik ekripsi dapa* diimpelemen*asikan dalam mengenkripsi 'i*ra. Pada peneli*ian ini peneli*i mengk(m inasikan *eknik krip*(grafi 4 +ang erf(k,s pada peningka*an k,n'i demi meningka*kan kera%asian k,n'i/ ser*a *eknik enkrispsi Cipher Blok Chaining, kele i%an *ek pengar,% enkripsi i* saa* ini sanga* ergan*,ng pada pr(ses enkripsi i* se el,mn+a. General Terms En'r+p*i(n 2lg(ri*%ms Keywr!s 2lg(ri*ma 4/ Enkripsi i*ra ". Pen!a#$l$an nilai g,na da*a digi*al dalam %al ini 'i*ra/ semakin l,asdalam pengg,naan+a/ semakin l,as peng,naan 'i*ra digi*al +ang *ak *er a*as se agai k(leksi pri adi *api mel,as dengan dig,nakann+a 'i*ra digi*al se agai arang ,k*i erkek,a*an %,k,m/ kar+a seni f(*(grafi +ang p,n+a nilai ,al *inggi dan lain-lain. men,n*,* di ,*,%kan+a se ,a% *ekn(l(gi +ang dapa* men aga keamanan 'i*ra pada saa* 'i*ra *erse ,* di dis*ri ,sikan. ada d,a ma'am pr(*(k(l krip*(grafi +ang p(p,ler/ +ai*,3 symmetric-key dan asymmetric-key. Pada pr(*(k(l symmetric-key/ se ,a% k,n'i k,n'i ra%asia a*a, k,n'i pri a*6 dig,nakan (le% ked,a pi%ak +ang erk(m,nikasi ,n*,k mengenkripsi dan mendekripsi pesan. Pr(*(k(l enis inis,da% lama dig,nakan. Penem,an pr(*(k(l ini diperkirakan seki*ar *a%,n 1900 7 / +ang melip,*i k(de krip*(grafi dan *eknik 'ip%er '(n*(%n+a aesar ip%er/Hill ip%er/ 8ernam ip%er6. Sedangkan pada pr(*(k(l krip*(grafi dengan asymmetric key / sa*, k,n'i di se arl,askan ke p, lik dan mena%an +ang lainn+a se agai private key. Private key *erse ,* didesain agar s,li*,n*,k dipe'a%kan/ ala,p,n *ela% menge*a%,i k,n'i +ang dise arl,askan ke p, lik 2lg(r*ima 4 mer,pakan alg(ri*ma sime*ris +ang erf(k,s pada *eknik menigka*kan pr( a ili*as k,n'i ,n,*k men amin kera%asian k,n'i. %. R$m$san Masala# 7agaimana mengimplem*asikan alg(r*ima 4 ,n*,k enkripsi dan dekripsi ,n*,k mengamankan 'i*ra pada pr(ses pengiriman. &. 'as(l Dan Pemba#asan S)ema E)r(*s( C(tra Skema dalam mengenkripsi 'i*ra dapa* dili%a* pada gam ar 1 di a a% ini. J,fri STMIK Dipanegara Jl. P. Kemerdekaan KM.9 Makassar 0411-5!194"01$4$11$!4 J,fri.ldp &gmail.'(m

Upload: erfan-hasmin

Post on 05-Oct-2015

220 views

Category:

Documents


1 download

DESCRIPTION

Jurnal Penelitian

TRANSCRIPT

IMPLEMENTASI ALGORTIMA ENKRIPSI RC4 UNTUK ENKRIPSI DAN DEKRIPSI CITRA .Erfan Hasmin

STMIK Dipanegara

Jl. P. Kemerdekaan KM.9

Makassar

0411-587194/081343512272

[email protected]

Jufri

STMIK Dipanegara

Jl. P. Kemerdekaan KM.9

Makassar

0411-587194/08124211274

[email protected]

AbstractNilai citra digital yang terus menigkat seiring berkembangnya penggunaa citra digital menjadikan kebutuhan pengamanan data terutama dapat pengiriman citra digital di dalam jaringan komputer pun meningkat, berbagai teknik ekripsi dapat diimpelementasikan dalam mengenkripsi citra.Pada penelitian ini peneliti mengkombinasikan teknik kriptografi RC4 yang berfokus pada peningkatan probabilitas kunci demi meningkatkan kerahasian kunci, serta teknik enkrispsi Cipher Blok Chaining, kelebihan teknik ini adalah pengaruh enkripsi bit saat ini sangat bergantung pada proses enkripsi bit sebelumnya. General TermsEncryption Algorithms

KeywordsAlgoritma RC4, Enkripsi Citra

1. Pendahuluannilai guna data digital dalam hal ini citra, semakin luas dalam penggunaanya, semakin luas pengunaan citra digital yang tak terbatas sebagai koleksi pribadi tapi meluas dengan digunakannya citra digital sebagai barang bukti berkekuatan hukum, karya seni fotografi yang punya nilai jual tinggi dan lain-lain. menuntut dibutuhkanya sebuah teknologi yang dapat menjaga keamanan citra pada saat citra tersebut di distribusikan.ada dua 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 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 publikAlgortima RC4 merupakan algoritma simetris yang berfokus pada teknik menigkatkan probabilitas kunci unutk menjamin kerahasian kunci.

2. Rumusan Masalah Bagaimana mengimplemtasikan algortima RC4 untuk enkripsi dan dekripsi untuk mengamankan citra pada proses pengiriman.

3. Hasil Dan PembahasanSkema Ekripsi CitraSkema dalam mengenkripsi citra dapat dilihat pada gambar 1 dibawah ini.

Gambar 1. Skema Enkripsi Citra Implementasi Algortima Kunci RC4Pembangkit Kunci RC4RC4 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). Permutasi di inisialisasi dengan sebuah variabel panjang kunci, 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).

key-scheduling (KSA)Algoritma key scheduling digunakan untuk menginisialisasi permutasi di array S. panjang kunci didefinisikan sebagai jumlah byte di kunci dan mempunyai rentang panjang kunci dari 1 sampai 256, khususnya antara 5-16 tergantung dari panjang kunci 40128bit. Pertama-tama array S diinisialisasi untuk identitas permutasi. S kemudian diproses ke 256 iterasi dengan cara yang sama dengan PRGA utama, tapi juga dikombinasikan dalam byte dari kunci dalam waktu yang bersamaan. Berikut Pseudocode algoritma KSA :for i from 0 to 255 S[i] := i Endfor j := 0 for i from 0 to 255c swap values of S[i] and S[j] endfordan berikut implementasi adalah algoritma KSA dalam Javascript :function KSA(key_length) {for (i = 0; i < 256; i++){S[i] = i; }for (i = j = 0; i < 256; i++) {j = (j + key[i % key_length] + S[i]) & 255;swap(i, j); }i = j = 0;}

Pseudo-Random Generation AlgortihmPRGA (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.Pseudocode algoritma PRGA dapat dilihat sebagai berikut :i := 0 ; j := 0 while GeneratingOutput: i := (i + 1) mod 256 j := (j + S[i]) mod 256 swap values of S[i] and S[j] K := S[(S[i] + S[j]) mod 256] output K endwhile

Implementasi Algortima PRGA

function PRGA( ) {i = (i + 1) & 256;j = (j + S[i]) & 256;swap( i, j);return S[(S[i] + S[j]) & 1256];}

Hasil Implementasi Hasil implemtasi RC4 dapat dilihar pada gambar 2 dibawah ini.

Gambar 2. Kunci yang telah dimodifikasi dengan algoritma RC4Enkripsi CitraMetode enkripsi yang digunakan menggunakan skema Cipher Blok Chaining dimana setiap stream sebelum tiap citra di enkripsi dengan kunci terlebih dahulu pixel citra di Xor dengan citra cipher pada pixel sebelumnya

Gambar 3. Skema enkripsi tiap pixel di dalam citra

skema Enkripsi Cipher Blok Chaining Enkripsi Gambar Pixel pertama Diketahui RGB Value = 45, 78, 123 C0= 0 Kunci = 161Hitung RGB : 45 101101 , 78 1001110 123 1111011C0 : 000000 0000000 0000000Xor 101101 1001110 1111011Kunci:161 10100001 10100001 10100001 Xor 10001100 11101111 11011010 140 239 218Nilai RGB setelah di enkripsi 140,239,218

Enkripsi Gambar Pixel KeduaDiketahui RGB Value = 97 , 8, 23 C1= 140,239,218 RGB Pixel SebelumnKunci = 161Hitung RGB : 97 1100001 , 8 1000. 23 10111 C : 140 10001100 ,239 11101111,218 11011010 Xor 11101101 11100111 11001101 Kunci: 161 10100001 10100001 10100001 Xor 01001100 01000110 01101100 76 70 108 Nilai RGB setelah di enkripsi 76, 70, 108

Skenario yang sama seperti perhitungan yang sama diatas dilakukan berulang kali untuk setipa pixel didalam citra, sehingga akan menghasilkan nilai RGB tiap pixel telah berubah dari citra plain sebenarnya. Hasil enkripsi citra dapat dilihat pada gambar dibawah ini

Gambar 4 Hasil Enkripsi Citra

Dekripsi CitraMetode dekripsi yang digunakan menggunakan skema Cipher Blok Chaining dimana setiap stream citra di enkripsi dengan kunci kemudian di Xor dengan terlebih dahulu pixel citra di Xor dengan citra cipher pada pixel sebelumnya

Gambar 5. Skema dekripsi tiap pixel di dalam citra

Dekripsi Cipher Blok Chaining Dekripsi Gambar Pixel pertama Diketahui RGB Value = 140,239,218 C0= 0Kunci = 161Hitung: RGB : 140 10001100 ,239 11101111,218 11011010Kunci: 161 10100001 10100001 10100001 Xor 101101 1001110 1111011 C0 : 000000 0000000 0000000 Xor 101101 1001110 1111011 45 78 123 Nilai RGB setelah di dekripsi 45,78,123

Dekripsi Gambar Pixel KeduaDiketahui RGB = 76, 70, 108C1= 140,239,218 RGB Pixel Sebelumnya Kunci = 161Hitung: RGB : 76 01001100,70 01000110,108 01101100 Kunci: 161 10100001 10100001 10100001 Xor 11101101 11100111 11001101 C1:140 10001100, 23911101111, 218 11011010Xor 1100001 1000 10111 97 8 23 Nilai RGB setelah di enkripsi 97,8, 23

Skenario yang sama seperti perhitungan yang sama diatas dilakukan berulang kali untuk setiap pixel didalam citra cipher, sehingga akan menghasilkan nilai RGB tiap pixel telah berubah dari citra sebenarnya. Hasil dekripsi citra dapat dilihat pada gambar dibawah 6

Gambar 6. Hasil Dekripsi CitraUji Coba Enkripsi Citra1. Dipenegara.jpg

Gambar 7. Hasil Ujicoba Citra Dipanegara.jpg

2. Android.JPG

Gambar 8. Hasil Ujicoba Citra Android.jpg

3. Dirgaharu.png

Gambar 9 Hasil Ujicoba Citra Dirgahayu.png

4. Bendera.png

Gambar 10. Hasil Ujicoba Bendera.png

5. MakassarVisit.png

Gambar 11. Hasil Ujicoba Bendera.png

Hasil Uji CobaTabel 1. Daftar Citra Plain Yang Akan Di enkripsiNoNama CitraJenisSize

1Dipanegara.jpgjpg12 KB

2android_vector.jpgjpg25 KB

3makassar.jpgjpg18 KB

4Bendera.pngpng2 KB

5dirgahayu.pngpng6KB

Tabel 2 Daftar Citra CipherNoNama CitraJenisSize AwalSizeCipher

1DipanegaraC.jpgjpg12 KB32 KB

2android_vectorC.jpgjpg25 KB45 KB

3makassarC.jpgjpg18 KB63 KB

4benderaC.pngpng2 KB2 KB

5dirgahayuric.pngpng6KB6 KB

4. KesimpulanDari penelitian ini ada beberapa kesimpulan yang dapat kami simpulkan diantarnya :a. Karena nilai RGB maksimum 256 maka apabial hasil enkripsi nilai RGB lebih dari 256 maka inilah yang menghasilkan beberapa bagian citra menjadi rusakb. Dari hasil ujicoba pad beberapa citra maka disimpulkan bahwa citra hasil enkripsi cenderung lebih besar kapasitasnya dibanding citra aslinya.c. Karakter citra yang memanipulasi tiap pixel menjadikan hasil eksripsi berubah tiap pixelnya tetapi masih dapat terlihat pola dar icitra tersebut, sehinggan diperlukan sebuah algortima tranposisi untuk mengubha pola agar citra cipher lebih sulit di pecahkan.

5. SaranUntuk peneliti yang berminat untuk menerukan penelitian ini agar berfokus pada pengembangan algortima traposisi untuk mengubah pola citra yang suda di enkripsi.

6. Daftar Pustaka[1] Arie Pratama Sutiono Algoritma RC4 sebagai Perkembangan Metode Kriptografi Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, 2011 [2]Rinaldi Munir .,Kriptografi Informatika, Bandung 2006 [3]Sutoyo Pengelolaan Citra Digital, Andi Offset, Yogyakarta 2009.

EnkripsiRC4

Plain Image

Key

Key

ImageResult

DekripsiRC4

Cipher Image