Program Penambahan File Tersembunyi Pada File Gambar.

(1)

i

Universitas Kristen Maranatha

PROGRAM PENAMBAHAN FILE TERSEMBUNYI PADA

FILE GAMBAR

Hendy Tanumihardja / 0927041

Jurusan Sistem Komputer, Fakultas Teknik, Universitas Kristen Maranatha

Jalan Prof. drg. Suria Sumantri, MPH. No 65 Bandung 40164, Indonesia

ABSTRAK

Sejalan dengan perkembangan teknologi yang semakin pesat sehingga teknologi menjadi bagian hidup di masyarakat luas dan data digital telah banyak digunakan di berbagai bidang sehingga data digital mudah sekali berpindah – pindah tempat dari orang ke orang lain bahkan dalam hitungan detik data digital bisa tersebar sampai ke penjuru dunia dengan teknologi yang ada sekarang ini mudah diolah dan mudah disalah gunakan oleh orang yang tidak bertanggung jawab. Internet sebagai salah satu media informasi dan telekomunikasi yang banyak digunakan saat ini, menyebabkan distribusi data digital semakin mudah, sehingga membuat kepemilikan dari suatu data digital menjadi sesuatu yang penting di jaman informasi.

Data merupakan sesuatu yang harus dijaga, terutama kerahasiaan salah satu teknik pengamanan data digital adalah dengan menggunakan program yang dapat membuat file seakan tidak terlihat secara kasat mata. Agar masyarakat memiliki sebuah data yang aman, maka dibutuhkan suatu program yang dapat membuat data tersebut tidak terlihat oleh orang yang tidak berkepentingan. Tujuan Tugas Akhir ini adalah untuk menciptakan sebuat program yang dapat membuat data yang aman dengan cara menambahkan file yang tersembunyi pada file gambar sehingga hanya pemilik data dan yang berkepentingan yang dapat melihat data tersebut.


(2)

ii

Universitas Kristen Maranatha

APPLICATION FOR ADDING HIDDEN IMAGE FILE INTO

COVER IMAGE FILE

Hendy Tanumihardja / 0927041

Department of Computer Engineering, Faculty of Engineering, Maranatha Christian University

Prof. drg. Suria Sumantri, MPH. No 65 Bandung 40164, Indonesia

ABSTRACT

In line with the rapid development of technology so that technology becomes a part of life in the wider community and digital data have been widely used in various fields so that the digital data is easy to move - moving from person to person even within seconds of digital data can be spread to all corners of the world with current technology is easily processed and easily misused by people who are not responsible. Internet as a medium of information and telecommunications are widely used today, causing the distribution of digital data more easily, making the ownership of a digital data into something that is important in this information age.

Data is something that must be maintained, especially one technique confidentiality protection of digital data is to use a program that can create the file if not visible by naked eye. In order for people to have a secure data, then it takes a program that can make such data is not visible to unauthorized persons. Purpose of this thesis is to create a program that can make sebuat secure data by adding a hidden file on the image file so that only the owner of the data and are interested to see the data.


(3)

v

Universitas Kristen Maranatha

DAFTAR ISI

ABSTRAK ... i

ABSTRACT ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... v

DAFTAR GAMBAR ... vii

DAFTAR TABEL ... ix

BAB I PENDAHULUAN ... 1

1.1. Latar Belakang ... 1

1.2. Rumusan Masalah ... 2

1.3. Tujuan Penelitian ... 3

1.4. Pembatasan Masalah ... 3

1.5. Sistematika Penulisan... 4

BAB II TEORI PENDAHULUAN ... 5

2.1. Pengertian Program Komputer ... 5

2.2. Teori Informasi... 6

2.3. Konsep Steganografi ... 8

2.4. Steganografi Pada Media Digital File Image ... 10

2.5. Aplikasi Steganografi ... 11

2.6. Tata Cara Penyimpanan ... 11

2.7. Macam-macam Format Gambar ... 14

2.7.1. Bitmap ... 15

2.7.2. JPEG ... 16

2.7.3. GIF ... 19

2.7.4. TIFF ... 20

2.7.5. PCX ... 20

2.8. Metodologi Pengembangan Sistem ... 21

2.8.1. Pengertian Metodologi ... 21

2.8.2. Klasifikasi Metodologi ... 22

2.8.3. Alat Pengembangan Sistem ... 26

2.9. Visual Basic ... 32

BAB III PERANCANGAN DAN PEMODELAN ... 40

3.1. Aliran Informasi Sistem ... 40

3.2. Flowchart ... 44

BAB IV HASIL DAN IMPLEMENTASI ... 48

4.1. Implementeasi Aplikasi ... 48

4.1.1. Menu ... 48

4.1.2. Implementasi ... 49

4.2. Pengujian Aplikasi ... 62

4.2.1. Uji Aplikasi Penggabungan File ... 62

4.2.2. Uji Aplikasi Pembongkaran FIle ... 68

4.3. Pengamatan hasil Pengujian Aplikasi ... 73

