26-11-2012, 06:33 PM
F5—A Steganographic Algorithm High Capacity Despite Better Steganalysis
F5 Steganography.pdf (Size: 232 KB / Downloads: 13)
Abstract.
Many steganographic systems are weak against visual and
statistical attacks. Systems without these weaknesses offer only a relatively
small capacity for steganographic messages. The newly developed
algorithm F5 withstands visual and statistical attacks, yet it still offers
a large steganographic capacity. F5 implements matrix encoding to
improve the efficiency of embedding. Thus it reduces the number of necessary
changes. F5 employs permutative straddling to uniformly spread
out the changes over the whole steganogram.
Introduction
Secure steganographic algorithms hide confidential messages within other, more
extensive data (carrier media). An attacker should not be able to find out, that
something is embedded in the steganogram (i. e., a steganographically modified
carrier medium) [8].1
Visual attacks on steganographic systems are based on essential information
in the carrier medium that steganographic algorithms overwrite [5]. Adaptive
techniques (that bring the embedding rate in line with the carrier content)
prevent visual attacks, however, they also reduce the proportion of steganographic
information in a carrier medium. Lossy compressed carrier media (JPEG,
MP3, . . . ) are originally adaptive and immune against visual (and auditory respectively)
attacks.
The steganographic tool Jsteg [4] embeds messages in lossy compressed JPEG
files. It has a high capacity—e. g., 12 % of the steganogram’s size—and, it is
immune against visual attacks. However, a statistical attack discovers changes
made by Jsteg [5].
JPEG File Interchange Format
The file format defined by the Joint Photographic Experts Group (JPEG) stores
image data in lossy compressed form as quantised frequency coefficients. Fig. 1
shows the compressing steps performed. First, the JPEG compressor cuts the
uncompressed bitmap image into parts of 8 by 8 pixels. The discrete cosine
transformation (DCT) transfers 8 × 8 brightness values into 8 × 8 frequency
coefficients (real numbers). After DCT, the quantisation suitably rounds the
frequency coefficients to integers in the range −2048 . . . 2047 (lossy step). The
histogram in Fig. 2 shows the discrete distribution of the coefficient’s frequency
of occurrence.
Jsteg
This algorithm made by Derek Upham serves as a starting point for the contemplation
here, because it is resistant against the visual attacks presented in [5],
and nevertheless offers an admirable capacity for steganographic messages (e. g.,
12.8 % of the steganogram’s size). After quantisation, Jsteg replaces the least
significant bits (LSB) of the frequency coefficients by the secret message.2 The
embedding mechanism skips all coefficients with the values 0 or 1. Fig. 4 shows
Derek Upham’s embedding function of Jsteg in C source code.
However, the statistical attack [5] on Jsteg reliably discovers the existence of
embedded messages, because Jsteg replaces bits and, thus, it introduces a dependency
between the value’s frequency of occurrence, that only differ in this
bit position (here: LSB). Jsteg influences pairs of the coefficient’s frequency of
occurrence, as Fig. 5 shows. Let ci be the histogram of JPEG coefficients. The
assumption for a modified image is that adjacent frequencies c2i and c2i+1 are
similar.
Matrix Encoding
Ron Crandall [1] introduced matrix encoding as a new technique to improve the
embedding efficiency. F5 possibly is the first implementation of matrix encoding.
If most of the capacity is unused in a steganogram, matrix encoding decreases the
necessary number of changes. Let us assume that we have a uniformly distributed
secret message and uniformly distributed values at the positions to be changed.
One half of the message causes changes, the other half does not. Without matrix
encoding, we have an embedding efficiency of 2 bits per change. Because of the
shrinkage produced by F4, the embedding efficiency is even a bit lower, e. g.
1.5 bits per change. (Shrinkage means to change without to embed sometimes,
cf. Sect. 4.)