11 #ifndef CRYPTOPP_SHA3_H 12 #define CRYPTOPP_SHA3_H 36 SHA3(
unsigned int digestSize) : m_digestSize(digestSize) {Restart();}
42 void Update(
const byte *input,
size_t length);
44 void TruncatedFinal(
byte *hash,
size_t size);
48 inline unsigned int r()
const {
return 200 - 2 * m_digestSize;}
58 template<
unsigned int T_DigestSize>
68 unsigned int BlockSize()
const {
return BLOCKSIZE; }
#define CRYPTOPP_STATIC_CONSTEXPR
SHA3 message digest base class.
#define NAMESPACE_BEGIN(x)
Abstract base classes that provide a uniform interface to this library.
CRYPTOPP_STATIC_CONSTEXPR const char * StaticAlgorithmName()
std::string AlgorithmName() const
Provides the name of this algorithm.
SHA3(unsigned int digestSize)
Construct a SHA3.
Classes and functions for secure memory allocations.
SHA3_Final< 64 > SHA3_512
SHA3_Final< 32 > SHA3_256
SHA3_Final< 48 > SHA3_384
unsigned int BlockSize() const
Provides the block size of the compression function.
#define CRYPTOPP_CONSTANT(x)
uint8_t const size_t const size
static std::string StaticAlgorithmName()
unsigned int m_digestSize
std::string IntToString(T value, unsigned int base=10)
Converts a value to a string.
unsigned int DigestSize() const
Provides the digest size of the hash.
SHA3_Final< 28 > SHA3_224
CRYPTOPP_COMPILE_ASSERT(BLOCKSIZE< 200)
unsigned int OptimalDataAlignment() const
Provides input and output data alignment for optimal performance.
FixedSizeSecBlock< word64, 25 > m_state