Package org.jasypt.salt
Class RandomSaltGenerator
- Object
-
- org.jasypt.salt.RandomSaltGenerator
-
- All Implemented Interfaces:
SaltGenerator
public class RandomSaltGenerator extends Object implements SaltGenerator
This implementation of
SaltGenerator
holds a secure random generator which can be used for generating random salts for encryption or digesting.The algorithm used for random number generation can be configured at instantiation time. If not, the default algorithm will be used.
This class is thread-safe.
- Since:
- 1.2
- Author:
- Daniel Fernández
-
-
Field Summary
Fields Modifier and Type Field Description static String
DEFAULT_SECURE_RANDOM_ALGORITHM
The default algorithm to be used for secure random number generation: set to SHA1PRNG.
-
Constructor Summary
Constructors Constructor Description RandomSaltGenerator()
Creates a new instance of RandomSaltGenerator using the default secure random number generation algorithm.RandomSaltGenerator(String secureRandomAlgorithm)
Creates a new instance of RandomSaltGenerator specifying a secure random number generation algorithm.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]
generateSalt(int lengthBytes)
Generate a random salt of the specified length in bytes.boolean
includePlainSaltInEncryptionResults()
This salt generator needs the salt to be included unencrypted in encryption results, because of its being random.
-
-
-
Field Detail
-
DEFAULT_SECURE_RANDOM_ALGORITHM
public static final String DEFAULT_SECURE_RANDOM_ALGORITHM
The default algorithm to be used for secure random number generation: set to SHA1PRNG.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
RandomSaltGenerator
public RandomSaltGenerator()
Creates a new instance of RandomSaltGenerator using the default secure random number generation algorithm.
-
RandomSaltGenerator
public RandomSaltGenerator(String secureRandomAlgorithm)
Creates a new instance of RandomSaltGenerator specifying a secure random number generation algorithm.- Since:
- 1.5
-
-
Method Detail
-
generateSalt
public byte[] generateSalt(int lengthBytes)
Generate a random salt of the specified length in bytes.- Specified by:
generateSalt
in interfaceSaltGenerator
- Parameters:
lengthBytes
- length in bytes.- Returns:
- the generated salt.
-
includePlainSaltInEncryptionResults
public boolean includePlainSaltInEncryptionResults()
This salt generator needs the salt to be included unencrypted in encryption results, because of its being random. This method will always return true.- Specified by:
includePlainSaltInEncryptionResults
in interfaceSaltGenerator
- Returns:
- true
-
-