Thursday, November 8, 2007

Encrypt and Decrypt Image - BMP

Hallow semua...
gw punya source code simple untuk encrypt ato decrypt file gambar (untuk kasus sekarang kita pake file gambar bitmap). Tampilanya seperti ini:

Encrypt bitmap

Decrypt bitmap

Code untuk encrypt/decrypt button seperti ini:

PROCEDURE TForm1.Button2Click(Sender: TObject);
VAR
i : INTEGER;
j : INTEGER;
RandomValue : BYTE;
rowIn : pByteArray;
rowOut : pByteArray;
ScanlineByteCount: INTEGER;
BitmapResult : TBitmap;
BEGIN
/*
BitmapOriginal : tipe dile TBitmap dan di inisialisasi pada saat open file
*/
IF Assigned(BitmapResult)
THEN BitmapResult.Free;

BitmapResult := TBitmap.Create;
BitmapResult.Width := BitmapOriginal.Width;
BitmapResult.Height := BitmapOriginal.Height;
BitmapResult.PixelFormat := BitmapOriginal.PixelFormat;

IF BitmapOriginal.PixelFormat IN [pf1bit, pf4bit, pf8bit]
THEN BitmapResult.Palette := CopyPalette(BitmapOriginal.Palette);

ScanlineByteCount := ABS(Integer(BitmapOriginal.Scanline[1]) -
Integer(BitmapOriginal.Scanline[0]));

RandSeed := 79997;

FOR j := 0 TO BitmapOriginal.Height-1 DO
BEGIN
RowIn := BitmapOriginal.Scanline[j];
RowOut := BitmapResult.Scanline[j];

FOR i := 0 TO ScanlineByteCount-1 DO
BEGIN
RandomValue := Random(256);
RowOut[i] := RowIn[i] XOR RandomValue
END
END;

Image1.Picture.Graphic := BitmapResult;
END;


Selamat mencoba ya...keep writing..:D

Read More...