Perbandingan Teknik Steganografi Dengan Metode First-Of-File, End-Of-File Dan Kombinasi First-Of-File Dan End-Of-File Pada File Bitmap

(1)

PERBANDINGAN TEKNIK STEGANOGRAFI DENGAN METODE

FIRST-OF-FILE, END-OF-FILE

DAN KOMBINASI

FIRST-OF-FILE

DAN

END-OF-FILE

PADA

FILE

BITMAP

SKRIPSI

ARFIYAH

091401003

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2013


(2)

PERBANDINGAN TEKNIK STEGANOGRAFI DENGAN METODE FIRST-OF-FILE, END-OF-FILE DAN KOMBINASI FIRST-OF-FILE DAN END-OF-FILE

PADA FILE BITMAP SKRIPSI

Diajukanuntukmelengkapitugasakhirdanmemenuhisyarat memperoleh ijazah Sarjana Ilmu Komputer

ARFIYAH 091401003

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2013


(3)

PERSETUJUAN

Judul : PERBANDINGAN TEKNIK STEGANOGRAFI

DENGAN METODE FIRST-OF-FILE, END-OF-FILE DAN KOMBINASI FIRST-OF-FILE DAN END-OF-FILE PADA END-OF-FILE BITMAP

Kategori : SKRIPSI

Nama : ARFIYAH

Nomor Induk Mahasiswa : 091401003

Program Studi : SARJANA (S1) ILMU KOMPUTER

Departemen : ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA Diluluskan di

Medan, 24 Juli 2013 Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Dian Wirdasari, S.Si, M.Kom Prof. Dr. Muhammad Zarlis NIP.198209232010122002 NIP.195707011986031001

Diketahui/Disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

Dr. Poltak Sihombing, M.Kom NIP.196203171991031001


(4)

PERNYATAAN

PERBANDINGAN TEKNIK STEGANOGRAFI DENGAN METODE FIRST-OF-FILE, END-OF-FILE DAN KOMBINASI FIRST-OF-FILE DAN END-OF-FILE

PADA FILE BITMAP

SKRIPSI

Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan, 2 Juli2013

Arfiyah 091401003


(5)

PENGHARGAAN

Puji dan syukur kehadirat Allah SWT, yang hanya dengan rahmat dan izin-Nya penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Departemen Ilmu Komputer Universitas Sumatera Utara.

Ucapan terima kasih penulis sampaikan kepada:

1. Bapak Prof. Dr. dr. Syahril Pasaribu, DTM&H, M.Sc(CTM), Sp.A(K) selaku Rektor Universitas Sumatera Utara.

2. Bapak Prof. Dr. Muhammad Zarlis selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara dan Dosen Pembimbing I yang telah memberikan bimbingan, saran dan masukan kepada penulis dalam pengerjaan skripsi ini.

3. Ibu Dian Wirdasari, S.Si, M.Kom selaku Dosen Pembimbing II yang telah memberikan bimbingan, saran dan masukan kepada penulis dalam pengerjaan skripsi ini.

4. Bapak Prof. Dr. Iryanto, M.Si selaku Dosen Pembanding I yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini.

5. Ibu Dian Rachmawati, S.Si, M.Kom selaku Dosen Pembanding II yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini.

6. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.

7. Ibu Maya Silvi Lydia, B.Sc, M.Sc selaku Sekretaris Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.

8. Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara, seluruh tenaga pengajar dan pegawai di Program Studi S1 Ilmu Komputer Fasilkom-TIUSU.

9. Ayahanda Muhammad Nasir dan ibunda Yunita, serta adik tersayang Sheren Natasya yang selalu memberikan doa, kasih sayang dan dukungannya kepada penulis.

10. Muhammad Reza Pahlevy, S.H yang telah memberikan doa, semangat, saran dan perhatiannya kepada penulis.


(6)

11. Kakak-kakak tersayang Farah diba, S.Pd, Henny Wandani, S.Kom dan Wiliyana, S.Kom yang telah memberikan saran dan perhatiannya kepada penulis.

12. Teman-teman seperjuanganS1-Ilmu Komputer stambuk 2009, khususnya Widya Karolina Sembiring, Ales sanro Sotardodo, Samuel Tarigan, Muhammad Alfian, Fauzana, Martinelly Meliala, Berry Safaat Harahap, Isman Santoso, Juni Santo Sihotang yang selalu memberikan semangat dan menjadi teman diskusi penulis selama menyelesaikan skripsi ini.

Semoga Allah SWT melimpahkan berkahkepada semua pihak yang telah memberikan bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan skripsi ini.

Medan, 2 Juli 2013 Penulis


(7)

ABSTRAK

Dalam komunikasi data aspek keamanan dan kerahasiaan data sangat diperlukan. Untuk menjaga keamanan dan kerahasiaan data tersebut adalah menggunakan steganografi. Steganografi merupakan ilmu dan seni menyembunyikan pesan rahasia dalam suatu media sehingga keberadaan pesan rahasia tersebut tidak dapat diketahui oleh orang lain. Metode steganografi yang digunakan pada penelitian ini adalah First-of-File, End-of-File dan kombinasi First-of-File dan End-of-File.First-of-File merupakan metode steganografi yang menyisipkan atau menyembunyikan pesan rahasia di awal file citra secara vertikal. End-of-File merupakan metode steganografi yang menyisipkan atau menyembunyikan pesan rahasia di akhir file citra secara vertikal. Kombinasi First-of-File dan End-of-File merupakan metode steganografi yang menyisipkan atau menyembunyikan pesan rahasia di awal dan di akhir file citra secara vertikal. Implementasi sistem menggunakan bahasa pemrograman Matlab 7.8.0 (R2009a). Sistem diuji dengan pesan rahasia berupa data teks (*.txt) yang memiliki ukuran (kb) maksimal ((3 x tinggi gambar) – 4) yang akan disembunyikan ke dalam suatu file citra berformat bitmap berukuran maksimal 300 x 300 pixel. Hasil penelitian menunjukkan bahwa metode End-of-File memiliki waktu yang paling lama saat proses embedding dan memiliki waktu yang paling cepat saat proses extraction. Katakunci : Steganografi, End-of-File, First-of-File, Kombinasi First-of-File dan End-of-File.


(8)

ABSTRACT

In the aspect of data communications security and confidentiality of data is needed. For maintaining the security and confidentiality of the data is using steganography. Steganography is the science and art of hiding a secret message in the media so that the existence of the secret message cannot be known by others. Steganography method used in this study is a of-File, End-of-File and the combination of First-of-File and End-First-of-File. First-First-of-File is a steganography method which inserts or hide secret messages in images a wall file vertically. End-of-File is a steganography method which inserts or hide the secret message at the end of the image file vertically. Combination First-of-File and End-of-File is a steganography method which inserts or hide secret messages at the beginning and at the end of the image file vertically. System implementation using Matlab programming language 7.8.0 (R2009a). The system testedwitha secretmessagein the form oftext data(*. txt) which has a maximum size (kb) of((3 xheight of the image) –4)which will be hidden in a bitmap format image file size maximum 300 x 300 pixels. The results showedthat themethodEnd-of-File has thelongest timeduring the process ofembeddingandhasthe fastesttimeduring the process ofextraction.

Keywords: Steganography, End-of-File, First-of-File, Combination First-of-File and End-of-File.


(9)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Abstract vii

Daftar Isi viii

Daftar Tabel xi

Daftar Gambar xii

Daftar Lampiran xiii

Bab I Pendahuluan

1.1 Latar Belakang 1

1.2 Rumusan Masalah 2

1.3 Batasan Masalah 2

1.4Tujuan Penelitian 3

1.5 Manfaat Penelitian 3

1.6 Metode Penelitian 3

1.7 Sistematika Penulisan 4

Bab II Tinjauan Teoritis

2.1 Steganografi 6

2.1.1 Sejarah dan Perkembangan Steganografi 7

2.2 Teknik Steganografi 8

2.2.1 Tipe Steganografi 9

2.3 Metode Embedding 11

2.4 Konsep dan Terminologi Steganografi 11

2.5 Pengertian Citra 13

2.5.1 Citra Digital 13

2.5.2 Citra Analog 14

2.6 Jenis-Jenis Citra Digital 14

2.7 Format File Bitmap 15

2.8 Metode End-of-File 16

2.9 Metode First-of-File 16

2.10 Metode Kombinasi First-of-File dan End-of-File 17

2.11 Mean Squared Error (MSE) 17

2.12 Penelitian yang Relevan 18

Bab III Analisis dan Perancangan Sistem

3.1 Analisis Sistem 19

3.1.1 Analisis Masalah 19

3.1.2 Analisis Persyaratan 19

3.1.2.1Persyaratan Fungsional 20


(10)

3.1.3Analisis Proses 21 3.1.3.1 Analisis Proses Embedding pada metode End-of-File 21 3.1.3.2 Analisis Proses Embedding pada metode First-of-File 23 3.1.3.3 Analisis Proses Embedding pada metode kombinasi

First-of-File dan End-of-File 25

3.2 Perancangan Sistem 28

3.2.1 Flowchart Gambaran Umum Sistem 28

3.2.1.1 Flowchart Proses Embedding pada Metode End-of-File 29 3.2.1.2 Flowchart Proses Extraction pada Metode End-of-File 30 3.2.1.3 Flowchart Proses Embedding pada Metode First-of-File 30 3.2.1.4 Flowchart Proses Extraction pada Metode First-of-File 31 3.2.1.5 Flowchart Proses Embedding pada Metode kombinasi

First-of-File dan End-of-File. 32 3.2.1.6 Flowchart Proses Extraction pada Metode kombinasi

First-of-File dan End-of-File 33

3.2.2 Use Case Diagram 34

3.2.2.1 Use Case Embedding FOF, EOF, Kombinasi FOF-EOF 35

3.2.2.2 Use Case Input Cover Image 36

3.2.2.3 Use Case Input Pesan 37

3.2.2.4 Use Case Pilih Pesan 38

3.2.2.5 Use Case Penyisipan 38

3.2.2.6 Use Case Extraction FOF, EOF, Kombinasi FOF-EOF 39

3.2.2.7 Use Case Input Stego Image 40

3.2.2.8 Use Case Extraksi 40

3.2.2.9 Use Case Menghitung MSE 41

3.2.3Activity Diagram 42

3.2.3.1 Activity DiagramProses Embedding 43 3.2.3.2 Activity DiagramProses Extraction 44

3.2.4Pseudocode 44

3.2.4.1 Pseudocode Proses Embedding 45

3.2.4.2 Pseudocode Proses Extraction 49

3.2.5 Perancangan Antarmuka (Interface) 53

3.2.5.1 Halaman Menu Utama 53

3.2.5.2 Halaman Menu Embed 54

3.2.5.3 Halaman Menu Extract 56

3.2.5.4 Halaman Menu Help 58

3.2.5.5 Halaman Menu Statistic 59

Bab IV Implementasi dan Pengujian Sistem

4.1 Implementasi 61

4.1.1 Tampilan Halaman Home (Menu Utama) 61

4.1.2 Tampilan Halaman Menu Embed 63

4.1.3Tampilan Halaman Menu Extract 64

4.1.4 Tampilan Halaman Menu Help 65

4.1.5 Tampilan Halaman Statistic 66

4.2 Pengujian Sistem 67

4.2.1 Pengujian Proses Input Cover Image 68 4.2.2 Pengujian Proses Input Pesan 68


(11)

Kombinasi FOF-EOF 69 4.2.4Pengujian Proses Input Stego Image 70 4.2.5 Pengujian Proses Extraction FOF, EOF,

