penyusun tugas akhir : tegar meda rahman 5108100019
TRANSCRIPT
Tegar Meda Rahman 5108100019
Dosen Pembimbing : Ary Mazharudin Shiddiqi, S.Kom, M.Comp.ScHudan Studiawan, S.Kom, M.Kom
Penyusun Tugas Akhir :
IMPLEMENTASI KRIPTOGRAFI DAN STEGANOGRAFI PADA MEDIA GAMBAR DENGAN
MENGGUNAKAN METODE BLOWFISH DAN GIFSHUFFLE
Point
• Latar Belakang• Rumusan masalah• Metode• Rancangan Sistem• Uji Coba• Kesimpulan
Latar Belakang
• Komunikasi• Kriptografi• Steganografi• Keamanan
Rumusan Masalah• Bagaimana membuat program kriptografi dengan
menggunakan algoritma Blowfish kemudian menyisipkan pesan yang telah di enkripsi tersebut ke dalam sebuah image dengan menggunakan algoritma GifShuffle.
• Bagaimana membuat program yang mampu melakukan Dekripsi dari file yang telah di enkripsi dengan menggunakan algoritma Blowfish dan GifShuffle.
Metode
• Blowfish• GifShuffle
Blowfish• Algoritma Blowfish merupakan Algoritma kunci simetrik chiper blok• Blowfish dirancang dan diharapkan mempunyai kriteria
perancangan yang diinginkan sebagai berikut:• Cepat• Compact• Sederhana• Memiliki keamanan yang bervariasi
Blowfish• Untuk enkripsi terdiri dari perulangan fungsi sederhana sebanyak 16
kali. • Setiap putaran terdiri dari permutasi key dependent, key subtitution
dan data dependent.• Semua operasi pada variabel 32 bit adalah penambahan dan XOR• Operasi tambahan lainya hanya empat tabel penelusuran array
(lookup table) berindeks untuk stiap putaranya.• Jalur algoritma akan di jelaskan sebagai berikut
Blowfish1. Bentuk inisial array P sebanyak 18 buah masing-masing bernilai
32 bit.2. Bentuk S-box sebanyak 4 buah yang masing-masing bernilai 32 bit
dan memiliki 256 masukan.3. Plaintext yang akan di enkripsi diambil sebanyak 64 bit, bila
kurang maka ditambahkan bitnya4. Plaintext di bagi menjadi 2 bagian yaitu XL dan XR5. Lakukan operasi XL = XL xor Pi dan XR = F(XL) xor XR.6. Hasilnya ditukar XL menjadi XR, begitu juga sebaliknya7. Lakukan proses sebanyak 16 kali8. Pada proses ke-17 lakukan operasi untuk XR=XR xor P17 dan
XL=XL xor P18.9. Satukan kembali XL dan XR.
BlowfishPlaintext 64 bit
.
Plaintext yang akan dienkripsi diambil sebanyak 64 bit
BlowfishPlaintext 64 bit
32 bit 32 bit
Plaintext di bagi menjadi 2 bagian yaitu XL dan XR
BlowfishPlaintext 64 bit
32 bit 32 bit
P132 bit
F32 bit 32 bit
XL = XL xor Pi dan XR = F(XL) xor XR
BlowfishPlaintext 64 bit
32 bit 32 bit
P132 bit
F32 bit 32 bit
Tukar XL menjadi XR dan XR menjadi XL
P232 bit
F32 bit 32 bit
BlowfishPlaintext 64 bit
32 bit 32 bit
P132 bit
F32 bit 32 bit
Lakukan proses sebanyak 16 kali
P232 bit
F32 bit 32 bit
P1632 bit
F32 bit 32 bit
BlowfishPlaintext 64 bit
32 bit 32 bit
P132 bit
F32 bit 32 bit
Pada proses ke-17 lakukan operasi untukXR=XR xor P17 dan
XL=XL xor P18P2
32 bit
F32 bit 32 bit
P1632 bit
F32 bit 32 bit
P1732 bitP18
32 bit
BlowfishPlaintext 64 bit
32 bit 32 bit
P132 bit
F32 bit 32 bit
Satukan kembali XR danXL
P232 bit
F32 bit 32 bit
P1632 bit
F32 bit 32 bit
P1732 bitP18
32 bit
Chipertext
32 bit 32 bit
64 bit
Blowfish• Untuk proses dekripsi algoritma Blowfish memiliki keunikan yaitu
proses dekripsi dilakukan sama persis seperti proses enkripsi hanyasaja urutan P1,P2,…,P18 digunakan dalam urutan terbalik.
• Dalam algoritma Blowfish juga terdapat fungsi F.
Fungsi F
GifShuffle• Inti dari algoritma GifShuffle adalah memanfaatkan header file GIF
yang menyimpan colormap sebagai media penyisipan pesan.• Algoritma GifShuffle nantinya akan melakukan penukaran posisi
colormap.• Hal ini aman dilakukan karena 2 buah berkas gif dengan posisi
colormap yang berbeda akan menampilkan gambar yang sama.
GifShuffle
22 23 24 25
Alur GifShuffleStart
Baca pesan
Baca Citra Gif
Hitung Total warna
M>N!-1
End
yes
i = 1Warna N-I
posisinya menjadi (M mod i)
M / ii++
i > N
Atur UlangColormap
yes
End
no
no
Rancangan Sistem
Input Proses Output
Pesan Enkripsi Blowfish
Penyisipan GifShuffle
Chipertext
Uji Coba
• Data Uji Coba• Skenario Uji coba
Data Uji Coba
Data Uji Coba
Data Uji Coba
Data Uji Coba
Data Uji Coba
Data Uji Coba• Pesan yang di masukan “Ujian Tugas Akhir” dan “Ujian Tugas Akhir
Hari ini Semoga Sukses dan lancar”• Pesan terdiri dari 17 karakter dan 51 karakter
Uji Coba Skenario
No Nama Jumlah Colormap
Resolusi Ukuran
1 Transparan 252 435 x 455 1.55 KB2 Matahari 185 1024 x 1024 791 KB3 Box 4 10 x 10 69 Bytes4 Mona 256 200 x 261 42 KB5 Airplane 8 353 x 251 4.23 KB6 Animasi 131 290 x 360 32.4 KB7 test 252 3 x 5 814 Bytes
Faktor Uji Coba Skenario 1
1
No Faktor Keterangan
1 Panjang pesan 17 karakter
2 Panjang Chipertext 96 karakter
3 Ukuran gambar 1.55 KB
4 Resolusi 453 x 455
5 Tipe Gambar Bukan Animasi
6 Spesifikasi perangkat keras Sesuai Tabel 5.1 dan 5.2
Hasil Uji Coba Skenario 1
No Faktor Keterangan
1 Jumlah warna 252
2 Ukuran gambar 1.55 KB
3 Resolusi 453 x 455
4 Proses Enkripsi Berhasil
5 Proses Dekripsi Berhasil
6 Kecepatan Enkripsi Tabel 5.1 535 milidetik
7 Kecepatan Dekripsi Tabel 5.1 66 milidetik
Faktor Uji Coba Skenario 2
1
No Faktor Keterangan
1 Panjang pesan 17 karakter
2 Panjang Chipertext 96 karakter
3 Ukuran gambar 791 KB
4 Resolusi 1024 x 1024
5 Tipe Gambar Bukan animasi
6 Spesifikasi perangkat keras Sesuai Tabel 5.1 dan 5.2
Hasil Uji Coba Skenario 2
No Faktor Keterangan
1 Jumlah warna 185
2 Ukuran gambar 791 KB
3 Resolusi 1024 x 1024
4 Proses Enkripsi Berhasil
5 Proses Dekripsi Berhasil
6 Kecepatan Enkripsi Tabel 5.1 17133
7 Kecepatan Dekripsi Tabel 5.1 13541
Faktor Uji Coba Skenario 3
1
No Faktor Keterangan
1 Panjang pesan 17 karakter
2 Panjang Chipertext 96 karakter
3 Ukuran gambar 69 bytes
4 Resolusi 10 x 10
5 Tipe Gambar Bukan animasi
6 Spesifikasi perangkat keras Sesuai Tabel 5.1 dan 5.2
Hasil Uji Coba Skenario 3
No Faktor Keterangan
1 Jumlah warna 4
2 Ukuran gambar 69 bytes
3 Resolusi 10 x 10
4 Proses Enkripsi -
5 Proses Dekripsi -
6 Kecepatan Enkripsi Tabel 5.1 -
7 Kecepatan Dekripsi Tabel 5.1 4
Faktor Uji Coba Skenario 4
1
No Faktor Keterangan
1 Panjang pesan 17 karakter
2 Panjang Chipertext 96 karakter
3 Ukuran gambar 42 KB
4 Resolusi 200 x 261
5 Tipe Gambar Bukan animasi
6 Spesifikasi perangkat keras Sesuai Tabel 5.1 dan 5.2
Hasil Uji Coba Skenario 4
No Faktor Keterangan
1 Jumlah warna 256
2 Ukuran gambar 42 KB
3 Resolusi 200 x 261
4 Proses Enkripsi Berhasil
5 Proses Dekripsi Berhasil
6 Kecepatan Enkripsi Tabel 5.1 1177
7 Kecepatan Dekripsi Tabel 5.1 807
Faktor Uji Coba Skenario 5
1
No Faktor Keterangan
1 Panjang pesan 17 karakter
2 Panjang Chipertext 96 karakter
3 Ukuran gambar 4.23 KB
4 Resolusi 353 x 251
5 Tipe Gambar Bukan animasi
6 Spesifikasi perangkat keras Sesuai Tabel 5.1 dan 5.2
Hasil Uji Coba Skenario 5
No Faktor Keterangan
1 Jumlah warna 8
2 Ukuran gambar 4.23 KB
3 Resolusi 353 x 251
4 Proses Enkripsi Berhasil
5 Proses Dekripsi Berhasil
6 Kecepatan Enkripsi Tabel 5.1 227
7 Kecepatan Dekripsi Tabel 5.1 140
Faktor Uji Coba Skenario 6
1
No Faktor Keterangan
1 Panjang pesan 51 karakter
2 Panjang Chipertext 224 karakter
3 Ukuran gambar 4.23 KB
4 Resolusi 353 x 251
5 Tipe Gambar Bukan animasi
6 Spesifikasi perangkat keras Sesuai Tabel 5.1 dan 5.2
Hasil Uji Coba Skenario 6
No Faktor Keterangan
1 Jumlah warna 8
2 Ukuran gambar 4.23 KB
3 Resolusi 353 x 251
4 Proses Enkripsi Berhasil
5 Proses Dekripsi Berhasil
6 Kecepatan Enkripsi Tabel 5.1 258
7 Kecepatan Dekripsi Tabel 5.1 138
Faktor Uji Coba Skenario 7
1
No Faktor Keterangan
1 Panjang pesan 17 karakter
2 Panjang Chipertext 96 karakter
3 Ukuran gambar 32.4 KB
4 Resolusi 290 x 360
5 Tipe Gambar Animasi
6 Spesifikasi perangkat keras Sesuai Tabel 5.1 dan 5.2
Hasil Uji Coba Skenario 7
No Faktor Keterangan
1 Jumlah warna 131
2 Ukuran gambar 29.2 KB
3 Resolusi 290 x 360
4 Proses Enkripsi Berhasil
5 Proses Dekripsi Berhasil
6 Kecepatan Enkripsi Tabel 5.1 1073
7 Kecepatan Dekripsi Tabel 5.1 744
Faktor Uji Coba Skenario 8
1
No Faktor Keterangan
1 Panjang pesan 17 karakter
2 Panjang Chipertext 96 karakter
3 Ukuran gambar 814 Bytes
4 Resolusi 3 x 5
5 Tipe Gambar bukan animasi
6 Spesifikasi perangkat keras Sesuai Tabel 5.1 dan 5.2
Hasil Uji Coba Skenario 8
No Faktor Keterangan
1 Jumlah warna 252
2 Ukuran gambar 814 Bytes
3 Resolusi 3 x 5
4 Proses Enkripsi Berhasil
5 Proses Dekripsi Berhasil
6 Kecepatan Enkripsi Tabel 5.1 345
7 Kecepatan Dekripsi Tabel 5.1 39
Kesimpulan• Pemanfaatan Algoritma Blowfish dan GifShuffle dengan menggunakan Java telah berhasil
diimplementasikan.• Media gambar yang digunakan sebagai media penyimpanan tidak mengalami perubahan pada
ukuran dan dimensi. Secara kasat mata terlihat mirip tetapi sebenarnya berbeda karena nilai PSNR tidak lebih besar dari 50dB.
• Performa proses enkripsi dan dekripsi dipengaruhi oleh besarnya pesan yang akan disembunyikan dan besarnya ukuran media gambar yang digunakan untuk menyembunyikan pesan. Semakin besar pesan dan media gambar yang digunakan untuk menyembunyikan pesan,semakin lama waktu yang dibutuhkan.
• Proses Dekripsi memiliki performa yang lebih cepat daripada proses enkripsi, hal ini dikarenakan pada proses dekripsi pada algoritma GifShuffle prosesnya lebih sederhana karena tidak perlu mengganti colormap yang baru dengan yang lama yang lebih diutamakan adalah pesan yang disembunyikan dapat dibaca kembali.
• Setiap berkas GIF tidak selalu memiliki jumlah warna yang sama.• Banyaknya kapasitas yang dapat ditampung oleh berkas GIF tidak tergantung pada ukuran dan
resolusi. Tetapi pada banyaknya jumlah colormap yang ada pada berkas GIF.• berkas dengan format GIF mengandung 256 colormap maka dapat disimpulkan bahwa total
penyimpanan maksimum dari format ini adalah faktorial 256.• Tingkat keamanan sangat tinggi karena algoritma Blowfish sampai saat ini masih belum ada yang
berhasil mematahkan dengan sempurna, ditambah dengan algoritma steganografi GifShuffle yang secara kasat mata terlihat mirip.
Terima Kasih