8#ifndef BOTAN_SP800_56C_H_
9#define BOTAN_SP800_56C_H_
21 std::string
name()
const override;
23 std::unique_ptr<KDF>
new_object()
const override;
40 void kdf(uint8_t key[],
42 const uint8_t secret[],
46 const uint8_t label[],
47 size_t label_len)
const override;
54 m_prf(std::move(mac)), m_exp(std::move(exp)) {}
57 std::unique_ptr<MessageAuthenticationCode> m_prf;
58 std::unique_ptr<KDF> m_exp;
void kdf(uint8_t key[], size_t key_len, const uint8_t secret[], size_t secret_len, const uint8_t salt[], size_t salt_len, const uint8_t label[], size_t label_len) const override
std::unique_ptr< KDF > new_object() const override
std::string name() const override
SP800_56C_Two_Step(std::unique_ptr< MessageAuthenticationCode > mac, std::unique_ptr< KDF > exp)
int(* final)(unsigned char *, CTX *)