BAB 4
IMPLEMENTASI DAN PENGUJIAN
Pada bab ini akan dijelaskan tentang implementasi dari aplikasi yang telah dirancang pada bab 3. Implementasi dilakukan untuk mengetahui hasil dari perangkat lunak yang
dibangun berjalan dengan baik dan output yang dihasilkan sudah sesuai dengan yang diharapkan.
4.1 Spesifikasi Perangkat Lunak
Perangkat lunak yang digunakan dalam pembuatan aplikasi password manager ini adalah netbean dan notepad++, yang sangat membantu dalam proses pengkodean dan
dapat mengurangi kesalahan penulisan sintaks program. Aplikasi ini dibangun pada sistem operasi Windows 7.
4.2 Spesifikasi Perangkat Keras
Dalam proses pembuatan aplikasi, konfigurasi komputer yang digunakan adalah notebook
MSI Gx400 dengan spesifikasi processor Intel Centrino 2 – 450M 2,4 Ghz, RAM 2.00 GB dengan sistem operasi Microsoft Windows 7. Tetapi aplikasi ini juga
dapat dijalankan dengan konfigurasi minimal komputer sebagai berikut: 1. Prosesor 233 Mhz
2. Memory RAM untuk windows 7, Windows Vista, Windows XP : 756 MB RAM.
3. Hard Disk 52 MB hard drive space. 4. Monitor 14.1” dengan resolusi layar 800 x 600 pixel.
5. Mouse dan keyboard.
Universitas Sumatera Utara
4.3 Implementasi 4.3.1 Proses Input Data
Gambar 4.1 Data yang Telah Disimpan
Dari gambar 4.1 data-data berupa username, password dan URL yang di masukkan ke dalam aplikasi untuk dienkripsi. Sebelum data ini dimasukkan. Aplikasi meminta
pengguna memasukkan Master Password yang berperan sebagai kunci key pada aplikasi.
4.3.2 Proses Pembentukan Kunci
Kunci key algoritma MMB pada aplikasi ini berasal dari master password yang dimasukkan oleh pengguna. Sebagai contoh, master password yang penulis gunakan
adalah “password manager” tanpa tanda kutip. Master password
dalam bentuk string akan diubah kedalam bentuk biner.
Seperti pada gambar 4.2.
Gambar 4.2 Pembentukan key kunci
Universitas Sumatera Utara
Proses pembentukan kunci key ini dimulai dengan mengubah kunci yang masih dalam bentuk string ke dalam bentuk biner sepanjang 128 bit. Lalu, dilanjutkan
dengan proses membagi 128 bit key menjadi 4. Sehingga masing-masing subkey memiliki panjang 32 bit.
4.3.3 Proses Enkripsi
Pada proses enkripsi akan ditampilkan plaintext yang telah dikonversi kedalam bentuk
biner. Seperti pada gambar 4.3.
Gambar 4.3 Plainteks Dalam Bentuk Heksadesimal dan Biner
Pada bab sebelumnya telah dijelaskan bahwa algoritma MMB bekerja pada blok berukuran 128 bit yang dibagi menjadi 4 sub blok berukuran 32 bit. Maka, akan
didapat susunan key k ,
k
1
, k
2
, k
3
dan plaintext x , x
1
, x
2
, x
3
. Pada langkah pertama untuk blok plain 0 dilakukan operasi XOR antara sub-
sub blok key k ,
k
1
, k
2
, k
3
dengan sub blok plainteks x , x
1
, x
2
, x
3
. Seperti pada
gambar 4.4.
Universitas Sumatera Utara
Gambar 4.4 Langkah 1 pada Blok Plain 0
Setelah didapatkan nilai plaintext dari langkah pertama. Lalu nilai plaintext tersebut digunakan sebagai plaintext untuk proses fungsi Fx pada langkah 2. Fungsi
f yang digunakan memiliki 3 langkah yaitu :
1. x
i
= γ
i
x
i
2. Jika LSB x = 1, maka x
= x XOR δ
Jika LSB x
3
= 0, maka x
3
= x
3
XOR δ 3. x
i
= x
i-1
XOR x
i
XOR x
i+1
Langkah 2 ditunjukkan pada gambar 4.5 dan gambar 4.6.
Universitas Sumatera Utara
Gambar 4.5 Langkah 2 untuk Blok Plain 0
Operasi perkalian yang digunakan merupakan operasi perkalian modulo 2
32
– 1. Sedangkan konstanta yang digunakan dapat dirincikan sebagai berikut :
δ = 2AAAAAAA γ = 025F1CDB
Nilai γ
1,
γ
2,
γ
3
diperoleh dengan cara sebagai berikut : γ
1
= 2 γ γ
2
= 2
3
γ γ
3
= 2
7
γ
Universitas Sumatera Utara
Gambar 4.6 Langkah 2 untuk Blok Plain 0 lanjutan
Setiap operasi yang dilakukan akan di-modulo 2
32
– 1. Ini dilakukan terutama untuk operasi yang ada kemungkinan menghasilkan nilai yang besar melebihi 32 bit,
seperti operasi perkalian. Hasil operasi XOR tidak perlu di-modulo, karena hasil XOR dua variabel 32 bit akan selalu 32 bit.
Gambar 4.10 Ciphertext hasil enkripsi
Universitas Sumatera Utara
Langkah 5 – langkah 13 tidak akan dijelaskan lagi secara mendetail. Proses di langkah ini tidak jauh berbeda dengan yang sudah ditunjukkan sebelumnya. Di akhir langkah
13, kita akan memperoleh hasil enkripsi plaintext menjadi ciphertext dalam bentuk
heksadesimal dan biner. Dapat dilihat pada gambar 4.7
4.3.4 Proses Dekripsi
Algoritma yang digunakan pada proses dekripsi agak sedikit berbeda dengan proses enkripsi. Proses dekripsi dari metode MMB merupakan kebalikan dari proses
enkripsi. Pada proses ini nilai ciphertext didapatkan dari hasil enkripsi.
Pada langkah pertama untuk blok cipher 0 dilakukan operasi XOR antara sub- sub blok key k
, k
1
, k
2
, k
3
dengan sub blok ciphertext x , x
1
, x
2
, x
3
.
Seperti pada gambar 4.8.
Gambar 4.8 Langkah 1 blok cipher 0
Universitas Sumatera Utara
Setelah didapatkan nilai plaintext dari langkah pertama. Lalu nilai plaintext tersebut digunakan sebagai plaintext untuk proses fungsi Fx pada langkah 2. Fungsi
f yang digunakan memiliki 3 langkah yaitu : 1. x
i
= γ
i
x
i
2. Jika LSB x = 1, maka x
= x XOR δ
Jika LSB x
3
= 0, maka x
3
= x
3
XOR δ 3. x
i
= x
i-1
XOR x
i
XOR x
i+1
Gambar 4.9 Langkah 2 blok cipher 0
Universitas Sumatera Utara
Gambar 4.10 Langkah 2 blok cipher 0 lanjutan
Pada proses dekripsi konstanta yang digunakan adalah δ = 2AAAAAAA
γ
-1
= 0DAD4694 Nilai γ
1,
γ
2,
γ
3
diperoleh dengan cara sebagai berikut : γ
1
= 2 γ γ
2
= 2
3
γ γ
3
= 2
7
γ
Langkah 5 – langkah 13 tidak akan dijelaskan lagi secara mendetail. Proses di langkah ini tidak jauh berbeda dengan yang sudah ditunjukkan sebelumnya. Di akhir langkah
13, kita akan memperoleh hasil enkripsi plaintext menjadi plaintext dalam bentuk
heksadesimal dan biner. Seperti pada gambar 4.11.
Universitas Sumatera Utara
Gambar 4.11 Plainteks hasil dekripsi
Dekripsi dilakukan dengan menerapkan transformasi iteratif pada blok-blok ciphertext dengan blok-blok kunci sebagai parameter. Fungsi putaran non-linear fx diterapkan
enam kali diantara pekalian modulo. Plaintext hasil dekripsi dibagi menjadi 4 subblock yang sama besar x0, x1, x2, x3.
4.4 Pengujian Sistem
Pengujian yang dilakukan adalah pengujian validasi validation testing dengan menggunakan metode blackbox. Metode blackbox merupakan metode
pengujian perangkat lunak tanpa memperhatikan perincian detail dari perangkat lunak tersebut. Pengujian validasi berfokus pada tindakan pengguna yang terlihat dan
pengguna dapat mengenali output dari sistem. Pengujian ini menjalankan sistem pada lingkungan yang aktif dengan menggunakan data yang benar. Whitten, 2004.
Berikut adalah tabel hasil pengujian untuk setiap modul yang ada pada Aplikasi Passwor Management menggunakan algoritma MMB.
Universitas Sumatera Utara
Tabel 4.1 Tabel Hasil Uji Aplikasi
No. Nama Modul
Prosedur Pengujian Masukan
Keluaran yang
Diharapkan Hasil
1 Membuat
Master Password
Memasukkan Master Passeord
Master Password,
konfirmasi Master
Password Menyimpan
File database baru dengan
format .apm ke tempat
folder tujuan
√
2 Memasukkan
Data User Memasukkan
username, password dan URL
kemudian mengeksekusi perintah
Tambah Data Username
, password
dan
URL
Konfirmasi data user
berhasil ditambah pada
database √
3 Mengubah Data
User Mengubah username,
password dan URL
kemudian mengeksekusi perintah
Ubah Data Username,
password dan
URL
Konfirmasi data user
berhasil diubah pada
database √
4 Menghapus
Data User Memilih data yang
akan dihapus pada tabel kemudian
mengeksekusi perintah Hapus Data
-- Konfirmasi
data user berhasil
dihapus pada database
√
5 Mengubah
Master Password
Mengubah Master Password
yang sebelumnya dengan
Master Password yang
baru Master
Password baru,
konfirmasi Master
Password Konfirmasi
master password
berhasil diubah
√
6 Salin Username
Memilih data usename yang akan disalin pada
tabel kemudian mengeksekusi perintah
Salin Username --
Konfirmasi data username
berhasil disalin
√
7 Salin Password
Memilih data password
yang akan disalin pada tabel
kemudian mengeksekusi perintah
Salin Password --
Konfirmasi data username
berhasil disalin
√
Universitas Sumatera Utara
Tabel 4.1 Tabel Hasil Uji Aplikasi lanjutan
8 Salin URL
Memilih data URL yang akan disalin
pada tabel kemudian mengeksekusi
perintah Salin URL --
Konfirmasi data URL
berhasil disalin
√
9 Membuka
Database Memilih database
yang telah disimpan di suatu folder
kemudian mengeksekusi
perintal Buka Database. Dan
meminta masukan master password
Master Password,
konfirmasi Master
Password Database
dapat dibuka jika masukan
master password
benar. Jika salah,
muncul konfirmasi
master password
salah dan data tidak
terbuka
√
10 Simpan
Database Menyimpan Data
masukan yang ada pada table ke suatu
folder
tujuan --
Konfirmasi database
berhasil disimpan
√
11 Log Aplikasi
Menampilkan log proses enkripsi dan
dekripsi data. --
Menampilka n log
proses enkripsi dan
dekripsi data.
√
Keterangan: √ benarberhasil
× salahgagal
Universitas Sumatera Utara
BAB 5
KESIMPULAN DAN SARAN
5.1 Kesimpulan