Botan  1.10.9
Public Member Functions | List of all members
Botan::PK_Decryptor_EME Class Reference

#include <pubkey.h>

Inheritance diagram for Botan::PK_Decryptor_EME:
Botan::PK_Decryptor

Public Member Functions

SecureVector< bytedecrypt (const byte in[], size_t length) const
 
SecureVector< bytedecrypt (const MemoryRegion< byte > &in) const
 
 PK_Decryptor_EME (const Private_Key &key, const std::string &eme)
 
 ~PK_Decryptor_EME ()
 

Detailed Description

Decryption with an MR algorithm and an EME.

Definition at line 423 of file pubkey.h.

Constructor & Destructor Documentation

Botan::PK_Decryptor_EME::PK_Decryptor_EME ( const Private_Key key,
const std::string &  eme 
)

Construct an instance.

Parameters
keythe key to use inside the encryptor
emethe EME to use

Definition at line 86 of file pubkey.cpp.

References Botan::Public_Key::algo_name(), Botan::get_eme(), Botan::Global_State_Management::global_state(), and Botan::Algorithm_Factory::Engine_Iterator::next().

88  {
89  Algorithm_Factory::Engine_Iterator i(global_state().algorithm_factory());
90 
91  op = 0;
92 
93  while(const Engine* engine = i.next())
94  {
95  op = engine->get_decryption_op(key);
96  if(op)
97  break;
98  }
99 
100  if(!op)
101  throw Lookup_Error("Decryption with " + key.algo_name() + " not supported");
102 
103  eme = (eme_name == "Raw") ? 0 : get_eme(eme_name);
104  }
friend class Engine_Iterator
Definition: algo_factory.h:207
Library_State & global_state()
EME * get_eme(const std::string &algo_spec)
Definition: get_enc.cpp:143
Botan::PK_Decryptor_EME::~PK_Decryptor_EME ( )
inline

Definition at line 434 of file pubkey.h.

434 { delete op; delete eme; }

Member Function Documentation

SecureVector<byte> Botan::PK_Decryptor::decrypt ( const byte  in[],
size_t  length 
) const
inlineinherited

Decrypt a ciphertext.

Parameters
inthe ciphertext as a byte array
lengththe length of the above byte array
Returns
decrypted message

Definition at line 94 of file pubkey.h.

Referenced by Botan::KeyPair::encryption_consistency_check(), Botan::PK_Decryptor_Filter::end_msg(), and Botan::Client_Key_Exchange::pre_master_secret().

95  {
96  return dec(in, length);
97  }
SecureVector<byte> Botan::PK_Decryptor::decrypt ( const MemoryRegion< byte > &  in) const
inlineinherited

Decrypt a ciphertext.

Parameters
inthe ciphertext
Returns
decrypted message

Definition at line 104 of file pubkey.h.

References Botan::MemoryRegion< T >::size().

105  {
106  return dec(&in[0], in.size());
107  }
size_t size() const
Definition: secmem.h:29

The documentation for this class was generated from the following files: