Interface CloudBlobCryptoAgent

  • All Known Implementing Classes:
    CloudBlobCryptoAgentImpl

    public interface CloudBlobCryptoAgent
    Crypto Service to assist in encrypting and decrypting blob chunks transferred between Ambry and the cloud backup.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      java.nio.ByteBuffer decrypt​(java.nio.ByteBuffer buffer)
      Decrypts the blob buffer being downloaded from cloud storage.
      java.nio.ByteBuffer encrypt​(java.nio.ByteBuffer buffer)
      Encrypts the blob buffer being uploaded to cloud storage.
      java.lang.String getEncryptionContext()
      Returns the encryption context (if any)
    • Method Detail

      • encrypt

        java.nio.ByteBuffer encrypt​(java.nio.ByteBuffer buffer)
                             throws java.security.GeneralSecurityException
        Encrypts the blob buffer being uploaded to cloud storage.
        Parameters:
        buffer - The ByteBuffer that needs to be encrypted.
        Returns:
        The encrypted buffer.
        Throws:
        java.security.GeneralSecurityException
      • decrypt

        java.nio.ByteBuffer decrypt​(java.nio.ByteBuffer buffer)
                             throws java.security.GeneralSecurityException
        Decrypts the blob buffer being downloaded from cloud storage.
        Parameters:
        buffer - The ByteBuffer that needs to be decrypted.
        Returns:
        The decrypted buffer.
        Throws:
        java.security.GeneralSecurityException
      • getEncryptionContext

        java.lang.String getEncryptionContext()
        Returns the encryption context (if any)
        Returns: