Post on 08-Apr-2023
- APLIKASI STEGANOGRAFI -
Dengan menggunakan metode LSB(Least Significant Bit)
Steganografi adalah seni dan ilmu menulis pesan tersembunyi atau menyembunyikan pesan dengan suatu
cara sehingga selain si pengirim dan si penerima, tidak ada seorangpun yang mengetahui atau menyadari
bahwa ada suatu pesan rahasia. Sebaliknya, kriptografi menyamarkan arti dari suatu pesan, tapi tidak
menyembunyikan bahwa ada suatu pesan. Kata "steganografi" berasal dari bahasa Yunani steganos, yang artinya
“tersembunyi atau terselubung”, dan graphein, “menulis”. Teknik steganografi meliputi beberapa metode
komunikasi untuk menyembunyikan pesan rahasia di dalam berkas - berkas lain yang mengandung teks, citra ,
maupun audio tanpa menunjukkan ciri-ciri perubahan yang nyata atau terlihat dalam kualitas dan struktur dari
berkas semula. Metode ini termasuk tinta yang tidak tampak, microdots, pengaturan kata, tanda tangan digital,
jalur tersembunyi dan komunikasi spektrum lebar. Sumber : Wikipedia.
Perlu diketahui, bahwa steganografi dan kriptografi
merupakan 2 jenis teknik pengamanan data yang berbeda.
Hal ini sangat terlihat jelas pada hasil outputnya, yang
dimana pada teknik steganografi, hasil outputnya akan
memiliki kesan yang rapi atau hampir sama dengan bentuk
media penyembunyian aslinya sehingga tidak menghasilkan
kecurigaan terhadap penyembunyian pesan. Sedangkan
pada teknik kriptografi, hasil output yang disajikan memiliki
kesan "rusak" atau "berantakan" sehingga dapat
menimbulkan kesan aneh maupun curiga akan adanya
penyembunyian data. Steganografi dapat dikatakan sebagai
bentuk perkembangan dari kriptografi. Pada steganografi
dikenal beberapa istilah penting antara lain : 1. Message, merupakan data pesan yang akan disembunyikan. 2. Cover Image, merupakan gambar asli. 3. Carrier Image, merupakan gambar yang sudah disisipkan message di dalamnya. 4. Embedding (Encrypt), merupakan proses penyisipan message ke cover image. 5. Extracting (Decrypt), merupakan proses pengambilan data message dari carrier image.
Saat ini , pada umumnya ada beberapa algoritma yang digunakan pada teknik steganografi, antara lain
Least Significant Bit Insertion (LSB) , Algorithms and Transformation, Redundant Pattern Encoding dan Spread
Spectrum method. Masing - masing algoritma tersebut memiliki kelebihan dan kekurangannya masing - masing.
Untuk media steganografi juga macam - macam , antara lain steganografi pada text , steganografi pada gambar ,
steganografi pada audio dan lain-lain. Pada aplikasi "SAFETY MESSAGE" ini, teknik steganografi yang dibuat
menggunakan algoritma Least Significant Bit insertion atau yang dikenal dengan LSB. Metode LSB ini merupakan
metode yang digunakan untuk menyembunyikan pesan pada media digital. Contohnya, pada berkas image pesan
dapat disembunyikan dengan menggunakan cara menyisipkannya pada bit rendah atau bit yang paling kanan
(LSB) pada data pixel yang menyusun file tersebut. Pada berkas bitmap 24 bit, setiap pixel (titik) pada gambar
tersebut terdiri dari susunan tiga warna merah, hijau dan biru (RGB) yang masing-masing disusun oleh bilangan 8
bit (byte) dari 0 sampai 255 atau dengan format biner 00000000 sampai 11111111. Dengan demikian, pada setiap
pixel berkas bitmap 24 bit kita dapat menyisipkan 3 bit data. Jadi , pada aplikasi ini, terdapat dua buah media gambar yang digunakan. Gambar pertama digunakan
untuk menampung password dan gambar kedua digunakan untuk menampung pesan teks yang akan di
sembunyikan. Pada proses enkripsi nya, user akan memasukan dua buah gambar, kemudian mengisikan
password dan mengisikan pesan yang akan disembunyikan. Setelah semua data yang dibutuhkan diisi, maka
program akan menjalankan fungsi steganografi dan menghasilkan output dua buah gambar. Data gambar tersebut
akan otomatis disimpan di Drive D. Kemudian pada proses dekripsi pesan, user harus memasukan dua buah
gambar yang dihasilkan pada proses enkripsi di area picture box yang tersedia. Kemudian user harus mengisikan
password untuk mendkripsi pesan. Jika password yang diisikan user terdeteksi benar , maka program akan
otomatis mengeluarkan pesan yang disembunyikan. Namun, jika password yang diisikan salah, program akan
memberi user kesempatan untuk mengulang sebanyak tiga(3) kali, setelah itu , jika password masih juga salah,
maka data gambar tadi akan langsung otomatis terhapus dan komputer akan otomatis mati/Shutdown.
STEGANOGRAFIAPPLICATION1 Least Significant Bit(LSB)
- P R O S E S I N S T A L A S I -
Berikut urutan langkah - langkah proses penginstallan aplikasi ini :
1. Download file terkompresi dengan nama SafetyMessage.rar
2. Ekstrak semua file ke dalam satu folder.
3. Kemudian buka folder, dan klik dua kali pada file setup.exe
4. Akan muncul warning box instalasi aplikasi, klik button Install.
5. Tunggu hingga proses instalasi selesai.
6. Jika sudah selesai menginstall, aplikasi akan langsung berjalan.
Jika tidak, maka terjadi kesalahan dalam proses instalasi.
STEGANOGRAFIAPPLICATION2 Least Significant Bit(LSB)
- T U T O R I A L P R O G R A M -
Berikut ini merupakan tutorial penggunaan aplikasi ini
ertama, jalankan aplikasi terlebih dahulu. Kemudian,
Psebagai tampilan pertama akan muncul splash screen
yang dilanjutkan dengan form utama dari aplikasi ini.
Kemudian untuk melakukan proses steganografi, user harus
menekan tombol "ENCRYPTION" , kemudian tombol
"ENCRYPTION" akan berubah menjadi tombol "PROCESS" dan
textbox pengisian password akan aktif. Setelah itu user harus
mengisikan password pada textbox password. Jika textbox
sudah terisi, maka tombol "Browse" pada gambar pertama akan
aktif. Disini user harus memilih data gambar yang akan
digunakan untuk menyisipkan password yang diketikannya.
Adapun jumlah password yang diisikan minimal berjumlah
delapan karakter atau angka. Kemudian jika gambar pertama
sudah terpilih, dilanjutkan dengan pemilihan gambar kedua yang digunakan untuk menyisipkan pesan. Jika gambar kedua sudah terpilih, maka textbox
pengisian pesan akan aktif. Disini user akan menuliskan pesan
yang akan disembunyikan. Selain menuliskan pesan, user juga
dapat memilih pesan yang disisipkan melalui file .txt atau
notepad.txt dengan menekan link label berwarna merah yang
bertuliskan "Select .txt File from Directory". Jika pengisian pesan
yang akan disisipkan sudah selesai, tekan tombol "PROCESS"
untuk melakukan fungsi steganorafi. Jika tombol itu sudah
ditekan data gambar yang berisisipkan pesan dan password itu
akan secara otomatis disimpan di directory (D:)Berikut Code dengan bahasa C# untuk mengenkripsi :
public static Bitmap embedText(string text, Bitmap bmp) { State state = State.Hiding; int charIndex = 0; int charValue = 10;long pixelElementIndex = 0; int zeros = 0; int R = 0, G = 0, B = 0; for (int i = 0; i < bmp.Height; i++) { for (int j = 0; j < bmp.Width; j++) { Color pixel = bmp.GetPixel(j, i); R = pixel.R - pixel.R % 2; G = pixel.G - pixel.G % 2; B = pixel.B - pixel.B % 2; for (int n = 0; n < 3; n++) { if (pixelElementIndex % 8 == 0) { if (state == State.Filling_With_Zeros && zeros == 8) { if ((pixelElementIndex - 1) % 3 < 2) { bmp.SetPixel(j, i, Color.FromArgb(R, G, B)); } return bmp; } if (charIndex >= text.Length) { state = State.Filling_With_Zeros; } else { charValue = text[charIndex++]; } } switch (pixelElementIndex % 3) { case 0: { if (state == State.Hiding) { R += charValue % 2; charValue /= 2; } } break; case 1: { if (state == State.Hiding) { G += charValue % 2; charValue /= 2; } } break; case 2: { if (state == State.Hiding) { B += charValue % 2;charValue /= 2; } bmp.SetPixel(j, i, Color.FromArgb(R, G, B)); } break; } pixelElementIndex++;
if (state == State.Filling_With_Zeros) { zeros++; } } } } return bmp; }
STEGANOGRAFIAPPLICATION3 Least Significant Bit(LSB)
- T U T O R I A L P R O G R A M -
public static string extractPassword(Bitmap bmp_pass) { int colorUnitIndex_pass = 0; int charValue_pass = 0;
string extractedText = String.Empty; for (int i = 0; i < bmp_pass.Height; i++) { for (int j = 0; j < bmp_pass.Width; j++) { Color pixel = bmp_pass.GetPixel(j, i); for (int n = 0; n < 3; n++) { switch (colorUnitIndex_pass % 3) { case 0: { charValue_pass = charValue_pass * 2 + pixel.R % 2; } break; case 1: { charValue_pass = charValue_pass * 2 + pixel.G % 2; } break; case 2: { charValue_pass = charValue_pass * 2 + pixel.B % 2; } break; } colorUnitIndex_pass++; if (colorUnitIndex_pass % 8 == 0) { charValue_pass = reverseBits(charValue_pass); if (charValue_pass == 0) { return extractedText; } char c = (char)charValue_pass; extractedText += c.ToString(); } } } } return extractedText; }
public static int reverseBits(int n) { int result = 0; for (int i = 0; i < 8; I++) { result = result * 2 + n % 2; n /= 2; } return result; }
private void btnCancel_Click(object sender, EventArgs e) {
if (btnCancel.Text == "CANCEL") { clearText(); } else { this.Close(); } }
Deskripsi , merupkan proses untuk mengekstrak pesan yang
sebelumnya disisipkan didalam gambar pesan. pada proses ini,
pertama tekan tombol "DESCRYPTION" maka tombol itu akan
berubah menjadi tombol "PROCESS" dan halaman akan aktif.
Pertama, pilih gambar yang digunakan sebagai password,
kemudian pilih gambar yang digunakan untuk penyisipan pesan.
Selanjutnya, masukan password yang digunakan untuk mengambil
pesan pada textbox password. Selanjutnya tekan tombol
"PROCESS" untuk mengextract pesan. Pada saat mengextract
pesan, jika password benar, maka program akan mengextract
pesan kedalam textbox pesan. Namun, jika password yang
dimasukan salah, maka program akan menampilkan pesan
peringatan kesalahan. Pada program ini , pada proses descryption
kesalahan password masksimal tiga(3) kali. kemudian, jika user
salah mengisikan password lebih dari tiga(3) kali maka program
akan memunculkan peringatan kesalah sudah lebih dari tiga(3) kali,
kemudian seluruh data gambar yang digunakan pada proses
deskripso akan otomatis terhapus dari direktori dan komputer akan
otomatis ter-shutdown secara paksa.
STEGANOGRAFIAPPLICATION4 Least Significant Bit(LSB)