Botan
1.11.15
|
#include <pubkey.h>
Public Member Functions | |
SymmetricKey | derive_key (size_t key_len, const byte in[], size_t in_len, const byte params[], size_t params_len) const |
SymmetricKey | derive_key (size_t key_len, const std::vector< byte > &in, const byte params[], size_t params_len) const |
SymmetricKey | derive_key (size_t key_len, const byte in[], size_t in_len, const std::string ¶ms="") const |
SymmetricKey | derive_key (size_t key_len, const std::vector< byte > &in, const std::string ¶ms="") const |
PK_Key_Agreement (const Private_Key &key, const std::string &kdf) |
Botan::PK_Key_Agreement::PK_Key_Agreement | ( | const Private_Key & | key, |
const std::string & | kdf | ||
) |
Construct a PK Key Agreement.
Definition at line 327 of file pubkey.cpp.
References Botan::Public_Key::algo_name(), and Botan::get_kdf().
{ m_op.reset(get_pk_op<PK_Ops::Key_Agreement>(key, kdf_name)); if(!m_op) throw Lookup_Error("Key agreement with " + key.algo_name() + " not supported"); m_kdf.reset(get_kdf(kdf_name)); }
SymmetricKey Botan::PK_Key_Agreement::derive_key | ( | size_t | key_len, |
const byte | in[], | ||
size_t | in_len, | ||
const byte | params[], | ||
size_t | params_len | ||
) | const |
Definition at line 338 of file pubkey.cpp.
Referenced by botan_pk_op_key_agreement(), and Botan::TLS::Client_Key_Exchange::Client_Key_Exchange().
{ secure_vector<byte> z = m_op->agree(in, in_len); if(!m_kdf) return z; return m_kdf->derive_key(key_len, z, params, params_len); }
SymmetricKey Botan::PK_Key_Agreement::derive_key | ( | size_t | key_len, |
const std::vector< byte > & | in, | ||
const byte | params[], | ||
size_t | params_len | ||
) | const [inline] |
Definition at line 339 of file pubkey.h.
{ return derive_key(key_len, &in[0], in.size(), params, params_len); }
SymmetricKey Botan::PK_Key_Agreement::derive_key | ( | size_t | key_len, |
const byte | in[], | ||
size_t | in_len, | ||
const std::string & | params = "" |
||
) | const [inline] |
Definition at line 355 of file pubkey.h.
{ return derive_key(key_len, in, in_len, reinterpret_cast<const byte*>(params.data()), params.length()); }
SymmetricKey Botan::PK_Key_Agreement::derive_key | ( | size_t | key_len, |
const std::vector< byte > & | in, | ||
const std::string & | params = "" |
||
) | const [inline] |
Definition at line 370 of file pubkey.h.
{ return derive_key(key_len, &in[0], in.size(), reinterpret_cast<const byte*>(params.data()), params.length()); }