4.3.1. Pengamatan Hasil Penggabungan ... 73


(4)

vi

Universitas Kristen Maranatha

BAB V KESIMPULAN DAN SARAN ... 77

5.1. Kesimpulan ... 77

5.2. Saran ... 78

DAFTAR PUSTAKA ... 79 LAMPIRAN PROGRAM ... A-1


(5)

vii

Universitas Kristen Maranatha

DAFTAR GAMBAR

Gambar 2.1. Diagram Sistem Steganografi... 9

Gambar 2.2. Kesatuan/Entitas Luar Versi YOURDAN dan DE MARCO ... 30

Gambar 2.3. Arus data Versi YOURDAN dan DE MARCO ... 30

Gambar 2.4. Proses versi YOURDAN dan DE MARCO ... 31

Gambar 2.5. Simpanan YOURDAN dan DE MARCO ... 31

Gambar 2.6. Baris Menu ... 32

Gambar 2.7. Toolbar ... 32

Gambar 2.8. Form ... 33

Gambar 2.9. Windows Kode ... 34

Gambar 2.10. Toolbox ... 35

Gambar 2.11. Baris Menu ... 36

Gambar 2.12. Windows Propertis ... 37

Gambar 2.13. Windows Form Layout ... 38

Gambar 2.14. Windows Intermadiate... 38

Gambar 2.15. Metoda ... 39

Gambar 2.16. Event ... 39

Gambar 3.1. Program Penambahan File Tersembunyi pada File Gambar ... 40

Gambar 3.2. DFD Level 1 ... 41

Gambar 3.3. Pembongkaran File Tersembunyi pada Gambar ... 42

Gambar 3.4. Context Diagram Pembongkaran File Tersembunyi pada Gambar . 43 Gambar 3.5. Flowchart Penggabungan File Tersembunyi ... 44

Gambar 3.6. Flowchart Pembongkaran File Tersembunyi pada File Gambar ... 46

Gambar 4.1. Menu Aplikasi ... 48

Gambar 4.2. Form Menu Aplikasi ... 49

Gambar 4.3. Form Penggabungan ... 50

Gambar 4.4. Form Penggabungan Setelah Di berikan Password ... 52

Gambar 4.5. Form Penggabungan Setelah Di berikan Konfirmasi Password ... 52

Gambar 4.6. Form Penggabungan Setelah di klik Tombol Bersih ... 53

Gambar 4.7. Tempat Penyimpanan File Penggabungan ... 54

Gambar 4.8. Form Pemilihan File Cover... 55

Gambar 4.9. Form Penggabungan Setalh diisi File Cover ... 56

Gambar 4.10. Form Pemilihan File Content ... 57

Gambar 4.11. Form Penggabungan Setelah diisi File Content ... 58

Gambar 4.12. Form Pembongkaran ... 58

Gambar 4.13. Form Pembongakran Setelah diisi Password... 59

Gambar 4.14. Form Pembongkaran Setelah di klik Tombol Bersih ... 60

Gambar 4.15. Tempat Penyimpanan File Pembongkaran ... 60

Gambar 4.16. Form Pemilihan File yang akan di bongkar ... 61

Gambar 4.17. Form Pembongkaran Setelah Diisi File Cover ... 62

Gambar 4.18. File Cover (8.JPG) ... 62

Gambar 4.19. File Content (39.BMP) ... 62


(6)

viii

Universitas Kristen Maranatha

Gambar 4.21. File Content (53.BMP) ... 63

Gambar 4.22. File Hasi Penggabungan (07-08-2012 02.36.17.JPG)... 63

Gambar 4.23.File Cover (01.BMP)... 64

Gambar 4.24.File Content (3.JPG) ... 64

Gambar 4.25.File Content (4.JPG) ... 64

Gambar 4.26.File Content (5.JPG) ... 65

Gambar 4.27. File Hasi Penggabungan (07-08-2012 03.18.44.BMP) ... 65

Gambar 4.28.File Cover (01.JPG) ... 66

Gambar 4.29.File Content (2.JPG) ... 66

Gambar 4.30.File Content (3.JPG) ... 66

Gambar 4.31.File Content (4.JPG) ... 67

Gambar 4.32. File Hasi Penggabungan (07-08-2012 03.46.12.JPG)... 67

Gambar 4.33.File yang akan Dibongkar (07-08-2012 02.36.17.JPG) ... 68

Gambar 4.34 File Hasil (39.BMP) ... 68

Gambar 4.35. File Hasil (43.BMP) ... 68

Gambar 4.36. File Hasil (53.BMP) ... 69

Gambar 4.37. File yang akan Dibongkar (07-08-2012 03.18.44.BMP) ... 69

Gambar 4.38 .File Hasil (3.JPG) ... 70

Gambar 4.39.File Hasil (4.JPG) ... 70

Gambar 4.40.File Hasil (5.JPG) ... 70

Gambar 4.41. File yang akan Dibongkar (07-08-2012 03.46.12.JPG) ... 71

