public class SecureRandom extends Random
| Modifier | Constructor and Description |
|---|---|
|
SecureRandom()
Default constructor for SecureRandom.
|
|
SecureRandom(byte[] seed)
A constructor for SecureRandom.
|
protected |
SecureRandom(SecureRandomSpi secureRandomSpi,
Provider provider)
A constructor for SecureRandom.
|
| Modifier and Type | Method and Description |
|---|---|
byte[] |
generateSeed(int numBytes)
Returns the specified number of seed bytes.
|
String |
getAlgorithm()
Returns the algorithm name used or "unknown" when the algorithm
used couldn't be determined (as when constructed by the protected
2 argument constructor).
|
static SecureRandom |
getInstance(String algorithm)
Returns an instance of a
SecureRandom from the first provider
that implements it. |
static SecureRandom |
getInstance(String algorithm,
Provider provider)
Returns an instance of a
SecureRandom for the specified
algorithm from the given provider. |
static SecureRandom |
getInstance(String algorithm,
String provider)
Returns an instance of a
SecureRandom for the specified
algorithm from the named provider. |
Provider |
getProvider()
Returns the provider being used by the current SecureRandom class.
|
static byte[] |
getSeed(int numBytes)
Returns the given number of seed bytes.
|
protected int |
next(int numBits)
Generates an integer containing the user specified
number of random bits.
|
void |
nextBytes(byte[] bytes)
Generates a user specified number of bytes.
|
void |
setSeed(byte[] seed)
Seeds the SecureRandom.
|
void |
setSeed(long seed)
Seeds the SecureRandom.
|
nextBoolean, nextDouble, nextFloat, nextGaussian, nextInt, nextInt, nextLongpublic SecureRandom()
getInstance(java.lang.String).public SecureRandom(byte[] seed)
seed - Seed bytes for classprotected SecureRandom(SecureRandomSpi secureRandomSpi, Provider provider)
secureRandomSpi - A SecureRandomSpi classprovider - A Provider classpublic static SecureRandom getInstance(String algorithm) throws NoSuchAlgorithmException
SecureRandom from the first provider
that implements it.algorithm - The algorithm name.SecureRandom implementing the given algorithm.NoSuchAlgorithmException - If no installed provider implements the
given algorithm.IllegalArgumentException - if algorithm is
null or is an empty string.public static SecureRandom getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
SecureRandom for the specified
algorithm from the named provider.algorithm - The algorithm name.provider - The provider name.SecureRandom implementing the chosen
algorithm.NoSuchAlgorithmException - If the named provider does not implement
the algorithm, or if the implementation cannot be instantiated.NoSuchProviderException - If no provider named provider
is currently installed.IllegalArgumentException - if either algorithm or
provider is null or empty.public static SecureRandom getInstance(String algorithm, Provider provider) throws NoSuchAlgorithmException
SecureRandom for the specified
algorithm from the given provider.algorithm - The SecureRandom algorithm to create.provider - The provider to use.NoSuchAlgorithmException - If the algorithm cannot be found, or if
the class cannot be instantiated.IllegalArgumentException - if either algorithm or
provider is null, or if
algorithm is an empty string.public final Provider getProvider()
public String getAlgorithm()
public void setSeed(byte[] seed)
seed - seed bytes to seed withpublic void setSeed(long seed)
public void nextBytes(byte[] bytes)
protected final int next(int numBits)
public static byte[] getSeed(int numBytes)
numBytes - number of seed bytes to getpublic byte[] generateSeed(int numBytes)
numBytes - number of seed bytes to get