Kombinasi FOF-EOF 72 4.2.6 Pengujian Proses Statistic (Menghitung MSE) 73

4.2.7 Hasil Pengujian Menyisipkan Pesan Rahasia ke dalam

Cover Image 75

4.2.8 Hasil Pengujian Mengambil Pesan Rahasia dari dalam

Stego Image 79

Bab V Kesimpulan dan Saran

5.1 Kesimpulan 86 5.2Saran 87 Daftar Pustaka 88


(12)

DAFTAR TABEL

Nomor

Tabel Nama Tabel Halaman

3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 3.15 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8

Matriks Pixel Citra RGB

Matriks Pixel Citra RGB yang Telah Disisipkan Pesan dengan metode End-of-File (EOF)

Matriks Pixel Citra RGB

Matriks Pixel Citra RGB yang Telah Disisipkan Pesan dengan Metode First-of-File

Matriks Pixel Citra RGB

Matriks Pixel Citra RGB yang Telah Disisipkan Pesan dengan Metode kombinasi First-of-File dan End-of-File

Spesifikasi Use Case Embedding FOF, EOF, Kombinasi FOF-EOF

Spesifikasi Use Case Pilih Cover Image Spesifikasi Use Case Input Pesan Spesifikasi Use Case Pilih Pesan Spesifikasi Use Case Penyisipan

Spesifikasi Use Case Extraction FOF, EOF, Kombinasi FOF-EOF

Spesifikasi Use Case Input Stego Image Spesifikasi Use Case Ekstraksi

Spesifikasi Use Case Menghitung MSE

Perbandingan Ukuran File Pesan, Ukuran pixel Gambar Asli, Waktu Proses Embedding, Ukuran File Text (kb) dan Ukuran pixel Stego Image Hasil Embedding ukuran 100 x 100

Perbandingan Ukuran File Pesan, Ukuran pixel Gambar Asli, Waktu Proses Embedding, Ukuran File Text (kb) dan Ukuran pixel Stego Image Hasil Embedding ukuran 200 x 200

Perbandingan Ukuran File Pesan, Ukuran pixel Gambar Asli, Waktu Proses Embedding, Ukuran File Text (kb) dan Ukuran pixel Stego Image Hasil Embedding ukuran 300 x 300

Perbandingan Ukuran File Pesan, Waktu Extraction Pada ukuran 100 x 100

Perbandingan Ukuran File Pesan, Waktu Extraction Pada ukuran 200 x 200

Perbandingan Ukuran File Pesan, Waktu Extraction Pada ukuran 300 x 300

Perbandingan Ukuran Pixel Cover Image, Waktu Rata-Rata Proses Embedding, Waktu Rata Proses Extraction, Rata-Rata Nilai MSE Pada Metode First-of-File (FOF), End-of-File (EOF) dan Kombinasi First-of-File dan End-of-File (EOFOF) Perbandingan Stego Image dengan Ukuran File Pesan 296 Byte yang disisipkan ke dalam Ukuran Cover Image yang berbeda.

22 23 24 25 26 27 36 37 37 38 38 39 40 40 41 76 77 78 80 81 82 83 84


(13)

DAFTAR GAMBAR

Nomor

Gambar Nama Gambar Halaman

2.1 2.2 2.3 2.4 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 3.15 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15 4.16 4.17 4.18 4.19

Skema Proses Penyimpanan Data Rahasia ke dalam Media Digital dengan Teknik Steganografi

Skema Proses Steganografi Koordinat Pada Citra Citra BMP

Flowchart Gambaran Umum Sistem

Flowchart Proses Embedding Pada Metode End-of-File Flowchart Proses Extraction Pada Metode End-of-File Flowchart Proses Embedding Pada Metode First-of-File Flowchart Proses Extraction Pada Metode First-of-File

Flowchart Proses Embedding Pada Metode kombinasi First-of-File danEnd-of-First-of-File

Flowchart Proses Extraction Pada Metode kombinasi First-of-File dan End-of-First-of-File

Use Case Diagram Sistem

Activity Diagram Proses Embedding Activity Diagram Proses Extraction

Rancangan Antarmuka Halaman Menu Utama Rancangan Antarmuka Halaman Embed Rancangan Antarmuka Halaman Extract Rancangan Antarmuka Halaman Help Rancangan Antarmuka Halaman Statistic Tampilan Halaman Menu Utama

Tampilan Submenu yang Terdapat Pada Menu File Tampilan Halaman Menu Embed

Tampilan Halaman Menu Extract Tampilan Halaman Menu Help Tampilan Halaman Statistic Arfi.bmp

Pop-up Window Open Bitmap File Pop-up Window Open Text File

Penyisipan Pesan Rahasia ke dalam Cover Image Pop-up Window Open Stego Image

Hasil Pemilihan Stego Image Hasil Ekstraksi Stego Image

Message dialog Peringatan Gambar yang Dipilih Terdapat Pesan yang disembunyikan

Message dialog Peringatan Gambar yang Dipilih Tidak Terdapat Pesan yang disembunyikan

Pop-up Window Open Bitmap File Pop-up Window Open Image Proses Perhitungan nilai MSE

Proses Perhitungan nilai MSE (Ukuran Berbeda)

6 12 13 16 28 29 30 31 32 33 34 35 43 44 54 55 57 58 59 62 62 63 64 66 66 67 68 69 69 71 71 72 72 73 74 74 75 75


(14)

DAFTAR LAMPIRAN

Halaman

A. Listing Program A-1


(15)

ABSTRAK

Dalam komunikasi data aspek keamanan dan kerahasiaan data sangat diperlukan. Untuk menjaga keamanan dan kerahasiaan data tersebut adalah menggunakan steganografi. Steganografi merupakan ilmu dan seni menyembunyikan pesan rahasia dalam suatu media sehingga keberadaan pesan rahasia tersebut tidak dapat diketahui oleh orang lain. Metode steganografi yang digunakan pada penelitian ini adalah First-of-File, End-of-File dan kombinasi First-of-File dan End-of-File.First-of-File merupakan metode steganografi yang menyisipkan atau menyembunyikan pesan rahasia di awal file citra secara vertikal. End-of-File merupakan metode steganografi yang menyisipkan atau menyembunyikan pesan rahasia di akhir file citra secara vertikal. Kombinasi First-of-File dan End-of-File merupakan metode steganografi yang menyisipkan atau menyembunyikan pesan rahasia di awal dan di akhir file citra secara vertikal. Implementasi sistem menggunakan bahasa pemrograman Matlab 7.8.0 (R2009a). Sistem diuji dengan pesan rahasia berupa data teks (*.txt) yang memiliki ukuran (kb) maksimal ((3 x tinggi gambar) – 4) yang akan disembunyikan ke dalam suatu file citra berformat bitmap berukuran maksimal 300 x 300 pixel. Hasil penelitian menunjukkan bahwa metode End-of-File memiliki waktu yang paling lama saat proses embedding dan memiliki waktu yang paling cepat saat proses extraction. Katakunci : Steganografi, End-of-File, First-of-File, Kombinasi First-of-File dan End-of-File.


(16)

ABSTRACT

In the aspect of data communications security and confidentiality of data is needed. For maintaining the security and confidentiality of the data is using steganography. Steganography is the science and art of hiding a secret message in the media so that the existence of the secret message cannot be known by others. Steganography method used in this study is a of-File, End-of-File and the combination of First-of-File and End-First-of-File. First-First-of-File is a steganography method which inserts or hide secret messages in images a wall file vertically. End-of-File is a steganography method which inserts or hide the secret message at the end of the image file vertically. Combination First-of-File and End-of-File is a steganography method which inserts or hide secret messages at the beginning and at the end of the image file vertically. System implementation using Matlab programming language 7.8.0 (R2009a). The system testedwitha secretmessagein the form oftext data(*. txt) which has a maximum size (kb) of((3 xheight of the image) –4)which will be hidden in a bitmap format image file size maximum 300 x 300 pixels. The results showedthat themethodEnd-of-File has thelongest timeduring the process ofembeddingandhasthe fastesttimeduring the process ofextraction.

Keywords: Steganography, End-of-File, First-of-File, Combination First-of-File and End-of-File.


(17)

BAB 1

PENDAHULUAN

1.1Latar Belakang Masalah

Ketika ingin menyampaikan atau bertukar pesan kepada orang lain, maka tentu saja diinginkan pesan yang dikirim sampai ke pihak yang dituju dengan aman. Pengertian aman di sini sangat luas. Aman bisa berarti bahwa selama pengiriman pesan tentu diharapkan pesan tersebut tidak dibaca oleh orang yang tidak berhak. Sebab, mungkin saja pesan yang dikirim berisi sesuatu yang rahasia sehingga jika pesan rahasia dibaca oleh pihak lawan atau pihak yang tidak berkepentingan maka bocorlah kerahasiaan pesan yang dikirim.

Kehidupan saat ini dilingkupi oleh kriptografi. Begitu pentingnya kriptografi untuk keamanan informasi, sehingga jika berbicara mengenai masalah keamanan yang berkaitan dengan penggunaan komputer, maka orang tidak bisa terlepas dengan kriptografi. Teknik menjaga kerahasiaan pesan tidak hanya dengan menggunakan kriptografi. Ada teknik lain yang sudah digunakan sejak berabad-abad yang lalu, yaitu steganografi. Steganografi adalah ilmu dan seni menyembunyikan pesan rahasia di dalam pesan lain sehingga keberadaan pesan rahasia tersebut tidak dapat diketahui [5].

Least Significant Bit (LSB) merupakan salah satu metode steganografi yang bekerja dengan cara mengganti bit terakhir dari masing-masing piksel dengan pesan yang akan disisipkan. LSB mempunyai kelebihan yakni ukuran gambar tidak akan berubah. Sedangkan kekurangannya adalah pesan yang akan disisipkan terbatas, sesuai dengan ukuran citra [4].

Metode lain dalam steganografi adalah End-of-File dan First-of-File. End-of-File merupakan salah satu metode yang dapat menyisipkan data yang akan


(18)

disembunyikan pada akhir file sehingga file image akan terlihat sedikit berbeda dengan aslinya. Sedangkan First-of-File yaitu metode yang dapat menyisipkan data yang akan disembunyikan pada awal file.

Berdasarkan latar belakang yang telah penulis uraikan, maka dilakukan penelitian dengan judul “Perbandingan Teknik Steganografi dengan Metode First-of-File, End-of-File dan Kombinasi First-End-of-File dan End-End-of-File pada File Bitmap.”

1.2Rumusan Masalah

Yang menjadi rumusan masalah dalam penelitian ini adalah bagaimana membandingkan tiga metode yang ada yaitu metode First-of-File, End-of-File dan kombinasi keduanyauntuk mengetahui perbandingan kecepatan proses embedding dan extraction, ukuran file citra sebelum dan sesudah disisipkan pesan dan nilai mse (mean squared error) untuk ketiga metode tersebut.

1.3Batasan Masalah

Untuk fokusnya penelitian yang dilakukan, penulis memberi batasan sebagai berikut: 1. Bahasa pemrograman yang digunakan adalah Matlab 7.8.0 (R2009a).

2. Citra digital yang digunakan berupa file bitmap (*.bmp) dengan ukuran dimensi maksimal 300x300 pixel.

3. Pesan yang akan disisipkan ke citra digital dapat diinput oleh user ataupun dapat berupa file *.txt dengan ukuran file pesan (kb) maksimal adalah ((3 x tinggi gambar) – 4).