Gambar 4.42.File Hasil (2.JPG) ... 71

Gambar 4.43.File Hasil (3.JPG) ... 72


(7)

ix

Universitas Kristen Maranatha

DAFTAR TABEL

Tabel 2.1 Tabel Komparasi Jenis File Gambar ... 18

Tabel 2.2 Penomoran Level DFD... 28

Tabel 4.1 Pengamatan Hasil Penggabungan File ... 74


(8)

LAMPIRAN

Listing Program


(9)

A-1 unit uMain;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls, ExtCtrls, ExtDlgs, DCPcrypt2, DCPrc4, DCPsha1, sSkinManager, Menus;

type

TfrmMain = class(TForm)

OpenPictureDialog1: TOpenPictureDialog; SavePictureDialog1: TSavePictureDialog; sSkinManager1: TsSkinManager; MainMenu1: TMainMenu; Action1: TMenuItem; Home1: TMenuItem; Encrypt1: TMenuItem; Decrypt1: TMenuItem; Exit1: TMenuItem; Label1: TLabel; Label2: TLabel; Page: TPageControl; TabSheet1: TTabSheet; Panel5: TPanel; Panel2: TPanel; imgEncode: TImage; OpEncode: TButton; NextEncode: TButton; ResetEncode: TButton; TabSheet2: TTabSheet; Panel6: TPanel; Panel4: TPanel; imgDecode: TImage; OpDecode: TButton; NextDecode: TButton; ResetDecode: TButton; TabSheet3: TTabSheet; Label5: TLabel; Label6: TLabel; Label7: TLabel; btnEncode: TButton; BackEncode: TButton; moEncode: TMemo; TabSheet4: TTabSheet; Label3: TLabel; btnDecode: TButton; BackDecode: TButton;


(10)

A-2 edDecodePass1: TEdit; TabSheet5: TTabSheet; Label4: TLabel; moDecode: TMemo; TabSheet6: TTabSheet; edEncodePass1: TEdit; edEncodePass2: TEdit; ResetEncode2: TButton; ResetDecode2: TButton; Label8: TLabel; Label9: TLabel;

procedure btnEncodeClick(Sender: TObject); procedure btnDecodeClick(Sender: TObject); procedure FormCreate(Sender: TObject); procedure OpEncodeClick(Sender: TObject); procedure OpDecodeClick(Sender: TObject); procedure NextEncodeClick(Sender: TObject); procedure NextDecodeClick(Sender: TObject); procedure BackEncodeClick(Sender: TObject); procedure BackDecodeClick(Sender: TObject); procedure moEncodeChange(Sender: TObject); procedure edEncodePass1Change(Sender: TObject); procedure edEncodePass2Change(Sender: TObject); procedure Home1Click(Sender: TObject);

procedure Encrypt1Click(Sender: TObject); procedure Decrypt1Click(Sender: TObject); procedure Exit1Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure ResetEncodeClick(Sender: TObject); procedure ResetDecodeClick(Sender: TObject); procedure ResetEncode2Click(Sender: TObject); procedure ResetDecode2Click(Sender: TObject); private

{ Private declarations }

function CarrierCheck(img: TBitmap): Boolean; function doDecrypt(Pass, Content: String): String; function doEncrypt(Pass, Content: String): String; procedure Encode;

procedure Decode; public

{ Public declarations } end; var frmMain: TfrmMain; Bmp: TBitmap; implementation {$R *.dfm}


(11)

A-3 function getByte(Number: Byte): String;

var i : integer; Bit : String[1]; Return : string[8]; begin

i := 0;

Return := '00000000'; if Number <> 0 then begin while Number <> 1 do begin Str(Number mod 2,Bit); Return[8-i] := Bit[1];

Number := Trunc(Number/2); Inc(i);

end;

Str(Number,Bit); Return[8-i] := Bit[1]; end;

Result := Return; end;

function getWord(Number: Word): String; var i : integer;

Bit : String[1]; Return : string[16]; begin

i := 0;

Return := '0000000000000000'; if Number <> 0 then begin while Number <> 1 do begin Str(Number mod 2,Bit); Return[16-i] := Bit[1]; Number := Trunc(Number/2); Inc(i);

end;

Str(Number,Bit); Return[16-i] := Bit[1]; end;

Result := Return; end;

function getDecimal(Bit: String): Integer; var i : Integer;

Return: Integer; begin

Return := 0;

for i := 1 to Length(Bit) do begin


(12)

A-4 end;

Result := Return; end;

procedure TfrmMain.Encode; var i, j, k, x, LSBCount: Integer; Red, Green, Blue: Integer;

strMark, bitMark, bitContent, tempContent: String; bitRed, bitGreen, bitBlue: String;

bitBaris, bitKolom: String; begin

Bmp.Assign(imgEncode.Picture.Bitmap); Bmp.PixelFormat := pf24bit;

if CarrierCheck(Bmp) then begin

MessageDlg('File carrier sudah disisipi data.',mtWarning,[mbOK],0); Exit;

