Class VaultKeyGenerator<P extends AlgorithmParameterSpec & VaultKeyInfo>

java.lang.Object
java.security.KeyPairGeneratorSpi
org.honton.chas.jca.vault.provider.keygen.VaultKeyGenerator<P>
Direct Known Subclasses:
VaultEcdsaKeyGenerator, VaultRsaKeyGenerator

public class VaultKeyGenerator<P extends AlgorithmParameterSpec & VaultKeyInfo> extends KeyPairGeneratorSpi
  • Constructor Details

    • VaultKeyGenerator

      protected VaultKeyGenerator(@NonNull @NonNull Class<P> vaultParameterSpecClass)
  • Method Details

    • getVaultInstance

      protected VaultApi getVaultInstance()
    • initialize

      public void initialize(int keysize, SecureRandom random)
      Initializes the key pair generator for a certain keysize, using the default parameter set.
      Specified by:
      initialize in class KeyPairGeneratorSpi
      Parameters:
      keysize - the keysize. This is an algorithm-specific metric, such as modulus length, specified in number of bits.
      random - the source of randomness for this generator.
      Throws:
      InvalidParameterException - if the keysize is not supported by this KeyPairGeneratorSpi object.
    • initialize

      public void initialize(@NonNull @NonNull AlgorithmParameterSpec params, SecureRandom random) throws InvalidAlgorithmParameterException
      Initializes the key pair generator using the specified parameter set and user-provided source of randomness.

      This concrete method has been added to this previously-defined abstract class. (For backwards compatibility, it cannot be abstract.) It may be overridden by a provider to initialize the key pair generator. Such an override is expected to throw an InvalidAlgorithmParameterException if a parameter is inappropriate for this key pair generator. If this method is not overridden, it always throws an UnsupportedOperationException.

      Overrides:
      initialize in class KeyPairGeneratorSpi
      Parameters:
      params - the parameter set used to generate the keys.
      random - the source of randomness for this generator.
      Throws:
      InvalidAlgorithmParameterException - if the given parameters are inappropriate for this key pair generator.
      Since:
      1.2
    • generateKeyPair

      public KeyPair generateKeyPair()
      Generates a key pair. Unless an initialization method is called using a KeyPairGenerator interface, algorithm-specific defaults will be used. This will generate a new key pair every time it is called.
      Specified by:
      generateKeyPair in class KeyPairGeneratorSpi
      Returns:
      the newly generated KeyPair