8#ifndef BOTAN_STREEBOG_H_
9#define BOTAN_STREEBOG_H_
11#include <botan/hash.h>
27 void clear()
override;
28 std::string
name()
const override;
31 std::unique_ptr<HashFunction>
copy_state()
const override;
33 explicit Streebog(
size_t output_bits);
35 void add_data(
const uint8_t input[],
size_t length)
override;
36 void final_result(uint8_t out[])
override;
38 void compress(
const uint8_t input[],
bool lastblock =
false);
40 void compress_64(
const uint64_t input[],
bool lastblock =
false);
43 const size_t m_output_bits;
virtual std::unique_ptr< HashFunction > copy_state() const =0
virtual std::string name() const =0
size_t output_length() const override
HashFunction * clone() const override
size_t hash_block_size() const override
int(* final)(unsigned char *, CTX *)
#define BOTAN_PUBLIC_API(maj, min)
#define BOTAN_FUTURE_INTERNAL_HEADER(hdr)
std::vector< T, secure_allocator< T > > secure_vector