8 #include <botan/internal/core_engine.h>
9 #include <botan/scan_name.h>
10 #include <botan/algo_factory.h>
12 #if defined(BOTAN_HAS_AES)
13 #include <botan/aes.h>
16 #if defined(BOTAN_HAS_BLOWFISH)
17 #include <botan/blowfish.h>
20 #if defined(BOTAN_HAS_CAMELLIA)
21 #include <botan/camellia.h>
24 #if defined(BOTAN_HAS_CAST)
25 #include <botan/cast128.h>
26 #include <botan/cast256.h>
29 #if defined(BOTAN_HAS_CASCADE)
30 #include <botan/cascade.h>
33 #if defined(BOTAN_HAS_DES)
34 #include <botan/des.h>
35 #include <botan/desx.h>
38 #if defined(BOTAN_HAS_GOST_28147_89)
39 #include <botan/gost_28147.h>
42 #if defined(BOTAN_HAS_IDEA)
43 #include <botan/idea.h>
46 #if defined(BOTAN_HAS_KASUMI)
47 #include <botan/kasumi.h>
50 #if defined(BOTAN_HAS_LION)
51 #include <botan/lion.h>
54 #if defined(BOTAN_HAS_LUBY_RACKOFF)
55 #include <botan/lubyrack.h>
58 #if defined(BOTAN_HAS_MARS)
59 #include <botan/mars.h>
62 #if defined(BOTAN_HAS_MISTY1)
63 #include <botan/misty1.h>
66 #if defined(BOTAN_HAS_NOEKEON)
67 #include <botan/noekeon.h>
70 #if defined(BOTAN_HAS_RC2)
71 #include <botan/rc2.h>
74 #if defined(BOTAN_HAS_RC5)
75 #include <botan/rc5.h>
78 #if defined(BOTAN_HAS_RC6)
79 #include <botan/rc6.h>
82 #if defined(BOTAN_HAS_SAFER)
83 #include <botan/safer_sk.h>
86 #if defined(BOTAN_HAS_SEED)
87 #include <botan/seed.h>
90 #if defined(BOTAN_HAS_SERPENT)
91 #include <botan/serpent.h>
94 #if defined(BOTAN_HAS_SKIPJACK)
95 #include <botan/skipjack.h>
98 #if defined(BOTAN_HAS_SQUARE)
99 #include <botan/square.h>
102 #if defined(BOTAN_HAS_TEA)
103 #include <botan/tea.h>
106 #if defined(BOTAN_HAS_TWOFISH)
107 #include <botan/twofish.h>
110 #if defined(BOTAN_HAS_XTEA)
111 #include <botan/xtea.h>
123 #if defined(BOTAN_HAS_AES)
132 #if defined(BOTAN_HAS_BLOWFISH)
137 #if defined(BOTAN_HAS_CAMELLIA)
138 if(request.
algo_name() ==
"Camellia-128")
140 if(request.
algo_name() ==
"Camellia-192")
142 if(request.
algo_name() ==
"Camellia-256")
146 #if defined(BOTAN_HAS_CAST)
153 #if defined(BOTAN_HAS_DES)
162 #if defined(BOTAN_HAS_GOST_28147_89)
163 if(request.
algo_name() ==
"GOST-28147-89")
167 #if defined(BOTAN_HAS_IDEA)
172 #if defined(BOTAN_HAS_KASUMI)
177 #if defined(BOTAN_HAS_MARS)
182 #if defined(BOTAN_HAS_MISTY1)
187 #if defined(BOTAN_HAS_NOEKEON)
192 #if defined(BOTAN_HAS_RC2)
197 #if defined(BOTAN_HAS_RC5)
202 #if defined(BOTAN_HAS_RC6)
207 #if defined(BOTAN_HAS_SAFER)
212 #if defined(BOTAN_HAS_SEED)
217 #if defined(BOTAN_HAS_SERPENT)
222 #if defined(BOTAN_HAS_SKIPJACK)
227 #if defined(BOTAN_HAS_SQUARE)
232 #if defined(BOTAN_HAS_TEA)
237 #if defined(BOTAN_HAS_TWOFISH)
242 #if defined(BOTAN_HAS_XTEA)
247 #if defined(BOTAN_HAS_LUBY_RACKOFF)
257 #if defined(BOTAN_HAS_CASCADE)
268 #if defined(BOTAN_HAS_LION)
279 if(!hash || !stream_cipher)
std::string arg(size_t i) const
virtual BlockCipher * clone() const =0
const BlockCipher * prototype_block_cipher(const std::string &algo_spec, const std::string &provider="")
BlockCipher * find_block_cipher(const SCAN_Name &, Algorithm_Factory &) const
virtual HashFunction * clone() const =0
std::string algo_name() const
const HashFunction * prototype_hash_function(const std::string &algo_spec, const std::string &provider="")
bool arg_count_between(size_t lower, size_t upper) const
size_t arg_as_integer(size_t i, size_t def_value) const
virtual StreamCipher * clone() const =0
const StreamCipher * prototype_stream_cipher(const std::string &algo_spec, const std::string &provider="")