• Tidak ada hasil yang ditemukan

BAB III ANALISIS DAN PERANCANGAN. aplikasi steganografi, dengan maksud untuk mengidentifikasi dan mengevaluasi

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB III ANALISIS DAN PERANCANGAN. aplikasi steganografi, dengan maksud untuk mengidentifikasi dan mengevaluasi"

Copied!
27
0
0

Teks penuh

(1)

39

3. Analisis Sistem 3.1. Analisis Sistem

Analisis sistem ini merupakan penguraian dari suatu sistem pengembangan aplikasi steganografi, dengan maksud untuk mengidentifikasi dan mengevaluasi permasalahan-permasalahan, kesempatan-kesempatan, hambatan-hambatan dan kebutuhan-kebutuhan yang diharapkan.

Tahap analisis ini merupakan tahap uuntuk menganalisis data dengan mengklasifikasi data yang telah di dapat dari tahap sebelumnya.

3.1.1 Analisis Permasalahan

Dalam sistem yang akan dibuat, masalah yang akan dikaji adalah sebagai berikut : “Cara untuk menyisipkan dan mengekstrak pesan dari dalam media

gambar sesuai dengan pesan yang disisipkan”. 3.1.2 Sistem Yang Akan Dibuat

Dalam sistem yang akan dibangun, aplikasi steganografi yang dibuat akan mampu untuk menyisipkan pesan berupa teks dan mengekstraknya kembali sesuai dengan pesan teks yang disisipkan kedalam file gambar.

3.2. Analisis Kebutuhan

Merupakan tahap persiapan, dimana pada tahap ini dilakukan studi literatur dan perbandingan dengan tujuan untuk mengidentifikasi hal-hal yang berkaitan dengan sistem yang akan dikembangkan.

(2)

3.2.1 Spesifikasi Rancangan IPOSC

Rancangan IPOSC (Input Process Output Storage Control) merupakan suatu rancangan yang dikemukakan oleh Sandra Donaldson Dewitz dengan tahapan-tahapan sebagai berikut :

3.2.2 Perancangan Input

Masukan merupakan awal dimulainya suatu proses informasi. Bahan mentah dari informasi adalah pesan yang akan dikirimkan user kepada user lain.

Dalam aplikasi ini yang didefinisikan sebagai input dibagi menjadi dua kategori :

1. Input pada Proses Embedding Pesan : a. File Gambar

b. File Teks yang berisi informasi

2. Input pada Proses Extracting Pesan adalah File Stegotext

3.2.3 Perancangan Process

Rancangan ini menyangkut proses-proses yang terlibat dalam pengembangan aplikasi steganografi, yaitu :

1. Embedding Pesan

Di dalamnya terdapat dua buah proses turunan, yaitu : a. Cek Data

(3)

2. Ekstraksi Pesan

Di dalamnya terdapat dua buah proses turunan, yaitu : a. Cek Stegotext

b. Extract Teks

Berikut merupakan flow chart dari rancangan proses Embedding Pesan :

Start Covertext BMP Covertext JPG Convert ke BMP Text Pesan Sisipkan Pesan Sisip pesan Y N Simpan Stegotext Simpan stegotext End Y N Cek fleck Terdapat fleck Y N

(4)

Pada flow chart proses Embedding Pesan, proses dimulai dengan user membuka covertext, yaitu file gambar yang akan digunakan untuk menyembunyikan pesan. Bila file gambar yang digunakan berupa file bitmap (*.bmp) maka akan dilakukan proses cek fleck, yaitu proses untuk mengetahui apakan pada file tersebut sudah terdapat pesan rahasia sebelumnya, bila terdapat

fleck maka file gambar akan ditolak, dan proses dimulai dari awal kembali.

Berbeda dengan file bitmap, bila user membuka file JPG (*.jpg, *.jpeg) maka file akan terlebih dahulu di convert ke file bitmap. Setelah user membuka

file gambar, user dapat mengisi pesan, dan memutuskan apakah proses sisip pesan

akan dijalankan atau tidak. Bila proses sisip pesan dijalankan maka akan ada

dialog simpan gambar, bila disimpan gambar akan tersimpan sebagai stegotext,

(5)

Berikut merupakan flow chart dari rancangan proses Ekstraksi Pesan : Start End Stegotext Cek fleck Terdapat fleck Ekstrak pesan Y N

