8 #ifndef BOTAN_TLS_PRF_H__
9 #define BOTAN_TLS_PRF_H__
11 #include <botan/kdf.h>
12 #include <botan/mac.h>
22 std::string
name()
const override {
return "TLS-PRF"; }
26 size_t kdf(uint8_t key[],
size_t key_len,
27 const uint8_t secret[],
size_t secret_len,
28 const uint8_t salt[],
size_t salt_len,
29 const uint8_t label[],
size_t label_len)
const override;
33 std::unique_ptr<MessageAuthenticationCode> m_hmac_md5;
34 std::unique_ptr<MessageAuthenticationCode> m_hmac_sha1;
43 std::string
name()
const override {
return "TLS-12-PRF(" +
m_mac->name() +
")"; }
47 size_t kdf(uint8_t key[],
size_t key_len,
48 const uint8_t secret[],
size_t secret_len,
49 const uint8_t salt[],
size_t salt_len,
50 const uint8_t label[],
size_t label_len)
const override;
57 std::unique_ptr<MessageAuthenticationCode>
m_mac;
std::string name() const override
std::unique_ptr< MessageAuthenticationCode > m_mac
KDF * clone() const override
KDF * clone() const override
std::string name() const override
TLS_12_PRF(MessageAuthenticationCode *mac)