end;

LSBCount := (Bmp.Width * Bmp.Height) * 3; LSBCount := LSBCount - (Bmp.Width * 3);

tempContent := edEncodePass1.Text + '#' + moEncode.Lines.Text; tempContent := doEncrypt(edEncodePass1.Text, tempContent); for i := 1 to Length(tempContent) do begin

bitContent := bitContent + getByte(Ord(tempContent[i])); end;

if Length(bitContent) > LSBCount then begin

MessageDlg('Content yang akan diisikan terlalu besar.',mtWarning,[mbOK],0); Exit;

end;

Self.Cursor := crHourGlass; strMark := '&&&';

bitMark := getByte(Ord(strMark[1])) + getByte(Ord(strMark[2])) + getByte(Ord(strMark[3])); j := 1;

for i := 0 to 7 do begin

Red := GetRValue(GetPixel(Bmp.Canvas.Handle,i,0)); Green := GetGValue(GetPixel(Bmp.Canvas.Handle,i,0)); Blue := GetBValue(GetPixel(Bmp.Canvas.Handle,i,0)); bitRed := getByte(Red);

bitGreen := getByte(Green); bitBlue := getByte(Blue);


(13)

A-5 Delete(bitRed,8,1);

Delete(bitGreen,8,1); Delete(bitBlue,8,1);

bitBlue := bitBlue + bitMark[j]; bitGreen := bitGreen + bitMark[j+1]; bitRed := bitRed + bitMark[j+2]; j := j + 3;

Red := getDecimal(bitRed); Green := getDecimal(bitGreen); Blue := getDecimal(bitBlue);

Bmp.Canvas.Pixels[i,0] := RGB(Red,Green,Blue); end;

k := 1;

for i := 1 to Bmp.Height - 1 do begin for j := 0 to Bmp.Width - 1 do begin

Red := GetRValue(GetPixel(Bmp.Canvas.Handle,j,i)); Green := GetGValue(GetPixel(Bmp.Canvas.Handle,j,i)); Blue := GetBValue(GetPixel(Bmp.Canvas.Handle,j,i)); bitRed := getByte(Red);

bitGreen := getByte(Green); bitBlue := getByte(Blue); Delete(bitRed,8,1); Delete(bitGreen,8,1); Delete(bitBlue,8,1);

bitBlue := bitBlue + bitContent[k]; bitGreen := bitGreen + bitContent[k+1]; bitRed := bitRed + bitContent[k+2]; k := k + 3;

Red := getDecimal(bitRed); Green := getDecimal(bitGreen); Blue := getDecimal(bitBlue);

Bmp.Canvas.Pixels[j,i] := RGB(Red,Green,Blue); if k > length(bitContent) then Break;

end;

if k > length(bitContent) then Break; end;


(14)

A-6 k := 1;

bitBaris := getWord(i);

for x := 8 to 15 do begin

Red := GetRValue(GetPixel(Bmp.Canvas.Handle,x,0)); Green := GetGValue(GetPixel(Bmp.Canvas.Handle,x,0)); Blue := GetBValue(GetPixel(Bmp.Canvas.Handle,x,0)); bitRed := getByte(Red);

bitGreen := getByte(Green); Delete(bitRed,8,1);

Delete(bitGreen,8,1);

bitGreen := bitGreen + bitBaris[k]; bitRed := bitRed + bitBaris[k+1]; k := k + 2;

Red := getDecimal(bitRed); Green := getDecimal(bitGreen);

Bmp.Canvas.Pixels[x,0] := RGB(Red,Green,Blue); end;

k := 1;

bitKolom := getWord(j);

for x := 16 to 23 do begin

Red := GetRValue(GetPixel(Bmp.Canvas.Handle,i,0)); Green := GetGValue(GetPixel(Bmp.Canvas.Handle,i,0)); Blue := GetBValue(GetPixel(Bmp.Canvas.Handle,i,0)); bitRed := getByte(Red);

bitGreen := getByte(Green); Delete(bitRed,8,1);

Delete(bitGreen,8,1);

bitGreen := bitGreen + bitKolom[k]; bitRed := bitRed + bitKolom[k+1]; k := k + 2;


(15)

A-7 Green := getDecimal(bitGreen);

Bmp.Canvas.Pixels[x,0] := RGB(Red,Green,Blue); end;

Self.Cursor := crDefault;

if SavePictureDialog1.Execute then begin SavePictureDialog1.DefaultExt := '*.bmp'; Bmp.SaveToFile(SavePictureDialog1.FileName); end;

end;

procedure TfrmMain.Decode; var i, j, k: Integer;

Red, Green, Blue: Integer; bitContent, tempContent: String; bitRed, bitGreen, bitBlue: String; bitBaris, bitKolom: String; Baris, Kolom: Integer; begin

Bmp.Assign(imgDecode.Picture.Bitmap); Bmp.PixelFormat := pf24bit;

if not CarrierCheck(Bmp) then begin

