public class OpenSSLPBEParametersGenerator extends PBEParametersGenerator
Originally this scheme was a simple extension of PKCS 5 V2.0 Scheme 1 using MD5 with an iteration count of 1. The default digest was changed to SHA-256 with OpenSSL 1.1.0. This implementation still defaults to MD5, but the digest can now be set.
iterationCount, password, salt
Constructor and Description |
---|
OpenSSLPBEParametersGenerator()
Construct a OpenSSL Parameters generator - digest the original MD5.
|
OpenSSLPBEParametersGenerator(Digest digest)
Construct a OpenSSL Parameters generator - digest as specified.
|
Modifier and Type | Method and Description |
---|---|
CipherParameters |
generateDerivedMacParameters(int keySize)
Generate a key parameter for use with a MAC derived from the password,
salt, and iteration count we are currently initialised with.
|
CipherParameters |
generateDerivedParameters(int keySize)
Generate a key parameter derived from the password, salt, and iteration
count we are currently initialised with.
|
CipherParameters |
generateDerivedParameters(int keySize,
int ivSize)
Generate a key with initialisation vector parameter derived from
the password, salt, and iteration count we are currently initialised
with.
|
void |
init(byte[] password,
byte[] salt)
Initialise - note the iteration count for this algorithm is fixed at 1.
|
getIterationCount, getPassword, getSalt, init, PKCS12PasswordToBytes, PKCS5PasswordToBytes, PKCS5PasswordToUTF8Bytes
public OpenSSLPBEParametersGenerator()
public OpenSSLPBEParametersGenerator(Digest digest)
digest
- the digest to use as the PRF.public void init(byte[] password, byte[] salt)
password
- password to use.salt
- salt to use.public CipherParameters generateDerivedParameters(int keySize)
generateDerivedParameters
in class PBEParametersGenerator
keySize
- the size of the key we want (in bits)java.lang.IllegalArgumentException
- if the key length larger than the base hash size.public CipherParameters generateDerivedParameters(int keySize, int ivSize)
generateDerivedParameters
in class PBEParametersGenerator
keySize
- the size of the key we want (in bits)ivSize
- the size of the iv we want (in bits)java.lang.IllegalArgumentException
- if keySize + ivSize is larger than the base hash size.public CipherParameters generateDerivedMacParameters(int keySize)
generateDerivedMacParameters
in class PBEParametersGenerator
keySize
- the size of the key we want (in bits)java.lang.IllegalArgumentException
- if the key length larger than the base hash size.