JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
1
Penyembunyian Pesan Rahasia yang Terenkripsi Menggunakan Algoritma RSA pada Media Kompresi Arya Reza Nugraha dan Ary Mazharuddin S. Jurusan Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember (ITS) Jl. Arief Rahman Hakim, Surabaya 60111 e-mail:
[email protected]
Abstrak—Saat ini, banyak sekali cara dan sarana pengiriman suatu pesan. Kita dengan mudah dapat mengirim dan menerima suatu pesan. Tetapi, semua kenyamanan akan pengiriman suatu pesan akan sangat berpengaruh ketika data atau pesan yang akan dikirimkan bersifat rahasia dan hanya orang tertentu saja yang boleh tahu pesan tersebut, terutama jika data atau pesan tadi merupakan pesan yang berisi informasi penting yang akan dikirimkan dan informasi tersebut tidak boleh diketahui isinya serta tidak jatuh ke tangan orang yang tidak bertanggung jawab. Untuk itu diperlukan suatu cara untuk mengamankan pesan rahasia tadi agar tidak diketahui oleh orang yang tidak berkepentingan. Penyembunyian pesan rahasia yang berupa file dalam arsip ZIP dapat menjadi salah satu solusi untuk keamanan data yang bersifat rahasia jika data tersebut ingin dikirimkan. Arsip ZIP merupakan kumpulan dari beberapa file yang terkompresi dimana ukuran dari file-file tersebut beragam. Biasanya orang tidak memperhatikan ukuran file dari arsip ZIP karena ukuran dari file-file di dalam arsip ZIP tersebut terkompresi. Dari hasil uji coba yang dilakukan, file yang berisi pesan rahasia berhasil disembunyikan pada arsip ZIP serta tidak akan terbaca pada aplikasi pembaca arsip ZIP. Kata Kunci—Kriptografi, Media Kompresi, Pesan Rahasia, RSA
I. PENDAHULUAN
D
AHULU dalam mengirimkan suatu informasi rahasia yang berupa pesan, pengirim menggunakan teknik kriptografi untuk menyamarkan arti dari pesan tersebut sehingga apabila ada pihak-pihak tertentu yang mencoba untuk membaca pesan rahasia tadi, pihak tersebut akan kebingungan dengan isi pesan rahasia. Hanya pihak penerima yang mengetahui teknik kriptografi yang digunakan yang dapat membaca arti dari suatu informasi rahasia tersebut. Tetapi tidak selamanya pesan rahasia tersebut terjamin keamanannya, karena teknik kriptografi memiliki kelemahan, yaitu pesan rahasia yang telah disamarkan tidak disembunyikan, sehingga akan menimbulkan kecurigaan. Maka dari itu, pencarian cara komunikasi yang aman dan rahasia menjadi sangat penting saat ini. Penyembunyian pesan rahasia yang berupa file dalam arsip ZIP dapat menjadi salah satu solusi untuk keamanan data yang bersifat rahasia jika data tersebut ingin dikirimkan. Arsip ZIP merupakan kumpulan dari beberapa file yang terkompresi dimana ukuran dari file tersebut beragam. Biasanya orang tidak akan memperhatikan ukuran file dari arsip ZIP karena
ukuran dari file di dalam arsip ZIP tersebut terkompresi. Oleh karena itu, pada artikel ini akan dibuat aplikasi penyembunyian informasi rahasia pada media yang terkompresi di mana file yang berisi pesan rahasia akan disembunyikan dalam arsip ZIP sehingga file tersebut tidak akan bisa dilihat oleh aplikasi ZIP yang ada serta tidak dapat di-extract pada penyimpanan lokal oleh aplikasi ZIP yang ada. Tentu saja isi pesan yang terdapat pada file tersembunyi tadi akan dienkripsi terlebih dahulu dengan menggunakan metode enksripsi RSA sehingga keamanan dari isi pesan tadi lebih kuat dan aman. II. TINJAUAN PUSTAKA A. Teori Dasar Kompresi Kompresi data merupakan cabang ilmu komputer yang bersumber dari teori informasi. Teori informasi sendiri adalah salah satu cabang matematika yang berkembang sekitar akhir dekade 1940-an. Tokoh utama dari teori informasi adalah Claude Shannon dari Bell Laboratory. Teori informasi memusatkan pada berbagai metode tentang informasi termasuk penyimpanan dan pemrosesan pesan. Teori informasi mempelajari pula tentang pengulangan data pada pesan. Semakin banyak pengulangan data semakin besar pula ukuran pesan, upaya mengurangi pengurangan data inilah yang akhirnya melahirkan subjek ilmu tentang kompresi data [3]. Pemampatan data atau kompresi data (data compression) bertujuan meminimalkan kebutuhan memori untuk merepresentasikan data digital. Prinsip umum yang digunakan pada proses kompresi adalah mengurangi duplikasi data sehingga memori untuk merepresentasikan menjadi lebih sedikit daripada representasi data digital semula [2]. B. Enkripsi RSA RSA merupakan algoritma enkripsi yang termasuk jenis asimetris. Proses enkripsi dan dekripsi dari algortima RSA menggunakan key yang berbeda. Proses enkripsi menggunakan sebuah public key sedangkan pada proses dekripsi dibutuhkan sebuah private key. Kriptografi public key yang paling banyak digunakan ialah RSA [1]. Tingkat kesulitan untuk menyerang enkripsi RSA bergantung pada sulitnya pencarian faktor bilangan prima yang digunakan untuk enkripsi ini.
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
2 Start
File
Make Invisible No
Yes Encrypt
Compress File
Gambar 1. Struktur ZIP Normal ZIP Archieve
End
Gambar 3. Alur kerja pada proses penyembunyian informasi
Start
Open ZIP Archieve
Extract
Gambar 2. Struktur ZIP Modifikasi
Algoritma RSA ditemukan oleh Ron Rivest, Adi Shamir, dan Len Adleman pada tahun 1977 di Massachusetts Institute of Technology (MIT) dan dipublikasikan pada tahun 1978 [7]. RSA menggunakan dua buah bilangan bulat prima untuk mendapatkan public key dan private key yang akan digunakan dalam proses enkripsi dan dekripsi pesan. RSA digunakan pada aplikasi ini untuk mengenkripsi pesan rahasia yang berupa file agar keamanan dari pesan rahasia tadi semakin kuat. Proses dari enkripsi dilakukan sebelum file rahasia disembunyikan pada arsip ZIP. C. Struktur Arsip ZIP Kumpulan data-data atau file yang telah melalui proses kompresi biasanya berbentuk sebuah arsip ZIP. Pembuatan arsip ZIP ini dibantu oleh aplikasi pemampatan data seperti Winrar, Winzip, Filezip, 7Zip, dan masih banyak lagi. Struktur dari arsip ZIP yang dibuat oleh aplikasi ZIP yang ada semua sama. Suatu file ZIP yang dibuat oleh aplikasi ZIP yang umumnya digunakan terdiri dari local file header, local file, dan central directory [5]. Ketika aplikasi ZIP seperti Winzip atau Filezip membuka sebuah arsip ZIP, aplikasi akan membaca directory dari arsip ZIP tersebut terlebih dahulu. Directory tersebut berisi pointer untuk file yang ada dalam arsip ZIP. Ketika arsip ZIP tersebut di-extract, aplikasi ZIP akan membaca terlebih dahulu isi dari directory, kemudian membaca local file yang ditunjuk oleh pointer yang ada pada directory sehingga local file dapat dibaca oleh aplikasi dan dapat melalui proses dekompresi untuk mengembalikan ukuran file tersebut ke ukuran aslinya. Apabila ada file yang tidak terdaftar pada directory, file tersebut tidak akan
File
Found Encrypted File
No
End
Yes Decrypt File
File
Gambar 4. Alur kerja pada proses pengambilan informasi
terdaftar dan terbaca pada aplikasi ZIP. Gambar 1 dan Gambar 2 menunjukkan perbedaan antara struktur arsip ZIP pada umumnya dengan struktur arsip ZIP yang telah dimodifikasi sehingga file yang berisi pesan rahasia tidak akan terbaca oleh aplikasi ZIP yang ada. III. PERANCANGAN SISTEM Alur kerja pada proses penyembunyian informasi dapat dilihat pada Gambar 3. Sedangkan alur kerja pada proses pengambilan informasi dapat dilihat pada Gambar 4. Alur kerja proses penyembunyian informasi pada aplikasi ini dapat dijelaskan pada langkah-langkah berikut: 1. Pilih file yang akan dimasukkan ke dalam arsip ZIP. 2. Jika file ingin disembunyikan, maka file tersebut harus terenkripsi terlebih dahulu. 3. File yang telah terenkripsi akan melalui proses kompresi bersama dengan file lain yang tidak berisi pesan rahasia. 4. Arsip ZIP telah dibuat dan file rahasia tersembunyi setelah proses kompresi.
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
3
Tabel 1. Informasi Aplikasi ZIP Uji Coba Nama Aplikasi
Versi Aplikasi yang Digunakan
Winrar Winzip 7-Zip Power Archiver
5.00 Beta 7 (32-bit) 17.5.10480 9.22 Beta (32-bit) 14.00.20 Beta 4
Tabel 2. Keterangan data uji coba
Gambar 5. Antarmuka aplikasi
Alur kerja proses pengambilan informasi pada aplikasi ini dapat dijelaskan pada langkah-langkah berikut: 1. Pilih arsip ZIP yang berisi pesan rahasia dan buka arsip ZIP tersebut. 2. Extract pesan yang berada di dalam arsip ZIP tersebut. 3. Apabila terdapat file yang berisi pesan rahasia, maka file yang telah terenkripsi harus melalui proses dekripsi terlebih dahulu. 4. File rahasia telah melalui proses dekripsi sehingga pesan dapat terbaca. Tampilan antarmuka (interface) aplikasi ini dapat dilihat pada Gambar 5. Keterangan dari Gambar 5: 1. Pada bagian RSA generator, digunakan untuk mendapatkan public key dan private key yang akan digunakan untuk proses enkripsi dan dekripsi file. Pada bagian ini juga terdapat tombol yang digunakan untuk menyimpan public key dan private key. 2. Pada bagian create ZIP file, digunakan untuk memilih filefile mana saja yang dipilih untuk proses kompresi. Jika file yang dipilih adalah file yang berisi pesan rahasia, maka file tersebut dapat dienkripsi terlebih dahulu kemudian barulah dimasukkan ke dalam daftar file yang akan melalui proses kompresi. 3. Pada bagian all files, digunakan untuk menampilkan daftar dari keseluruhan file yang akan melalui tahap kompresi dan menampilkan isi keseluruhan suatu arsip ZIP serta dapat memilih file yang akan disembunyikan atau ditampilkan pada arsip ZIP. 4. Pada bagian visible files, digunakan untuk menampilkan daftar file yang tidak tersembunyi pada arsip ZIP yang akan dibentuk. 5. Pada bagian open zip file, digunakan untuk membuka suatu arsip ZIP sehingga daftar semua file yang berada di dalamnya dapat ditampilkan pada bagian all files. 6. Pada bagian decrypt file, digunakan untuk proses dekripsi sebuah file yang berisi pesan rahasia dengan menggunakan private key yang telah disimpan sebelumnya.
Visible (Ya/Tidak)
MP3 Audio File
Ukuran Files (bytes) 3.922.000
Text Document MP4 Video File
152.600 18.450.000
Ya Ya
HTML Document MP3 Audio File
25.600 3.691.000
Ya Ya
C Source LSP File Ms.Excel Document MP4 Video File
11.260 4.096 1.024.000
Ya Ya Ya
42.780.000
Ya
Text Document
16
Tidak
xargs.1
File
5.120
Ya
PSY – Gangnam Style
MP4 Video File
93.010.000
Ya
Nama File
Jenis File
Air Supply Goodbye alice29 Christina Perry – A Thousand Years cp Craig David Insomnia fields grammar.lsp kennedy One Direction – What Makes You Beautiful Urgent
Ya
IV. UJI COBA Uji coba yang dilakukan adalah uji coba untuk melihat apakah file rahasia telah tersembunyi dengan baik pada arsip dan juga tidak terbaca pada central directory. Kemudian uji coba proses extract data juga dilakukan untuk melihat apakah file-file yang ada pada arsip ZIP dapat di-extract dan tidak ada file yang rusak pada waktu proses extract berjalan. Uji coba dilakukan dengan bantuan aplikasi ZIP seperti Winrar, Winzip, 7-Zip dan PowerArchiver. Tabel 1 menunjukkan informasi dari aplikasi ZIP yang digunakan untuk uji coba. Sedangkan pada Tabel 2 berisi informasi data uji coba yang digunakan. A. Uji coba keamanan data (penyembunyian data) Uji coba dilakukan untuk melihat apakah data yang berupa file yang berisi pesan rahasia telah tersembunyi dan tidak dapat terdeteksi oleh beberapa aplikasi ZIP seperti Winrar, 7Zip, PowerArchiver. Gambar 6 sampai dengan Gambar 8 menampilkan arsip ZIP yang dibuka menggunakan aplikasi ZIP uji coba. Uji coba untuk mendeteksi apakah file rahasia terbaca atau tidak pada arsip ZIP juga dilakukan dengan bantuan aplikasi Winzip. Gambar 9 menunjukkan hasil diagnosa aplikasi Winzip di mana file yang terbaca pada arsip ZIP hanya berjumlah 11 file sedangkan data uji coba berjumlah 12 file.
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
Gambar 9. Hasil Diagnosa arsip ZIP menggunakan aplikasi Winzip
Gambar 6. Isi arsip zip ketika dibuka pada Winrar
Gambar 10. Hasil extract dengan aplikasi buatan
Gambar 7. Isi arsip zip ketika dibuka pada 7-Zip
Gambar 8. Isi arsip zip ketika dibuka pada PowerArchiver
Gambar 11. Hasil extract dengan aplikasi Winrar
Gambar 12. Hasil extract dengan aplikasi 7-Zip
4
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print) [5]
[6] [7]
Gambar 13. Hasil extract dengan aplikasi PowerArchiver
B. Uji coba extract data Uji coba ini dilakukan dilakukan untuk melihat apakah file-file yang berada pada arsip ZIP yang dibuat dapat diextract dan tidak ada file yang error. Gambar 10 menunjukkan hasil dari proses extract yang dilakukan dengan menggunakan aplikasi yang dibuat untuk melihat apakah semua isi dari arsip ZIP termasuk file rahasia dapat di-extract. Sedangkan pada Gambar 11 sampai dengan Gambar 13 menunjukkan hasil extract dari data uji coba menggunakan aplikasi ZIP Winrar, 7-Zip dan PowerArchiver. V. KESIMPULAN Dari hasil pengamatan selama perancangan, implementasi, dan proses uji coba perangkat lunak yang dilakukan, penulis mengambil kesimpulan sebagai berikut: 1. Ketika arsip ZIP dibaca menggunakan aplikasi pembaca arsip ZIP seperti Winzip, file rahasia tidak akan ikut terbaca sehingga orang yang tidak berkepentingan tidak akan menyadari adanya file lain yang tersembunyi di dalam arsip ZIP tersebut. Uji coba ini mengindikasikan bahwa file yang berisi pesan rahasia telah tersembunyi dengan baik dalam arsip ZIP yang dibuat oleh aplikasi ini. 2. Tidak ada indikasi yang menunjukkan bahwa arsip ZIP yang dibuat oleh aplikasi ini berbeda format dengan arsip ZIP yang dibuat menggunakan aplikasi ZIP yang telah ada. UCAPAN TERIMA KASIH Penulis mengucapkan syukur kepada Allah SWT atas limpahan rahmat dan hidayah-Nya, sehingga penulisan artikel ini dapat terselesaikan dengan baik. Penulis juga mengucapkan banyak terima kasih kepada semua pihak yang telah membantu dalam penulisan artikel ini. DAFTAR PUSTAKA [1] [2] [3] [4]
Stallings, William. 2011. Cryptography and Network Security 5th Edition. Prentice Hall. Pu, Ida Mengyi. 2006. Fundamental Data Compression. Elsevier. Sayood, Khalid. 2006. Introduction to Data Compression 3rd Edition. Elsevier. Mohanty, Saraju P. (1999). Digital Watermarking: A Tutorial Review. University of South Florida.
5
Buchholz, Florian. The Structure of PKZip File. https://users.cs.jmu.edu/buchhofp/forensics/formats/pkzipprintable. html. Diakses pada tanggal 17 Juni 2013. Ariyus, Doni. (2008). Pengantar Ilmu Kriptografi. Penerbit ANDI. Rivest, R., Shamir, A., Adleman, L. 1978. A Method for Obtaining Digital Signatures and Public-key Cryptosystems.