BAB 2 LANDASAN TEORI. pembentukan dan penggunaan prinsip-prinsip engineering untuk

dokumen-dokumen yang mirip
Grafik yang menampilkan informasi mengenai penyebaran nilai intensitas pixel-pixel pada sebuah citra digital.

BAB 1 PENDAHULUAN. Perkembangan teknologi sekarang ini semakin maju, sehingga mudah bagi user

BAB 3 ANALISIS DAN PERANCANGAN SISTEM. yang sering dilakukan. Pertukaran informasi dan data menggunakan internet

BAB II LANDASAN TEORI

BAB III METODOLOGI PENELITIAN. implementasi algoritma Blowfish pada audio steganografi berbasis MP3.

BAB 1 PENDAHULUAN. 1.1 Latarbelakang

BAB 2 LANDASAN TEORI

BAB I PENDAHULUAN. Steganografi adalah teknik menyisipkan pesan kedalam suatu media,

Analisa Hasil Perbandingan Metode Low-Pass Filter Dengan Median Filter Untuk Optimalisasi Kualitas Citra Digital

BAB II LANDASAN TEORI

PERANCANGAN PROGRAM APLIKASI STEGANOGRAFI CITRA MENGGUNAKAN METODE PIXEL VALUE DIFFERENCING SPIRAL

BAB 2 TINJAUAN TEORETIS

PENYEMBUNYIAN CITRA DALAM CITRA DENGAN ALGORITMA BERBASIS BLOK ABSTRAK

BAB I PENDAHULUAN. MMS (Multimedia Messaging Service) adalah puncak dari evolusi SMS

ANALISIS STEGANOGRAFI METODE TWO SIDED SIDE MATCH

BAB III ANALISIS KEBUTUHAN DAN PERANCANGAN

BAB 2 LANDASAN TEORI

BAB III ANALISIS SISTEM

BAB III ANALISIS DAN PERANCANGAN SISTEM

Watermarking dengan Metode Dekomposisi Nilai Singular pada Citra Digital

BAB I PENDAHULUAN. disadap atau dibajak orang lain. Tuntutan keamanan menjadi semakin kompleks, maka harus dijaga agar tidak dibajak orang lain.

BAB III ANALISIS DAN DESAIN SISTEM

BAB II LANDASAN TEORI

ABSTRAK. Kata kunci : Steganografi, bit-plane complexity segmentation, data tersembunyi, peak signal-to-noise ratio. v Universitas Kristen Maranatha

Penyembunyian Pesan pada Citra Terkompresi JPEG Menggunakan Metode Spread Spectrum

Bab I Pendahuluan 1 BAB I PENDAHULUAN

ANALISIS KEAMANAN PESAN MENGGUNAKAN TEKNIK STEGANOGRAFI MODIFIED ENHANCED LSB DAN FOUR NEIGHBORS DENGAN TEKNIK KRIPTOGRAFI CHAINING HILL CIPHER

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB III METODE PENELITIAN

BAB I PENDAHULUAN. mengirim pesan secara tersembunyi agar tidak ada pihak lain yang mengetahui.

PENYEMBUNYIAN GAMBAR DALAM GAMBAR MENGGUNAKAN SISTEM FUNGSI ITERASI ABSTRAK

BAB II TINJAUAN PUSTAKA

BAB I PENDAHULUAN I.1 Latar Belakang Masalah

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

STUDI DAN IMPLEMENTASI WATERMARKING CITRA DIGITAL DENGAN MENGGUNAKAN FUNGSI HASH

Metode Steganografi Penyisipan Karakter dengan Teknik LSB dan Penempatan Bit mengikuti Langkah Kuda Catur (L-Shape)

BAB III ANALISIS DAN DESAIN SISTEM

BAB I PENDAHULUAN. orang lain. Tuntutan keamanan menjadi semakin kompleks, apalagi bila data itu dikirimkan, dan

