Class SecureRandomFactoryBean

java.lang.Object
org.springframework.security.core.token.SecureRandomFactoryBean
All Implemented Interfaces:
org.springframework.beans.factory.FactoryBean<SecureRandom>

public class SecureRandomFactoryBean extends Object implements org.springframework.beans.factory.FactoryBean<SecureRandom>
Creates a SecureRandom instance.
Since:
2.0.1
  • Constructor Details

    • SecureRandomFactoryBean

      public SecureRandomFactoryBean()
  • Method Details

    • getObject

      public SecureRandom getObject() throws Exception
      Specified by:
      getObject in interface org.springframework.beans.factory.FactoryBean<SecureRandom>
      Throws:
      Exception
    • getObjectType

      public Class<SecureRandom> getObjectType()
      Specified by:
      getObjectType in interface org.springframework.beans.factory.FactoryBean<SecureRandom>
    • isSingleton

      public boolean isSingleton()
      Specified by:
      isSingleton in interface org.springframework.beans.factory.FactoryBean<SecureRandom>
    • setAlgorithm

      public void setAlgorithm(String algorithm)
      Allows the Pseudo Random Number Generator (PRNG) algorithm to be nominated. Defaults to "SHA1PRNG".
      Parameters:
      algorithm - to use (mandatory)
    • setSeed

      public void setSeed(org.springframework.core.io.Resource seed)
      Allows the user to specify a resource which will act as a seed for the SecureRandom instance. Specifically, the resource will be read into an InputStream and those bytes presented to the SecureRandom.setSeed(byte[]) method. Note that this will simply supplement, rather than replace, the existing seed. As such, it is always safe to set a seed using this method (it never reduces randomness).
      Parameters:
      seed - to use, or null if no additional seeding is needed