Analisis Masalah Analisis Proses

BAB III ANALISIS DAN PERANCANGAN SISTEM

3.1. Analisis Sistem

Analisis sistem adalah proses menentukan kebutuhan sistem, apa yang harus dilakukan sistem untuk memenuhi kebutuhan pengguna user. Pada saat tahap perancangan diperlukan analisis sistem yang akan dibangun. Tahapan analisis kebutuhan merupakan tahap awal untuk membangun sebuah sistem atau aplikasi. Dengan adanya analisis diharapkan agar hasil yang baik dan sesuai dengan kebutuhan.

3.1.1. Analisis Masalah

Perkembangan teknologi jaringan komputer menyebabkan terhubungnya satu komputer dengan komputer lainnya. Sehingga, keamanan data merupakan prioritas utama dalam pendistribusian data. Dalam pendistribusian data, tentu pengirim tidak akan mau data yang dikirimkan diketahui isinya oleh lain, meskipun data tersebut sudah berhasil diambil. Untuk melindungi data tersebut adalah dengan memanfaatkan teknik kriptografi dan steganografi. Dengan kriptografi data akan benar-benar berbeda dengan data yang sebenarnya dan disisipkan ke dalam media gambar mengunakan teknik steganografi sehingga menutup kemungkinan data disalahgunakan oleh orang lain. Algoritma NTRUEncrypt merupakan algoritma yang tergolong ke dalam algoritma yang menggunakan sistem kunci publik. Algoritma ini digunakan untuk mengamankan data teks. Algoritma ini menggunakan operasi terhadap polynomial. Sehingga pesan atau plaintext diubah terlebih dahulu ke dalam bentuk polynomial untuk dapat melakukan proses enkripsi untuk menghasilkan ciphertext. Penentuan parameter yang digunakan dalam pembangkitan kunci merupakan proses penting pada algoritma NTRUEncrypt. Ciphertext yang dihasilkan dari proses enkripsi akan disisipkan ke dalam citra dengan format bitmap .bmp. Metode yang digunakan untuk menyisipkan pesan adalah steganografi End of File. Metode ini menyisipkan pesan pada akhir file. Sehingga tidak akan mengganggu kualitas data awal yang akan disisipkan pesan.

3.1.2. Analisis Persyaratan

Analisis persyaratan sistem dikelompokkan ke dalam dua kategori yaitu, analisis persyaratan fungsional dan analisis persyaratan non-fungsional. Persyaratan fungsional berisi persyaratan pokok dari suatu sistem dimana persyaratan tersebut wajib ada atau disediakan dalam sistem tersebut. Sedangkan persyaratan non- fungsional berupa persyaratan tambahan yang dapat menunjang kinerja dari persyaratan fungsional.

3.1.2.1. Persyaratan Fungsional

Persyaratan fungsional dari sistem yang akan dirancang adalah sebagai berikut. 1. Plaintext yang akan dienkripsi adalah file dengan format text .txt. 2. Citra digital yang digunakan untuk penyisipan pesan adalah file dengan format bitmap .bmp. 3. Parameter yang digunakan saat enkripsi dan dekripsi adalah sama. 4. Hasil dekripsi pesan disimpan kedalam format text .txt. 5. Citra digital yang disisipkan disimpan dalam format bitmap .bmp

3.1.2.2. Persyaratan Non-Fungsional

Adapun persyaratan non-fungsional pada sistem ini adalah sebagai berikut : 1. Performa Sistem yang dibangun harus dapat menunjukkan hasil dari proses enkripsi dan penyisipan pesan menggunakan algoritma NTRUEncrypt dan steganografi End of File . Dan pesan tersebut dapat diekstraksi kembali dari citra penampung. 2. Mudah dipelajari dan digunakan Sistem dibangun sederhana agar mudah digunakan dan dipelajari oleh pengguna User. 3. Hemat biaya Perangkat lunak yang dibangun tidak memerlukan peralatan tambahan ataupun perangkat pendukung dalam proses eksekusinya. 4. Dokumentasi Perangkat lunak yang akan dibangun mampu menyimpan citra digital disisipkan pesan dan dapat menyimpan pesan yang diekstraksi kembali. 5. Manajemen kualitas Perangkat lunak yang akan dibangun harus memiliki kualitas yang baik yaitu proses enkripsi dan penyisipan pesan relatif cepat. Begitu juga saat proses ekstraksi pesan dan dekripsi 6. Kontrol Perangkat lunak harus mampu memanajemen proses error yang terjadi pada saat penggunaan.

3.1.3. Analisis Proses

Dalam sistem ini digunakan algoritma NTRUEncrypt untuk melakukan proses enkripsi dan dekripsi, sedangkan untuk penyisipan pesan dilakukan dengan steganografi EOF. Proses pertama yang akan dikerjakan sistem adalah proses pembangkitan kunci yaitu kunci privat dan kunci publik. Pembangkitan kunci dilakukan setelah menentukan parameter set. Kunci privat yang dibangkitkan harus mempunyai invers. Kunci publik yang dibangkitkan akan digunakan untuk mengenkripsi file text yang diinputkan. Setelah melakukan enkripsi, ciphertext akan disisipkan pada citra asli, yaitu citra dengan format .bmp. Citra hasil penyisipan citra stego disimpan dalam media penyimpanan dan akan dikirim kepada penerima pesan. Untuk mengetahui pesan yang diterima maka citra stego harus diekstraksi, citra yang diektraksi menghasilkan citra asli dan ciphertext. Kemudian ciphertext didekripsi untuk mengetahui isi pesan tersebut.

3.2. Perancangan Sistem

Perancangan sistem merupakan tahapan yang dilakukan setelah tahap analisis sistem. Adapun perancangan sistem yang dilakukan adalah perancangan flowchart, kemudian dilanjutkan dengan pembuatan diagram Unified Modeling Language UML dari sistem.

3.2.1. Perancangan Flowchart Aplikasi

Pada bagian ini akan dijelaskan langkah-langkah pembuatan aplikasi dalam flowchart sistem kemudian akan dijabarkan dalam bagian-bagian flowchart algoritma. Flowchart di dalam sistem diantaranya: flowchart enkripsi Algoritma NTRUEncrypt dan penyembunyian data EOF, flowchart ekstraksi EOF dan dekripsi pesan, flowchart enkripsi, flowchart dekripsi, flowchart penyisipan data, serta flowchart ekstraksi.