• Tidak ada hasil yang ditemukan

IMPLEMENTASI DAN PENGUJIAN

4.2 Pengujian Sistem

Pengujian pada sistem yang telah dibangun adalah untuk membuktikan apakah sistem yang dibuat dapat berjalan dengan baik dan benar dengan menggunakan Algoritma RC4-P1 dan Algoritma ElGamal dengan menggunakan metode hybrid.

Kriteria pengujian sistem adalah :

1. Plaintext yang diinputkan oleh pengirim adalah file yang berekstensi *.docx.

2. Ciphertext hasil enkripsi yang disimpan dalam bentuk file yang berekstensi

*.docx. Dan Plaintext hasil dekripsi disimpan dalam bentuk file yang berekstensi *.docx.

3. Menganalisa waktu enkripsi dan dekripsi pada pengamanan file teks dalam millisecond.

4.2.1 Pengujian Pembangkit Kunci

Sebelum melakukan proses enkripsi dan dekripsi, penerima pesan harus membangkitkan kunci terlebih dahulu. Untuk melakukan proses ini, penerima pesan harus menekan tombol Generate untuk menghasilkan nilai p, alpha, a, beta.

Pembangkit kunci pada sistem dapat dilihat pada gambar 4.7.

Gambar 4.7. Hasil Nilai Pembangkit Kunci

Nilai yang didapat dari pembangkit kunci dibagi menjadi dua bagian yaitu Public Key ( p = 5507, alpha = 3032, beta = 853 ) dan Private Key ( a = 2691 ).

Maka dilakukan perhitungan untuk membuktikan bahwa nilai yang diperoleh sesuai dengan rumus yang telah ditentukan.

1. Bilangan Prima p = 5507, diuji dengan menggunakan Teorema Fermat.

Selanjutnya nilai bilangan prima akan dihitung jumlah digitnya.

Untuk p = 5507 memiliki jumlah digit = 4.

Pilih suatu bilangan acak a antara 1 hingga p – 1.

Maka nilai a akan diacak sebanyak 4 kali. Dan disetiap perulangan, nilai a tidak boleh ada yang sama.

Contoh :

Untuk Perulangan 1 : a = 4833

mod p = mod 5507 = 1

Jika mod p = 1, maka dapat dikatakan bahwa 5507 adalah bilangan prima.

Untuk Perulangan 2 : a = 800

mod p = mod 5507 = 1

Jika mod p = 1, maka dapat dikatakan bahwa 5507 adalah bilangan prima.

Untuk Perulangan 3 : a = 2609

mod p = 2 mod 5507 = 1

Jika mod p = 1, maka dapat dikatakan bahwa 5507 adalah bilangan prima.

Untuk Perulangan 4 : a = 4988

mod p = mod 5507 = 1

Jika mod p = 1, maka dapat dikatakan bahwa 5507 adalah bilangan prima.

2. Menguji Elemen Primitif : α = 3032 = = = = 2 Hitung :

mod p = 2 mod 5507 = 9193024 mod 5507

= 1841

mod p = 2 mod 5507 = 5506

Terbukti α = 3032 merupakan elemen primitive karena mod p ≠ 1 dan mod p ≠ 1

3. Menguji nilai β = 853 β = mod p

= 2 mod 5507 = 853

Terbukti β = 853 sesuai dengan perhitungan oleh sistem.

Maka, berdasarkan perhitungan diatas diperoleh Public Key ( p = 5507, alpha = 3032, beta = 853 ) dan Private Key ( a = 2691 ).

4.2.2 Pengujian Enkripsi Algoritma RC4-P1

Setelah penerima pesan melakukan proses pembangkitan kunci. Langkah selanjutnya yaitu pengirim pesan melakukan proses enkripsi pesan. Sebelum melakukan proses enkripsi, terlebih dahulu pengirim mengambil file yang telah tersimpan dengan menekan tombol Browse. Lalu pengirim memasukkan kunci yang akan digunakan pada proses enkripsi. Untuk melakukan proses enkripsi, pengirim menekan tombol Enkripsi dan sistem akan menampilkan hasil enkripsi berupa Ciphertext pada richtextbox. Kemudian menekan tombol Simpan untuk menyimpan Ciphertext. Hasil pengujian sistem ditunjukkan pada gambar 4.8.

Gambar 4.8. Hasil Enkripsi Algoritma RC4-P1