IMPLEMENTASI TEKNIK STEGANOGRAFI LEAST SIGNIFICANT BIT (LSB) DAN KOMPRESI UNTUK PENGAMANAN DATA PENGIRIMAN SURAT ELEKTRONIK

BAB II TEORI DASAR PENGOLAHAN CITRA DIGITAL

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI

ABSTRCTK & EXEUTIVE SUMMARY HIBAH BERSAING. Sistem Pengkodean File Image Kedalam Citra Foto Menggunakan Teknik Steganografi

Penyembunyian Pesan Rahasia Dalam Gambar dengan Metoda JPEG - JSTEG Hendry Hermawan / ABSTRAK

Aplikasi Metode Steganografi Berbasis JPEG dengan Tabel Kuantisasi yang Dimodifikasi Kris Reinhard /

IMPLEMENTASI STEGANOGRAPHY MENGGUNAKAN ALGORITMA DISCRETE COSINE TRANSFORM

BAB I PENDAHULUAN. 1 Universitas Kristen Maranatha

BAB 3 ANALISA DAN PERANCANGAN

Penerapan Metode End Of File Pada Steganografi Citra Gambar dengan Memanfaatkan Algoritma Affine Cipher sebagai Keamanan Pesan

BAB I PENDAHULUAN. 1 Universitas Kristen Maranatha

LANDASAN TEORI. 2.1 Citra Digital Pengertian Citra Digital

BAB II TINJAUAN PUSTAKA

BAB II LANDASAN TEORI

Penyembunyian Pesan pada Citra GIF Menggunakan Metode Adaptif

BAB III ANALISIS DAN DESAIN SISTEM

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB III ANALISIS DAN DESAIN SISTEM

ANALISIS METODE MASKING-FILTERING DALAM PENYISIPAN DATA TEKS

BAB 2 LANDASAN TEORI

PENYISIPAN WATERMARK MENGGUNAKAN METODE DISCRETE COSINE TRANSFORM PADA CITRA DIGITAL

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. Sequantial (Waterfall). Metode ini memiliki lima tahapan yaitu, communication,

BAB 2 LANDASAN TEORI

BAB II TINJAUAN PUSTAKA. yang ditandai dengan saling berhubungan dan mempunyai satu fungsi atau tujuan

BAB 1 PENDAHULUAN. Kabupaten Jombang merupakan salah satu Kabupaten yang terletak di

BAB IV PERANCANGAN SISTEM

Pertemuan 2 Representasi Citra

Kombinasi Teknik Steganografi dan Kriptografi dengan Discrete Cosine Transform (DCT), One Time Pad (OTP) dan PN-Sequence pada Citra Digital

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 3 ANALISIS DAN KEBUTUHAN ALGORITMA

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

ANALISA PERBANDINGAN LEAST SIGNIFICANT BIT (LSB) DAN END OF FILE (EOF) UNTUK STEGANOGRAFI CITRA DIGITAL MENGGUNAKAN MATLAB

N, 1 q N-1. A mn cos 2M , 2N. cos. 0 p M-1, 0 q N-1 Dengan: 1 M, p=0 2 M, 1 p M-1. 1 N, q=0 2. α p =

BAB V IMPLENTASI DAN PENGUJIAN

BAB III ANALISIS DAN PERANCANGAN

TEKNIK STEGANOGRAFI UNTUK PENYEMBUNYIAN PESAN TEKS MENGGUNAKAN ALGORITMA GIFSHUFFLE

DAFTAR ISI ABSTRAK... ABSTRACT... ii. KATA PENGANTAR... iii. UCAPAN TERIMA KASIH... iv. DAFTAR ISI... v. DAFTAR GAMBAR... viii. DAFTAR TABEL...

Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

BAB 1 PENDAHULUAN 1.1 Latar Belakang

BAB 2. Landasan Teori

BAB 1 PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang

1) BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah

BAB II LANDASAN TEORI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

