19#include <argon2/argon2.h>
25 int status = argon2id_hash_encoded(
29 password.c_str(), password.length(),
30 saltBytes.data(), saltBytes.size(),
34 if (status == ARGON2_OK)
35 return std::string(buf);
42 int status = argon2id_verify(hash.c_str(), password.c_str(), password.length());
43 return (status == ARGON2_OK);
std::optional< T > Optional
Optional helper class to wrap optional values within.
std::vector< uint8 > ToByteVector(int32 minSize=0, bool littleEndian=true) const
static constexpr uint32 PARALLELISM
static constexpr uint32 ENCODED_HASH_LEN
static Optional< std::string > Hash(std::string const &password, BigNumber const &salt, uint32 nIterations=DEFAULT_ITERATIONS, uint32 kibMemoryCost=DEFAULT_MEMORY_COST)
static constexpr uint32 HASH_LEN
static bool Verify(std::string const &password, std::string const &hash)