home *** CD-ROM | disk | FTP | other *** search
- Hide and Seek v 4.1
-
- data hiding/seeking using GIF files (GIF format copyright Compuserve).
-
- these programs take data, usually text, including encrypted text, and hide
- it in a gif file. just type hide <infile.ext> <giffile[.gif]> [key] and
- violá! your data is hidden away where it will be hard to detect.
- unfortunately the nature of the method doesn't allow for _perfect_ secrecy,
- and you can kinda tell the gif file has been changed a bit, and if you know
- what to look for, you could probably spot a GIF with hidden data in it,
- depending on how much data. i recommend black and white photo gifs for
- maximum security---it'll just look a tiny bit "noisy", and you can't really
- tell the difference at all with the naked eye, even with long files. be aware
- that the GIF file must be 256-color (or shades of gray) for hide and seek to
- work on it.....otherwise the picture degredation would be so severe as to be
- laughable.
-
- seek works by typing seek <giffile[.gif]> <outfile.ext> [key].
- it takes the giffile, and produces a file called <outfile.ext>.
-
- [key] is an optional key of 8 characters or less that "locks" the data into
- the gif file by encrypting the header information with the IDEA cipher.
- since seek won't be able to read the header intelligently without the key,
- the data becomes fairly hard to extract. don't forget your key, though. if
- you use no key the program still works fine, using a default key. note that
- this "lock" does not encrypt the DATA at all, only the header info. if you
- want to hide encrypted data, which is a good idea (see below), use a seperate
- encryption program (idea.exe, distributed with hideseek, is a fine choice.
- again, see below). note that the security offered by this "locking" mechanism
- is good but not great--using a key made up of 8-or-less ascii characters
- significantly weakens any encryption scheme. it will serve for most normal
- purposes, though. plus, as noted above, if your data is that sensitive,
- it should be independently encrypted by a more secure method anyway.
-
- hide produces a file called outfile.gif, so the original gif is left
- untouched. seek produces a file called whatever you tell it to, via the
- name you choose for <outfile.ext>, so be careful, because seek will overwrite
- any file of the same name as <outfile.ext> without checking. it just doesn't
- give a durn. programs today, sheesh.......(hide is better behaved (the older
- child, you understand) and will not overwrite outfile.gif unless you tell it
- its okay).
-
- ::::NOTICE:::: the file to be hidden must be short. it can't be longer than
- 19K because each character takes 8 pixels to hide, and there are 320X480
- pixels in the maximum VGA display mode, thus ((320X480)/8), which = 19200...
- which gets rounded down in practice to an even 19000 for safe dispersion....
- sorry. note also that since it uniformly uses mode 23 it may make your GIF
- look kinda funny....but since it doesn't delete the original, no harm done.
-
- the way it works is it uses the Least Significant Bit of each pixel to encode
- characters, 8 pixels per character.....sneaky, huh? it uses dispersion to
- spread the data (and thus the picture quality degredation) out a bit
- throughout the GIF in a pseudo-random fashion....."noise" is still noticeable
- for larger files, i'm afraid, but the smaller ones look really good...the
- smaller the better. once again, greyscale is best by far....try it and see
- the difference for yourself. dispersion also helps "lock" the data in---
- without it, anyone could reverse engineer SEEK and just extract all the data
- there is and look at it to see if it makes sense. because the data is
- dispersed, in a pseudo-random way, and the header info is encrypted, there's
- no telling what's in a "locked" file. it would be quite a chore to sift
- through all the possible <outfiles> looking for data that could be encrypted
- anyway.
-
- simple, easy, effective, and FREE!!!! distribute it all you want! please
- don't change it, and please don't charge for it. thanx. hide-and-seek are
- copyright colin maroney, 1994.
-
- this version of hide-and-seek is backwards compatible with version 3.5 and
- 4.0---files hidden with 3.5 or 4.0 can be sought with 4.0 or 4.1
- on very rare occasions seek will think a file is v 3.5 or v 4.0 when it is
- really a garbage file or a file with a very unluckily encrypted header.
- in these cases it will pull out garbage.
- if you use seek with the wrong key or on a garbage file you will get an
- error saying you may have the wrong version---this is because it cannot read
- the correct version from a file with an encrypted header without the right
- key, and the garbage file will only extremely rarely chance to have a valid
- version in the right place. this error is the usual result of trying seek on
- a garbage file or of using the wrong key.
-
- ----------------------------------------------------------------------------
- version 3.5 has a small error in that i did not allocate enough memory to
- hold the path. oops. and i thought i'd fixed that. this is only a problem
- if your path is longer than 25 letters.(your "path" meaning not the PATH
- variable in the environment, but rather the place you run hide or seek from.)
- please distribute this version to anyone and anywhere there might be a 3.5
- please distribute these files to anyplace at all, for that matter.
-
- note that this version, 4.1, has improved dispersion considerably.
- because of the pseudo-random nature of the dispersion, as the hiding
- progresses it becomes possible to re-calculate the dispersion level, and
- update it to a more effecient level. i have done this here.
-
- ============================================================================
- ----------------------------------------------------------------------------
- test your program by doing the following.
-
- first, to show off how good a b&w gif looks, type "seek ardalabw idea.zip".
- this will extract idea.zip, a 14K zip file out of ardalabw.
-
- idea is an encryption program. it'd be really really secure (relatively) to
- hide an encrypted text file....two layers of security, you understand......
-
- i've done this here. type "seek ardala out.txt" to get a hidden secret
- message!!! (boy!). go ahead and try to read it. then use idea to decrypt it
- by typing "idea out.txt dw key" (first you have to unzip idea.zip, of course)
- now you should be able to read it. wow! better than a captain cosmos decoder
- ring anyday, huh?
-
- try hiding idea.zip in ardala.gif (the color one), by typing
- "hide idea.zip ardala". see how shitty it looks? remember, kids, black and
- white works best.
-
- ----------------------------------------------------------------------------
-
- The IDEA(tm) conventional block cipher used by HIDESEEK and IDEA is
- covered by a patent in Europe, held by ETH and a Swiss company called
- Ascom-Tech AG. The patent number is PCT/CH91/00117. International
- patents are pending. IDEA(tm) is a trademark of Ascom-Tech AG. There
- is no license fee required for noncommercial use of IDEA.
- You may not extract the IDEA cipher from HIDESEEK or IDEA.EXE and put it
- in another commercial product without a license. Commercial users of
- IDEA may obtain licensing details from Dieter Profos, Ascom Tech AG,
- Solothurn Lab, Postfach 151, 4502 Solothurn, Switzerland, Tel +41 65
- 242885, Fax +41 65 235761.
-
- HIDESEEK and IDEA are freeware and i am an amateur. they are tested as
- well as i have been able to test them, are as safe as i can make them,
- and i am confident that they are robust. NEVERTHELESS, you may only use
- them at your own risk. i cannot and will not be responsible for lost
- data.
-
- =============================================================================
-
- please distribute this stuff as you got it......thanx
-
- source is included in this release. you asked for it, you got it. please see
- source.doc in source.zip for relevant info.
-
- the files in this release are:
- hide.exe
- seek.exe
- ardala.gif <=--contains a secret message!
- ardalabw.gif <=--contains idea.zip
- hideseek.doc <=--this file
- source.zip <=--contains source code.
- ============================================================================
-
- i am shaggy@phantom.com if you want or need to contact me.
-
- -----remember: when cryptography is illegal, only 9*7^Py.> *8D7awQs √╫9Ikj;
-