Interface FileEncrypter

All Known Implementing Classes:
AESCryptoService.AESCBCCryptoModule.AESCBCFileEncrypter, AESCryptoService.AESGCMCryptoModule.AESGCMFileEncrypter, NoFileEncrypter

public interface FileEncrypter
Class implementation that will encrypt a file. Make sure implementation is thread safe.
  • Method Details

    • encryptStream

      OutputStream encryptStream(OutputStream outputStream) throws CryptoService.CryptoException
      Encrypt the OutputStream.
    • getDecryptionParameters

      byte[] getDecryptionParameters()
      Get all the parameters required for decryption. WARNING: This byte[] will get written as part of the OutputStream as it is returned (either before or after the encrypted data). Do not return any unencrypted sensitive information. For example, return information about the encryption taking place such as version, class name or a wrapped File Encryption Key. This information will get written at the beginning of an encrypted Write Ahead Log (WAL) or at the end of an encrypted R-File. Later, it will be read from the file and passed to the FileDecrypter as part of CryptoEnvironment for everything it needs for decryption.