Perhitungan dilakukan dengan menggunakan kode ASCII (American Standard Code For Information Intercharge) 256 karakter (8 bit). Plaintext yang digunakan pengirim adalah file yang berisi karakter “SYAHNAN” dan kunci yang dimasukkan pengirim adalah “HAI”.

Plaintext = [SYAHNAN]

Kunci = [HAI] = [72 65 73] (Dalam ASCII) Maka panjang kuncinya adalah 3 karakter dengan : Larik kunci key[0] = “H” = 72

Larik kunci key[1] = “A” = 65 Larik kunci key[2] = “I” = 73 Untuk i = 0

S [0] = 0

T [0] = k [0 mod 3]

= k [0]

= 72 Untuk i = 1

S [1] = 1

T [1] = k [1 mod 3]

= k [1]

= 65 Untuk i = 2

S [2] = 2

T [2] = k [2 mod 3]

= k [2]

= 73 Untuk i = 3

S [3] = 3

T [3] = k [3 mod 3]

= k [0]

= 72

Untuk i = 4 S [4] = 4

T [4] = k [4 mod 3]

= k [1]

= 65 Untuk i = 5

S [5] = 5

T [5] = k [5 mod 3]

= k [2]

= 73

Dilanjutkan sampai i = 255 j = 0

Untuk i = 0

j = (0+S[0]+T[0]) mod 256 = (0+0+72) mod 256 = 72 mod 256 = 72

swap(S[0],S[0+72+1])=swap(S[0],S[73]) S[0] = 73

S[73] = 0 Untuk i = 1

j = (72+S[1]+T[1]) mod 256 = (72+1+65) mod 256 = 138 mod 256 = 138

swap(S[1],S[1+138+1])=swap(S[1],S[140]) S[1] = 140

S[140] = 1 Untuk i = 2

j = (138+S[2]+T[2]) mod 256

= (138+2+73) mod 256 = 213 mod 256

= 213

swap(S[2],S[2+213+1])=swap(S[2],S[216]) S[2] = 216

S[216] = 2 Untuk i = 3

j = (213+S[3]+T[3]) mod 256 = (213+3+72) mod 256 = 288 mod 256

= 32

swap(S[3],S[3+32+1])=swap(S[3],S[36]) S[3] = 36

S[36] = 3 Untuk i = 4

j = (32+S[4]+T[4]) mod 256 = (32+4+65) mod 256 = 101 mod 256 = 101

swap(S[4],S[4+101+1])=swap(S[4],S[106]) S[4] = 106

S[106] = 4 Untuk i = 5

j = (101+S[5]+T[5]) mod 256 = (101+5+73) mod 256 = 179 mod 256

= 179

swap(S[5],S[5+179+1])=swap(S[5],S[185]) S[5] = 185

S[185] = 5

Dilanjutkan sampai i = 255

Tabel 4.1. Larik 256 Byte Hasil Perhitungan Tahap Key Scheduling

0 1 2 3 4 5 6 7 8 9 10 11 12 13

39 21 216 141 113 185 234 81 161 243 63 139 247 56 14 15 16 17 18 19 20 21 22 23 24 25 26 27 144 232 16 149 240 79 96 138 89 186 27 42 218 38 28 29 30 31 32 33 34 35 36 37 38 39 40 41 75 105 103 200 94 156 244 57 5 191 14 34 4 167 42 43 44 45 46 47 48 49 50 51 52 53 54 55 55 127 119 187 150 49 23 193 15 253 134 82 143 74 56 57 58 59 60 61 62 63 64 65 66 67 68 69 205 104 53 215 92 219 225 182 160 207 137 203 84 22 70 71 72 73 74 75 76 77 78 79 80 81 82 83 43 214 30 112 80 87 76 227 110 174 115 65 117 125 84 85 86 87 88 89 90 91 92 93 94 95 96 97 116 48 95 71 229 17 32 133 85 152 241 201 114 248

