Botan 2.1.0 Crypto and TLS for C++11

- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

prf_x942.h
Go to the documentation of this file.
1 /*
2 * X9.42 PRF
3 * (C) 1999-2007 Jack Lloyd
4 *
5 * Botan is released under the Simplified BSD License (see license.txt)
6 */
7
8 #ifndef BOTAN_ANSI_X942_PRF_H__
9 #define BOTAN_ANSI_X942_PRF_H__
10
11 #include <botan/kdf.h>
12
13 namespace Botan {
14
15 /**
16 * PRF from ANSI X9.42
17 */
18 class BOTAN_DLL X942_PRF final : public KDF
19 {
20 public:
21 std::string name() const override { return "X9.42-PRF(" + m_key_wrap_oid + ")"; }
22
23 KDF* clone() const override { return new X942_PRF(m_key_wrap_oid); }
24
25 size_t kdf(uint8_t key[], size_t key_len,
26 const uint8_t secret[], size_t secret_len,
27 const uint8_t salt[], size_t salt_len,
28 const uint8_t label[], size_t label_len) const override;
29
30 explicit X942_PRF(const std::string& oid);
31 private:
32 std::string m_key_wrap_oid;
33 };
34
35 }
36
37 #endif
Botan::X942_PRF::name
std::string name() const override
Definition: prf_x942.h:21
Botan::X942_PRF
Definition: prf_x942.h:18
Botan
Definition: alg_id.cpp:13
Botan::KDF
Definition: kdf.h:20
Botan::X942_PRF::clone
KDF * clone() const override
Definition: prf_x942.h:23