• Tidak ada hasil yang ditemukan

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

N/A
N/A
Protected

Academic year: 2016

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

Copied!
127
0
0

Teks penuh

(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

(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

(3)

ii

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,

(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

(5)

iv

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.

(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)

vi

ABSTRAK

(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.

(9)

viii

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

(11)

x

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

(12)

DAFTAR TABEL

Nomor

Tabel Nama Tabel Halaman

3.1

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.

(13)

xii

DAFTAR GAMBAR

Nomor

Gambar Nama Gambar Halaman

2.1

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)

(14)

DAFTAR LAMPIRAN

Halaman

A. Listing Program A-1

(15)

vi

ABSTRAK

(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.

(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].

(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’.

1.4Tujuan Penelitian

(19)

3

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

(21)

5

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

(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)

(23)

7

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

(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

(25)

9

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

(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

(27)

11

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)

13

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.

(31)

15

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].

(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)

17

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.

(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].

(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

(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)

21

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.

(38)

R=92

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.

(39)

23

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

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)

25

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

(43)

27

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

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

(45)

29

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)

(47)

31

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)

(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)

(49)

33

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)

(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

(51)

35

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

(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

Name Inputcover image

(53)

37

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.

Alternative Flows -

(55)

39

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.

(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

Actors Pengguna

(57)

41

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

(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)

43

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)

45

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

(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

(63)

47

x  x + 1

for i = 1:1:k

efof1(i,x,1)  m(status)

status  status + 1

if (status > e)

status2  true

break

endif

efof2(i,x,1)  m(status)

status  status + 1

if (status > e)

status2  true

break

endif

efof1(i,x,2)  m(status)

status  status + 1

if (status > e)

status2  true

break

endif

efof2(i,x,2)  m(status)

status  status + 1

if (status > e)

status2  true

break

endif

efof1(i,x,3)  m(status)

status  status + 1

if (status > e)

status2  true

break

endif

efof2(i,x,3)  m(status)

status  status + 1

if (status > e)

status2  true

break

endif

(64)

endfor

efof  [efof1 awal efof2]

stego3  uint8(efof)

Pada pseudocode diatas diinisialisasikan terlebih dahulu penanda awal ‘zzxx’ 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 awal dan akhir matriks citra secara zig-zag. Proses penyisipan secara vertikal yang dimaksud adalah terjadinya penambahan kolom pada awal dan 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.

3.2.4.2Pseudocode Proses Extraction

Langkah-langkah proses extractionatau pengambilan 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 extractiondengan metode End-of-File dapat dilihat dilihat pada pseudocode berikut:

cover  handles.image

cover  double(cover)

[b k c]  size(cover)

penanda1 'zx'

penanda1  double(penanda1)

x  k

kondisi  0

for i = 1:1:k

tanda  [cover(1,i,1) cover(1,i,2)]

tanda  double(tanda)

if tanda == penanda1

kondisi  1

indeks  i

break

(65)

49

endfor

if kondisi==1

sss  1

teks  []

for i=indeks:1:k

for j=1:1:b

teks  [teks char(cover(j,i,1))]

sss  sss+1

teks  [teks char(cover(j,i,2))]

sss  sss+1

teks  [teks char(cover(j,i,3))]

sss  sss+1

endfor

endfor

else

msgbox({'There is no hidden message. Please select

another image.'},'Message','modal');

endif

Proses ekstraksi pada pseudocode diatas merupakan proses pengambilan pesan rahasia yang disisipkan ke dalam citra digital. Proses dimulai dengan memeriksa nilai pixel pesan secara vertikal yang memiliki penanda awal ‘zx’ jika penanda awal telah ditemukan maka diperiksa nilai pixel berikutnya apakah masih terdapat pesan berikutnya atau tidak dan diakhiri oleh penanda akhir ‘zx’. Setelah pemeriksaan selesai maka pesan akan dikeluarkan untuk diterima oleh user.

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

cover  handles.image

cover  double(cover)

[b k c]  size(cover)

penanda1  'zx'

penanda1  double(penanda1)

x  k

(66)

for i = 1:1:k

tanda  [cover(1,i,1) cover(1,i,2)]

tanda  double(tanda)

if tanda == penanda1

kondisi  1

indeks  i

break

endif

endfor

if kondisi==1

sss  1

teks  []

for i=indeks:1:k

for j=1:1:b

teks  [teks char(cover(j,i,1))]

sss  sss+1

teks  [teks char(cover(j,i,2))]

sss  sss+1

teks  [teks char(cover(j,i,3))]

sss  sss+1

endfor

endfor

else

msgbox({'There is no hidden message. Please select

another image.'},'Message','modal');

endif

Gambar

Tabel 3.1
Gambar 2.1
Gambar 2.4. Citra BMP
Tabel 3.3 Matriks Pixel Citra RGB
+7

Referensi

Dokumen terkait

survei / jajak pendapat atau penghitungan cepat hasil Pemilihan Gubernur dan Wakil Gubernur DKI Jakarta Tahun 2017 dan akan memenuhi ketentuan sebagaimana

Paket pengadaan ini terbuka untuk penyedia yang teregistrasi pada Layanan Pengadaan Secara Elektronik ( LPSE ) dan memenuhi persyaratan SBU Bidang Arsitektur yang

Banten Tahun Anggaran 2012 yang telah memasuki tahap Evaluasi Dokumen Kualifikasi dan Pembuktian Kualifikasi untuk pekerjaan dimaksud, untuk itu kami Pokja ULP Pekerjaan

12.4 To understand the influence of regional characteristics on consumer behavior. 12.5 To understand age and generational influences on consumer behavior. 12.6 To understand

Tagihan atas surat berharga yang dibeli dengan janji dijual kembali (Reverse Repo ). Surat berharga yang dijual dengan janji dibeli kembali

• Consumer decision making and diffusion of innovations • From print and broadcast advertising to social and

Surat berharga yang dijual dengan janji dibeli kembali (repo ) Tagihan atas surat berharga yang dibeli dengan janji dijual kembali (reverse repo).. (dalam jutaan

Metode/Cara Kerja/Acuan yang Digunakan: dikerjakan secara kelompok menggunakan konsep motivasi dalam konteks perilaku konsumen.. Dekripsi Luaran Tugas yang Dihasilkan: