Sistem ini menggunakan kombinasi dua algoritma untuk pengamanan file dan kunci antara lain adalah kriptografi algoritma Hill Cipher dan kriptografi
algoritma Knapsack. Kombinasi kedua algoritma inilah yang disebut dengan Kriptografi Hibrida. Algoritma Hill Cipher digunakan untuk mengamankan file
dimana algoritma ini memiliki kunci simetris berupa kunci matriks untuk melakukan pengenkripsian. Kunci matriks ini harus memiliki matriks identitas
karena berpengaruh dalam proses dekripsi file sebagai pengembalian hasil enkripsi cipherfile ke file asli semula plaintext. Algoritma Knapsack digunakan
untuk mengamankan kunci simetris dimana algoritma ini memiliki kunci asimetris yaitu kunci publik dan kunci privat. Kunci publik digunakan untuk mengenkripsi
kunci simetris menghasilkan cipherkey, sedangkan kunci privat digunakan untuk mendekripsi cipherkey ke kunci asli semula.
3.2.1 Perancangan Unified Modelling Language UML
Unified Modelling Language UML merupakan metode pemodelan berupa
gambar grafis yang digunakan sebagai sarana perancangan aplikasiperangkat lunak yang berorientasi objek. Perancangan UML yang akan dibahas disini
adalalah use case diagram, activity diagram, dan sequence diagram.
3.2.1.1 Use Case Diagram
Use case diagram adalah metode berbasis teks untuk menggambarkan dan
mendokumentasikan proses yang kompleks di dalam sistem. Proses yang digmbarkan akan berlangsung secara terstruktur.
Use case diagram berikut merupakan inti dari penggunaan aplikasi yang
dibuat. Jadi aplikasi tersebut akan diimplementasikan dan hanya digunakan oleh satu aktor yaitu user yang akan berinteraksi langsung dengan sistem. Di dalam
penggunaan aplikasi dibutuhkan perawatan atau perbaikan jika terjadi kesalahan yang dapat mempengaruhi kinerja program.
Universitas Sumatera Utara
Pada gambar 3.2 dijelaskan user mempunyai beberapa kontrol proses untuk melakukan fungsi yang akan dibangun, yaitu enkripsi dan dekripsi. Pada
proses enkripsi terdapat beberapa fungsi yaitu enkripsi file dengan algoritma Hill Cipher
dan enkripsi kunci session key dengan kunci publik algoritma Knapsack dimana masing-masing fungsi dibutuhkan pembangkit kunci yang dapat
dibangkitkan secara langsung oleh sistem untuk proses enkripsi. Pada fungsi dekripsi terdapat dekripsi kunci yang terenkripsi dengan algoritma Knapsack dan
dekripsi file yang terenkripsi algoritma Hill Cipher, dimana algoritma Knapsack memiliki kunci privat untuk mendekripsi kunci yang terenkripsi dan algoritma
Hill Cipher memiliki kunci session key yang sudah didekripsi oleh algoritma
Knapsack sebelumnya.
Universitas Sumatera Utara
Berikut merupakan gambaran use case diagram untuk sistem yang akan dibangun pada gambar 3.2 :
Actor1 Kontrol Proses
Dekripsi Enkripsi
«uses»
«uses» Enkripsi Hill
Cipher Enkripsi Knapsack
«uses» «uses»
Bangkitkan session key
Bangkitkan Kunci publik dan privat
«extends»
«extends»
Dekripsi dengan Kunci Privat Knapsack
Dekripsi Hill Cipher
«uses» «uses»
Gambar 3.2 Use Case Diagram Sistem
Berikut merupakan skenario use case sistem :
i Skenario Use Case Enkripsi
Use case : Enkripsi
Actor : User
Pre-Condition : Actor ingin melakukan proses enkripsi
Post-Condition : Actor telah melakukan proses enkripsi
Decription : Actor melakukan proses enkrpsi untuk mengamankan file
dan kunci.
Universitas Sumatera Utara
Tabel 3.1 Tabel Skenario Use Case Enkripsi User
Sistem
1. Menginputkan file dan men-generate key
matriks key session 2. Ekseskusi generate key session
secara acak 3. Mencari file direktori penyimpanan
untuk menyimpan file terenkripsi 4. Eksekusi pencarian direktori
penyimpanan 5. Menekan tombol enkripsi
6. Eksekusi enkripsi file 7. Jika Berhasil, tampil messege
box bahwa enkripsi file
berhasil 8. Memilih banyak barisan
superincreasing w 9. Ekseskusi pemilihan barisan w
10. Jika terjadi kesalahan, maka cek ke 1
11. Jika tidak ada kesalahan, maka dapat melakukan generate
kunci publik dan kunci privat 12. Menekan tombol Generate untuk
pencarian kunci publik dan kunci privat
13. Eksekusi pencarian kunci publik dan kunci privat
14. Mencari file direktori penyimpanan untuk menyimpan file kunci yang
ternekripsi dengan menekan tombol cari
15. Menekan proses enkripsi dengan menakan tombol enkripsi
16. Eksekusi enkripsi key session
17. Jika berhasil akan tampil messege box
bahwa enkripsi
Universitas Sumatera Utara
kunci berhasil
ii Skenario Use Case Dekripsi
Use case : Dekripsi
Actor : User
Pre-Condition : Actor ingin melakukan proses dekripsi
Post-Condition : Actor telah melakukan proses dekripsi
Decription : Actor melakukan proses dekripsi untuk memperoleh file
yang diinginkan
Tabel 3.1 Tabel Skenario Use Case Dekripsi
User Sistem
1. Mencari kunci yang terenkripsi cipherkey dengan menakan tombol
cari 2. Eksekusi pencarian file
kunci
3. Melakukan proses dekripsi kunci dengan menekan tombol dekripsi
4. Eksekusi proses dekripsi cipherkey
5. Jika berhasil maka akan tampil messegebox bahwa
dekripsi kunci berhasil
6. Mencari file yang terenkripsi cipherfile dengan menekan tombol cari
7. Eksekusi pencarian file
8. Mencari direktori penyimpanan cipherfile
yang akan didekripsi dengan menekan tombol cari
9. Eksekusi pencarian direktori penyimpanan
10. Melakukan proses dekripsi dengan menekan tombol dekripsi
11. Eksekusi dekripsi cipherfile
12. Jika berhasil maka akan tampil messegebox bahawa
dekripsi file berhasil
Universitas Sumatera Utara
13. Memperoleh file yang diinginkan
3.2.1.2 Activity Diagram