Interface Encrypter<ENC,​DEC,​EXC extends EncryptionException>

  • Type Parameters:
    ENC - The type of the encrypted data.
    DEC - The type of the decrypted data.
    EXC - The specific type of the EncryptionException being thrown.
    All Superinterfaces:
    org.refcodes.mixin.Disposable
    All Known Subinterfaces:
    Crypter<ENC,​DEC,​ENCEXC,​DECEXC>

    public interface Encrypter<ENC,​DEC,​EXC extends EncryptionException>
    extends org.refcodes.mixin.Disposable
    Plain interface for providing straight forward encryption functionality as of toEncrypted(Object) and for forcing your plain functionality to provide a bridge to the Java Cryptographic Extension (JCE) framework's CipherSpi as of toEncrypted(byte[], int, int, byte[], int). This way you can use your algorithms outside the JCE framework. This may be necessary when your Java's security settings prevent running your own JCE extensions from inside an (Oracle-) unsigned JAR.
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.refcodes.mixin.Disposable

        org.refcodes.mixin.Disposable.Disposedable
    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      default int encrypt​(byte[] aBuffer)
      This method encrypts the provided buffer.
      default int encrypt​(byte[] aBuffer, int aOffset, int aLength)
      This method encrypts the provided buffer beginning at the given offset and the given number of bytes.
      int toEncrypted​(byte[] aBuffer, int aOffset, int aLength, byte[] aOutBuffer, int aOutOffset)
      For compatibility with the java.security framework, especially to be integrated in a sub-class of the CipherSpi.
      ENC toEncrypted​(DEC aInput)
      You pass in data of a given type and you get encrypted data of (another) given type.
      • Methods inherited from interface org.refcodes.mixin.Disposable

        dispose
    • Method Detail

      • toEncrypted

        ENC toEncrypted​(DEC aInput)
                 throws EXC extends EncryptionException
        You pass in data of a given type and you get encrypted data of (another) given type.
        Parameters:
        aInput - The input data to be encrypted.
        Returns:
        The encrypted output data.
        Throws:
        EXC - Thrown in case something went wrong upon encryption.
        EXC extends EncryptionException
      • toEncrypted

        int toEncrypted​(byte[] aBuffer,
                        int aOffset,
                        int aLength,
                        byte[] aOutBuffer,
                        int aOutOffset)
                 throws EncryptionException
        For compatibility with the java.security framework, especially to be integrated in a sub-class of the CipherSpi.
        Parameters:
        aBuffer - The input to be encrypted.
        aOffset - The offset to start encryption.
        aLength - The length to be encrypted
        aOutBuffer - The output where to encrypt to.
        aOutOffset - The offset where to start writing the encrypted output.
        Returns:
        The number of bytes encrypted.
        Throws:
        EncryptionException - Thrown in case an encryption issue occurred regarding the Encrypter. Probably the configuration of your Encrypter does not fit the one of the Decrypter.
        ArrayIndexOutOfBoundsException - In case you provided lengths and offsets not fitting with the provided arrays.
      • encrypt

        default int encrypt​(byte[] aBuffer,
                            int aOffset,
                            int aLength)
                     throws EncryptionException
        This method encrypts the provided buffer beginning at the given offset and the given number of bytes.
        Parameters:
        aBuffer - The input to be encrypted.
        aOffset - The offset to start encryption.
        aLength - The length to be encrypted
        Returns:
        The number of bytes encrypted.
        Throws:
        EncryptionException - Thrown in case a encryption issue occurred regarding the Encrypter. Probably the configuration of your Encrypter does not fit the one of the Encrypter.
        ArrayIndexOutOfBoundsException - In case you provided lengths and offsets not fitting with the provided arrays.
      • encrypt

        default int encrypt​(byte[] aBuffer)
                     throws EncryptionException
        This method encrypts the provided buffer.
        Parameters:
        aBuffer - The input to be encrypted.
        Returns:
        The number of bytes encrypted.
        Throws:
        EncryptionException - Thrown in case a encryption issue occurred regarding the Encrypter. Probably the configuration of your Encrypter does not fit the one of the Encrypter.
        ArrayIndexOutOfBoundsException - In case you provided lengths and offsets not fitting with the provided arrays.