perancangan dan implementasi image kriptografi ......pengamanan citra digital dapat dilakukan dengan...
TRANSCRIPT
Perancangan dan Implementasi Image Kriptografi
Menggunakan Caesar Cipher Termodifikasi
Artikel Ilmiah
Peneliti: Dwi Sandi Kurnia (672013713)
Magdalena A. Ineke Pakereng, M.Kom.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
Maret 2015
Perancangan dan Implementasi Image Kriptografi
Menggunakan Caesar Cipher Termodifikasi
Artikel Ilmiah
Diajukan kepada
Fakultas Teknologi Informasi
untuk memperoleh gelar Sarjana Komputer
Peneliti: Dwi Sandi Kurnia (672013713)
Magdalena A. Ineke Pakereng, M.Kom.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
Maret 2015
Lembar Persetujuan
Perancangan dan Implementasi Image Kriptografi
Menggunakan Caesar Cipher Termodifikasi
1) Dwi Sandi Kurnia,
2) Magdalena A. Ineke Pakereng
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Jl. Diponegoro 52-60, Salatiga 50711, Indonesia
Email: 1)
Abstract
One way to maintain the security and confidentiality of the data and information
is by using encryption and decryption. Digital image used in various fields, to store
important information. Digital image stored in a computer and transmitted through a
computer network and the Internet are at risk to be known, altered or destroyed by
certain parties. Cryptographic techniques can be applied to protect digital images of
these problems, one of them by using the Caesar cipher. Caesar cipher is a cryptographic
algorithm classic works by shifting the character of a specific numerical value. To
improve the security of Caesar cipher, the figures used for the shift is varied. In this study
generated the application of digital image encryption and decryption using the Caesar
cipher modified. The results showed that the security of digital image can be performed
by a Caesar cipher algorithm, by increasing security by using a semi-random shift.
Keywords: Image Cryptography, Modified Caesar Cipher
Abstrak
Salah satu cara untuk menjaga keamanan dan kerahasiaan suatu data maupun
informasi adalah dengan teknik enkripsi dan dekripsi. Citra digital digunakan dalam
berbagai bidang, untuk menyimpan informasi penting. Citra digital yang tersimpan dalam
komputer maupun dikirimkan lewat jaringan komputer dan internet memiliki resiko untuk
diketahui, diubah dan dirusak oleh pihak tertentu. Teknik kriptografi dapat diterapkan
untuk melindungi citra digital dari masalah-masalah tersebut, salah satunya dengan
menggunakan Caesar cipher. Caesar cipher merupakan algoritma kriptografi klasik yang
bekerja dengan cara menggeser karakter sebesar nilai angka tertentu. Untuk
meningkatkan keamanan Caesar cipher, angka yang digunakan untuk pergeseran dibuat
bervariasi. Pada penelitian ini dihasilkan aplikasi enkripsi dan dekripsi citra digital
dengan menggunakan Caesar cipher termodifikasi. Hasil penelitian menunjukkan bahwa
pengamanan citra digital dapat dilakukan dengan algoritma Caesar cipher, dengan
meningkatkan keamanan dengan cara menggunakan pergeseran yang semi acak.
Kata Kunci: Kriptografi Citra Digital, Caesar Cipher Termodifikasi
1)Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya
Wacana 2)Staf Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.
1
1. Pendahuluan
Keamanan merupakan salah satu aspek penting dalam pengiriman data
maupun komunikasi melalui jaringan. Salah satu cara untuk menjaga keamanan
dan kerahasiaan suatu data maupun informasi adalah dengan teknik enkripsi dan
dekripsi. Teknik ini berguna untuk membuat pesan, data, maupun informasi tidak
dapat dibaca atau dimengerti oleh orang lain, kecuali untuk penerima yang berhak
dan mengetahui teknik dekripsinya. Teknik enkripsi dan dekripsi dikenal dan
dipelajari dalam bidang ilmu kriptografi [1].
Informasi berupa citra digital telah digunakan secara luas dalam berbagai
macam bidang seperti pemerintahan, militer, badan keuangan, rumah sakit,
perusahaan perdagangan, dan lain sebagainya. Citra digital digunakan untuk
menyimpan informasi penting, misalnya hasil pemeriksaan pasien dalam bidang
rumah sakit, area geografi dalam bidang penelitian, posisi musuh dalam bidang
militer, produk baru dalam perusahaan, dan lain sebagainya.
Citra digital yang tersimpan dalam komputer maupun dikirimkan lewat
jaringan komputer dan internet memiliki resiko untuk diketahui, diubah dan
dirusak oleh pihak tertentu. Teknik kriptografi dapat diterapkan untuk melindungi
citra digital dari masalah-masalah tersebut.
Caesar cipher merupakan algoritma kriptografi klasik. Algoritma tersebut
bekerja dengan cara menggeser karakter sebesar nilai angka tertentu. Nilai angka
yang digunakan bersifat konstan, yaitu antara karakter satu dengan karakter yang
lain digeser dengan menggunakan satu nilai yang sama. Untuk meningkatkan
keamanan Caesar cipher, angka yang digunakan untuk pergeseran dibuat
bervariasi. Proses variasi ini dilakukan dengan menggunakan nilai semi acak,
yang dibangkitkan dengan nilai awal berdasarkan masukan password. Password
yang sama digunakan untuk membangkitkan nilai acak, untuk proses dekripsi.
Berdasarkan latar belakang masalah tersebut, maka pada penelitian ini
dirancang aplikasi kriptografi citra digital, dengan melakukan modifikasi
pergeseran kunci pada Caesar cipher. Berdasarkan hasil perancangan, dilakukan
implementasi dalam bentuk aplikasi berbasis Windows, yang dibuat dengan
menggunakan teknologi .Net Framework.
2. Tinjauan Pustaka
Penelitian tentang Caesar cipher termodifikasi telah dilakukan
sebelumnya. Susanto, Fridariyani dan Rahman [2] dalam penelitiannya melakukan
improvisasi algoritma Caesar cipher untuk mengamankan data teks. Penelitian
tersebut menjelaskan tentang masalah keamanan privasi data teks bagi kalangan
masyarakat. Improvisasi dilakukan dengan penambahan kunci, sehingga terdapat
dua kunci untuk melakukan enkripsi dan dekripsi yaitu kunci pergeseran dan
kunci spasi. Hasil dari penelitian tersebut adalah sebuah aplikasi kriptografi untuk
file teks.
Penelitian yang lain oleh Dey [3], yang melakukan modifikasi Caesar
cipher dengan menggunakan metode SD-AREE. Penelitian tersebut menekankan
pentingnya masalah keamanan data penting seperti contohnya data perbankan.
2
Teknik yang diusulkan adalah modifikasi Caesar cipher dengan SD-AREE untuk
menyandikan data penting tersebut. SD-AREE adalah teknik kriptografi yang
tidak memasukkan karakter berulang pada pesan yang akan dienkripsi. Pada
metode SD-AREE, bit atau karakter yang berulang dihilangkan, sehingga tidak
terdapat jejak perulangan karakter pada pesan, untuk menghindari frequency
analysis.
Perbedaan penelitian yang dilakukan ini dengan penelitian-penelitian
sebelumnya adalah, pada penelitian ini, Caesar cipher dimodifikasi pada angka
yang digunakan untuk proses pergeseran karakter. Nilai yang digunakan sebagai
pergeseran adalah nilai semi acak (pseudo random). Nilai awal (seed) yang
digunakan adalah hasil modulasi XOR dari masukan password/kunci. Caesar
cipher yang dimodifikasi ini digunakan untuk menyandikan citra digital.
Salah satu algoritma klasik yang dikenal adalah Caesar cipher. Caesar
cipher yang digunakan oleh kaisar Romawi, Julius Caesar (sehingga dinamakan
juga Caesar cipher). Pada Caesar cipher, tiap huruf disubstitusi dengan huruf
ketiga berikutnya dari susunan alfabet yang sama. Dalam hal ini kuncinya adalah
jumlah pergeseran huruf (yaitu 3). Sehingga, huruf A pada plaintext
disubstitusikan dengan D, huruf B disubstitusikan dengan E, demikian seterusnya
[4].
Pada penelitian ini digunakan algoritma semi acak (pseudo random) untuk
membangkitkan nilai pergeseran. Pembangkitan bilangan pseudo random adalah
sebuah deretan bilangan dengan kemungkinan pengulangan yang sangat kecil atau
periode pengulangan yang sangat besar. Pada pembuatan sistem ini, algoritma
pembangkitan bilangan pseudo random yang digunakan adalah algoritma LCG
(Linear Congruential Generator) yang diciptakan oleh D.H Lehmer pada tahun
1951 [5]. Pada .Net Framework, telah terintegrasi class Random yang merupakan
implementasi dari algoritma pseudo random tersebut.
Pada penelitian ini, format file citra digital yang digunakan adalah PNG.
PNG merupakan True Color image, yang berarti tiap piksel direpresentasikan
dengan 3 byte, terbagi ke dalam red, green, dan blue masing-masing 1 byte. Hal
ini sering disebut dengan warna RGB, atau True Color 24 bit. Selain 24 bit warna,
file PNG juga mendukung 32 bit warna. True Color 32 bit sama dengan 24 bit,
dengan perbedaan adalah adanya 1 byte tambahan yang disebut komponen alpha
[6][7].
Gambar 1 True Color 24 bit dan 32 bit [6]
3. Metode dan Perancangan Sistem
Sistem yang dikembangkan, memiliki desain yang ditunjukkan pada
Gambar 2. Sistem terdiri dari dua proses, yaitu proses enkripsi dan proses
dekripsi. Pada proses enkripsi diperlukan masukan berupa citra digital dan kunci
3
enkripsi. Hasil dari proses enkripsi adalah cipher image. Pada proses dekripsi,
masukan yang diperlukan adalah cipher image dan kunci dekripsi. Kunci enkripsi
dan kunci dekripsi adalah sama.
Citra Digital + Kunci Enkripsi
Proses Enkripsi dengan Caesar
Cipher termodifikasi
Cipher Image + Kunci Dekripsi
Proses Dekripsi dengan Caesar
Cipher termodifikasi
Citra Digital Original
Cipher Image
Encryptor
Decryptor
Gambar 2 Desain Sistem
Penelitian yang dilakukan, diselesaikan melalui tahapan penelitian yang
terbagi dalam empat tahapan, yaitu: (1) Identifikasi masalah dan studi literatur, (2)
Perancangan sistem, (3) Implementasi sistem, dan (4) Pengujian sistem dan
analisis hasil pengujian.
Gambar 3 Tahapan Penelitian
Tahapan penelitian pada Gambar 3, dijelaskan sebagai berikut: Tahap
pertama: mengidentifikasi masalah keamanan data terutama citra digital, dan
mempelajari solusi-solusi yang dapat diterapkan. Tahap kedua: berdasarkan
solusi-solusi yang dipilih, dirancang suatu modifikasi dari algoritma yang sudah
ada, untuk digunakan sebagai penyelesaian masalah. Tahap ketiga:
mengimplementasikan hasil perancangan ke dalam bentuk aplikasi Windows
dengan menggunakan teknologi .Net Framework. Tahap keempat: adalah
melakukan pengujian sistem dan kemudian melakukan analisis terhadap hasil
pengujian tersebut.
Identifikasi Masalah dan Studi Literatur
Perancangan Sistem
Implementasi Sistem
Pengujian Sistem dan Analisis Hasil Pengujian
4
Mulai
Modulasi kunci menjadi angka seed
Input gambar dan kunci
Jika semua warna selesai
diproses
Baca warna
Bangkitkan nilai acak
Geser kanan warna sebesar nilai acak
Selesai
Output cipher image
True
False
Gambar 4 Proses Enkripsi dengan Caesar Cipher Termodifikasi
Pada Gambar 4 ditunjukkan proses enkripsi citra digital dengan Caesar
cipher termodifikasi. Masukan yang diperlukan adalah citra digital dan kunci yang
panjangnya 6-12 karakter. Kunci yang digunakan kemudian dilakukan modulasi
dengan XOR sehingga dihasilkan satu bilangan byte. Bilangan tersebut menjadi
seed untuk proses pembangkitan bilangan acak. Untuk tiap elemen warna pada
gambar, dilakukan proses enkripsi dengan cara menggeser nilai warna tersebut
dengan nilai yang dihasilkan dari proses pembangkitan acak. Proses ini
berlangsung terus sampai pada elemen warna terakhir. Hasil dari proses
pergeseran ini adalah citra digital terenkripsi (cipher image).
5
Mulai
Modulasi kunci menjadi angka seed
Input cipher image dan
kunci
Jika semua warna selesai
diproses
Baca warna
Bangkitkan nilai acak
Geser kiri warna sebesar nilai acak
Selesai
Output plain image
True
False
Gambar 5 Proses Dekripsi dengan Caesar Cipher Termodifikasi
Pada Gambar 5 ditunjukkan diagram proses dekripsi dengan Caesar cipher
termodifikasi. Seperti halnya pada proses enkripsi, pada proses dekripsi
diperlukan masukan yaitu cipher image, dan kunci dekripsi. Kunci dekripsi
digunakan untuk membangkitkan bilangan acak. Proses selanjutnya sama dengan
proses enkripsi, yaitu menggeser nilai warna seusai dengan nilai hasil
pembangkitan acak. Perbedaannya adalah proses geser yang dilakukan dengan
arah yang sebaliknya dari proses enkripsi.
Pada proses modulasi kunci, karakter-karakter yang digunakan pada kunci
diubah ke dalam nilai ASCII. Kemudian nilai-nilai ASCII tersebut dilakukan
operasi XOR, sampai akhirnya diperoleh satu angka yang akan digunakan sebagai
seed untuk proses semi acak. Contoh proses modulasi kunci ditunjukkan pada
Tabel 1. Tabel 1 Contoh Proses Modulasi Kunci
Kunci f t i @ u k s w
Ascii 102 116 105 64 117 107 115 119
6
Hasil Modulasi Kunci 33
Dengan menggunakan hasil modulasi 33, dibangkitkan bilangan semi
acak. Pada proses enkripsi maupun dekripsi, digunakan nilai bilangan semi acak
yang sama karena nilai seed diperoleh dari hasil modulasi kunci yang sama.
Contoh proses enkripsi ditunjukkan pada Tabel 2. Tabel 2 Contoh Proses Enkripsi
Warna 255 255 0 1 100 70 99 99 100
Nilai Semi Acak Dengan
Seed=33 246 127 212 153 26 101 176 254 15
Warna Hasil Enkripsi
Caesar 245 126 212 154 126 171 19 97 115
Contoh proses dekripsi dari hasil enkripsi pada Tabel 2, ditunjukkan pada
Tabel 3. Tabel 3 Contoh Proses Dekripsi
Warna 245 126 212 154 126 171 19 97 115
Nilai Semi Acak Dengan
Seed=33 246 127 212 153 26 101 176 254 15
Warna Hasil Dekripsi 255 255 0 1 100 70 99 99 100
4. Hasil dan Pembahasan
Berdasarkan hasil perancangan, maka dilakukan implementasi dalam
bentuk aplikasi desktop berbasis Windows. Aplikasi dikembangkan dengan
menggunakan bahasa pemrograman C#, dengan pustaka .Net Framework 4.5.
Perangkat pengembangan yang digunakan adalah Visual StudioExpres 2012 for
Windows Desktop.
Gambar 6 Form untuk Proses Enkripsi
Gambar 7 Form untuk Proses Dekripsi
Gambar 6 merupakan form yang digunakan untuk melakukan proses
enkripsi. Form tersebut menyediakan masukkan berupa citra digital yang akan
dienkripsi, dan kunci enkripsi. Hasil enkripsi ditampilkan bersebelahan dengan
citra digital semula. Gambar 7 merupakan form yang digunakan untuk proses
dekripsi. Skema tampilan sama dengan form untuk proses enkripsi.
Kode Program 1 Perintah untuk Proses Modulasi Kunci 1. public static byte XOR(byte[] key)
2. {
3. byte result = key[0];
4. for (int i = 1; i < key.Length; i++)
5. {
6. result = (byte)(result ^ key[i]);
7
7. }
8. return result;
9. }
Kode Program 1 merupakan perintah untuk proses modulasi kunci.
Modulasi dilakukan dengan cara melakukan operasi XOR antara nilai byte satu
dengan yang lainnya (perintah pada baris 4-7). Variabel result (perintah pada baris
3) digunakan untuk menampung nilai akhir dari hasil operasi XOR.
Kode Program 2 Perintah untuk Proses Enkripsi Warna dengan Caesar Cipher 1. byte modulasi = XORModulasi.XOR(key);
2. PRNG random = new PRNG(modulasi);
3. int max = byte.MaxValue + 1;
4.
5. for (int y = 0; y < originalImg.Height; y++)
6. {
7. for (int x = 0; x < originalImg.Width; x++)
8. {
9. byte geser;
10.
11. Color c = bitmap.GetPixel(x, y);
12. 13. geser = random.Next();
14. byte A = (byte)((c.A + geser) % max);
Kode Program 2 merupakan perintah untuk proses enkripsi warna. Proses
dimulai dengan melakukan modulasi kunci (perintah pada baris 1), kemudian
membuat obyek dari class PRNG yang berfungsi sebagai pembangkit bilangan
semi acak. Nilai pemicu (seed) untuk proses semi acak adalah nilai dari hasil
modulasi (perintah pada baris 2). Nilai elemen warna dibaca berdasarkan
koordinat panjang dan lebar menggunakan variabel x dan y (perintah pada baris 5-
7). Kemudian proses enkripsi dilakukan dengan cara menggeser nilai warna
tersebut sebesar nilai semi acak yang dihasilkan (perintah pada baris 13-14).
Pergeseran dilakukan dengan menjumlahkan nilai warna dengan nilai semi acak.
Jika hasil penjumlahkan lebih dari batas nilai byte (perintah pada baris 3) maka
dilakukan operasi modulus untuk diperoleh nilai hasil baginya (perintah pada
baris 14).
Kode Program 3 Perintah untuk Proses Dekripsi Warna dengan Caesar Cipher 1. byte modulasi = XORModulasi.XOR(key);
2. PRNG random = new PRNG(modulasi);
3. int max = byte.MaxValue + 1;
4.
5. for (int y = 0; y < originalImg.Height; y++)
6. {
7. for (int x = 0; x < originalImg.Width; x++)
8. {
9. byte geser;
10. Color c = bitmap.GetPixel(x, y);
11. geser = random.Next();
12. int gA = c.A - geser;
13. byte A = (byte)(gA < 0 ? max + gA : gA);
Kode Program 3 merupakan perintah untuk proses dekripsi warna. Seperti
halnya proses enkripsi, proses dekripsi dimulai dengan melakukan modulasi kunci
(perintah pada baris 1), kemudian membuat obyek dari class PRNG yang
berfungsi sebagai pembangkit bilangan semi acak. Nilai pemicu (seed) untuk
proses semi acak adalah nilai dari hasil modulasi (perintah pada baris 2). Nilai
8
elemen warna dibaca berdasarkan koordinat panjang dan lebar menggunakan
variabel x dan y (perintah pada baris 5-7). Kemudian proses dekripsi dilakukan
dengan cara menggeser nilai warna tersebut sebesar nilai semi acak yang
dihasilkan (perintah pada baris 13-14). Pergeseran dilakukan dengan
mengurangkan nilai warna dengan nilai semi acak. Pergeseran dilakukan ke kiri,
sehingga jika hasil pengurangan adalah nilai negatif, maka dilanjutkan ke nilai
terbesar byte. Sebagai contoh jika pengurangan adalah -2, maka nilai perputaran
ke kiri adalah 254. Jika -10, maka menjadi 146.
Pengujian aplikasi dilakukan untuk mengetahui apakah aplikasi telah
memenuhi rancangan yang dibuat, dan memenuhi kebutuhan pembuatan aplikasi,
serta mengetahui performa aplikasi. Pengujian dilakukan dengan melihat 3 faktor,
yaitu kecepatan, keamanan, dan keutuhan data.
Pengujian kecepatan dilakukan dengan menguji beberapa ukuran citra
digital, kemudian mencatat waktu proses yang dihasilkan.
Tabel 4 Hasil Pengujian Kecepatan
No Jumlah Piksel Enkripsi Dekripsi
1 90000 0.203114 0.203318
2 202500 0.457006 0.457465
3 315000 0.710898 0.711612
4 427500 0.964791 0.965759
5 540000 1.218683 1.219906
Hasil pengujian pada Tabel 4, ditampilkan dalam bentuk grafik batang,
ditunjukkan pada Gambar 8.
Gambar 8 Hasil Pengujian Kecepatan
Berdasarkan hasil pengujian kecepatan, dibuktikan bahwa ukuran citra
yaitu panjang dan lebar mempengaruhi kecepatan proses enkripsi maupun
dekripsi. Perbedaan waktu proses enkripsi dan dekripsi tidak signifikan, karena
kedua proses melalui langkah-langkah yang sama. Tentu saja waktu proses ini
sangat dipengaruhi oleh spesifikasi komputer yang digunakan.
Pengujian Keamanan dilakukan dengan cara mengujikan beberapa kunci
yang mirip, kemudian membandingkan hasil enkripsi dari masing-masing kunci.
9
Tabel 5 Hasil Pengujian Keamanan
No Kunci 1 Kunci 2 Perbedaan Kunci (byte) Perbedaan Piksel
1 1234abcd 1234abcX 1 89996
2 1234abcd 1234abXY 2 89995
3 1234abcd 1234aXYZ 3 89999
4 1234abcd 12XYZAcd 4 89997
5 1234abcd 1ABCDEFd 6 90000
Hasil pengujian pada Tabel 5, ditampilkan dalam bentuk grafik garis,
ditunjukkan pada Gambar 9.
Gambar 9 Hasil Pengujian Keamanan
Berdasarkan hasil pengujian keamanan, diketahui bahwa aplikasi dapat
menghasilkan cipher image yang memiliki perbedaan besar, sekalipun kunci yang
digunakan mirip. Angka perbedaan kunci berbanding secara signifikan dengan
angka perbedaan piksel.
Pengujian Keutuhan dilakukan dengan cara membandingkan nilai piksel
antara citra digital awal (sebelum proses enkripsi), dengan citra digital akhir
(setelah proses dekripsi).
Tabel 6 Hasil Pengujian Keutuhan
No Gambar Awal Gambar Akhir Kunci
Perbedaan
Piksel
1
fti@uksw 0
10
2
satyawacana 0
3
salatiga 0
4
20150101 0
5
inekepakereng 0
Berdasarkan hasil pengujian keutuhan pada Tabel 6, diketahui bahwa
aplikasi dapat menjaga keutuhan citra digital, terbukti dari tidak ada perbedaan
nilai piksel antara citra digital awal (sebelum enkripsi) dengan citra digital akhir
(setelah dekripsi).
5. Simpulan
Berdasarkan perancangan dan pengujian diperoleh kesimpulan yaitu: (1)
pengamaman citra digital dapat dilakukan dengan algoritma Caesar cipher,
dengan meningkatkan keamanan dengan cara menggunakan pergeseran yang semi
acak. Pergeseran semi acak ini dicapai dengan menggunakan algoritma PRNG
yang pada .Net Framework telah diimplementasikan melalui class Random; (2)
Berdasarkan hasil pengujian, keamanan citra digital yang dienkripsi dapat
diandalkan sekalipun kunci yang digunakan mirip; (3) Berdasarkan hasil
pengujian, tidak terjadi perubahan antara citra digital asli, dengan citra digital
hasil dekripsi, dengan demikian aplikasi berhasil menjaga keutuhan informasi
pada citra digital yang diproses. Saran yang dapat diberikan untuk penelitian dan
pengembangan lebih lanjut adalah aplikasi yang dihasilkan pada penelitian ini
adalah menggunakan kriptografi kunci simetris. Keamanan dapat ditingkatkan
dengan menggunakan kunci asimetris.
11
6. Daftar Pustaka
[1]. Kaufman, C., Perlman, R. & Speciner, M. 2002. Network security: private
communication in a public world. Prentice Hall Press.
[2]. Susanto, A., Fridariyani, F. & Rahman, A. 2014. Enkripsi dan Dekripsi
Teks Menggunakan Algoritma Improved Caesar Cipher. Jurusan Teknik
Informatika STMIK MDP
[3]. Dey, S. 2012. SD-AREE: A New Modified Caesar Cipher Cryptographic
Method Along with Bit-Manipulation to Exclude Repetition from a Message
to be Encrypted. arXiv preprint arXiv:1205.4279
[4]. Munir, R. 2006. Kriptografi. Informatika, Bandung
[5]. Susanto, A. 2006. Studi dan Implementasi Steganografi pada Berkas MIDI.
[6]. Willamette.edu In press. Image File Formats.
[7]. Boutell, T. 1997. PNG (Portable Network Graphics) Specification Version
1.0.