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