Pembangunan Perangkat Lunak Steganografi Audio MP3 dengan Teknik Parity Coding pada Perangkat Mobile Phone
LAPORAN TUGAS AKHIR
Disusun sebagai syarat kelulusan tingkat sarjana
oleh : Herianto / 13504077
PROGRAM STUDI TEKNIK INFORMATIKA SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA INSTITUT TEKNOLOGI BANDUNG 2009
Lembar Pengesahan Program Studi Sarjana Informatika
Pembangunan Perangkat Lunak Steganografi Audio MP3 dengan Teknik Parity Coding pada Perangkat Mobile Phone
Tugas Akhir Program Studi Sarjana Informatika ITB
Oleh : Herianto / 13504077
Telah disetujui dan disahkan sebagai laporan tugas akhir di Bandung, pada tanggal 25 Maret 2009
Pembimbing
Ir. Rinaldi Munir M.T. NIP. 132084796
ii
RINGKASAN Aktivitas pertukaran informasi yang sangat besar memacu adanya pengembangan teknologi informasi untuk bisa menjaga kualitas pengiriman informasi. Kualitas yang dimaksud mengarah kepada keamanan sewaktu pengiriman informasi sehingga data yang dipertukarkan benar-benar tidak mengalami intervensi dari pihak lain yang tidak mempunyai previleges akan data tersebut. Salah satu ilmu yang dipakai sebagai dasar untuk mengembangkan teknologi pengamanan pengiriman data adalah steganografi. Pada Tugas Akhir ini dilakukan studi mengenai penerapan steganografi dengan teknik Parity Coding pada media audio MP3 yang diimplementasikan diatas perangkat mobile phone. Oleh karena itu diperlukan juga studi terhadap representasi dan struktur MP3 tersebut beserta strategi penerapannya pada perangkat mobile phone .
Perangkat lunak yang dikembangkan pada Tugas Akhir ini bernama TangoStego yang berfungsi untuk melakukan steganografi pada media audio MP3. Pada Tugas Akhir ini, implementasi steganografi akan disertai dengan penerapan kriptografi berupa enkripsi dan dekripsi. Pesan yang sudah dienkripsi terlebih dahulu akan disembunyikan secara merata pada setiap region pada MP3 yang sudah dibagi. Pembagian ini akan disesuaikan dengan panjang bit pesan beserta struktur dan jumlah frame yang ada. Pesan yang nantinya diekstraksi dari region harus didekripsi lagi agar mendapatkan pesan asli. Objek steganografi yang dihasilkan mengandung noise yang terlihat dari penurunan nilai kekuatan sinyal sehingga nilai PSNR cenderung menurun jika kapasitas pesan yang disembunyikan semakin besar dan sebaliknya. Perangkat lunak ini dikembangkan pada platform Windows XP Professional dan dibangun menggunakan Netbeans IDE 6.1.
Dari Tugas Akhir ini dapat disimpulkan bahwa perangkat lunak TangoStego telah dikembangkan dengan baik dan dapat menjalankan fungsinya dengan benar. TangoStego dapat melakukan enkripsi, penyembunyian, ekstraksi dan dekripsi pesan dengan menggunakan kunci yang sama.
Kata kunci : steganografi, Parity Coding, MP3, mobile phone, kriptografi, PSNR iii
KATA PENGANTAR Tugas Akhir ini adalah sebuah karya yang merupakan hasil jerih payah dari tenaga dan pikiran manusia. Namun penulis tidak bisa menyangkal ada anugerah yang melimpah dari Allah Bapa, kasih dari Allah Kristus dan penyertaan dari Rohul Kudus yang memberikan kekuatan pada kelemahan dan keterbatasan penulis sampai selesainya pengerjaan Tugas Akhir ini dengan baik dan benar. Penulisan laporan ini ditujukan untuk member gambaran tentang pelaksanaan Tugas Akhir.
Dalam pengerjaan Tugas Akhir penulis membutuhkan bantuan berbagai pihak. Sekecil apapun kontribusi mereka merupakan suatu berkat yang sangat bernilai bagi penulis. Atas terselesaikannya laporan ini, penulis ingin mengucapkan terima kasih kepada : 1. Pargaulan Marbun, Ramina Sinaga, Melva, Nelly, Floryanti, Devita dan segenap keluarga atas suntikan moral dan inspirasi beserta kasih sayang yang tiada hentinya diberikan kepada penulis sampai saat ini 2. Ibu Dr. Ir. G. A. Putri Saptawati, M.Comm selaku Ketua Program Studi Teknik Informatika ITB. 3. Bapak Ir. Rinaldi Munir, M.T. selaku dosen pembimbing atas arahan dan bimbingan dengan rasa sabar yang selalu diberikan kepada penulis selama penyusunan Tugas Akhir. 4. Bapak Ibu Masayu Leylia Kodra, S.T., M.T. dan Ibu Dra. Harlili, M. Sc. selaku dosen penguji pada Tugas Akhir ini atas seluruh masukan dan arahannya. 5. Ibu Dra. Christine Suryadi M.Sc selaku dosen wali yang telah menemani perjalanan panjang penulis selama 4 tahun di Teknik Informatika. 6. Seluruh dosen program studi Teknik Informatika yang telah memberikan pengetahuan yang didikan yang sangat berharga bagi penulis. 7. Paul Gunawan Heryanto yang sangat berjasa membantu penulis dalam pengerjaan Tugas Akhir 8. Stefanus Astrianto dan Komang Gita Agastya selaku teman sekosan yang selalu menemani hidup keseharian saya
iv
9. Heryanto, Ahmad Zufri, Ronald, Prasetyo, Devis, Joel, Yosep yang selalu siap membantu dalam pengerjaan Tugas Akhir 10. Teman-teman angkatan IF2004 yang telah menemani penulis dalam perkuliahan pada program studi Teknik Informatika 11. Arya Widyanarko, Rangga Wisnu, Odit Ekwardo, Yulie Anneria dan Dadan Ramdan dan Tara Baskara sebagai teman seperjuangan penulis dalam mengerjakan Tugas Akhir. 12. Rekan-rekan tim sepakbola HMIF atas keceriaan, kemenangan, kesedihan dan luka-luka yang diperoleh penulis disela-sela kuliah dan pengerjaan Tugas Akhir. 13. Teman-teman HMIF dan Informatika ITB yang tidak dapat disebutkan satu persatu. 14. Segenap staf dan karyawan Tata Usaha di lingkungan Teknik Informatika, terutama Pak Ade, Pak Rasidi, Bu Titi, Pak Maman, dan Pak Wawan. 15. Catherine Tobing yang setia menemani penulis sepanjang waktu dalam suka dan duka.
Semoga Tugas Akhir ini dapat memberikan manfaat bagi semua pihak yang membutuhkannya. Penulis menyadari bahwa Tugas Akhir ini masih memiliki banyak kekurangan. Oleh karena itu, kritik dan saran dari pembaca sangat penulis harapkan. Bandung, Maret 2009
Penulis
v
DAFTAR ISI Lembar Pengesahan.....................................................................................................ii RINGKASAN ............................................................................................................. iii KATA PENGANTAR ................................................................................................. iv DAFTAR ISI................................................................................................................ vi DAFTAR GAMBAR ................................................................................................ viii DAFTAR TABEL ....................................................................................................... ix DAFTAR ISTILAH ..................................................................................................... x BAB I PENDAHULUAN.......................................................................................... I-1 1.1
Latar Belakang............................................................................................... I-1
1.2
Rumusan Masalah.......................................................................................... I-2
1.3
Tujuan ............................................................................................................ I-2
1.4
Batasan Masalah ............................................................................................ I-3
1.5
Metodologi..................................................................................................... I-3
1.6
Sistematika Pembahasan................................................................................ I-4
BAB II DASAR TEORI.......................................................................................... II-1 2.1
Audio ............................................................................................................ II-1
2.1.1
Suara Dijital ........................................................................................ II-1
2.1.2
Format Berkas Audio.......................................................................... II-2
2.2
Steganografi .................................................................................................. II-3
2.2.1
Sejarah Steganografi ........................................................................... II-3
2.2.2
Teknik-teknik steganografi audio ....................................................... II-4
2.3
Teknik Parity Coding ................................................................................... II-7
2.3.1
Parity Bit ............................................................................................ II-7
2.3.2
Parity Coding ..................................................................................... II-8
2.4
Pembangkitan Bilangan Acak ...................................................................... II-9
2.5
Enkripsi dan Dekripsi ECB ....................................................................... II-10
BAB III ANALISIS PENYELESAIAN MASALAH .......................................... III-1 3.1
Analisis Penyembunyian Pesan .................................................................. III-1
3.1.1
Enkripsi Pesan .................................................................................. III-2
3.1.2
Penyembunyian Pesan ...................................................................... III-3
3.2
Analisis Ektraksi Pesan .............................................................................. III-6 vi
3.2.1
Ekstraksi Pesan ................................................................................. III-6
3.2.2
Dekripsi Pesan .................................................................................. III-6
3.3
Analisis Implementasi Platform Mobile Phone.......................................... III-7
BAB IV ANALISIS DAN PERANCANGAN PERANGKAT LUNAK ............ IV-1 4.1
Analisis Perangkat Lunak ........................................................................... IV-1
4.1.1
Deskripsi Umum Sistem ................................................................... IV-1
4.1.2
Arsitektur Perangkat Lunak .............................................................. IV-2
4.1.3
Kebutuhan Perangkat Lunak ............................................................ IV-3
4.1.4
Diagram Use Case ............................................................................ IV-3
4.1.5
Analisis Kelas ................................................................................... IV-5
4.2
Perancangan Perangkat Lunak.................................................................. IV-10
4.2.1
Perancangan Antarmuka ................................................................. IV-10
4.2.2
Perancangan Kelas .......................................................................... IV-12
BAB V IMPLEMENTASI DAN PENGUJIAN.....................................................V-1 5.1
Implementasi ................................................................................................V-1
5.1.1
Lingkungan implementasi ..................................................................V-1
5.1.2
Implementasi kelas .............................................................................V-1
5.1.3
Batasan Implementasi .........................................................................V-3
5.1.4
Implementasi Antarmuka ...................................................................V-3
5.2
Pengujian Perangkat Lunak ..........................................................................V-6
5.2.1
Lingkungan Pengujian ........................................................................V-6
5.2.2
Tujuan Pengujian ................................................................................V-6
5.2.3
Data Uji...............................................................................................V-6
5.2.4
Kasus Uji ............................................................................................V-8
5.2.5
Hasil Pengujian ...................................................................................V-9
5.2.6
Evaluasi Hasil Pengujian ..................................................................V-11
BAB VI PENUTUP ................................................................................................ VI-1 6.1
Kesimpulan ................................................................................................. VI-1
6.2
Saran ........................................................................................................... VI-1
DAFTAR REFERENSI .............................................................................................. xi DAFTAR PUSTAKA .................................................................................................xii LAMPIRAN A. SPESIFIKASI BERKAS MP3 .................................................A-1 LAMPIRAN B. KELAS PERANCANGAN ....................................................... B-1 vii
DAFTAR GAMBAR Gambar II-1 Pengaturan bit-bit LSB [GIB02] ........................................................... II-4 Gambar II-2 Penyebaran bit-bit dengan faktor pengali cr [FLI97]............................ II-6 Gambar II-3 Penyembunyian pesan dengan Parity Coding ...................................... II-9 Gambar II-4 Diagram proses enkripsi dan dekripsi ECB [MUN04] ....................... II-11 Gambar III-1 Alur Proses Penyembunyian Pesan ................................................... III-1 Gambar III-2 Struktur frame dalam region-region .................................................. III-4 Gambar IV-1 Deskripsi Umum Sistem .................................................................... IV-2 Gambar IV-2 Arsitektur TangoStego....................................................................... IV-3 Gambar IV-3 Diagram Use Case ............................................................................. IV-4 Gambar IV-4 Kelas Analisis pada Penyembunyian Pesan ...................................... IV-7 Gambar IV-5 Kelas Analisis pada Ekstraksi Pesan ................................................. IV-8 Gambar IV-6 Kelas Analisis Keseluruhan ............................................................... IV-9 Gambar IV-7 Rancangan Antarmuka Menu Utama .............................................. IV-10 Gambar IV-8 Rancangan Antarmuka Modul Penyembunyian Pesan.................... IV-11 Gambar IV-9 Diagram Kelas Perancangan............................................................ IV-14 Gambar V-1 Implementasi Antarmuka Modul Penyembunyian ...............................V-4 Gambar V-2 Implementasi Antarmuka Menu Utama ................................................V-5 Gambar V-3 Implementasi Antarmuka Menu Utama ................................................V-5 Gambar V-4 Implementasi Antarmuka Layar Konfirmasi, Layar Notifikasi Error, dan Layar Waiting Screen .................................................................................................V-5
viii
DAFTAR TABEL Tabel II-1 Klasifikasi audio berdasarkan frekuensi [MUK08] .................................. II-1 Tabel IV-1 Narasi Use Case .................................................................................... IV-5 Tabel IV-2 Daftar Kelas Perancangan ................................................................... IV-13 Tabel V-1 Implementasi kelas-kelas perancangan ....................................................V-2 Tabel V-2 Hasil Pengujian Kasus 1 (Penyembunyian Pesan) ...................................V-9 Tabel V-3 Hasil pengujian kasus 1 (Ekstraksi Pesan) .............................................V-10 Tabel V-4 Hasil Pengujian Kasus 2 .........................................................................V-10
ix
DAFTAR ISTILAH Istilah Audio Accoustic Signal Aliasing Amplitudo Analog To Digital Conversion (ADC) Decibel (dB) Digital To Analog Converter (DAC) Distorsi Echo Frekuensi Hertz (Hz) Kuantisasi Noise Parity Pencuplikan Pseudonoise Pseudorandom Sampling rate Serial Communications
Padanan Kata Suara yang berada pada jangkauan pendengaran manusia. Gelombang dari audio. Jenis distorsi yang terjadi ketika menyimpan frekuensi tinggi. Ukuran terhadap keras lemahnya bunyi, atau tinggi rendahnya suatu gelombang. Proses pengubahan amplitudo gelombang bunyi ke dalam waktu interval tertentu. Satuan dari amplitudo Proses merubah representasi dijital menjadi sinyal analog. Gangguan suara. Gema suara Banyaknya gelombang yang berpola sama yang berulang per satuan detik. Satuan dari frekuensi. Proses pembulatan ke nilai diskrit. Suara yang berada di luar jangkauan pendengaran manusia (derau). Konsep kesamaan status dari suatu persamaan fungsi Perhitungan ulang sample dari berkas audio. Derau semu. Bilangan acak semu. Nilai kerapatan pencuplikan. Proses pengiriman data sebesar satu bit pada suatu waktu secara sekuensial melalui canel komunikasi
x