4. Parameter yang diuji adalah ukuran file, kecepatan proses dan nilai MSE (mean squared error) untuk ketiga metode.

5. Metode First-of-File dan End-of-File memiliki penanda awal ‘zx’ dan metode kombinasi First-of-File dan End-of-File memiliki penanda awal ‘zzxx’ serta ketiga metode memiliki penanda akhir yang sama yaitu ‘zx’.


(19)

1. Membangun aplikasi steganografi dengan metode First-of-File, End-of-Fileserta kombinasi keduanya.

2. Diperoleh hasil perbandingan metode First-of-File (FOF) dan End-of-File (EOF) serta kombinasi keduanya.

1.5Manfaat Penelitian

Manfaat dari penelitian ini adalah sebagai berikut: 1. Manfaat bagi Penulis:

Menambah pengetahuan penulis dalam melakukan proses penyisipan pesan teks pada suatu file bitmap dengan menggunakan metode First-of-File (FOF) dan End-of-File (EOF)serta kombinasi First-End-of-File (FOF) dan End-End-of-File (EOF).

2. Manfaat bagi bidang ilmu:

Menambah pengetahuan tentang kelebihan dan kekurangan First-of-File (FOF) dan End-of-File (FOF) serta kombinasi First-of-File (FOF) dan End-of-File (EOF). 3. Manfaat bagi masyarakat:

Membantu masyarakat dalam mengamankan pesan teks pada suatu file bitmap.

1.6Metode Penelitian

Dalam penelitian ini, ada beberapa tahapan yang akan dilakukan adalah sebagai berikut:

1. Studi Literatur

Pada tahap ini akan dilakukan pengumpulan bahan referensi yang terkait dengan Metode First-of-File dan End-of-File yang dapat berupa buku-buku, artikel-artikel atau e-book serta jurnal nasional daninternasionalyang didapatkan melalui internet.

2. Analisis dan Perancangan Sistem

Pada tahap ini akan dilaksanakan perancangan use case diagram, activity diagram, flowchart, interface dan perancangan sistem dengan menggunakan metode First-of-File (EOF), End-First-of-File (FOF), dan kombinasi keduanya.


(20)

Pada tahap ini akan dilakukan implementasi dari hasil perancangan desain sistem dalam bentuk perangkat lunak.

4. Pengujian Sistem

Pada tahap ini akan dilakukan pengujian sistem yang bertujuan untuk mengetahui kesalahan-kesalahan yang terjadi pada sistem, sehingga dapat dilakukan perbaikan. Kemudian membandingkan ketiga metode berdasarkan parameter yang telah ditentukan yaitu ukuran file, kecepatan proses dan nilai MSE (mean squared error) untuk ketiga metode.

5. Penyusunan Laporan

Pada tahap ini dilakukan penyusunan laporan dari hasil analisis dan perancangan sistem dalam format penulisan penelitian.

1.7Sistematika Penulisan

Untuk membuat penulisan lebih terstruktur, maka penulisan ini dibagi menjadi lima bab, yaitu:

BAB 1: PENDAHULUAN

Pada bab ini membahas latar belakang, perumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian yang dilakukan serta sistematika penulisan.

BAB 2: TINJAUAN TEORITIS

Pada bab ini membahas tentang teori-teori yang terkait dengan penelitian ini diantaranya adalah teori steganografi, citra, metode First-of-File, metode End-of-File, Kombinasi kedua metode dan teori pendukung lainnya.

BAB 3: ANALISIS DAN PERANCANGANSISTEM

Pada bab ini membahas mengenai penjelasan tentang analisis masalah yang dibangun dalam sistem dan menganalisis tentang hal-hal yang dibutuhkan dalam membangun sistem tersebut, kemudian dilanjutkan dengan tahapan perancangan sistem yang


(21)

BAB 4: IMPLEMENTASI DAN PENGUJIAN SISTEM

Pada bab ini membahas tentang implementasi sistem yang berdasarkan tahapan perancangan dengan menggunakan bahasa pemrograman Matlab 7.8.0 (2009a). Kemudian dilanjutkan dengan tahapan pengujian sistem yaitu membandingkan ketiga metode berdasarkan parameter yang telah ditentukan yaitu ukuran file, kecepatan proses dan nilai mse untuk menguji apakah sistem sudah berjalan sesuai dengan perancangan.

BAB 5:KESIMPULAN DAN SARAN

Pada bab ini berisi merupakan kesimpulan dari semua pembahasan yang ada dengan saran-saran yang ditujukan bagi para pembaca atau pengembang.


(22)

BAB 2

TINJ AUAN TEORITIS

2.1Steganografi

Kata steganography (steganografi) berasal dari bahasa Yunani yaitu stegos yang berarti atap atau tertutup dan graphia artinya tulisan sehingga arti secara keseluruhan adalah ilmu dan seni menyembunyikan keberadaan komunikasi. Dengan menggunakan steganografi, pesan rahasia dapat disisipkan ke dalam sebuah media yang tidak mencurigakan dan mengirimnya tanpa ada seorangpun yang mengetahui keberadaan pesan tersebut.

Untuk menyisipkan data yang ingin disembunyikan membutuhkan dua buah arsip yaitu arsip pertama adalah media penampung seperti citra, suara, video dan sebagainya yang terlihat tidak mencurigakan untuk menyimpan pesan rahasia. Arsip kedua adalah pesan yang ingin disembunyikan yaitu media penampungnya berupa citra yang disebut cover-image dan citra yang telah disisipi pesan disebut stego-image [7].

+

=

Gambar2.1. Proses penyimpanan data rahasia ke dalam media digital dengan teknik steganografi

(Sumber: [9])

Beberapa contoh media penyisipan pesan rahasia yang digunakan dalam teknik Steganografi digital antara lain sebagai berikut:

Wadah Penampung (Citra BMP)

Data Rahasia (.txt)

Stego

(Citra BMP)


(23)

1. Teks

Dalam algoritma Steganografi yang menggunakan teks sebagai media penyisipannya biasanya digunakan teknik NLP sehingga teks yang telah disisipi pesan rahasia tidak akan mencurigakan untuk orang yang melihatnya. Contoh format teks: teks file, html, pdf, dll.

2. Audio

Format ini pun sering dipilih karena biasanya berkas dengan format ini berukuran relatif besar sehingga bisa menampung pesan rahasia dalam jumlah yang besar pula. Contoh format audio: wav, voc, mp3, dll.

3. Citra

Format ini juga paling sering digunakan, karena format ini merupakan salah satu format file yang sering dipertukarkan dalam dunia internet. Alasan lainnya adalah tersedianya banyak algoritma Steganografi untuk media penampung yang berupa citra. Contoh format citra: bitmap (bmp), gif, pcx, jpeg, dll.

4. Video

Format ini memang merupakan format dengan ukuran file yang relatif sangat besar, tetapi jarang digunakan karena ukurannya yang terlalu besar itu mengurangi kepraktisannya dan juga kurangnya algoritma yang mendukung format ini. Contoh format video: mpeg, avi, dll [3].

Keunggulan steganografi dari kriptografi adalah kemampuannya untuk membuat suatu pesan rahasia menjadi tidak terlihat atau tidak mengundang orang lain yang tidak mengetahui untuk peduli atau penasaran sedangkan kriptografi mengacak sebuah pesan tertulis menjadi suatu yang tidak berarti dan dapat membuat orang lain menjadi penasaran dan ingin mengetahui arti dari pesan acak tersebut sehingga akhirnya melakukan percobaan untuk menerjemahkan pesan tersebut [8].

2.1.1 Sejarah dan Perkembangan Steganografi

Steganografi sudah dikenal oleh bangsa Yunani sejak lama. Herodatus, seorang penguasa Yunani, mengirimkan pesan rahasia menggunakan kepala budak atau prajurit sebagai media. Caranya rambut budak dibotaki, lalu pesan rahasia ditulis pada


(24)

kulit kepala budak. Setelah rambut-rambut budak tumbuh cukup banyak, budak tersebut dikirim ke tempat tujuan pesan untuk membawa pesan rahasia di kepalanya. Di tempat penerima, kepala budak dibotaki kembali untuk membaca pesan yang tersembunyi di balik rambutnya. Pesan tersebut berisi peringatan tentang invasi dari Bangsa Persia.

Bangsa Romawi mengenal steganografi dengan menggunakan tinta tak tampak (invisible ink) untuk menulis pesan. Tinta tersebut dibuat dari campuran sari buah, susu dan cuka. Jika tinta digunakan untuk menulis maka tulisannya tidak tampak. Tulisan di atas kertas dapat dibaca dengan cara memanaskan kertas tersebut.

Selama Perang Dunia II, agen-agen spionase juga menggunakan steganografi untuk mengirim pesan. Caranya dengan menggunakan titik-titik yang sangat kecil sehingga keberadaannya tidak dapat dibedakan pada tulisan biasa yang diketik.

Pada saat ini steganografi sudah banyak diimplementasikan pada media digital. Steganografi digital menggunakan media digital sebagai penampung, seperti citra digital, video digital atau audio. Informasi yang disembunyikan juga berbentuk digital seperti teks, citra, data audio atau data video. Steganografi digital dapat dipakai di negara-negara yang menerapkan sensor ketat terhadap informasi atau di negara di mana enkripsi pesan terlarang. Pada negara-negara seperti itu informasi rahasia dapat disembunyikan dengan menggunakan steganografi [5].

2.2Teknik Steganografi

Dalam steganografi terdapat tujuh teknik yang digunakan dalam steganografi yaitu:

1. Injection

Teknik yang menanamkan pesan rahasia secara langsung ke suatu media. Yang merupakan suatu masalah dari teknik ini adalah ukuran media yang diinjeksi menjadi lebih besar dari ukuran normalnya sehingga mudah


(25)

2. Substitusi

Teknik yang menggantikan data normal menjadi data rahasia. Hasil teknik itu biasanya tidak terlalu mengubah ukuran data asli, tetapi tergantung pada file media dan data yang akan disembunyikan. Teknik substitusi bisa menurunkan kualitas media yang ditumpangi.

3. Transform Domain

Teknik ini menyembunyikan data pada “transform space” dan teknik ini akan sangat lebih efektif bila diterapkan pada file berekstensi Jpeg (gambar).

4. Spread Spectrum

Teknik pentransmisian menggunakan pseudo-noise code, yang independen terhadap data informasi sebagai modulator bentuk gelombang untuk menyebarkan energi sinyal dalam sebuah jalur komunikasi yang lebih besar daripada sinyal jalur komunikasi informasi.

5. Statistical Method

Teknik ini disebut juga skema steganographic 1 bit. Skema tersebut menanamkan satu bit informasi pada media tumpangan dan mengubah statistik walaupun hanya 1 bit. Perubahan statistik ditunjukkan dengan indikasi 1 dan jika tidak ada perubahan, terlihat indikasi 0. Sistem ini bekerja berdasarkan kemampuan penerima dalam membedakan antara informasi yang dimodifikasi dan yang belum.

6. Distortion

Metode ini menciptakan perubahan atas benda yang ditumpangi oleh data rahasia.

7. Cover Generation

Metode ini lebih unik daripada metode lainnya karena cover object dipilih untuk menyembunyikan pesan.

2.2.1 Tipe Steganografi

Selain berdasarkan format, berkas penampung yang digunakan steganografi dikelompokkan sebagai berikut:


(26)

1. Linguistic Steganography

Teknik ini menyembunyikan pesan dalam cara yang tidak lazim. Terdapat dua bagian dalam teknik ini yaitu Semagrams dan Open Codes.

2. Open Codes

