15-07-2014, 04:07 PM
CPSC 350 Data Structures Image Steganography
CPSC 350 Data Structures.pdf (Size: 249.33 KB / Downloads: 282)
Abstract
Steganography is the process of hiding a secret message within a
larger one in such a way that someone can not know the presence or contents
of the hidden message. The purpose of Steganography is to maintain secret
communication between two parties. This paper will show how Steganography
is used in a modern context while providing a practical understanding of what
Steganography is and how to accomplish it.
Introduction
Steganography is the process of hiding a secret message within a larger one in
such a way that someone cannot know the presence or contents of the hidden
message. Although related, Steganography is not to be confused with Encryption,
which is the process of making a message unintelligible—Steganography attempts to
hide the existence of communication.
The basic structure of Steganography is made up of three components: the
“carrier”, the message, and the key1
. The carrier can be a painting, a digital image, an
mp3, even a TCP/IP packet among other things. It is the object that will ‘carry’ the
hidden message. A key is used to decode/decipher/discover the hidden message.
This can be anything from a password, a pattern, a black-light, or even lemon juice.
In this paper I will focus on the use of Steganography within digital images (BMP
and PNG) using LSB Substitution, although the properties of Image Steganography
may be substituted with audio mp3’s, zip archives, and any other digital document
format relatively easily
In-Depth Discussion
When first deciding what topic to research and study I was initially interested in
encryption algorithms and ciphers. I have always been intrigued with security
implementation and breaching, so I began developing an encryption algorithm to
test its strength. Soon, with the help of some friends, I discovered Image
Steganography and it only seemed natural that I take my encryption algorithm
Implementation
There are currently three effective methods in applying Image Steganography:
LSB Substitution, Blocking, and Palette Modification
1
. LSB (Least Significant Bit)
Substitution is the process of modifying the least significant bit of the pixels of the
carrier image. Blocking works by breaking up an image into “blocks” and using
Discrete Cosine Transforms (DCT). Each block is broken into 64 DCT coefficients that
approximate luminance and color—the values of which are modified for hiding
messages. Palette Modification replaces the unused colors within an image’s color
palette with colors that represent the hidden message.
Detection/Attacks
While the purpose of Steganography is to hide messages, it may not be very
effective at doing so. There are several attacks that one may execute to test for
Steganographed images—they are: Visual Attacks, Enhanced LSB Attacks, Chi-Square
Analysis, and other statistical analyses. In performing a visual attack you must have
the original “virgin” image to compare it the Steganographed image and visually
compare the two for artifacts. In the Enhanced LSB Attack, you process the image for
the least significant bits and if the LSB is equal to one, multiply it by 255 so that it
becomes its maximum valu
Conclusions
I have learned that while implementing Image Steganography is important,
thinking of how to detect and attack it and the methods to do so are far more
complex than actually doing the Steganography itself. There is a lot of research that
is beginning to discover new ways to detect Steganography, most of which involves
some variation of statistical analysis. It is interesting to see what other methods will
be developed and how accurate they will be at detecting Steganog