MessageDlg('File gambar tidak mengandung pesan.',mtWarning,[mbOK],0); Exit;

end;

bitBaris := '';

for k := 8 to 15 do begin

Red := GetRValue(GetPixel(Bmp.Canvas.Handle,k,0)); Green := GetGValue(GetPixel(Bmp.Canvas.Handle,k,0)); bitBaris := bitBaris + getByte(Green)[8] + getByte(Red)[8]; end;

Baris := getDecimal(bitBaris); bitKolom := '';

for k := 16 to 23 do begin

Red := GetRValue(GetPixel(Bmp.Canvas.Handle,k,0)); Green := GetGValue(GetPixel(Bmp.Canvas.Handle,k,0)); bitKolom := bitKolom + getByte(Green)[8] + getByte(Red)[8]; end;

Kolom := getDecimal(bitKolom); tempContent := '';

for i := 1 to Bmp.Height - 1 do begin for j := 0 to Bmp.Width - 1 do begin

Red := GetRValue(GetPixel(Bmp.Canvas.Handle,j,i)); Green := GetGValue(GetPixel(Bmp.Canvas.Handle,j,i)); Blue := GetBValue(GetPixel(Bmp.Canvas.Handle,j,i));


(16)

A-8 bitRed := getByte(Red);

bitGreen := getByte(Green); bitBlue := getByte(Blue);

tempContent := tempContent + Copy(bitBlue,8,1) + Copy(bitGreen,8,1) + Copy(bitRed,8,1); if (Baris = i) and (Kolom = j) then Break;

end;

if (Baris = i) and (Kolom = j) then Break; end;

bitContent := ''; k := 1;

for i := 1 to Round(Length(tempContent)/8) do begin

bitContent := bitContent + Chr(getDecimal(Copy(tempContent,k,8))); k := k + 8;

end;

bitContent := doDecrypt(edDecodePass1.Text,bitContent);

if edDecodePass1.Text = Copy(bitContent,1,Length(edDecodePass1.Text)) then

moDecode.Lines.Text := StringReplace(bitContent,edDecodePass1.Text+'#','',[rfReplaceAll]) else MessageDlg('Password salah.',mtWarning,[mbOK],0);

end;

function TfrmMain.CarrierCheck(img: TBitmap): Boolean; var i: Integer;

Red, Green, Blue: Integer; strMark, bitLSB: String; begin

bitLSB := '';

for i := 0 to 7 do begin

Red := GetRValue(GetPixel(img.Canvas.Handle,i,0)); Green := GetGValue(GetPixel(img.Canvas.Handle,i,0)); Blue := GetBValue(GetPixel(img.Canvas.Handle,i,0));

bitLSB := bitLSB + getByte(Blue)[8] + getByte(Green)[8] + getByte(Red)[8]; end;

strMark := Chr(getDecimal(Copy(bitLSB,1,8))) + Chr(getDecimal(Copy(bitLSB,9,8))) + Chr(getDecimal(Copy(bitLSB,17,8))); Result := strMark = '&&&';

end;

procedure TfrmMain.btnEncodeClick(Sender: TObject); begin


(17)

A-9 if edEncodePass1.Text <> edEncodePass2.Text then begin MessageDlg('Konfirmasi password salah',mtWarning,[mbOK],0); Exit;

end;

if imgEncode.Picture.Bitmap = nil then begin

MessageDlg('File carrier belum dipilih',mtWarning,[mbOK],0); Exit;

end;

if Trim(moEncode.Lines.Text) = '' then begin

MessageDlg('Content belum diisi',mtWarning,[mbOK],0); Exit;

end; Encode; end;

procedure TfrmMain.btnDecodeClick(Sender: TObject); begin

Decode;

page.TabIndex:=5; end;

procedure TfrmMain.FormCreate(Sender: TObject); begin

Bmp := TBitmap.Create; end;

procedure TfrmMain.OpEncodeClick(Sender: TObject); var bmp : TBitmap;

begin

OpenPictureDialog1.Filter := 'Bitmaps (*.bmp)|*.bmp'; OpenPictureDialog1.DefaultExt := '*.bmp';

if OpenPictureDialog1.Execute then begin bmp := TBitmap.Create;

bmp.LoadFromFile(OpenPictureDialog1.FileName);

imgEncode.Picture.LoadFromFile(OpenPictureDialog1.FileName); FreeAndNil(bmp);

NextEncode.Enabled :=true; ResetEncode.Enabled :=true; end;

end;

procedure TfrmMain.OpDecodeClick(Sender: TObject); var bmp : TBitmap;

begin

OpenPictureDialog1.Filter := 'Bitmaps (*.bmp)|*.bmp'; OpenPictureDialog1.DefaultExt := '*.bmp';


(18)

A-10 if OpenPictureDialog1.Execute then begin

bmp := TBitmap.Create;

bmp.LoadFromFile(OpenPictureDialog1.FileName); imgDecode.Picture.LoadFromFile(OpenPictureDialog1.FileName); FreeAndNil(bmp); NextDecode.Enabled:=true; ResetDecode.Enabled:=true; end; end;

