Implementasi Algoritma Huffman Coding Dan Metode Least Significant Bit (LSB) Untuk Penyembunyian Citra BMP ke Citra BMP
IMPLEMENTASI ALGORITMA HUFFMAN CODING DAN METODE
LEAST SIGNIFICANT BIT(LSB) UNTUK PENYEMBUNYIAN
CITRA BMP KE CITRA BMP
JOHAN SURYA
121401095
PROGRAM STUDI S-1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
IMPLEMENTASI ALGORITMA HUFFMAN CODING DAN METODE
LEAST SIGNIFICANT BIT (LSB) UNTUK PENYEMBUNYIAN
CITRA BMP KE CITRA BMP
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Ilmu Komputer
JOHAN SURYA
121401095
PROGRAM STUDI S-1 ILMU KOMPUTER
FAKULTAS ILMI KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
i
PERSETUJUAN
Judul
:
IMPLEMENTASI ALGORITMA HUFFMAN
CODING DAN METODE LEAST
SIGNIFICANT BIT (LSB) UNTUK
PENYEMBUNYIAN CITRA BMP KE CITRA
BMP
Kategori
:
SKRIPSI
Nama
:
JOHAN SURYA
Nomor Induk Mahasiswa
:
121401095
Program Studi
:
SARJANA (S1) ILMU KOMPUTER
Fakultas
:
ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA
UTARA
Diluluskan di
Medan,
Oktober 2016
Komisi Pembimbing :
Pembimbing 2 :
Pembimbing 1 :
Amalia, S.T, M.T
Dian Rachmawati, S.Si., M. Kom
NIP. 197812212014042001
NIP. 198307232009122004
Diketahui/disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,
Dr. Poltak Sihombing, M. Kom
NIP. 196203171991031001
Universitas Sumatera Utara
ii
PERNYATAAN
IMPLEMENTASI ALGORITMA HUFFMAN CODING DAN METODE
LEAST SIGNIFICANT BIT (LSB) UNTUK PENYEMBUNYIAN
CITRA BMP KE CITRA BMP
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing – masing telah disebutkan sumbernya.
Medan, 6 Agustus 2016
Johan Surya
121401095
Universitas Sumatera Utara
iii
UCAPAN TERIMA KASIH
Segala puji dan syukur penulis ucapkan kehadirat Tuhan Yang Maha Esa yang telah
memberikan rahmat dan karunia-Nya kepada penulis sehingga dapat menyelesaikan
skripsi ini tepat waktu sesuai dengan instruksi dan peraturan yang berlaku di Fakultas
Ilmu Komputer dan Teknologi Informasi.
Dalam penyusunan dan penulisan skripsi ini, penulis banyak mendapat
bantuan, dukungan, dan bimbingan dari berbagai pihak.Pada kesempatan ini penulis
ingin mengucapkan rasa terima kasih dan penghargaan kepada :
1.
Teristimewa orang tua yang penulis sayangi, ibunda Celiawaty dan ayahanda
Sudharmono yang tidak henti-hentinya memberikan doa, motivasi, dan
dukungan yang selalu menjadi sumber semangat penulis.
2.
Bapak Prof. Dr. Runtung Sitepu, SH, M.Hum selaku Rektor Universitas
Sumatera Utara.
3.
Bapak Prof. Dr. Opim Salim Sitompul, M.Sc sebagai Dekan Fakultas Ilmu
Komputer dan Teknologi Informasi.
4.
Bapak Dr. Poltak Sihombing, M.Kom sebagai Ketua Program Studi S-1 Ilmu
Komputer.
5.
Ibu Dian Rachmawati, S.Si,M.Kom selaku Kepala Studio Lab TA S-1 Ilmu
Komputer.
6.
Ibu Dian Rachmawati, S.Si,M.Kom selaku Dosen Pembimbing I dan Ibu
Amalia, S.T, M.T selaku Dosen Pembimbing II yang telah meluangkan
waktu, tenaga, dan pikiran dalam membimbing, mengarahkan, menasehati,
memotivasi, dan menyemangati penulis agar dapat menyelesaikan skripsi ini.
7.
Bapak Prof. Dr. Muhammad Zarlis, M.Sc selaku dosen Pembanding I dan
Bapak Drs. Dahlan Sitompul, M.Eng selaku dosen Pembanding II yang telah
memberikan kritik dan saran terhadap skripsi penulis.
8.
Bapak M. Andri Budiman, ST, M. Comp. Sc., M.E.M selaku dosen
Pembimbing Akademik penulis dan juga atas nasehat, arahan dan bimbingan
beliau kepada penulis selama penulis berada dalam masa pendidikan.
9.
Seluruh dosen S-1 Ilmu Komputer atas semua ilmu yang telah diberikan
Universitas Sumatera Utara
iv
kepada penulis selama masa pendidikan di S-1 Ilmu Komputer USU.
10. Seluruh staf pegawai Fakultas Ilmu Komputer dan Teknologi Informasi,
terkhusus buat abangda Faisal Hamid dan kakanda Dwi.
11. Adik tersayang Mujurwati yang telah memberikan dukungan terhadap
penulis agar dapat menyelesaikan skripsi ini.
12. Sahabat-sahabat luar biasa Boris Mario, Ricky Wijaya, Al Mizfar, Dina
Meiladya Rizky dan beberapa asisten IKLC yang selalu memberi motivasi
dan nasehat kepada penulis.
13. Teman – teman seperjuangan mahasiswa S-1 Ilmu Komputer stambuk 2012
yang selalu memberi dukungan.
14. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat
penulis ucapkan satu per satu yang telah membantu menyelesaikan skripsi
ini.
Penulis menyadari bahwa skripsi ini masih memiliki banyak kekurangan, baik dari
segi teknik, tata penyajian ataupun dari segi tata bahasa. Oleh karena itu penulis
bersedia menerima kritik dan saran dari pembaca dalam upaya perbaikan skripsi ini.
Semoga skripsi ini dapat bermanfaat bagi penulis dan pembaca, khususnya rekanrekan mahasiswa lainnya yang mengikuti perkuliahan di Universitas Sumatera Utara.
Medan, 6 Agustus 2016
Penulis
Johan Surya
NIM. 121401095
Universitas Sumatera Utara
v
ABSTRAK
Kemudahan dalam mengakses internet menyebabkan pertukaran citra digital semakin
tidak terkendali, padahal banyak di antara citra – citra digital tersebut yang bersifat
privasi. Hal ini tentunya dapat menjadi masalah apabila citra – citra digital tersebut
dimanipulasi secara tidak bertanggung jawab. Pada penelitian ini, masalah yang
diangkat adalah penyembunyian gambar rahasia dengan metode steganografi Least
Significant Bit (LSB). Metode steganografi LSB hanya menggantikan nilai bit terakhir
pada setiap barisan bit sehingga setiap penyisipan data sebesar 1 byte membutuhkan
ukuran penampung yang lebih besar yaitu 8 byte. Algoritma kompresi Huffman
Coding dapat digunakan untuk mengecilkan ukuran data. Aplikasi ini dibangun
dengan menggunakan bahasa pemograman C#. Hasil penelitian menunjukkan bahwa
metode LSB dan algoritma Huffman Coding dapat dikombinasikan dengan baik
sehingga ukuran gambar yang digunakan sebagai penampung gambar rahasia bisa
dikecilkan dimana rata – rata hasil kompresinya adalah 56.15% untuk Compressed
Ratio (Cr), 3.96 untuk Ratio of Compression (Rc), 43.85% untuk Redundancy (Rd),
0.44 untuk Space Savings, dan 1.6 ms untuk waktu kompresi dan hasil penelitian juga
menunjukkan bahwa penyisipan dengan metode LSB sulit dideteksi oleh mata yang
ditunjukkan dari hasil kuesioner yang menunjukkan 191 dari 200 gambar yang disisipi
gambar terlihat sama pada penelitian ini.
Kata kunci: Steganografi, LSB, Least Significant Bit, Huffman Coding
Universitas Sumatera Utara
vi
AN IMPLEMENTATION OF HUFFMAN CODING ALGORITHM AND
LEAST SIGNIFICANT BIT (LSB) METHOD FOR
HIDING BMP IMAGE TO BMP IMAGE
ABSTRACT
Ease of internet access led to digital image exchange out of control, even though those
of digital images were private. This could be a problem if those digital images were
irresponsibly manipulated. In this study, the issue of this research is hiding secret
image by Least Significant Bit (LSB) method. LSB method only change the last bit of
each bits, so it needs an 8 byte container to insert 1 byte of data. Huffman Coding
compression algorithm can be use to minimize the size of data. This application is
built using C# programming language. The results showed that the Huffman Coding
algorithm and LSB method can be combined so well that the size of the image used as
container for the secret image can be scaled down where the average result of the
compression is 56.15% for Compressed Ratio (Cr), 3.96 for Ratio of Compression
(Rc), 43.85% for Redundancy(Rd), 0.44 for Space Savings, and 1.6 ms for
compression time and the results also showed that the LSB insertion method is
difficult to detect by eyes. From the results of the questionnaires show that 191 of 200
images inserted image looks same in this research.
Keywords : Steganography, LSB, Least Significant Bit, Huffman Coding
Universitas Sumatera Utara
vii
DAFTAR ISI
Halaman
Persetujuan
i
Pernyataan
ii
Ucapan Terima Kasih
iii
Abstrak
v
Abstract
vi
Daftar Isi
vii
Daftar Tabel
x
Daftar Gambar
xii
Daftar Lampiran
xiv
Bab 1
Bab 2
Pendahuluan
1.1 Latar Belakang
1
1.2 Rumusan Masalah
2
1.3 Batasan Masalah
2
1.4 Tujuan Penelitian
3
1.5 Manfaat Penelitian
3
1.6 Metodologi Penelitian
3
1.7 Sistematika Penulisan
4
Landasan Teori
2.1 Citra
6
2.1.1 Jenis Citra Digital
6
2.1.2 Format File Citra
8
2.2 Steganografi
9
2.2.1 Konsep Dan Terminologi
10
2.2.2 Kriteria Penyembunyian Pesan
10
2.2.3 Teknik Steganografi
11
2.2.4 Metode LSB
12
2.3 Kompresi Data
14
Universitas Sumatera Utara
viii
2.3.1 Kompresi Lossless Dan Lossy
15
2.3.2 Kriteria Kompresi Citra
15
2.3.3 Redudansi Data
15
2.3.4 Pengukuran Kinerja Kompresi Data
16
2.3.5 Algoritma Huffman
17
2.4 Penelitian Kuantitatif
Bab 3
20
2.4.1 Pengukuran Indeks
20
2.4.2 Kuesioner
21
Analisis dan Perancangan
3.1 Analisis Sistem
22
3.1.1 Analisis Masalah
22
3.1.2 Analisis Kebutuhan Sistem
23
3.1.3 Analisis Proses
24
3.2 Perancangan Sistem
25
3.2.1 Perancangan Proses Penyembunyian Gambar
25
3.2.2 Perancangan Proses Pengungkapan Gambar
30
3.2.3 Use Case Diagram
32
3.2.4 Activity Diagram
34
3.2.5 Sequence Diagram
37
3.2.6 Perancangan Antarmuka (Interface)
Bab 4
39
Implementasi dan Pengujian
4.1 Implementasi Sistem
45
4.1.1 Antarmuka Utama
45
4.1.2 Antarmuka Penyembunyian Gambar
46
4.1.3 Antarmuka Ungkap gambar
46
4.1.4 Antarmuka Bantuan
47
4.1.5 Antarmuka Tentang
48
4.2 Pengujian Sistem
48
4.2.1 Pengujian Penyembunyian Gambar
49
4.2.2 Pengujian Pengungkapan Gambar
56
4.2.3 Aspek Imperceptibility Dan Fidelity
58
Universitas Sumatera Utara
ix
4.2.4 Aspek Recovery
Bab 5
60
Kesimpulan dan Saran
5.1 Kesimpulan
63
5.2 Saran
63
Daftar Pustaka
64
Universitas Sumatera Utara
x
DAFTAR TABEL
Halaman
Tabel 2.1
Format file grafik bitmap
8
Tabel 2.2
Nilai – nilai piksel sebelum disisipi pesan
Tabel 2.3
Nilai – nilai piksel setelah dimasukkan pesan dengan
14
metode LSB
14
Tabel 2.4
Frekuensi dari data – data dari gambar 2.5
18
Tabel 2.5
Hasil Proses Pengkodean Huffman
19
Tabel 3.1
Pseudocode pembentukan Huffman Code dari
Huffman Tree
Tabel 3.2
28
Pseudocode kompresi dengan algoritma
Huffman Coding
Tabel 3.3
29
Pseudocode penyisipan gambar dengan
Least Significant Bit (LSB)
30
Tabel 3.4
Pseudocode pengungkapan gambar
32
Tabel 4.1
Tabel data gambar rahasia
49
Tabel 4.2
Tabel data gambar setelah dilakukan filter
49
Tabel 4.3
Tabel Huffman Code
52
Tabel 4.4
Tabel isi Huffman Table
53
Tabel 4.5
Tabel Huffman Code dan frekuensinya
53
Tabel 4.6
Tabel informasi untuk proses dekompresi dalam
bentuk desimal
Tabel 4.7
54
Tabel informasi untuk proses dekompresi dalam
bentuk biner
54
Tabel 4.8
Tabel data gambar rahasia dalam bentuk biner
54
Tabel 4.9
Tabel data gambar rahasia setelah dikompresi
55
Tabel 4.10
Tabel data – data hasil kompresi
56
Tabel 4.11
Tabel proses dekompresi
57
Tabel 4.12
Tabel proses pembacaan tabel Huffman
57
Tabel 4.13
Tabel kinerja kompresi data
58
Tabel 4.14
Tabel hasil kuesioner
59
Universitas Sumatera Utara
xi
Tabel 4.15
Tabel perubahan ukuran gambar
60
Universitas Sumatera Utara
xii
DAFTAR GAMBAR
Halaman
Gambar 2.1
Contoh citra biner
6
Gambar 2.2
Contoh citra grayscale
7
Gambar 2.3
Contoh citra warna
8
Gambar 2.4
Diagram penyisipan dan ekstraksi pesan
Gambar 2.5
Contoh gambar yang akan disisipi pesan menggunakan
10
metode LSB
13
Gambar 2.6
Pohon Huffman dari tabel 2.4
19
Gambar 3.1
Diagram Ishikawa
23
Gambar 3.2
Flowchart sistem penyembunyian gambar
26
Gambar 3.3
Flowchart proses kompresi dengan Huffman Coding
27
Gambar 3.4
Flowchart proses penyisipan gambar dengan Least
Significant Bit (LSB)
28
Gambar 3.5
Flowchart proses pengungkapan gambar
31
Gambar 3.6
Diagram use case sistem
33
Gambar 3.7
Activiy diagram sembunyikan
34
Gambar 3.8
Activiy diagram ungkap
35
Gambar 3.9
Activiy diagram bantuan
36
Gambar 3.10 Activiy diagram tentang
36
Gambar 3.11 Sequence diagram penyembunyian gambar
37
Gambar 3.12 Sequence diagram pengungkapan gambar
38
Gambar 3.13 Sequence diagram bantuan
38
Gambar 3.14 Sequence diagram tentang
39
Gambar 3.15 Rancangan tampilan halaman utama
40
Gambar 3.16 Rancangan tampilan halaman penyembunyian gambar
41
Gambar 3.17 Rancangan tampilan halaman pengungkapan gambar
42
Gambar 3.18 Rancangan tampilan halaman bantuan
43
Gambar 3.19 Rancangan tampilan halaman tentang
44
Gambar 4.1
Antarmuka halaman utama sistem
45
Gambar 4.2
Antarmuka halaman penyembunyian gambar
46
Universitas Sumatera Utara
xiii
Gambar 4.3
Antarmuka halaman ungkap gambar
47
Gambar 4.4
Antarmuka halaman bantuan
47
Gambar 4.5
Antarmuka halaman tentang
48
Gambar 4.6
Gambar rahasia berukuran 2x2
48
Gambar 4.7
Gambar cover berukuran 10x10
49
Gambar 4.8
Gambar node – node setelah diurutkan
50
Gambar 4.9
Gambar proses pertama dari pembuatan Huffman Tree
50
Gambar 4.10 Gambar proses kedua dari pembuatan Huffman Tree
51
Gambar 4.11 Gambar proses ketiga dari pembuatan Huffman Tree
51
Gambar 4.12 Gambar pemberian kode pada Huffman Tree
52
Gambar 4.13 Gambar hasil penyembunyian gambar rahasia
55
Gambar 4.14 Gambar hasil pengungkapan gambar
58
Gambar 4.15 Grafik hasil kuesioner
59
Gambar 4.16 Penyembunyian gambar rahasia pertama
61
Gambar 4.17 Penyembunyian gambar rahasia kedua
61
Gambar 4.18 Pengungkapan gambar stego pertama
62
Gambar 4.19 Pengungkapan gambar stego kedua
62
Universitas Sumatera Utara
xiv
DAFTAR LAMPIRAN
Halaman
Lampiran 1
Listing Program
A-1
Lampiran 2
Curriculum Vitae
B-1
Lampiran 3
Hasil Kuesioner
C-1
Universitas Sumatera Utara
LEAST SIGNIFICANT BIT(LSB) UNTUK PENYEMBUNYIAN
CITRA BMP KE CITRA BMP
JOHAN SURYA
121401095
PROGRAM STUDI S-1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
IMPLEMENTASI ALGORITMA HUFFMAN CODING DAN METODE
LEAST SIGNIFICANT BIT (LSB) UNTUK PENYEMBUNYIAN
CITRA BMP KE CITRA BMP
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Ilmu Komputer
JOHAN SURYA
121401095
PROGRAM STUDI S-1 ILMU KOMPUTER
FAKULTAS ILMI KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
i
PERSETUJUAN
Judul
:
IMPLEMENTASI ALGORITMA HUFFMAN
CODING DAN METODE LEAST
SIGNIFICANT BIT (LSB) UNTUK
PENYEMBUNYIAN CITRA BMP KE CITRA
BMP
Kategori
:
SKRIPSI
Nama
:
JOHAN SURYA
Nomor Induk Mahasiswa
:
121401095
Program Studi
:
SARJANA (S1) ILMU KOMPUTER
Fakultas
:
ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA
UTARA
Diluluskan di
Medan,
Oktober 2016
Komisi Pembimbing :
Pembimbing 2 :
Pembimbing 1 :
Amalia, S.T, M.T
Dian Rachmawati, S.Si., M. Kom
NIP. 197812212014042001
NIP. 198307232009122004
Diketahui/disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,
Dr. Poltak Sihombing, M. Kom
NIP. 196203171991031001
Universitas Sumatera Utara
ii
PERNYATAAN
IMPLEMENTASI ALGORITMA HUFFMAN CODING DAN METODE
LEAST SIGNIFICANT BIT (LSB) UNTUK PENYEMBUNYIAN
CITRA BMP KE CITRA BMP
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing – masing telah disebutkan sumbernya.
Medan, 6 Agustus 2016
Johan Surya
121401095
Universitas Sumatera Utara
iii
UCAPAN TERIMA KASIH
Segala puji dan syukur penulis ucapkan kehadirat Tuhan Yang Maha Esa yang telah
memberikan rahmat dan karunia-Nya kepada penulis sehingga dapat menyelesaikan
skripsi ini tepat waktu sesuai dengan instruksi dan peraturan yang berlaku di Fakultas
Ilmu Komputer dan Teknologi Informasi.
Dalam penyusunan dan penulisan skripsi ini, penulis banyak mendapat
bantuan, dukungan, dan bimbingan dari berbagai pihak.Pada kesempatan ini penulis
ingin mengucapkan rasa terima kasih dan penghargaan kepada :
1.
Teristimewa orang tua yang penulis sayangi, ibunda Celiawaty dan ayahanda
Sudharmono yang tidak henti-hentinya memberikan doa, motivasi, dan
dukungan yang selalu menjadi sumber semangat penulis.
2.
Bapak Prof. Dr. Runtung Sitepu, SH, M.Hum selaku Rektor Universitas
Sumatera Utara.
3.
Bapak Prof. Dr. Opim Salim Sitompul, M.Sc sebagai Dekan Fakultas Ilmu
Komputer dan Teknologi Informasi.
4.
Bapak Dr. Poltak Sihombing, M.Kom sebagai Ketua Program Studi S-1 Ilmu
Komputer.
5.
Ibu Dian Rachmawati, S.Si,M.Kom selaku Kepala Studio Lab TA S-1 Ilmu
Komputer.
6.
Ibu Dian Rachmawati, S.Si,M.Kom selaku Dosen Pembimbing I dan Ibu
Amalia, S.T, M.T selaku Dosen Pembimbing II yang telah meluangkan
waktu, tenaga, dan pikiran dalam membimbing, mengarahkan, menasehati,
memotivasi, dan menyemangati penulis agar dapat menyelesaikan skripsi ini.
7.
Bapak Prof. Dr. Muhammad Zarlis, M.Sc selaku dosen Pembanding I dan
Bapak Drs. Dahlan Sitompul, M.Eng selaku dosen Pembanding II yang telah
memberikan kritik dan saran terhadap skripsi penulis.
8.
Bapak M. Andri Budiman, ST, M. Comp. Sc., M.E.M selaku dosen
Pembimbing Akademik penulis dan juga atas nasehat, arahan dan bimbingan
beliau kepada penulis selama penulis berada dalam masa pendidikan.
9.
Seluruh dosen S-1 Ilmu Komputer atas semua ilmu yang telah diberikan
Universitas Sumatera Utara
iv
kepada penulis selama masa pendidikan di S-1 Ilmu Komputer USU.
10. Seluruh staf pegawai Fakultas Ilmu Komputer dan Teknologi Informasi,
terkhusus buat abangda Faisal Hamid dan kakanda Dwi.
11. Adik tersayang Mujurwati yang telah memberikan dukungan terhadap
penulis agar dapat menyelesaikan skripsi ini.
12. Sahabat-sahabat luar biasa Boris Mario, Ricky Wijaya, Al Mizfar, Dina
Meiladya Rizky dan beberapa asisten IKLC yang selalu memberi motivasi
dan nasehat kepada penulis.
13. Teman – teman seperjuangan mahasiswa S-1 Ilmu Komputer stambuk 2012
yang selalu memberi dukungan.
14. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat
penulis ucapkan satu per satu yang telah membantu menyelesaikan skripsi
ini.
Penulis menyadari bahwa skripsi ini masih memiliki banyak kekurangan, baik dari
segi teknik, tata penyajian ataupun dari segi tata bahasa. Oleh karena itu penulis
bersedia menerima kritik dan saran dari pembaca dalam upaya perbaikan skripsi ini.
Semoga skripsi ini dapat bermanfaat bagi penulis dan pembaca, khususnya rekanrekan mahasiswa lainnya yang mengikuti perkuliahan di Universitas Sumatera Utara.
Medan, 6 Agustus 2016
Penulis
Johan Surya
NIM. 121401095
Universitas Sumatera Utara
v
ABSTRAK
Kemudahan dalam mengakses internet menyebabkan pertukaran citra digital semakin
tidak terkendali, padahal banyak di antara citra – citra digital tersebut yang bersifat
privasi. Hal ini tentunya dapat menjadi masalah apabila citra – citra digital tersebut
dimanipulasi secara tidak bertanggung jawab. Pada penelitian ini, masalah yang
diangkat adalah penyembunyian gambar rahasia dengan metode steganografi Least
Significant Bit (LSB). Metode steganografi LSB hanya menggantikan nilai bit terakhir
pada setiap barisan bit sehingga setiap penyisipan data sebesar 1 byte membutuhkan
ukuran penampung yang lebih besar yaitu 8 byte. Algoritma kompresi Huffman
Coding dapat digunakan untuk mengecilkan ukuran data. Aplikasi ini dibangun
dengan menggunakan bahasa pemograman C#. Hasil penelitian menunjukkan bahwa
metode LSB dan algoritma Huffman Coding dapat dikombinasikan dengan baik
sehingga ukuran gambar yang digunakan sebagai penampung gambar rahasia bisa
dikecilkan dimana rata – rata hasil kompresinya adalah 56.15% untuk Compressed
Ratio (Cr), 3.96 untuk Ratio of Compression (Rc), 43.85% untuk Redundancy (Rd),
0.44 untuk Space Savings, dan 1.6 ms untuk waktu kompresi dan hasil penelitian juga
menunjukkan bahwa penyisipan dengan metode LSB sulit dideteksi oleh mata yang
ditunjukkan dari hasil kuesioner yang menunjukkan 191 dari 200 gambar yang disisipi
gambar terlihat sama pada penelitian ini.
Kata kunci: Steganografi, LSB, Least Significant Bit, Huffman Coding
Universitas Sumatera Utara
vi
AN IMPLEMENTATION OF HUFFMAN CODING ALGORITHM AND
LEAST SIGNIFICANT BIT (LSB) METHOD FOR
HIDING BMP IMAGE TO BMP IMAGE
ABSTRACT
Ease of internet access led to digital image exchange out of control, even though those
of digital images were private. This could be a problem if those digital images were
irresponsibly manipulated. In this study, the issue of this research is hiding secret
image by Least Significant Bit (LSB) method. LSB method only change the last bit of
each bits, so it needs an 8 byte container to insert 1 byte of data. Huffman Coding
compression algorithm can be use to minimize the size of data. This application is
built using C# programming language. The results showed that the Huffman Coding
algorithm and LSB method can be combined so well that the size of the image used as
container for the secret image can be scaled down where the average result of the
compression is 56.15% for Compressed Ratio (Cr), 3.96 for Ratio of Compression
(Rc), 43.85% for Redundancy(Rd), 0.44 for Space Savings, and 1.6 ms for
compression time and the results also showed that the LSB insertion method is
difficult to detect by eyes. From the results of the questionnaires show that 191 of 200
images inserted image looks same in this research.
Keywords : Steganography, LSB, Least Significant Bit, Huffman Coding
Universitas Sumatera Utara
vii
DAFTAR ISI
Halaman
Persetujuan
i
Pernyataan
ii
Ucapan Terima Kasih
iii
Abstrak
v
Abstract
vi
Daftar Isi
vii
Daftar Tabel
x
Daftar Gambar
xii
Daftar Lampiran
xiv
Bab 1
Bab 2
Pendahuluan
1.1 Latar Belakang
1
1.2 Rumusan Masalah
2
1.3 Batasan Masalah
2
1.4 Tujuan Penelitian
3
1.5 Manfaat Penelitian
3
1.6 Metodologi Penelitian
3
1.7 Sistematika Penulisan
4
Landasan Teori
2.1 Citra
6
2.1.1 Jenis Citra Digital
6
2.1.2 Format File Citra
8
2.2 Steganografi
9
2.2.1 Konsep Dan Terminologi
10
2.2.2 Kriteria Penyembunyian Pesan
10
2.2.3 Teknik Steganografi
11
2.2.4 Metode LSB
12
2.3 Kompresi Data
14
Universitas Sumatera Utara
viii
2.3.1 Kompresi Lossless Dan Lossy
15
2.3.2 Kriteria Kompresi Citra
15
2.3.3 Redudansi Data
15
2.3.4 Pengukuran Kinerja Kompresi Data
16
2.3.5 Algoritma Huffman
17
2.4 Penelitian Kuantitatif
Bab 3
20
2.4.1 Pengukuran Indeks
20
2.4.2 Kuesioner
21
Analisis dan Perancangan
3.1 Analisis Sistem
22
3.1.1 Analisis Masalah
22
3.1.2 Analisis Kebutuhan Sistem
23
3.1.3 Analisis Proses
24
3.2 Perancangan Sistem
25
3.2.1 Perancangan Proses Penyembunyian Gambar
25
3.2.2 Perancangan Proses Pengungkapan Gambar
30
3.2.3 Use Case Diagram
32
3.2.4 Activity Diagram
34
3.2.5 Sequence Diagram
37
3.2.6 Perancangan Antarmuka (Interface)
Bab 4
39
Implementasi dan Pengujian
4.1 Implementasi Sistem
45
4.1.1 Antarmuka Utama
45
4.1.2 Antarmuka Penyembunyian Gambar
46
4.1.3 Antarmuka Ungkap gambar
46
4.1.4 Antarmuka Bantuan
47
4.1.5 Antarmuka Tentang
48
4.2 Pengujian Sistem
48
4.2.1 Pengujian Penyembunyian Gambar
49
4.2.2 Pengujian Pengungkapan Gambar
56
4.2.3 Aspek Imperceptibility Dan Fidelity
58
Universitas Sumatera Utara
ix
4.2.4 Aspek Recovery
Bab 5
60
Kesimpulan dan Saran
5.1 Kesimpulan
63
5.2 Saran
63
Daftar Pustaka
64
Universitas Sumatera Utara
x
DAFTAR TABEL
Halaman
Tabel 2.1
Format file grafik bitmap
8
Tabel 2.2
Nilai – nilai piksel sebelum disisipi pesan
Tabel 2.3
Nilai – nilai piksel setelah dimasukkan pesan dengan
14
metode LSB
14
Tabel 2.4
Frekuensi dari data – data dari gambar 2.5
18
Tabel 2.5
Hasil Proses Pengkodean Huffman
19
Tabel 3.1
Pseudocode pembentukan Huffman Code dari
Huffman Tree
Tabel 3.2
28
Pseudocode kompresi dengan algoritma
Huffman Coding
Tabel 3.3
29
Pseudocode penyisipan gambar dengan
Least Significant Bit (LSB)
30
Tabel 3.4
Pseudocode pengungkapan gambar
32
Tabel 4.1
Tabel data gambar rahasia
49
Tabel 4.2
Tabel data gambar setelah dilakukan filter
49
Tabel 4.3
Tabel Huffman Code
52
Tabel 4.4
Tabel isi Huffman Table
53
Tabel 4.5
Tabel Huffman Code dan frekuensinya
53
Tabel 4.6
Tabel informasi untuk proses dekompresi dalam
bentuk desimal
Tabel 4.7
54
Tabel informasi untuk proses dekompresi dalam
bentuk biner
54
Tabel 4.8
Tabel data gambar rahasia dalam bentuk biner
54
Tabel 4.9
Tabel data gambar rahasia setelah dikompresi
55
Tabel 4.10
Tabel data – data hasil kompresi
56
Tabel 4.11
Tabel proses dekompresi
57
Tabel 4.12
Tabel proses pembacaan tabel Huffman
57
Tabel 4.13
Tabel kinerja kompresi data
58
Tabel 4.14
Tabel hasil kuesioner
59
Universitas Sumatera Utara
xi
Tabel 4.15
Tabel perubahan ukuran gambar
60
Universitas Sumatera Utara
xii
DAFTAR GAMBAR
Halaman
Gambar 2.1
Contoh citra biner
6
Gambar 2.2
Contoh citra grayscale
7
Gambar 2.3
Contoh citra warna
8
Gambar 2.4
Diagram penyisipan dan ekstraksi pesan
Gambar 2.5
Contoh gambar yang akan disisipi pesan menggunakan
10
metode LSB
13
Gambar 2.6
Pohon Huffman dari tabel 2.4
19
Gambar 3.1
Diagram Ishikawa
23
Gambar 3.2
Flowchart sistem penyembunyian gambar
26
Gambar 3.3
Flowchart proses kompresi dengan Huffman Coding
27
Gambar 3.4
Flowchart proses penyisipan gambar dengan Least
Significant Bit (LSB)
28
Gambar 3.5
Flowchart proses pengungkapan gambar
31
Gambar 3.6
Diagram use case sistem
33
Gambar 3.7
Activiy diagram sembunyikan
34
Gambar 3.8
Activiy diagram ungkap
35
Gambar 3.9
Activiy diagram bantuan
36
Gambar 3.10 Activiy diagram tentang
36
Gambar 3.11 Sequence diagram penyembunyian gambar
37
Gambar 3.12 Sequence diagram pengungkapan gambar
38
Gambar 3.13 Sequence diagram bantuan
38
Gambar 3.14 Sequence diagram tentang
39
Gambar 3.15 Rancangan tampilan halaman utama
40
Gambar 3.16 Rancangan tampilan halaman penyembunyian gambar
41
Gambar 3.17 Rancangan tampilan halaman pengungkapan gambar
42
Gambar 3.18 Rancangan tampilan halaman bantuan
43
Gambar 3.19 Rancangan tampilan halaman tentang
44
Gambar 4.1
Antarmuka halaman utama sistem
45
Gambar 4.2
Antarmuka halaman penyembunyian gambar
46
Universitas Sumatera Utara
xiii
Gambar 4.3
Antarmuka halaman ungkap gambar
47
Gambar 4.4
Antarmuka halaman bantuan
47
Gambar 4.5
Antarmuka halaman tentang
48
Gambar 4.6
Gambar rahasia berukuran 2x2
48
Gambar 4.7
Gambar cover berukuran 10x10
49
Gambar 4.8
Gambar node – node setelah diurutkan
50
Gambar 4.9
Gambar proses pertama dari pembuatan Huffman Tree
50
Gambar 4.10 Gambar proses kedua dari pembuatan Huffman Tree
51
Gambar 4.11 Gambar proses ketiga dari pembuatan Huffman Tree
51
Gambar 4.12 Gambar pemberian kode pada Huffman Tree
52
Gambar 4.13 Gambar hasil penyembunyian gambar rahasia
55
Gambar 4.14 Gambar hasil pengungkapan gambar
58
Gambar 4.15 Grafik hasil kuesioner
59
Gambar 4.16 Penyembunyian gambar rahasia pertama
61
Gambar 4.17 Penyembunyian gambar rahasia kedua
61
Gambar 4.18 Pengungkapan gambar stego pertama
62
Gambar 4.19 Pengungkapan gambar stego kedua
62
Universitas Sumatera Utara
xiv
DAFTAR LAMPIRAN
Halaman
Lampiran 1
Listing Program
A-1
Lampiran 2
Curriculum Vitae
B-1
Lampiran 3
Hasil Kuesioner
C-1
Universitas Sumatera Utara