BAB IV IMPLEMENTASI DAN PENGUJIAN
Bab ini akan membahas tentang pengujian dan implementasi hasil program yang telah dibuat. Tujuan dari pengujian ini adalah untuk mengetahui apakah aplikasi yang telah dibuat sesuai dengan perancangannya.
Ruang Lingkup Pendukung Implementasi
4.1
Untuk menjalankan aplikasi yang telah dibangun maka dibutuhkan beberapa ruang lingkup pendukung implementasi yaitu berupa perangkat keras maupun perangkat lunak. Berikut adalah ruang lingkup untuk menjalankan aplikasi yang telah dikembangkan.
4.1.1
Ruang Lingkup Perangkat Keras Dalam pembuatan Aplikasi SMS Gateway berbasis Android dan Aplikasi
Client Server ini, digunakan beberapa perangkat keras dalam pengerjaannya. Berikut beberapa perangkat keras yang digunakan: 1. Handphone Samsung Galaxy W yang menggunakan sistem operasi Android versi 2.3.6 atau disebut dengan Gingerbread. 2. Notebook Asus K42J yang digunakan sebagai server aplikasi, adapun spesifikasi dari notebook yang digunakan adalah : a. Prosessor Intel Core i3 2,40GHz b. RAM DDR III 8GB 64
c. Harddisk berkapasitas 320GB d. VGA Nvidia GeForce 1GB
4.1.2 Ruang Lingkup Perangkat Lunak Beberapa perangkat lunak yang digunakan untuk pengembangan aplikasi ini antara lain: 1. Sistem Operasi Notebook Windows 7 Ultimate 2. Sistem Operasi Android Versi 2.3.6 atau Gingerbread 3. Eclipse 4. Framework Yii 5. Xampp
4.2
Implementasi Basis Data Dari perancangan basis data yang telah dilakukan maka selanjutnya
rancangan tersebut akan diimplementasikan menjadi sebuah basis data yang dapat digunakan. Berikut tabel basis data yang telah dibuat: 1. Tabel inbox
Gambar 4.2.1 Implementasi Tabel Inbox
65
2. Tabel balita
Gambar 4.2.2 Implementasi Tabel Balita
4.3
Implementasi Antarmuka Berikut hasil implementasi antarmuka Aplikasi SMS Gateway yang
dibangun:
4.3.1 Icon Aplikasi
Gambar 4.3.1 Icon Aplikasi SMS Gateway
66
4.3.2 Form Input
Gambar 4.3.2 Form Input Aplikasi SMS Gateway
4.3.3 Aplikasi Client Server
Gambar 4.3.3 Halaman Awal
67
Gambar 4.3.4 Menu Inbox
Gambar 4.3.5 Menu Balita
4.4
Implementasi Sistem Pada subbab ini akan dijelaskan mengenai implementasi sistem
berdasarkan
rancangan
program.
Rancangan
yang
telah
dibuat
akan
diimplementasikan ke dalam bentuk source code bahasa pemrograman, pada kasus ini digunakan 2(dua) bahasa pemrograman yaitu Java untuk Aplikasi SMS
68
Gateway berbasis Android dan PHP menggunakan framework Yii untuk Aplikasi Client Server berbasis web.
4.4.1 Implementasi Aplikasi SMS Gateway 4.4.1.1 Tahapan Enkripsi Data Berikut tahap pengcodingan enkripsi data:
public static String crypt(String input, String key){ byte[] crypted = null; try{ SecretKeySpec(Base64.decodeBase64(key), "AES"); SecretKeySpec skey = new SecretKeySpec(key.getBytes(), "AES"); Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding"); cipher.init(Cipher.ENCRYPT_MODE, skey); crypted = cipher.doFinal(input.getBytes()); }catch(Exception e){ } return new String(Base64.encodeBase64(crypted));
4.4.1.2 Tahapan Kirim Data Pada saat menekan tombol kirim pada Aplikasi SMS maka data yang dikirim akan terenkripsi, berikut proses pengcodingannya:
69
kirimButton.setOnClickListener(new OnClickListener() { public void onClick(View view) { String phoneNo = noTelpEdit.getText().toString(); String nama = namaEdit.getText().toString(); String alamat = alamatEdit.getText().toString(); String berat = beratEdit.getText().toString(); String tinggi = tinggiEdit.getText().toString(); String jk = jkSpinner.getSelectedItem().toString(); if(jk.equals("Laki-laki")) { jk = "L"; } else { jk = "P"; }
String pesan = nama+";"+alamat+";"+berat+";"+tinggi+";"+jk; String encPesan = GenerateAES.crypt(pesan, "1234567891234567"); try{ SmsManager sm = SmsManager.getDefault(); sm.sendTextMessage(phoneNo, null, encPesan, null, null); Toast.makeText(getApplicationContext(), "SMS
70
Terkirim!",Toast.LENGTH_LONG).show(); } catch(Exception e) { Toast.makeText(getApplicationContext(),"SMS gagal, Mohon dicoba lagi nanti!",Toast.LENGTH_LONG).show(); e.printStackTrace(); } }
4.4.1.3 Tahapan Dekripsi Data Tahapan dekripsi data pada Aplikasi Server:
public static function decrypt($sStr, $sKey) { $decrypted= mcrypt_decrypt( MCRYPT_RIJNDAEL_128, $sKey, base64_decode($sStr), MCRYPT_MODE_ECB ); $dec_s = strlen($decrypted); $padding = ord($decrypted[$dec_s-1]);
71
$decrypted = substr($decrypted, 0, -$padding); return $decrypted; }
4.5
Hasil Pengujian Menggunakan Black Box No 1.
Pengujian
Hasil Pengujian
Button Kirim
Berjalan dengan baik dan data berhasil terenkripsi
Tabel 1 Hasil Pengujian Black Box.
4.6
Hasil Pengujian Menggunakan Layanan Keamanan (Security Services) Untuk pengujian menggunakan layanan keamanan, yang diambil hanya 1
buah parameter, yaitu data confidentiality. Aplikasi SMS Gateway yang telah diintegrasikan modul enkripsi akan diuji menggunakan parameter tersebut. Berikut ini adalah tabel yang memperlihatkan hasil pengujian Aplikasi SMS Gateway yang telah diintegrasikan dengan modul enkripsi. Jenis Aplikasi
Proses Pendekodean
Aplikasi SMS Normal
Data berhasil didecode
Aplikasi SMS AES
Data tidak berhasi didecode
Tabel 2 Hasil Pengujian Menggunakan Data Confidentiality
72
4.7
Hasil Pengujian Data yang Terenkripsi dan Terdekripsi
Berikut hasil dari data balita yang berhasil dienkripsi dan didekripsi kembali:
Gambar 4.7.1 Data yang Terenkripsi
Gambar 4.7.2 Data yang Terdekripsi
73