BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
Sebelum dilakukan tahap perancangan, perlu dilakukan analisis sistem yang akan dibangun. Analisis sistem merupakan istilah yang secara kolektif mendeskripsikan
fase-fase awal pengembangan sistem. Analisis sistem pada dasarnya merupakan tahapan yang ditunjukan untuk menciptakan pemahaman yang menyeluruh terhadap
sistem sehingga diperoleh gambaran tentang kebutuhan, cara kerja dan alur data yang akan dikerjakan sistem. Hal ini akan membantu mempermudah dalam proses
implementasi sistem.
3.1.1 Analisis Masalah Dengan sistem ini, masalah yang akan diselesaikan adalah pengamanan data teks dari
pihak yang tidak memiliki hak aksas data tersebut. Dalam sistem ini file teks akan dienkripsi menggunakan algoritma Knapsack. Selanjutnya untuk kompresi data teks,
dilakukan dengan menggunakan algoritma Boldi-Vigna ζ
4
. Sehingga diharapkan file teks ini terjaga keamanannya serta ukuran file dapat lebih kecil dari sebelumnya.
Yang menjadi masalah utama penelitian ini adalah bagaimana mengkombinasikan algoritma knapsack dan Boldi-Vigna
ζ
4
pada file teks. Sehingga diharapkan file teks ini terjaga keamanannya serta ukuran file dapat lebih kecil dari sebelumnya. Setelah
dipilah dan dibagi kedalam beberapa kategori, dapat diuraikan sebagai berikut:
1.
User adalah seorang yang melakukan proses bangkit kunci, enkripsi dan kompresi serta dekompresi dan dekripsi.
2.
Proses : Sistem ini akan berjalan mengkombinasikan kedua algoritma Knapsack dan Boldi-Vigna
ζ
4
pada file teks yaitu proses Enkripsi kemudian Kompresi atau Dekompresi kemudian Dekripsi.
3.
Sistem : Sistem ini menunjukkan kombinasi antara algoritma Knapsack dan algoritma Boldi-vigna
ζ
4
apakah menghasilkan hasil yang baik.
Universitas Sumatera Utara
Selanjutnya masalah diuraikan kedalam bentuk Diagram Tulang Ikan Ishikawa Diagram dapat dilihat pada gambar 3.1 dibawah ini :
Gambar 3.1 Diagram Ishikawa Untuk Analisis Permasalahan Sistem
3.1.2 Analisis Persyaratan
Analisis ini bertujuan untuk mengidentifikasi dan menyatakan apa saja yang akan dibutuhkan oleh sistem agar dapat berjalan sesuai dengan yang diharapkan. Analisis
persyaratan dibagi menjadi dua bagian yaitu persyaratan fungsional functional requirement dan persyaratan nonfungsional nonfunctional requirement. Dimana
Persyaratan fungsional merupakan deskripsi mengenai aktivitas dan layanan yang harus diberikan atau disediakan oleh sebuah sistem, dan persyaratan nonfungsional
merupakan deskripsi mengenai fitur, karakteristik, dan batasan lainnya yang menentukan apakah sistem memuaskan atau tidak. Persyaratan nonfungsional
seringkali berupa batasan atau sesuatu yang menjadi perhatian stakeholder sebuah sistem.
Universitas Sumatera Utara
a. Persyaratan fungsional
Persyaratan fungsional yang harus dipenuhi oleh sistem yang akan dibangun ini adalah :
1. Sistem ini harus mampu membaca file teks berupa .txt dan .doc.
2. Sistem ini akan membangkitkan bilangan bulat positif pada pembuatan kunci
algoritma Knapsack. 3.
Sistem ini akan menghasilkan file teks hasil kompresi berupa .bv. 4.
Sistem ini akan menyimpan kunci kriptografi dalam bentuk .key.
b. Persyaratan nonfungsional
1. Performa
Sistem yang akan dibangun harus dapat menunjukkan hasil dari kompresi dan enkripsi serta dekompresi dan dekripsi.
2. Mudah dipelajari dan digunakan
Sistem yang dibangun harus sederhana dan agar mudah dipelajari dan digunakan oleh pengguna user
3. Hemat biaya
Sistem ini tidak memerlukan perangkat tambahan maupun sistem pendukung dalam penggunaannya.
4. Dokumentasi
Sistem dapat menyimpan file teks yang didekripsi dan kompresi, dekompresi dan enkripsi serta kunci yang dibangkitkan.
5. Manajemen kualitas
sistem memiliki kualitas yang baik yaitu proses enkripsi dan kompresi, dekompresi dan dekripsi file teks dan membangkitkan kunci relatif cepat.
3.1.3 Pemodelan Sistem
Pemodelan sistem dilakukan untuk memperoleh gambaran yang lebih jelas tentang objek apa saja yang akan berinteraksi dengan sistem serta hal-hal apa saja yang harus
dilakukan oleh sebuah sistem. Aktor yang nantinya akan berinteraksi dengan sistem adalah user yang akan menggunakan sistem yang akan dibangun.
Universitas Sumatera Utara
Berikut ini adalah diagram use case yang dirancang sebagai pemodelan persyaratan sistem berdasarkan informasi kebutuhan sistem dan aktor yang berperan didalamnya.
a. Use case diagram
Gambar 3.2 Use Case Diagram Pada Sistem
Use case diagram pada gambar 3.2 menjelaskan bahwa sistem dapat diakses oleh seorang aktor yang dinamakan pengguna. Terdapat tiga use case utama yaitu Bangkit
Kunci, Enkripsi dan kompresi serta Dekompresi dan Dekripsi.
b. Activity Diagram
Activity diagram menggambarkan berbagai alur aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alur berawal, decision yang
mungkin terjadi, dan bagaimana mereka berakhir. Berikut ini adalah diagram Activity pada sistem yang akan dibangun.
Pada proses bangkit kunci, aktivitas yang berlangsung dapat dilihat pada gambar activity diagram 3.3
Universitas Sumatera Utara
Gambar 3.3 Activity Diagram Bangkit Kunci
Activity diagram menggambarkan interaksi aktifitas antara pengguna sistem secara detil dan berurut. Pada Gambar 3.3 kotak paling kiri merupakan aktifitas yang
dilakukan oleh pengguna, sedangkan kotak sebelah kanan adalah respon yang diberikan sistem terhadap aktifitas yang dilakukan pengguna terhadap sistem
.
Gambar 3.4 adalah activity diagram untuk Enkripsi dan Kompresi :
Universitas Sumatera Utara
Gambar 3.4 Activity Diagram Enkripsi Dan Kompresi
Activity diagram menggambarkan interaksi aktifitas antara pengguna sistem secara detil dan berurut. Pada Gambar 3.4 kotak paling kiri merupakan aktifitas yang
dilakukan oleh pengguna, sedangkan kotak sebelah kanan adalah respon yang diberikan sistem terhadap aktifitas yang dilakukan pengguna terhadap sistem
.
Gambar 3.5 adalah Activity Diagram untuk dekompresi dan dekripsi:
Universitas Sumatera Utara
Gambar 3.5 Activity Diagram Dekompresi Dan Dekripsi
Activity diagram menggambarkan interaksi aktifitas antara pengguna sistem secara detil dan berurut. Pada Gambar 3.5 kotak paling kiri merupakan aktifitas yang
dilakukan oleh pengguna, sedangkan kotak sebelah kanan adalah respon yang diberikan sistem terhadap aktifitas yang dilakukan pengguna terhadap sistem
.
c. Sequence Diagram
Proses enkripsi plaintext menggunakan algoritma Knapsack yang dilakukan oleh sistem membangkitkan kunci terlebih dahulu kemudian dapat mengenkripsi plaintext.
Kemudian sistem akan mengecek kebutuhan data dan proses yang akan dilakukan selanjutnya. Sequence Diagram untuk sistem dilihat pada gambar 3.6, 3.7 dan 3.8
dihalaman berikutnya :
Universitas Sumatera Utara
Gambar 3.6 Sequence Diagram Bangkit Kunci
Gambar 3.7 Sequence Diagram Enkripsi Dan Kompresi
Universitas Sumatera Utara
Gambar 3.8 Sequence Diagram Dekompresi Dan Dekripsi
3.1.4 Flowchart
3.1.4.1 Flowchart sistem secara umum a.
Flowchart Enkripsi dan Dekripsi dapat dilihat pada gambar 3.9 dihalaman berikutnya :
Universitas Sumatera Utara
Mulai
Input file .txt atau .doc
Ciphertext Enkripsi dengan metode
Knapsack
Kompresi dengan metode Boldi-Vigna
ζ
4
Hasil Kompresi
Selesai
Gambar 3.9 Flowchart Enkripsi Dan Kompresi
Universitas Sumatera Utara
b. Flowchart Dekompresi dan Dekripsi dapat dilihat pada gambar 3.10 dibawah ini :
Mulai
Masukkan Hasil Dari Enkripsi Dan
Kompresi
Hasil Dekompresi
Dekompresi Dengan Metode Boldi-Vigna
ζ
4
Dekripsi Dengan Metode Knapsack
Plaintext
Selesai
Gambar 3.10 Flowchart Dekompresi Dan Dekripsi
3.1.4.2 Flowchart proses Algoritma Knapsack
a. Flowchart Bangkit Kunci dapat dilihat pada gambar 3.11 dihalaman berikutnya :
Universitas Sumatera Utara
Start
Input w 1 . w 2 Distance
Hitung Deret Superincreasing Kunci
Rahasia
Input n
End Hitung Kunci Publik w kr
. n mod m Input m
m Jumlah Kunci Rahasia
GCD m,n =1 Ya
Ya Tidak
Tidak
Gambar 3.11 Flowchart Bangkit Kunci
b. Flowchart Enkripsi
Flowchart proses enkripsi dengan metode Knapsack dapat dilihat pada gambar 3.12 dihalaman berikutnya :
Universitas Sumatera Utara
Start
Input Plaintext
Input Kunci Publik
Konversi Kode ASCII Plainteks Ke Biner
Hitung Kriptogram
Ciphertext
End
Gambar 3.12 Flowchart Enkripsi
c. Flowchart Dekripsi
Flowchart proses dekripsi dengan metode Knapsack dapat dilihat pada gambar 3.13 pada halaman berikutnya :
Universitas Sumatera Utara
Start
Input Ciphertext
Input Kunci Rahasia
Tentukan Nilai n
-
¹ Dan k
1+m . k n
Dekripsi
Hasil Dekripsi
End Ubah Posisi Bit Sesuai Posisi
Key Index
Kode Biner Di Ubah Ke Karakter ASCII
Plaintext
Gambar 3.13 Flowchart Dekripsi
Universitas Sumatera Utara
3.1.4.3 Flowchart proses Boldi- Vignaζ
4
. a. Flowchart Kompresi
Flowchart proses kompresi dengan metode Boldi-Vigna ζ
4
. dapat dilihat pada gambar 3.14 dibawah ini :
Start
Input File Teks .txt Atau .doc
Ubah Isi File Menjadi Bilangan ASCII
End Kompresi Dengan Boldi
Vigna ζ
4
Hasil Kompresi
Gambar 3.14 Flowchart Kompresi
b. Flowchart Dekompresi
Flowchart Dekompresi dengan metode Boldi-Vigna ζ
4
dapat dilihat pada gambar 3.15 pada halaman berikutnya:
Universitas Sumatera Utara
Start
Input File Kompresi .bv
Ubah Menjadi Bilangan ASCII
End Dekompresi
Hasil Plaintext
Gambar 3.15 Flowchart Dekompresi
3.2 Perancangan Interface