Package org.mozilla.jss.crypto
Class PBEKeyGenParams
- java.lang.Object
-
- org.mozilla.jss.crypto.PBEKeyGenParams
-
- All Implemented Interfaces:
java.security.spec.AlgorithmParameterSpec
,java.security.spec.KeySpec
public class PBEKeyGenParams extends java.lang.Object implements java.security.spec.AlgorithmParameterSpec, java.security.spec.KeySpec
-
-
Constructor Summary
Constructors Constructor Description PBEKeyGenParams(char[] pass, byte[] salt, int iterations)
Creates PBE parameters using default encryption algorithm (DES3_EDE3_CBC).PBEKeyGenParams(char[] pass, byte[] salt, int iterations, EncryptionAlgorithm encAlg)
Creates PBE parameters using default encryption algorithm (DES3_EDE3_CBC).PBEKeyGenParams(Password pass, byte[] salt, int iterations)
Creates PBE parameters.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clear()
Clears the password.protected void
finalize()
EncryptionAlgorithm
getEncryptionAlgorithm()
The encryption algorithm is used with SOME PBE algorithms for determining the KDF output length.int
getIterations()
Returns the iteration count.Password
getPassword()
Returns a reference to the password, not a copy.byte[]
getSalt()
Returns a reference to the salt.
-
-
-
Constructor Detail
-
PBEKeyGenParams
public PBEKeyGenParams(Password pass, byte[] salt, int iterations)
Creates PBE parameters.- Parameters:
pass
- The password. It will be cloned, so the caller is still responsible for clearing it. It must not be null.salt
- The salt for the PBE algorithm. Will not be cloned. Must not be null. It is the responsibility of the caller to use the right salt length for the algorithm. Most algorithms use 8 bytes of salt.iterations
- The iteration count for the PBE algorithm.
-
PBEKeyGenParams
public PBEKeyGenParams(char[] pass, byte[] salt, int iterations)
Creates PBE parameters using default encryption algorithm (DES3_EDE3_CBC).- Parameters:
pass
- The password. It will be cloned, so the caller is still responsible for clearing it. It must not be null.salt
- The salt for the PBE algorithm. Will not be cloned. Must not be null. It is the responsibility of the caller to use the right salt length for the algorithm. Most algorithms use 8 bytes of salt.iterations
- The iteration count for the PBE algorithm.
-
PBEKeyGenParams
public PBEKeyGenParams(char[] pass, byte[] salt, int iterations, EncryptionAlgorithm encAlg)
Creates PBE parameters using default encryption algorithm (DES3_EDE3_CBC).- Parameters:
pass
- The password. It will be cloned, so the caller is still responsible for clearing it. It must not be null.salt
- The salt for the PBE algorithm. Will not be cloned. Must not be null. It is the responsibility of the caller to use the right salt length for the algorithm. Most algorithms use 8 bytes of salt.iterations
- The iteration count for the PBE algorithm.encAlg
- The encryption algorithm. This is used with SOME PBE algorithms for determining the KDF output length.
-
-
Method Detail
-
getPassword
public Password getPassword()
Returns a reference to the password, not a copy.
-
getSalt
public byte[] getSalt()
Returns a reference to the salt.
-
getIterations
public int getIterations()
Returns the iteration count.
-
getEncryptionAlgorithm
public EncryptionAlgorithm getEncryptionAlgorithm()
The encryption algorithm is used with SOME PBE algorithms for determining the KDF output length.
-
clear
public void clear()
Clears the password. This should be called when this object is no longer needed so the password is not left around in memory.
-
finalize
protected void finalize() throws java.lang.Throwable
- Overrides:
finalize
in classjava.lang.Object
- Throws:
java.lang.Throwable
-
-