3.2.1. Analisis kebutuhan perangkat lunak
Fitur-fitur utama yang disediakan perangkat lunak antara lain:
1. Fitur Encrypt
Perangkat lunak yang dibangun memiliki fitur enkripsi untuk memulai tahapan enkripsi terhadap plainteks dan cipherteks. Didalam fitur enkripsi ini terdapat
buttonopen, button enkripsi plainteks, button enkripsi sessionkey, button savefile. Button open berfungsi untuk membuka file di dalam folder yang akan
diamankan atau bisa langsung melakukan penginputan plainteks pada form input plainteks. Button enkripsi plainteks berfungsi untuk menjalankan
enkripsi setelah memasukkan key yang diinginkan. Button enkripsi sessionkey berfungsi untuk mengekripsiskan sessionkey menggunakan kunci publik yang
telah disimpan atau dibangkitkan. Button SaveFile berfungsi untuk menyimpan file cipherteks dan cipherkey ke dalam folder yang diinginkan.
2. Fitur dekripsi
Perangkat lunak yang dibangun memiliki fitur dekripsi untuk memulai tahapan dekripsi cipherteks dan cipherkey. Di dalam fitur dekripsi ini terdapat button
open, button dekripsi cipherteks, button dekripsi cipherkey, button SaveFile. Button Open berfungsi untuk membuka file yang telah terenkripsi sebelumnya
di dalam folder. Button dekripsi cipherkey berfungsi untuk menjalankan dekripsi dengan menggunakan privetkey. Button dekripsin cipherteks berfungsi
untuk mendekripsikan cipherteks dengan menggunakan sessionkey hasil dekripsi. Button SaveFile berfungsi untuk menyimpan file kedalam folder yang
diinginkan.
3. Fitur pembangkitan kunci RSA
Pada perangkat lunak yang dibangun terdapat fitur pembangkitan kunci RSA secara acak, untuk menghasilkan kunci privat dan kunci publik. Pada saat
button enkripsi digunakan, maka sistem akan secara otomatis membangkitkan pasangan kunci RSA.
Universitas Sumatera Utara
3.2.2. Analisis kebutuhan fungsional dan non-fungsional sistem
Kebutuhan fungsional yang harus dipenuhi agar sistem berjalan dengan lancar: 1.
Sistem dapat membuka file apabila file yang diambil dari dalam folder adalah file berupa .txt.
2. Sistem dapat melakukan enkripsi plainteks dengan menggunakan algoritma
Rinjdael dan
melakukan enkripsi terhadap sessionkey dengan
menggunakan kunci publik RSA. 3.
Sistem dapat melakukan dekripsi cipherteks dengan menggunakan algoritma Rinjdael
dan melakukan dekripsi cipherkey dengan
menggunakan kunci publik RSA. 4.
Sistem mampu melakukan pembangkitan kunci yang kemudian menyimpan kunci yang telah dibangkitkan
5. Sistem dapat menyimpan file yang dienkripsi dan didekripsi dalam bentuk
file .txt. 6.
Sistem dapat melakukan reset terhadap file dan key yang telah diinputkan untuk menggantikan file dan key yang baru.
Kebutuhan non-fungsional terhadap sistem adalah: 1.
Sistem yang dibangun memiliki interface yang menarik dan mudah dimengerti oleh user.
2. Sistem yang dibangun tidak membutuhkan banyak biaya karena tidak
menggunakan perangkat keras sebagai pendukung. 3.
Sistem dapat dikembangkan lebih lanjut agar mencapai bentuk yang lebih sempurna.
Universitas Sumatera Utara
3.3.Perancangan Sistem
Perancangan sistem merupakan tahapan untuk membangun kerangka sistem yang akan dibuat. Tahapan ini nantinya akan menghasilkan gambaran dasar dari sistem yang
akan dibangun. Perancangan dilakukan berdasarkan hasil analisis yang telah dilakukan pada bab sebelumnya.
3.3.1. Skema kosep dasar perancangan sistem