24#include <openssl/opensslv.h> 
   48                   unsigned char *rkey, 
unsigned int rkey_size,
 
   49                   vector<string> *kdf_options);
 
   59                         const unsigned int key_length, 
unsigned char *rkey,
 
   60                         unsigned int key_size) = 0;
 
   64#if OPENSSL_VERSION_NUMBER >= 0x10100000L 
   87  Key_hkdf_function(vector<string> *kdf_options);
 
   88  virtual ~Key_hkdf_function()
 override {}
 
   89  int derive_key(
const unsigned char *
key, 
const unsigned int key_length,
 
   90                 unsigned char *rkey, 
unsigned int key_size) 
override;
 
  121  int derive_key(
const unsigned char *
key, 
const unsigned int key_length,
 
  122                 unsigned char *rkey, 
unsigned int key_size) 
override;
 
virtual int validate_options()=0
 
virtual ~Key_derivation_function()
Definition: my_kdf.h:57
 
bool options_valid_
Definition: my_kdf.h:54
 
virtual int derive_key(const unsigned char *key, const unsigned int key_length, unsigned char *rkey, unsigned int key_size)=0
 
vector< string > * kdf_options_
Definition: my_kdf.h:53
 
Class to implement KDF method pbkdf2_hmac.
Definition: my_kdf.h:96
 
virtual ~Key_pbkdf2_hmac_function() override
Definition: my_kdf.h:120
 
string salt_
Definition: my_kdf.h:97
 
int validate_options() override
Definition: my_kdf.cc:164
 
Key_pbkdf2_hmac_function(vector< string > *kdf_options)
pbkdf2_hmac Constructor.
Definition: my_kdf.cc:155
 
int derive_key(const unsigned char *key, const unsigned int key_length, unsigned char *rkey, unsigned int key_size) override
Definition: my_kdf.cc:187
 
int iterations_
Definition: my_kdf.h:98
 
int create_kdf_key(const unsigned char *key, const unsigned int key_length, unsigned char *rkey, unsigned int rkey_size, vector< string > *kdf_options)
Creates the required size of key using supplied key and KDF options.
Definition: my_kdf.cc:49
 
std::vector< T, ut::allocator< T > > vector
Specialization of vector which uses allocator.
Definition: ut0new.h:2880
 
required string key
Definition: replication_asynchronous_connection_failover.proto:60