Class OpenSSLPBEParametersGenerator


  • public class OpenSSLPBEParametersGenerator
    extends PBEParametersGenerator
    Generator for PBE derived keys and ivs as usd by OpenSSL.

    The scheme is a simple extension of PKCS 5 V2.0 Scheme 1 using MD5 with an iteration count of 1.

    • Constructor Detail

      • OpenSSLPBEParametersGenerator

        public OpenSSLPBEParametersGenerator()
        Construct a OpenSSL Parameters generator.
    • Method Detail

      • init

        public void init​(byte[] password,
                         byte[] salt)
        Initialise - note the iteration count for this algorithm is fixed at 1.
        Parameters:
        password - password to use.
        salt - salt to use.
      • generateDerivedParameters

        public CipherParameters generateDerivedParameters​(int keySize)
        Generate a key parameter derived from the password, salt, and iteration count we are currently initialised with.
        Specified by:
        generateDerivedParameters in class PBEParametersGenerator
        Parameters:
        keySize - the size of the key we want (in bits)
        Returns:
        a KeyParameter object.
        Throws:
        java.lang.IllegalArgumentException - if the key length larger than the base hash size.
      • generateDerivedParameters

        public 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.
        Specified by:
        generateDerivedParameters in class PBEParametersGenerator
        Parameters:
        keySize - the size of the key we want (in bits)
        ivSize - the size of the iv we want (in bits)
        Returns:
        a ParametersWithIV object.
        Throws:
        java.lang.IllegalArgumentException - if keySize + ivSize is larger than the base hash size.
      • generateDerivedMacParameters

        public 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.
        Specified by:
        generateDerivedMacParameters in class PBEParametersGenerator
        Parameters:
        keySize - the size of the key we want (in bits)
        Returns:
        a KeyParameter object.
        Throws:
        java.lang.IllegalArgumentException - if the key length larger than the base hash size.