CS4 Professional serta, didapatkan tampilan yang menarik dan dapat memberikan. Melihat peluang yang ada maka Proposal Skripsi ini di beri judul

PENYEMBUNYIAN DATA SECARA AMAN DI DALAM CITRA BERWARNA DENGAN METODE LSB JAMAK BERBASIS CHAOS

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. 1. aa

BAB 1 PENDAHULUAN. masyarakat dengan Kuliah Kerja Nyata (KKN) merupakan suatu bentuk kegiatan

BAB 2 TINJAUAN PUSTAKA

BAB I PENDAHULUAN. teknologi pengolahan citra (image processing) telah banyak dipakai di berbagai

BAB I PENDAHULUAN I-1

BAB 1 PENDAHULUAN. Bab 1 Pendahuluan

BAB IV HASIL DAN UJI COBA

PERANCANGAN APLIKASI PENGACAKAN CITRA MENGGUNAKAN M-SEQUENCE BERDASARKAN PARAMETER

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

BAB I PENDAHULUAN. penelitian, metodologi penelitian dan sistematika penulisan.

Transkripsi:

BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Rekayasa Perangkat Lunak Menurut Pressman (2010, p.13), rekayasa perangkat lunak adalah pembentukan dan penggunaan prinsip-prinsip engineering untuk memperoleh perangkat lunak secara ekonomis yang handal dan dapat bekerja efisien pada mesin yang sesungguhnya. IEEE [IEE93a] telah mengembangkan definisi yang lebih komprehensif ketika menyatakan bahwa rekayasa perangkat lunak adalah aplikasi yang sistematik, disiplin, pendekatan kuantitatif untuk pengembangan, operasi, dan pemeliharaan perangkat lunak, yaitu dengan penerapan rekayasa pada perangkat lunak. Jika pendekatan ini diterapkan pada satu tim perangkat lunak mungkin akan memberatkan pada hal lainnya. Oleh karena itu kita juga membutuhkan penyesuaian dan kecerdasan. Rekayasa perangkat lunak mempunyai sebuah proses kerangka. Kerangka proses ini menetapkan dasar bagi proses rekayasa perangkat lunak lengkap dengan mengidentifikasi sejumlah kecil aktivitas kerangka kerja yang berlaku untuk semua proyek perangkat lunak, terlepas dari ukuran atau kompleksitasnya. Secara umum kerangka proses untuk rekayasa perangkat lunak mencakup lima aktivitas (Pressman, 2010, p.15): Communication Sebelum setiap pekerjaan teknis dimulai, sangat penting untuk berkomunikasi dan berkolabirasi dengan pelanggan dan stakeholder. 8

9 Tujuannya adalah untuk memahami tujuan stakeholder pada proyek dan membantu mendefinisikan fitur dan fungsi perangkat lunak. Planning Perencanaan akan membantu memandu kita dalam mengerjakan proyek perangkat lunak kita. semua proyek yang kompleks dapat menjadi sederhana dengan adanya perencanaan kegiatan. Perencanaan menjelaskan tentang tugas-tugas teknis yang akan dilakukan, resiko yang mungkin terjadi, sumber daya apa yang dibutuhkan, produk kerja seperti apa yang dihasilkan, dan jadwal kerja yang akan dilaksanakan. Modeling Dalam mengerjakan perangkat lunak, perlu menciptakan suatu permodelan untuk lebih memahami gambaran besar apa yang akan dikerjakan. Jika diperlukan, kita dapat memberbaiki permodelan kita menjadi lebih detail dalam upaya untuk lebih memahami masalah apa yang ada dan bagaimana kita kan mengatasinya. Construction Kegiatan ini menggabungkan kode generasi (baik manual maupun otomatis) dan pengujian yang diperlukan untuk mengungkap kesalahan dalam kode. Deployment Perangkat lunak (sebagai entitas lengkap atau sebagai sebagian yang selesai) dikirim ke pelanggan yang mengevaluasi produk yang disampaikan dan memberikan umpan balik berdasarkan evaluasi.

