Class KeyStoreKeyProvider

java.lang.Object
org.gridgain.internal.encryption.provider.keystore.KeyStoreKeyProvider
All Implemented Interfaces:
org.gridgain.internal.encryption.provider.KeyProvider

public class KeyStoreKeyProvider extends Object implements org.gridgain.internal.encryption.provider.KeyProvider
Provides encryption for encryption keys using a Keystore.
  • Constructor Details

    • KeyStoreKeyProvider

      public KeyStoreKeyProvider(String providerName, String keyStoreType, String keyStorePath, String keyStorePassword, String activeKekName, Cipher cipher)
      Constructor.
      Parameters:
      providerName - Name of the provider
      keyStoreType - Type of the keystore
      keyStorePath - Path to the keystore
      keyStorePassword - Password to open the keystore and read the keys
      activeKekName - The name of the default Key-Encryption-Key
  • Method Details

    • create

      public static KeyStoreKeyProvider create(String providerName, String keyStoreType, String keyStorePath, String keyStorePassword, String activeKekName, Cipher cipher)
      Creates a new instance and eagerly loads the active KEK.
    • encryptKey

      public byte[] encryptKey(org.gridgain.internal.encryption.provider.DataEncryptionKey key)
      Specified by:
      encryptKey in interface org.gridgain.internal.encryption.provider.KeyProvider
    • decryptKey

      public org.gridgain.internal.encryption.provider.DataEncryptionKey decryptKey(byte[] data, @Nullable @Nullable String keyIdentifier)
      Specified by:
      decryptKey in interface org.gridgain.internal.encryption.provider.KeyProvider
    • getProviderIdentifier

      public String getProviderIdentifier()
      Specified by:
      getProviderIdentifier in interface org.gridgain.internal.encryption.provider.KeyProvider
    • getActiveKeyIdentifier

      public String getActiveKeyIdentifier()
      Specified by:
      getActiveKeyIdentifier in interface org.gridgain.internal.encryption.provider.KeyProvider