BAB IV IMPLEMENTASI, PENGUJIAN, DAN ANALISIS HASIL
4.1 Implementasi Sistem 4.1.1 Kebutuhan Sistem •
Spesifikasi Perangkat Keras Perangkat keras yang digunakan untuk perancangan aplikasi ini adalah :
•
Prossesor
: Intel Pentium Dual core
Memori
: 2 GigaByte
VGA
: NVIDIA GFORCE (1 GigaByte)
Harddisk
: 120 GigaByte
Spesifikasi Perangkat Lunak Piranti lunak yang digunakan untuk perancangan dan pengoperasian aplikasi ini adalah : Sistem operasi
:
Windows 7 Ultimate-32 bit
Platform
:
Java SE version 1.6, Android SDK, NetBeans IDE 7.0
Bahasa Pemrograman
:
Android
4.1.2Instalasi Program Untuk menjalankan aplikasi ini secara virtual menggunakan komputer, dibutuhkan beberapa software pendukung tertentu yang sebelumnya harus dimiliki oleh user. Berikut ini adalah langkah-langkah yang harus dilakukan dalam
41
42 melakukan proses instalasi software pendukung supaya aplikasi tersebut dapat dijalankan dengan baik : 1. Lakukan instalasi Java, yang merupakan basis dari Android , yaitu Java SE versi 1.6 atau versi di atasnya melalui website http://www.oracle.com/technetwork/java/javase/downloads/index.htm. 2. Lakukan instalasi NetBeans sebagai IDE (Integrated development Environment) yang akan digunakan dalam prosescoding aplikasi Android.Eclipse dapat diunduh di http://www.netbeans.org/downloads/. 3. Lakukan Instalasi Android Platform dengan langkah-langkah sebagai berikut : •
Unduh Android SDK dan AVD (Android Virtual Device) Dapatkan file tersebut pada halaman berikut : http://developer.android.com/sdk/index.html
•
Install Android SDK.
Gambar 4.1 Android SDK •
Jalankan Android SDK Manager.
43
Gambar 4.2 Android SDK Manager •
Biarkan SDK Manager melakukan pengambilan data.
Gambar 4.3 Refresh Sources
44 Jika mengalami kegagalan untuk melakukan pengambilan data seperti di bawah ini :
Gambar 4.4 Failed to fetch URL : Connection timed out Bukalah menu Setting. Lalu pada bagian “Misc” pilih opsi “Force https://… sources to be fetched using http://…” Dan jika koneksi internet yang kamu gunakan melewati suatu proxy tertentu maka perlu dimasukkan pada bagian “Proxy Setting”. •
Instalasi Paket Platform. Setelah pengambilan data berhasil dilakukan, lakukan instalasi paket yang diperlukan. Buka menu “Available Packages”. Pilih paket. Lalu klik tombol “Install Selected”.
•
Paket yang telah berhasil dipasang (installed) dapat dilihat pada menu “Installed Packages”.
45 4. Buatlah AVD ( Android Virtual Device ) dengan langkah-langkah sebagai berikut : •
Buat AVD baru. Pada Android SDK Manager, buka menu “Virtual Devices”. Klik tombol New.
Gambar 4.5 Create AVD
46 •
Masukkan detil AVD yang akan dibuat.
•
Klik tombol “Create AVD”.
Gambar 4.6 New AVD
5. Lakukan Pengaturan pada Netbeans •
Buka pengaturan Plugins. ( Menu Tools -> Submenu Plugins )
•
Buka tab Setting.
47
Gambar 4.7 Setting •
Tambahkan Update Center. Pada halaman Setting, klik tombol Add. Masukkan nama Update Center yg baru (Bebas. Misal : NAndroidUpdateCenter). Masukkan URL berikut : http://kenai.com/projects/nbandroid/downloads/download/updatecenter/updat es.xml
Gambar 4.8 Tambah Update Center
48 •
Perbaharui katalog plugins. Buka tab Available Plugins. Klik tombol : Reload Catalog.
Gambar 4.9 Available Plugins •
Instalasi plugins Android. Setelah selesai langkah 4. Cari plugins Android. Tandai. Lalu klik tombol Install. Sedangkan, untuk menjalankan aplikasi ini secara langsung pada perangkat
android, maka cukup dengan menginstall file “kriptografi-debug.apk” yang terdapat di dalam folder program.
4.2 Pengujian Program Pengujian aplikasi KriptoSMS ini menggunakan metode blackbox. Materi yang akan diujikan pada aplikasi KriptoSMS ini adalah sebagai berikut :
49 1. Pengiriman pesan
Akan dilakukan pengujian pada proses pengiriman pesan apakah aplikasi KriptoSMS dapat mengenkripsi pesan dan mengirimkan pesan yang telah dienkripsi ke nomor yang dituju atau tidak. 2. Penerimaan pesan
Akan dilakukan pengujian pada proses penerimaan pesan apakah aplikasi KriptoSMS dapat menerima sebuah pesan dan mendekripsikannya menjadi pesan asli. 3. Penyimpanan pesan
Akan dilakukan pengujian pada proses penyimpanan pesan apakah aplikasi KriptoSMS dapat menyimpan pesan yang sudah diterima sebelumnya. 4. Laporan
Akan dilakukan pengujian apakah akan keluar sebuah laporan apabila pesan telah dienkripsi atau didekripsi. 5. Error
Akan dilakukan pengujian apakah error akan keluar apabila user salah menginputkan sebuah data. Saat program pertama kali dijalankan akan muncul emulator Android. Emulator ini berfungsi sebagai pengganti perangkat asli Android, sehingga memungkinkan user menjalankan program aplikasi ini secara virtual dengan menggunakan komputer. Hasil yang akan ditampilkan juga akan sama dengan ketika aplikasi ini diinstalasi pada perangkat Android.
50
Gambar 4.10 Halaman Awal Emulator Android Setelah halaman awal emulator terbuka, user harus men-drag kursor ke arah gambar gembok terbuka untuk membuka kunci (unlock). Setelah itu akan muncul layar menu utama dari emulator, seperti pada gambar di bawah ini (Gambar 4.11).
51
Gambar 4.11 Halaman Menu Awal Emulator Android Untuk memilih program aplikasi, tekan tombol menu yang berbentuk lingkaran dengan enam titik di bagian tengah bawah layar. Kemudian layar akan beralih ke halaman menu utama dari emulator Android, seperti yang tampak pada gambar di bawah ini (Gambar 4.12).
52
Gambar 4.12 Halaman Menu Utama Emulator Android Pada halaman menu utama emulator Android, klik program aplikasi yang ingin dijalankan, yaitu program aplikasi bernama KriptoSMS dengan logo Android di bagian kiri bawah layar.
53
Gambar 4.13 Halaman Utama Aplikasi KriptoSMS Pada halaman utama ini, terdapat 4 menu yang dapat dijalankan oleh user, yaitu menu “New Message”, “Inbox”, “About”, dan “Back”. Berikut ini adalah penjelasan tentang fitur dan kegunaan dari masing-masing menu tersebut : 1. Menu “New Message” Menu tersebut berfungsi untuk membuat pesan baru yang akan dikirim oleh pengirim kepada penerima. Jika menu ini dipilih, maka akan muncul tampilan seperti pada gambar 4.14 di bawah ini.
54
“ Gambar 4.14 Halaman Menu “New Message” Pada menu ini, user dapat mengisi nomor tujuan, password yang digunakan untuk mengenkripsi pesan, dan isi pesan rahasia yang ingin dikirimkan kepada penerima pesan. Dalam aplikasi ini, nomor tujuan penerima pesan dan password harus diisi (tidak boleh dikosongkan). Apabila nomor tujuan kosong dan user menekan tombol “Send”, maka akan muncul pesan error seperti gambar di bawah ini (gambar 4.15).
55
Gambar 4.15 Pesan Error Jika Penerima Dikosongkan Selanjutnya, jika nomor tujuan penerima pesan sudah diisi, sementara password masih dalam keadaan kosong dan user menekan tombol “Send”, maka pesan error juga akan muncul seperti gambar di bawah ini (gambar 4.16).
56
Gambar 4.16 Pesan Error Jika Password Dikosongkan Jika semua kolom sudah terisi dan user menekan tombol “Send”, maka akan muncul laporan berupa pesan pop-up yang menginformasikan bahwa pesan sudah berhasil dienkripsi dan dikirim kepada penerima. Berikut gambar tampilan yang akan muncul :
57
Gambar 4.17 Pesan Terkirim Jika user sudah menerima laporan ini, maka berarti pesan sudah berhasil dikirim ke nomor tujuan yang diinginkan. Sebaliknya, jika user menekan tombol “Back”, maka program akan kembali pada tampilan halaman sebelumnya, yaitu halaman utama aplikasi KriptoSMS (Gambar 4.13). 2. Menu “Inbox” Sama seperti menu SMS (Short Message Service) pada umumnya, menu “Inbox” pada aplikasi ini juga berfungsi untuk membaca pesan yang telah diterima oleh user. Jika menu ini dipilih, maka akan muncul daftar pesan yang sudah diterima
58 sebelumnya dan user dapat memilih pesan mana yang ingin dibaca. Berikut tampilan yang akan muncul di layar :
Gambar 4.18 Inbox Pada layar ini, user dapat memilih pesan yang ingin dibaca dan setelah memilih pesan tersebut, maka layar akan berpindah pada detail pesan yang telah dipilih sehingga user dapat melihat isi lengkap pesan tersebut seperti pada gambar di bawah ini :
59
Gambar 4.19 Detail Inbox Awal mulanya, layar ini hanya akan menampilkan chiper text yang dihasilkan dari enkripsi isi pesan dan password yang dikirim oleh pengirim pesan. Chiper text ini masih berupa tulisan acak sehingga sangat sulit bahkan tidak mungkin dimengerti isinya oleh siapapun tanpa didekripsi. Untuk membaca isi pesan yang sebenarnya, user harus memasukkan password yang benar pada kolom password sesuai dengan password yang dimasukkan oleh pengirim pesan. Setelah memasukkan password, user harus menekan tombol “Decrypt” untuk
60 menampilkan pesan asli yang dikirimkan. Jika password yang dimasukkan benar, maka akan muncul hasil seperti pada gambar di bawah ini :
Gambar 4.20 Pesan Dengan Password Yang Benar Dalam percobaan ini, pesan asli yang dikirim adalah “Ini adalah pesan rahasia.”, dengan password yang diberikan adalah “Binusian”. Tampilan di atas memperlihatkan pesan asli yang dihasilkan dengan password yang benar. Sedangkan, jika password yang dimasukkan berbeda, maka pesan akan tetap didekripsi tetapi hasilnya akan berbeda dan tidak menghasilkan pesan asli yang
61 ingin disampaikan oleh pengirim kepada penerima pesan. Berikut tampilan yang akan muncul dengan percobaan password yang dimasukkan adalah “Jakarta”.
Gambar 4.21 Pesan Dengan Password Yang Salah Dapat dilihat pada gambar 4.21, pesan tetap akan didekripsi meskipun password yang dimasukkan salah. Akan tetapi, hasil dekripsi pesan juga tetap acak dan tidak diketahui isi pesan yang sebenarnya karena password yang digunakan untuk mendekripsi pesan salah. Selain itu, jika password tidak diisi atau dikosongkan, maka pesan juga akan tetap didekripsi. Akan tetapi, hasil dekripsi pesan tersebut tidak akan ada
62 perubahan. Artinya, pesan asli yang ditampilkan akan sama dengan chiper text yang dihasilkan. Berikut adalah tampilan hasil dekrispsi dengan password yang kosong.
j
Gambar 4.22 Pesan Dengan Password Kosong Sebaliknya, jika user menekan tombol “Back”, maka layar akan kembali pada tampilan sebelumnya, yaitu menu “Inbox” seperti pada gambar 4.18. 3. Menu “About”
63 Menu tersebut berfungsi untuk memberikan deskripsi atau ringkasan tentang tujuan dan kegunaan dari aplikasi KriptoSMS tersebut. Jika menu ini dipilih, maka akan muncul tampilan seperti pada gambar 4.23 di bawah ini.
Gambar 4.23 Halaman Menu “About” Dengan menekan tombol “Back”, user akan kembali pada tampilan sebelumnya, yaitu menu utama seperti pada gambar 4.13.
64 4.3 Analisis Hasil Pada tahap ini akan dijelaskan analisis hasil kinerja dari aplikasi perangkat lunak KriptoSMS. 4.3.1 Analisis Enkripsi Pesan Pesan dan password (yang akan dijadikan key) akan ditransformasi terlebih dahulu ke kode ASCII. Kemudian pesan akan dienkripsi menggunakan key yang telah diinputkan dengan metode enkripsi modifikasi vigenere cipher. Pesan
:
Ini adalah pesan rahasia.
Key
:
Binusian
Ciphertext
:
kXXuUNC[%SogZ^D^D^R’W_MRS
dengan ilustrasi penghitungan (sesuai pada tabel ASCII pada bab II) sebagai berikut: Pesan
:
I Æ (41) , n Æ (78)
Key
:
B Æ (34) , i Æ (73)
Ciphertext
:
k Æ (41+34 = 75 mod 95 = 75), X Æ (78+73 = 151 mod 95 = 56)
dan seterusnya sehingga terbentuk chipertext sepanjang pesan aslinya.
4.3.2 Analisis Dekripsi Pesan Ciphertext akan tetap didekripsi oleh sistem walaupun user salah menginputkan password. Hasil pendekripsian dengan password benar sebagai berikut : Cipherteks
:
kXXuUNC[%SogZ^D^D^R’W_MRS
Password
:
Binusian
Plainteks
:
Ini adalah pesan rahasia.
dengan ilustrasi penghitungan sebagai berikut :
65 Untuk Huruf Pertama Cipherteks
:
k Æ (75)
Key
:
B Æ (34)
Karena k>B (75>34), maka plainteks yang dihasilkan ada hasil pengurangan dari desimal k dengan desimal B, sehingga diperoleh : Plainteks
:
I Æ (75-34 = 41 mod 95 = 41)
Untuk Huruf Kedua Cipherteks
:
X Æ (56)
Key
:
i Æ (73)
Karena X
73), maka desimal dari X harus dijumlahkan dengan 95, kemudian baru dikurangi dengan desimal dari i, sehingga diperoleh : Plainteks
:
n Æ ((56+95) - 73 = 78)
Begitu seterusnya sehingga diperoleh pesan asli yang dikirimkan oleh pengirim.
Berikut hasil jika penerima salah memasukkan password : Cipherteks
:
kXXuUNC[%SogZ^D^D^R’W_MRS
Password
:
Jakarta
Plainteks
:
Avl4bYa0Bf-sd{wzVz]is2hcn
Hasil uji selengkapnya dapat dilihat di tabel 4.1
Tabel 4.1 Hasil Pengujian Identifikasi
Deskripsi
Pengujian SRS – KSMS – 01
Prosedur
Input
Pengujian Pengujian input
- Masukkan no.tujuan - Masukkan password
Metode
Output
Kesimpulan
Pengujian No. tujuan, pesan, dan password
Black Box
Diterima
Black Box
Diterima
- Masukkan pesan SRS – KSMS – 02
Mengubah pesan dan password ke kode ASCII
SRS – KSMS – 03
Mengenkripsi pesan
Mengirimkan ciphertext
Black Box
Pesan berupa ciphertext
Diterima
SRS – KSMS – 04
Mengirimkan pesan dan memberikan laporan kepada pengirim
Mengirimkan pesan menggunakan aplikasi KriptoSMS
Black Box
Pesan terkirim dan pengirim menerima laporan bahwa pesan telah terkirim
Diterima
SRS – KSMS – 05
Menampilkan no. pengirim kepada penerima
Menampilkan no. pengirim kepada penerima
Black Box
No. Pengirim ditampilkan
Diterima
SRS – KSMS – 06
Menyisipkan pesan ke dalam inbox penerima
Menampilkan daftar pesan pada inbox penerima
Black Box
Daftar pesan ditampilkan pada inbox penerima
Diterima
66
SRS – KSMS – 07
Mendekripsi ciphertext
Mendekripsi ciphertext
Black Box
Ciphertext didekripsi
Diterima
SRS – KSMS – 08
Mengubah pesan ASCII ke karakter
Pesan ASCII diubah kembali menjadi karakter
Black Box
Pesan diubah dari kode ASCII menjadi karakter
Diterima
SRS – KSMS – 09
Menampilkan pesan kepada penerima
Ciphertext yang telah didekripsi ditampilkan kepada penerima
Black Box
Pesan ditampilkan
Diterima
Password
67