10 Salah satu proses model dalam rekayasa perangkat lunak adalah waterfall model, terkenal juga sebagai siklus hidup perangkat lunak. Waterfall model adalah contoh sebuah proses perencanaan yang bejalan, pada prinsipnya, anda harus merencanakan dan menjadwalkan semua kegiatan proses sebelum mulai bekerja memakai waterfall model. Tahap utama dari waterfall model langsung mencerminkan kegiatan pembangunan mendasar (Sommerville, 2011, p.30): 1. Requirements Analysis and Definition Pada tahap ini dilakukan konsultasi dengan pengguna sistem untuk menetapkan seperti apa sistem yang diinginkan. Setelah ini definisikan keinginan user secara rinci dan jalankan sebagai spesefikasi sistem. 2. System and Software Design Proses desain sistem mengalikasikan persyaratan yang baik untuk sofware atau hardware sistem dengan membentuk arsitektur sistem secara keseluruhan. Desain perangkat lunak melibatkan identifikasi dan menggambarkan abstraksi sistem sofware yang mendasar dan hubungan mereka. 3. Implementation and Unit Testing Selama tahapan ini, desain perangkat lunak direalisasikan sebagai satu set dari program atau unit program. Unit testing melibatkan verifikasi bahwa setiap unit memenuhi spesifikasinya. 4. Integration and System Testing Unit program individu atau program yang terintegrasi dan diuji sebagai sistem yang lengkap untuk memastikan bahwa persyaratan perangkat

11 lunak telah dipenuhi. Setelah pengujian, sistem perangkat lunak disampaikan kepada pelanggan. 5. Operation and Maintenance Biasanya, ini adalah fase terpanjang dari siklus hidup. Sistem terinstal dan dimasukkan ke dalam penggunaan praktis. Pemeliharaan melibatkan pengoreksian kesalahan yang tidak ditemukan pada tahaptahap awal dari siklus hidup, meningkatkan implementasi unit sistem dan meningkatkan layanan sistem sebagai persyaratan baru yang ditemukan. Requirements Definition System and Software Design Implementation and Unit Testing Integration and System Testing Operation and Maintenance Gambar 2.1 Waterfall Model 2.1.2 Unified Modeling Language (UML) UML adalah sebuah bahasa standar untuk menulis perencanaan perangkat lunak. Sama seperti halnya arsitek bangunan membuat perencanan yang akan digunakan oleh perusahaan konstruksi, maka arsitek software membuat diagram UML untuk membantu pengembang perangkat lunak

12 membangun perangkat lunak (Pressman, 2010, p.841). Berikut ini adalah beberapa tipe diagram pada UML: 1. Use Case Diagram Use case diagram membantu menentukan fungsi dan fitur dari perangkat lunak dari perspektif pengguna. Use case menggambarkan bagaiman interaksi user dengan sistem dengan mendefinisikan langkah yang diperlukan untuk mencapai tujuan tertentu. Dan use case diagram merupakan gambaran dari semua use case dan bagaimana mereka berhubungan. Use case diagram memberikan gambaran besar dari fungsi sistem (Pressman, 2010, p.847). Gambar 2.2 Contoh Use Case Diagram 2. Activity Diagram Sebuah activity diagram menunjukkan perilaku dinamis dari suatu sistem atau bagian dari sistem melalui aliran kontrol antara suatu tindakan dengan yang dikerjakan oleh sistem. Activity diagram mirip

