Class AbstractEncryptProvider

java.lang.Object
org.apache.kerby.kerberos.kerb.crypto.enc.provider.AbstractEncryptProvider
All Implemented Interfaces:
EncryptProvider
Direct Known Subclasses:
AesProvider, CamelliaProvider, Des3Provider, DesProvider, Rc4Provider

public abstract class AbstractEncryptProvider extends Object implements EncryptProvider
  • Constructor Details

    • AbstractEncryptProvider

      public AbstractEncryptProvider(int blockSize, int keyInputSize, int keySize)
  • Method Details

    • keyInputSize

      public int keyInputSize()
      Specified by:
      keyInputSize in interface EncryptProvider
    • keySize

      public int keySize()
      Specified by:
      keySize in interface EncryptProvider
    • blockSize

      public int blockSize()
      Specified by:
      blockSize in interface EncryptProvider
    • encrypt

      public void encrypt(byte[] key, byte[] cipherState, byte[] data) throws org.apache.kerby.kerberos.kerb.KrbException
      Specified by:
      encrypt in interface EncryptProvider
      Throws:
      org.apache.kerby.kerberos.kerb.KrbException
    • decrypt

      public void decrypt(byte[] key, byte[] cipherState, byte[] data) throws org.apache.kerby.kerberos.kerb.KrbException
      Specified by:
      decrypt in interface EncryptProvider
      Throws:
      org.apache.kerby.kerberos.kerb.KrbException
    • encrypt

      public void encrypt(byte[] key, byte[] data) throws org.apache.kerby.kerberos.kerb.KrbException
      Specified by:
      encrypt in interface EncryptProvider
      Throws:
      org.apache.kerby.kerberos.kerb.KrbException
    • decrypt

      public void decrypt(byte[] key, byte[] data) throws org.apache.kerby.kerberos.kerb.KrbException
      Specified by:
      decrypt in interface EncryptProvider
      Throws:
      org.apache.kerby.kerberos.kerb.KrbException
    • doEncrypt

      protected abstract void doEncrypt(byte[] data, byte[] key, byte[] cipherState, boolean encrypt) throws org.apache.kerby.kerberos.kerb.KrbException
      Throws:
      org.apache.kerby.kerberos.kerb.KrbException
    • cbcMac

      public byte[] cbcMac(byte[] key, byte[] iv, byte[] data) throws org.apache.kerby.kerberos.kerb.KrbException
      Specified by:
      cbcMac in interface EncryptProvider
      Throws:
      org.apache.kerby.kerberos.kerb.KrbException
    • supportCbcMac

      public boolean supportCbcMac()
      Specified by:
      supportCbcMac in interface EncryptProvider