BAB III ANALISIS DAN PERANCANGAN SISTEM 3.1 Analisis Dalam merancang suatu sistem diperlukan analisis terhadap sistem yang akan dirancang terlebih dahulu. Tujuan dari analisis ini sendiri adalah agar sistem yang akan dirancang menjadi tepat dan ketahanan dari sistem tersebut akan terjaga. Disamping itu dengan dilakukannya analisis akan dapat mempermudah kerja dalam membuat sistem, dan jika suatu saat nanti ada perbaikan atau penambahan dalam sistem tersebut, maka akan untuk diselesaikan. Analisis sistem juga dapat didefinisikan sebagai penguraian dari suatu sistem yang utuh kedalam bagian komponennya untuk mengidentifikasi dan mengevaluasi permasalahan-permasalan. Faktor yang mendasari dibentuknya perangkat lunak dengan algoritma Skipjack ini adalah keamanan data. Keamanan data telah menjadi aspek yang sangat penting dari suatu sistem informasi. Untuk keperluan tresebut, maka diperlukan sebuah teknik kriptografi dengan menggunakan algoritma Skipjack dengan menggunakan metode enkripsi dan dekripsi data. Salah satu metode enkripsi dan dekripsi data yang digunakan adalah algoritma Skipjack.
3.1.1 Analisis Kebutuhan Pada saat setelah kita mengetahui apa saja masukan atau input serta output dari program yang ada, serta kebutuhan perangkat lunak ataupun perangkat keras dari sistem tersebut.
24
25
3.1.1.1 Input/Masukan Analisi Input atau masukan untuk yang dibutuhkan implementasi aplikasi ini adalah: a. Untuk enkripsi file, inputnya berupa file dengan format *.doc, *.jpg, *.pdf. Karena hasil yang diharapkan adalah enkripsi berupa file yang sudah terenkripsi sehingga tidak bisa dibuka atau di baca oleh siapapun.
3.1.1.2 Proses Proses yang dibutuhkan untuk implementasi aplikasi ini adalah: a. Enkripsi di proses menggunakan algoritma SKIPJACK yang didalamnya terdapat inisialisasi S-Box, array variabel K (key) dan inisialisasi permutasi S karena S-Box digunakan untuk proses looping (pengulangan) variabel pada setiap karakter awal hingga akhir untuk dilakukan enkripsi, kemudian pada variabel K (key) digunakan untuk proses looping variabel karakter input password dan inisialisasi mutasi S digunakan proses perubahan pada variabel S-Box dan K (key) dengan menggunakan fungsi ECB dan XOR. b. Pada proses enkripsi dilakukan secara bersama, sehingga hasil akhirnya adalah proses pemadatan setelah file telah di enkripsi karena pengguna dapat menjadikan datanya menjadi lebih aman dan padat/file yang mengecil agar proses pengiriman data lebih ringan dan mudah.
26
3.1.1.3 Output/Keluaran Output atau keluaran yang diharapkan dari aplikasi ini adalah: a. Untuk enkripsi file maka outputnya berupa file berekstensi *.doc b. File yang dihasilkan dalam bentuk file enkripsi maupun dekripsi. c. Untuk file text yang dienkripsi maka outputnya berupa karakter ASCII yang tidak dapat terbaca.
3.1.2 Kebutuhan Antar Muka Pada antar muka ini ditawarkan untuk memudahkan user dalam menggunakan perangkat lunak yang digunakan pada sistem ini yaitu menu utama yang terdiri dari: 1. Enkripsi File yaitu menu untuk mengenkripsi file sebagai outputnya setelah dilakukan proses. 2. Enkripsi Text yaitu menu untuk mengenkripsi file text. 3. Algoritma SKIPJACK yaitu penjelasan singkat tentang algoritma SKIPJACK 4. About Program berisi tentang informasi program.
3.2 Perancangan Pada Perancangan sistem ini merupakan tahapan analisis kebutuhan selesai dan didefinisikan secara jelas. Dalam tahap ini digambarkan lebih rinci berdasarkan tahapan sebelumnya, sehingga diperoleh algoritma dan detil aliran proses enkripsi dan dekripsi data yang akan dibuat. Adapun tujuan dan maksud dari tahap perancangan sistem yaitu:
27
1.
Untuk memenuhi kebutuhan kepada pemakai sistem
2.
Untuk memberikan gambaran yang jelas dan rancang bangun yang diinginkan kepada pemrograman komputer. Hasil dari tahapan perancangan ini harus dapat diterapkan menjadi prosedur
dengan alat bantu bahasa pemrograman berorientasi object yaitu Visual Basic 6.0. Metode perancangan yang digunakan yaitu memakai flowchart untuk mengetahui aliran setiap proses yang terjadi dalam proses enkripsi dan dekripsi file menggunakan algoritma SKIPJACK. Pada aplikasi sistem enkripsi dan dekripsi file dengan menggunakan algoritma SKIPJACK adalah melakukan inisialisasi data asli yang akan dienkripsi. Data ini kemudian akan dienkripsi dan didekripsi dengan menggunakan algoritma SKIPJACK dan akan ditampilkan hasilnya, dari data yang telah dienkripsi akan dikembalikan ke data asli dengan proses dekripsi. Lihat gambar 3.1. Plain text
Algoritma Enkripsi
Cipher text
Algoritma Dekripsi
User A
Plain Text
User B
Kunci/ Key
Gambar 3.1 Rancangan Implementasi Program Secara Umum
28
Pada implementasi algoritma SKIPJACK ini akan dibuat menjadi beberapa fungsi, antara lain: -
Enkripsi dan dekripsi file
-
Enkripsi dan Dekripsi text Implementasi program yang dibuat ditujukan untuk dapat dianalisis pada
algoritma SKIPJACK,tampilan bersifat program pembelajaran SKIPJACK.
3.2.1 Perancangan Sistem Pada perancangan sistem ini dapat dihasilkan perancangan sistem yang meliputi program-program sebagai berikut: 1. Proses enkripsi dan dekripsi file 2. Proses enkripsi dan dekripsi text Pada rancangan proses-proses implementasi algoritma SKIPJACK ini akan dibahas dibawah ini.
3.2.1.1 Proses Enkripsi / Dekripsi File Pada proses ini dapat berfungsi untuk enkripsi dan dekripsi file. Dalam program enkripsi dan dekripsi file ini sebagai berikut: 1. Proses Enkripsi File Proses ini untuk proses enkripsi file yaitu. proses operasi program dimulai dari inisialisasi masukkan program berupa file atau data elektronik kemudian pemberian key / kunci dan setelah proses enkripsi yang akan menyimpan file enkripsi kedalam file berekstensi *.text.
29
2. Proses Dekripsi File Proses ini merupakan proses untuk dekripsi file yaitu membuka kembali file yang telah dienkripsi. Operasi program dimulai dari inisialisasi file yang telah terenkripsi yaitu dengan format *.doc kemudian memasukkan key / kunci untuk membuka file enkripsi tersebut dan menyimpannya ke dalam file semula. Flowchart dari program enkripsi dan dekripsi file dapat dilihat pada gambar 3.2 dari gambar tersebut kita dapat melihat alur kerja progam enkripsi file.
Gambar 3.2 Flowchart untuk enkripsi dan dekripsi file
30
Di bawah ini merupakan flowchart proses enkripsi algoritma SKIPJACK. Lihat Gambar 3.3 Start
Masukkan key
Pencarian file/text, pilih file yang akan dienkripsi
Masukkan file Proses Pencarian Blok data
Pengisian blok-blok
Proses modus ECB di-XOR
Proses ciphering dengan dummy byte
Tampilkan hasil ciphering
Selesai
Gambar 3.3 Flowchart Proses Enkripsi Algoritma SKIPJACK
31
Penjelasan dari flowchart enkripsi adalah sebagai berikut: 1. Pada saat pengguna melakukan enkripsi maka sebelumnya harus memasukkan key/password agar file/karakter yang di enkripsi memiliki kemanan yang baik, kemudian dilakukan proses Inisialisasi Blok Data untuk diambil setiap karakter dari file/text dengan menggunakan pemanggilan fungsi script . 2. Dilanjutkan dengan proses pengisian blok-blok karakter agar setiap karakter input key/password dapat di inisialisasi menjadi menggunakan mode ECB untuk dirubah menjadi karakter ASCII yang tidak dapat terbaca. 3. Kemudian dilakukan proses mode ECB yang digunakan untuk menghasilkan variabel s(i) dan s(j) setelah dilakukan perhitungan dengan fungsi XOR. Terakhir adalah dilakukan proses pembuatan dumy byte untuk menghasilkan ciphering yang merupakan hasil dari enkripsi.
32
Di bawah ini merupakan flowchart proses dekripsi algoritma SKIPJACK. Lihat Gambar3.4
Start
Masukkan key
Pencarian file/text, pilih file yang akan didekripsi
Masukkan file Proses Pencarian blok data Pengisian blok-blok Proses modus ECB di-XOR
Proses ciphering dengan dummy byte
Tampilkan hasil deciphering
Selesai
Gambar 3.4 Flowchart Proses Dekripsi Algoritma SKIPJACK
33
Pada saat pengguna melakukan dekripsi maka sebelumnya harus memasukkan key/password sesuai key yang dimasukkan pada saat melakukan enkripsi, agar file/karakter yang telah di enkripsi dapat dikembalikan pada karakter aslinya, kemudian dengan proses yang sama dapat dilakukan proses inisialisasi blok, pengisian blok dan proses mode ECB. Terakhir adalah dilakukan proses perhitungan yang sama seperti enkrisi sebelumnya dengan fungsi Ecb dan Xor untuk menghasilkan ciphering yang merupakan hasil dari dekripsi. 3.2.2 Perancangan Antar Muka Pada antar muka ini dirancang agar pengguna dapat berinteraksi secara baik dengan aplikasi, sehingga penggunanya mudah dipahami. Pengguna tersebut dapat terdiri dari proses memasukkan data dan menampilkan kepada pengguna untuk tercapainya antarmuka yang diinginkan.
Ada beberapa hal perlu
diperhatikan, yaitu: 1. Aplikasi harus menyediakan fungsi-fungsi yang akan dikerjakan oleh pengguna. 2. Pada layar dialog harus dibentuk sedemikian rupa sehingga informasi, instruksi dan bantuan-bantuan selalu ditampilkan pada area yang sudah pasti. Dengan demikian pengguna akan dapat dengan mudah mencari informasi yang diinginkan. Untuk maksud ini, layar dialog dapat dibagi-bagi dalam bentuk jendela sesuai dengan kegunaannya masing-masing. 3. Menggunakan kalimat yang mudah dimengerti untuk dialog.
34
Pada sistem aplikasi yang dibangun ini terdiri dari beberapa antar muka yaitu sebagai berikut: 1. Enkripsi file merupakan menu untuk mengenkripsi file Pada antar muka ini terdapat beberapa tombol yaitu: browse file yang akan dienkripsi, browse file yang akan didekripsi, tombol enkripsi file yang berfungsi sebagai enkripsi file, tombol dekripsi file yang berfungsi sebagai dekripsi file, tombol exit untuk keluar dari form enkripsi file, option hapus file original dan hapus file enkripsi, Skipjack key untuk memasukkan kunci enkripsi dan informasi file yang terdiri dari kapasitas file original dan kapasitas file enkripsi serta waktu enkripsi dan dekripsi. Berikut gambar rancangan antar muka pada aplikasi ini. a. Rancangan Menu Utama Spash Pada rancangan tampilan splash ini terdapat beberapa informasi aplikasi ini setelah di klik akan masuk ke tampilan berikutnya. Rancangan Splash ini dapat dilihat pada Gambar 3.5.
Mercu Buana Aplikasi Kriptografi Logo
Yuda Adriansayah # 41505010035
Teknik Informatika Jenjang Strata 1
Copyright 2011 Mercu Buana University
Masuk ke Program Utama
Gambar 3.5 Rancangan tampilan form spash
35
b. Rancangan Menu Utama Tab Enkripsi Pada rancangan menu utama ini terdapat bebrapa menu/tab. Pada tab menu enkripsi pada gambar 3.6. berikut ini adalah tampilan dari rancangan menu utama tab enkripsi.
X
Aplikasi Kriptografi Skipjack File Option ENCRYPT
Input File
Brows e
Ouput File
Brows e
Doc
Jpg
DECRYPT
Pdf
. About
Skipjack Key
Gambar 3.6 Racangan menu utama enkripsi.
c. Rancangan Menu Utama Tab Dekripsi Pada rancangan menu utama ini terdapat beberapa menu/tab. Pada tab menu dekripsi ini dapat dilihat pada Gambar 3.7. berikut ini adalah tampilan dari rancangan menu utama tab dekripsi. X
Aplikasi Kriptografi Skipjack File Browe Input File.. Browe Ouput File.. Encrypt Decrypt About
Exit
Doc
Jpg
Pdf
Browse
ENCRYPT
Browse
DECRYPT
About
Skipjack Key
Gambar 3.7 Rancangan menu utama dekripsi.
36
d. Rancangan Menu Utama Tab Browse for Files or Folder Pada tab menu browse for files or folder ini dapat dilihat pada gambar 3.8. berikut ini adalah tampilan dari rancangan menu utama tab files or folder.
X
Browse for Files or Folders
d
Clik on entry to select it. > Desktop >My Documents >My Computer >My Network Places >Adobe Reader 9 >Gom Player >Modem Ac2726 Ui >Nero StartSmart >Winamp
OK
Cancel
Gambar 3.8 Rancangan menu utama browse for files or folder.
37
e. Rancangan Menu Utama Tab Browse for Folder Pada tab menu Browse for Folder ini dapat dilihat pada Gamba 3.9. berikut ini adalah tampilan dari rancangan menu tab browse for folders X
Browse for Folders Clik on entry to select it. Desktop >My Document >My Computer >My Network Places
Folders :
Desktop
Make New Folder
OK
Cancel
Gambar 3.9 Rancangan menu utama browse for foldes. f. Rancangan Menu Utama Tab Enkripsi Berhasil Pada rancangan menu enkripsi berhasil dapat dilihat pada Gambar 3.10. berikut ini adalah tampilan dari rancangan menu utama tab enkripsi berhasil. X
Project 1
Encryption successfully!
OK
Gambar 3.10 Rancangan menu utama enkripsi berhasil.
38
g. Rancangan Menu Utama Tab Dekripsi Berhasil Pada rancangan menu dekripsi berhasil dapat dilihat pada Gambar 3.11. berikut ini adalah tampilan dari rancangan menu utama tab dekripsi berhasil. X
Project 1
Decryption successfully!
OK
Gambar 3.11. Rancangan menu utama dekripsi berhasil. h. Rancangan Menu Utama Tab About Pada tab menu about ini dapat dilihat pada Gambar 3.12. berikut ini adalah tampilan dari rancangan menu utama tab about.
X
About Program
Laporan Tugas Akhir
LOGO
Diajukan Untuk Memenuhi Salah Satu Persyarat Menyelesaikan Program Studi Strata 1 Program Studi Teknik Informatika Yuda Adriansyah
(41505010035)
Gambar 3.12 Rancangan menu utama about.