13 dengan flow chart, hanya activity diagram dapat menunjukkan arus yang terjadi bersama-sama. Komponen utama dari suatu activity diagram adalah sebuah action node yang dilambangkan dengan persegi panjang. Action node berisi tugas-tugas yang dilakukan oleh sistem perangkat lunak. Kemudian panah dari satu node ke node lain menunjukkan aliran kontrol. Sedangkan node awal dilambangkan dengan titik atau bundaran hitam yang menandakan awal dimulainya kegiatan. Dan titik atau bundaran hitam yang dikelilingi oleh lingkaran menunjukkan akhir kegiatan (Pressman, 2010, p.853). Gambar 2.3 Contoh Activity Diagram 3. Class Diagram Class diagram adalah kelas model yang terdiri dari atribut, operasi, dan hubungan dan asosiasi kelas dengan kelas lainnya. Class diagram memberikan pandangan statis atau struktural dari sebuah sistem. Tidak menunjukkan sifat dinamis dari komunikasi antara onjek dari kelas dalam diagram(pressman, 2010, p.842).

14 Elemen utama dari sebuah class diagram adalah kotak, yang lambangnya digunakan untuk mewakili kelas dan antarmuka. Kotak akan dibagi menjadi tiga, dimana bagian atas merupakan nama kelas, bagian tengah adalah atribut, dan yang bagian bawah adalah operasi dari sebuah kelas. Nama kelas - Atribut + Operasi Gambar 2.4 Contoh Class Diaram 4. Sequence Diagram Berbeda dengan class diagram yang menunjukkan struktur statis dari komponen software, sequence diagram digunakan untuk menunjukan komunikasi dinamis antara objek selama pelaksanaan tugas. Itu menunjukkan urutan temporal dalam pesan yang dikirim antara objek untuk menyelesaikan tugas itu. Penggunaan sequence diagram untuk menunjukkan interaksi dalam satu use case atau di salah satu skenario dari sistem perangkat lunak (Pressman, 2010, p.848).

15 Gambar 2.5 Contoh Sequence Diagram 2.1.3 Flow Chart Flow chart adalah gambaran dari langkah-langkah dan urutan-urutan prosedur dari sebuah program. Flow chart merupakan gambar atau diagram yang mempunyai aliran satu atau dua arah secara sekuensial. Flow chart berguna untuk merepresentasikan ataupun mendesain program. Flow chart juga berfungsi untuk memecahkan masalah menjadi bagianbagian yang lebih kecil dan memudahkan dalam menganalisis cara lain yang dapat digunakan dalam pengoperasian program. 2.1.4 Metode Evaluasi Kinerja Pengujian Kualitas data citra juga berkaitan dengan kemungkinan penyerangan steganografi dengan menggunakan metode visual attack.

16 Pengujian dilakukan dengan melakukan survey pada sejumlah koresponden untuk menilai kualitas citra tersebut secara subjektif. Citra tersebut dianalisa untuk mengetahui distorsi yang terjadi pada citra dan bagaimana kualitas citra yang dihasilkan. Pengujian ini dilakukan dengan menggunakan HVS (Human Visual System) atau sistem penglihatan manusia (Piarsa, 2011). Pengujian dilakukan dengan mengukur MOS (Mean Opinion Score) sebagai berikut (Rojali, 2009): Tabel 2.1 Level Distorsi Pengukuran MOS Nilai Level Distorsi Kualitas Gambar 1 Sangat Tidak Mirip Perbedaan antara cover image dan stego image sangat jelas 2 Tidak Mirip antara cover image dan stego image ada perbedaan sedikit 3 Mirip antara cover image dan stego image mirip 4 Sangat Mirip antara cover image dan stego image sangat mirip atau tidak dapat dibedakan Selain pengujian kualitas, dibutuhkan juga teknik teknik sampling. Salaah satu tenik sampling adalah teknik sampling probabilitas atau dikenal dengan random sampling digunakan untuk melakukan generasi hasil penelitian terhadap populasi walaupun data yang didapat hanya berasal dari sampel. Pada simple random sampling, satuan data sampling akan dipilih secara acak tanpa dilakukan pengelompokkan terlebih dahulu (Setiawan, 2005). Cara pengumpulan data dapat menggunakan kuisioner. Kuisioner adalah sejumlah pertanyaan dimana responden mengisi