Teknik ini menyembunyikan pesan dalam cara yang tidak umum, tetapi tetap tidak mencurigakan. Contoh penggunaan metode open code adalah:

Masking yaitu kalimat atau kata dalam suatu teks yang dimulai dari surat-surat tertentu yang memiliki arti lain, atau juga suatu kiasan.

Nul Cipher yaitu suatu pesan yang tidak dienkripsi. Pesan yang sebenarnya terletak pada pesan yang telah dimanipulasi. Pesan yang dikirim memiliki karakter yang sangat banyak dan memiliki arti lain.

Cues yaitu suatu kata tertentu yang memiliki pesan

• Musik yaitu dapat membawa arti bagi orang yang mendengarkannya. Musik bisa digunakan untuk menyembunyikan pesan.

Jargon Code yaitu teknik menggunakan bahasa yang hanya bisa dimengerti oleh sebagian orang.

Newspaper Code yaitu metode menyembunyikan pesan dengan membuat lubang-lubang kecil pada koran yang memiliki arti tertentu.

Covered Ciphers yaitu teknik menyembunyikan pesan dalam media pembawa sehingga pesan kemudian bisa diekstrak dari media pembawa tersebut oleh pihak yang mengetahui bagaimana pesan tersembunyi tersebut disembunyikan.

3. Text Semagrams

Teknik ini menyembunyikan informasi menggunakan simbol atau tanda. Contoh penggunaannya adalah dengan mengganti ukuran teks atau mengganti ukuran font.

4. Spacing dan Offsetting

Metode ini mengetik dengan mengatur jarak atau mengetik offsetting merupakan suatu cara menyortir teks untuk menyembunyikan pesan tambahan. Spasi bisa juga digunakan untuk mengirim pesan secara rahasia [3].


(27)

2.3Metode Embedding

Ada beberapa aspek yang dapat mempengaruhi penyembunyian pesan rahasia pada gambar atau dapat disebut embeddingyaitu:

1. Kapasitas

Jumlah informasi yang bisa disembunyikan dalam medium cover. Keamanan yang merupakan ketidakmampuan seseorang untuk mendetesi pesan yang disembunyikan, dan ketahanan yang merupakan banyaknya modifikasi medium stego yang dapat bertahan sebelum musuh merusak pesan rahasia yang tersembunyi. Dalam hal ini, steganografi mengkhususkan untuk keamanan dan kapasitas. Sebab, informasi yang disembunyikan akan lebih mudah dirusak.

2. Keamanan

Keamanan dari sistem steganografi klasik mewujudkan kerahasiaan sistem encoding nya. Supaya steganografi tetap tidak terdeteksi oleh pengamat maka medium cover yang tidak dimodifikasi harus tetap dijaga agar tetap bersifat rahasia. Karena jika dilihat lagi, perbedaan antara medium cover dan medium stego akan lebih mudah terungkap.

3. Ketahanan

Suatu sistem dikatakan sempurna aman jika tidak ada aturan keputusan yang lebih baik yang bisa membuka sistem tersebut daripada cara tebakan secara acak. Komunikasi steganografi merupakan persetujuan pengirim dan penerima pada suatu sistem steganografi dan berbagi kunci rahasia untuk menentukan bagaimana suatu pesan di encode dalam medium cover.

2.4Konsep dan Terminologi Steganografi

Terdapat beberapa istilah yang berkaitan dengan steganografi yaitu:

1. Hiddentext atau embedded message merupakan informasi atau pesan yang disembunyikan.

2. Covertext atau cover-object merupakan media penampung pesan.


(28)

4. Stegokey merupakan kunci untuk menyisipkan pesan atau membaca pesan.

Penyisipan pesan ke dalam media covertext dinamakan embedding, sedangkan pemisahan pesan dari stegotext dinamakan extraction (decoding). Kedua proses ini mungkin memerlukan kunci rahasia yang dinamakan stegokey agar hanya pihak yang berhak saja yang dapat melakukan penyisipan dan ekstraksi pesan. Gambar 2.2 memperlihatkan diagram penyisipan dan ekstraksi pesan.

Covertext Covertext

hiddentext stegotext hiddentext

key key

Gambar 2.2. Proses Steganografi (Sumber : [5])

Pesan rahasia yang disembunyikan ke dalam media penampung pasti mengubah kualitas media tersebut. Kriteria yang harus diperhatikan dalam penyembunyian pesan adalah:

1. Imperceptibility

Keberadaan pesan rahasia dalam media penampung tidak dapat dipersepsi atau dideteksi oleh inderawi.

2. Fidelity

Mutu media penampung tidak banyak berubah akibat penyisipan pesan. Oleh karena itu, orang akan sulit mendeteksi pesan yang disisip dalam media penampung.

3. Recovery

Pesan yang disembunyikan dalam media penampung harus dapat diungkapkan kembali. Karena tujuan steganografi adalah menyembunyikan data.


(29)

2.5Pengertian Citra

Citra merupakan suatu gambaran, kemiripan, atau imitasi dari suatu objek. Citra sebagai keluaran suatu sistem perekaman data yang dapat bersifat optik, analog atau digital.

2.5.1 Citra Digital

Citra digital adalah gambar dua dimensi yang dapat ditampilkan pada layar monitor komputer sebagai himpunan berhingga (diskrit) nilai digital yang disebut piksel. Setiap kotak yang terbentukdisebut piksel dan memiliki koordinat (x,y).Piksel merupakan suatu elemen citra yang memiliki nilai yang menunjukkan intensitas warna. Citra digital dapat didefenisikan sebagai fungsi dua variabel f(x,y), dimana x dan yadalah koordinat spasial dan nilai f(x,y) merupakan intensitas citra suatu titik. Piksel(0,0) terletak pada sudut kiri atas pada citra, indeks x begerak ke kanan dan indeks y bergerak ke bawah. Konvensi ini dipakai merujuk pada cara penulisan larik yang digunakan dalam pemrograman komputer.

Gambar 2.3. Koordinat pada citra

Suatu citra digital diperoleh dari penangkapankekuatan sinar yang dipantulkan oleh objek.Citra digital tersusun atas sejumlah berhingga elemen, masing-masing memiliki lokasi dan nilai intensitas tertentu. Elemen-elemen ini disebut elemengambar, elemen citra, pels, dan juga piksel yang dinyatakan dalam bilangan bulat. Tingkat ketajaman atau resolusi warna pada citra digital tergantung pada jumlah bit yang digunakan oleh komputer untuk merepresentasikan setiap pikseltersebut. Tipe yang sering digunakan untuk merepresentasikan citra digital adalah 8-bit citra (256 colors (0 untuk hitam - 255 untuk putih)), tetapi dengan kemajuanteknologi perangkat


(30)

keras grafik, kemampuan tampilan citra digital di komputer hingga32 bit (232 warna) [9].

2.5.2 Citra Analog

Citra analog merupakan citra yang berhubungan dengan hal yang kontinu dalam satu dimensi, seperti gambar pada monitor televisi, foto sinar X, foto yang tercetak di kertas foto, lukisan, dan lain sebagainya. Citra analog tidak dapat secara langsung diproses dalam komputer. Oleh karena itu, dilakukan proses konversi analog ke digital terlebih dahulu [9].

Citra yang terdiri dari sinyal – sinyal frekuensi elektromagnetis yang belum dibedakan sehingga pada umumnya tidak dapat ditentukan ukurannya. Analog contohnya adalah bunyi diwakili dalam bentuk analog, yaitu suatu getaran gelombang udara yang kontinu dimana kekuatannya diwakili sebagai jarak gelombang. Hampir semua kejadian alam boleh diwakili sebagai perwakilan analog seperti bunyi, cahaya, air, elektrik, angin dan sebagainya [6].

2.6Jenis-Jenis Citra Digital

Ada beberapa jenis citra digital yang sering digunakan yaitu:

1. Citra biner (monokrom)yaitu memiliki warna sebanyak dua, yaitu berwarna hitam (0) atau berwarna putih (1). Oleh karena itu, dibutuhkan 1bit di memori untuk menyimpan kedua warna tersebut.

2. Citra grayscale (citra keabuan) yaitu citra ini terdiri atas warna abu-abu. Setiap piksel citra grayscale merepresentasikan derajat keabuan atau intensitas warna putih. Untuk pengubahan warna image menjadi grayscale dapat dilakukan dengan memberikan bobot untuk masing-masing warna dasar red green blue atau dengan membuat nilai rata-rata dari ketiga warna dasar tersebut. Oleh karena itu, banyaknya warna tergantung pada jumlah bit yang disediakan di memori untuk menampung kebutuhan warna tersebut. Semakin besar jumlah bit warna di dalam memori maka semakin halus gradasi warna yang terbentuk.


(31)

3. Citra warna (true color) dinamakan true color karena memiliki jumlah warna yang cukup besar sehingga bias juga dikatakan hamper mencakup semua warna. Setiap piksel pada citra berwarna memiliki warna yang merupakan kombinasi dari tiga warna dasar RGB yaitu red green dan blue.Setiap komponen warna memiliki intensitas sendiridengan nilai minimum 0 dan nilai maksimum 255 (8-bit). Berarti setiap piksel memiliki kombinasi warna sebanyak 224 = lebih dari 16 juta warna. Jika setiap piksel dari citra grayscale 256 gradasi warna diwakili oleh 1 bit maka untuk 1 piksel citra warna diwakil 3 bit untuk mempresentasikan warna red, green dan blue [9].

2.7Format File Bitmap (File BMP)

Citra bitmap menyimpan data kode citra secara digital dan lengkap (cara penyimpanannya per piksel). Citra bitmap dipresentasikan dalam bentuk matriks atau dipetakan dengan menggunakan bilangan biner atau sistem bilangan lain. Citra ini memiliki kelebihan untuk memanipulsai warna, tetapi untuk mengubah objek lebih sulit [9].

Bitmap merupakan format penyimpanan standar tanpa kompresi yang umum dapat digunakan untuk menyimpan citra biner hingga citra warna. Format ini terdiri dari beberapa jenis yang setiap jenisnya ditentukan dengan jumlah bit yang digunakan untuk menyimpan sebuah nilai pixel [6].

Karena tidak mengalami proses kompresi, file format bitmap menghasilkan kualitas gambar yang baik daripada file citra dengan format lain. Pada file bitmap, nilai intensitas pixel dalam citra dipetakan ke dalam sejumlah bit tertentu yang umumnya panjang setiap pixel adalah 8 bit. Delapan bit ini merepresentasikan nilai intensitas pixel. Dengan demikian ada sebanyak 28 = 256 derajat keabuan, mulai dari 0 sampai 255. Untuk citra true color jumlah bit per pixelsebanyak 24 bit yang terdiri dari nilai Red, Green dan Blue (RGB). Untuk mendapatkan nilai RGB setiap pixel dilakukan dengan membaca nilai tiap pixel [10].


(32)

Tampilan bitmap mampu menunjukkan kehalusan gradasi bayangan dan warna dari sebuah gambar. Oleh karena itu, bitmap merupakan media elektronik yang paling tepat untuk gambar-gambar dengan perpaduan gradasi warna yang rumit, seperti foto dan lukisan digital. Citra bitmap biasanya diperoleh dengan cara Scanner, camera digital, video capture, dan lain-lain [9].

Gambar 2.4. Citra BMP

2.8Metode End-of-File