98 99 100 101 102 103 104 105 106 107 108 109 110 111 164 170 91 86 146 47 107 88 66 25 122 24 223 145 112 113 114 115 116 117 118 119 120 121 122 123 124 125 45 106 173 46 183 58 109 51 237 100 238 254 108 90 126 127 128 129 130 131 132 133 134 135 136 137 138 139 102 18 159 73 162 155 98 54 211 165 151 78 140 226 140 141 142 143 144 145 146 147 148 149 150 151 152 153 130 36 67 236 121 222 142 52 40 235 202 28 128 194 154 155 156 157 158 159 160 161 162 163 164 165 166 167 68 250 196 204 176 37 6 131 77 2 199 245 177 10 168 169 170 171 172 173 174 175 176 177 178 179 180 181

11 210 198 44 20 224 175 31 212 61 158 13 59 132 182 183 184 185 186 187 188 189 190 191 192 193 194 195

206 97 99 208 123 1 93 172 153 166 118 126 0 231 196 197 198 199 200 201 202 203 204 205 206 207 208 209 33 252 239 217 83 171 192 72 221 64 213 228 147 168 210 211 212 213 214 215 216 217 218 219 220 221 222 223 179 246 209 157 190 255 154 35 62 41 249 50 230 135 224 225 226 227 228 229 230 231 232 233 234 235 236 237 163 7 60 169 220 129 251 184 181 3 8 70 9 120 238 239 240 241 242 243 244 245 246 247 248 249 250 251 136 189 26 101 178 19 197 180 12 233 242 195 148 124 252 253 254 255

29 188 111 69

Untuk Tahap Pseudo-Random Generation Algorithm (PRGA) Karakter “S”

i=0 ; j=0 ;

i = (i+1) mod 256 = (0+1) mod 256

= 1 mod 256

= 1

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

= (0+21) mod 256

= 21 mod 256

= 21 S[1] = 21 ; S[1+21+1] = S[23] = 186 swap(S[1],S[128])

S[1] = 186 ; S[23] = 21

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

= (186+138) mod 256

= 324 mod 256

= 68 Z = S[68] = 84

Kemudian lakukan XOR S = 83

Z = 84

83 = 01010011 84 = 01010100

= 00000111 = 7 10 dalam tabel ASCII merupakan “ĉ“

Karakter “Y”

i=1 ; j=21 ;

i = (i+1) mod 256 = (1+1) mod 256

= 2 mod 256

= 2

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

= (21+216) mod 256

= 237 mod 256

= 237 S[2] = 216 ; S[2+237+1] = S[240] = 26 swap(S[2],S[240])

S[2] = 26 ; S[240] = 216

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

= (26+120) mod 256

= 146 mod 256

= 146 Z = S[146] = 142

Kemudian lakukan XOR Y = 89

Z = 142

89 = 01011001 142 = 10001110

= 11010111 = 21510 dalam tabel ASCII merupakan “ד Karakter “A”

i=2 ; j=237 ;

i = (i+1) mod 256 = (2+1) mod 256

= 3 mod 256

= 3

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

= (237+141) mod 256

= 378 mod 256

= 122 S[3] = 141 ; S[3+122+1] = S[126] = 102 swap(S[3],S[126])

S[3] = 102 ; S[126] = 141

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

= (102+238) mod 256

= 340 mod 256

= 84 Z = S[84] = 116

Kemudian lakukan XOR A = 65

Z = 116

65 = 01000001 116 = 01110100

= 00110101 = 5310 dalam tabel ASCII merupakan “5“ Karakter “H”

i=3 ; j=122 ;

i = (i+1) mod 256 = (3+1) mod 256

= 4 mod 256

= 4

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

= (122+113) mod 256

= 235 mod 256

= 235 S[4] = 113 ; S[4+235+1] = S[240] = 216

swap(S[4],S[240])

S[4] = 216 ; S[240] = 113

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

= (216+70) mod 256

= 286 mod 256

= 30 Z = S[30] = 103

Kemudian lakukan XOR H = 72

Z = 103

72 = 01001000 103 = 01100111

= 00101111 = 4710 dalam tabel ASCII merupakan “/” Karakter “N”

i=4 ; j=235 ;

i = (i+1) mod 256 = (4+1) mod 256

= 5 mod 256

= 5

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

= (235+185) mod 256

= 420 mod 256

= 164 S[5] = 185 ; S[5+164+1] = S[170] = 198 swap(S[5],S[170])

S[5] = 198 ; S[170] = 185

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

= (198+199) mod 256

= 397 mod 256

= 141 Z = S[141] = 36

Kemudian lakukan XOR

N = 78 Z = 36

78 = 01001110 36 = 00100100

