Package org.bouncycastle.crypto.general
Class GeneralSecureRandom
java.lang.Object
java.util.Random
java.security.SecureRandom
org.bouncycastle.crypto.general.GeneralSecureRandom
- All Implemented Interfaces:
Serializable
,RandomGenerator
Base class for DRBG/RNG SecureRandom implementations that use non-FIPS approved algorithms.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface java.util.random.RandomGenerator
RandomGenerator.ArbitrarilyJumpableGenerator, RandomGenerator.JumpableGenerator, RandomGenerator.LeapableGenerator, RandomGenerator.SplittableGenerator, RandomGenerator.StreamableGenerator
-
Method Summary
Modifier and TypeMethodDescriptionbyte[]
generateSeed
(int numBytes) Return the algorithm nameint
Return the block size of the underlying DRBGvoid
nextBytes
(byte[] bytes) void
nextBytes
(byte[] bytes, byte[] additionalInput) void
reseed()
Force a reseed.void
reseed
(byte[] additionalInput) Force a reseed with additional input.void
setSeed
(byte[] seed) void
setSeed
(long seed) Methods inherited from class java.security.SecureRandom
getInstance, getInstance, getInstance, getInstance, getInstance, getInstance, getInstanceStrong, getParameters, getProvider, getSeed, next, nextBytes, reseed, toString
Methods inherited from class java.util.Random
doubles, doubles, doubles, doubles, ints, ints, ints, ints, longs, longs, longs, longs, nextBoolean, nextDouble, nextFloat, nextGaussian, nextInt, nextInt, nextLong
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.random.RandomGenerator
isDeprecated, nextDouble, nextDouble, nextExponential, nextFloat, nextFloat, nextGaussian, nextInt, nextLong, nextLong
-
Method Details
-
setSeed
public void setSeed(byte[] seed) - Overrides:
setSeed
in classSecureRandom
-
setSeed
public void setSeed(long seed) - Overrides:
setSeed
in classSecureRandom
-
getAlgorithm
Return the algorithm name- Overrides:
getAlgorithm
in classSecureRandom
-
nextBytes
public void nextBytes(byte[] bytes) - Specified by:
nextBytes
in interfaceRandomGenerator
- Overrides:
nextBytes
in classSecureRandom
-
nextBytes
public void nextBytes(byte[] bytes, byte[] additionalInput) -
generateSeed
public byte[] generateSeed(int numBytes) - Overrides:
generateSeed
in classSecureRandom
-
getBlockSize
public int getBlockSize()Return the block size of the underlying DRBG- Returns:
- number of bits produced each cycle.
-
reseed
public void reseed()Force a reseed.- Overrides:
reseed
in classSecureRandom
-
reseed
public void reseed(byte[] additionalInput) Force a reseed with additional input.- Parameters:
additionalInput
- additional input to be used in conjunction with reseed.
-