12 #include <botan/mac.h> 30 void clear()
override;
31 std::string
name()
const override;
45 GMAC& operator=(
const GMAC&) =
delete;
50 void add_data(
const uint8_t[],
size_t)
override;
51 void final_result(uint8_t[])
override;
52 void start_msg(
const uint8_t nonce[],
size_t nonce_len)
override;
53 void key_schedule(
const uint8_t key[],
size_t size)
override;
55 static const size_t GCM_BS = 16;
56 std::unique_ptr<BlockCipher> m_cipher;
57 std::unique_ptr<GHASH> m_ghash;
virtual void start_msg(const uint8_t nonce[], size_t nonce_len)
int(* final)(unsigned char *, CTX *)
#define BOTAN_PUBLIC_API(maj, min)
virtual std::string name() const =0
virtual Key_Length_Specification key_spec() const =0
virtual MessageAuthenticationCode * clone() const =0
std::vector< T, secure_allocator< T > > secure_vector
#define BOTAN_FUTURE_INTERNAL_HEADER(hdr)
virtual size_t output_length() const =0