9#ifndef BOTAN_SP_HASH_SHAKE_H_
10#define BOTAN_SP_HASH_SHAKE_H_
12#include <botan/internal/sp_hash.h>
14#include <botan/internal/shake.h>
45 m_seeded_hash(sphincs_params.n() * 8),
46 m_hash(sphincs_params.n() * 8),
47 m_h_msg_hash(8 * sphincs_params.h_msg_digest_bytes()) {
void update(const uint8_t in[], size_t length)
std::vector< uint8_t > final_stdvec()
void final(uint8_t out[])
std::string name() const override
std::array< uint8_t, 32 > to_bytes() const
Sphincs_Hash_Functions_Shake(const Sphincs_Parameters &sphincs_params, const SphincsPublicSeed &pub_seed)
std::string msg_hash_function_name() const override
void PRF_msg(StrongSpan< SphincsMessageRandomness > out, StrongSpan< const SphincsSecretPRF > sk_prf, StrongSpan< const SphincsOptionalRandomness > opt_rand, const SphincsMessageInternal &msg) override
const SphincsPublicSeed & m_pub_seed
Gf448Elem root(const Gf448Elem &elem)
Compute the root of elem in the field.
M' representation of FIPS 205 (the input to slh_sign_internal and slh_verify_internal)
SphincsInputMessage message
SphincsMessagePrefix prefix