Uncommons Maths API
(Version 1.2.3)

org.uncommons.maths.random
Class SecureRandomSeedGenerator

java.lang.Object
  extended by org.uncommons.maths.random.SecureRandomSeedGenerator
All Implemented Interfaces:
SeedGenerator

public class SecureRandomSeedGenerator
extends Object
implements SeedGenerator

SeedGenerator implementation that uses Java's bundled SecureRandom RNG to generate random seed data.

The advantage of using SecureRandom for seeding but not as the primary RNG is that we can use it to seed RNGs that are much faster than SecureRandom.

This is the only seeding strategy that is guaranteed to work on all platforms and therefore is provided as a fall-back option should none of the other provided SeedGenerator implementations be useable.

Author:
Daniel Dyer

Constructor Summary
SecureRandomSeedGenerator()
           
 
Method Summary
 byte[] generateSeed(int length)
          Generate a seed value for a random number generator.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SecureRandomSeedGenerator

public SecureRandomSeedGenerator()
Method Detail

generateSeed

public byte[] generateSeed(int length)
                    throws SeedException
Generate a seed value for a random number generator.

Specified by:
generateSeed in interface SeedGenerator
Parameters:
length - The length of the seed to generate (in bytes).
Returns:
A byte array containing the seed data.
Throws:
SeedException - If a seed cannot be generated for any reason.

toString

public String toString()
Overrides:
toString in class Object

Uncommons Maths API
(Version 1.2.3)