= 01101010 = 10610 dalam tabel ASCII merupakan “j“ Karakter “A”

i=5 ; j=164 ;

i = (i+1) mod 256 = (5+1) mod 256

= 6 mod 256

= 6

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

= (164+234) mod 256

= 398 mod 256

= 142 S[6] = 234 ; S[6+142+1] = S[149] = 235 swap(S[6],S[149])

S[6] = 235 ; S[149] = 234

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

= (235+67) mod 256

= 302 mod 256

= 46 Z = S[46] = 150

Kemudian lakukan XOR A = 65

Z = 150

65 = 01000001 150 = 10010110

= 11010111 = 21510 dalam tabel ASCII merupakan “ד Karakter “N”

i=6 ; j=142 ;

i = (i+1) mod 256 = (6+1) mod 256

= 7 mod 256

= 7

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

= (142+81) mod 256

= 223 mod 256

= 223 S[7] = 81 ; S[7+223+1] = S[231] = 184 swap(S[7],S[231])

S[7] = 184 ; S[231] = 81

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

= (184+135) mod 256

= 319 mod 256

= 63 Z = S[63] = 182

Kemudian lakukan XOR N = 78

Z = 182

78 = 01001110 182 = 10110110

= 11111000 = 24810 dalam tabel ASCII merupakan “øPlaintext = [SYAHNAN]

Plaintext = [83 89 65 72 78 65 78] (dalam nilai ASCII)

Plaintext = [01010011, 01011001, 01000001, 01001000, 01001000, 01000001, 01001110]

Keystream = [84 142 116 103 36 150 182]

Keystream = [01010100, 10001110, 01110100, 01100111, 00100100, 10010110, 10110110]

Ciphertext = Plaintext XOR Keystream

Ciphertext = [00000111, 11010111, 00110101, 00101111, 01101010, 11010111, 11111000]

Ciphertext = [7 215 53 47 106 215 248] (dalam nilai ASCII)

4.2.3 Pengujian Enkripsi Algoritma ElGamal

Kunci public yang telah dibangkitkan oleh penerima pesan, akan digunakan untuk proses enkripsi. Untuk melakukan proses enkripsi kunci, pengirim pesan terlebih dahulu mengambil file yang berisikan pembangkit kunci yang telah dibangkitkan oleh penerima pesan. Kemudian pengirim menekan tombol Enkripsi Kunci untuk menghasilkan Cipherkey pada textbox dengan label Cipherkey. Kemudian pengirim menekan tombol simpan untuk menyimpan hasil Cipherkey. Hasil proses enkripsi kunci pada sistem ditunjukkan pada gambar 4.9.

Gambar 4.9. Hasil Enkripsi Kunci Algoritma ElGamal

Kunci yang dimasukkan oleh pengirim adalah “HAI”. Karakter tersebut akan diubah kedalam bentuk ASCII. Kemudian akan di enkripsi dengan menggunakan Kunci Public ElGamal yang telah dibangkitkan.

Key = [HAI]

Tabel 4.2. Konversi Kunci kedalam Kode ASCII

i Karakter Plaintext Mi ASCII

1 H M1 072

2 A M2 065

3 I M3 073

Kunci Public (p, alpha, beta) = (5507, 3032, 853).

