BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisis Sistem
Analisis sistem merupakan salah satu tahapan dalam perancangan sebuah sistem. Analisis sistem bertujuan untuk memahami dan mendeskripsikan dengan jelas apa yang
harus dilakukan dalam proses perancangan sebuah sistem. Secara umum analisis sistem terbagi atas analisis masalah, analisis kebutuhan dan analisis proses. Analisis masalah
bertujuan untuk memahami kelayakan masalah. Analisis kebutuhan dilakukan untuk menjelaskan fungsi-fungsi yang ditawarkan dan yang mampu dikerjakan sistem.
Sedangkan analisis proses untuk memodelkan tingkah laku sistem.
3.1.1. Analisis masalah
Masalah yang akan diselesaikan dengan menggunakan sistem ini adalah bagaimana mengamankan pesan teks dan mengamankan kunci pesan tersebut dari pihak-pihak
yang tidak berwenang pihak ketiga. Masalah utama didalam penelitian ini adalah bagaimana menerapkan algortima Hill Cipher dan Algoritma Rabin Public Key dalam
pengamanan data teks berbasis Android. Masalah pada penelitian ini diidentifikasikan dengan menggunakan diagram
Ishikawa. Diagram Ishikawa atau yang sering dikenal dengan Cause and Effect Diagram adalah diagram yang digunakan untuk memahami dan mengidentifikasi serta
menggambarkan beberapa masalah yang terjadi pada sistem dan akibat yang ditimbulkan oleh masalah.
Permasalahan pada penelitian ini secara umum dapat ditunjukkan pada diagram Ishikawa yaitu pada Gambar 3.1.
Universitas Sumatera Utara
29
Gambar 3.1 Diagram Ishikawa Analisis Masalah Diagram Ishikawa diusulkan pertama kali oleh Kaoru Ishikawa dari Jepang.
Diagram ini merupakan pendekatan terstruktur yang memungkinkan dilakukan suatu analisis lebih terperinci dalam menemukan penyebab-penyebab suatu masalah,
ketidaksesuaian dan kesenjangan yang ada. Selanjutnya, diagram ini dapat digunakan dalam diskusi dengan brainstorming untuk mengidentifikasi mengapa suatu masalah
terjadi Gaspersz, 1997. Pada Gambar 3.1, dapat disimpulkan bahwa permasalahannya adalah muncul rasa
curiga atau ingin tahu dari pihak ketiga terhadap kerahasian sebuah pesan yang disebabkan faktor perubahan ciphertext dan penggunaan menggunakan satu kunci yang
tidak aman dalam mengirimkan pesan kepada orang lain. Solusi yang dapat ditawarkan adalah dengan mengunci ciphertext dengan algortima
Hill Cipher serta mengunci cipherkey dengan algoritma Rabin Public Key dalam pengiriman pesan.
3.1.2. Analisis kebutuhan
Didalam analisis kebutuhan ini terdapat dua kebutuhan yaitu kebutuhan fungsional dan kebutuhan non fungsional.
3.1.2.1. Kebutuhan fungsional Kebutuhan fungsional adalah menjelaskan proses-proses aktifitas yang dapat dilakukan
oleh sistem dalam melakukan pelayanan yang dilakukan sistem dan kebutuhan yang harus dipenuhi oleh sistem, yaitu:
Universitas Sumatera Utara
30
1. Fungsi Pembangkit Kunci
Untuk melakukan enkripsi dan dekripsi sistem membutuhkan pembangkit kunci untuk memudahkan pengguna dalam menentukan kunci yang akan digunakan.
Pada sistem, kunci yang dibangkitkan dimasukkan langsung oleh pengguna. 2.
Fungsi Enkripsi Fungsi enkripsi pada sistem digunakan untuk membuat plaintext menjadi
ciphertext. Sebelum melakukan enkripsi, sistem terlebih dahulu melakukan enkripsi kunci.
3. Fungsi Dekripsi
Fungsi dekripsi pada sistem digunakan untuk membuat ciphertext menjadi plaintext. Namun, sebelum melakukan dekripsi pesan, pengguna sudah memiliki
kunci yang sesuai sehingga pengguna dapat melakukan dekripsi ciphertext menjadi plaintext.
3.1.2.2. Kebutuhan nonfungsional Kebutuhan non-fungsional adalah mendeskripsikan fitur, karakteristik dan batasan
lainnya seperti performa, penggunaan, model penyimpanan data, dokumentasi, kontrol, dan ekonomi. Terdapat beberapa hal yang menjadi syarat kebutuhan non-fungsional
antara lain: 1.
Performa Sistem yang dibangun dapat menampilkan dan menyimpan hasil dari fungsi
kriptografi yang dilakukan oleh sistem. 2.
Mudah dipelajari dan digunakan Sistem yang dibangun memiliki tampilan yang user friendly dan tampilan yang
sederhana. 3.
Dokumentasi Sistem yang dibangun memiliki panduan penggunaan.
4. Manajemen Kualitas
Sistem yang dibangun akan memiliki kualitas yang baik yaitu pada proses kriptografi cepat.
5. Kontrol
Sistem yang dibangun akan menampilkan pesan error untuk setiap input yang tidak sesuai.
Universitas Sumatera Utara
31
6. Keamanan
Dalam hal ini sistem mengamankan kunci yang digunakan.
3.1.3. Analisis proses
Pada penelitian ini sistem yang dibangun menggunakan algoritma Hill Cipher untuk melakukan proses enkripsi dan dekripsi pesan dan Rabin Public Key dalam melakukan
proses enkripsi dan dekripsi kunci pesan. Pada awalnya, pengirim mengirim pesan lalu dan setelah itu dienkripsi oleh
algortima Hill Cipher. Setelah pesan dienkripsi, pengirim memasukkan kunci Hill, kunci P dan Q dimana kunci P dan Q merupakan bilangan prima dan dienkripsi
menggunakan algoritma Rabin. Pencarian greatest common divisor menggunakan algoritma extended Euclidean. Untuk membangkitkan kunci pada algoritma Rabin
Cryptosystem, digunakan algoritma Fermat untuk menemukan bilangan prima atau menentukan keprimaan suatu bilangan. Setelah semua proses dilakukan, pesan akan
dikirim kepada penerima. Proses selanjutnya adalah penerima menerima pesan yang telah dienkripsi oleh pengirim. Setelah pesan masuk, penerima memasukkan kunci P
dan Q untuk dekripsi kunci Hill yang telah diinputkan pengirim. Setelah kunci didekripsi, maka pesan dapat didekripsi dan pesan asli dapat diketahui oleh penerima.
3.2. Pemodelan UML