procedure TfrmMain.NextEncodeClick(Sender: TObject); begin

page.TabIndex := 2; end;

procedure TfrmMain.NextDecodeClick(Sender: TObject); begin

page.TabIndex := 4; end;

procedure TfrmMain.BackEncodeClick(Sender: TObject); begin

page.TabIndex := 1; end;

procedure TfrmMain.BackDecodeClick(Sender: TObject); begin

page.TabIndex := 3; end;

procedure TfrmMain.moEncodeChange(Sender: TObject); begin

if (edEncodePass1.Text ='') and (moEncode.Text ='') then begin

btnEncode.Enabled := false; end

else begin

btnEncode.Enabled := true; end

end;

procedure TfrmMain.edEncodePass1Change(Sender: TObject); begin

if (edEncodePass1.Text ='') and (moEncode.Text ='') then begin

btnEncode.Enabled := false; end

else begin


(19)

A-11 btnEncode.Enabled := true;

end end;

procedure TfrmMain.edEncodePass2Change(Sender: TObject); begin

if (edEncodePass1.Text ='') and (moEncode.Text ='') then begin

btnEncode.Enabled := false; end

else begin

btnEncode.Enabled := true; end

end;

procedure TfrmMain.Home1Click(Sender: TObject); begin

page.tabindex := 0; end;

procedure TfrmMain.Encrypt1Click(Sender: TObject); begin

page.tabindex := 1; end;

procedure TfrmMain.Decrypt1Click(Sender: TObject); begin

page.tabindex := 3; end;

procedure TfrmMain.Exit1Click(Sender: TObject); begin

Application.Terminate; end;

procedure TfrmMain.FormShow(Sender: TObject); begin

page.TabIndex:=0; end;

procedure TfrmMain.ResetEncodeClick(Sender: TObject); begin imgEncode.Picture.Assign(nil); moEncode.Clear; edEncodePass1.Clear; edEncodePass2.Clear; ResetEncode.enabled :=false; NextEncode.enabled :=false; end;


(20)

A-12 begin

imgDecode.Picture.Assign(nil); moDecode.Clear;

edDecodePass1.Clear; NextDecode.enabled :=false; ResetDecode.enabled :=false; end;

procedure TfrmMain.ResetEncode2Click(Sender: TObject); begin

moEncode.Clear;

edEncodePass1.Clear; edEncodePass2.Clear; end;

procedure TfrmMain.ResetDecode2Click(Sender: TObject); begin

moDecode.Clear; edDecodePass1.Clear; end;


(21)

1 Universitas Kristen Maranatha

BAB I

PENDAHULUAN

1.1. Latar Belakang

Seiring dengan perkembangan teknologi yang semakin pesat komputer, tablet, smart phone, internet dan perangkat lainnya yang serba digital, telah membuat data digital banyak digunakan di berbagai media dan mudah sekali berpindah - pindah dari orang ke orang lain bahkan dalam hitungan detik data digital bisa tersebar sampai ke penjuru dunia dengan teknologi yang ada sekarang ini mudah diolah dan mudah disalah gunakan oleh orang yang tidak bertanggung jawab. Internet sebagai salah satu media informasi dan telekomunikasi yang banyak digunakan saat ini, menyebabkan distribusi data digital semakin mudah, sehingga membuat kepemilikan dari suatu data digital menjadi sesuatu yang penting di jaman informasi seperti ini.

Data merupakan sesuatu yang harus dijaga, semakin maraknya pencurian data kartu kredit dan mudahnya mencari data kerahasiaan maka diperlukan program komputer untuk mengamankan data tersebut. Program komputer adalah serangkaian instruksi atau arahan yang dapat dipahami


(22)

2

Universitas Kristen Maranatha

oleh manusia (kode khusus) untuk menentukan tugas ataupun satu set tugas untuk dilakukan oleh komputer setelah diterjermah oleh penterjermah ke bahasa mesin (compiler) biasanya dalam binary hexadecimal. Teknik yang digunakan adalah steganografi untuk mengamankan data yaitu dengan cara menyisipkan data rahasia tanpa menimbulkan suatu kecurigaan. Steganografi adalah ilmu dan seni untuk menyembunyikan pesan rahasia (hiding message) sedemikian rupa sehingga keberadaan (eksistensi) pesan tidak terdeteksi oleh indera manusia. Metode yang digunakan adalah data flow oriented methodologies yaitu Structured Analysis and Design Technique (SADT).

SADT sebagai metodologi pengembangan sistem terstruktur juga menganut konsep dekomposisi, menggambarkan terlebih dahulu sistem secara utuh sebagai tingkat tertinggi dan memecahkannya menjadi lebih terperinci.

1.2. Rumusan Masalah

Beberapa masalah yang akan dibahas pada Tugas Akhir ini adalah:

1. Bagaimana membuat program yang dapat mengimplementasikan aplikasi penambahan file tersembunyi pada file gambar yang berisi sebuah informasi kedalam file gambar yang berfungsi sebagai cover dengan menyertakan password pada file cover.

2. Bagaimana perubahan yang terjadi setelah disisipi file data informasi yang berbentuk gambar pada sebuah file cover yang berbentuk gambar


(23)

3

Universitas Kristen Maranatha

dan bagaimana perubahan pada file data setelah dilakukan pembongkaran.

1.3. Tujuan Penelitian

Tujuan dari Tugas Akhir ini adalah :

Dapat mengimplementasikan aplikasi penambahan file tersembunyi pada file gambar dengan menyertakan password pada file cover agar informasi yang disimpan aman dari orang yang tidak berkepentingan terhadap informasi tersebut .

1.4. Pembatasan Masalah

Bentuk data yang dipakai dalam penyisipan informasi ini berupa file bitmap 24-bit dengan format *.bmp dan file gambar berupa *.JPG

File data informasi yang bisa disisipkan hanya berupa gambar.

 Gambar yang sudah disisipkan dengan program ini hanya dapat dilihat dengan menggunakan program ini dengan menyertakan password yang sesuai yang sebelumnya telah di input.


(24)

4

Universitas Kristen Maranatha 1.5. Sistematika Penulisan

Bab I : Pendahuluan

Membahas tentang latar belakang, identifikasi masalah, tujuan, pembatasan masalah, dan jadwal pengerjaan. Bab II : Teori Pendahuluan

Membahas tentang teori – teori yang menunjang topik Tugas Akhir.

Bab III : Perancangan dan Pemodelan

Membahas tentang perancangan program penambahan file tersembunyi pada file gambar.

Bab IV : Hasil Dan Implementasi

Membahas tentang hasil rancangan program penambahan file tersembunyi pada file gambar dan kemudian mengimplementasikannya.

Bab V : Kesimpulan dan Saran

Berisi kesimpulan dan saran dari program penambahan file tersembunyi pada file gambar.


(25)

77 Universitas Kristen Maranatha

BAB V

KESIMPULAN DAN SARAN

5.1. Kesimpulan

Implementasi aplikasi program penambahan file tersembunyi pada file gambar telah berhasil dilakukan dengan file yang disisipi berbentuk Gambar yang jumlahnya bisa lebih dari satu file yang disertakan password.

Implementasi aplikasi pembongkaran file yang telah disisipi telah berhasil dilakukan dengan menyertakan password yang sebelumnya telah dimasukan, tetapi jika password yang dimasukan tidak sesuai maka file tidak dapat dibuka dan hasil yang telah diimplementasikan menunjukkan file gambar yang berisi informasi tidak ada perubahan antara file yang sudah sisipkan dengan file yang sebelumnya.

 Gambar yang sudah disisipi memiliki kualitas yang hampir sama dibandingkan dengan gambar aslinya dan sangat sulit untuk dibedakan oleh penglihatan manusia.


(26)

78

Universitas Kristen Maranatha 5.2. Saran

Program penambahan file tersembunyi pada file gambar ini dapat dikembangkan untuk menggabungkan file dalam bentuk yang lain agar dapat mengamankan file-file penting baik itu text, audio atau video sehingga aplikasi ini tidak fokus hanya dapat mengamankan file informasi dalam bentuk gambar.


(27)

79 Universitas Kristen Maranatha

DAFTAR PUSTAKA

Bahra, al., Analist dan desain sistem informasi, Graha ilmu, Yogyakarta, 2005 Darmawan, M.S, Steganografi, Sebuah Pendekatan Baru dalam Pengamanan Data, http://3ka-09.digimon.tv/t9-pengertian-visual-basic25 April 2012

http://elib.unikom.ac.id/files/disk1/302/jbtunikompp-gdi-hermizahad/, 28 Januari 2013 http://en.wikipedia.org/wiki/Steganography, 15 Maret 2012

http://eprints.undip.ac.id/1802/2/Prosiding_Buku_IIOK(komp).pdf, 15 April 2012 http://repository.upi.edu/operator/upload/s_d505_033021_chapter2.pdf, 28 Januari 2013 http://overclockerindo.com/moduls.php?name:reviews., 2003

http://ochip.wordpress.com/2010/10/29/sejarah-steganografi/, 30 Mei 2012

http://planetsourcecode.com/vb/scripts/ShowCode.asp?txtCodeId=61511&lngWId=1, 30 Mei 2012


(1)

2 Universitas Kristen Maranatha

oleh manusia (kode khusus) untuk menentukan tugas ataupun satu set tugas untuk dilakukan oleh komputer setelah diterjermah oleh penterjermah ke bahasa mesin (compiler) biasanya dalam binary

hexadecimal. Teknik yang digunakan adalah steganografi untuk

mengamankan data yaitu dengan cara menyisipkan data rahasia tanpa menimbulkan suatu kecurigaan. Steganografi adalah ilmu dan seni untuk menyembunyikan pesan rahasia (hiding message) sedemikian rupa sehingga keberadaan (eksistensi) pesan tidak terdeteksi oleh indera manusia. Metode yang digunakan adalah data flow oriented methodologies yaitu Structured Analysis and Design Technique (SADT).

