Botan 1.10.17

openssl_engine.h
Go to the documentation of this file.
1 /*
2 * OpenSSL Engine
3 * (C) 1999-2007 Jack Lloyd
4 *
5 * Distributed under the terms of the Botan license
6 */
7
8 #ifndef BOTAN_ENGINE_OPENSSL_H__
9 #define BOTAN_ENGINE_OPENSSL_H__
10
11 #include <botan/engine.h>
12
13 namespace Botan {
14
15 /**
16 * OpenSSL Engine
17 */
18 class OpenSSL_Engine : public Engine
19 {
20 public:
21 /**
22 * Return the provider name ("openssl")
23 */
24 std::string provider_name() const { return "openssl"; }
25
26 PK_Ops::Key_Agreement*
27 get_key_agreement_op(const Private_Key& key) const;
28
29 PK_Ops::Signature*
30 get_signature_op(const Private_Key& key) const;
31
32 PK_Ops::Verification* get_verify_op(const Public_Key& key) const;
33
34 PK_Ops::Encryption* get_encryption_op(const Public_Key& key) const;
35
36 PK_Ops::Decryption* get_decryption_op(const Private_Key& key) const;
37
38 Modular_Exponentiator* mod_exp(const BigInt&,
39 Power_Mod::Usage_Hints) const;
40
41 BlockCipher* find_block_cipher(const SCAN_Name&,
42 Algorithm_Factory&) const;
43
44 StreamCipher* find_stream_cipher(const SCAN_Name&,
45 Algorithm_Factory&) const;
46
47 HashFunction* find_hash(const SCAN_Name&, Algorithm_Factory&) const;
48 };
49
50 }
51
52 #endif
Botan::OpenSSL_Engine::find_hash
HashFunction * find_hash(const SCAN_Name &, Algorithm_Factory &) const
Definition: ossl_md.cpp:110
Botan::Algorithm_Factory
Definition: algo_factory.h:34
Botan::OpenSSL_Engine::get_encryption_op
PK_Ops::Encryption * get_encryption_op(const Public_Key &key) const
Definition: ossl_pk.cpp:323
Botan::BigInt
Definition: bigint.h:22
Botan::Private_Key
Definition: pk_keys.h:86
Botan::OpenSSL_Engine::provider_name
std::string provider_name() const
Definition: openssl_engine.h:24
Botan::PK_Ops::Signature
Definition: pk_ops.h:49
Botan::OpenSSL_Engine::find_stream_cipher
StreamCipher * find_stream_cipher(const SCAN_Name &, Algorithm_Factory &) const
Definition: ossl_arc4.cpp:82
Botan::OpenSSL_Engine::get_signature_op
PK_Ops::Signature * get_signature_op(const Private_Key &key) const
Definition: ossl_pk.cpp:291
Botan::OpenSSL_Engine::get_verify_op
PK_Ops::Verification * get_verify_op(const Public_Key &key) const
Definition: ossl_pk.cpp:307
Botan::Engine
Definition: engine.h:32
Botan::OpenSSL_Engine::get_decryption_op
PK_Ops::Decryption * get_decryption_op(const Private_Key &key) const
Definition: ossl_pk.cpp:334
Botan::StreamCipher
Definition: stream_cipher.h:18
Botan::OpenSSL_Engine
Definition: openssl_engine.h:18
Botan
Definition: algo_base.h:14
Botan::OpenSSL_Engine::find_block_cipher
BlockCipher * find_block_cipher(const SCAN_Name &, Algorithm_Factory &) const
Definition: ossl_bc.cpp:187
Botan::PK_Ops::Key_Agreement
Definition: pk_ops.h:145
Botan::SCAN_Name
Definition: scan_name.h:21
Botan::Public_Key
Definition: pk_keys.h:21
Botan::HashFunction
Definition: hash.h:20
Botan::Power_Mod::Usage_Hints
Usage_Hints
Definition: pow_mod.h:35
Botan::OpenSSL_Engine::get_key_agreement_op
PK_Ops::Key_Agreement * get_key_agreement_op(const Private_Key &key) const
Definition: ossl_pk.cpp:280
Botan::PK_Ops::Decryption
Definition: pk_ops.h:35
Botan::OpenSSL_Engine::mod_exp
Modular_Exponentiator * mod_exp(const BigInt &, Power_Mod::Usage_Hints) const
Definition: bn_powm.cpp:48
Botan::PK_Ops::Encryption
Definition: pk_ops.h:21
Botan::PK_Ops::Verification
Definition: pk_ops.h:85
Botan::BlockCipher
Definition: block_cipher.h:18
Botan::Modular_Exponentiator
Definition: pow_mod.h:18