1Introduction : 2============== 3 4Steghide is a steganography program that is able to hide data in various kinds 5of image- and audio-files. The color- respectivly sample-frequencies are not 6changed thus making the embedding resistant against first-order statistical 7tests. 8 9The current version of steghide is 0.5.1 10 11Features: 12*) compression of embedded data 13*) encryption of embedded data 14*) embedding of a checksum to verify the integrity of the extraced data 15*) support for JPEG, BMP, WAV and AU files 16 17Steganography : 18=============== 19 20Steganography literally means covered writing. Its goal is to hide the fact 21that communication is taking place. This is often achieved by using a (rather 22large) cover file and embedding the (rather short) secret message into this 23file. The result is a innocuous looking file (the stego file) that contains 24the secret message. 25 26Compilation and Installation : 27============================== 28 29Dependencies : 30-------------- 31You should have the following libraries installed to use steghide. 32 33* libmhash 34 A library that provides various hash algorithms and cryptographic key 35 generation algorithms. Steghide needs this library to convert a passphrase 36 into a form that can be used as input for cryptographic and steganographic 37 algorithms. 38 Available at: http://mhash.sourceforge.net/ 39 40* libmcrypt 41 A library that provides a lot of symmetric encryption algorithms. If you 42 compile steghide without libmcrypt you will not be able to use steghide to 43 encrypt data before embedding nor to extract encrypted data (even if you know 44 the correct passphrase). 45 Available at: http://mcrypt.sourceforge.net/ 46 47* libjpeg 48 A library implementing jpeg image compression. Without this library you will 49 not be able to embed data in jpeg files nor to extract data from jpeg files. 50 Available at: http://www.ijg.org/ 51 52* zlib 53 A lossless data compression library. If you compile steghide without having 54 this library installed you will not be able to use steghide to compress data 55 before embedding nor to extract compressed data from a stego-file. 56 Available at: http://www.gzip.org/zlib/ 57 58Libmhash is absolutely required to compile steghide. While you can compile it 59without the other libraries they are highly recommended as major functionality 60will not be available without them. 61 62Linux / Unix : 63-------------- 64After unpacking the source distribution, enter the following commands: 65 661) ./configure 672) make 683) make check 694) make install (as root) 70 71For more information see the generic installation instructions in the file 72INSTALL that came with the distribution. 73 74If any of these commands fails, please send a mail to the steghide development 75mailing list (steghide-devel@lists.sourceforge.net) describing the error. 76 77Windows : 78--------- 79The easiest way is to download the precompiled binary (including Windows 80versions of the necessary libraries) from the steghide website at: 81http://steghide.sourceforge.net/index.php 82 83If you want to compile the sources yourself you need a C++ compiler. How you 84need to compile the source code depends on the compiler you are using: Please 85consult your compiler's documentation. 86 87Steghide can be compiled with gcc in the cygwin environment 88(http://www.cygwin.com/) which is a unix emulation layer for Windows using the 89procedure mentioned above for the Linux/Unix compilation. 90 91Quick-Start : 92============= 93 94Here are some examples of how steghide can be used. Take a look at these to get 95a first impression. If you want more detailed information please read the 96manpage. 97 98The basic usage is as follows: 99 100 $ steghide embed -cf picture.jpg -ef secret.txt 101 Enter passphrase: 102 Re-Enter passphrase: 103 embedding "secret.txt" in "picture.jpg"... done 104 105This command will embed the file secret.txt in the cover file picture.jpg. 106 107After you have embedded your secret data as shown above you can send the file 108picture.jpg to the person who should receive the secret message. The receiver 109has to use steghide in the following way: 110 111 $ steghide extract -sf picture.jpg 112 Enter passphrase: 113 wrote extracted data to "secret.txt". 114 115If the supplied passphrase is correct, the contents of the original file 116secret.txt will be extracted from the stego file picture.jpg and saved 117in the current directory. 118 119If you have received a file that contains embedded data and you want to get 120some information about it before extracting it, use the info command: 121 122 $ steghide info received_file.wav 123 "received_file.wav": 124 format: wave audio, PCM encoding 125 capacity: 3.5 KB 126 Try to get information about embedded data ? (y/n) y 127 Enter passphrase: 128 embedded file "secret.txt": 129 size: 1.6 KB 130 encrypted: rijndael-128, cbc 131 compressed: yes 132 133After printing some general information about the stego file (format, capacity) you will be 134asked if steghide should try to get information about the embedded data. If you answer with 135yes you have to supply a passphrase. Steghide will then try to extract the embedded data 136with that passphrase and - if it succeeds - print some information about it. 137 138Contact : 139========= 140 141Website : 142--------- 143You can get the latest version of steghide as well as some additional 144information and documentation from the steghide website at: 145http://steghide.sourceforge.net/ 146 147Mailing Lists : 148--------------- 149If you have found a bug or if you have questions, comments, suggestions, etc. 150please send a mail to the development mailing list: 151steghide-devel@lists.sourceforge.net 152To receive mails sent to this list, subscribe to it at: 153http://lists.sourceforge.net/lists/listinfo/steghide-devel 154 155If you want to be informed, when a new version of steghide is released please 156subscribe to the steghide announcement mailing list at: 157http://lists.sourceforge.net/lists/listinfo/steghide-announce 158 159Anonymous CVS access : 160---------------------- 161 162You can access the most recent development source code via anonymous cvs. Just 163type the following lines: 164 165$ cvs -d:pserver:anonymous@cvs.steghide.sourceforge.net:/cvsroot/steghide login 166CVS password: [ Hit RETURN here ] 167 168$ cvs -z3 -d:pserver:anonymous@cvs.steghide.sourceforge.net:/cvsroot/steghide co steghide 169 170You can also browse the cvs repository on the web: 171http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/steghide/ 172 173Author : 174-------- 175You can contact me (Stefan Hetzl) via e-mail: shetzl@chello.at 176