10#ifndef BOTAN_ASCON_XOF128_H_
11#define BOTAN_ASCON_XOF128_H_
14#include <botan/internal/ascon_perm.h>
25 std::string
name()
const override {
return "Ascon-XOF128"; }
27 std::string
provider()
const override {
return m_ascon_p.provider(); }
29 size_t block_size()
const override {
return m_ascon_p.byte_rate(); }
33 std::unique_ptr<XOF>
copy_state()
const override;
34 std::unique_ptr<XOF>
new_object()
const override;
37 void add_data(std::span<const uint8_t> input)
override;
38 void generate_bytes(std::span<uint8_t>
output)
override;
39 void reset()
override;
43 bool m_output_generated =
false;
std::string name() const override
size_t block_size() const override
std::string provider() const override
std::unique_ptr< XOF > copy_state() const override
bool accepts_input() const override
std::unique_ptr< XOF > new_object() const override
std::array< uint8_t, count > output()