Title: F5 A Steganographic Algorithm
1F5A Steganographic Algorithm
- Davang Patel
- Thomas Schulze
2Agenda
Introduction Capacity vs. Security JPEG JSTEG F
3 F4 F5
3What is Steganography?
- Steganography is the art and science of embedding
hidden messages in a carrier medium such that no
one apart from the sender and intended recipient
even realizes there is a hidden message. - Mediums can include images, video, and audio.
4 Steganogram ExampleThe Story Behind the MATLAB
Default Image
More Info http//blogs.mathworks.com/steve/2006
5Capacity vs. Security
6JPEG Mechanism
Histogram for JPEG coefficient after quantization
- The coefficients frequency of occurrence
decreases with increasing absolute value. - The difference between two bars in the middle of
the histogram is greater than the difference
between two bars near the ends.
7JSTEG Algorithm
- After quantization, Jsteg replaces (over writes)
the least significant bits (LSB) of the frequency
coefficient by the secret message. The embedding
mechanism skips all coefficient with the value 0
and 1. - Resistant against the visual attacks and good
capacity with 12.8 of the steganogram's size,
but the secret message is easily detected by
statistical attacks. (chi-square test) - Jsteg influences pairs of the coefficients
frequency of occurrence !!!
JSTEG
8F3 Algorithm
- Does not overwrite bits -- Decrement the non-zero
coefficients absolute value only if the LSB does
not match. Zero coefficients are skipped. - The LSB of a non-zero coefficient will match the
secret message after embedding.
Advantage statistical attack (chi-square test)
will not be successful Disadvantage Less
capacity and surplus of even coefficients caused
by shrinking. The surplus
of even coefficients can be detected by
statistical means.
Original
F3 Algorithm
JSTEG
9F3 Shrinkage
- Shrinkage of coefficients causes a decrease in
embedding capacity. - Since the receiver cannot tell between a skipped
zero and a zero that was generated due to
shrinkage, repetitive embedding is necessary.
-4 -3 -2 -1 0 1 2 3
4
10F4 Algorithm
- Mapping negative coefficients to the inverted
steganographic value. - Even negative coefficients and odd positive
coefficients represent a steganographic one. - Even positive coefficients and odd negative
coefficients represent a steganographic zero.
11F4 embedding example
- Embed the code 01110
- If LSB and message does not match,
- Increment negative Coefficients
- Decrement positive coefficients
12F5 Algorithm
- Overall algorithm the same as F4.
- Extends F4 by adding two distinct features
- Permutative straddling
- Matrix encoding
13Permutative Straddling
- F4 embeds the data into the next available
non-zero coefficient. - F5 will scatter the entire message throughout the
carrier. - Uses permutation to equalize the spread of
embedded data.
F5
F4
carrier
permutation
carrier
carrier message
Inverse permutation
permutation message
Note treat each pixel as if it was a JPEG
coefficient.
14Matrix Encoding
Improves the embedding efficiency from 1.5 bit to
3.8 bit per change.
Embed 1736 bit message
F4
F5
How does it work?
Consider we want to embed x1 and x2 in LSB
locations a1, a2, and a3.
15F5 encoding process
- Permutation is generated using user-defined
password.
16F5 example
Carrier Image
F5 Encrypt/Decrypt Program
Resultant Steganogram
Secret Message
17Conclusion
- F5 has high embedding capacity (gt13) but can be
pushed even further. - Resistance to both visual and statistical
attacks. - Uses a common image format (JPEG).
18Any Questions?