End-of-File (EOF) adalah salah satu metode atau teknik steganografi untuk menyembunyikan atau menyisipkan pesan pada akhir file secara horizontal. Teknik ini dapat digunakan untuk menyisipkan pesan yang ukurannya sesuai dengan kebutuhan. Ukuran file yang telah disisipkan pesan sama dengan ukuran file sebelum disisipkan pesan ditambah dengan ukuran pesan yang disisipkan ke dalam file tersebut. Dalam teknik ini, pesan disisipkan pada akhir file dengan diberi tanda khusus sebagai pengenal awal dari pesan tersebut dan pengenal akhir dari data tersebut [2].

Agar tidak menimbulkan kecurigaan, tetap harus dipertimbangkan agar pesan yang disisipkan tidak terlalu mengubah ukuran dan bentuk fisik citra pada saat ditampilkan [4].

2.9Metode First-of-File


(33)

yang hampir sama dengan metode End-of-File (EOF). Jika End-of-File (EOF) menyembunyikan atau menyisipkan pesan pada akhir file secara horizontal maka pada First-of-File (FOF) pesan disembunyikan atau disisip pada awal file secara horizontal.

2.10 Metode Kombinasi First-of-File dan End-of-File

Kombinasi First-of-File dan End-of-File(EOFOF) merupakan metode steganografi yang menyisipkan atau menyembunyikan pesannya di awal dan di akhir file citra secara horizontal. Metode ini merupakan metode gabungan dari metod e First-of-File dan End-of-File.

2.11 Mean Squared Error (MSE)

Mean Squared Error (MSE) merupakanalat ukur kuantitatif yang bisa digunakan untuk mengukur kinerja prosedur perbaikan citra. Perbaikan citra pada dasarya merupakan proses yang bersifat subjektif sehingga parameter keberhasilannya bersifat subjektif pula. Untuk itu perlu adanya Alat ukur ini disebut yang dinyatakan dengan persamaan sebagai berikut.

���= 1

��∑ ∑ |(�(�,�)− �(�,�))

2|

�−1

�=0

�−1

�=0 ………..(2.1)

Keterangan :

M : panjang citra N : lebar citra �(�,�) : data citra awal.

�(�,�) : data citra setelah noise dihilangkan.

Semakin kecil nilai MSE, semakin bagus prosedur perbaikan citra yang digunakan. Artinya, kualitas citra setelah mengalami perbaikan noise hampir sama dengan kualitas citra aslinya[9].


(34)

2.12 Penelitian yang Relevan

Berikut penelitian tentang steganografi yang membahas metode End-of-File, First-of-File dan kombinasi keduanya:

1. Berdasarkan penelitian oleh Krisnawati, mengimplementasikan metode Least Significant Bit (LSB) dan End of File (EOF) dengan menyisipkan pesan teks ke dalam citra grayscale. Metode LSB bekerja dengan mengganti bit terakhir kode biner citra dengan kode biner pesan sedangkan metode EOF menambahkan teks sebagai nilai derajat keabuan citra pada akhir citra. Digunakan citra grayscale karena citra ini bentuk digital yang sederhana dibandingkan dengan citra RGB [4].

2. Berdasarkan penelitian oleh Yogie Aditya, Andhika Pratama, Alfian Nurlifa, membandingkan metode Least Significant Bit (LSB) dan End of File (EOF) untuk mengetahui kekurangan dan kelebihan masing-masing metode dan menganalisis metode mana yang lebih efektif untuk penyembunyian pesan serta mengembangkan aplikasi steganografi [1].


(35)

BAB III

ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Sistem

Analisis sistem merupakan fase-fase awal yang perlu dilakukan sebelum merancang suatu sistem. Analisis sistem terdiri dari 3 (tiga) fase yaitu analisis masalah untuk mempelajari dan memahami masalah, analisis persyaratan yang akan memenuhi kebutuhan dan permintaan pengguna (user) dan analisis proses yang akan mendeskripsikan tingkah laku sistem.

3.1.1 Analisis Masalah

Masalah yang akan diselesaikan dalam sistem ini adalah masalah penyisipan pesan rahasia ke dalam citra digital. Ada 3 (tiga) metode yang digunakan untuk proses penyisipan pesan, yaitu First-of-File, End-of-file dan Kombinasi First-of-File dan End-of-file. Dalam sistem ini, pesan akan disisip menggunakan ketiga metode tersebut. Sehingga citra digital yang disisipi pesan akan mengalami perubahan kualitas gambar dan akan dilihat metode mana yang lebih aman untuk menyembunyikan pesan.

3.1.2 Analisis Persyaratan

Dalam suatu sistem analisis persyaratan dibagi menjadi dua bagian yaitu persyaratan fungsional untuk mendeskripsikan aktivitas yang disediakan oleh suatu sistem dan persyaratan non-fungsional merupakan deskripsi mengenai fitur, karakteristik, dan batasan lainnya untuk menentukan apakah sistem memuaskan atau tidak.


(36)

3.1.2.1 Persyaratan Fungsional

Dalam sistem penyisipan pesan pada citra digital dengan menggunakan beberapa metode, yaitu First-of-File, End-of-file dan Kombinasi First-of-File dan End-of-file ini terdapat beberapa hal yang menjadi persyaratan fungsional yang harus dipenuhi, antara lain:

1. Citra digital yang akan menjadi media penyisipan pesan (cover image) yaitu citra digital berformat BMP.

2. Ukuran citra digital maksimal berukuran 300 x 300 pixel.

3. Maksimal ukuran pesan (kb) yang dikirim adalah ((3 x tinggi gambar) – 4). Rumus tersebut diperoleh dari sebuah pixel yg menampung tiga nilai yaitu RGB yang kemudian dikalikan dengan tinggi gambar (cover image) dan setelah itu dikurangkan empat yang merupakan jumlah dari penanda awal ‘zx’ dan penanda akhir ‘zx’.

4. Citra digital (stego image) yang telah disisip pesan akan disimpan dalam format BMP.

3.1.2.2 Persyaratan Nonfungsional

Persyaratan nonfungsional yang harus dipenuhi, antara lain: 1. Performa

Sistem atau perangkat lunak yang dibangun harus dapat menunjukkan hasil dari proses penyisipan pesan pada citra dan proses pengambilan pesanpada citra digital.

2. Mudah digunakan (Userfriendly)

Sistem atau perangkat lunak yang dibangun harus sederhana agar mudah digunakan oleh pengguna (user) dan responsif.

3. Hemat biaya

Sistem atau perangkat lunak yang dibangun tidak memerlukan perangkat tambahan yang dapat mengeluarkan biaya dan bebas digunakan.

4. Dokumentasi

Sistem atau perangkat lunak yang dibangun dapat menyimpan citra digital yang merupakan hasil dari proses penyisipan pesan dengan format file BMP.


(37)

Sistem atau perangkat lunak yang dibangun harus memiliki kualitas yang baik yaitu proses embedding memiliki nilai statistik dari ketiga metode.

6. Kontrol

Perangkat lunak yang dibangun akan menampilkan kotak dialog untuk mengetahui apakah citra digital mengandung pesan rahasia atau tidak.

3.1.3 Analisis Proses

Dalam sistem ini terdapat dua proses utama, yaitu proses embedding dan proses extraction. Proses embedding adalah proses penyisipan pesan rahasia ke dalam suatu media. Proses extraction adalah proses pengambilan pesan rahasia dari suatu media. Pada sistem ini, ada tiga metode steganografi yang digunakan untuk proses penyisipan pesan, yaitu metode End-of-File untuk penyisipan pesan pada akhir file citra secara vertikal, First-of-File untuk penyisipan pesan pada awal file citra secara vertikal dan kombinasi First-of-File dan End-of-File untuk penyisipan pesan pada awal dan akhir file citra secara vertikal.

3.1.3.1 Analisis Proses Embedding pada metode End-of-File (EOF)

Proses embedding (penyisipan pesan) menggunakan metode End-of-File adalah sebagai berikut:

1. Inputkan citra yang akan menjadi media penyisipan pesan (cover image). 2. Inputkan pesan yang akan disisipkan.

3. Baca nilai setiap pixel citra.

4. Tambahkan pesan sebagai nilai akhir vertikal pixel citra dengan diberi karakter penanda sebagai penanda awal dan penanda akhir pesan.

5. Petakan menjadi citra baru.

Berikut ini merupakan contoh penyisipan pesan menggunakan metode End-of-File: Terdapat suatu citra RGB 7x7 yang memiliki nilai setiap pixel seperti pada Tabel 3.1.

Tabel 3.1 Matriks Pixel Citra RGB R=77

G=82 B=43

R=65 G=65 B=89

R=167 G=168 B=70

R=171 G=147 B=153

R=160 G=130 B=141

R=60 G=30 B=41

R=60 G=70 B=141


(38)

R=92 G=55 B=35 R=76 G=76 B=90 R=64 G=57 B=158 R=181 G=70 B=179 R=204 G=203 B=199 R=24 G=93 B=109 R=204 G=95 B=99 R=76 G=90 B=82 R=69 G=73 B=83 R=163 G=63 B=171 R=186 G=190 B=189 R=177 G=184 B=162 R=17 G=101 B=56 R=77 G=84 B=162 R=95 G=102 B=112 R=86 G=98 B=114 R=157 G=172 B=182 R=167 G=182 B=184 R=174 G=186 B=187 R=74 G=86 B=18 R=174 G=186 B=187 R=74 G=84 B=99 R=121 G=14 B=152 R=173 G=87 B=194 R=184 G=96 B=21 R=202 G=14 B=71 R=22 G=46 B=73 R=100 G=214 B=227 R=74 G=84 B=99 R=21 G=134 B=100 R=173 G=96 B=94 R=184 G=196 B=107 R=22 G=46 B=79 R=104 G=77 B=99 R=202 G=89 B=99 R=74 G=94 B=93 R=121 G=134 B=92 R=173 G=90 B=194 R=84 G=96 B=79 R=92 G=100 B=81 R=52 G=76 B=91 R=202 G=214 B=227

Citra RGB tersebut akan disisipkan pesan “saya arfiyah” yang memiliki nilai desimal dalam kode ASCII yaitu “115 97 121 97 32 97 114 102 105 121 97 104”. Pesan akan ditambahkan sebagai nilai akhir secara vertikal pada pixel citra RGB. Pada awal dan akhir pesan diberi karakter penanda “zx” yang memiliki nilai desimal dalam kode ASCII yaitu “122 120”. Maka didapatlah matriks pixel seperti pada Tabel 3.2.

Tabel 3.2 Matriks Pixel Citra RGB yang Telah Disisipkan Pesan dengan metode End-of-File (EOF) R=77 G=82 B=43 R=65 G=65 B=89 R=167 G=168 B=70 R=171 G=147 B=153 R=160 G=130 B=141 R=60 G=30 B=41 R=60 G=70 B=141 R=122 G=120 B=115 R=92 R=76 R=64 R=181 R=204 R=24 R=204 R=97


(39)

G=55 B=35 G=76 B=90 G=57 B=158 G=70 B=179 G=203 B=199 G=93 B=109 G=95 B=99 G=121 B=97 R=76 G=90 B=82 R=69 G=73 B=83 R=163 G=63 B=171 R=186 G=190 B=189 R=177 G=184 B=162 R=17 G=101 B=56 R=77 G=84 B=162 R=32 G=97 B=114 R=95 G=102 B=112 R=86 G=98 B=114 R=157 G=172 B=182 R=167 G=182 B=184 R=174 G=186 B=187 R=74 G=86 B=18 R=174 G=186 B=187 R=102 G=105 B=121 R=74 G=84 B=99 R=121 G=14 B=152 R=173 G=87 B=194 R=184 G=96 B=21 R=202 G=14 B=71 R=22 G=46 B=73 R=100 G=214 B=227 R=97 G=104 B=122 R=74 G=84 B=99 R=21 G=134 B=100 R=173 G=96 B=94 R=184 G=196 B=107 R=22 G=46 B=79 R=104 G=77 B=99 R=202 G=89 B=99 R=120 G=0 B=0 R=74 G=94 B=93 R=121 G=134 B=92 R=173 G=90 B=194 R=84 G=96 B=79 R=92 G=100 B=81 R=52 G=76 B=91 R=202 G=214 B=227 R=0 G=0 B=0

Matriks tersebut yang akan dipetakan kembali dalam bentuk citra RGB yang disebut stego image.

3.1.3.2 Analisis Proses Embedding pada metode First-of-File (FOF)

Proses embedding (penyisipan pesan) menggunakan metode First-of-File adalah sebagai berikut:

1. Inputkan citra yang akan menjadi media penyisipan pesan (cover image). 2. Inputkan pesan yang akan disisipkan.

3. Baca nilai setiap pixel citra.

4. Tambahkan pesan sebagai nilai awal vertikal pixel citra dengan diberi karakter penanda sebagai penanda awal dan penanda akhir pesan.

5. Petakan menjadi citra baru.


(40)

Terdapat suatu citra RGB 7x7 yang memiliki nilai setiap pixel seperti pada Tabel 3.3.

Tabel 3.3 Matriks Pixel Citra RGB

R=77 G=82 B=43 R=65 G=65 B=89 R=167 G=168 B=70 R=171 G=147 B=153 R=160 G=130 B=141 R=60 G=30 B=41 R=60 G=70 B=141 R=92 G=55 B=35 R=76 G=76 B=90 R=64 G=57 B=158 R=181 G=70 B=179 R=204 G=203 B=199 R=24 G=93 B=109 R=204 G=95 B=99 R=76 G=90 B=82 R=69 G=73 B=83 R=163 G=63 B=171 R=186 G=190 B=189 R=177 G=184 B=162 R=17 G=101 B=56 R=77 G=84 B=162 R=95 G=102 B=112 R=86 G=98 B=114 R=157 G=172 B=182 R=167 G=182 B=184 R=174 G=186 B=187 R=74 G=86 B=18 R=174 G=186 B=187 R=74 G=84 B=99 R=121 G=14 B=152 R=173 G=87 B=194 R=184 G=96 B=21 R=202 G=14 B=71 R=22 G=46 B=73 R=100 G=214 B=227 R=74 G=84 B=99 R=21 G=134 B=100 R=173 G=96 B=94 R=184 G=196 B=107 R=22 G=46 B=79 R=104 G=77 B=99 R=202 G=89 B=99 R=74 G=94 B=93 R=121 G=134 B=92 R=173 G=90 B=194 R=84 G=96 B=79 R=92 G=100 B=81 R=52 G=76 B=91 R=202 G=214 B=227

Citra RGB tersebut akan disisipkan pesan “saya arfiyah” yang memiliki nilai desimal dalam kode ASCII yaitu “115 97 121 97 32 97 114 102 105 121 97 104”. Pesan akan ditambahkan sebagai nilai awal secara vertikal pada pixel citra RGB. Pada awal dan akhir pesan diberi karakter penanda “zx” yang memiliki nilai desimal dalam kode ASCII yaitu “122 120”. Maka didapatlah matriks pixel seperti pada Tabel 3.4.

Tabel 3.4 MatriksPixel Citra RGB yang Telah Disisipkan Pesan dengan metode First-of-File (FOF)


(41)

G=120 B=115 G=82 B=43 G=65 B=89 G=168 B=70 G=147 B=153 G=130 B=141 G=30 B=41 G=70 B=141 R=97 G=121 B=97 R=92 G=55 B=35 R=76 G=76 B=90 R=64 G=57 B=158 R=181 G=70 B=179 R=204 G=203 B=199 R=24 G=93 B=109 R=204 G=95 B=99 R=32 G=97 B=114 R=76 G=90 B=82 R=69 G=73 B=83 R=163 G=63 B=171 R=186 G=190 B=189 R=177 G=184 B=162 R=17 G=101 B=56 R=77 G=84 B=162 R=102 G=105 B=121 R=95 G=102 B=112 R=86 G=98 B=114 R=157 G=172 B=182 R=167 G=182 B=184 R=174 G=186 B=187 R=74 G=86 B=18 R=174 G=186 B=187 R=97 G=104 B=122 R=74 G=84 B=99 R=121 G=14 B=152 R=173 G=87 B=194 R=184 G=96 B=21 R=202 G=14 B=71 R=22 G=46 B=73 R=100 G=214 B=227 R=120 G=0 B=0 R=74 G=84 B=99 R=21 G=134 B=100 R=173 G=96 B=94 R=184 G=196 B=107 R=22 G=46 B=79 R=104 G=77 B=99 R=202 G=89 B=99 R=0 G=0 B=0 R=74 G=94 B=93 R=121 G=134 B=92 R=173 G=90 B=194 R=84 G=96 B=79 R=92 G=100 B=81 R=52 G=76 B=91 R=202 G=214 B=227

Matriks tersebut yang akan dipetakan kembali dalam bentuk citra RGB yang disebut stego image.

3.1.3.3 Analisis Proses Embedding Pada Metode Kombinasi First-of-File dan End-of-File (EOFOF)

Proses embedding (penyisipan pesan) menggunakan metode First-of-File adalah sebagai berikut:

1. Inputkan citra yang akan menjadi media penyisipan pesan (cover image). 2. Inputkan pesan yang akan disisipkan.


(42)

4. Tambahkan pesan sebagai nilai awal dan akhir vertikal pixel citra dengan diberi karakter penanda sebagai penanda awal dan penanda akhir pesan.

5. Petakan menjadi citra baru.

Berikut ini merupakan contoh penyisipan pesan menggunakan metode kombinasi First-of-File dan End-of-File:

Terdapat suatu citra RGB 7x7 yang memiliki nilai setiap pixel seperti pada Tabel 3.5.

Tabel 3.5 Matriks Pixel Citra RGB R=77 G=82 B=43 R=65 G=65 B=89 R=167 G=168 B=70 R=171 G=147 B=153 R=160 G=130 B=141 R=60 G=30 B=41 R=60 G=70 B=141 R=92 G=55 B=35 R=76 G=76 B=90 R=64 G=57 B=158 R=181 G=70 B=179 R=204 G=203 B=199 R=24 G=93 B=109 R=204 G=95 B=99 R=76 G=90 B=82 R=69 G=73 B=83 R=163 G=63 B=171 R=186 G=190 B=189 R=177 G=184 B=162 R=17 G=101 B=56 R=77 G=84 B=162 R=95 G=102 B=112 R=86 G=98 B=114 R=157 G=172 B=182 R=167 G=182 B=184 R=174 G=186 B=187 R=74 G=86 B=18 R=174 G=186 B=187 R=74 G=84 B=99 R=121 G=14 B=152 R=173 G=87 B=194 R=184 G=96 B=21 R=202 G=14 B=71 R=22 G=46 B=73 R=100 G=214 B=227 R=74 G=84 B=99 R=21 G=134 B=100 R=173 G=96 B=94 R=184 G=196 B=107 R=22 G=46 B=79 R=104 G=77 B=99 R=202 G=89 B=99 R=74 G=94 B=93 R=121 G=134 B=92 R=173 G=90 B=194 R=84 G=96 B=79 R=92 G=100 B=81 R=52 G=76 B=91 R=202 G=214 B=227

Citra RGB tersebut akan disisipkan pesan “saya arfiyah” yang memiliki nilai desimal dalam kode ASCII yaitu “115 97 121 97 32 97 114 102 105 121 97 104”. Pesan akan ditambahkan sebagai nilai awaldan akhir secara vertikal pada pixel citra RGB. Pada


(43)

awal dan akhir pesan diberi karakter penanda “zx” yang memiliki nilai desimal dalam kode ASCII yaitu “122 120”. Maka didapatlah matriks pixel seperti pada Tabel 3.6.

Tabel 3.6 MatriksPixel Citra RGB yang Telah Disisipkan Pesan dengan Metode Kombinasi First-of-File dan End-of-File (EOFOF)

R=122 G=120 B=115 R=77 G=82 B=43 R=65 G=65 B=89 R=167 G=168 B=70 R=171 G=147 B=153 R=160 G=130 B=141 R=60 G=30 B=41 R=60 G=70 B=141 R=122 G=120 B=97 R=121 G=32 B=114 R=92 G=55 B=35 R=76 G=76 B=90 R=64 G=57 B=158 R=181 G=70 B=179 R=204 G=203 B=199 R=24 G=93 B=109 R=204 G=95 B=99 R=97 G=97 B=102 R=105 G=97 B=122 R=76 G=90 B=82 R=69 G=73 B=83 R=163 G=63 B=171 R=186 G=190 B=189 R=177 G=184 B=162 R=17 G=101 B=56 R=77 G=84 B=162 R=121 G=104 B=120 R=0 G=0 B=0 R=95 G=102 B=112 R=86 G=98 B=114 R=157 G=172 B=182 R=167 G=182 B=184 R=174 G=186 B=187 R=74 G=86 B=18 R=174 G=186 B=187 R=0 G=0 B=0 R=0 G=0 B=0 R=74 G=84 B=99 R=121 G=14 B=152 R=173 G=87 B=194 R=184 G=96 B=21 R=202 G=14 B=71 R=22 G=46 B=73 R=100 G=214 B=227 R=0 G=0 B=0 R=0 G=0 B=0 R=74 G=84 B=99 R=21 G=134 B=100 R=173 G=96 B=94 R=184 G=196 B=107 R=22 G=46 B=79 R=104 G=77 B=99 R=202 G=89 B=99 R=0 G=0 B=0 R=0 G=0 B=0 R=74 G=94 B=93 R=121 G=134 B=92 R=173 G=90 B=194 R=84 G=96 B=79 R=92 G=100 B=81 R=52 G=76 B=91 R=202 G=214 B=227 R=0 G=0 B=0

Matriks tersebut yang akan dipetakan kembali dalam bentuk citra RGB yang disebut stego image.

3.2 Perancangan Sistem


(44)

Terdapat dua proses utama dalam sistem ini, yaitu proses penyisipan pesan (embedding) dan proses ekstraksi pesan (extraction). Keseluruhan proses tersebut dapat dilihat pada flowchart gambaran umum sistem pada Gambar 3.1.

Mulai

Exit? Embed Extract? Help?

Halaman Embed

Pilih cover image

Masukkan pesan

Embedding

Selesai

Halaman Extract

Pilih stego image

Extraction

Pesan

Halaman Help Ya

Ya Ya

Ya

Tidak Tidak Tidak

Input cover image

Tidak

Ya Stego

Image

MSE

Hitung nilai MSE

Tampilkan nilai MSE

Gambar 3.1Flowchart Gambaran Umum Sistem 3.2.1.1 Flowchart Proses Embedding pada Metode End-of-File (EOF)


(45)

Flowchart proses penyisipan pesan ke dalam media file citra dengan menggunakan metode End-of-File dapat dilihat pada Gambar 3.2.

Mulai

Pilih File citra yang akan menjadi media

penyisipan pesan

Masukkan Pesan yang akan disisip

Baca nilai setiap pxel ke citra

ProsesEnd-of-File (EOF)

Petakan sebagai File citra baru

Stego image

Simpan Stego image

Stego image.bmp

Selesai

Gambar 3.2Flowchart Proses Embedding pada Metode End-of-File (EOF)


