Anda di halaman 1dari 21

LAPORAN RC2 (Rons Code atau Rivest Cipher)

KEAMANAN DATA DAN APLIKASI

Dosen Pengampu :
Ach. Khozaimi, S.Kom., M.Kom

Disusun Oleh :
1. Arie Febrianto (140411100133)
2. Tri Ratna Sari Pramita (150411100043)
3. Dina Ila Faradisa (150411100104)

PRODI TEKNIK INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS TRUNOJOYO MADURA
2017 / 2018
DAFTAR ISI

DAFTAR ISI............................................................................................................................ ii
BAB I ........................................................................................................................................ 1
PENDAHULUAN ................................................................................................................... 1
1.1 Definisi ........................................................................................................................... 1
1.2 Sejarah ........................................................................................................................... 1
BAB II ...................................................................................................................................... 3
PEMBAHASAN ...................................................................................................................... 3
2.1 Penggunaan dan Perhitungan Algoritma ................................................................... 3
2.2 Contoh Perhitungan...................................................................................................... 3
BAB III................................................................................................................................... 17
IMPLEMENTASI ................................................................................................................. 17
3.1 Source Code ................................................................................................................. 17
3.2 Hasil Running .............................................................................................................. 17
BAB IV ................................................................................................................................... 18
PENUTUP.............................................................................................................................. 18
4.1 Kesimpulan .................................................................................................................. 18
4.2 Saran ............................................................................................................................ 18
DAFTAR PUSTAKA ............................................................................................................ 19

ii | K E A M A N A N D A T A D A N A P L I K A S I
BAB I
PENDAHULUAN

1.1 Definisi
RC2 adalah cipher blok yang menggunakan 64 bit sebagai ukuran per blok-nya
dengan kunci yang ukurannya bervariasi (0-1024 bit). Dengan mengubah-ubah
ukuran kunci ini, performansi RC2 dapat menjadi dua atau tiga kali lebih baik
dibanding DES (Data Encryption Standard), algoritma yang dikembangkan oleh
NSA (National Security Agent) dan telah ditetapkan sebagai algoritma enkripsi
standar oleh pemerintah AS pada tahun 1976-1997 (yang kemudian digantikan oleh
AES, Advanced Encryption Standard).
1.2 Sejarah
Pada tahun 1987 di Laboratorium Rsa, Ron Rivest menemukan suatu algoritma
yang diberi nama RC2. RC itu sendiri merupakan singkatan dari Rons 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.
RC2 (Rivest Cipher 2) merupakan cipher blok yang didesain oleh Ron Rivest
pada tahun 1987. Pengembangan RC2 disponsori oleh Lotus yang sedang mencari
suatu cipher tertentu setelah evaluasi oleh NSA untuk diekspor sebagai bagian dari
software Lotus Notes. Setelah negosiasi lanjut, cipher ini disetujui dan diekspor
pada tahun 1989.
Awalnya rincian algoritma dirahasiakan eksklusif untuk RSA Security tetapi
pada 29 Januari 1996 kode sumber untuk RC2 adalah anonim diposting ke
Internet pada Usenet forum, sci.crypt Sebuah pengungkapan yang sama telah
terjadi sebelumnya dengan algoritma RC4. Tidak jelas apakah poster itu
memiliki akses dengan spesifikasi atau telah reverse engineered.

1|KEAMANAN DATA DAN APLIKASI


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.

2|KEAMANAN DATA DAN APLIKASI


BAB II
PEMBAHASAN

2.1 Penggunaan dan Perhitungan Algoritma


