13 #ifndef CRYPTOPP_SCRYPT_H 14 #define CRYPTOPP_SCRYPT_H 38 static std::string StaticAlgorithmName () {
44 return StaticAlgorithmName();
49 return static_cast<size_t>(-1);
53 size_t GetValidDerivedLength(
size_t keylength)
const;
56 size_t DeriveKey(byte *derived,
size_t derivedLen,
const byte *secret,
size_t secretLen,
85 size_t DeriveKey(byte *derived,
size_t derivedLen,
const byte *secret,
size_t secretLen,
86 const byte *salt,
size_t saltLen, word64 cost=2, word64 blockSize=8, word64 parallelization=1)
const;
89 enum {defaultCost=2, defaultBlockSize=8, defaultParallelization=1};
96 inline void ValidateParameters(
size_t derivedlen, word64 cost, word64 blockSize, word64 parallelization)
const;
101 #endif // CRYPTOPP_SCRYPT_H Abstract base classes that provide a uniform interface to this library.
size_t MaxDerivedLength() const
Determine maximum number of bytes.
std::string AlgorithmName() const
Provides the name of this algorithm.
Classes and functions for secure memory allocations.
Interface for all crypto algorithms.
Crypto++ library namespace.
Scrypt key derivation function.
Interface for key derivation functions.
Interface for retrieving values given their names.