17 jawaban-jawaban. Kuisioner merupakan teknik pengumpulan data yang efisien dimana peneliti mengetahui dengan tepat apa yang diminta dan bagaimana mengukur variabel-variabel (Rojali, 2009). 2.2 Teori Khusus 2.2.1 Steganografi Steganografi adalah sebuah mekanisme untuk melindungi data. Data yang akan dikirimkan dapat disisipkan melalui media pembawa. (Rojali, 2009). Dan menurut Baskara (2007), steganografi adalah ilmu dan seni yang mempelajari bagaimana menyembunyikan pesan rahasia ke suatu media sehingga pihak ketiga (selain pengirim dan penerima) tidak menyadari keberadaan pesan rahasia itu. Metode steganografi lebih banyak digunakan pada data digital dengan media teks, gambar, audio, dan video. Pada steganografi terdapat dua proses, yaitu proses penyisipan pesan dan proses ekstrasi pesan. Proses penyisipan pesan memerlukan input berupa pesan yang akan disisipkan, media penyisipan, serta kunci atau cara untuk menyisipkan pesan. Kemudian output dari proses penyisipan adalah media yang sudah tersisipkan pesan. Sedangkan input yang diperlukan pada proses ekstraksi adalah media yang telah disisipkan pesan dan output dari proses ekstraksi yang dihasilkan adalah pesan yang disisipkan. Dalam steganografi juga perlu memperhatikan kriteria dalam penyembunyian data. Kriterianya antara lain (Munir, 2004):

18 1. Fidelity. Mutu citra yang menjadi media penyisipan tidak jauh berubah setelah ditambahkan data rahasia. Sehingga pengamat tidak mengetahui kalau di dalam citra tersebut terdapat data rahasia. 2. Robustness. Data yang disisipkan harus tahan terhadap manipulasi yang dilakukan terhadap citra yang dijadikan sebagai media penyisipan (seperti pengubahan kontras, penajaman, rotasi, dan sebagainya). Bila pada citra dilakukan operasi pengolahan citra, maka data yang disembunyikan tidak rusak. 3. Recovery. Data yang disisipkan harus dapat diekstrak kembali. Karena tujuan steganografi adalah data hiding, maka data yang disisipkan harus dapat diambil kembali untuk digunakan lebih lanjut. 2.2.2 Teknik Penyisipan dan Ekstraksi Berikut ini adalah model dasar dari metode steganografi menurut Zollner et al (1998): Gambar 2.6 Model Penyisipan dan Ekstraksi Dengan keterangan sebagai berikut: Cover: media gambar yang akan disisipkan pesan. Embed: Pesan yang akan disisipkan.

19 F(g): fungsi steganografi untuk menyisipkan. F(g) : fungsi steganografi untuk mengekstraksi. Key: parameter dari F(g). Stego: gambar yang telah disisipkan pesan. Embed akan disisipkan kedalam Cover dengan menggunakan fungsi F(g). Kemudian, akan menghasilkan Stego yang berisi pesan Embed. Lalu, fungsi F(g) akan mengekstraksi data yang disisipkan menjadi Embed* dan juga akan menghasilkan output berupa Cover*. Pada akhirnya, Embed* harus sama dengan Embed dan pada umumnya Cover* akan sama dengan Stego. 2.2.3 Metode PVD Pixel Value Differencing (PVD) adalah salah satu algoritma steganografi. Algoritma ini ditemukan pada tahun 2003 oleh Da-Chun Wu dan Wen- Hsiang Tsai (Rojali, 2009). PVD merupakan teknik dengan memanfaatkan nilai perbedaan dari dua piksel berturut-turut. Kapasitas pesan bersembunyi pada dua piksel yang bertutur-turut itu tergantung pada selisih kedua piksel itu. Dengan kata lain, daerah yang halus adalah daerah dimana data rahasia kurang bisa disembunyikan. Tetapi, jika semakin tepi suatu daerah, maka semakin banyak juga data rahasia dapat disembunyikan. Ini karena degradasi kualitas stego-image yang lebih tidak terlihat oleh mata manusia (Wu et al, 2007). Algoritma PVD adalah dengan sistem arah pencarian selisih dua piksel terdekat seperti pada gambar dibawah (Wu dan Tsai, 2003):

