Skip to content

Instantly share code, notes, and snippets.

@ahmadyogi543
Created November 6, 2022 00:18
Show Gist options
  • Save ahmadyogi543/bda98ceaf5a94657bec5ed9f5681a807 to your computer and use it in GitHub Desktop.
Save ahmadyogi543/bda98ceaf5a94657bec5ed9f5681a807 to your computer and use it in GitHub Desktop.
Contoh Penerapan Steganografi Berbasis LSB
% load citra dan ambil ukurannya (width dan height)
cover_img = imread("https://picsum.photos/512/512");
[img_height, img_width] = size(cover_img);
pesan = "aku sangat ingin terbang";
panjang_pesan = length(pesan) * 8;
% menggunakan fungsi uint8 untuk mengambil ascii
ascii_pesan = uint8(pesan);
% mengambil nilai biner dari pesan
biner_pesan = dec2bin(ascii_pesan, 8);
% mengubah biner_pesan ke dalam bentuk 1 baris
biner_pesan = transpose(biner_pesan);
biner_pesan = biner_pesan(:);
biner_pesan = str2num(biner_pesan);
% copy cover ke citra hasil
stego_img = cover_img;
% traverse cover img
counter = 1;
for x = 1:img_height
for y = 1:img_width
if (counter <= panjang_pesan)
LSB = bitget(cover_img(x, y), 1);
BPS = biner_pesan(counter);
temp = xor(LSB, BPS);
stego_img(x, y) = cover_img(x, y) + temp;
counter = counter + 1;
else
break;
end
end
end
% simpan gambar
imwrite(stego_img, 'stego.png');
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment