Is this piece of code safe?
SecureRandom randomizer = new SecureRandom(String.valueOf(new Date().getTime()).getBytes());
Is this the right
I think it is best to let the SecureRandom seed itself. This is done by calling nextBytes immediately after it's creation (calling setSeed will prevent this).
final byte[] dummy = new byte[512];
SecureRandom sr = SecureRandom.getInstance("SHA1PRNG");
sr.nextBytes(dummy);
You want to use SHA1PRNG because it guarantees a fast non-blocking implementation even on Linux, where the default is not.