44
BAB 3
ANALISIS DAN PERANCANGAN
Bab ini menjelaskan tentang proses enkripsi, signature dan verifikasi menggunakan algoritma RSA dan analisis kebutuhan perangkat lunak yang akan dibangun serta
perancangannya. Dan tindakan yang dilakukan pada tahap perancangan adalah mengubah model analisis ke model perancangan.
3.1. Analisis Sistem Enkripsi dan Dekripsi dengan Algoritma RSA
3.1.1. Algoritma Membangkitkan pasangan kunci
Hasil dari proses ini adalah pasangan kunci publik dan kunci privat. Kunci publik digunakan dalam proses enkripsi dan kunci privat digunakan dalam proses
dekripsi. Adapun langkah-langkah dalam proses pembangkitan kunci adalah sebagai berikut:
1. Pilih p dan q, dimana p dan q adalah bilangan prima dan nilai p dan q tidak sama.
2. Hitung n = p.q 3. Hitung φn = p-1q-1
4. Pilih integer dimana gcd φ n, e = 1; 1 e φ n 5. Hitung d, dimana
=
.
dengan nilai k merupakan bilangan bulat positif yang menghasilkan nilai d yang merupakan bilangan bulat positif.
6. Kunci private = {e, n} Kunci publik = {d, n}
Universitas Sumatera Utara
45 3.1.2.
Enkripsi Proses enkripsi dapat dilakukan dengan menggunakan kunci publik yang telah
diperoleh. Adapun proses enkripsi adalah sebagai berikut: 1. Pesan teks = P
2. Kunci publik = {e, n} 3. Enkripsi : C
i
= P
i e
mod n dimana C
i
adalah cipher number ke i 3.1.3.
Dekripsi Proses dekripsi dapat dilakukan dengan menggunakan kunci privat yang telah
diperoleh. Adapun proses dekripsi adalah sebagai berikut: 1. Cipherteks = C
2. Kunci privat = {d, n} 3. Dekripsi : P
i
= C
i d
mod n dimana P
i
adalah plain number ke i 3.1.4.
Contoh perhitungan pembangkit kunci, enkripsi RSA dan dekripsi RSA. 1. Pembangkit Kunci
a. p = 73 dan q = 97 b. n = p.q
n = 7081 c. φn = p-1 q-1
φn = 73-1 97-1 = 6912
Nilai GCDn, e = 1.
Tabel 3.1 Nilai GCD Mulai dari
Nilai GCD6912, e
e = 2 6912 mod 2 = 0
GCD6912, 2 = 2
Universitas Sumatera Utara
46
Tabel 3.1 Nilai GCD Lanjutan Mulai dari
Nilai GCD6912, e
e = 3 6912 mod 3 = 0
GCD6912, 3 = 3 e = 4
6912 mod 4 = 0 GCD6912, 4 = 4
Dari perhitungan di atas maka diperoleh nilai e adalah 5.
d. =
.
Tabel 3.2 Perhitungan Kunci Privat Nilai
k Persamaan
Hasil
1 =
1 + 1 .6912 5
1382,6 2
= 1 + 2 .6912
5 2765
3 =
1 + 3 .6912 5
4147,4 4
= 1 + 4 .6912
5 5529,8
5 =
1 + 5 .6912 5
6912,2
Nilai dari kunci privat d yang diperoleh adalah 2765, sedangkan pasangan kunci yang diperoleh dari perhitungan di atas adalah:
Kunci privat = {5, 7081} Kunci publik = {2765, 7081}
2. Enkripsi RSA Misalkan :
a. P = “ Digital Signature “
Universitas Sumatera Utara
47 Nilai ASCII dari plainteks P di atas adalah:.
P
1
= 68 P
2
= 105 P
3
= 103 P
4
= 105 P
5
= 11 P
6
= 97 P
7
= 108 P
8
= 32 P
9
= 83 P
10
= 105 P
11
= 103 P
12
= 110 P
13
= 97 P
14
= 116 P
15
= 117 P
16
= 11 P
17
= 101 b. Kunci Publik = {2765, 7081}
c. Enkripsi : C
i
= P
i e
mod n
Tabel 3.3 Enkripsi Pi
Cipherteks C
i
= P
i e
mod n 68
6000
105 7063
103
3702
105 7063
116 2211
97
6208
108 419
32
4654
83 720
105
7063
103 3702
110 2790
97
6208
116 2211
117
4917
114 456
101
5874 Jadi, hasil dari enkripsi atau cipherteks adalah 6000 7063 3702 7063 2211 6208 419
4654 720 7063 3702 2790 6208 2211 4917 456 5874
Universitas Sumatera Utara
48 3.
Dekripsi RSA a. C = 6000 7063 3702 7063 2211 6208 419 4654 720 7063 3702 2790 6208
2211 4917 456 5874 b. Kunci privat = {5, 7081}
c. P
i
= C
i d
mod n
Tabel 3.4 Dekripsi C
i
Plainteks P
i
= C
i d
mod n 6000
68
7063
105
3702 103
7063
105
2211 116
6208 97
419
108
4654 32
720
83
7063 105
3702
103
2790 110
6208 97
2211
116
4917 117
456
114
5874 101
Universitas Sumatera Utara
49
Tabel 3.5 Konversi Pesan Ke Karakter ASCII Bilangan
Karakter Sesuai ASCII
68 D
105 I
103 G
105 I
116 T
97 A
108 L
83 Space
32 S
105 I
103 G
110 N
97 A
116 T
117 U
114 R
101 E
3.2. Perancangan