(46)

Flowchart proses pengambilan pesan dari dalam media file citra dengan menggunakan metode End-of-File dapat dilihat pada Gambar 3.3.

Mulai

Masukkan stego image

Baca nilai pixel stego image yang terdapat pada baris terakhir

vertikal matriks pixel citra

Ambil pesan yang terdapat pada stego image yaitu nilai pixel awal yang terdapat pada baris terakhir vertikal matriks pixel citra sampai nilai desimal karakter penanda

Pesan

Selesai

Gambar 3.3Flowchart Proses Extractionpada Metode End-of-File (EOF)

3.2.1.3Flowchart Proses Embedding pada Metode First-of-File (FOF)

Flowchart proses penyisipan pesan ke dalam media file citra dengan menggunakan metode First-of-File dapat dilihat pada Gambar 3.4.


(47)

Mulai

Pilih File citra yang akan menjadi media

penyisipan pesan

Masukkan pesan yang akan disisip

Baca nilai setiap pxel ke citra

Proses First-of-File (FOF)

Petakan sebagai File citra baru

Stego image

Simpan Stego image

Stego image.bmp

Selesai

Gambar 3.4Flowchart ProsesEmbeddingpada Metode First-of-File (FOF)

3.2.1.4Flowchart Proses Extraction pada Metode First-of-File (FOF)

Flowchart proses pengambilan pesan dari dalam media file citra dengan menggunakan metode First-of-File dapat dilihat pada Gambar 3.5.


(48)

Mulai

Masukkan stego image

Baca nilai pixel stego image yang terdapat pada baris pertama

vertikal matriks pixel citra

Ambil pesan yang terdapat pada stego image yaitu nilai pixel awal yang terdapat pada baris pertama vertikal matriks pixel citra sampai nilai desimal karakter penanda

Pesan

Selesai

Gambar 3.5Flowchart Proses Extractionpada Metode First-of-File (FOF)

3.2.1.5Flowchart Proses Embeddingpada Metode Kombinasi First-of-File dan End-of-File (EOFOF)

Flowchart proses penyisipan pesan ke dalam media file citra dengan menggunakan metode kombinasi End-of-File dan First-of-File dapat dilihat pada Gambar 3.6.


(49)

Mulai

Pilih File citra yang akan menjadi media

penyisipan pesan

Masukkan pesan yang akan disisip

Baca nilai setiap pxel ke citra

Proses kombinasi First-of-File dan End-of-File (EOFOF)

Petakan sebagai File citra baru

Stego image

Simpan Stego image

Stego image.bmp

Selesai

Gambar 3.6Flowchart Proses Embeddingpada Metode Kombinasi End-of-File danFirst-of-File(EOFOF)

3.2.1.6Flowchart Proses Extractionpada Metode Kombinasi First-of-File dan End-of-File (EOFOF)

Flowchart proses pengambilan pesan dari dalam media file citra dengan menggunakan metode kombinasi End-of-File dan First-of-File dapat dilihat pada Gambar 3.7.


(50)

Mulai

Masukkan stego image

Baca nilai pixel stego image yang terdapat pada baris pertama dan terakhir vertikal matriks pixel citra

Ambil pesan yang terdapat pada stego image yaitu nilai pixel awal yang terdapat

pada baris pertama dan baris terakhir vertikal matriks pixel citra sampai nilai

desimal karakter penanda

Pesan

Selesai

Gambar 3.7Flowchart Proses Extractionpada Metode Kombinasi End-of-File danFirst-of-File(EOFOF)

3.2.2 Use Case Diagram

Use case diagram merupakan suatu diagram untuk memodelkan interaksi atau dialog antara sistem dengan user (pengguna) termasuk pertukaran pesan atau tindakan yang dilakukan oleh sistem. Use case diagram diprakarsai oleh aktor yang dapat berupa manusia. Perangkat keras, atau sistem lain yang berinteraksi dengan sistem . Use case diagram sistem ini dapat dilihat pada Gambar 3.8.


(51)

Penyisipan Input Cover

Image

Input Stego Image

Ekstraksi

Menghitung MSE Embedding FOF, EOF,

Kombinasi FOF-EOF

Extraction FOF, EOF, Kombinasi FOF-EOF

User

Input Pesan System

<<uses>>

<<uses>> <<uses>>

<<extends>> <<extends>>

Gambar 3.8Use Case Diagram Sistem

3.2.2.1 Use Case Embedding FOF, EOF, Kombinasi FOF-EOF

Spesifikasi use case embedding FOF, EOF, Kombinasi FOF-EOFdapat dilihat pada Tabel 3.7.


(52)

Tabel 3.7 Spesifikasi Use Case Embedding FOF, EOF, Kombinasi FOF-EOF

Name Embedding FOF, EOF, Kombinasi FOF-EOF

Actors Pengguna

Trigger Pengguna memilih submenu Embed.

Preconditions Pengguna menggunakan aplikasi sistem keamanan data (Steganografi).

Post Conditions Pengguna dapat melihat hasil penyisipan pesan ke dalam gambar.

Success Scenario 1. Pengguna mengeksekusi menu File.

2. Pengguna memilih submenu Embed.

3. Sistem menampilkan halaman Embed.

4. Pengguna mengeksekusi tombol Open Image kemudian memilih gambar yang akan dijadikan cover image.

5. Pengguna menginputkan pesan yang akan disisip secara manual atau dapat juga mengeksekusi tombol Open *txt

kemudian memilih pesan yang akan disisipkan ke dalam

cover imagekemudian mengeksekusi tombol Embed.

6. Sistem melakukan proses penyisipan pesan dan menampilkan hasilnya.

7. Pengguna dapat melihat hasil penyisipan pesan ke dalam gambar.

Alternative Flows -

3.2.2.2 Use Case InputCover Image

Spesifikasi use case input cover image dapat dilihat pada Tabel 3.8.

Tabel 3.8 Spesifikasi Use caseInput cover image


(53)

Trigger Pengguna memilih submenu Embed. Preconditions Pengguna mengakses submenu Embed.

Post Conditions Sistem menampilkan gambar yang telah dipilih menjadi cover image.

Success Scenario 1. Pengguna mengeksekusi tombol Open image.

2. Sistem menampilkan pop-up window Open BitmapFile untuk menampilkan lokasi penyimpanan gambar.

3. Pengguna memilih gambar yang akan dijadikan cover image.

4. Sistem menampilkan gambar yang telah dipilih menjadi

cover image oleh pengguna.

5. Pengguna dapat melihat gambar yang telah dipilih menjadi

cover image. Alternative Flows -

3.2.2.3Use case input pesan

Spesifikasi use case input pesandapat dilihat pada Tabel 3.9.

Tabel 3.9 Spesifikasi Use case input Pesan

Name Input pesan

Actors Pengguna

Trigger Pengguna telah memilih gambar yang menjadi cover image. Preconditions Pengguna mengakses submenu Embed.

Post Conditions Pengguna dapat melihat pesan yang akan disisip.

Success Scenario Pengguna menginputkan pesan yang akan disisip ke dalam text box message.

Alternative Flows -

3.2.2.4Use Case Pilih pesan

Spesifikasi use case pilih pesandapat dilihat pada Tabel 3.10.

Tabel 3.10 Spesifikasi Use casePilih pesan


(54)

Actors Pengguna

Trigger Pengguna telah memilih gambar yang menjadi cover image. Preconditions Pengguna mengakses submenu Embed.

Post Conditions Pengguna dapat melihat pesan yang akan disisip.

Success Scenario 1. Pengguna mengeksekusi tombol Open *txt.

2. Sistem menampilkan pop-up window Open Text File untuk menampilkan lokasi penyimpanan pesan.

3. Pengguna memilih pesan yang akan disisip ke dalamcover image.

4. Sistem menampilkan pesan yang telah dipilih ke dalam text box message.

Alternative Flows -

3.2.2.5Use Case Penyisipan

Spesifikasi use case penyisipandapat dilihat pada Tabel 3.11.

Tabel 3.11 Spesifikasi Use case Penyisipan

Name Penyisipan

Actors Pengguna

Trigger Pengguna telah menginputkan pesan yang akan disisip.

Preconditions Pengguna mengakses submenu Embed.

Post Conditions Sistem menampilkan hasil penyisipan pesan ke dalam gambar.

Success Scenario 1. Pengguna telah memilih gambar yang akan dijadikan cover image.

2. Pengguna menginputkan pesan yang akan disisip kemudian mengeksekusi tombol Embed.

3. Sistem melakukan proses penyisipan pesan ke dalam cover image dan menampilkan hasilnya.

4. Pengguna dapat melihat hasil penyisipn pesan ke dalamcover imageyang berupa stego image.


(55)

Spesifikasi use case extraction FOF, EOF, Kombinasi FOF-EOF dapat dilihat pada Tabel 3.12.

Tabel 3.12 Spesifikasi Use case Extraction FOF, EOF, Kombinasi FOF-EOF Name Extraction FOF, EOF, Kombinasi FOF-EOF

Actors Pengguna

Trigger Pengguna telah memilih submenu Extract.

Preconditions Pengguna menggunakan aplikasi sistem keamanan data (Steganografi).

Post Conditions Pengguna dapat melihat hasil ekstraksi yang berupa pesan.

Success Scenario 1. Pengguna mengeksekusi menu File.

2. Pengguna memilih submenu Extract.

3. Sistem menampilkan halaman Extract.

4. Pengguna mengeksekusi tombol Open untuk memilih stego image.

5. Sistem menampilkan stego image yang dipilih oleh pengguna.

6. Pengguna mengeksekusi tombol Extract.

7. Sistem melakukan proses ekstraksi dan menampilkan hasilnya.

8. Pengguna dapat melihat hasil ekstraksi berupa pesan.

Alternative Flows -

3.2.2.7Use Case Input Stego Image

Spesifikasi use case input stego image dapat dilihat pada Tabel 3.13.

Tabel 3.13 Spesifikasi Use case Input Stego Image

Name Inputstego image

Actors Pengguna

Trigger Pengguna memilih submenu Extract. Preconditions Pengguna mengakses submenu Extract.

Post Conditions Sistem menampilkan stego image yang dipilih oleh pengguna. Success Scenario 1. Pengguna mengeksekusi tombol Open untuk memilih stego


(56)

image.

2. Sistem menampilkan pop-up window Open Stego Imageuntuk menampilkan lokasi penyimpanan gambar.

3. Pengguna memilih stego image yang akan diekstraksi.

4. Sistem menampilkan stego image yang telah dipiliholeh pengguna.

5. Pengguna dapat melihat stego image yang telah dipilih.

Alternative Flows -

3.2.2.8Use Case Ekstraksi

Spesifikasi use case ekstraksidapat dilihat pada Tabel 3.14.

Tabel 3.14 Spesifikasi Use case Ekstraksi

Name Ekstraksi

Actors Pengguna

Trigger Pengguna telah memilih stego image yang akan diekstraksi.

Preconditions Pengguna mengeksekusi submenu Extract.

Post Conditions Sistem menampilkan hasil ekstraksi yang berupa pesan.

Success Scenario 1. Pengguna telah memilih stego image kemudian mengeksekusi tombol Extract.

2. Sistem melakukan proses ekstraksi dan menampilkan hasilnya yang berupa pesan.

3. Pengguna dapat melihat hasil ekstraksi yang berupa pesan. Alternative Flows -

3.2.2.9Use Case Menghitung MSE

Spesifikasi use case menghitung msedapat dilihat pada Tabel 3.15.

Tabel 3.15 Spesifikasi Use case Menghitung MSE

