JavaPad in a nutshell Chapter 6, Frequently Asked Questions
Q : Why the name JavaPad?
A : JavaPad is a java implementation of the "one time pad" algorithm
wich is extremly simple and equaly strong. The algorithm is unbreakable.
Even with unlimited computer power, and time, it can not be broken.
Q : What can I do with JavaPad?
A : Encrypt different types of files with a unbreakable encryption,
text files, pictures, sounds, executable programs, etc....
Or use javaPad to add "one time pad" support to your own encryption
Q : Is javaPad better than other encryption tools/algorithms PGP/DES
A : Yes and no, javaPad's encryption is much stronger than DES, and PGP is
just a system for mangaging keys, but it is totaly different program.
PGP uses Asymmetric and symmetric encryption I think, this means you have 2 keys
instead of just one, one is a public key and the other is private.
If you encrypt a file using your public key, then only your private key
can decrypt it. This means you can safely send your public key to someone,
without compromising your private key.
In javaPad you must decrypt the file with exactly the same file wich encrypted
it, this is more secure, but you have to give the key to the reciever of the
data in a secure way like meeting them and giving them it on a floppy.
This makes javaPad best suited for use on your own machine, or on you local
network. A system called RIPS is being developed that will use this encryption to
secure a local network
But with the little trick described at the end of chapter2 this could be done
without compromising the key.
Q : How many bits can javaPad encrypt in?
A : The number of bits javaPad can encrypt in is the size of the keyfile
I've personaly encrypted in 1`000`000`000 bits, (took about 2 hours on my pII 266)
And that even included making a 119 MB keyfile:)
If anyone from NSA is reading this... HA HA HA
Q : How secure is the keyFile?
A : The KeyGenerator and the program using it (MakeKey and SMakeKey) generates the random numbers
using SUN's SHA1PRNG algorithm and it is not possible to guess the numbers generated by it.
Check SUNs documentation on SecureRandom for more information
Q : JavaPad cant be 100% secure, nothing is
A : The Encryption is 100% secure and can be proved by math (chapter 4)
However the system is not 100% secure, someone might steal your keyfile (there is no
point in encrypting data, and then leaving the keyfile in the same directory on your disk)
But as long as someone dont have the keyfile they CANT decrypt your data
Q : JavaPad is not a real one time pad, the random numbers are only pseudo random
A : The random numbers generated by the java.security.SecureRandom() is of course not 100%
random, for more information about the quality of the random numbers generated by it
check Sun's documentation. I dont think it's able to predict the random numbers generated
by it tough. And you can of course use a keyfile generated by another program.
Using a webcam and 6 lava lamps for example, to seed a random number generator.
If you have a question please mail it to me. erlend@klogd.net
-End of chapter 6
<- Last Next ->