Terdapat dua tahapan untuk membangkitkan aliran kunci algoritma RC2
diantaranya :
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 mengenkripsi pada mode byte
(255 = 28 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.

3|KEAMANAN DATA DAN APLIKASI


Setiap putaran bagian keystream sebesar 1 byte (dengan nilai antara 0 sampai 255)
dioutputkan oleh PGRA berdasarkan state S

I=0
J=0
For idx8 = 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.

2.2 Contoh Perhitungan


Berikut adalah proses Algoritma RC2, beserta contoh kasusnya :
Plainteks = PUPUT_TW
Kunci = PUPUT Array Kunci
Array 0 1 2 3 4
Kar.Kunci P U P U T
Dec.Kunci 80 85 80 85 84

1. Pembentukkan Tabel Vektor S, dengan formula S[i] = i Tabel vektor berisi array 256
(0-255). Berikut ini sample perhitungannya :
i=0 i=1 i=2
S[0]=0 S[1]=1 S[2]=2dst

4|KEAMANAN DATA DAN APLIKASI


Tabel 3.1 (Tabel Vektor S)
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
10 10 10 10 10 10 10 10 10 10 11 11
96 97 98 99 0 1 2 3 4 5 6 7 8 9 0 1
10 10 10 10 10 10 10 10 10 10 11 11
96 97 98 99 0 1 2 3 4 5 6 7 8 9 0 1
11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12
2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12
2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
12 12 13 13 13 13 13 13 13 13 13 13 14 14 14 14
8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
12 12 13 13 13 13 13 13 13 13 13 13 14 14 14 14
8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
14 14 14 14 14 14 15 15 15 15 15 15 15 15 15 15
4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
14 14 14 14 14 14 15 15 15 15 15 15 15 15 15 15
4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9

5|KEAMANAN DATA DAN APLIKASI


16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
17 17 17 17 18 18 18 18 18 18 18 18 18 18 19 19
6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
17 17 17 17 18 18 18 18 18 18 18 18 18 18 19 19
6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
19 19 19 19 19 19 19 19 20 20 20 20 20 20 20 20
2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
19 19 19 19 19 19 19 19 20 20 20 20 20 20 20 20
2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
20 20 21 21 21 21 21 21 21 21 21 21 22 22 22 22
8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
20 20 21 21 21 21 21 21 21 21 21 21 22 22 22 22
8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
22 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23
4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
22 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23
4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
Keterangan

= Indeks
= Nilai Indeks
2. Pembentukkan Tabel Vektor U, dengan formula U[i] = Kunci [ I mod
jumlah_karakter_kunci] Terdiri dari array 256 (0-255) yang berisi panjang kunci
masukkan dari user, Berikut ini sample perhitungannya :
i=0 i=1

U[0] = Kunci[0 mod 5] U[1] = Kunci[1 mod 5]

U[0] = Kunci[0] = 80 U[1] = Kunci[1] = 85dst

6|KEAMANAN DATA DAN APLIKASI


Tabel 3.2 (Tabel Vektor U)

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
80 85 80 85 84 80 85 80 85 84 80 85 80 85 84 80
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
85 80 85 84 80 85 80 85 84 80 85 80 85 84 80 85
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
80 85 84 80 85 80 85 84 80 85 80 85 84 80 85 80
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
85 84 80 85 80 85 84 80 85 80 85 84 80 85 80 85
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
84 80 85 80 85 84 80 85 80 85 84 80 85 80 85 84
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
80 85 80 85 84 80 85 80 85 84 80 85 80 85 84 80
10 10 10 10 10 10 10 10 10 10 11 11
96 97 98 99 0 1 2 3 4 5 6 7 8 9 0 1
85 80 85 84 80 85 80 85 84 80 85 80 85 84 80 85
11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12
2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
80 85 84 80 85 80 85 84 80 85 80 85 84 80 85 80
12 12 13 13 13 13 13 13 13 13 13 13 14 14 14 14
8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
85 84 80 85 80 85 84 80 85 80 85 84 80 85 80 85
14 14 14 14 14 14 15 15 15 15 15 15 15 15 15 15
4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
84 80 85 80 85 84 80 85 80 85 84 80 85 80 85 84
16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
80 85 80 85 84 80 85 80 85 84 80 85 80 85 84 80
17 17 17 17 18 18 18 18 18 18 18 18 18 18 19 19
6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
85 80 85 84 80 85 80 85 84 80 85 80 85 84 80 85
19 19 19 19 19 19 19 19 20 20 20 20 20 20 20 20
2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
80 85 84 80 85 80 85 84 80 85 80 85 84 80 85 80
20 20 21 21 21 21 21 21 21 21 21 21 22 22 22 22
8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
85 84 80 85 80 85 84 80 85 80 85 84 80 85 80 85

7|KEAMANAN DATA DAN APLIKASI


22 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23
4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
84 80 85 80 85 84 80 85 80 85 84 80 85 80 85 84
24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
80 85 80 85 84 80 85 80 85 84 80 85 80 85 84 80
Keterangan

= Indeks
= Nilai Indeks
3. Melakukan permutasi terhadap nilai Tabel Vektor S, berdasarkan pseudocode
berikut:
j=0
For i = 0 to 255
j = ( j + S[i] + U[i]) mod 256
swap (S[i], S[j])
berikut ini sample perhitungannya:
j=0 i=0
j=(0 + S[0] + U[0]) mod 256
j=(0 + 0 + 80) mod 256
j=80 mod 256
j=80

j=80 i=1
j=(80 + S[1] + U[1]) mod 256
j=(80 + 1 + 85) mod 256
j=166 mod 256
j=166...dst

8|KEAMANAN DATA DAN APLIKASI


Tabel 3.3 (Tabel Permutasi Vektor S)

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
16 24 16 25 17 10 19 12 22 16
80 6 8 80 8 3 88 5 12 5 5 35 7 5 67 2
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
10 20 15 10 21 17 13 24 10
7 4 7 54 4 4 6 4 66 1 26 3 6 3 213 73
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
18 16 14 12 25 11 24 10 23 10 23 23
5 47 5 24 5 6 9 2 6 2 8 6 8 3 108 5
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
11 24 11 25 13 15 17 19 22 11 14
2 5 9 5 1 13 1 30 1 52 5 82 2 2 254 6
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
18 22 12 16 22 12 18 24
38 3 78 5 2 19 9 69 1 3 25 0 85 2 149 56
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
21 12 20 11 19 10 19 10 19 12 21
6 6 32 0 2 21 2 3 20 3 7 27 9 1 43 8
10 10 10 10 10 10 10 10 10 10 11
96 97 98 99 0 1 2 3 4 5 6 7 8 9 110 1
14 24 17 21 14 19 12 25 12
3 64 7 4 98 28 0 2 74 3 4 5 62 5 189 9
11 11 11 11 11 11 11 11 12 12 12 12 12 12 12
2 3 4 5 6 7 8 9 0 1 2 3 4 5 126 7
20 14 23 18 12 22 18 12
65 7 5 4 89 30 3 0 4 74 20 8 0 9 84 35
12 12 13 13 13 13 13 13 13 13 13 13 14 14 14
8 9 0 1 2 3 4 5 6 7 8 9 0 1 142 3
24 20 15 11 25 21 17 14 10 20
8 5 9 9 75 37 5 4 9 0 7 74 38 8 230 2
14 14 14 14 14 14 15 15 15 15 15 15 15 15 15
4 5 6 7 8 9 0 1 2 3 4 5 6 7 158 9
17 14 11 25 22 21 19 17 15 13 11
4 3 8 89 66 43 17 3 9 1 3 2 7 8 125 2
16 16 16 16 16 16 16 16 16 16 17 17 17 17 17
0 1 2 3 4 5 6 7 8 9 0 1 2 3 174 5
96 86 72 64 56 45 40 31 28 25 19 19 15 17 19 18

17 17 17 17 18 18 18 18 18 18 18 18 18 18 19
6 7 8 9 0 1 2 3 4 5 6 7 8 9 190 1

9|KEAMANAN DATA DAN APLIKASI


10 11 13 15 18
23 24 31 38 42 52 58 70 82 91 6 7 4 1 165 5
19 19 19 19 19 19 19 19 20 20 20 20 20 20 20
2 3 4 5 6 7 8 9 0 1 2 3 4 5 206 7
20 22 24 10 13 16 18 22 25
1 3 5 8 33 54 81 8 2 2 8 0 2 25 60 91
20 20 21 21 21 21 21 21 21 21 21 21 22 22 22
8 9 0 1 2 3 4 5 6 7 8 9 0 1 222 3
12 16 19 23 10 14 18 22 11 16
8 5 9 9 19 61 3 2 7 8 19 66 0 0 206 2
22 22 22 22 22 22 23 23 23 23 23 23 23 23 23
4 5 6 7 8 9 0 1 2 3 4 5 6 7 238 9
10 15 20 12 18 23 10 16 22 16
54 3 8 9 10 67 1 1 7 43 5 4 9 34 101 8
24 24 24 24 24 24 24 24 24 24 25 25 25 25 25
0 1 2 3 4 5 6 7 8 9 0 1 2 3 254 5
23 11 18 14 21 11 18 16
2 46 2 4 0 69 4 5 36 3 7 11 87 9 251 74
Keterangan

= Indeks
= Nilai Indeks
4. Membangkitkan Aliran Kunci
pembangkitan aliran kunci dilakukan berdasarkan pseudecode berikut :
i=0 j=0
for idx=0 to panjang_plainteks-1 do i=(i+1) mod 256
j=(j+S[i]) mod 256 swap (S[i], S[j])
K=(S[i]+S[j]) mod 256
Berikut Proses Pembangkitan Aliran Kunci

i=0 j=0 i=1 j=166


for idx=0 to panjang_plainteks-1 do i=(i+1) mod 256 for idx=0 to 8-1 =
7 do i=(1+1) mod 256
i=(i+1) mod 256 i= 2 mod 256
i=(0+1) mod 256 i=2
j=(j+S[i]) mod
i= 1 mod 256 256
i=1 j=(166 +S[2]) mod 256

10 | K E A M A N A N D A T A D A N A P L I K A S I
j=(j+S[i]) mod 256 j=(166+248) mod 256
j=(0+S[1]) mod 256 j= 414 mod 256
j=(0+166) mod 256 j= 158
j=166 swap (S[i], S[j])
swap (S[i], S[j]) swap (S[2], S[158])
swap (S[1], S[166]) swap(248,125)
swap(166,40) S[2] = 125, S[158]=248
S[1] = 40, S[166]=166 K=(S[i]+S[j]) mod 256
K=(S[i]+S[j]) mod 256 K=(S[2]+S[158]) mod 256
K=(S[1]+S[166]) mod 256 K= (125+248) mod 256
K= (40+166) mod 256 K=373 mod 256 K =
K=206 Biner = 11001110 117 Biner = 01110101

i=2 j=158 i=3 j=238


i= (i+1) mod 256 i=(i+1) mod 256
i= (2+1) mod 256 i=(3+1) mod 256
i= 3 i=4
j= (j+ S[i]) mod 256 j=(j+S[i]) mod 256
j= (158 + S[3]) mod 256 J=(238+S[4]) mod 256
j= (158 + 80) mod 256 j=(238+168) mod 256
j= 238 mod 256 j=406 mod 256
j= 238 j=150
swap (S[i], S[j]) swap (S[i], S[j])
swap (S[3], S[238]) swap (S[4], S[150])
swap (80,101) swap (168, 17)
S[3]= 101, S[238]= 80 S[4] = 17, S[150]= 168
K= (S[i] + S[j]) mod 256 K= (S[i] + S[j]) mod 256
K= (S[3] + S[238]) mod 256 K= (S[4] + S[150]) mod 256
K= (101 + 80) mod 256 K= (17 + 168) mod 256
K= 181 mod 256 K= 185 mod 256 K=
K= 181 Biner = 10110101 185 Biner= 10111001

i=4 j=150 i=5 j=147


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

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


i=5 i=6
j=(j+S[i]) mod 256 j=(j+S[i]) mod 256
j=(150 + S[5]) mod 256 j=(147+S[6]) mod 256

11 | K E A M A N A N D A T A D A N A P L I K A S I
j=(150 + 253) mod 256 j=(147 + 88) mod 256
j=403 mod 256 j= 235 mod 256
j=147 j= 235
swap (S[i], S[j]) swap (S[i], S[j])
swap (S[5], S[147]) swap (S[6], S[235])
swap (253, 89) swap (88, 164)
S[5]= 89, S[147]= 253 S[6]= 164, S[235]= 88
K= (S[i] + S[j]) mod 256 K= (S[i] + S[j]) mod 256
K= (S[5] + S[147]) mod 256 K= (S[6] + S[235]) mod 256
K= (89 + 253) mod 256 K= (164 + 88) mod 256
K= 342 mod 256 K= 252 mod 256
K= 86 Biner= 01010110 K= 252 Biner= 11111100

i=6 j=235 i=7 j=154


i=(i+1) mod 256 i=(i+1) mod 256
i=(6+1) mod 256 i=(7+1) mod 256
i=7 i=8
j=(j+S[i]) mod 256 j=(j+S[i]) mod 256
j=(235+S[7]) mod 256 j=(154 + S[8]) mod 256
j=(235 + 175) mod 256 j=(154 + 12) mod 256
j= 410 mod 256 j= 166 mod 256
j= 154 j= 166
swap (S[i], S[j]) swap (S[i], S[j])
swap (S[7], S[154]) swap (S[8], S[166])
swap (175, 193) swap (12, 40)
S[7]= 193, S[154]= 175 S[8]= 40, S[166]= 12
K= (S[i] + S[j]) mod 256 K= (S[i] + S[j]) mod 256
K= (S[7] + S[154]) mod 256 K= (S[8] + S[166]) mod 256
K= (193 + 175) mod 256 K= (40 + 12) mod 256
K= 368 mod 256 K= 52 mod 256
K= 112 Biner= 01110000 K= 52 Biner= 00110100

12 | K E A M A N A N D A T A D A N A P L I K A S I
Berikut adalah proses Enkripsi Algoritma RC2
1. Konversi plainteks dan Kunci Hasil pembangkitan kunci kedalam biner
Plainteks Desimal Biner Kunci Desimal Biner
P 80 01010000 K1 206 11001110
U 85 01010101 K2 117 01110101
P 80 01010000 K3 181 10110101
U 85 01010101 K4 185 10111001
T 84 01010100 K5 86 01010110

_ 95 01011111 K6 252 11111100


T 84 01010100 K7 112 01110000
W 87 01010111 K8 52 00110100

2. Lakukan operasi XOR antara Biner Kunci hasil pembangkitan kunci dengan Biner
Plainteks
P 01010000
K1 11001110 XOR
C1 10011110

U 01010101
K2 01110101 XOR
C2 00100000

P 01010000
K3 10110101 XOR
C3 11100101

U 01010101
K4 10111001 XOR
C4 11101100

T 01010100
K5 01010110 XOR
C5 00000010

_ 01011111
K6 11111100 XOR

13 | K E A M A N A N D A T A D A N A P L I K A S I
C6 10100011

T 01010100
K7 01110000 XOR
C7 00100100

W 01010111
K8 00110100 XOR
C8 01100011

3. Konversi Biner Hasil XOR ke Karakter

Biner
Hasil Desimal Karakter
XOR
10011110 158
00100000 32 Space
11100101 229
11101100 236
00000010 2 Start of Text
10100011 163
00100100 36 $
01100011 99 C

Berikut adalah proses Dekripsi Algoritma RC2


1. Konversi chiperteks dan Kunci Hasil pembangkitan kunci kedalam biner
Plainteks Desimal Biner Kunci Desimal Biner
158 10011110 K1 206 11001110
space 32 00100000 K2 117 01110101
229 11100101 K3 181 10110101
236 11101100 K4 185 10111001
Start of file 2 00000010 K5 86 01010110
163 10100011 K6 252 11111100
$ 36 00100100 K7 112 01110000
c 99 01100011 K8 52 00110100

14 | K E A M A N A N D A T A D A N A P L I K A S I
2. Lakukan operasi XOR antara Biner Kunci hasil pembangkitan kunci dengan Biner
Plainteks

10011110
K1 11001110 XOR
P1 01010000

Space 00100000
K2 01110101 XOR
P2 01010101

11100101
K3 10110101 XOR
P3 01010000

11101100
K4 10111001 XOR
P4 01010101

Start of file 00000010


K5 01010110 XOR
P5 01010100

10100011
K6 11111100 XOR
P6 01011111

$ 00100100
K7 01110000 XOR
P7 01010100

C 01100011
K8 00110100 XOR
P8 01010111

15 | K E A M A N A N D A T A D A N A P L I K A S I
3. Konversi Biner Hasil XOR ke Karakter
Biner
Desimal Karakter
Hasil XOR
01010000 80 P
01010101 85 U
01010000 80 P
01010101 85 U
01010100 84 T
01011111 95 _
01010100 84 T
01010111 87 W

16 | K E A M A N A N D A T A D A N A P L I K A S I
BAB III
IMPLEMENTASI
3.1 Source Code
3.2 Hasil Running

17 | K E A M A N A N D A T A D A N A P L I K A S I
BAB IV
PENUTUP

4.1 Kesimpulan
Dari pembahasan yang telah diuraikan sebelumnya, dapat dambil suatu kesimpulan
sebagai berikut, yaitu:

RC2 adalah cipher blok yang menggunakan 64 bit sebagai ukuran per blok-nya
dengan kunci yang ukurannya (0-1024 bit).
algoritma RC2 dapat diimplementasikan untuk aplikasi internet antara lain
WEP (Wired Equivalent Privacy), WPA (Wifi Protected Acces) dan TLS
(Transport Layer Protocol). RC2 juga diimplementasikan pada protokol SSL
(Source Socket Layer)
Terdapat dua tahapan untuk membangkitkan aliran kunci algoritma RC2 yaitu
Key Scheduling Algorithm (KSA) dan Pseudo-Random Generator Algorithm
(PRGA).

4.2 Saran
Penyusun menyarankan untuk mengembangkan makalah selanjutnya agar dapat
menambahkan cara penghitungan kriptografi algoritma RC2 menggunakan cara yang
lebih mudah dan dapat dimengerti, disertai implementasi algoritma dengan
menggunakan bahasa pemrograman lain beserta simulasi dan langkah langkah

18 | K E A M A N A N D A T A D A N A P L I K A S I
DAFTAR PUSTAKA
https://www.academia.edu/21902669/ENKRIPSI_DAN_DESKRIPSI_DENGAN_M
ETODE_DATA_RC2

https://aprillialisti.wordpress.com/2012/06/22/1-caesar-ciphe/

https://piptools.net/algoritma-rc2-rons-code-rivests-cipher/

19 | K E A M A N A N D A T A D A N A P L I K A S I

Anda mungkin juga menyukai