but you can hide your files (e.g. .rar files) in your .jpg files
How-to:
in cmd, type this: copy /b a.jpg+a.rar b.jpg
this pic contains an avoiding game (in ASCII mode) written by Ma Dongzhe (now at Tsinghua). Below is another picture contains Youtube.com server addresses, which can be added to the hosts file in both Windows and Fedora (Linux) for the purpose of unblocking the GFW.
Just download the full-sized pics (click on the pics first, then download it in the new tab/window) and change their extension names to .rar. Have fun.
it's our fortune that GFW uses a blacklist method, otherwise (whitelist? :-)) this host method to hurdle the wall would fail.
Explanation:
cmd command copy with a /b option indicates a binary file, that is to treat the .jpg file and the .rar file as binary files, and then combines them. Thus both headers are reserved. Using Hex view, we can see that b.jpg (then mixed pic file) begins with the 'JFIF' header exactly the same with the a.jpg file, which we can use to hide the file a.rar. After the whole a.jpg content, we can see the classical 7 bytes '52 61 72 21 1A 07 00', which is a header of a .rar file. Actually what the copy command does is to concatenate the .jpg file and the .rar file, and the mixed file can be interpreted in either way by using different extension names. I guess the unrar programs just ignore the bytes before this header when they open a mixed file with an extension name of .rar.
try to hide .exe files in pics!
related materials:
http://en.wikipedia.org/wiki/JPEG_File_Interchange_Format
http://www.win-rar.com/index.php?id=24&kb_article_id=162
http://kthoom.googlecode.com/hg/docs/unrar.html