Hitung nilai r dan t. Kemudian menentukan bilangan acak k (k {0,1,2,...,5507}

yang dijaga kerahasiaannya untuk setiap plaintext M dan mengenkripsi plaintext tersebut dengan menghitung nilai r dan t.

1. Nilai (M,k) = (72,3272) r = αk (mod p)

= 30323272 (mod 5507)

= 1177

t = βk. M (mod p)

= 8533272. 72 (mod 5507)

= 1500

Maka diperoleh nilai r = 1177 dan nilai t = 1500 2. Nilai (M,k) = (65,5485)

r = αk (mod p)

= 30325485 (mod 5507)

= 2026

t = βk. M (mod p)

= 8535485. 65 (mod 5507)

= 326

Maka diperoleh nilai r = 2026 dan nilai t = 326 3. Nilai (M,k) = (73,4943)

r = αk (mod p)

= 30324943 (mod 5507)

= 648

t = βk. M (mod p)

= 8534943. 74 (mod 5507)

= 3286

Maka diperoleh nilai r = 648 dan nilai t = 3286

Proses enkripsi kunci dengan menggunakan Algoritma ElGamal dapat dilihat pada tabel dibawah ini :

Tabel 4.3. Perhitungan Proses Enkripsi

i Mi ki r = αk (mod p) t = βk. M (mod p)

1 72 3272 1177 1500

2 65 5485 2026 326

3 73 4943 648 3286

4.2.4 Pengujian Dekripsi Algoritma ElGamal

Pada tahap ini, private key yang telah dibangkitkan oleh penerima pesan digunakan untuk proses dekripsi kunci. Sebelum melakukan dekripsi kunci, terlebih dahulu penerima pesan mengambil key hasil enkripsi ElGamal. Setelah cipherkey dimasukkan maka akan muncul datanya pada textbox. Kemudian penerima pesan menekan tombol Dekripsi Kunci untuk menampilkan kunci hasil dekripsi yang akan ditampilkan pada textbox dengan label Kunci. Hasil proses dekripsi kunci ditunjukkan pada gambar 4.10.

Gambar 4.10. Hasil Dekripsi Kunci Algoritma ElGamal

Kunci private key dimasukkan 2 buah bilangan yaitu (p,a) = (5507,2691).

Kemudian bilangan tersebut dan hasil cipherkey akan diproses untuk menghasilkan kunci yang semula.

Maka diperoleh nilai M = 73 yang diubah kedalam ASCII adalah I, sesuai dengan key.

Tabel 4.4. Perhitungan Proses Dekripsi Kunci Algoritma ElGamal i r t Zi = (r a)-1 mod p Mi = t.(r a)-1 mod p Plaintext

1 1177 1500 749 72 H

2 2026 326 1605 65 A

3 648 3286 1872 73 I

4.2.5 Pengujian Dekripsi Algoritma RC4-P1

Pada tahap ini, hasil ciphertext akan diubah menjadi plaintext. Penerima menekan tombol Browse untuk mengambil file hasil Ciphertext yang telah disimpan.

Kemudian untuk melakukan proses dekripsi pesan penerima menekan tombol Dekripsi File untuk menampilkan pesan asli. Hasil dekripsi pesan ditunjukkan pada gambar 4.11.

Gambar 4.11. Hasil Dekripsi Algoritma RC4-P1

Karakter “ĉ”

i=0 ; j=0 ;

i = (i+1) mod 256 = (0+1) mod 256

= 1 mod 256

= 1

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

= (0+21) mod 256

= 21 mod 256

= 21 S[1] = 21 ; S[1+21+1] = S[23] = 186 swap(S[1],S[128])

S[1] = 186 ; S[23] = 21

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

= (186+138) mod 256

= 324 mod 256

= 68 Z = S[68] = 84

Kemudian lakukan XOR ĉ = 7

Z = 84

7 = 00000111 84 = 01010100

= 01010011 = 83 10 dalam tabel ASCII merupakan “S“ Karakter “×

i=1 ; j=21 ;

i = (i+1) mod 256 = (1+1) mod 256

= 2 mod 256

= 2

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

= (21+216) mod 256

= 237 mod 256

= 237 S[2] = 216 ; S[2+237+1] = S[240] = 26 swap(S[2],S[240])

S[2] = 26 ; S[240] = 216

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

= (26+120) mod 256

= 146 mod 256

= 146 Z = S[146] = 142

Kemudian lakukan XOR

× = 215 Z = 142

215 = 11010111 142 = 10001110

= 01011001 = 8910 dalam tabel ASCII merupakan “Y “ Karakter “5

i=2 ; j=237 ;

i = (i+1) mod 256 = (2+1) mod 256

= 3 mod 256

= 3

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

= (237+141) mod 256

= 378 mod 256

= 122 S[3] = 141 ; S[3+122+1] = S[126] = 102 swap(S[3],S[126])

S[3] = 102 ; S[126] = 141

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

= (102+238) mod 256

= 340 mod 256

= 84

Z = S[84] = 116

Kemudian lakukan XOR A = 53

Z = 116

53 = 00110101 116 = 01110100

= 01000001 = 6510 dalam tabel ASCII merupakan “A“

Karakter “/i=3 ; j=122 ;

i = (i+1) mod 256 = (3+1) mod 256

= 4 mod 256

= 4

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

= (122+113) mod 256

= 235 mod 256

= 235 S[4] = 113 ; S[4+235+1] = S[240] = 216 swap(S[4],S[240])

S[4] = 216 ; S[240] = 113

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

= (216+70) mod 256

= 286 mod 256

= 30 Z = S[30] = 103

Kemudian lakukan XOR / = 47

Z = 103

47 = 00101111 103 = 01100111

= 01001000 = 7210 dalam tabel ASCII merupakan “H “

Karakter “ji=4 ; j=235 ;

i = (i+1) mod 256 = (4+1) mod 256

= 5 mod 256

= 5

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

= (235+185) mod 256

= 420 mod 256

= 164 S[5] = 185 ; S[5+164+1] = S[170] = 198 swap(S[5],S[170])

S[5] = 198 ; S[170] = 185

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

= (198+199) mod 256

= 397 mod 256

= 141 Z = S[141] = 36

Kemudian lakukan XOR N = 106

Z = 36

106 = 01101010 36 = 00100100

= 01001110 = 7810 dalam tabel ASCII merupakan “N “ Karakter “×

i=5 ; j=164 ;

i = (i+1) mod 256 = (5+1) mod 256

= 6 mod 256

= 6

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

= (164+234) mod 256

= 398 mod 256

= 142 S[6] = 234 ; S[6+142+1] = S[149] = 235 swap(S[6],S[149])

S[6] = 235 ; S[149] = 234

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

= (235+67) mod 256

= 302 mod 256

= 46 Z = S[46] = 150

Kemudian lakukan XOR

× = 215 Z = 150

215 = 11010111 150 = 10010110

= 01000001 = 6510 dalam tabel ASCII merupakan “A “ Karakter “N”

i=6 ; j=142 ;

i = (i+1) mod 256 = (6+1) mod 256

= 7 mod 256

= 7

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

= (142+81) mod 256

= 223 mod 256

= 223 S[7] = 81 ; S[7+223+1] = S[231] = 184 swap(S[7],S[231])

S[7] = 184 ; S[231] = 81

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

= (184+135) mod 256

= 319 mod 256

= 63

Z = S[63] = 182

Kemudian lakukan XOR ø = 248

Z = 182

248 = 11111000 182 = 10110110

= 01001110 = 7810 dalam tabel ASCII merupakan “N“

Ciphertext = [7 215 53 47 106 215 248] (dalam nilai ASCII)

Ciphertext = [00000111, 11010111, 00110101, 00101111, 01101010, 11010111, 11111000]

Keystream = [84 142 116 103 36 150 182]

Keystream = [01010100, 10001110, 01110100, 01100111, 00100100, 10010110, 10110110]

Plaintext = Ciphertext XOR Keystream Plaintext = [SYAHNAN]

Plaintext = [83 89 65 72 78 65 78] (dalam nilai ASCII)

Plaintext = [01010011, 01011001, 01000001, 01001000, 01001000, 01000001, 01001110]

4.2.6 Waktu Proses (Real Running Time)

Waktu yang digunakan pada proses enkripsi dan dekripsi akan dianalisa berdasarkan panjang karakter dalam milisecond.

4.2.6.1 Waktu Proses Enkripsi Algoritma RC4-P1

Pengujian waktu proses enkripsi digunakan untuk mengetahui pengaruh panjang karakter terhadap waktu yang dibutuhkan dalam proses enkripsi. Pengujian dilakukan dengan panjang karakter 10, 100, 1000 dan 10000 karakter. Dengan panjang kunci 5 karakter. Masing-masing karakter diuji sampai lima kali dan dihitung rata-rata waktu proses yang diperoleh. Hasil waktu proses enkripsi Algoritma RC4-P1 dapat dilihat pada tabel 4.5.

Tabel 4.5. Waktu Proses Pengujian Enkripsi Algoritma RC4-P1 10000 81,1136 75,5353 72,3518 80,9229 72,8381 76,55234 Pada tabel 4.5. dapat dilihat rata-rata waktu proses enkripsi dari beberapa

karakter. Hasil pengujian ini dapat diilustrasikan pada grafik yang terdapat pada gambar 4.12.

Gambar 4.12. Grafik Hubungan Panjang Plaintext dan Waktu Proses Enkripsi Pada gambar 4.12. dapat dilihat bahwa waktu proses enkripsi dipengaruhi oleh panjang karakter. Semakin panjang karakternya, maka akan memperlama

Dokumen terkait