-Archana Sapkota -Deepti Reddy Steganography 1 CS691 Summer 2009
What is it? CS691 Summer The art and science of writing hidden messages in such a way that no one, apart from the sender and intended recipient, suspects the existence of the message. "Boss said that we should blow up the bridge at midnight.”
Cover Image and Stego-Image CS691 Summer
Some Terms…. CS691 Summer Cryptography: - cryptography - concealing the content of messages - steganography - concealing their existence Digital watermarking: - Information is embedded into digital multimedia content such that the watermark (information) can later be extracted and detected for purposes such as copy prevention and control. Steganalysis - Refers to the body of techniques that aid someone in distinguishing between cover-objects and stego-objects.
Prisoners Problem CS691 Summer Embedding algorithm Extracting algorithm Is it stego?? Secret key Secret Message Cover Message Secret key Hidden Message Alice Bob Wendy Suppress Message
Some examples from past.. CS691 Summer Message tattooed on a slave’s shaved head. Al Qaida might have used it for 9/11. Use of invisible ink. Writing on wooden surface before applying wax in wax table.
Classification of Steganographic systems CS691 Summer Substitution system: Substitute the redundant parts of a cover with a secret message. Transform Domain Techniques: Embed secret information in a transform space of the signal (e.g. in the frequency domain). Spread Spectrum Techniques: Adopts ideas from spread spectrum communication.
Classification of Steganographic systems CS691 Summer Statistical Methods: Encode information by changing several statistical properties and a cover and use hypothesis testing in the extraction process. Distortion Techniques: Store information by signal distortion and measure the deviation from the original signal in the decoding step. Cover generation method: Encode information in the way a cover for secret communication is created.
Secure Steganographic System CS691 Summer Kerckhoffs’principle: The embedding algorithm is supposed to be known to the public. Therefore, the embedding process may use an embedding key so that only the legal user can successfully extract the embedded data by using the corresponding extraction key in the extraction process.
Least Significant Bit Substitution CS691 Summer Embedding process: - Choose a subset of cover elements - Exchange LSB of each element by 0 or 1 - Another approach is to use a 2-bit LSB Extraction process: - Extract LSB of each cover element (either 1 or 2-bit) - Line them up to reconstruct secret message Receiver must know the sequence of element indices used in the embedding process.
Problems with LSB substitution CS691 Summer A strong assumption of a passive attacker that the small changes in the carrier are not noticed. The main problem with this is the part of the image in which the information is embedded has different statistical properties than the rest of the image. Most image hiding techniques use uncompressed (BMP) or lossless (GIF) cover images but take a lot of transmission bandwidth and storage space.
LSB substitution CS691 Summer Pseudorandom- Slightly Better Approach: - Use pseudorandom number generator - Spread secret message over the cover in a random manner - Distance between two embedded bits is determined pseudorandomly - Receiver should be aware of the seed and knowledge of the number generator
Problems with Pseudo-Random CS691 Summer Alice creates a sequence j[1] through j[m] of element indices. Alice then stores the kth message bit in the element with index j[k] Collisions - BAM!!!!!!! - An index can appear more than once in a sequence - Causes Alice to insert more than one message bit into one cover element corrupting some - The larger the secret message, the greater the chances of collisions Solution to this problem - Alice keeps track of all cover elements which have been used for substitution. If collision occurs, she discards the element and she chooses a different cover element pseudo-randomly.
JPEG steganography CS691 Summer JPEG compression is based on the discrete cosine transform (DCT), and reduces the visual redundancy to achieve good compression performance. JPEG steganography uses the DCT coefficients to embed the secret bits. J-Steg, OutGuess, F5 etc.
Review of JPEG compression CS691 Summer Compression: Decompression DCTQuantization Entropy Encoding Original Image Compressed Code DCT De- quantization Entropy Decoding Compressed Code Reconstructed Image
JPEG Steganography CS691 Summer J-Steg : Embeds the secret data by sequentially flipping the LSB of the quantized DCT coefficients (except 0s and 1s) without causing detectable artificial distortion.
JPEG Steganography CS691 Summer OutGuess: In the first pass, the secret bits are embedded in the LSBs of the quantized DCT coefficients (skipping 0s and 1s) along a random walk. In the second pass, the histogram of the stego-image is adjusted to match that of the cover-image.
JPEG Steganography CS691 Summer F5: Instead of replacing the LSBs of the quantized DCT coefficients with the secret bits, the absolute value of the coefficient is decreased by 1. It also randomly chooses randomly DCT coefficients to embed the secret bits.
Steganalysis CS691 Summer Refers to the body of techniques that aid someone in distinguishing between cover-objects and stego-objects. Theoretically expected frequency distribution in steganograms Sample distribution observed in the possibly changed carrier
J-Steg Breaks CS691 Summer Chi-Square Attack: If the bits used for overwriting the least significant bits are equally distributed, the frequencies of both values of each PoV(Pair of Values) become equal. Extended chi-square method for smaller portion of the images can detect the randomly scattered attack also.
Chi-square attack on J-stag CS691 Summer
F5 Breaks CS691 Summer Changes the histogram of DCT coefficients. The number of Zeros in the histogram increases. Algorithm(Histogram): Estimate the cover image histogram. Compare the stego-image histogram with cover image.
Histogram Comparison CS691 Summer
OutGuess Breaks!! CS691 Summer Not that easy to break with histogram! Algorithm (Re-embedding): Estimate the cover image Re-embed another message in possibly stego-image. Embed the same message in the estimated cover image. Results more noise in DCT and thus more discontinuities in the estimated cover image than in stego-image.
Attack on OutGuess CS691 Summer Colored graphs represent the different images taken for test.
Complementary Embedding CS691 Summer Secret bits are embedded in the cover-image by subtracting one from or adding one to the non-zero DCT coefficients. Coefficient Separation Coefficient Permutation Stego key Secret Bit Separation Secret Bits Embedding Coefficient Combination Coefficient De- Permutation Entropy Encoding Stego Image Encrypted Message DCT of Cover Image
Applications.. CS691 Summer Confidential communication and secret data storing Protection of data alteration Access control system for digital content distribution Media Database systems Reference: e.html
References CS691 Summer Liu, C. and Liao, S High-performance JPEG steganography using complementary embedding strategy. Pattern Recogn. 41, 9 (Sep. 2008), DOI= New Methodology for Breaking Steganographic Techniques for JPEGs, with M. Goljan and D. Hogea, Proc. SPIE, Electronic Imaging, Security, Steganography, and Watermarking of Multimedia Contents V, Santa Clara, California, pp , 2003 N. F. Johnson and S. Katzenbeisser, “A survey of steganographic techniques,” in Information Hiding, S. Katzenbeisser and F. Petitcolas,Eds. Norwood, MA: Artech House, 2000, pp. 43–78. Christian Cachin. An information-theoretic model for steganography. Information and Computation, 192(1):41-56, July Parts of this paper appeared in Proc. 2nd Workshop on Information Hiding, Springer, 1998