Class SecureRandom

java.lang.Object
java.security.SecureRandomSpi
com.ibm.crypto.hdwrCCA.provider.SecureRandom
All Implemented Interfaces:
Serializable

public final class SecureRandom extends SecureRandomSpi

This class provides a cryptographically strong true random number generated based on cryptographic hardware. Note a seed is not necessary for hardware random number generation and if one is passed it is not used. (Allowing the passing of a seed is to allow backwards compatibility with software generated random numbers)

See Also:
  • Constructor Details

    • SecureRandom

      public SecureRandom()
      Constructs a new instance of this class.
    • SecureRandom

      public SecureRandom(byte[] seed)
      Constructor that requires a seed. Note: The seed has no real meaning in hardware and this constructor only exists for compatability with SecureRandomSpi.
      Parameters:
      seed - a series of bytes used as seed
  • Method Details

    • engineSetSeed

      public void engineSetSeed(byte[] seed)
      As hardware crypto does not need a seed value this method has no purpose, but is defined in SecureRandomSpi. This method is a no-op whenever called.
      Specified by:
      engineSetSeed in class SecureRandomSpi
      Parameters:
      seed - a series of bytes used as seed.
    • engineNextBytes

      public void engineNextBytes(byte[] bytes) throws InternalError, RuntimeException
      Generates a user-specified number of random bytes.
      Specified by:
      engineNextBytes in class SecureRandomSpi
      Parameters:
      bytes - the array to be filled in with random bytes.
      Throws:
      InternalError - is thrown when an unexpected error occurs.
      RuntimeException - is thrown when a hardware error occurs.
    • engineGenerateSeed

      public byte[] engineGenerateSeed(int numBytes) throws UnsupportedOperationException
      As hardware crypto does not need a seed value this method has no purpose, but is defined in SecureRandomSpi.
      Specified by:
      engineGenerateSeed in class SecureRandomSpi
      Throws:
      UnsupportedOperationException - is always thrown if this method is invoked.