views:

553

answers:

2

I have been reading up on on steno for a while. I have seen tools that help aid in embedding messages in .mp3's and png's etc. I am familiar that they do this by replacing the least important bit. In images, these LIB are colors that the human eye can't see; thus not needed. In audio files frequencies not audible to the human ear; also not needed. So my question is, how would one program something like this in a C or C++ language, preferably in a Windows environment.

Any tips,snippets or anything would really be helpful. Thanks

A: 

Any file can be seen as a stream of bytes. For each byte, apply a transformation that modifies the byte to hold the stenographic bit, and write the byte to an an output file.

tpdi
True. But if you do this to a ordinary mp3 file or png file, just interpreting it as a stream of bytes, it will not be readable as mp3 or png afterwards.
bjarkef
+3  A: 

Your application needs to be aware of the file formats. You can't just go changing the LSB of random words in a PNG, nor in an mp3. Once you can read and write back those format, analyze the data, figure out where the LIBs (where importance is the perception of the user, not the least significant bit of the architecture) of the given data are, and embed your information in there. There is no magic recipe, really.

jfclavette