Botan 2.19.3
Crypto and TLS for C&
Public Member Functions | Protected Member Functions | List of all members
Botan::PK_Ops::Decryption_with_EME Class Referenceabstract

#include <pk_ops_impl.h>

Inheritance diagram for Botan::PK_Ops::Decryption_with_EME:
Botan::PK_Ops::Decryption

Public Member Functions

secure_vector< uint8_t > decrypt (uint8_t &valid_mask, const uint8_t msg[], size_t msg_len) override
 
virtual size_t plaintext_length (size_t ctext_len) const =0
 
 ~Decryption_with_EME ()=default
 

Protected Member Functions

 Decryption_with_EME (const std::string &eme)
 

Detailed Description

Definition at line 39 of file pk_ops_impl.h.

Constructor & Destructor Documentation

◆ ~Decryption_with_EME()

Botan::PK_Ops::Decryption_with_EME::~Decryption_with_EME ( )
default

◆ Decryption_with_EME()

Botan::PK_Ops::Decryption_with_EME::Decryption_with_EME ( const std::string &  eme)
explicitprotected

Definition at line 34 of file pk_ops.cpp.

35 {
36 m_eme.reset(get_eme(eme));
37 if(!m_eme.get())
38 throw Algorithm_Not_Found(eme);
39 }
EME * get_eme(const std::string &algo_spec)
Definition eme.cpp:27

References Botan::get_eme().

Member Function Documentation

◆ decrypt()

secure_vector< uint8_t > Botan::PK_Ops::Decryption_with_EME::decrypt ( uint8_t &  valid_mask,
const uint8_t  msg[],
size_t  msg_len 
)
overridevirtual

Implements Botan::PK_Ops::Decryption.

Definition at line 42 of file pk_ops.cpp.

45 {
46 const secure_vector<uint8_t> raw = raw_decrypt(ciphertext, ciphertext_len);
47 return m_eme->unpad(valid_mask, raw.data(), raw.size());
48 }

◆ plaintext_length()

virtual size_t Botan::PK_Ops::Decryption::plaintext_length ( size_t  ctext_len) const
pure virtualinherited

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