Crypto++
8.4
Free C++ class library of cryptographic schemes
|
Go to the documentation of this file.
11 #ifndef CRYPTOPP_SHA3_H
12 #define CRYPTOPP_SHA3_H
39 SHA3(
unsigned int digestSize) : m_digestSize(digestSize) {Restart();}
45 void Update(
const byte *input,
size_t length);
47 void TruncatedFinal(
byte *hash,
size_t size);
50 inline unsigned int r()
const {
return BlockSize();}
53 unsigned int m_digestSize, m_counter;
59 template<
unsigned int T_DigestSize>
63 CRYPTOPP_CONSTANT(DIGESTSIZE = T_DigestSize);
64 CRYPTOPP_CONSTANT(BLOCKSIZE = 200 - 2 * DIGESTSIZE);
65 static std::string StaticAlgorithmName()
77 unsigned int BlockSize()
const {
return BLOCKSIZE; }
82 #if !defined(__BORLANDC__)
Classes and functions for secure memory allocations.
std::string AlgorithmName() const
Provides the name of this algorithm.
#define CRYPTOPP_COMPILE_ASSERT(expr)
Compile time assertion.
const char * BlockSize()
int, in bytes
SHA3 message digest template.
Utility functions for the Crypto++ library.
std::string IntToString(T value, unsigned int base=10)
Converts a value to a string.
unsigned int OptimalDataAlignment() const
Provides input and output data alignment for optimal performance.
unsigned int DigestSize() const
Provides the digest size of the hash.
Crypto++ library namespace.
SHA3 message digest base class.
Abstract base classes that provide a uniform interface to this library.
SHA3_Final()
Construct a SHA3-X message digest.
unsigned int BlockSize() const
Provides the block size of the compression function.