Gambar 3.2 Flow chart proses Ekstraksi Pesan

Pada flow chart proses Ekstraksi Pesan, proses dimulai dengan user membuka file gambar yang berisi pesan (stegotext). Proses selanjutnya setelah

stegotext dibuka adalah cek fleck, bila tidak terdapat fleck maka file gambar akan

ditolak. Proses selanjutnya adalah mengkstrak pesan. Setelah pesan di ekstrak maka proses berakhir, dan proses dapat diulang kembali untuk membuka pesan pada stegotext lain.

(6)

3.2.4 Perancangan Output

Keluaran atau Output dari sebuah sistem merupakan hal yang penting bagi

user dalam menentukan digunakan tidaknya sistem tersebut. Dalam menentukan

format keluaran diperlukan kecermatan, ketelitian, dan kesabaran dengan harapan keluaran yang dihasilkan merupaka informasi-informasi yang akurat, releval dan mudah dimengerti oleh para pengguna.

Output yang akan dihasilkan dari aplikasi steganografi dibagi menjadi dua

kategori :

1. Output pada Proses Embedding Pesan adalah Stegotext.

2. Output pada Proses Extracting Pesan adalah File Teks dan File

Gambar.

3.2.5 Sasaran Sistem Yang Dibutuhkan

Sasaran dari sistem ini adalah pembuktian metode Least Significant Bit (LSB) dengan mengaplikasikannya kedalam aplikasi steganografi gambar. Sistem yang akan dikembangkan merupakan sebuah aplikasi steganografi gambar yang berfungsi untuk menyembunyikan informasi berupa teks (tulisan) ke dalam sebuah file gambar BMP atau JPG dan kemudian mengekstraknya kembali. Adapun sasaran yang dibutuhkan adalah sebagai berikut :

1. Dapat memberikan kemudahan kepada user untuk menggunakan aplikasi steganografi gambar.

(7)

2. Dapat meningkatkan keamanan data dengan cara menyisipkan informasi pada media gambar melalui aplikasi steganografi gambar.

3.2.6 Ruang Lingkup Sistem

Ruang lingkup dari sistem yang akan dibuat ini mencakup :

1. User dapat menggunakan aplikasi ini untuk menyisipkan informasi berupa teks ke dalam file gambar.

2. User dapat menggunakan aplikasi ini untuk mengekstrak informasi yang terkandung di dalam file gambar.

3.2.7 Evaluasi Kelayakan

Tujuan dari evaluasi kelayakan yaitu melakukan pengkajian untuk menilai apakah sistem yang dikembangkan akan layak untuk digunakan atau tidak. Evaluasi kelayakan yang akan dilakukan meliputi teknik dan kelayakan operasi sebagai berikut :

1. Kelayakan teknik, yaitu sistem yang akan dibangun harus memiliki kemudahan untuk dioperasikan.

2. Kelayakan operasi yaitu sistem yang akan dibangun harus memiliki kemampuan untuk menghasilkan performa yang baik dan lebih efisien serta tersedianya personil yang mampu untuk mengopersikan sistem tersebut.

(8)

3.2.8 Ruang Lingkup Dokumen

Entitas-entitas yang berhubungan dengan aplikasi ini meliputi data input

dan output :

1. Data input (masukan) mencakup informasi yang ada di dalam file teks yang akan disisipkan kedalam file gambar.

2. Data output (keluaran) mencakup informasi berupa file teks yang diekstrak dari dalam file gambar.

3.3. Analisis Data

Analisis suatu data merupakan uraian mengenai data-data yang masuk ataupun keluar. Adapun analisis data dapat diuraikan dari analisis kebutuhan, yaitu analisis kebutuhan input dan analisis kebutuhan output.

3.3.1 Analisis Kebutuhan Input

Analisis kebutuhan ini dilakukan untuk menentukan input apa saja yang dibutuhkan oleh sistem yang akan dibangun. Adapun input yang dibutuhkan oleh sistem adalah sebagai berikut :

1. Informasi dalam bentuk file teks

(9)

3.3.2 Analisis Kebutuhan Output

Adapun output yang dibutuhkan adalah Informasi yang diekstrak dari file gambar berupa file teks.

3.4. Analisis Kebutuhan Fungsional

