Definisi Dasar
Pengolahan citra
adalah salah satu cabang dari ilmu informatika. Pengolahan citra
berkutat pada usaha untuk melakukan transformasi suatu citra /gambar
menjadi citra lain dengan menggunakan teknik tertentu.
Citra
adalah gambar dua dimensi yang dihasilkan dari gambar analog dua
dimensi yang kontinu menjadi gambar diskrit melalui proses sampling.
Gambar analog dibagi menjadi N baris dan M kolom sehingga menjadi
gambar diskrit. Persilangan antara baris dan kolom tertentu disebut
dengan piksel. Contohnya adalah gambar/titik diskrit pada baris n dan
kolom m disebut dengan piksel [n,m]
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”.
Pada
umumnya, pesan steganografi muncul dengan rupa lain seperti gambar,
artikel, daftar belanjaan, atau pesan-pesan lainnya. Pesan yang tertulis
ini merupakan tulisan yang menyelubungi atau menutupi. Contohnya,
suatu pesan bisa disembunyikan dengan menggunakan tinta yang tidak
terlihat di antara garis-garis yang kelihatan.
Teknik
steganografi meliputi banyak sekali metode komunikasi untuk
menyembunyikan pesan rahasia (teks atau gambar) di dalam berkas-berkas
lain yang mengandung teks, image, bahkan 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.
Tujuan
dari steganografi adalah merahasiakan atau menyembunyikan keberadaan
dari sebuah pesan tersembunyi atau sebuah informasi. Dalam prakteknya,
kebanyakan pesan disembunyikan dengan membuat perubahan tipis terhadap
data digital lain yang isinya tidak akan menarik perhatian dari
penyerang potensial, sebagai contoh sebuah gambar yang terlihat tidak
berbahaya. Perubahan ini bergantung pada kunci (sama pada kriptografi)
dan pesan untuk disembunyikan. Orang yang menerima gambar kemudian dapat
menyimpulkan informasi terselubung dengan cara mengganti kunci yang
benar ke dalam algoritma yang digunakan.
Pada
metode steganografi cara ini sangat berguna jika digunakan pada cara
steganografi komputer karena banyak format berkas digital yang dapat
dijadikan media untuk menyembunyikan pesan. Format yang biasa digunakan
di antaranya:
- Format image : bitmap (bmp), gif, pcx, jpeg, dll.
- Format audio : wav, voc, mp3, dll.
- Format lain : teks file, html, pdf, dll.
Kelebihan
steganografi jika dibandingkan dengan kriptografi adalah
pesan-pesannya tidak menarik perhatian orang lain. Pesan-pesan berkode
dalam kriptografi yang tidak disembunyikan, walaupun tidak dapat
dipecahkan, akan menimbulkan kecurigaan. Seringkali, steganografi dan
kriptografi digunakan secara bersamaan untuk menjamin keamanan pesan
rahasianya.
Sekarang saya akan membahas
mengenai tugas yang saya buat, yaitu steganografi untuk menyembunyikan
suatu gambar dalam gambar lain. Yang pertama harus dilakukan adalah
membuat interface aplikasi dengan menggunakan matlab. Berikut adalah
desain interface aplikasi yang saya buat:
Selanjutnya kita harus menambahkan script
agar interface diatas dapat berfungsi menjadi aplikasi steganografi.
Berikut adalah potongan script yang digunakan :
- Script untuk memilih image:
function btnstego_Callback(hObject, eventdata, handles)
% hObject handle to btnstego (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
proyek=guidata(gcbo);
I=get(proyek.GbrAsli,'Userdata');
pesan=get(proyek.listbox1,'Userdata');
pesan=[pesan 'QQQQ'];
teksbin=str2bin(pesan);
gbr2=stegolsb(I,teksbin);
set(proyek.figsisipan,'CurrentAxes',proyek.GbrStego);
set(imshow(gbr2));
set(proyek.GbrStego,'Userdata',gbr2);
- Script untuk memilih simpan gambar:
function btnsimpangbr_Callback(hObject, eventdata, handles)
% hObject handle to btnsimpangbr (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
proyek=guidata(gcbo);
[namafile,direktori]=uiputfile('*.bmp','Simpan Gambar');
gbr2=get(proyek.GbrStego,'UserData');
imwrite(gbr2,namafile);
- Script untuk memilih teks:
function btnbukateks_Callback(hObject, eventdata, handles)
% hObject handle to btnbukateks (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
proyek=guidata(gcbo);
[namafile,direktori]=uigetfile('*.txt','Buka Teks');
teks=fopen(namafile,'r');
charteks=fread(teks,'uint8=>char');
fclose(teks);
pesan=sprintf(charteks);
set(proyek.listbox1,'string',pesan);
set(proyek.listbox1,'Userdata',pesan);
Cara Pengoperasian Program tersebut :
- Pilih button buka gambar setelah itu pilih gambar yang di inginkan seperti gambar dibawah ini :
- Pilih button buka teks setelah itu pilih teks yang di inginkan seperti gambar dibawah ini :
- Pilih button stego setelah maka gambar telah disisipkan sebuah file yang berbentuk .txt . seperti gambar dibawah ini akan menunjukan hasil stegonya :
sumber : Cepat Mahir GUI Matlab + Studi Kasus
penulis : Erick Paulus & Yessica Nataliani
penerbit : Andi Publisher
gan bisa bagi source code lengkapnya nda???
BalasHapustu jga ada yang kurab function bwt buka gambarnya gmana???
bi lo ngapain?
BalasHapusgan ko, pas di proses jadi gambar stego nya ga muncul itu kenapa?
BalasHapusgan bukanya searusnya itu ada 4 fungsi yaa
BalasHapusfungsi yang untuk embedding messageny mana ?
BalasHapusmbak ini pakai matlab versi berapa ya?
BalasHapusthanks infonya gan, yuk kunjungi juga klik disini dan disini
BalasHapus