diff options
-rw-r--r-- | src/libstate/info.txt | 1 | ||||
-rw-r--r-- | src/libstate/look_pk.cpp | 76 | ||||
-rw-r--r-- | src/libstate/look_pk.h | 74 |
3 files changed, 49 insertions, 102 deletions
diff --git a/src/libstate/info.txt b/src/libstate/info.txt index d8e9869ac..4607739f0 100644 --- a/src/libstate/info.txt +++ b/src/libstate/info.txt @@ -19,7 +19,6 @@ pk_engine.h get_enc.cpp init.cpp libstate.cpp -look_pk.cpp lookup.cpp pk_engine.cpp policy.cpp diff --git a/src/libstate/look_pk.cpp b/src/libstate/look_pk.cpp deleted file mode 100644 index 8eb473858..000000000 --- a/src/libstate/look_pk.cpp +++ /dev/null @@ -1,76 +0,0 @@ -/* -* PK Algorithm Lookup -* (C) 1999-2007 Jack Lloyd -* -* Distributed under the terms of the Botan license -*/ - -#include <botan/look_pk.h> -#include <botan/lookup.h> - -namespace Botan { - -/* -* Get a PK_Encryptor object -*/ -PK_Encryptor* get_pk_encryptor(const PK_Encrypting_Key& key, - const std::string& eme) - { - return new PK_Encryptor_MR_with_EME(key, get_eme(eme)); - } - -/* -* Get a PK_Decryptor object -*/ -PK_Decryptor* get_pk_decryptor(const PK_Decrypting_Key& key, - const std::string& eme) - { - return new PK_Decryptor_MR_with_EME(key, get_eme(eme)); - } - -/* -* Get a PK_Signer object -*/ -PK_Signer* get_pk_signer(const PK_Signing_Key& key, - const std::string& emsa, - Signature_Format sig_format) - { - PK_Signer* signer = new PK_Signer(key, get_emsa(emsa)); - signer->set_output_format(sig_format); - return signer; - } - -/* -* Get a PK_Verifier object -*/ -PK_Verifier* get_pk_verifier(const PK_Verifying_with_MR_Key& key, - const std::string& emsa, - Signature_Format sig_format) - { - PK_Verifier* verifier = new PK_Verifier_with_MR(key, get_emsa(emsa)); - verifier->set_input_format(sig_format); - return verifier; - } - -/* -* Get a PK_Verifier object -*/ -PK_Verifier* get_pk_verifier(const PK_Verifying_wo_MR_Key& key, - const std::string& emsa, - Signature_Format sig_format) - { - PK_Verifier* verifier = new PK_Verifier_wo_MR(key, get_emsa(emsa)); - verifier->set_input_format(sig_format); - return verifier; - } - -/* -* Get a PK_Key_Agreement object -*/ -PK_Key_Agreement* get_pk_kas(const PK_Key_Agreement_Key& key, - const std::string& kdf) - { - return new PK_Key_Agreement(key, get_kdf(kdf)); - } - -} diff --git a/src/libstate/look_pk.h b/src/libstate/look_pk.h index 27b67dc5b..d2a056523 100644 --- a/src/libstate/look_pk.h +++ b/src/libstate/look_pk.h @@ -1,6 +1,6 @@ /* * PK Algorithm Lookup -* (C) 1999-2007 Jack Lloyd +* (C) 1999-2010 Jack Lloyd * * Distributed under the terms of the Botan license */ @@ -8,7 +8,7 @@ #ifndef BOTAN_PK_LOOKUP_H__ #define BOTAN_PK_LOOKUP_H__ -#include <botan/build.h> +#include <botan/lookup.h> #include <botan/pubkey.h> namespace Botan { @@ -16,62 +16,86 @@ namespace Botan { /** * Public key encryptor factory method. * @param key the key that will work inside the encryptor -* @param pad determines the algorithm and encoding +* @param eme determines the algorithm and encoding * @return the public key encryptor object */ -BOTAN_DLL PK_Encryptor* get_pk_encryptor(const PK_Encrypting_Key& key, - const std::string& pad); +inline PK_Encryptor* get_pk_encryptor(const PK_Encrypting_Key& key, + const std::string& eme) + { + return new PK_Encryptor_MR_with_EME(key, get_eme(eme)); + } /** * Public key decryptor factory method. * @param key the key that will work inside the decryptor -* @param pad determines the algorithm and encoding +* @param eme determines the algorithm and encoding * @return the public key decryptor object */ -BOTAN_DLL PK_Decryptor* get_pk_decryptor(const PK_Decrypting_Key& key, - const std::string& pad); +inline PK_Decryptor* get_pk_decryptor(const PK_Decrypting_Key& key, + const std::string& eme) + { + return new PK_Decryptor_MR_with_EME(key, get_eme(eme)); + } /** * Public key signer factory method. * @param key the key that will work inside the signer -* @param pad determines the algorithm, encoding and hash algorithm +* @param emsa determines the algorithm, encoding and hash algorithm * @param sig_format the signature format to be used * @return the public key signer object */ -BOTAN_DLL PK_Signer* get_pk_signer(const PK_Signing_Key& key, - const std::string& pad, - Signature_Format = IEEE_1363); +inline PK_Signer* get_pk_signer(const PK_Signing_Key& key, + const std::string& emsa, + Signature_Format sig_format = IEEE_1363) + { + PK_Signer* signer = new PK_Signer(key, get_emsa(emsa)); + signer->set_output_format(sig_format); + return signer; + } /** * Public key verifier factory method. * @param key the key that will work inside the verifier -* @param pad determines the algorithm, encoding and hash algorithm +* @param emsa determines the algorithm, encoding and hash algorithm * @param sig_format the signature format to be used * @return the public key verifier object */ -BOTAN_DLL PK_Verifier* get_pk_verifier(const PK_Verifying_with_MR_Key& key, - const std::string& pad, - Signature_Format = IEEE_1363); +inline PK_Verifier* get_pk_verifier(const PK_Verifying_with_MR_Key& key, + const std::string& emsa, + Signature_Format sig_format = IEEE_1363) + { + PK_Verifier* verifier = new PK_Verifier_with_MR(key, get_emsa(emsa)); + verifier->set_input_format(sig_format); + return verifier; + } /** * Public key verifier factory method. * @param key the key that will work inside the verifier -* @param pad determines the algorithm, encoding and hash algorithm -* @param sig_form the signature format to be used +* @param emsa determines the algorithm, encoding and hash algorithm +* @param sig_format the signature format to be used * @return the public key verifier object */ -BOTAN_DLL PK_Verifier* get_pk_verifier(const PK_Verifying_wo_MR_Key& key, - const std::string& pad, - Signature_Format sig_form = IEEE_1363); +inline PK_Verifier* get_pk_verifier(const PK_Verifying_wo_MR_Key& key, + const std::string& emsa, + Signature_Format sig_format = IEEE_1363) + { + PK_Verifier* verifier = new PK_Verifier_wo_MR(key, get_emsa(emsa)); + verifier->set_input_format(sig_format); + return verifier; + } /** * Public key key agreement factory method. * @param key the key that will work inside the key agreement -* @param pad determines the algorithm, encoding and hash algorithm -* @return the public key verifier object +* @param kdf the kdf algorithm to use +* @return the key agreement algorithm */ -BOTAN_DLL PK_Key_Agreement* get_pk_kas(const PK_Key_Agreement_Key& key, - const std::string& pad); +inline PK_Key_Agreement* get_pk_kas(const PK_Key_Agreement_Key& key, + const std::string& kdf) + { + return new PK_Key_Agreement(key, get_kdf(kdf)); + } } |