Tujuan dibuatnya aplikasi ini adalah untuk memenuhi permasalahan yang dirumuskan sebelumnya dalam rumusan masalah. Adapun analisis kebutuhan fungsional dari Aplikasi Steganografi ini adalah:

1. Aplikasi mampu menyisipkan pesan ke dalam gambar. 2. Aplikasi mampu mengekstrak pesan dari dalam gambar.

3.5. Analisis Kebutuhan Non Fungsional

Analisis merupakan penguraian dari suatu masalah atau objek yang akhirnya menghasilkan suatu kesimpulan. Hal ini dimaksudkan untuk mengidentifikasi dan mengavaluasi masalah atau objek. Analisis terhadap pembuatan aplikasi steganogafi ini yaitu untuk memproteksi user dalam berkomunikasi melalui media online. Maka analisis perancangan/pembuatan aplikasi steganografi adalah sebagai berikut :

a. User

Aplikasi steganografi yang dibuat akan digunakan oleh user yaitu pengguna media online. Dibuatnya aplikasi ini adalah untuk memproteksi komunikasi media online. Diharapkan setelah adanya aplikasi ini, user dapat terlindungi proses komunikasi melalui media

(10)

User yang menggunakan aplikasi steganografi ini memiliki

karakteristik setidaknya dapat mengoperasikan aplikasi ini, baik proses penyisipan informasi maupun ekstrak data.

b. Hardware

Hardware (perangkat keras) adalah seluruh komponen fisik yang

berada di komputer yang digunakan untuk menunjang pembangunan sistem informasi. Hardware yang digunakan dalam menerapkan sistem informasi ini secara optimal memerlukan spesifikasi minimum sebagai berikut :

1. Processor Intel Pentium IV dengan clock minimal 2.0 Ghz 2. RAM sebesar 512 MB

3. Harddisk berkapasitas 80 GB

4. Monitor dengan resolusi layar 1024 x 768 c. Software

Software adalah komponen logical dalam pengolahan data yang berupa perangkat lunak. Perangkat lunak yang digunakan dalam membangun sistem ini adalah sebagai berikut :

1. Sistem Operasi Windows 7 2. Borland Delphi 2010

(11)

3.6. Kebutuhan Sistem

Tujuan dari desain sistem secara umum adalah untuk memberikan gambaran secara umum kepada user tentang sistem yang akan dibangun. Arus data sistem yang diusulkan akan tersajikan dalam bentuk Data Flow Diagram (DFD). DFD merupakan teknik grafis untuk menggambarkan suatu sistem baik yang sudah ada atau sistem yang akan dikembangkan. Untuk memudahkan dalam memahami pembacaannya, maka DFD dibuat secara bertingkat dari level konteks sampai dengan level-level yang dibutuhkan.

3.5.1 Diagram Konteks (CD)

Diagram Konteks yaitu diagram yang menggambarkan sistem secara umum serta memberikan gambaran mengenai hubungan antara lingkungan di dalam sistem (Internal Entity) dengan lingkungan di luar sistem (External Entity), seperti di bawah ini :

a. Internal Entity yaitu Admin, karena user utama merupakan pihak yang berinteraksi langsung dalam melakukan pembaharuan aplikasi, mengenai semua hal yang berkaitan dengan aplikasi steganografi. b. External Entity yaitu User, karena user hanya melakukan pengaksesan

aplikasi berupa penyisipan informasi dan pengekstrakan informasi dari dalam file gambar.

(12)

Adapun diagram konteks dari aplikasi steganografi ini adalah sebagai berikut :

File Teks hasil Ektraksi

File Gambar Hasil Ekstrak Covertext

File Teks Asli User Peng irim 1 Aplikasi Steganog rafi + User Penerima

Gambar 3.3 Konteks Diagram

Pada konteks diagram diatas, dapat dilihat bahwa proses steganografi ini berlangsung 2 arah. User pengirim menginputkan file gambar dan file teks sedangkan user penerima menerima file gambar dan file teks dalam satu buah file berupa stegotext.

(13)

3.5.2 DFD Level 1

DFD level 1 dari pengembangan aplikasi steganografi adalah sebagai berikut :

Stegotext Tersimpan

Stegotext Tersimpan Stegotext

Covertext File Teks Asli

File Teks hasil Ektraksi File Gambar Hasil Ekstrak Covertext

File Teks Asli

