190 likes | 421 Views
Steganography. Leo Lee CS 265, Section 2 Dr. Stamp April 5, 2004. Outline. What is Steganography? Historical Examples LSB Embedding Concept Implementation Analysis. What is Steganography?. Literally means “covered writing” Goals: Hide a secret message within some other object
E N D
Steganography Leo Lee CS 265, Section 2 Dr. Stamp April 5, 2004
Outline • What is Steganography? • Historical Examples • LSB Embedding • Concept • Implementation • Analysis
What is Steganography? • Literally means “covered writing” • Goals: • Hide a secret message within some other object • Do so in such a way that the presence of the message is not discernable
Historical Examples • Invisible Ink used in WWII • Microdot: A page of information, the size of a printed period. • Waxed Tablets • A person’s head! • Null-ciphers (unencrypted messages)
Shaved head Steg mm… Beer…
Null cipher • Message sent by German spy in WWII Apparently neutral’s protest is thoroughly discounted and ignored. Isman hard hit. Blockade issue affects pretext for embargo on by-products, ejecting suets and vegetable oils. Apparently neutral’s protest is thoroughly discounted and ignored. Isman hard hit. Blockade issue affects pretext for embargo on by-products, ejecting suets and vegetable oils. • Pershing sails from NY June 1 • Pershing was an American general
LSB Embedding - Terminology • Message = the secret information we want to hide • Cover image = image used to hide the message in • Stego-image = the cover image with the message embedded
LSB - Concept • Which color is different? • In (R,G,B) left and right are (0,255,0) • Center one is (0,254,0) • We can use the LSB to hold info, since it looks the same either way!
LSB 24-bit Bitmaps • In 24-bit bmps, each pixel represented by 3 bytes (RGB) • Use lsb of each byte to hold a bit of message
LSB 24-bit Bitmaps Example • Message = ‘f’ = 0110 01102 • Cover Image: FF FF FF 00 00 00 FF FF … • Stego-image: FE FF FF 00 00 01 FF FE …
My Own Implementation Which is the stego-image and which the cover? Cover Image Stego-Image
8-bit • Don’t hold direct color values • Do hold offsets into a palette • Can’t just change lsb, because adjacent colors in palette may not be similar
Approach 1 - EzStego • Use cover image with similar colors • Experts recommend gray-scale images • Arrange palette so adjacent colors are similar
Approach 2 – S-Tools • Use only x bits for unique color information. • 8 – x bits are for secret message • Example (x = 7): • Can only have 128 unique colors • For each unique color, there’re two similar colors xxxx xxx0 & xxxx xxx1
LSB – Analysis – The Good • Simple to implement • Allows for large payload • Max. payload = b * p where; • b = number of bytes per pixel • p = number of pixels of cover image
LSB – Analysis – The Bad • Easy for attacker to figure out message if he knows the message is there • But the images look the same, so can’t tell it’s a stego-image… right? • Human vision can’t tell but vulnerable to statistical analysis
LSB – Analysis – The Ugly • It’s even easier if the attacker just wants to corrupt the message. • Just randomize the lsbs himself • Even vulnerable to unintentional corruption: image cropping, conversion to jpeg and back, etc. • Integrity is extremely frail
LSB – Analysis - Conclusion • Good for cases where only low security is desired, but not necessary. • Added security when coupled with cryptography • Foundation for many variations, which are more secure e.g. not vulnerable to statistical analysis attacks.