27 void clear()
override;
28 std::string
name()
const override;
30 std::unique_ptr<MessageAuthenticationCode>
new_object()
const override;
41 explicit GMAC(std::unique_ptr<BlockCipher> cipher);
51 void add_data(std::span<const uint8_t> input)
override;
52 void final_result(std::span<uint8_t> output)
override;
53 void start_msg(std::span<const uint8_t> nonce)
override;
54 void key_schedule(std::span<const uint8_t> key)
override;
56 static const size_t GCM_BS = 16;
57 std::unique_ptr<BlockCipher> m_cipher;
58 std::unique_ptr<GHASH> m_ghash;
void final(uint8_t out[])
std::string name() const override
GMAC(std::unique_ptr< BlockCipher > cipher)
std::unique_ptr< MessageAuthenticationCode > new_object() const override
GMAC & operator=(GMAC &&other)=default
Key_Length_Specification key_spec() const override
GMAC(GMAC &&other)=default
bool has_keying_material() const override
size_t output_length() const override
GMAC(const GMAC &other)=delete
GMAC & operator=(const GMAC &other)=delete
std::vector< T, secure_allocator< T > > secure_vector