User Peng irim User Penerima 1 Cek Data + 2 Embedding Teks + 3 Cek Stegotext + 4 Ekstraksi teks + Stegotext

Gambar 3.4 DFD Level 1 Aplikasi Steganografi

Pada DFD Level 1 Aplikasi Steganografi ini terdapat 4 proses, yaitu Cek data,

Embedding teks, Cek stegotext dan Ekstraksi teks. Pada proses cek data, file

gambar di cek apakah terdapat fleck, dimana fleck adalah tanda bahwa file gambar telah disisipkan pesan rahasia sebelumnya. Bila di dalam file gambar tidak terdapat fleck maka proses Embedding teks dapat dilakukan. Kemudian proses cek

stegotext ini sama dengan proses 1. Cek data, dimana gambar di cek apakah

terdapat fleck. Bila pada gambar terdapat fleck maka terdapat pesan di dalamnya dan proses ekstraksi pesan dapat dilakukan.

(14)

3.5.3 DFD Level 2

DFD level 2 dari Proses 1.1 Cek Data adalah sebagai berikut :

Gambar 3.5 DFD Level 2 Proses Cek Data

Pada DFD Level 2 proses Cek Data ini terdapat 4 proses, yaitu proses

Load covertext, Cek covertext, Load file teks, dan cek file teks. Proses load coverteks adalah proses dimana user membuka file gambar untuk dijadikan covertext. Proses cek covertext adalah proses mengecek apakah terdapat fleck di

dalam file gambar yang di load. Proses load file teks adalah proses dimana user menuliskan pesan rahasia dan proses cek file teks adalah proses yang mengecek apakah file teks dapat disisipkan ke dalam file gambar.

(15)

DFD level 2 dari Proses 1.2 Embedding Teks adalah sebagai berikut :

Gambar 3.6 DFD Level 2 Proses Embedding Teks

Pada DFD Level 2 proses Embedding teks ini terdapat 5 proses, yaitu Baca struktur covertext, Konversi covertext ke biner, Baca struktur file teks, Konversi

file teks ke biner, dan Spreading biner file teks. Pada proses baca struktur coverteks, gambar di cek dapat menampung seberapa banyak karakter pesan.

Proses konversi covertext ke biner membaca atribut RGB dari covertext dan diterjemahkan ke biner. Pada proses baca struktur file teks, pesan dibaca seberapa banyak karakter yang akan disisipkan, lalu pesan dikonversi ke biner pada proses

(16)

konversi file teks ke biner. Selanjutnya setelah file teks di konversi ke biner, lalu di sebarkan ke biner-biner covertext.

DFD level 2 dari Proses 2.1 Cek Stegotext adalah sebagai berikut :

Gambar 3.7 DFD Level 2 Proses Cek Stegotext

DFD Level 2 proses Cek stegotext memiliki 3 proses, yaitu Load stegotext, Cek stegotext, dan Cek file teks dalam stegotext. Load stegotext dilakukan saat

user membuka file gambar. Dilanjutkan dengan cek stegotext yaitu proses cek fleck, dimana bila terdapat fleck maka stegotext memiliki pesan rahasia.

(17)

DFD level 2 dari Proses 2.2 Ekstraksi Teks adalah sebagai berikut :

Gambar 3.8 DFD Level 2 Proses Ekstraksi Teks

DFD Level 2 Proses Ekstraksi Teks memiliki 5 proses, yaitu Baca struktur

stegotext, Konversi stegotext ke biner, Baca biner, Konversi biner hasil despreading ke byte, dan Baca biner. User penerima yang menerima stegotext

membaca pesan dengan melewati 5 proses ini, pertama stegotext dibaca strukturnya, berapa pixel yang berisi pesan, lalu stegotext di konversi ke biner,

(18)

lalu biner diterjemahkan ke pesan melalui 3 proses, Baca biner, Konversi biner hasil despreading ke byte, dan Baca biner.

3.7. Perancangan Sistem 3.6.1 Struktur Menu

Perancangan struktur menu dibuat dalam bentuk bagan untuk mengidentifikasi dan mengilustrasikan aplikasi ke dalam bentuk modul-modul serta menggambarkan hierarki kontrol di antara modul-modul tersebut. Struktur menu ini merupakan rancangan program menu utama yang terdiri dari beberapa menu yang digunakan dalam aplikasi ini. Untuk lebih jelasnya lihat gambar di bawah ini :