20 Gambar 2.7 Proses Penyisipan File Cover Secara Zig Zag. Pada penelitian ini akan dimodifikasi pola pengambilan pikselnya dengan metode spiral. Untuk lebih jelas, akan dibahas pada bab 3. Secara ringkas, ini lah algoritma dalam PVD: Algoritma Penyisipan Pada PVD 1) Hitunglah selisih piksel, dimana dan adalah piksel yang akan disisipkan pesan. 2) Cari nilai dari tabel untuk mendapatkan, dengan sebagai batas bawah dan sebagai batas atas pada tabel. 3) Setelah itu, kita harus mencari nilai 4) Kemudian kita gunakan nilai untuk menghitung berapa jumlah bit yang bisa disisipkan dengan perhitungan: 5) Selanjutnya, ambil pesan sejumlah bit dengan sesuai dengan perhitungan diatas. 6) Lalu Konversikan pesan yang telah diambil ke dalam desimal. Nyatakan sebagai.

21 7) Sesudah itu, kita harus menghitung nilai 8) Kemudian dari nilai yang didapat, kita dapat memperoleh nilai, dimana nilai m ini yang nantinya akan digunakan untuk menentukan nilai piksel setelah disisipkan pesan. 9) Hitung kedua nilai piksel dan yang telah disisipkan pesan dengan menggunakan tabel dan syarat yang ada pada 2.1.2. 10) Lakukan sampai semua pesan telah berhasil disisipkan ke dalam gambar. Algoritma Ekstraksi Pada PVD 1) Hitunglah selisih nilai, dan dimana adalah piksel yang telah disisipkan pesan. 2) Kemudian cari nilai yang merupakan nilai batas bawah pada tabel dengan menggunakan nilai yang telah diperoleh. 3) Lalu, hitunglah nilai. 4) Konversikan nilai ke dalam biner, setelah itu gunakan perhitungan untuk mengetahui seberapa panjang bit pesan yang harus diekstraksi. 5) Lakukan sampai semua piksel telah berhasil diproses. Syarat yang digunakan untuk menghitung nilai baru piksel yang dinyatakan sebagai, adalah:

22 Untuk mengetahui batas bawah ( ) dan batas atas ( ) bagi selisih piksel dapat menggunakan tabel dibawah: Tabel 2.1 Tabel Jangkauan Selisih Piksel Contoh kasus: Pesan yang ingin disisipkan adalah 1101100 kedalam sebuah gambar dengan nilai piksel sebagai berikut: 229 231 231 232 229 235 232 234 235 236 238 239 240 241 243 244

23 Cara menyisipkan pesan: Pesan pertama kali akan disisipkan ke piksel dimana bernilai 229 dan yang bernilai 231. Kemudian kita hitung selisih keduanya, yaitu, Setelah itu kita cari batas bawah dan sebagai batas atas pada tabel Sehingga didapat dan Setelah itu, kita harus mencari nilai Lalu, kita baru dapat menghitung berapa jumlah bit yang bisa disisipkan dengan perhitungan: Selanjutnya, ambil pesan sejumlah 3 bit, yaitu 110. Kemudian konversikan 110 ke dalam desimal sebagai itu, kita harus menghitung nilai. Sesudah Dari nilai yang didapat, kita dapat memperoleh nilai Nilai m digunakan untuk menentukan nilai piksel setelah disisipkan pesan, dan dengan syarat yang ada pada 2.1.2. Karena < dan maka syarat yang digunakan adalah (, ) = Jadi, nilai = 227 dan = 233. Lakukan perhitungan cara penyisipan pesan sampai semua pesan telah berhasil disisipkan ke dalam gambar. Untuk piksel yang selanjutnya akan dihitung adalah dan, dan ), dan seterusnya mengikuti cara pengambilan pikselnya.

