v
Daftar isi
Lembar Pengesahan...ii
KATA PENGANTAR ... iii
Daftar isi... v
Daftar Gambar ... vii
Daftar Table ... viii
ABSTRAK ...ix
Abstract...x
BAB I PERSYARATAN PRODUK ... 1
I.1 Pendahuluan ... 1
I.1.1 Tujuan... 1
I.1.2 Ruang Lingkup... 2
I.1.3 Definisi, Akronim, dan Singkatan... 2
I.1.5 Overview... 2
I.2 Gambaran Keseluruhan ... 4
I.2.1 Perspektif Produk... 4
I.2.2 Fungsi Produk... 6
I.2.3 Karakteristik User... 6
I.2.4 Batasan – Batasan... 6
I.2.5 Asumsi dan Ketergantungan... 7
BAB II SPESIFIKASI PRODUK... 8
II.1 Persyaratan Antarmuka Eksternal ... 8
II.1.1 Antarmuka dengan User ... 8
II.1.2 Antarmuka Perangkat Keras ... 8
II.1.3 Antarmuka Perangkat Lunak ... 9
II.1.4 Antarmuka Komunikasi ... 9
II.2 Fitur Produk Perangkat Lunak... 9
II.2.1 Menambah Data ... 9
II.2.2 Log In... 10
II.2.3 Melihat data ... 11
II.2.4 Hapus Username dan password... 12
II.2.5 Melihat usulan password ... 13
II.2.6 Mencatat Histori Password ... 14
BAB III ANALISIS... 16
III.1 Pendahuluan ... 16
III.1.1 Identifikasi ... 16
III.1.2 Overview Sistem ... 18
III.2. Keputusan Desain Perangkat Lunak Secara Keseluruhan... 22
III.2.1 Use case ... 22
III.2.2 Activity Diagram ... 26
III.2.3 Class Diagram ... 32
III.2.4 Database ... 34
III.3. Desain Arsitektur Perangkat Lunak ... 37
III.3.1 Komponen Perangkat Lunak ... 37
III.3.2 Konsep Ekseskusi... 37
III.3.3 Design Antar Muka ... 38
vi
IV.1 Perencanaan Tahap Implementasi ... 42
IV.1.1 Pembagian Class Implementasi ... 42
IV.1.2 Keterkaitan Antar Class... 42
IV.2 Perjalanan Tahap Implementasi (Coding)... 43
IV.2.1 Top Down Implementasi ... 43
IV.2.2 Debugging ... 45
IV.2.3 Ulasan Realisasi Fungsionalitas... 45
IV.2.4 Ulasan Realisasi User Interface Design ... 46
BAB V TESTING DAN EVALUASI SISTEM... 51
V.1 Rencana Pengujian Sistem Terimplementasi ... 51
V.1.1 Test Case ... 51
V.1.2 Uji Fungsionalitas Modul / Class... 51
V.2 Perjalanan Metodologi Penelitian... 52
V.2.1 Black Box ... 52
V.2.2 White Box ... 54
V.3 Ulasan Hasil Evaluasi ... 57
BAB VI KESIMPULAN DAN SARAN ... 58
VI.1 Kesimpulan berdasarkan Hasil Evaluasi ... 58
VI.2 Saran berdasarkan Hasil Evaluasi ... 58
Daftar Pustaka ... 59
Lampiran ... 60
vii
Daftar Gambar
Gambar 3.1 ASCII table... 19
Gambar 3.2 Penjelasan table ASCII... 20
Gambar 3.3 Use Case Diagram POG... 22
Gambar 3.4 Activity Diagram Hapus Data... 26
Gambar 3.5 Activity Diagram Menambah Data... 27
Gambar 3.6 Gambar Activity Melihat Usulan Password... 29
Gambar 3.7 Activity Mengukur kekuatan Password... 30
Gambar 3.8 Class Diagram bagian 1... 32
Gambar 3.9 Class Diagram bagian 2... 33
Gambar 3.10 Class Diagram Bagian 3... 34
Gambar 3.11 Struktur database XML POG... 36
Gambar 3.12 XML History password... 37
Gambar 3.13 Tampilan Login... 38
Gambar 3.14 Tampilan Main Menu... 39
Gambar 3.15 Tambah Data... 40
Gambar 3.16 Tampilan Menu utama... 40
Gambar 4.1 Kode program proses mutasi... 44
Gambar 4.2 Kode program perkawinan... 45
Gambar 4.3 Tampilan Login... 46
Gambar 4.4 Tampilan menu register... 47
Gambar 4.5 Tampilan Usulan Password... 48
Gambar 4.6 Pembuatan Populasi... 48
Gambar 4.7 Tampilan add data... 49
Gambar 4.8 Tampilan edit data... 50
Gambar 5.1 Test Case AllData... 55
viii
Daftar Table
Table 5.1 Pengujian black Box Login... 53
Table 5.2 Pengujian Black Box Add Data ... 53
Table 5.3 Penjelasan Test Case all Data ... 55
ix
ABSTRAK
Password, adalah sesuatu yang bersifat sangat rahasia yang hanya dimiliki oleh orang yang bersangkutan atau kelompok yang bersangkutan. Sebagai seorang manusia, terkadang kita melupakan password yang pernah kita buat atau kita ganti Oleh karena itu, dibutuhkan sebuah perangkat bantu untuk mengelola password. Password Organizer and Generator adalah salah satu aplikasi yang dapat membantu untuk membuat password, mengorganisasi password yang dimasukkan. Pembuatan password, menggunakan algoritma genetik sehingga kualitas password menjadi kuat dan lebih aman. Aplikasi ini menyimpan password dalam bentuk XML. Data di dalam XML dienkripsi menggunakan PBE With MD5 and DES sehingga lebih aman atau kerahasiaannya terjaga.
x
Abstract
Password, are something confidential and only had by some people that relational. As a human being, we sometimes forgot password we had made or changed. Because of that, a helpful device was needed to organize password. Password Organizer and Generator are one of many application that can help to create a password and organize password which inputed by user. Genetic algorithm was used to create password, so the password strength were created became strong and more secure. This application store password in XML form. The data were encrypted with algorithm PBE with MD5 and DES so the data would be more secure or keep confidential.
1
BAB I PERSYARATAN PRODUK
I.1 Pendahuluan
Password atau dikenal juga dengan sebutan kata sandi adalah sebuah susunan huruf yang diperlukan seseorang untuk dapat masuk ke dalam sebuah aplikasi atau untuk dapat masuk ke dalam sebuah halaman tersendiri di internet seperti e-mail. Kata sandi tersebut mungkin kita lupa. Untuk itu kita harus memasukkan sebuah kata sandi baru yang dapat kita ingat lagi secara lebih baik. Kata sandi biasanya digunakan untuk dapat masuk ke dalam aplikasi yang hanya boleh diketahui oleh orang yang bersangkutan sehingga kata sandi tersebut tidak diperbolehkan diketahui oleh orang lain.
Adanya keterbatasan yang dimiliki manusia, menyebabkan sulitnya bagi kita untuk mengingat hal-hal seperti password maupun username. Apalagi, jika kita tidak sering menggunakan username dan password tersebut, biasanya kita harus mendaftar lagi atau mengganti dengan sebuah password yang baru. Hal ini sering membuat kita kesal karena harus berulang-ulang melakukan hal yang sama jika membutuhkan untuk masuk ke dalam halaman web terutama disaat kita butuh secara cepat.
I.1.1 Tujuan
Aplikasi yang akan dibuat memiliki tujuan untuk memudahkan user yang memiliki banyak password yang harus diingat. User hanya butuh untuk mengingat sebuah password yang akan digunakan untuk masuk ke dalam aplikasi. Selain itu, aplikasi ini juga dapat menyarankan sebuah password baru yang dapat digunakan. Kekuatan dari password juga akan diukur dan diberitahukan kepada user agar user dapat mengganti password yang kurang kekuatannya dengan sebuah password baru yang lebih kuat.
2
I.1.2 Ruang Lingkup
Aplikasi ini memiliki nama Password Organizer and Generator (POG). POG memiliki halaman log in, yang dapat diakses oleh user jika ingin mengaktifkan aplikasi ini. Setelah user mengaktifkan aplikasi ini, user dapat melakukan hal-hal seperti menambahkan sebuah alamat website beserta username dan password-nya, melakukan pengubahan data username atau password dari sebuah web maupun melakukan penghapusan data. Selain itu, user yang menggunakan aplikasi ini dapat mengukur kekuatan password yang disimpan dalam aplikasi serta dapat memberikan saran password yang berasal dari proses algoritma genetik.
I.1.3 Definisi, Akronim, dan Singkatan
Berikut ini daftar akronim dan singkatan yang digunakan di dalam laporan ini :
1) Software : Perangkat lunak 2) Hardware : Perangkat keras
3) UML : Unified Modeling Language 4) User : User aplikasi
5) JDK : Java Development Kit 6) User Interface Design : Tampilan antar muka 7) Database : Penyimpanan data
8) WWW : World Wide Web
9) XML : Extensible Markup Language
I.1.5 Overview
3 Bab I : Persyaratan Produk
Bab ini menjelaskan pengembangan software yaitu ruang lingkup, tujuan produk, akronim dan penjelasan produk.
Bab II : Spesifikasi Produk
Bab ini menjelaskan aspek produk yang dibangun secara terperinci. Bab ini mengambarkan fitur-fitur apa saja yang akan diimplementasikan di dalam software yang dibuat, sehingga mampu memaparkan secara jelas semua fungsionalitas dan kemampuan software.
Bab III : Desain Perangkat Lunak
Bab ini menjelaskan desain-desain produk secara keseluruhan dan menggambarkan bagaimana software yang akan dibuat, antara lain:
User Interface Design. Desain database.
Bab IV : Pengembangan Sistem
Bab ini menjelaskan proses pengembangan sistem. Mulai dari perencanaan tahap implementasi hingga perjalanan tahap implementasi yang berupa kode-kode.
Bab V : Testing dan Evaluasi Sistem
4
Bab VI Kesimpulan dan Saran
Bab ini akan membahas mengenai keterkaitan antara kesimpulan dan hasil evaluasi, juga membahas keterkaitan antara saran dengan hasil evaluasi.:
I.2 Gambaran Keseluruhan
Pembuatan aplikasi POG memiliki latar belakang kemampuan otak manusia untuk mengingat sesuatu hal yang sangat terbatas, terutama apabila hal tersebut jarang untuk digunakan. Kemampuan manusia untuk mengingat terbatas dan berbeda pada setiap orang, membuat seseorang dapat keliru memasukkan username dan password untuk sebuah halaman web maupun aplikasi. Aplikasi ini merupakan aplikasi yang berdiri sendiri dan memiliki sebuah database untuk menyimpan data yang dibutuhkan. Database yang digunakan berupa database sederhana ter- enkripsi dalam bentuk file XML.
I.2.1 Perspektif Produk
I.2.1.1 Antarmuka Sistem
Antarmuka sistem terbagi atas beberapa bagian,antara lain : Antarmuka dengan user.
Antarmuka perangkat keras. Antarmuka perangkat lunak. Antarmuka komunikasi.
Sedangkan proses pengembangan aplikasi agar dapat diselesaikan dengan baik, dibutuhkan sebuah software yaitu: Netbeans
5
I.2.1.2 Antarmuka dengan User
Aplikasi yang dibuat memberikan kemudahan kepada user dalam melakukan manajemen username dan password. Dibawah ini adalah deskripsi singkat antarmuka usernya adalah :
Untuk sistem login, ditampilkan dengan menggunakan textbox yang harus mengisikan username dan password. Untuk User, menambah, melakukan update, menghapus
data username dan password dan melihat data username dan password.
Memberikan alternatif pilihan password yang dapat digunakan oleh user.
Memberikan pesan error kepada user secara jelas sesuai dengan kesalahan yang terjadi.
I.2.1.3 Antarmuka Perangkat Keras
Perangkat keras yang dibutuhkan agar aplikasi dapat berjalan dengan baik, membutuhkan sebuah Personal Computer (PC).
I.2.1.4 Antarmuka Perangkat Lunak
Untuk perangkat lunak / software yang dibutuhkan adalah : 1) Nama : Netbeans 5.5
Versi : 5.5
2) Nama : Windows XP Profesional Edition Versi : SP2
I.2.1.5 Antarmuka Komunikasi
6
I.2.1.6 Batasan Memori
PC menggunakan memori 256 Mbyte dengan kapasitas kosong HardDisk sebesar 10 Mbyte.
I.2.1.7 Operasi – Operasi
Operasi – operasi yang dilakukan adalah :
1) Menambahkan username, password dan alamat web 2) Mengubah username, password dan alamat web 3) Melihat username, password dan alamat web 4) Melihat saran password yang dapat digunakan
5) Melihat lima (5) Password terakhir yang telah disimpan
I.2.2 Fungsi Produk
Aplikasi ini memiliki fungsi yang sangat berhubungan satu dengan lainnya, secara global fungsi – fungsi tersebut adalah :
1) Menambahkan username, password dan alamat web 2) Mengubah username, password dan alamat web 3) Melihat username, password dan alamat web 4) Melihat saran password yang dapat digunakan
I.2.3 Karakteristik User
Karakteristik user aplikasi ini adalah :
Tingkat pendidikan : Tidak dibatasi
Pengalaman : Sering melupakan password.
I.2.4 Batasan – Batasan
Batasan – batasan yang harus diperhatikan adalah sebagai berikut :
7
Username, password dan alamat e-mail yang dimasukkan disimpan dalam sebuah file XML ter-enkripsi. Database yang digunakan dalam bentuk file XML terenkripsi dengan menggunakan algoritma PBEWithMD5AndDES.
Tidak membahas mengenai algoritma enkripsi PBEWithMD5AndDES.
Dalam satu alamat web yang sama, tidak terdapat lebih dari satu username dan satu password.
Sistem tidak menyimpan password yang sudah pernah disarankan sebelumnya.
Sistem hanya akan menghasilkan password dengan variasi 127 bit.
Sistem hanya menghasilkan password acak hasil generasi dari algoritma genetik.
I.2.5 Asumsi dan Ketergantungan
Asumsi dan ketergantungan yang harus diperhatikan adalah sebagai berikut :
PC yang akan digunakan telah memiliki JDK.
58
BAB VI KESIMPULAN DAN SARAN
VI.1 Kesimpulan berdasarkan Hasil Evaluasi
Hasil evaluasi dengan black box dan test case ditarik sebuah kesimpulan yang menjadi masukan-masukan bagi aplikasi Password Organizer and Generator ini antara lain :
Dapat membantu user untuk mempermudah dalam mengingat password karena hanya perlu mengingat sebuah master password. Mengurangi tingkat penggantian password yang terjadi akibat
sering melupakan password yang digunakan.
Mampu untuk memberikan saran password yang kuat sehingga menyulitkan seseorang yang ingin melakukan penerobosan.
VI.2 Saran berdasarkan Hasil Evaluasi
Selain menarik kesimpulan dari hasil evaluasi didapatkan saran-saran yang dapat mengembangkan aplikasi Password Organizer and Generator dimasa yang akan datang. Saran-saran tersebut antara lain adalah :
Database file diubah menjadi sebuah file XML yang terenkripsi nama tagnya untuk menambahkan keamanannya.
Desain antarmuka dapat dikembangkan untuk dapat lebih memudahkan user.
Pengembangan untuk melakukan login secara langsung ke dalam sebuah website dengan menekan tombol hotKeys. Apabila data hilang, dapat melakukan recovery melalui log
59
Daftar Pustaka
1) Mitchell, Melanie (2002). AN INTRODUCTION TO GENETIC ALGORITHMS. New-Delhi: Prentice-Hall of India.
2) Lowe,Doug, Murach, Joel (2005). MURACH’S BEGINNING JAVA 2 JDK 5. Mike Murach & Asscociate, Inc.
3) Mark Watson,PRACTICAL ARTIFICIAL INTELEGENCE PROGRAMMING IN JAVA. Version 1.02(18 November 2005) 4) -, http://www.passwordmeter.com/ ( 29 Mei 2009 )
5) Phiras. Password Strength Meter (A Jquery Plugin). Retrieved May, 28, 2009, from http://phiras.wordpress.com/2007/04/08/password-strength-meter-a-jquery-plugin/
6) Totheriver.com (2009). Xml and Java – Parsing XML using Tava Tutorial. Retrieved May, 31, 2009, from
http://www.java-samples.com/showtutorial.php?tutorialid=152
7) Chonoles, Michael Jesse, James A. Schardt (2003). UML2 FOR DUMMIES. New York Wiley Publishing Inc.
8) INTRODUCTION TO XML.