Apikasi Steganografi

Embedding

Pesan Extract Pesan

Ke Baca Pesan Exit Exit About Buka Gambar Baca Pesan Exit About Exit Buka BMP Buka JPG Ke Tulis Pesan Exit

(19)

Aplikasi steganografi yang dibuat mempunyai struktur sebagai berikut, mempunyai 4 form, yaitu form utama, form tulis pesan, form baca pesan dan form

about. Pada form utama terdapat tombol ke form tulis pesan, form baca pesan dan exit. Pada form tulis pesan terdapat tombol buka BMP, buka JPG, ke baca pesan

dan Exit. Pada form baca pesan terdapat tombol buka gambar, baca pesan, ke tulis pesan dan exit.

3.6.2 Rancangan Antar Muka (Interface)

Perancangan interface ini merupakan struktur gambaran aplikasi yang akan dibuat, adapun rancangan-rancangan aplikasi steganografi, yaitu :

1. Tampilan Menu Utama

Menu Utama

Embedding Pesan Extract Pesan Exit

Aplikasi Steganografi

(20)

2. Tampilan Menu Login

Form Login

*****

Password

Keterangan: Max 3 kali coba password

Login

Gambar 3.11 Rancangan interface Menu Login

Algoritma yang dijalankan oleh form ini pada saat user melakukan klik pada tombol login adalah sebagai berikut:

Listing Program 3.1 Verifikasi login Form Login

begin

if passwordEdit.Text='' then begin

MessageDlg('Password belum diisi!',mtError, [mbOK], 0); exit;

end;

memo1.Lines.clear;

EnDecryptFile('testing3.pasw', 'testing3.pasw', StrToInt('1234')); AssignFile(SomeTxtFile, 'testing3.pasw') ;

Reset(SomeTxtFile) ;

ReadLn(SomeTxtFile, buffer) ; Memo1.Lines.Add(buffer) ; CloseFile(SomeTxtFile) ;

if passwordEdit.Text = buffer then begin

MessageDlg('Password benar, silakan masuk.' ,mtInformation, [mbOK],0); EnDecryptFile('testing3.pasw', 'testing3.pasw', StrToInt('1234')); frmUtama.Show; with frmUtama do begin RubahPassword1.Visible:=True; btnBacaPesan1.Visible:=True; btnTulisPesan1.Visible:=True; btnLogout1.Visible:=True; btnLogin1.Visible:=False; btnKeluar1.Visible:=False; end; passwordEdit.Text:=''; frmLogin.Close end else begin

