Crypto++
8.6
Free C++ class library of cryptographic schemes
|
Go to the documentation of this file.
17 #ifndef CRYPTOPP_LSH_H
18 #define CRYPTOPP_LSH_H
25 #if (CRYPTOPP_BOOL_X32) || (CRYPTOPP_BOOL_X64)
26 # define CRYPTOPP_ENABLE_64BIT_SSE 1
39 CRYPTOPP_CONSTANT(BLOCKSIZE = 128);
43 unsigned int BlockSize()
const {
return BLOCKSIZE; }
48 void Update(
const byte *input,
size_t size);
54 LSH256_Base(
unsigned int algType,
unsigned int digestSize)
55 : m_digestSize(digestSize) { m_state[80] = algType; }
148 void Update(
const byte *input,
size_t size);
154 LSH512_Base(
unsigned int algType,
unsigned int digestSize)
155 : m_digestSize(digestSize) { m_state[80] = algType; }
262 #endif // CRYPTOPP_LSH_H
void Update(const byte *input, size_t size)
Updates a hash with additional input.
static std::string StaticAlgorithmName()
The algorithm's name.
void TruncatedFinal(byte *hash, size_t size)
Computes the hash of the current message.
LSH256()
Construct a LSH-256.
std::string AlgorithmName() const
Provides the name of this algorithm.
unsigned int OptimalDataAlignment() const
Provides input and output data alignment for optimal performance.
static const int DIGESTSIZE
Digest size, in bytes.
Classes and functions for secure memory allocations.
static const int BLOCKSIZE
Block size, in bytes.
std::string AlgorithmName() const
Provides the name of this algorithm.
LSH-512-256 hash function.
LSH-384 and LSH-512 hash base class.
unsigned int BlockSize() const
Provides the block size of the compression function.
static const int BLOCKSIZE
Block size, in bytes.
static const int DIGESTSIZE
Digest size, in bytes.
static std::string StaticAlgorithmName()
The algorithm's name.
unsigned int word32
32-bit unsigned datatype
static const int DIGESTSIZE
Digest size, in bytes.
void Restart()
Restart the hash.
std::string AlgorithmName() const
Provides the name of this algorithm.
static const int BLOCKSIZE
Block size, in bytes.
static const int DIGESTSIZE
Digest size, in bytes.
static std::string StaticAlgorithmName()
The algorithm's name.
static const int BLOCKSIZE
Block size, in bytes.
unsigned int OptimalDataAlignment() const
Provides input and output data alignment for optimal performance.
void TruncatedFinal(byte *hash, size_t size)
Computes the hash of the current message.
static const int BLOCKSIZE
Block size, in bytes.
unsigned int BlockSize() const
Provides the block size of the compression function.
LSH384()
Construct a LSH-384.
static std::string StaticAlgorithmName()
The algorithm's name.
static const int DIGESTSIZE
Digest size, in bytes.
LSH224()
Construct a LSH-224.
unsigned int DigestSize() const
Provides the digest size of the hash.
std::string AlgorithmProvider() const
Retrieve the provider of this algorithm.
unsigned int DigestSize() const
Provides the digest size of the hash.
Crypto++ library namespace.
static const int BLOCKSIZE
Block size, in bytes.
LSH512()
Construct a LSH-512.
void Restart()
Restart the hash.
void Update(const byte *input, size_t size)
Updates a hash with additional input.
LSH512_256()
Construct a LSH-512-256.
std::string AlgorithmName() const
Provides the name of this algorithm.
Abstract base classes that provide a uniform interface to this library.
std::string AlgorithmName() const
Provides the name of this algorithm.
LSH-224 and LSH-256 hash base class.
static std::string StaticAlgorithmName()
The algorithm's name.
static const int BLOCKSIZE
Block size, in bytes.
std::string AlgorithmProvider() const
Retrieve the provider of this algorithm.