BAB 4
IMPLEMENTASI
4.1 Implementasi
Tahap implementasi merupakan tahap akhir setelah hasil analisis dan rancangan sistem yang dibuat sedemikian rupa dan kemudian akan diuji melalui implementasi.
Dari implementasi ini akan terlihat hasilnya apakah cukup memuaskan atau tidak. Hasil analisis dan rancangan yang baik akan sangat membantu dalam tahap
implementasi, sehingga setelah tahap implementasi akan dihasilkan suatu aplikasi yang sesuai dengan yang diinginkan [11].
Perangkat lunak yang dibutuhkan untuk implementasi aplikasi kriptografi RSA pada SMS ini adalah sebagai berikut:
1. Netbeans 7.0.1 dan JDK 6.0 untuk implementasi program 2. Java
TM
Micro Edition SDK 3.0.5 3. Dukungan terhadap aplikasi berbasis java dengan CLDC 1.1 dan MIDP 2.1
4. Dukungan terhadap pengiriman SMS
4.2 Hasil dan Pembahasan
4.2.1 Enkripsi Algoritma RSA
Untuk melakukan enkripsi dengan metode RSA, setelah didapatkan kunci publik dan kunci privat, maka plaintext harus diubah ke dalam kode ASCII desimal dan
kemudian ditambahkan dengan 68. Hal ini dilakukan untuk mempermudah pembagian blok-blok desimalnya sehingga lebih mudah dalam proses dekripsi.
Universitas Sumatera Utara
Tabel 4.1 Konversi Karakter Plaintext ke Kode ASCII Desimal
Plaintext Kode ASCII Desimal Kode ASCII Desimal + 68
p 112
180 i
105 173
n 110
178 spasi
32 100
a 97
165 t
116 184
m 109
177 spasi
32 100
B 66
134 N
78 146
I 73
141 :
58 126
3 51
119 3
51 119
7 55
123 3
51 119
Jumlah karakter plaintext adalah 16 karakter. Sehingga dari data di atas kode ASCII desimal tersebut dibagi ke dalam blok-blok m sedemikian sehingga setiap nilai
blok m bernilai antar 0 sampai dengan n-1.
Tabel 4.2 Proses Enkripsi dengan Algoritma RSA
i m
i
e n
c
i
= m
i e
mod n
1 180
11 3937
67 2
173 11
3937 307
3 178
11 3937
1945 4
100 11
3937 1260
5 165
11 3937
2220 6
184 11
3937 3408
7 177
11 3937
2714 8
100 11
3937 1260
9 134
11 3937
1259 10
146 11
3937 234
11 141
11 3937
332
Universitas Sumatera Utara
Tabel 4.2 Proses Enkripsi dengan Algoritma RSA lanjutan
i m
i
e n
c
i
= m
i e
mod n
12 126
11 3937
126 13
119 11
3937 2889
14 119
11 3937
2889 15
123 11
3937 2665
16 119
11 3937
2889
Kemudian c
i
diubah ke dalam bentuk biner 16 bit. Adapun hasil yang diperoleh adalah sebagai berikut:
Tabel 4.3 Proses Pengubahan ke Bentuk Biner 16 Bit
Ciphertext Biner 16 Bit
67 0000000001000011
307 0000000100110011
1945 0000011110011001
1260 0000010011101100
2220 0000100010101100
3408 0000110101010000
2714 0000101010011010
1260 0000010011101100
1259 0000010011101011
234 0000000011101010
332 0000000101001100
126 0000000001111110
2889 0000101101001001
2889 0000101101001001
2665 0000101001101001
2889 0000101101001001
Universitas Sumatera Utara
Kemudian biner 16 bit ini dibagi-bagi menjadi biner 8 bit, hasilnya akan diubah ke desimal ASCII dan seterusnya diubah ke karakter sesuai tabel ASCII. Hasil
yang diperoleh adalah sebagai berikut:
Tabel 4.4 Hasil Pengubahan Biner 8 Bit ke Karakter ASCII
Biner 8 Bit Desimal ASCII
Karakter ASCII Cipher
00000000 NUL
01000011 67
C 00000001
1 SOH
00110011 51
3 00000111
7 BEL
10011001 153
™ 00000100
4 EOT
11101100 236
ì 00001000
8 BS
10101100 172
¬ 00001101
13 CR
01010000 80
P 00001010
10 LF
10011010 154
š 00000100
4 EOT
11101100 236
ì 00000100
4 EOT
11101011 235
ë 00000000
NUL 11101010
234 ê
00000001 1
SOH 01001100
76 L
00000000 NUL
Universitas Sumatera Utara
Tabel 4.4 Hasil Pengubahan Biner 8 Bit ke Karakter ASCII lanjutan
Biner 8 Bit Desimal ASCII
Karakter ASCII Cipher
01111110 126
~ 00001011
11 VT
01001001 73
I 00001011
11 VT
01001001 73
I 00001010
10 LF
01101001 105
i 00001011
11 VT
01001001 73
I
Karakter ASCII yang dihasilkan tidak semua bisa ditampilkan di layar emulator maupun handphone karena sebagian dari karakter hanya sebagai simbol
control seperti karakter 0-31 merupakan ASCII characters control. Namun, nilai desimal yang terkandung di dalamnya tetap nilai desimal sesuai tabel ASCII.
4.2.2 Dekripsi Algoritma RSA
Karena pada tahap enkripsi sebelumnya dilakukan pengubahan dari biner 8 bit ke desimal dan karakter ASCII, maka sebelum memasuki tahap dekripsi dilakukan pula
konversi dari karakter ASCII ke desimal ASCII dan biner 8 bit.
Tabel 4.5 Konversi Hasil Dekompresi ke Desimal ASCII dan Biner 8 Bit
Karakter ASCII Desimal ASCII
Biner 8 Bit
NUL 00000000
C 67
01000011 SOH
1 00000001
3 51
00110011 BEL
7 00000111
™ 153
10011001
Universitas Sumatera Utara
Tabel 4.5 Konversi Hasil Dekompresi ke Desimal ASCII dan Biner 8 Bit
lanjutan
Karakter ASCII Desimal ASCII
Biner 8 Bit
EOT 4
00000100 ì
236 11101100
BS 8
00001000 ¬
172 10101100
CR 13
00001101 P
80 01010000
LF 10
00001010 š
154 10011010
EOT 4
00000100 ì
236 11101100
EOT 4
00000100 ë
235 11101011
NUL 00000000
ê 234
11101010 SOH
1 00000001
L 76
01001100 NUL
00000000 ~
126 01111110
VT 11
00001011 I
73 01001001
VT 11
00001011 I
73 01001001
LF 10
00001010 i
105 01101001
VT 11
00001011 I
73 01001001
Universitas Sumatera Utara
Kemudian dilakukan konversi dari biner 8 bit ke biner 16 bit, kemudian dikonversi ke Desimal ASCII untuk mendapatkan ciphertext hasil enkripsi untuk
didekripsi.
Tabel 4.6 Hasil Konversi Biner 16 Bit ke Ciphertext Berupa Desimal ASCII
Biner 16 Bit Ciphertext
0000000001000011 67
0000000100110011 307
0000011110011001 1945
0000010011101100 1260
0000100010101100 2220
0000110101010000 3408
0000101010011010 2714
0000010011101100 1260
0000010011101011 1259
0000000011101010 234
0000000101001100 332
0000000001111110 126
0000101101001001 2889
0000101101001001 2889
0000101001101001 2665
0000101101001001 2889
Kemudian dilakukan proses dekripsi dengan algoritma RSA seperti berikut:
Tabel 4.7 Proses Dekripsi dengan algoritma RSA i
c
i
d n
m
i
= c
i d
mod n
1 67
1031 3937
180 2
307 1031
3937 173
3 1945
1031 3937
178
Universitas Sumatera Utara
Tabel 4.7 Proses Dekripsi dengan algoritma RSA lanjutan
i c
i
d n
m
i
= c
i d
mod n
4 1260
1031 3937
100 5
2220 1031
3937 165
6 3408
1031 3937
184 7
2714 1031
3937 177
8 1260
1031 3937
100 9
1259 1031
3937 134
10 234
1031 3937
146 11
332 1031
3937 141
12 126
1031 3937
126 13
2889 1031
3937 119
14 2889
1031 3937
119 15
2665 1031
3937 123
16 2889
1031 3937
119
Hasil dekripsi tersebut dibagi menjadi blok-blok sama panjang dengan masing- masing 3 digit, kemudian dikurangi 68 dan dikonversi menggunakan kode ASCII agar
menjadi karakter plaintext pesan aslinya.
Tabel 4.8 Konversi dari Hasil Dekripsi ke Plaintext
m
i
m
i
- 68 Plaintext
180 112
p 173
105 i
178 110
n 100
32 spasi
165 97
a 184
116 t
177 109
m 100
32 spasi
Universitas Sumatera Utara
Tabel 4.8 Konversi dari Hasil Dekripsi ke Plaintext lanjutan
m
i
m
i
- 68 Plaintext
134 66
B 146
78 N
141 73
I 126
58 :
119 51
3 119
51 3
123 55
7 119
51 3
4.3 Tampilan Sistem