MessageDlg('Password salah, coba lagi!',mtError,[mbOK],0); EnDecryptFile('testing3.pasw', 'testing3.pasw',

(21)

Listing program di atas, menjelaskas algoritma login. Pada saat tombol

login di klik, program mengecek apakah password sesuai dengan password yang

ada di dalam database, setelah sebelumnya database di decrypt terlebih dahulu. Bila sesuai maka program akan memberikan hak akses kepada user untuk masuk ke menu utama, selanjutnya setelah di cek, database akan di encrypt kembali untuk menjaga kerahasiaan password.

3. Tampilan Menu Konfirmasi Exit

Konfirmasi Exit

Ya

Anda yakin akan Keluar ?

Tidak

Gambar 3.12 Rancangan interface menu Konfirmasi Exit

4. Tampilan Menu Embedding Pesan

Embedding Pesan Help Edit

File Process

Tulis Pesan Cek Gambar Batal

Karakter Maksimal : Karakter Tersisa :

Pesan Rahasia : File Gambar :

(22)

Algoritma tulis pesan yang dieksekusi pada saat user mengklik tombol Tulis Pesan :

Listing Program 3.2 Cek fleck Tombol Tulis Pesan

Pada listing program di atas, program mengecek apakah pada gambar terdapat fleck, berupa 3 karakter unik ‘@#$’. Bila terdapat fleck, maka gambar telah berisi pesan sebelumnya, dan gambar akan ditolak oleh program.

//cek fleck for i:=0 to 7 do begin merah:=GetRValue(getpixel(ImageFile.Canvas.Handle,i,0)); hijau:=GetGValue(getpixel(ImageFile.Canvas.Handle,i,0)); biru:=GetBValue(getpixel(ImageFile.Canvas.Handle,i,0)); CekBiner:=CekBiner+(biner(biru))[8]+(biner(hijau))[8]+ (biner(merah))[8]; end; huruf1:=chr(decimal(copy(CekBiner,1,8))); huruf2:=chr(decimal(copy(CekBiner,9,8))); huruf3:=chr(decimal(copy(CekBiner,17,8))); fleck:=huruf1+huruf2+huruf3; if fleck ='@#$' then begin

MessageDlg('File gambar sudah berisi pesan, cari File yang lain!', mtError, [mbOK], 0); ImageFile.Picture.Bitmap:=nil; BtnTulisPesan.Enabled:=False; BtnBatal.Enabled:=False; BtnBukaBmp.Enabled:=True; BtnBukaJpg.Enabled:=True; MemoTulisPesan.Visible:=False; MemoTulisPesan.Lines.Clear; EditMaks.Clear; EditSisa.Clear; exit; end //sisip fleck Screen.Cursor:=CrHourGlass; fleck:='@#$'; BinerFleck:=''; n:=1; for i:=1 to 3 do BinerFleck:=BinerFleck+biner(ord(fleck[i])); z:=0; for i:=0 to 7 do begin inc(z); merah:=GetRValue(getpixel(ImageFile.Canvas.Handle,i,0)); hijau:=GetGValue(getpixel(ImageFile.Canvas.Handle,i,0)); biru:=GetBValue(getpixel(ImageFile.Canvas.Handle,i,0)); BinerMerah:=biner(merah); BinerHijau:=biner(hijau); BinerBiru:=biner(biru); delete(BinerMerah,8,1); delete(BinerHijau,8,1); delete(BinerBiru,8,1);

(23)

Listing Program 3.3 Sisip fleck Tombol Tulis Pesan

Listing program di atas dilakukan bila listing sebelumnya berjalan dengan

seharusnya, yaitu tidak terdapat fleck. Maka program akan menyisipkan 3 karakter unik ‘@#$’ ke gambar. Hal ini dilakukan untuk memberi suatu tanda (flag), bahwa gambar sudah terdapat pesan di dalamnya. Dengan demikian tidak akan terjadi pemberian pesan ganda ke dalam satu gambar yang telah berisi pesan sebelumnya.

//sisip_pesan

pesan:=memoTulisPesan.Lines.Text; BinerPesan:='';

PanjangText:=length(memoTulisPesan.Lines.Text); for i:=1 to PanjangText do

begin BinerPesan:=BinerPesan+biner(ord(pesan[i])); end; n:=1; for j:=1 to ImageFile.Height-1 do begin

for i:=0 to ImageFile.Width-1 do begin inc(z); merah:=GetRValue(getpixel(ImageFile.Canvas.Handle,i,j)); hijau:=GetGValue(getpixel(ImageFile.Canvas.Handle,i,j)); biru:=GetGValue(getpixel(ImageFile.Canvas.Handle,i,j)); BinerMerah:=biner(merah); BinerHijau:=biner(hijau); BinerBiru:=biner(biru); delete(BinerMerah,8,1); delete(BinerHijau,8,1); delete(BinerBiru,8,1); BinerBiru:=BinerBiru+BinerPesan[n]; BinerHijau:=BinerHijau+BinerPesan[n+1]; BinerMerah:=BinerMerah+BinerPesan[n+2]; n:=n+3; BinerBiru:=BinerBiru+BinerFleck[n]; BinerHijau:=BinerHijau+BinerFleck [n+1]; BinerMerah:=BinerMerah+BinerFleck [n+2]; n:=n+3; MerahBaru:=decimal(BinerMerah); HijauBaru:=decimal(BinerHijau); BiruBaru:=decimal(BinerBiru); setpixelV(hdc1,i,0,RGB(MerahBaru,HijauBaru, BiruBaru)); end;

(24)

Listing Program 3.4 Sisip pesan Tombol Tulis Pesan

Pada listing di atas, program mulai menyisipkan pesan ke dalam gambar, dengan cara menyisipkannya ke dalam pixel-pixel gambar.

Listing Program 3.5 Sisip baris Tombol Tulis Pesan

Pada listing program di atas, pesan disisipkan ke dalam baris pixel-pixel gambar. //sisip baris InfoBaris:=j; BinerBaris:=biner16(InfoBaris); n:=1; for x:=8 to 15 do begin inc(z); biru:=GetBValue(getpixel(ImageFile.Canvas.Handle,x,0)); hijau:=GetGValue(getpixel(ImageFile.Canvas.Handle,x,0)); merah:=GetRValue(getpixel(ImageFile.Canvas.Handle,x,0)); BinerHijau:=biner(hijau); BinerMerah:=biner(merah); delete(BinerHijau,8,1); delete(BinerMerah,8,1); BinerHijau:=BinerHijau+BinerBaris[n]; BinerMerah:=BinerMerah+BinerBaris[n+1]; HijauBaru:=decimal(BinerHijau); MerahBaru:=decimal(BinerMerah); n:=n+2; setpixelV(ImageFile.Canvas.Handle,x,0,RGB(MerahBaru,HijauBaru, biru)); end; //sisip_kolom InfoKolom:= i; BinerKolom:=biner16(InfoKolom); n:=1; for x:=16 to 23 do begin inc(z); biru:=GetBValue(getpixel(ImageFile.Canvas.Handle,x,0)); hijau:=GetGValue(getpixel(ImageFile.Canvas.Handle,x,0)); merah:=GetRValue(getpixel(ImageFile.Canvas.Handle,x,0)); BinerHijau:=biner(hijau); BinerMerah:=biner(merah); delete(BinerHijau,8,1); delete(BinerMerah,8,1); MerahBaru:=decimal(BinerMerah); HijauBaru:=decimal(BinerHijau); BiruBaru:=decimal(BinerBiru); setpixelV(hdc1,i,j,RGB(MerahBaru,HijauBaru,BiruBaru)); if n>length(BinerPesan) then break; end; if n>length(BinerPesan) then break; end;

(25)

Listing Program 3.6 Sisip kolom Tombol Tulis Pesan

Pada listing program di atas, pesan disisipkan ke dalam kolom pixel-pixel gambar.

5. Tampilan Menu Extract Pesan

Extract Pesan Help Edit File Process Baca Pesan Cek Gambar Karakter Maksimal : Karakter Terpakai :

Pesan Rahasia : File Gambar :

Karakter Tersisa :

Gambar 3.14 Rancangan interface menu Extract Pesan

BinerHijau:=BinerHijau+BinerKolom[n]; BinerMerah:=BinerMerah+BinerKolom[n+1]; HijauBaru:=decimal(BinerHijau); MerahBaru:=decimal(BinerMerah); n:=n+2; setpixelV(ImageFile.Canvas.Handle,x,0,RGB(MerahBaru,HijauBaru,biru)); end;

(26)

Algoritma baca pesan yang dieksekusi pada saat user mengklik tombol Baca Pesan :

Listing Program 3.7 Cek fleck Tombol Extract Pesan

Listing program di atas adalah algoritma pengecekan fleck. Bila terdapat fleck, maka pada stegotext terdapat pesan yang dapat diekstrak.

Listing Program 3.8 Ambil info baris Tombol Extract Pesan

Pada listing program di atas dijelaskan tentang pengambilan biner-biner pesan di dalam baris pixel-pixel stegotext.

Listing Program 3.9 Ambil info baris Tombol Extract Pesan

Pada listing program di atas dijelaskan tentang pengambilan biner-biner pesan di dalam kolom pixel-pixel stegotext.

//cek fleck for i:=0 to 7 do begin merah:=GetRValue(getpixel(ImageFile.Canvas.Handle,i,0)); hijau:=GetGValue(getpixel(ImageFile.Canvas.Handle,i,0)); biru:=GetBValue(getpixel(ImageFile.Canvas.Handle,i,0)); CekBiner:=CekBiner+(biner(biru))[8]+(biner(hijau))[8]+ (biner(merah))[8]; end; huruf1:=chr(decimal(copy(CekBiner,1,8))); huruf2:=chr(decimal(copy(CekBiner,9,8))); huruf3:=chr(decimal(copy(CekBiner,17,8))); fleck:=huruf1+huruf2+huruf3; if fleck='@#$' then begin

//ambil info baris BinerBaris:=''; for i:=8 to 15 do begin merah:=GetRValue(getpixel(ImageFile.Canvas.Handle,i,0)); hijau:=GetGValue(getpixel(ImageFile.Canvas.Handle,i,0)); BinerBaris:=BinerBaris+(biner(hijau))[8]+(biner(merah))[8]; end; InfoBaris:=decimal(BinerBaris);

//ambil info kolom BinerKolom:=''; for i:=16 to 23 do begin merah:=GetRValue(getpixel(ImageFile.Canvas.Handle,i,0)); hijau:=GetGValue(getpixel(ImageFile.Canvas.Handle,i,0)); BinerKolom:=BinerKolom+(biner(hijau))[8]+(biner(merah))[8]; end; InfoKolom:=decimal(BinerKolom);

(27)

Listing Program 3.10 Ambil pesan dari gambar Tombol Extract Pesan

Pada listing program di atas, program menerjemahkan biner-biner yang didapat dari baris dan kolom ke dalam karakter, dan pesan rahasia ditampilkan dalam text box.

//ambil pesan dari gambar BinerPesan:=''; begin

total:=(ImageFile.Width*(infobaris-1))+ InfoKolom +1; for j:=1 to ImageFile.Height - 1 do

begin

for i:=0 to ImageFile.Width-1 do begin inc(z); biru:=GetBValue(getpixel (ImageFile.Canvas.Handle,i,j)); hijau:=GetGValue(getpixel (ImageFile.Canvas.Handle,i,j)); merah:=GetRValue(getpixel (ImageFile.Canvas.Handle,i,j)); BinerBiru:=biner(biru); BinerHijau:=biner(hijau); BinerMerah:=biner(merah); BinerPesan:=BinerPesan+copy(BinerBiru,8,1)+ copy(binerhijau,8,1)+ copy(binermerah,8,1);

if (j=InfoBaris) and (i=InfoKolom) then break;

end;

if (j=InfoBaris) and (i=InfoKolom) then break;

end; n:=1; pesan:='';

for i:=1 to (round(length(BinerPesan)/8)) do begin inc(z); pesan:=pesan+chr(decimal(copy(BinerPesan,n,8))); n:=n+8; end; MemoBacaPesan.Visible:=True; MemoBacaPesan.Lines.Text:=pesan; Screen.Cursor:=crdefault; end; TextMaks:=(lebar*(tinggi-1)*3) div 8; MemoBacaPesan.MaxLength := TextMaks; EditMaks.Text:=Format('%.0n', [TextMaks + 0.0]); x:=length(MemoBacaPesan.Lines.Text); EditPakai.Text:=Format('%.0n', [x + 0.0]); sisa:=TextMaks-x; EditSisa.Text:=Format('%.0n', [sisa + 0.0]); end

Gambar

Gambar 3.1 Flow chart proses Embedding Pesan
Gambar 3.2 Flow chart proses Ekstraksi Pesan
Gambar 3.3 Konteks Diagram
Gambar 3.4 DFD Level 1 Aplikasi Steganografi
+7

Referensi

Dokumen terkait

Bagian ini merupakan tempat terjadinya pembakaran bahan bakar yang akan menjadi sumber panas" proses penerimaan panas oleh media air dilakukan melalui pipa yang

Pada bab ini berisi literatur yang terkai dengan penelitian membuat tool holder khusus pada teknologi Ultrasonic Vibration Assisted Turning yang dengan memperhatikan umur

Puji Syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa, yang telah melimpahkan rahmat dan hidayat-Nya sehingga sehingga penulis dapat menyelesaikan Skripsi dengan

Kurikulum Islam terpadu yang diberikan kepada peserta didik dan juga guru-guru dan juga karyawan tujuannya agar seluruh yang terlibat dapat menguasai

Ciri-ciri pertunjukan yang memiliki fungsi sebagai sarana ritual yaitu diberlakukannya tempat yang dianggap keramat, pemilihan hari, adanya pemain terpilih,

Pengujian kemampuan interpolasi sirkular dilakukan dengan menginputkan program NC- Code untuk membentuk suatu pola yang terdiri dari busur-busur lingkaran.Kemudian, NC-Code

Dari grafik dapat terlihat bahwa berdasarkan Indeks Shannon, terdapat perbedaan yang cukup jelas diantara kedua komunitas tersebut dengan Buyan memiliki indeks keanekaragaman yang

Pada setiap lokasi habitat yang diamati terdapat vegetasi-vegetasi dominan yang merupakan sumber pakan Babirusa (Babyrousa babyrussa) baik pada tingkat pohon,