ANALISIS DAN PERANCANGAN SISTEM
3.3. Model Analisis Perangkat Lunak
3.3.1 Pemodelan Fungsional
3.3.1.1 Data Flow Diagram ( DFD ) dan Spesifikasi Proses
DFD adalah suatu model logika data atau proses yang dibuat untuk menggambarkan darimana asal data dan kemana tujuan data yang keluar dari sistem, dimana data disimpan, proses apa yang menghasilkan data tersebut dan interaksi antara data yang tesimpan dan proses yang dikenakan pada data tersebut. DFD menunjukan hubungan antar data pada sistem dan proses pada sistem.
DFD rinci dari perancangan sistem keamanan data menggunakan algoritma gabungan Secure Hash Algorithm (SHA) dan Substitusi Mono Alphabet (SMA) yang dirancang terdiri dari tiga level, yaitu level 0 yang dapat dilihat pada Gambar 3.1, level 1 yang dapat dilihat pada Gambar 3.2, level 2 yang dapat dilihat pada Gambar 3.3 dan Gambar 3.4.
Gambar 3.1 Diagram Konteks
Diagram Konteks di atas menggambarkan sistem secara garis besar yang memperlihatkan masukan, proses, dan keluaran dari sistem yang akan dirancang. Proses yang terjadi pada diagram konteks di atas dapat dijelaskan dengan menggunakan spesifikasi proses pada tabel 3.1 berikut :
Tabel 3.1 Spesifikasi Proses Diagram Konteks Level 0
No / Nama Proses Input Keterangan Proses Output Proses 0 / Proses
Enkripsi dan Dekripsi file dan pembuatan file
kunci
Plaintext/Ciphertext, Kunci, File Kunci SHA
Pada proses ini Plainteks ditransformasikan ke dalam bentuk ciphertext maupun sebaliknya tergantung apakah proses
Ciphertext/ Plaintext, File Kunci SHA, Plaintext P.0 Proses Enkripsi dan Dekripsi file
dan pembuatan
file kunci
User Plaintext/Ciphertext, Kunci, File Kunci SHA
enkripsi atau dekripsi.
Dari Diagram Konteks diatas, Proses 0 dapat dijabarkan menjadi proses yang lebih kecil. Proses 0 dibagi lagi ke dalam 2 proses. Proses tersebut dapat dilihat pada gambar 3.2 DFD Level 1 dari Proses P.0. Berikut ini adalah uraian proses yang terjadi pada program.
Gambar 3.2 DFD Level 1 Proses P.0
Dari DFD Level 1 Proses P.0 terdapat 2 proses utama. Kedua proses ini merupakan proses yang sangat penting karena merupakan inti dari proses kriptografi dengan Substitusi Mono Alphabet dan Secure Hash Algorithm. Proses tersebut dapat diuraikan pada Tabel 3.2 berikut ini:
Tabel 3.2 Spesifikasi Proses DFD Level 1 P.0
No / Nama Proses Input Keterangan Proses Output Proses P.1/ Proses
Enkripsi
Kunci dan File
text
Proses pengubahan file
text menjadi file
terenkripsi dan
File terenkripsi
dan file kunci SHA
User
Kunci
File text
File Kunci SHA File terenkripsi P.1 Proses Enkripsi P.2 Proses Dekripsi Kunci
File Kunci SHA
File text
menghasilkan file kunci SHA.
Proses P.2/ Proses Dekripsi
Kunci, file kunci SHA dan file terenkripsi
Pencocokan nilai hash dan pengubahan file
terenkripsi menjadi file
text.
File Text
Berikutnya, Proses 1 dapat dijabarkan menjadi proses yang lebih kecil. Proses 1 dibagi lagi ke dalam 2 proses yaitu proses 1.1 dan proses 1.2 . Proses tersebut dapat dilihat pada gambar 3.3 DFD Level 2 dari Proses P.1. Berikut ini adalah uraian proses yang terjadi pada program. Spesifikasi Proses DFD Level 2 utnuk proses Enkripsi dapat dilihat pada Tabel 3.3.
Gambar 3.3 Diagram Level 2 untuk Enkripsi
Tabel 3.3 Spesifikasi Proses DFD Level 2 Untuk Proses Enkripsi
No / Nama Proses Input Keterangan Proses Output Proses P 1.1/ Proses
Enkripsi Substitusi Mono Alphabet (SMA)
Kunci dan File
text
Proses pengubahan file
text menjadi ciphertext
Ciphertext
Proses P 1.2/ Proses Ciphertext Pengambilan nilai hash File terenkripsi, User
Kunci
File Text
File kunci SHA
Ciphertext P 1.1 Proses enkripsi SMA P 1.2 Proses Pembentukan file kunci SHA File Terenkripsi
Pembentukan file
kunci SHA.
dan pembentukan file kunci SHA.
file kunci SHA.
Berikutnya, Proses 2 dapat dijabarkan menjadi proses yang lebih kecil. Proses 2 dibagi lagi ke dalam 2 proses yaitu proses 2.1 dan proses 2.2 . Proses tersebut dapat dilihat pada gambar 3.4 DFD Level 2 dari Proses P.1. Berikut ini adalah uraian proses yang terjadi pada program. Spesifikasi proses DFD Level 2 Untuk proses Dekripsi dapat dilihat pada Tabel 3.4.
Gambar 3.4 Diagram Level 2 untuk Dekripsi
Tabel 3.4 Spesifikasi Proses DFD Level 2 Untuk Proses Dekripsi
No / Nama Proses Input Keterangan Proses Output Proses P 2.2/ Proses
Otentikasi SHA
File terenkripsi, file kunci SHA
Pencocokan nilai hash antara file kunci dan file terenkripsi File terenkripsi Proses P 2.2/ Proses Dekripsi SMA Kunci, File terenkripsi Pengubahan file terenkripsi menjadi file
text File text 3.3.2. Kamus Data User Kunci File terenkripsi File text File terenkripsi P 2.1 Proses otentikasi SHA P 2.2 Proses dekripsi SMA
Kamus data merupakan suatu data yang disusun untuk memudahkan selama proses analisis dan desain. Selain suatu dokumen, kamus data mengumpulkan dan mengkoordinasi istilah-istilah data yang terdapat pada diagram alir. Penganalisis sistem harus hati-hati dalam mengkatalogkan istilah-istilah yang berbeda-beda yang menunjuk pada item yang sama. Kehati-hatian ini membantu dalam menghindari duplikasi, memungkinkan adanya komunikasi yang baik antara bagian-bagian yang saling berbagi pangkalan data, dan membuat upaya pemeliharaan lebih bermanfaat. Kamus data juga bertindak sebagai standar tetap untuk elemen-elemen data.
Masukan-masukan kamus data bisa dibuat setelah diagram aliran data dilengkapi atau bisa juga disusun saat diagram aliran data sedang dikembangkan. Penganalisis sistem bisa saja membuat suatu diagram aliran data level 0 dan sekaligus membuat masukan-masukan data awal. Selanjutnya, sewaktu penganalisis sistem mengembangkan diagram level data menjadi diagram anak, penganalisis juga bisa memodifikasi masukan-masukan kamus data yang baru sesuai dengan aliran data pada diagram alir anak.
Tabel 3.5 merupakan kamus data yang berisikan data yang digunakan pada diagram alir data mulai dari diagram konteks, DFD level 1,dan DFD level 2 dari masing- masing proses :
Tabel 3.5 Kamus Data
Nama Tipe Data Deskripsi
Plaintext string Plaintext merupakan data yang akan
ditransformasikan menjadi
Ciphertext.
Ciphertext string Pesan hasil Enkripsi yang diinput
user yang akan didekripsi.
File kunci SHA File File yang berisi nilai hash SHA
Kunci Integer Nilai yang dimasukkan user untuk proses pengamanan data
File text File File yang akan di enkripsi
3.4 Perancangan
Perancangan memiliki tujuan untuk menentukan kondisi akhir yang diharapkan dari perangkat lunak yang akan dibangun dan merumuskan cara yang harus dilakukan untuk memperoleh hasil tersebut.
Pada perangkat lunak pengamanan data dengan menggunakan Substitusi Mono Alphabet dan Secure Hash Algorithm, tahap perancangan yang dilakukan mencakup perancangan arsitektur, perancangan antar muka pemakai, perancangan data dan perancangan prosedural