PAD is a small command-line utility to separate one file into two- each
indistinguishable from white noise, and put them back together into
the original.

Usage: pad <input 1> [<input 2> [output]]

Where input1 is the name of the file to be broken up, pad will write
two files named pad-md5-[md5-sum of file].dat.

If <input2> is given, pad will combine the two into one file, and store
the result in <output>. If <output> is omitted, the file will be written
to stdout.


Example:

pad myfile.txt # you now have pad-md5-foo.dat and pad-md5-bar.dat.
pad pad-md5-foo.dat pad-md5-bar.dat output-file # you now have output-file,
which is identical to the original myfile.txt, built from your two
pad files.


The interesting thing about the pad files are that they both look like
random data (in fact, one actually is random data generated by OpenSSL),
but only together will produce anything at all.

Possible uses-

Free speech enforcement:
	Let's say you have a file called decss.c (for example ;), and
	want to distribute it, but are afraid of censorship. Break
	it up into two pad files, distribute these each on separate
	unrelated systems, and tell people where to get each (and how
	to re-assemble them). Should someone go to one (or both) of the
	hosting systems and pressure them to remove it, each can claim
	they're only hosting harmless, random data. It is mathematically
	impossible to prove that either one is the random one and the
	other was derived from the original file.

please see http://www.eleves.ens.fr:8080/home/madore/misc/freespeech.html

Privacy:
	One-Time-Pad (OTP) encryption dates to long ago, and is in many
	ways much more secure than other forms of encryption that can
	be brute forced. Keep a private random pad between those you
	want to share data with, and simply transmit messages that have
	been merged with this pad, via any medium.  OTP encryption is as
	secure as your random source (in this case, from OpenSSL), and
	the pad itself. Keep in mind it's called <b>One</b>-time pad for
	a reason -- If you use the same pad on two different plaintexts,
	the messages (either one) can no longer be considered secure.


Please let me know if you can think of others.

--xercist@mindless.com

You can likely find support and/or information regarding this program
on irc.stratius.com in #pad.
