6#include <aws/cal/symmetric_cipher.h>
10struct aws_symmetric_cipher;
23 Ready = AWS_SYMMETRIC_CIPHER_READY,
24 Finalized = AWS_SYMMETRIC_CIPHER_FINALIZED,
25 Error = AWS_SYMMETRIC_CIPHER_ERROR,
43 Allocator *allocator = ApiAllocator()) noexcept;
52 Allocator *allocator = ApiAllocator()) noexcept;
64 Allocator *allocator = ApiAllocator()) noexcept;
72 Allocator *allocator = ApiAllocator()) noexcept;
77 operator
bool() const noexcept;
88 inline
int LastError() const noexcept {
return m_lastError; }
108 bool FinalizeEncryption(
ByteBuf &out)
noexcept;
126 bool FinalizeDecryption(
ByteBuf &out)
noexcept;
131 bool Reset() noexcept;
#define AWS_CRT_CPP_API
Definition Exports.h:36
Definition SymmetricCipher.h:29
SymmetricCipher(const SymmetricCipher &)=delete
SymmetricCipher & operator=(const SymmetricCipher &)=delete
SymmetricCipher(SymmetricCipher &&) noexcept=default
static const size_t AES_256_CIPHER_BLOCK_SIZE
Definition SymmetricCipher.h:18
SymmetricCipherState
Definition SymmetricCipher.h:22
static const size_t AES_256_KEY_SIZE_BYTES
Definition SymmetricCipher.h:19
aws_byte_cursor ByteCursor
Definition Types.h:31
aws_allocator Allocator
Definition Allocator.h:14
aws_byte_buf ByteBuf
Definition Types.h:30
std::unique_ptr< T, std::function< void(T *)> > ScopedResource
Definition Types.h:163
Definition Allocator.h:11