SADT sebagai metodologi pengembangan sistem terstruktur juga menganut konsep dekomposisi, menggambarkan terlebih dahulu sistem secara utuh sebagai tingkat tertinggi dan memecahkannya menjadi lebih terperinci.

1.2. Rumusan Masalah

Beberapa masalah yang akan dibahas pada Tugas Akhir ini adalah:

1. Bagaimana membuat program yang dapat mengimplementasikan aplikasi penambahan file tersembunyi pada file gambar yang berisi sebuah informasi kedalam file gambar yang berfungsi sebagai cover dengan menyertakan password pada file cover.

2. Bagaimana perubahan yang terjadi setelah disisipi file data informasi yang berbentuk gambar pada sebuah file cover yang berbentuk gambar


(2)

3 Universitas Kristen Maranatha

dan bagaimana perubahan pada file data setelah dilakukan pembongkaran.

1.3. Tujuan Penelitian

Tujuan dari Tugas Akhir ini adalah :

Dapat mengimplementasikan aplikasi penambahan file tersembunyi pada

file gambar dengan menyertakan password pada file cover agar informasi

yang disimpan aman dari orang yang tidak berkepentingan terhadap informasi tersebut .

1.4. Pembatasan Masalah

Bentuk data yang dipakai dalam penyisipan informasi ini berupa file

bitmap 24-bit dengan format *.bmp dan file gambar berupa *.JPG

File data informasi yang bisa disisipkan hanya berupa gambar.

 Gambar yang sudah disisipkan dengan program ini hanya dapat dilihat dengan menggunakan program ini dengan menyertakan password yang sesuai yang sebelumnya telah di input.


(3)

4 Universitas Kristen Maranatha

1.5. Sistematika Penulisan Bab I : Pendahuluan

Membahas tentang latar belakang, identifikasi masalah, tujuan, pembatasan masalah, dan jadwal pengerjaan. Bab II : Teori Pendahuluan

Membahas tentang teori – teori yang menunjang topik Tugas Akhir.

Bab III : Perancangan dan Pemodelan

Membahas tentang perancangan program penambahan

file tersembunyi pada file gambar.

Bab IV : Hasil Dan Implementasi

Membahas tentang hasil rancangan program penambahan

file tersembunyi pada file gambar dan kemudian

mengimplementasikannya. Bab V : Kesimpulan dan Saran

Berisi kesimpulan dan saran dari program penambahan


(4)

77 Universitas Kristen Maranatha

BAB V

KESIMPULAN DAN SARAN

5.1. Kesimpulan

Implementasi aplikasi program penambahan file tersembunyi pada file gambar telah berhasil dilakukan dengan file yang disisipi berbentuk

Gambar yang jumlahnya bisa lebih dari satu file yang disertakan password.

Implementasi aplikasi pembongkaran file yang telah disisipi telah berhasil dilakukan dengan menyertakan password yang sebelumnya telah dimasukan, tetapi jika password yang dimasukan tidak sesuai maka file tidak dapat dibuka dan hasil yang telah diimplementasikan menunjukkan file gambar yang berisi informasi tidak ada perubahan antara file yang sudah sisipkan dengan file yang sebelumnya.

 Gambar yang sudah disisipi memiliki kualitas yang hampir sama dibandingkan dengan gambar aslinya dan sangat sulit untuk dibedakan oleh penglihatan manusia.


(5)

78 Universitas Kristen Maranatha 5.2. Saran

Program penambahan file tersembunyi pada file gambar ini dapat dikembangkan untuk menggabungkan file dalam bentuk yang lain agar dapat mengamankan file-file penting baik itu text, audio atau

video sehingga aplikasi ini tidak fokus hanya dapat mengamankan file


(6)

79 Universitas Kristen Maranatha

DAFTAR PUSTAKA

Bahra, al., Analist dan desain sistem informasi, Graha ilmu, Yogyakarta, 2005 Darmawan, M.S, Steganografi, Sebuah Pendekatan Baru dalam Pengamanan Data, http://3ka-09.digimon.tv/t9-pengertian-visual-basic25 April 2012

http://elib.unikom.ac.id/files/disk1/302/jbtunikompp-gdi-hermizahad/, 28 Januari 2013 http://en.wikipedia.org/wiki/Steganography, 15 Maret 2012

http://eprints.undip.ac.id/1802/2/Prosiding_Buku_IIOK(komp).pdf, 15 April 2012 http://repository.upi.edu/operator/upload/s_d505_033021_chapter2.pdf, 28 Januari 2013 http://overclockerindo.com/moduls.php?name:reviews., 2003

http://ochip.wordpress.com/2010/10/29/sejarah-steganografi/, 30 Mei 2012

http://planetsourcecode.com/vb/scripts/ShowCode.asp?txtCodeId=61511&lngWId=1, 30 Mei 2012