CuddlyCactus Password Generator

About CuddlyCactus Password Generator:

CuddlyCactus Password Generator is designed to provide the user with effectively random character sequences of the length and character composition of the user's choosing. When the application is launched, it creates a background thread of execution that generates random bytes from the computer's entropy. In addition, it creates two SecureRandom objects, initialized with Java's default seeding algorithm for the operating system being used.

Before it will allow any characters to be generated, the app will wait until 8 random bytes have been collected from the user's PC, which are then used to augment the random seed of one of the SecureRandom objects.

When generating characters, each SecureRandom contributes an array of 20 bytes of data, the corresponding elements of which are XORed with each other to produce the numbers used to generate password characters. When the 20 bytes have been exhausted, the app checks the background thread for more random data. If at least 4 bytes are available, one of the SecureRandoms has its seed augmented with the random data, alternating SecureRandoms each time to increase the randomness of both.

The size of the passwords that can be generated are limited by the Java language itself, and not by any fixed limit in the application. It is easily capable of generating sequences that are millions of characters in length.

Is This A True Random Generator?

This depends upon the OS it is running on.

On Linux, for example, it can be considered a true random generator.

On Windows however it will depend upon the Windows Crypto API that is installed. If the Windows Crypto API contributes random data, then it will be truly random. If not, then it is nearly random. By that we mean that IF your Windows Crypto API is not contributing random data, then the background randomizing process handles the generating and contributing of random data.

The SecureRandom is initialized with 64 bits of random data before the app will do anything, and each SecureRandom has its randomness increased each time the background task has at least 4 bytes available.

Each SecureRandom sequence has ~160-bits of internal data and each time it generates data it scrambles those bits.

If there is a /dev/random or /udev/random available on the OS the app is running on, then the SecureRandoms pull random data from the OS as well as the random data that the background task feed the SecureRandom object. Otherwise, the background task is the major source of randomness.

For more information see the java docs on SecureRandom.

Again, if your running on an OS that provides the /dev/random or /dev/urandom, then it is truly random. If not, then it uses an algorithm that is seeded with truly random numbers, and is frequently augmented with truly random numbers.

Download CuddlyCactus Password Generator:

We offer this application for free via public download by clicking here!

Usage/Help:

If your computer is not setup to automatically start Java .jar files, follow these steps:
  1. Open a command prompt
  2. Navigate to the folder you saved the .jar file in
  3. Type: java -jar PasswordGenerator.jar
You will, of course, need to have the Java Runtime Environment (JRE) installed on your computer.

For those of you who do not have your computer setup to automatically start a Java .jar file AND do not want to open a console manually each time you want to load this app, you can download this .bat and drop it into the same directory where you saved the .jar file, than simply create a shortcut link to your desktop!

Testimonies:

"oh yea, this will be handy for meeting certain apps requirements. I like the character selection!" - Some guy lost in Eureka California

· software that does what it was designed to do ·