Analisis Sistem ANALISIS DAN PERANCANGAN

BAB 3 ANALISIS DAN PERANCANGAN

3.1. Analisis Sistem

Analisis sistem terdiri dari fase-fase berbeda yang mendeskripsikan pengembangan sistem. Dalam tugas akhir ini, ada tiga fase analisis yaitu analisis masalah, analisis kebutuhan dan analisis proses. Analisis masalah bertujuan untuk mengidentifikasi masalah dan menemukan penyebab atau akar dari masalah serta memahami kelayakan masalah. Analisis kebutuhan dilakukan untuk menjelaskan fungsi-fungsi yang ditawarkan dan mampu dikerjakan sistem. Sedangkan analisis proses untuk memodelkan tingkah laku sistem. 3.1.1. Analisis masalah Seperti yang telah diuraikan pada latar belakang dari skripsi ini, permasalahan yang akan dibahas adalah mengenai keamanan data berupa pesan teks. Gambar 3.1. berikut ini merupakan gambaran masalah secara umum dari penelitian dengan menggunakan diagram Ishikawa fishbonecause and effect diagram. Gambar 3.1. Diagram Ishikawa Universitas Sumatera Utara 38 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. Permasalahan utama effect pada Gambar 3.1. adalah yang ditunjukkan oleh garis horizontal utama yang berada ditengah, yaitu mengamankan data berupa pesan teks dengan kriptografi danatau steganografi. Garis diagonal yang merupakan cabang dari garis horizontal utama merupakan kategori-kategori yang mewakili sebab utama cause dari permasalahan utama. Dari setiap kategori memiliki sebab-sebab yang tergolong ke dalam kategori yang bersesuaian dan diantaranya terdapat akar dari permasalahan. Untuk mendapatkan akar dari permasalahan, perlu dilakukan pengkajian dari diagram Ishikawa dan hal ini dapat dilihat pada Tabel 3.1. dan Tabel 3.2. Tabel 3.1. Pengkajian Diagram Ishikawa 1 No. Kemungkinan Akar Permasalahan Diskusi Akar permasalahan? 1 Metode: Steganografi metode FOFEOF. Terdapat garis atau gradasi berwarna hitam dan ukuran dimensi citra bertambah yang memancing kecurigaan. Ya 2 Metode: Steganografi metode LSB. Kualitas citra berubah dan pesan yang disisipkan terbatas. Hal ini dapat diatasi dengan penggunaan citra yang sesuai dimensi lebih besar. Tidak 3 Metode: Kriptografi algoritma Rabin. Ciphertext terlihat seperti kumpulan karakter acak, namun dapat memancing kecurigaan tentang keberadaan pesan rahasia. Ya 4 Manusia: Pengirim dan penerima menginginkan data yang dikirimkan aman. Dapat digunakan kriptografi dan steganografi yang dianggap aman. Tidak Universitas Sumatera Utara 39 Tabel 3.2. Pengkajian Diagram Ishikawa 2 No. Kemungkinan Akar Permasalahan Diskusi Akar permasalahan? 5 Manusia: Pihak ketiga memiliki kecurigaan dan ingin tahu. Jika pihak ketiga teliti, maka kemungkinan pihak ketiga menyadari akan keberadaan pesan rahasia. Ya 6 Material: Citra berubah dan terlihat mencurigakan. Dapat memancing kecurigaan jika perubahan dapat dipersepsi oleh salah satu panca indera dan mencolok. Ya 7 Material: Kunci dapat diketahui pihak ketiga. Kunci bersifat aman dan diamankan oleh pengirim dan penerima. Tidak 8 Mesin: Jalur pengiriman tidak aman. Dengan menggunakan kriptografi danatau steganografi, tidak masalah jika menggunakan jalur yang tidak aman. Tidak 9 Mesin: Komputasi yang lama. Tergantung dari spesifikasi hardware, software, algoritma yang digunakan atau implementasi. Tidak Dari Tabel 3.1. dan Tabel 3.2. dapat disimpulkan akar dari permasalahannya adalah timbulnya kecurigaan dari pihak ketiga terhadap keberadaan pesan rahasia yang disebabkan faktor perubahan citra terlihatnya garis hitam pada citra dan perubahan ukuran dimensi citra, ciphertext yang mencurigakan dan ketelitian pihak ketiga. Solusi yang dapat ditawarkan dari akar permasalahan yang telah ditemukan adalah dengan menyembunyikan ciphertext ke dalam citra menggunakan steganografi serta penyembunyian garis atau gradasi warna hitam dan ukuran dimensi citra tidak berubah. Caranya yaitu dengan melakukan steganografi teknik pemetaan titik hitam dengan pencarian sekuensial dan Rabin Cryptosystem. 3.1.2. Analisis kebutuhan Analisis kebutuhan terbagi dua bagian, yaitu kebutuhan fungsional dan kebutuhan nonfungsional. Kebutuhan fungsional mendeskripsikan aktivitas yang disediakan dan Universitas Sumatera Utara 40 harus dipenuhi suatu sistem. Sedangkan kebutuhan nonfungsional mendeskripsikan fitur, karakteristik dan batasan lainnya. I. Kebutuhan fungsional 1. Fungsi Pembangkit Kunci Dibutuhkan untuk memudahkan pengguna dalam menentukan kunci yang akan digunakan untuk melakukan enkripsi dan dekripsi. Kunci yang dibangkitkan dapat berupa input langsung dari pengguna atau dibangkitkan secara acak. 2. Fungsi Enkripsi Dengan memiliki kunci enkripsi, pengguna dapat melakukan enkripsi pesan menjadi ciphertext. Pesan yang dienkripsi dapat berupa input langsung dari pengguna atau pengguna memilih berkas yang berisi pesan yang sudah tersimpan dengan format .txt atau .doc. 3. Fungsi Dekripsi Dengan memiliki kunci dekripsi dan ciphertext yang bersesuaian, pengguna dapat melakukan dekripsi pesan menjadi plaintext. 4. Fungsi Embed Penyisipan Pesan rahasia disembunyikan ke dalam citra berformat BMP yang dipilih oleh pengguna. Pesan rahasia dapat berupa pesan asli langsung atau ciphertext. 5. Fungsi Ekstrak Dengan memilih citra berformat BMP yang memiliki pesan rahasia di dalamnya, pengguna dapat memperoleh pesan rahasia berupa plaintext atau ciphertext. II. Kebutuhan nonfungsional 1. Performa Perangkat lunak yang dibangun dapat menampilkan dan menyimpan hasil dari fungsi kriptografi dan steganografi yang dilakukan oleh sistem. 2. Mudah dipelajari dan digunakan Perangkat lunak yang dibangun memiliki tampilan yang user friendly, tampilan yang sederhana dan memaksimalkan penggunaan shortcut. 3. Dokumentasi Perangkat lunak yang dibangun memiliki panduan penggunaan. Universitas Sumatera Utara 41 4. Manajemen Kualitas Perangkat lunak yang dibangun akan memiliki kualitas yang baik yaitu proses kriptografi dan steganografi yang relatif cepat. 5. Kontrol Perangkat lunak yang dibangun akan menampilkan pesan error untuk setiap input yang tidak sesuai, pembatasan jenis input hanya karakter, hanya format tertentu dan pesan error untuk setiap kegagalan dari sistem jika input tidak dapat ditangani atau diproses. 6. Keamanan Dalam hal ini yang diamankan adalah kunci yang digunakan. Keamanan kunci tidak diamankan, hanya disimpan untuk kemudahan penggunaan. Namun kunci dapat dihapus dari database. 3.1.3. Analisis proses Perangkat lunak yang dibangun menggunakan algoritma Rabin Cryptosystem, algoritma Miller-Rabin, algoritma square and multiply, algoritma extended Euclidean, algoritma Chinese Remainder Theorem, pemetaan titik hitam dengan pencarian sekuensial dan menyisipkan pesan rahasia ke dalam titik yang dianggap hitam pada citra berformat BMP. Operasi modulo eksponensial menggunakan metode square and multiply left to right variant serta pencarian inversi modulo dan greatest common divisor menggunakan algoritma extended Euclidean. Untuk membangkitkan kunci pada algoritma Rabin Cryptosystem, digunakan algoritma Miller-Rabin untuk menemukan bilangan prima atau menentukan keprimaan suatu bilangan. Untuk dekripsi pada algoritma Rabin, digunakan algoritma Chinese Remainder Theorem dan untuk menentukan hasil dekripsi dari empat kemungkinan hasil dilakukan secara otomatis autodecrypt, yaitu dengan memilih nilai yang paling kecil. Hal ini berdasarkan pengalaman dalam melakukan dekripsi dari nilai 1 hingga 255 mencakup karakter dalam ASCII 8 bit dengan kunci publik yang sama n dan lebih besar dari 255 n 255, nilai hasil dekripsi yang benar biasanya adalah nilai yang paling kecil. Sebelum melakukan penyisipan dari pesan rahasia, pada cover-image diperlukan penggantian seluruh pixel yang nilai RGB sama dengan 254 menjadi 255. Universitas Sumatera Utara 42 Hal ini dikarenakan setelah penyisipan, pada pixel setelah pixel yang merupakan pesan rahasia akan diubah menjadi pixel dengan nilai RGB sama dengan 254 yang berfungsi sebagai penanda akhir dari pesan dan penanda bahwa sebuah citra merupakan stego- image pada stego-image, pixel dengan RGB yang bernilai 254 hanya satu pixel. Gambaran dari proses penyisipan pesan ke dalam cover-image dapat dilihat pada Gambar 3.2. berikut. Gambar 3.2. Ilustrasi Proses Penyisipan Pesan Penyisipan pesan rahasia dilakukan dengan menguraikan parsing nilai satu karakter pesan rahasia dapat berupa plaintext atau ciphertext menjadi empat bagian yang nilainya berkisar dari 0 hingga sama dengan 15 0 ≤ x ≤ 15. Sehingga tetap terlihat hitam dalam hal ini, terlihat hitam pekat. Lalu nilai x akan disisip pada cover-image dengan cara mengganti nilai pixel yang dianggap hitam dari hasil pemetaan titik hitam menggunakan pencarian sekuensial menjadi x secara berurut. Ilustrasi proses parsing dapat dilihat pada Gambar 3.3. berikut. Gambar 3.3. Ilustrasi Proses Parsing Universitas Sumatera Utara 43 Pencarian titik hitam memerlukan batas toleransi yaitu nilai maksimum pixel pada citra yang dianggap hitam mt atau maxtolerance. Rentang nilai yang dapat digunakan untuk batas toleransi yaitu dari 15 hingga sama dengan 255 15 ≤ mt ≤ 255. Jika digunakan batas toleransi yang dibawah nilai 15 mt 15, maka akan terjadi kekeliruan dalam proses ekstrak stego-image. Hal ini karena jika pada stego-image terdapat pixel asli bukan hasil penyisipan pesan dengan nilai RGB yang lebih kecil atau sama dengan 15 sebelum pixel penanda dengan nilai RGB sama dengan 254, maka pixel tersebut dianggap sebagai salah satu x nilai hasil parsing dari pesan rahasia yang ada pada citra. Penulis menyarankan untuk menggunakan nilai 15 sebagai nilai batas toleransi. Hal ini dikarenakan pada proses penyisipan, pesan rahasia akan diuraikan parsing menjadi empat nilai desimal yang nilainya berkisar dari 0 hingga sama dengan 15 sehingga stego-image yang dihasilkan tidak jauh berbeda dengan cover-image. Penanda stego-image berupa citra yang hanya memiliki satu pixel dengan RGB yang bernilai 254 penanda. Jika sebuah citra merupakan sebuah stego-image, maka proses ekstrak citra akan dilakukan dengan membaca semua pixel dengan nilai RGB lebih kecil atau sama dengan 15 sampai pixel penanda. Diagram arsitektur dari sistem yang akan dibangun dapat dilihat pada Gambar 3.4. berikut ini. Gambar 3.4. Diagram Arsitektur dari Sistem yang Akan Dibangun Universitas Sumatera Utara 44

3.2. Perancangan Sistem