MATLAB Project

Aaron Osher

Create a tool for the secure and inconspicuous movement of data

My Goals

Photo Steganography
Audio Steganography
AES Implementation

Photo Steganography
Audio Steganography
AES Implementation

Photo Steganography
Audio Steganography
AES Implementation

MATLAB is Very Good at what it does–that's it.

Flow of Events

My Approach

Least Significant Bit

Header Data

Header Data

% TEXT HEADER

% String form
'h0001234'

% Decimal form
104	48	48	48	49	50	51	52

% Binary form
'1101000'
'0110000'
'0110000'
'0110000'
'0110001'
'0110010'
'0110011'
'0110100'
% IMAGE HEADER

% String form
'10241024'

% Decimal form
49	48	50	52	49	48	50	52

% Binary form
'110001'
'110000'
'110010'
'110100'
'110001'
'110000'
'110010'
'110100'

Encoder

% Red - bit 1
if str2double(code(1)) == 0
    prepared_image(row1,col1,1) = bitand(prepared_image(row1,col1,1),uint8(254));
else
    prepared_image(row1,col1,1) = bitor(prepared_image(row1,col1,1),uint8(1));
end

% Green - bit 2
if str2double(code(2)) == 0
    prepared_image(row1,col1,2) = bitand(prepared_image(row1,col1,2),uint8(254));
else
    prepared_image(row1,col1,2) = bitor(prepared_image(row1,col1,2),uint8(1));
end

% Blue - bit 3
if str2double(code(3)) == 0
    prepared_image(row1,col1,3) = bitand(prepared_image(row1,col1,3),uint8(254));
else
    prepared_image(row1,col1,3) = bitor(prepared_image(row1,col1,3),uint8(1));
end

Decoder

% Get first set RGB for bits 123 respectively
[row1,col1] = ind2sub([canY,canX],location(1));
% Red - bit 1
data(1,1) = mod(img(row1,col1,1),2);    

% Green - bit 2
data(1,2) = mod(img(row1,col1,2),2);

% Blue - bit 3
data(1,3) = mod(img(row1,col1,3),2);

Live Demo

Questions?

Video Demo

MATLAB Project

By Aaron Osher