24 Cara mengekstraksi pesan: Jika kita ingin mengekstraksi pesan yang ada didalam gambar, maka kita perlu mengurutkan semua piksel pada gambar (yang telah disisipkan pesan) sesuai cara pengambilan pikselnya. Setelah itu kita hitung selisih nilai Kemudian kita cari (batas bawah) pada tabel sehingga didapat Setelah itu, kita dapat menhitung nilai Kemudian kita hitung nilai Nilai ini yang kita gunakan untuk mengetahui seberapa panjang akan dikonversikan ke dalam biner, yaitu sepanjang 3 bit. Berarti pesan yang disisipkan adalah 110. Proses ini akan terus diulang sampai semua piksel telah diperiksa. 2.2.4 Citra Digital Bertalya (2005) mengatakan citra digital dihasilkan melalui digitalisasi terhadap citra kontinu. Citra digital merupakan fungsi intensitas cahaya f(x,y), dimana harga x dan y merupakan koordinat spasial dan harga fungsi tersebut pada setiap titik (x,y) merupakan tingkat kecemerlangan (intensitas cahaya) pada titik tersebut. Citra digital juga dapat diartikan sebagai sebuah matriks dimana indeks baris dan kolomnya menyatakan suatu titik pada citra tersebut dan elemen matriksnya (disebut sebagai elemen gambar/ piksel) menyatakan tingkat keabuan pada titik tersebut.

25 Menurut Fatta (2007), Suatu citra adalah sekumpulan triplet yang terdiri atas variasi tingkat keterangan (brightness) dari elemen Red, Green, dan Blue (RGB). Setiap triplet akan menggambarkan sebuah piksel. Jika suatu triplet bernilai 67, 228, dan 180 berarti akan mengatur nilai Red = 67, Green = 228, dan Blue = 180. Pada format.bmp citra setiap piksel pada citra digambarkan dengan 24 bit (8 bit untuk Red, 8 bit untuk Green, dan 8 bit untuk Blue). 2.2.5 Peak Signal To Noise Ratio Menurut Male et al (2012), Peak Signal To Noise Ratio (PSNR) merupakan perbandingan antara nilai maksimum dari sinyal yang diukur dengan berapa besarnya derau yang berpengaruh pada sinyal tersebut. PSNR digunakan untuk mengetahui perbandingan kualitas gambar sebelum dan sesudah disisipkan pesan. Satuan PSNR adalah desibel. Agar dapat menghitung PSNR, maka terlebih dahulu kita harus menghitung nilai MSE (Mean Square Error). MSE adalah nilai error kuadrat rata-rata antara citra cover dengan citra tersteganografi. Berikut ini adalah perhitungan MSE secara matematis: Keterangan: MSE = Nilai Mean Square Error citra steganografi M = Panjang citra stego (dalam piksel) N = Lebar citra stego (dalam piksel) I(x,y) = Nilai piksel dari citra cover

26 I (x,y) = Nilai piksel pada citra stego Untuk gambar warna dengan komponen Red, Green, dan Blue nilai MSE secara keseluruhan merupakan jumlah MSE untuk setiap komponen Red, Green, dan Blue dibagi tiga. Jika sudah memperoleh nilai MSE, maka nilai PSNR dapat dihitung dengan cara sebagai berikut: Dimana, MSE merupakan nilai MSE yang sudah dihitung sebelumnya dan MAXi adalah nilai maksimum dari piksel citra yang digunakan. Semakin rendah MSE maka akan semakin baik, dan semakin besar nilai PSNR maka akan semakin baik kualitas citra steganografi. Menurut Cole (2003), nilai PSNR dikatakan baik jika berada diatas nilai 20. Jadi, jika nilai PSNR dibawah nilai 20 distorsi yang terjadi sangat besar antara stego image dan cover image.