Metode dan Perancangan Sistem
Dalam perancangan dan pengimplementasian perangkat
lunak diperlukan perancangan sistem terlebih dahulu yang
bertujuan untuk memberikan gambaran kepada pengguna tentang
sistem yang akan dibuat serta memberikan informasi dan desain
dari sistem tersebut. Pada bab ini akan dibahas seluruh tahap
perancangan, mulai dari bahan dan materi yang dibutuhkan,
metode penelitian yang digunakan serta beberapa penjelasan
lainnya yang memuat tahap-tahap dalam mengerjakan penelitian.
3.1 Metode Pengembangan Sistem
Prototype Model adalah metode pengembangan perangkat lunak yang banyak digunakan.Metode ini memungkinkan adanya
interaksi antara pengembang sistem dengan pengguna sistem
nantinya, sehingga dapat mengatasi ketidakserasian antara
Bagan mengenai prototype model dapat dilihat pada Gambar 3.1.
Gambar 3.1 Bagan Prototype Model (Pressman, 2001)
Tahap-tahap dalam P rototype Model adalah sebagai berikut:
1. Listen to Costumer
Pada tahap ini dilakukan analisis terhadap
permasalahan yang ada, yaitu mendapatkan data dan literatur
yang terkait dengan proses, enkripsi, dekripsi menggunakan
algoritma RSA dan XOR; melalui dokumen dan referensi
yang ada.
2. Build
Selanjutnya setelah memperoleh data dan mengetahui
proses enkripsi dan dekripsi dengan algoritma RSA dan
XOR, langkah berikutnya adalah membuat perancangan
dilakukan pula perancangan pada user interface berupa
prototype sistem.
3. Costumer Test
Pada Tahap ini dilakukan pengujian sistem, yaitu
menjalankan proses implementasi sistem, dengan menguji
proses enkripsi dan dekripsi pengiriman e-mail, serta melihat hasil yang diberikan apakah sudah sesuai dengan konsep
RSA dan XOR.
3.2 Analisa Kebutuhan Sistem
Analisa kebutuhan digunakan untuk mengetahui dan
menterjemahkan semua permasalahan serta kebutuhan perangkat
lunak dan kebutuhan sistem yang dibangun. Oleh karena itu,
dalam tahap ini dilakukan proses pengumpulan data untuk
membangun sistem.
Analisa kebutuhan sistem perangkat keras dan perangkat
lunak meliputi :
- Kebutuhan Perangkat keras yang akan digunakan untuk
membangun aplikasi tersebut, memiliki spesifikasi:
Intel core i3 2.40 GHz
2GB RAM
120 GB Harddisk
3.3 Analisa
Output
Sistem yang dibangun, dapat menghasilkan dua macam
output yang berupa ciphertext dari file/document yang telah dienkripsi dengan menggunakan kunci public serta output berupa
plaintext atau original file sebelum dienkripsi. Setelah terjadi proses dekripsi dan setelah didekripsi dengan kunci private yang telah dibangkitkan.
3.4 Analisa Perancangan Sistem
Dalam perancangan sistem aplikasi, digunakan UML
(Unified Modelling Language) yaitu sebuah bahasa yang telah menjadi standar dalam industri untuk visualisasi, merancang dan
mendokumentasikan sistem piranti lunak. UML menawarkan
sebuah standar untuk merancang model sebuah sistem.
3.4.1 Use Case Diagram
Use Case Diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem yang dibangun. Sebuah use case
merepresentasikan sebuah interaksi aktor atau pengguna dan
-Usecase diagram Pengirim
Gambar 3.2 Usecase diagram Pengirim
Gambar 3.2 Untuk menjalankan aplikasi RSA, pengirim
dapat melakukan proses eknripsi yang diawali dengan membuat
kunci public dan private. Setelah itu pengirim dapat menambah
file yang akan dienkripsi, kemudian enkripsi file dimana data-data
file akan diamankan. Setelah proses enkripsi selesai, pengirim dapat menyimpan file hasil enkripsi
Buat kunci publik & privat
Pengirim
Mengirim kunci privat via e-mail
Menambah plaintext
Menyimpan chipertext Enkripsi
- Usecase diagram Penerima
Gambar 3.3 Usecase diagram penerima
Gambar 3.3 menunjukkan bahwa penerima dapat melakukan proses dekripsi, dimana dalam proses dekripsi penerima dapat melakukan 3 aktifitas yaitu menambah file, menghapus file dan menyimpan file hasil dekripsi.
3.4.2 Activity Diagram
Activity diagram menggambarkan proses-proses yang terjadi mulai aktivitas dimulai sampai aktifitas berhenti. Untuk
kebutuhan proses dalam sistem yang akan dibangun digambarkan
pada Gambar 3.4.
Mengunduh Ciphertext Mengunduh Kunci Privat
Penerima
Menyimpan Plaintext Menambah Ciphertext
Dekripsi
\
Gambar 3.4 Activity Diagram Aplikasi RSA
Gambar 3.4 menunjukkan activity diagram aplikasi RSA, di mana pada saat aplikasi dijalankan, pengirim dapat memilih
menu generate key, selanjutnya aplikasi akan melakukan proses
generate public dan private key. Setelah proses tersebut selesai, maka pengirim dapat melakukan proses pengiriman private key
kepada penerima ataupun memilih plain file. Apabila pengirim memilih plainfile, maka aplikasi akan melakukan proses enkripsi
kemudian aplikasi akan mengirimkan chipper file kepada
penerima. Apabila penerima telah menerima private key dan
chipper file, Selanjutnya aplikasi dapat melakukan proses pengiriman cipher text kepada penerima. Penerima menerima
cipher key yang telah dikirim. Aplikasi melanjutkan dengan melakukan proses dekripsi. Selanjutnya aplikasi melakukan
proses penyimpanan plain file.
3.4.3 Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu.
Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait).
- Sequence Diagram Pembuatan Kunci
Gambar 3.5 Sequence Diagram Pembuatan Kunci
Gambar 3.5 merupakan sequence diagram untuk proses pembuatan kunci pada aplikasi RSA untuk mengamankan e-mail.
Untuk membuat kunci, penerima diminta untuk menentukan Bit Strength kemudian menentukan lokasi penyimpanan public key.
Setelah itu, penerima harus menentukan lokasi penyimpanan
Pengirim Aplikasi
1: Tentukan Bit Strength
2: Tentukan Lokasi Simpan Kunci Public
3: Tentukan Lokasi Simpan Kunci Private
4: Generate Keys
private key. Setelah lokasi penyimpanan kunci telah ditentukan, selanjutnya aplikasi akan melakukan proses generatekeys.
-Sequence Diagram Proses Enkripsi
Gambar 3.6 Sequence Diagram Proses Enkripsi
Gambar 3.6 merupakan sequence diagram untuk proses enkripsi. Tahap pertama, pengirim diminta untuk menambahkan
file yang akan dienkripsi kemudian pengirim diminta untuk memilih file dan kunci public. Setelah itu, aplikasi akan melakukan proses enkripsi untuk mengenksripsi file yang telah ditambahkan tadi. Kemudian pengirim diminta untuk menentukan
lokasi penyimpanan hasil enkripsi. Apabila telah selesai, aplikasi
akan memberikan konfirmasi kepada pengirim.
Pengirim Aplikasi 1: Menentukan File & Kunci Public
- Sequence Diagram Proses Dekripsi
Gambar 3.7 Sequence Diagram Proses Dekripsi
Gambar 3.7 merupakan sequence diagram untuk proses dekripsi. Tahap pertama, penerima diminta untuk menambahkan
file yang akan didekripsi kemudian penerima diminta untuk menentukan file dan kunci private untuk mendekripsi file yang telah ditambahkan. Setelah itu, penerima diminta untuk
menentukan lokasi penyimpanan hasil dekripsi. Apabila proses
tersebut telah selesai, maka aplikasi akan memberikan konfirmasi
kepada penerima.
3.4.4 Class Diagram
Class diagram adalah sebuah spesifikasi yang jika dilakukan proses instansiasi akan menghasilkan sebuah objek dan
merupakan inti dari pengembangan dan desain berorientasi objek.
Instansiasi adalah proses pembuatan Object dari suatu Class pada
konsep Bahasa OOP. Class menggambarkan keadaan
(atribut/properti) suatu sistem, sekaligus menawarkan layanan
Penerima Aplikasi
1: Menentukan File & Kunci Private
2: Decrypt
3: Simpan File
untuk memanipulasi keadaan tersebut (metoda/fungsi). Class diagram menggambarkan struktur dan deskripsi class, package
dan objek beserta hubungan satu sama lain seperti containment,
pewarisan, asosiasi, dan lain-lain.
Gambar 3.8 Class Diagram Proses Enkripsi dan Dekripsi program
3.5 Perancangan
Interface
Kebutuhan interface yang dibuat bersifat user friendly
dengan tujuan agar program yang telah dibangun dapat digunakan
dengan mudah oleh pengguna. Karena program yang dibangun
dimaksudkan untuk user yang memiliki pengetahuan tentang penggunaan komputer yang beragam, maka interface yang digunakan akan dilengkapi dengan pilihan bantuan yang berisi
petunjuk penggunaannya.
3.5.1 Rancangan Menu Utama
Gambar 3.9 Rancangan Halaman utama
Gambar 3.9 menunjukkan rancangan form awal sistem yang akan dibuat, secara sederhana dapat dijelaskan sebagai berikut :
1. Bagian bernomor 1 adalah form utama, yang diberi gambar sebagai background/picture box.
2. Bagian bernomor 2 adalah tombol file. Tombol ini adalah tombol untuk memanggil form encrypt dan form decrypt.
2 3 4
3. Bagian bernomor 3 adalah tombol keys. Tombol ini
berfungsi untuk melakukan proses pembuatan public keys dan private keys.
4. Bagian bernomor 4 merupakan tombol help, yang berisikan bantuan petunjuk penggunaan aplikasi serta about program.
3.5.2 Rancangan Form Pembuatan Kunci
Gambar 3.10 Rancangan Form Pembuatan Kunci
Gambar 3.10 merupakan rancangan form pembuatan kunci yang nantinya akan digunakan untuk proses enkripsi dan dekripsi.
Berikut ini merupakan penjelasan dari Gambar 3.10.
1. Bagian bernomor 1 adalah tombol Bit Strength yang berfungsi sebagai pilihan kekuatan bitrate yang akan dipakai dalam pembuatan kunci.
1
2
4 3
2. Bagian bernomor 2 adalah tombol Public Key yang berfungsi sebagai pembuatan kunci public dan penyimpanan kunci public tersebut.
3. Bagian bernomor 3 adalah tombol Private Key yang berfungsi sebagai pembuatan kunci private dan penyimpanan kunci private tersebut.
4. Bagian bernomor 4 adalah tombol Generate yang berfungsi untuk membangkitkan pembuatan kunci public dan kunci kunci private yang telah dibuat tersebut.
5. Bagian bernomor 5 adalah tombol Close yang berfungsi untuk keluar dari form create key.
3.5.3 Rancangan Form Proses Enkripsi
Gambar 3.11 Rancangan Form Proses Enkripsi
Gambar 3.11 Merupakan rancangan form proses enkripsi pada file yang akan diamankan. Gambar 3.11 dijelaskan sebagai berikut:
1. Bagian bernomor 1 adalah tombol Add File yang berfungsi untuk pilihan untuk menambah file yang akan dienkripsi. 2. Bagian bernomor 2 adalah tombol Removed Selected yang
berfungsi untuk meremove atau membatalkan file yang akan dienkripsi.
3. Bagian bernomor 3 adalah Picture box yang berisikan sejumlah keterangan dari file yang akan dienkripsi, di dalamnya berisikan Name, size, full path, elapsed time, result size, encryption, chiper file path..
4. Bagian bernomor 4 adalah tombol set public key yang berfungsi untuk memanggil kunci public yang telah dibuat dan dibangkitan tadi utnuk melakukan proses enkripsi pada
file.
5. Bagian bernomor 5 adalah tombol select folder yang berfungsi untuk memilih lokasi penyimpan bagi file yang
akan dienkripsi.
6. Bagian bernomor 6 adalah tombol encrypt now yang berfungsi untuk mengeksekusi proses enkripsi pada file.
7. Bagian bernomor 7 adalah kolom from E-mail account
yang berisi inputan text dari user untuk memasukan alamat
Gmail) yang berguna dalam melakukan proses pengiriman
E-mail.
8. Bagian bernomor 8 adalah kolom password yang berisi inputan text dari user untuk memasukan password Gmail
yang telah di input pada kolom no.7 tadi. Berguna dalam kelancaran proses pengiriman E-mail.
9. Bagian bernomor 9 adalah kolom to E-mail address yang berisi inputan text dari user untuk memasukan alamat E-mail tujuan (dalam hal ini e-mail dapat berupa Gmail,
Yahoo, ataupun jasa penyedia layanan E-mail lainnya) yang berguna dalam melakukan proses pengiriman E-mail. 10. Bagian bernomor 10 adalah kolom yang berisi inputan text
dari user untuk memasukan subject pada yang berguna sebagai pemberi topik E-mail, fungsinya sama seperti fungsi subject dalam E-mail pada umumnya yakni untuk mempejelas kiriman E-mail dari si pengirim ke si penerima
E-mail.
3.5.4 Rancangan Form Proses Dekripsi
Gambar 3.12 Rancangan Form Proses Dekripsi
Gambar 3.12 merupakan rancangan form proses dekripsi. Rancangan form proses dekripsi ini hampir sama dengan rancangan interface proses enkripsi, hanya saja dalam rancangan
interface proses dekripsi tidak terdapat kolom pengiriman e-mail. Keterangan pada Gambar 3.12 dijelaskan sebagai berikut:
1. Bagian bernomor 1 adalah tombol Add File yang berfungsi sebagai pilihan untuk menambah file yang akan telah terenkripsi dan disimpan dalam chiper file path.
1 2
4
3
5
2. Bagian bernomor 2 adalah tombol Removed Selected yang berfungsi untuk remove atau membatalkan file yang akan didekripsi.
3. Bagian bernomor 3 adalah Picture box yang berisikan sejumlah keterangan dari file yang akan didekripsi, didalamnya berisikan name, size, full path, elapsed time, result size, decryption, chiper file path..
4. Bagian bernomor 4 adalah tombol set privat key yang berfungsi untuk memanggil kunci private yang telah dibuat dan dibangkitan tadi untuk melakukan proses dekripsi pada
file.
5. Bagian bernomor 5 adalah tombol select folder yang berfungsi untuk memilih lokasi penyimpan bagi file yang akan didekripsi.