diff options
Diffstat (limited to 'include/kdf.h')
-rw-r--r-- | include/kdf.h | 34 |
1 files changed, 29 insertions, 5 deletions
diff --git a/include/kdf.h b/include/kdf.h index 57f1dc047..ad7a11dbe 100644 --- a/include/kdf.h +++ b/include/kdf.h @@ -16,11 +16,11 @@ namespace Botan { class BOTAN_DLL KDF1 : public KDF { public: - KDF1(const std::string&); - private: SecureVector<byte> derive(u32bit, const byte[], u32bit, const byte[], u32bit) const; + KDF1(const std::string&); + private: const std::string hash_name; }; @@ -30,11 +30,11 @@ class BOTAN_DLL KDF1 : public KDF class BOTAN_DLL KDF2 : public KDF { public: + SecureVector<byte> derive(u32bit, const byte[], u32bit, + const byte[], u32bit) const; KDF2(const std::string&); private: - SecureVector<byte> derive(u32bit, const byte[], u32bit, - const byte[], u32bit) const; const std::string hash_name; }; @@ -44,12 +44,36 @@ class BOTAN_DLL KDF2 : public KDF class BOTAN_DLL X942_PRF : public KDF { public: + SecureVector<byte> derive(u32bit, const byte[], u32bit, + const byte[], u32bit) const; + X942_PRF(const std::string&); private: + std::string key_wrap_oid; + }; + +/************************************************* +* SSL3 PRF * +*************************************************/ +class BOTAN_DLL SSL3_PRF : public KDF + { + public: SecureVector<byte> derive(u32bit, const byte[], u32bit, const byte[], u32bit) const; + }; - std::string key_wrap_oid; +/************************************************* +* TLS PRF * +*************************************************/ +class BOTAN_DLL TLS_PRF : public KDF + { + public: + SecureVector<byte> derive(u32bit, const byte[], u32bit, + const byte[], u32bit) const; + private: + SecureVector<byte> P_hash(const std::string&, u32bit, + const byte[], u32bit, + const byte[], u32bit) const; }; } |