8 #include <botan/lookup.h>
9 #include <botan/libstate.h>
10 #include <botan/engine.h>
40 return cipher->block_size();
43 return hash->hash_block_size();
56 return hash->output_length();
72 return bc->key_spec().minimum_keylength();
75 return sc->key_spec().minimum_keylength();
91 return bc->key_spec().maximum_keylength();
94 return sc->key_spec().maximum_keylength();
110 return bc->key_spec().keylength_multiple();
113 return sc->key_spec().keylength_multiple();
133 if(
Keyed_Filter* algo = engine->get_cipher(algo_spec, direction, af))
size_t minimum_keylength() const
const BlockCipher * prototype_block_cipher(const std::string &algo_spec, const std::string &provider="")
virtual void set_iv(const InitializationVector &iv)
virtual void set_key(const SymmetricKey &key)=0
size_t min_keylength_of(const std::string &name)
size_t max_keylength_of(const std::string &name)
Algorithm_Factory & algorithm_factory() const
const HashFunction * prototype_hash_function(const std::string &algo_spec, const std::string &provider="")
MessageAuthenticationCode * mac
Library_State & global_state()
bool have_algorithm(const std::string &name)
size_t maximum_keylength() const
const MessageAuthenticationCode * prototype_mac(const std::string &algo_spec, const std::string &provider="")
size_t block_size_of(const std::string &name)
virtual Key_Length_Specification key_spec() const =0
size_t keylength_multiple_of(const std::string &name)
size_t keylength_multiple() const
size_t output_length_of(const std::string &name)
Keyed_Filter * get_cipher(const std::string &algo_spec, Cipher_Dir direction)
virtual size_t output_length() const =0
OctetString InitializationVector
const StreamCipher * prototype_stream_cipher(const std::string &algo_spec, const std::string &provider="")