• Tidak ada hasil yang ditemukan

D AFTAR R IWAYAT H IDUP

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 (fishbone/cause and effect diagram).

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 dan/atau 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 FOF/EOF.

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.

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 dan/atau 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

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

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.

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.

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.

Dokumen terkait