Name Menghitung MSE


(57)

MSE-nya.

Preconditions Pengguna mengeksekusi tombol Statistic. Post Conditions Sistem menampilkan nilai MSE.

Success Scenario 1. Pengguna mengeksekusi tombol Open.

2. Sistem menampilkan pop-up window Open BitmapFile

untuk menampilkan lokasi penyimpanan gambar.

3. Pengguna telah memilih gambar asli (cover image).

4. Pengguna mengeksekusi tombol Open selanjutnya. 5. Sistem menampilkan pop-up window Open Stego

Imageuntuk menampilkan lokasi penyimpanan gambar.

6. Pengguna telah memilih stego image yang akan dihitung nilai MSE-nya kemudian mengeksekusi tombol MSE. 7. Sistem melakukan proses perhitungan nilai MSE dan

menampilkan hasilnya.

8. Pengguna dapat melihat hasil perhitungan nilai MSE.

Alternative Flows -

3.2.3 Activity Diagram

Activity diagram adalah diagram aktivitas yang mendeskripsikan proses kerja dalam sebuah sistem yang sedang berjalan. Dalam diagram aktivitas ini maka akan dijelaskan proses kerja dari sistem embedding dan extraction yang dilakukan oleh pengguna (user)embedding dan extraction pada file citra.


(58)

3.2.3.1 Activity Diagram Proses Embedding

Input cover image (*.bmp)

Embedding FOF, EOF, Kombinasi FOF-EOF

User System

Tampikan cover image yang dipilih

Input pesan rahasia (*.txt)

Menampilkan Stego Image (*.bmp)


(59)

3.2.3.2 Activity Diagram Proses Extraction

Input stego image (*.bmp)

Extraction FOF, EOF, Kombinasi FOF-EOF

User System

Tampikan stego image yang dipilih

Menampilkan Pesan rahasia

Menghitung nilai MSE

Input cover image (*.bmp)

Input stego image

(*.bmp) Hitung nilai MSE

Menampilkan nilai MSE

Ya Tidak

Gambar 3.10Activity DiagramProses Extraction


(60)

Pseudocode adalah deskripsi atau penjelasan dari algoritma pemrograman komputer yang menggunakan struktur sederhana dari beberapa bahasa pemrograman. Pseudocode biasanya dapat ditulis berupa variable dan fungsi. Tujuan utama digunakan pseudocode adalah untuk memudahkan dalam memahami prinsip-prinsip dari suatu algoritma.

3.2.4.1Pseudocode Proses Embedding

Langkah-langkah proses embedding atau penyisipan pesan pada media file citra menggunakan 3 (tiga) metode steganografi End-of-File, First-of-File dan kombinasi First-of-File dan End-of-File. Untuk proses embedding dengan metode End-of-File dapat dilihat dilihat pada pseudocode berikut:

penanda1  'zx’

m  [penanda1 m penanda1] [d e]  size(m)

cover  handles.image cover  double(cover) [b k c]  size(cover) x  k

status  1 status2  false while (~status2) x  x + 1

for i = 1:1:k

cover(i,x,1)  m(status) status  status + 1 if (status > e)

status2  true break

endif

cover(i,x,2)  m(status) status  status + 1 if (status > e)

status2  true break


(61)

cover(i,x,3)  m(status) status  status + 1 if (status > e)

status2  true break

endif endfor

if status2 == true break

end

end

stego1  uint8(cover)

Pada pseudocode diatas diinisialisasikan terlebih dahulu penanda awal dan penanda akhir yang digunakan yaitu ‘zx’ kemudian menginisialisasikan baris dan kolom pada pixel citra. Proses penyisipan pesan rahasia ke dalam citra digital akan dilakukan secara vertikal pada nilai akhir matriks citra. Proses penyisipan secara vertikal yang dimaksud adalah terjadinya penambahan kolom pada akhir matriks citra dan jika tidak terjadi penambahan baris maka akan diberi nilai nol secara otomatis. Pesan rahasia yang disisipkan akan dipetakan menjadi citra baru rgb.

Proses embedding pada metode First-of-File juga dapat dilihat pada pseudocode berikut ini:

fof(:,:,:)  0 for i = 1:1:b

fof(i,1,1)  0 endfor

x  0 status  1 status2  false while (true)

x  x + 1 for i = 1:1:k

fof(i,x,1)  m(status) status  status + 1 if (status > e) status2  true break


(62)

endif

fof(i,x,2)  m(status) status  status + 1 if (status > e) status2  true break

endif

fof(i,x,3)  m(status) status  status + 1 if (status > e) status2 <- true break

endif endfor

if status2 == true break

endif endfor

fof  [fof awal] stego2  uint8(fof)

Pada pseudocode diatas memiliki proses yang sama dalam penyisipan pesan rahasia dengan metode End-of-File. Akan tetapi pada metode First-of-File proses penyisipan pesan rahasia ke dalam citra digital akan dilakukan secara vertikal pada nilai awal matriks citra. Proses penyisipan secara vertikal yang dimaksud adalah terjadinya penambahan kolom pada awal matriks citra dan jika tidak terjadi penambahan baris maka akan diberi nilai nol secara otomatis. Pesan rahasia yang disisipkan akan dipetakan menjadi citra baru rgb.

Proses embedding pada metode kombinasi First-of-File dan End-of-File dapat dilihat pada pseudocode berikut ini:

penanda1  'zzxx' m  [penanda1 m 'zx'] [d e]  size(m)

x  0 status  1 status2  false


(1)

if ~isequal(fileName,0)

handles.image=imread(fullfile(pathName, fileName)); guidata(hObject,handles);

axes(handles.Stego3); imshow(handles.image); else

return; end;

function btnOpen4_Callback(hObject, eventdata, handles)

[fileName, pathName] = uigetfile({'*.bmp','File bmp (*.bmp)'},'Open Image');

if ~isequal(fileName,0)

handles.image=imread(fullfile(pathName, fileName)); guidata(hObject,handles);

axes(handles.Stego4); imshow(handles.image); else

return; end;

function Mse3_Callback(hObject, eventdata, handles) function Mse3_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function Mse2_Callback(hObject, eventdata, handles) function Mse2_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function Mse1_Callback(hObject, eventdata, handles) function Mse1_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

% ---

function Menu_Callback(hObject, eventdata, handles) Menu

% ---

function File_Callback(hObject, eventdata, handles)

% ---

function Embedd_Callback(hObject, eventdata, handles) EOFOF


(2)

% ---

function Extract_Callback(hObject, eventdata, handles) Extract1

% ---

function MSE_Callback(hObject, eventdata, handles) Statistic

% ---

function Help_Callback(hObject, eventdata, handles) Help

% ---

function Exit_Callback(hObject, eventdata, handles) choice= questdlg ('Do you want to exit?','confirm',... 'Yes','No','No');

switch choice case 'Yes' close all; end

function btnMse_Callback(hObject, eventdata, handles) Stego1 = getimage(handles.Stego1);

StegoA = double(Stego1); [b1 k1 c]= size (StegoA);

Stego2 = getimage(handles.Stego2); StegoB = double(Stego2);

[b2 k2 c]= size (StegoB);

Stego3 = getimage(handles.Stego3); StegoC = double(Stego3);

[b3 k3 c]= size (StegoC);

Stego4 = getimage(handles.Stego4); StegoD = double(Stego4);

[b4 k4 c]= size (StegoD); C1= StegoA;

C1(1,1,1)

if(b1==b2 && k1==k2) C2= StegoB;

dC= double(C1) - double(C2); mse= (dC(:).^2);

p= length(mse);

mse1= (sum(mse(1:p))/p);

set(handles.Mse1,'String',mse1); else

msgbox({'Image 1 ~= Image 2'}','Message','modal'); end

if(b1==b3 && k1==k3) C3= StegoC;

dC= double(C1) - double(C3); mse= (dC(:).^2);


(3)

p= length(mse);

mse2= (sum(mse(1:p))/p);

set(handles.Mse2,'String',mse2); else

msgbox({'Image 1 ~= Image 3'}','Message','modal'); end

if(b1==b4 && k1==k4) C4= StegoD;

dC= double(C1) - double(C4); mse= (dC(:).^2);

p= length(mse);

mse3= (sum(mse(1:p))/p);

set(handles.Mse3,'String',mse3); else

msgbox({'Image 1 ~= Image 4'}','Message','modal'); end

% ---

function Close_Callback(hObject, eventdata, handles) close

% --- Executes on button press in reset.

function reset_Callback(hObject, eventdata, handles) set(handles.Mse1, 'string', '');

set(handles.Mse2, 'string', ''); set(handles.Mse3, 'string', '');

Kode Program Figure Help:

function varargout = Help(varargin) gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Help_OpeningFcn, ... 'gui_OutputFcn', @Help_OutputFcn, ... 'gui_LayoutFcn', [] , ...

'gui_Callback', []); if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1}); end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else

gui_mainfcn(gui_State, varargin{:}); end

function Help_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject;

guidata(hObject, handles);

function varargout = Help_OutputFcn(hObject, eventdata, handles) varargout{1} = handles.output;


(4)

function edit1_Callback(hObject, eventdata, handles) function edit1_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function edit2_Callback(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function edit3_Callback(hObject, eventdata, handles) function edit3_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function edit4_Callback(hObject, eventdata, handles) function edit4_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

%

-function home_Callback(hObject, eventdata, handles) Menu

%

-function file_Callback(hObject, eventdata, handles)

%

-function Embedd_Callback(hObject, eventdata, handles) EOFOF

%

-function extract_Callback(hObject, eventdata, handles) Extract1

%

-function close_Callback(hObject, eventdata, handles) close

%


(5)

-function help_Callback(hObject, eventdata, handles) Help

%

-function exit_Callback(hObject, eventdata, handles) choice= questdlg ('Do you want to exit?','confirm',... 'Yes','No','No');

switch choice case 'Yes' close all; end


(6)

CURRICULUM VITAE

Nama

: Arfiyah

Tempat / Tanggal Lahir

: Medan / 15 Februari 1991

Alamat

: Gang.Pringgan Lor.Camar Marelan

Agama

: Islam

Jenis Kelamin

: Perempuan

Alamat Email

No. Hp

: 081376502332

PENDIDIKAN FORMAL

2009-2013

S1 Ilmu Komputer Fasilkom-TI USU, Medan.

2006-2009

SMA Negeri 3 Medan

2003-2006

SMP Hang-Tuah I Belawan

1997-2003

SD Hang-Tuah III Belawan

SEMINAR, KURSUS

2013

Peserta Seminar Nasional dengan Tema “Pencaplokan

Budaya” Universitas Sumatera Utara

2012

Peserta Kursus Bahasa Inggris

2011

Peserta Seminar Teknologi Informasi “The

Development of Modern Operating System Technology:

Android – The new Trend in Modern Operating Sytem”

Universitas Sumatera Utara

2010

Peserta Seminar Internasional Matematika dan Terapan

Universitas Sumatera Utara

2008

Peserta Kursus Komputer

KEAHLIAN

Bahasa

Indonesia, Inggris

Bahasa Pemrograman

Matlab, C++, C#.Net, Delphi, PHP, MySQL.

PENGALAMAN ORGANISASI

2011

Anggota

IMILKOM (Ikatan Mahasiswa Ilmu

Komputer) USU Medan

2009

Anggota BKM AL-KHAWARIZMI S1 Ilmu Komputer

USU Medan

2006

Anggota ROHIS SMA Negeri III Medan

2005

Sekretaris OSIS SMP Hang-Tuah I Belawan