Friday, May 27, 2005

Steganography - (aka Hiding Stuff in Plain Sight)

binary universe - Steganography:

"Source Code and Descriptions about Hiding Messages in

  • Images and AVI-Videos
    Part 1 - Introduction
    Part 2 - Multiple Carrier Files
    Part 3 - Invisible Changes
    Part 4 - AVI Files
    Part 5 - Regions with different Data Density
    Part 6 - Indexed Bitmaps like GIF or PNG

  • .NET Assemblies
    Part 1 - How and Where to Hide Data
    Part 2 - Using Key Files and more Methods

  • MIDI Files

  • Wave Audio Files

  • Collections in General: GIF Palettes, HTML Attributes, Shopping Lists...
"

I've always found steganography an interesting concept. And while I don't need to hide stuff, the industry I'm in may require me to find the stuff... So the more I know the better.

In looking at the above list, MP3 is a glaring omission. That's where I'd hide stuff (now having said that I'm glad I have nothing to hide ;). How many MP3's do YOU have? I have tens of thousands (and believe it or not all are legal... I really hate dragging my music CD's around). So if you want to hide something, and you have a big MP3 collection, putting them there seems like a no brainer.

And they'd have to go IN the MP3. Renaming a file as *.MP3 wouldn't work. The EDD industry commonly uses file signature analysis to match file type to type extension. But if you sprinkle the stuff to be hidden's bits throughout the MP3 it would be VERY hard to detect...

Doing a quick google, I found this; mp3stego. While not exactly what I had in mind, mp3stego works during the wav to mp3 compression process and to be really effective I'd want something that works on existing mp3's (through you could automate the decompress to wav and recompress to mp3 with mp3stego), still it's interesting that others are thinking in this same space...

Now think about this. Encrypt the stuff to be hidden first (say in a password protected zip, which is hard to crack, or PGP, etc). THEN stuff the compressed bits into another file via steganography.

sigh... Now I'm going to be stressing about how I can detect these... I love technology. ;)

1 comment:

Anonymous said...

Hi,
I have implemented another way to hide any type of file inside mp3 file without changing its size and sound quality.
It is different from mp3stego since my application directly access mp3 file(not wav file) per byte.
If you interested, you may check at my blog:
href="http://achmadz.blogspot.com/2008/05/hide-any-file-inside-mp3-file.html

The minuses is: can be easily detected that an mp3 contain hidden message. However, I've encrypted the hidden file using RC4 algorithm.

The downloaded file is including source code in Borland Delphi 7.