BAB 4
IMPLEMENTASI DAN PENGUJIAN
4.1 Implementasi Sistem
Setelah dilakukan analisis dan perancangan, proses berikutnya adalah implementasi
desain logik yang telah dibuat pada tahap sebelumnya. 4.1.1 Tahapan Algoritma Massey-Omura dan Three Pass Protocol dengan
menggunakan Lehmann Prime Generator Algoritma Massey-Omura adalah algoritma kriptografi modern yang menggunakan
sistem kriptografi asimetri kunci privat. Algoritma Massey-Omura diusulkan oleh James Massey dan Jim K. Omura pada tahun 1982 ini, melakukan pemfaktoran
bilangan yang sangat besar untuk mendapatkan kunci privat. Oleh karena alasan tersebut, Massey-Omura dianggap aman. Selain itu, Massey-Omura adalah salah satu
algoritma yang pengimplementasiannya menggunakan three pass protocol Winton, 2007.
Dalam kriptografi, three pass protocol merupakan kerangka kerja yang memungkinkan satu pihak bisa dengan aman mengirim pesan ke pihak kedua tanpa
perlu bertukar atau mendistribusikan kunci enkripsi. Konsep dasar three pass protocol adalah bahwa setiap pihak memiliki kunci pribadi dan kedua pihak menggunakan
kunci masing-masing secara mandiri Degraf, et al. 2007. Three pass protocol bekerja sebagai berikut :
a. Pengirim memilih kunci enkripsi eA. Pengirim mengenkripsi pesan m dengan kunci dan mengirimkan pesan terenkripsi ke penerima.
b. Penerima memilih kunci enkripsi eB. Penerima mengenkripsi pesan C
1
eA,m dengan kunci dan mengirim pesan terenkripsi C
2
eB, C
1
eA,m ke pengirim.
Universitas Sumatera Utara
c. Pengirim mendekripsi pesan C
2
eB, C
1
eA,m dengan menggunakan dA dan mengirim lagi pesan C
3
eB,m yang mana pesan ini dienkripsi oleh kunci penerima. Pengirim mengirim pesan tersebut ke penerima. Dan kemudian
penerima mendekripsi pesan tersebut dengan dB untuk bisa menghasilkan C
4
Plainteks.
Pada algoritma Massey-Omura ini, dibutuhkan bilangan prima untuk proses enkripsi dan dekripsi. Bilangan prima yang digunakan juga bisa lebih dari dua atau
tiga digit.Oleh sebab itu, digunakan Lehmann Prime Generator untuk membangkitkan bilangan prima secara acak sehingga penulis tidak perlu menetapkan atau mencari
bilangan prima secara manual. Penulis menggunakan algoritma Lehmann sebagai pembangkit bilangan prima karena apabila bilangan prima p bernilai 1 atau -1
berpeluang prima sebesar 50 yang apabila langkah ini diulang dan lolos sebanyak t kali maka akan menghasilkan sebuah bilangan prima p yang mempunyai
kesalahan tidak lebih dari 12
t
Mahmudi, 2010. Dimana t adalah jumlah digit bilangan prima yang diuji. Maka tingkat kesalahan yang dapat dilakukan semakin
kecil daripada menggunakan algoritma pembangkit bilangan prima yang sering digunakan seperti Fermat. Pembangkit bilangan prima Lehmann juga efesien untuk
mencari nilai yang sangat besar.
Sebagai contoh, A ingin mengirimkan pesan “ILKOM” kepada B. A menggunakan eA = 89 dan B menggunakan eB = 67. Dengan begitu, maka proses
yang akan terjadi adalah sbb : 1. Pilih bilangan prima p dengan menggunakan Lehmann Prime Generator.
Pengecekan bilangan prima yang dibangkitkan adalah dengan menggunakan Lehmann Prime Generator. Misalnya :
Bangkitkan bilangan prima 101, dan dilakukan pengecekan apakah bilangan ini merupakan bilangan prima atau bukan dengan cara sebagai berikut :
a. pilih sebuah bilangan a dimana 1 a 101. b. misalkan nilai random yang terpilih untuk nilai a adalah 2.
c. Hitung nilai L Legendre, dimana L ≡ a
p-12
mod p, dimana p = 101. L
≡ a
p-12
mod p
Universitas Sumatera Utara
≡ 2
101-12
mod 101 ≡ 2
50
mod 101 ≡ 1125899906842624 mod 101 ≡ -1
d. Dikarenakan 101 memiliki 3 digit, yaitu 1, 0 dan 1, maka pembuktian nilai 101 merupakan prima adalah dicari sebanyak 3 kali. Maka pilih kembali nilai a.
misal a = 3, maka L
≡ a
p-12
mod p ≡ 3
101-12
mod 101 ≡ 3
50
mod 101 ≡ 717897987691852588770249 mod 101 ≡ -1
a = 4, maka L
≡ a
p-12
mod p ≡ 4
101-12
mod 101 ≡ 4
50
mod 101 ≡ 126765060022822401496703205376 mod 101 ≡ 1
Maka benar bahwa 101 merupakan bilangan prima.
2. Enkripsi pesan dengan menggunakan algoritma Massey-Omura. Karakter “I” dalam ASCII bernilai 73,
Karakter “L” dalam ASCII bernilai 76, Karakter “K” dalam ASCII bernilai 75,
Karakter “O” dalam ASCII bernilai 79, Karakter “M” dalam ASCII bernilai 77,
Kemudian diketahui bahwa untuk mencari cipherteks maka kita menggunakan rumus:
C
1
= m
eA
mod p
Dimana eA telah ditentukan sebelumnya bernilai 89 dan p bernilai 101, sehingga : C
1
= m
eA
mod p = 73
89
mod 101 = 59 C
1
= m
eA
mod p = 76
89
mod 101 = 77
Universitas Sumatera Utara
C
1
= m
eA
mod p = 75
89
mod 101 = 11 C
1
= m
eA
mod p = 79
89
mod 101 = 19 C
1
= m
eA
mod p = 77
89
mod 101 = 47 Plainteks “Ilkom” setelah dienkripsi dengan Massey-Omura menjadi “59 77 11 19
47”. Cipherteks ini kemudian dikirim ke B.
3. Penerapan Three Pass Protocol untuk mendapatkan plainteks. Setelah B meneriman pesan dari A yang merupakan cipherteks, B tidak dapat
langsung mendekripsi pesan tersebut untuk mendapatkan plainteksnya. Tetapi, B harus mengenkripsi cipherteks tersebut dengan rumus :
C
2
= C
1 eB
mod p
Dimana eB bernilai 67 dan p bernilai 101, sehingga : C
2
=C
1 eB
mod p = 59
67
mod 101 = 86 C
2
= C
1 eB
mod p = 77
67
mod 101 = 96 C
2
=C
1 eB
mod p = 11
67
mod 101 = 12 C
2
=C
1 eB
mod p = 19
67
mod 101 = 68 C
2
=C
1 eB
mod p = 47
67
mod 101 = 23
Cipherteks “59 2 17 10 26” setelah dienkripsi lagi oleh B menjadi “86 96 12 68 23”. Cipherteks ini kemudian dikirim ke A. Kemudian A mendekripsi cipherteks
tersebut dengan rumus : C
3
= C
2 dA
mod p
Dimana dA ≡ eA
-1
mod p-1, sehingga : C
3
= C
2 dA
mod p = 86
9
mod 101 = 46 C
3
=C
2 dA
mod p = 96
9
mod 101 = 13 C
3
=C
2 dA
mod p = 12
9
mod 101 = 18 C
3
=C
2 dA
mod p = 68
9
mod 101 = 92 C
3
=C
2 dA
mod p = 23
9
mod 101 = 96
Universitas Sumatera Utara
Cipherteks “86 26 14 91 83” setelah dienkripsi lagi oleh A menjadi “46 13 18 92 96”.
Cipherteks ini kemudian dikirim ke B. Kemudian B mendekripsi cipherteks tersebut dengan rumus :
m = C
3 dB
mod p
Dimana dB ≡ eB
-1
mod p-1, sehingga : C
4
= C
3 dB
mod p = 46
3
mod 101 = 73 C
4
= C
3 dB
mod p = 13
3
mod 101 = 76 C
4
= C
3 dB
mod p = 18
3
mod 101 = 75 C
4
= C
3 dB
mod p = 92
3
mod 101 = 79 C
4
= C
3 dB
mod p = 96
3
mod 101 = 77
Nilai 73 dalam kode ASCII adalah karakter I Nilai 76 dalam kode ASCII adalah karakter L
Nilai 75 dalam kode ASCII adalah karakter K Nilai 79 dalam kode ASCII adalah karakter O
Nilai 77 dalam kode ASCII adalah karakter M
Setelah B mendekripsi pesan tersebut, maka diketahuilah bahwa pesan yang dikirim oleh A adalah “ILKOM”.
4.1.2 Spesifikasi Kebutuhan Perangkat Lunak Implementasi perangkat Add On menggunakan bahasa pemrograman XUL XML User
Interface untuk membangun antarmuka dan bahasa pemrograman javascript untuk mengembangkan modul kendali controller. Implementasi dilakukan dengan sistem
operasi Microsoft Windows 7 Ultimate dan perangkat lunak source code editor Notepad++. Perangkat lunak e-mail client yang digunakan pada saat implementasi dan
pengujian sistem adalah Mozilla Thunderbird 17.0.
Universitas Sumatera Utara
4.1.3 Tampilan Sistem Berikut adalah tampilan dari sistem yang dibangun :
1 Antarmuka Add-Ons Manager pada Pemasangan Add On Kemanan E-mail Setelah diimplementasi dalam bentuk package dengan ekstensi archive document
“.xpi”, Add On dipasangkan pada Perangkat Mozilla Thuderbird menggunakan fasilitas Add-Ons Manager.
Gambar 4.1 Pemasangan Add On dengan Menggunakan Add-Ons Manager
Pada gambar 4.1 terlihat bahwa add on Massey-Omura cryptosystem telah berhasil terpasang di e-mail client Mozilla Thunderbird dan add on ini tidak
bersifat permanen, disable add on untuk tidak memakai add on ini di Mozilla Thunderbird dan remove untuk menghapus add on dari Mozilla Thunderbird.
2 Antarmuka Jendela Write Setelah Pemasangan Add On Kemanan E-mail Setelah add on dipasang, pengguna mengatur icon enkripsi dan dekripsi yang
tampil pada toolbar jendela write. Pada jendela write icon enkripsi dan dekripsi akan terlihat seperti pada gambar 4.2.
Universitas Sumatera Utara
Gambar 4.2 Icon Enkripsi pada Toolbar Mozilla Thunderbird
Icon enkripsi digunakan untuk mengenkripsi pesan. Icon enkripsi akan otomatis muncul di toolbar apabila add on telah terpasang. Namun apabila add on
telah terpasang, icon enkripsi masih belum muncul di toolbar, pengguna bisa menambahkan icon secara manual dengan menu View Toolbars Customize.
Lalu drag icon ke toolbar.
Gambar 4.3 Icon Dekripsi pada Toolbar Mozilla Thunderbird
Universitas Sumatera Utara
Icon dekripsi digunakan untuk mendekripsi pesan. Sama seperti icon enkripsi, icon dekripsi akan otomatis muncul di toolbar apabila add on telah
terpasang. Namun apabila add on telah terpasang, icon dekripsi masih belum muncul di toolbar, pengguna bisa menambahkan icon secara manual dengan
menu View Toolbars Customize. Lalu drag icon ke toolbar.
3 Antarmuka Proses Enkripsi dan Dekripsi Pesan Sesuai dengan Three Pass Protocol
Proses pertama adalah pesan dimasukkan oleh pengirim pada jendela write, kemudian pengguna menekan buton “enkripsi” pada toolbar. Perangkat Add On
kemudian membangkitkan bilangan prima dengan Lehmann Prime Generator dan membangkitkan kunci dengan algoritma Massey-Omura untuk melakukan
enkripsi pesan. Kunci ini disimpan untuk keperluan dekripsi pada tahap selanjutnya.
Gambar 4.4 Pesan sebelum dienkripsi oleh Pengirim
Pesan tersebut kemudian dienkripsi terlebih dahulu oleh pengirim dengan menekan button enkripsi sebelum dikirim.
Universitas Sumatera Utara
Gambar 4.5 Pesan setelah dienkripsi oleh Pengirim
Pesan hasil enkripsi ini kemudian dikirimkan kepada penerima. Kemudian penerima membangkitkan kunci dengan algoritma Massey-Omura, kunci ini
kemudian digunakan untuk proses enkripsi. Seperti pada proses sebelumnya kunci ini disimpan untuk keperluan dekripsi pada tahap berikutnya.
Gambar 4.6 Enkripsi Pesan oleh Penerima
Universitas Sumatera Utara
Pesan hasil enkripsi sebanyak dua kali ini dikirim kembali ke pengirim untuk selanjutnya dilakukan dekripsi dengan kunci yang telah disimpan oleh
perangkat add on milik pengirim.
Gambar 4.7 Hasil Dekripsi Pesan oleh Pengirim
Kemudian pesan ini kembali dikirimkan kepada penerima untuk selanjutnya didekripsi oleh penerima sesuai dengan kunci miliknya sehingga diperoleh pesan
asli.
Gambar 4.8 Hasil Dekripsi Pesan oleh Penerima
Universitas Sumatera Utara
Pada gambar 4.8 terlihat bahwa pesan telah berhasil didekripsi. Pesan hasil dekripsi tersebut sama dengan pesan sebelum dienkripsi. Hal ini menunjukkan
bahwa proses enkripsi dan dekripsi dengan menggunakan algoritma Massey- Omura untuk mengamankan e-mail di Mozilla Thunderbird berjalan dengan baik.
4.2 Pengujian Sistem