8 #ifndef BOTAN_PBKDF2_H__
9 #define BOTAN_PBKDF2_H__
11 #include <botan/pbkdf.h>
12 #include <botan/mac.h>
13 #include <botan/hash.h>
17 BOTAN_DLL
size_t pbkdf2(MessageAuthenticationCode& prf,
20 const std::string& passphrase,
21 const uint8_t salt[],
size_t salt_len,
23 std::chrono::milliseconds msec);
31 std::string
name()
const override
33 return "PBKDF2(" +
m_mac->name() +
")";
41 size_t pbkdf(uint8_t output_buf[],
size_t output_len,
42 const std::string& passphrase,
43 const uint8_t salt[],
size_t salt_len,
45 std::chrono::milliseconds msec)
const override;
53 std::unique_ptr<MessageAuthenticationCode>
m_mac;
std::unique_ptr< MessageAuthenticationCode > m_mac
std::string name() const override
PKCS5_PBKDF2(MessageAuthenticationCode *mac_fn)
size_t pbkdf2(MessageAuthenticationCode &prf, uint8_t out[], size_t out_len, const std::string &passphrase, const uint8_t salt[], size_t salt_len, size_t iterations, std::chrono::milliseconds msec)
PBKDF * clone() const override