diff options
Diffstat (limited to 'src/lib/pubkey')
74 files changed, 181 insertions, 260 deletions
diff --git a/src/lib/pubkey/blinding.cpp b/src/lib/pubkey/blinding.cpp index d1f299229..4dba697b2 100644 --- a/src/lib/pubkey/blinding.cpp +++ b/src/lib/pubkey/blinding.cpp @@ -5,7 +5,7 @@ * Botan is released under the Simplified BSD License (see license.txt) */ -#include <botan/blinding.h> +#include <botan/internal/blinding.h> namespace Botan { diff --git a/src/lib/pubkey/blinding.h b/src/lib/pubkey/blinding.h index 988a41a35..5f15ee721 100644 --- a/src/lib/pubkey/blinding.h +++ b/src/lib/pubkey/blinding.h @@ -12,8 +12,6 @@ #include <botan/reducer.h> #include <functional> -BOTAN_FUTURE_INTERNAL_HEADER(blinding.h) - namespace Botan { class RandomNumberGenerator; @@ -21,7 +19,7 @@ class RandomNumberGenerator; /** * Blinding Function Object. */ -class BOTAN_PUBLIC_API(2,0) Blinder final +class Blinder final { public: /** diff --git a/src/lib/pubkey/cecpq1/info.txt b/src/lib/pubkey/cecpq1/info.txt index 1e50f4c88..f43a3f3da 100644 --- a/src/lib/pubkey/cecpq1/info.txt +++ b/src/lib/pubkey/cecpq1/info.txt @@ -7,3 +7,7 @@ newhope curve25519 </requires> + +<header:public> +cecpq1.h +</header:public> diff --git a/src/lib/pubkey/curve25519/donna.cpp b/src/lib/pubkey/curve25519/donna.cpp index 352e081dc..e7262eeb7 100644 --- a/src/lib/pubkey/curve25519/donna.cpp +++ b/src/lib/pubkey/curve25519/donna.cpp @@ -33,10 +33,10 @@ */ #include <botan/curve25519.h> -#include <botan/mul128.h> +#include <botan/internal/mul128.h> #include <botan/internal/ct_utils.h> #include <botan/internal/donna128.h> -#include <botan/loadstor.h> +#include <botan/internal/loadstor.h> namespace Botan { diff --git a/src/lib/pubkey/dh/dh.cpp b/src/lib/pubkey/dh/dh.cpp index 687032a69..e4b6e825e 100644 --- a/src/lib/pubkey/dh/dh.cpp +++ b/src/lib/pubkey/dh/dh.cpp @@ -8,7 +8,7 @@ #include <botan/dh.h> #include <botan/internal/pk_ops_impl.h> #include <botan/internal/monty_exp.h> -#include <botan/blinding.h> +#include <botan/internal/blinding.h> namespace Botan { diff --git a/src/lib/pubkey/dl_algo/info.txt b/src/lib/pubkey/dl_algo/info.txt index 44e649cd6..745dd6eea 100644 --- a/src/lib/pubkey/dl_algo/info.txt +++ b/src/lib/pubkey/dl_algo/info.txt @@ -8,3 +8,7 @@ dl_group numbertheory rng </requires> + +<header:public> +dl_algo.h +</header:public> diff --git a/src/lib/pubkey/dl_group/dl_group.cpp b/src/lib/pubkey/dl_group/dl_group.cpp index 05f9640e3..f147c33fb 100644 --- a/src/lib/pubkey/dl_group/dl_group.cpp +++ b/src/lib/pubkey/dl_group/dl_group.cpp @@ -8,12 +8,12 @@ #include <botan/dl_group.h> #include <botan/numthry.h> #include <botan/reducer.h> -#include <botan/monty.h> -#include <botan/divide.h> +#include <botan/internal/monty.h> +#include <botan/internal/divide.h> #include <botan/der_enc.h> #include <botan/ber_dec.h> #include <botan/pem.h> -#include <botan/workfactor.h> +#include <botan/internal/workfactor.h> #include <botan/internal/monty_exp.h> namespace Botan { diff --git a/src/lib/pubkey/dl_group/info.txt b/src/lib/pubkey/dl_group/info.txt index a73edb18c..0b493ead6 100644 --- a/src/lib/pubkey/dl_group/info.txt +++ b/src/lib/pubkey/dl_group/info.txt @@ -8,3 +8,7 @@ bigint numbertheory pem </requires> + +<header:public> +dl_group.h +</header:public> diff --git a/src/lib/pubkey/dlies/info.txt b/src/lib/pubkey/dlies/info.txt index 80c0466f4..90d43edeb 100644 --- a/src/lib/pubkey/dlies/info.txt +++ b/src/lib/pubkey/dlies/info.txt @@ -8,3 +8,7 @@ kdf mac modes </requires> + +<header:public> +dlies.h +</header:public> diff --git a/src/lib/pubkey/dsa/dsa.cpp b/src/lib/pubkey/dsa/dsa.cpp index 4da347c5e..5c0d048c9 100644 --- a/src/lib/pubkey/dsa/dsa.cpp +++ b/src/lib/pubkey/dsa/dsa.cpp @@ -7,15 +7,15 @@ */ #include <botan/dsa.h> -#include <botan/keypair.h> +#include <botan/internal/keypair.h> #include <botan/reducer.h> #include <botan/rng.h> -#include <botan/divide.h> +#include <botan/internal/divide.h> #include <botan/internal/pk_ops_impl.h> #if defined(BOTAN_HAS_RFC6979_GENERATOR) - #include <botan/emsa.h> - #include <botan/rfc6979.h> + #include <botan/internal/emsa.h> + #include <botan/internal/rfc6979.h> #endif namespace Botan { diff --git a/src/lib/pubkey/dsa/info.txt b/src/lib/pubkey/dsa/info.txt index a9f288ede..59bc64b57 100644 --- a/src/lib/pubkey/dsa/info.txt +++ b/src/lib/pubkey/dsa/info.txt @@ -10,3 +10,7 @@ numbertheory emsa1 sha2_32 </requires> + +<header:public> +dsa.h +</header:public> diff --git a/src/lib/pubkey/ec_group/curve_gfp.cpp b/src/lib/pubkey/ec_group/curve_gfp.cpp index 9957bb085..da049aebb 100644 --- a/src/lib/pubkey/ec_group/curve_gfp.cpp +++ b/src/lib/pubkey/ec_group/curve_gfp.cpp @@ -7,7 +7,7 @@ */ #include <botan/curve_gfp.h> -#include <botan/curve_nistp.h> +#include <botan/internal/curve_nistp.h> #include <botan/numthry.h> #include <botan/reducer.h> #include <botan/internal/mp_core.h> diff --git a/src/lib/pubkey/ecc_key/ecc_key.cpp b/src/lib/pubkey/ecc_key/ecc_key.cpp index 5a97e7a50..09748b847 100644 --- a/src/lib/pubkey/ecc_key/ecc_key.cpp +++ b/src/lib/pubkey/ecc_key/ecc_key.cpp @@ -13,7 +13,7 @@ #include <botan/ber_dec.h> #include <botan/secmem.h> #include <botan/point_gfp.h> -#include <botan/workfactor.h> +#include <botan/internal/workfactor.h> namespace Botan { diff --git a/src/lib/pubkey/ecc_key/info.txt b/src/lib/pubkey/ecc_key/info.txt index 32d05f2f9..b9d3ece5d 100644 --- a/src/lib/pubkey/ecc_key/info.txt +++ b/src/lib/pubkey/ecc_key/info.txt @@ -9,3 +9,7 @@ bigint ec_group numbertheory </requires> + +<header:public> +ecc_key.h +</header:public> diff --git a/src/lib/pubkey/ecdh/info.txt b/src/lib/pubkey/ecdh/info.txt index 11ca921da..1c12009b7 100644 --- a/src/lib/pubkey/ecdh/info.txt +++ b/src/lib/pubkey/ecdh/info.txt @@ -8,3 +8,7 @@ ec_group ecc_key numbertheory </requires> + +<header:public> +ecdh.h +</header:public> diff --git a/src/lib/pubkey/ecdsa/ecdsa.cpp b/src/lib/pubkey/ecdsa/ecdsa.cpp index ebe9268cc..11ec37ff4 100644 --- a/src/lib/pubkey/ecdsa/ecdsa.cpp +++ b/src/lib/pubkey/ecdsa/ecdsa.cpp @@ -11,12 +11,12 @@ #include <botan/ecdsa.h> #include <botan/internal/pk_ops_impl.h> #include <botan/internal/point_mul.h> -#include <botan/keypair.h> +#include <botan/internal/keypair.h> #include <botan/reducer.h> -#include <botan/emsa.h> +#include <botan/internal/emsa.h> #if defined(BOTAN_HAS_RFC6979_GENERATOR) - #include <botan/rfc6979.h> + #include <botan/internal/rfc6979.h> #endif #if defined(BOTAN_HAS_OPENSSL) diff --git a/src/lib/pubkey/ecdsa/info.txt b/src/lib/pubkey/ecdsa/info.txt index 6bd32ca17..23b5d83c1 100644 --- a/src/lib/pubkey/ecdsa/info.txt +++ b/src/lib/pubkey/ecdsa/info.txt @@ -12,3 +12,7 @@ rng emsa1 sha2_32 </requires> + +<header:public> +ecdsa.h +</header:public> diff --git a/src/lib/pubkey/ecgdsa/ecgdsa.cpp b/src/lib/pubkey/ecgdsa/ecgdsa.cpp index 7ed876315..26045be6b 100644 --- a/src/lib/pubkey/ecgdsa/ecgdsa.cpp +++ b/src/lib/pubkey/ecgdsa/ecgdsa.cpp @@ -7,7 +7,7 @@ */ #include <botan/ecgdsa.h> -#include <botan/keypair.h> +#include <botan/internal/keypair.h> #include <botan/reducer.h> #include <botan/internal/pk_ops_impl.h> #include <botan/internal/point_mul.h> diff --git a/src/lib/pubkey/ecgdsa/info.txt b/src/lib/pubkey/ecgdsa/info.txt index 3f967cfcf..2c70816b7 100644 --- a/src/lib/pubkey/ecgdsa/info.txt +++ b/src/lib/pubkey/ecgdsa/info.txt @@ -13,3 +13,7 @@ rng emsa1 sha2_32 </requires> + +<header:public> +ecgdsa.h +</header:public> diff --git a/src/lib/pubkey/ecies/info.txt b/src/lib/pubkey/ecies/info.txt index 530cc3970..2981d84f2 100644 --- a/src/lib/pubkey/ecies/info.txt +++ b/src/lib/pubkey/ecies/info.txt @@ -8,3 +8,7 @@ mac ecdh modes </requires> + +<header:public> +ecies.h +</header:public> diff --git a/src/lib/pubkey/eckcdsa/eckcdsa.cpp b/src/lib/pubkey/eckcdsa/eckcdsa.cpp index 40d942514..3321a713d 100644 --- a/src/lib/pubkey/eckcdsa/eckcdsa.cpp +++ b/src/lib/pubkey/eckcdsa/eckcdsa.cpp @@ -9,9 +9,9 @@ #include <botan/eckcdsa.h> #include <botan/internal/pk_ops_impl.h> #include <botan/internal/point_mul.h> -#include <botan/keypair.h> +#include <botan/internal/keypair.h> #include <botan/reducer.h> -#include <botan/emsa.h> +#include <botan/internal/emsa.h> #include <botan/hash.h> #include <botan/rng.h> diff --git a/src/lib/pubkey/eckcdsa/info.txt b/src/lib/pubkey/eckcdsa/info.txt index 2bce4aa79..601bfe457 100644 --- a/src/lib/pubkey/eckcdsa/info.txt +++ b/src/lib/pubkey/eckcdsa/info.txt @@ -15,3 +15,7 @@ pk_pad rng sha2_32 </requires> + +<header:public> +eckcdsa.h +</header:public> diff --git a/src/lib/pubkey/ed25519/ed25519.cpp b/src/lib/pubkey/ed25519/ed25519.cpp index 624f82657..7db79f7ee 100644 --- a/src/lib/pubkey/ed25519/ed25519.cpp +++ b/src/lib/pubkey/ed25519/ed25519.cpp @@ -10,7 +10,7 @@ #include <botan/ed25519.h> #include <botan/internal/ed25519_internal.h> -#include <botan/sha2_64.h> +#include <botan/internal/sha2_64.h> #include <botan/rng.h> namespace Botan { diff --git a/src/lib/pubkey/ed25519/ed25519_internal.h b/src/lib/pubkey/ed25519/ed25519_internal.h index cb67a43fd..6e5d56618 100644 --- a/src/lib/pubkey/ed25519/ed25519_internal.h +++ b/src/lib/pubkey/ed25519/ed25519_internal.h @@ -12,7 +12,7 @@ #define BOTAN_ED25519_INT_H_ #include <botan/internal/ed25519_fe.h> -#include <botan/loadstor.h> +#include <botan/internal/loadstor.h> namespace Botan { diff --git a/src/lib/pubkey/elgamal/elgamal.cpp b/src/lib/pubkey/elgamal/elgamal.cpp index 508ed1e8a..6f8019723 100644 --- a/src/lib/pubkey/elgamal/elgamal.cpp +++ b/src/lib/pubkey/elgamal/elgamal.cpp @@ -8,8 +8,8 @@ #include <botan/elgamal.h> #include <botan/internal/pk_ops_impl.h> #include <botan/internal/monty_exp.h> -#include <botan/keypair.h> -#include <botan/blinding.h> +#include <botan/internal/keypair.h> +#include <botan/internal/blinding.h> namespace Botan { diff --git a/src/lib/pubkey/elgamal/info.txt b/src/lib/pubkey/elgamal/info.txt index 0b36658bc..7ba69510d 100644 --- a/src/lib/pubkey/elgamal/info.txt +++ b/src/lib/pubkey/elgamal/info.txt @@ -8,3 +8,7 @@ dl_group keypair numbertheory </requires> + +<header:public> +elgamal.h +</header:public> diff --git a/src/lib/pubkey/gost_3410/info.txt b/src/lib/pubkey/gost_3410/info.txt index 805e31485..4c4302679 100644 --- a/src/lib/pubkey/gost_3410/info.txt +++ b/src/lib/pubkey/gost_3410/info.txt @@ -10,3 +10,7 @@ ecc_key numbertheory rng </requires> + +<header:public> +gost_3410.h +</header:public> diff --git a/src/lib/pubkey/info.txt b/src/lib/pubkey/info.txt index c6e8036e5..3f8e0d9ad 100644 --- a/src/lib/pubkey/info.txt +++ b/src/lib/pubkey/info.txt @@ -3,19 +3,19 @@ PUBLIC_KEY_CRYPTO -> 20131128 </defines> <header:public> -blinding.h pk_algs.h pk_keys.h -pk_ops.h pk_ops_fwd.h pkcs8.h pubkey.h -workfactor.h x509_key.h </header:public> <header:internal> +blinding.h +pk_ops.h pk_ops_impl.h +workfactor.h </header:internal> <requires> diff --git a/src/lib/pubkey/keypair/info.txt b/src/lib/pubkey/keypair/info.txt index ed85abf69..73a442c0d 100644 --- a/src/lib/pubkey/keypair/info.txt +++ b/src/lib/pubkey/keypair/info.txt @@ -1,6 +1,3 @@ -<defines> -KEYPAIR_TESTING -> 20131128 -</defines> - -<requires> -</requires> +<header:internal> +keypair.h +</header:internal> diff --git a/src/lib/pubkey/keypair/keypair.cpp b/src/lib/pubkey/keypair/keypair.cpp index d5cd00172..f5ce33df2 100644 --- a/src/lib/pubkey/keypair/keypair.cpp +++ b/src/lib/pubkey/keypair/keypair.cpp @@ -5,7 +5,7 @@ * Botan is released under the Simplified BSD License (see license.txt) */ -#include <botan/keypair.h> +#include <botan/internal/keypair.h> #include <botan/pubkey.h> #include <botan/rng.h> diff --git a/src/lib/pubkey/keypair/keypair.h b/src/lib/pubkey/keypair/keypair.h index 6900faa35..df73f3192 100644 --- a/src/lib/pubkey/keypair/keypair.h +++ b/src/lib/pubkey/keypair/keypair.h @@ -10,8 +10,6 @@ #include <botan/pk_keys.h> -BOTAN_FUTURE_INTERNAL_HEADER(keypair.h) - namespace Botan { namespace KeyPair { @@ -25,7 +23,7 @@ namespace KeyPair { * @param padding the encryption padding method to use * @return true if consistent otherwise false */ -BOTAN_PUBLIC_API(2,0) bool +bool encryption_consistency_check(RandomNumberGenerator& rng, const Private_Key& private_key, const Public_Key& public_key, @@ -40,7 +38,7 @@ encryption_consistency_check(RandomNumberGenerator& rng, * @param padding the signature padding method to use * @return true if consistent otherwise false */ -BOTAN_PUBLIC_API(2,0) bool +bool signature_consistency_check(RandomNumberGenerator& rng, const Private_Key& private_key, const Public_Key& public_key, diff --git a/src/lib/pubkey/mce/code_based_key_gen.cpp b/src/lib/pubkey/mce/code_based_key_gen.cpp index 8dc3a3178..9167a2339 100644 --- a/src/lib/pubkey/mce/code_based_key_gen.cpp +++ b/src/lib/pubkey/mce/code_based_key_gen.cpp @@ -13,8 +13,8 @@ #include <botan/mceliece.h> #include <botan/internal/mce_internal.h> #include <botan/internal/code_based_util.h> +#include <botan/internal/loadstor.h> #include <botan/polyn_gf2m.h> -#include <botan/loadstor.h> namespace Botan { diff --git a/src/lib/pubkey/mce/code_based_util.h b/src/lib/pubkey/mce/code_based_util.h index 5b0a9195a..514953c11 100644 --- a/src/lib/pubkey/mce/code_based_util.h +++ b/src/lib/pubkey/mce/code_based_util.h @@ -12,7 +12,7 @@ #ifndef BOTAN_CODE_BASED_UTIL_H_ #define BOTAN_CODE_BASED_UTIL_H_ -#include <botan/gf2m_small_m.h> +#include <botan/internal/gf2m_small_m.h> namespace Botan { diff --git a/src/lib/pubkey/mce/gf2m_small_m.cpp b/src/lib/pubkey/mce/gf2m_small_m.cpp index 341b45d03..b67d807c5 100644 --- a/src/lib/pubkey/mce/gf2m_small_m.cpp +++ b/src/lib/pubkey/mce/gf2m_small_m.cpp @@ -8,7 +8,7 @@ * Botan is released under the Simplified BSD License (see license.txt) */ -#include <botan/gf2m_small_m.h> +#include <botan/internal/gf2m_small_m.h> #include <botan/exceptn.h> #include <string> diff --git a/src/lib/pubkey/mce/info.txt b/src/lib/pubkey/mce/info.txt index becf616b3..6a5577bfa 100644 --- a/src/lib/pubkey/mce/info.txt +++ b/src/lib/pubkey/mce/info.txt @@ -5,10 +5,10 @@ MCELIECE -> 20150922 <header:public> mceliece.h polyn_gf2m.h -gf2m_small_m.h </header:public> <header:internal> +gf2m_small_m.h code_based_util.h mce_internal.h </header:internal> diff --git a/src/lib/pubkey/mce/mce_internal.h b/src/lib/pubkey/mce/mce_internal.h index 7059f4e2e..e0e0fce0e 100644 --- a/src/lib/pubkey/mce/mce_internal.h +++ b/src/lib/pubkey/mce/mce_internal.h @@ -14,7 +14,7 @@ #include <botan/secmem.h> #include <botan/types.h> -#include <botan/pk_ops.h> +#include <botan/internal/pk_ops.h> #include <botan/mceliece.h> #include <botan/polyn_gf2m.h> diff --git a/src/lib/pubkey/mce/mceliece_key.cpp b/src/lib/pubkey/mce/mceliece_key.cpp index 283421be4..bca7625db 100644 --- a/src/lib/pubkey/mce/mceliece_key.cpp +++ b/src/lib/pubkey/mce/mceliece_key.cpp @@ -16,7 +16,7 @@ #include <botan/internal/bit_ops.h> #include <botan/internal/code_based_util.h> #include <botan/internal/pk_ops_impl.h> -#include <botan/loadstor.h> +#include <botan/internal/loadstor.h> #include <botan/der_enc.h> #include <botan/ber_dec.h> #include <botan/rng.h> diff --git a/src/lib/pubkey/mce/polyn_gf2m.cpp b/src/lib/pubkey/mce/polyn_gf2m.cpp index 592ab7262..4b4bf3526 100644 --- a/src/lib/pubkey/mce/polyn_gf2m.cpp +++ b/src/lib/pubkey/mce/polyn_gf2m.cpp @@ -15,7 +15,7 @@ #include <botan/internal/bit_ops.h> #include <botan/rng.h> #include <botan/exceptn.h> -#include <botan/loadstor.h> +#include <botan/internal/loadstor.h> namespace Botan { diff --git a/src/lib/pubkey/newhope/info.txt b/src/lib/pubkey/newhope/info.txt index 4877a138b..b7d75654b 100644 --- a/src/lib/pubkey/newhope/info.txt +++ b/src/lib/pubkey/newhope/info.txt @@ -10,3 +10,7 @@ sha2_32 ctr aes </requires> + +<header:public> +newhope.h +</header:public> diff --git a/src/lib/pubkey/newhope/newhope.cpp b/src/lib/pubkey/newhope/newhope.cpp index 6a0440139..36044eb75 100644 --- a/src/lib/pubkey/newhope/newhope.cpp +++ b/src/lib/pubkey/newhope/newhope.cpp @@ -13,7 +13,7 @@ #include <botan/hash.h> #include <botan/rng.h> #include <botan/stream_cipher.h> -#include <botan/loadstor.h> +#include <botan/internal/loadstor.h> namespace Botan { diff --git a/src/lib/pubkey/pbes2/info.txt b/src/lib/pubkey/pbes2/info.txt index f8c6d3719..63e35f5b3 100644 --- a/src/lib/pubkey/pbes2/info.txt +++ b/src/lib/pubkey/pbes2/info.txt @@ -8,3 +8,7 @@ cbc hmac pbkdf2 </requires> + +<header:internal> +pbes2.h +</header:internal> diff --git a/src/lib/pubkey/pbes2/pbes2.cpp b/src/lib/pubkey/pbes2/pbes2.cpp index 1360de67c..7a8846537 100644 --- a/src/lib/pubkey/pbes2/pbes2.cpp +++ b/src/lib/pubkey/pbes2/pbes2.cpp @@ -6,13 +6,13 @@ * Botan is released under the Simplified BSD License (see license.txt) */ -#include <botan/pbes2.h> +#include <botan/internal/pbes2.h> #include <botan/cipher_mode.h> #include <botan/pbkdf.h> #include <botan/pwdhash.h> #include <botan/der_enc.h> #include <botan/ber_dec.h> -#include <botan/parsing.h> +#include <botan/internal/parsing.h> #include <botan/asn1_obj.h> #include <botan/oids.h> #include <botan/rng.h> diff --git a/src/lib/pubkey/pbes2/pbes2.h b/src/lib/pubkey/pbes2/pbes2.h index a5051a8fd..0a16ac1f3 100644 --- a/src/lib/pubkey/pbes2/pbes2.h +++ b/src/lib/pubkey/pbes2/pbes2.h @@ -5,14 +5,12 @@ * Botan is released under the Simplified BSD License (see license.txt) */ -#ifndef BOTAN_PBE_PKCS_v20_H_ -#define BOTAN_PBE_PKCS_v20_H_ +#ifndef BOTAN_PBE_PKCS_V20_H_ +#define BOTAN_PBE_PKCS_V20_H_ #include <botan/asn1_obj.h> #include <chrono> -BOTAN_FUTURE_INTERNAL_HEADER(pbes2.h) - namespace Botan { class RandomNumberGenerator; @@ -27,12 +25,12 @@ class RandomNumberGenerator; * @param rng a random number generator */ std::pair<AlgorithmIdentifier, std::vector<uint8_t>> -BOTAN_PUBLIC_API(2,0) pbes2_encrypt(const secure_vector<uint8_t>& key_bits, - const std::string& passphrase, - std::chrono::milliseconds msec, - const std::string& cipher, - const std::string& digest, - RandomNumberGenerator& rng); +pbes2_encrypt(const secure_vector<uint8_t>& key_bits, + const std::string& passphrase, + std::chrono::milliseconds msec, + const std::string& cipher, + const std::string& digest, + RandomNumberGenerator& rng); /** * Encrypt with PBES2 from PKCS #5 v2.0 @@ -46,13 +44,13 @@ BOTAN_PUBLIC_API(2,0) pbes2_encrypt(const secure_vector<uint8_t>& key_bits, * @param rng a random number generator */ std::pair<AlgorithmIdentifier, std::vector<uint8_t>> -BOTAN_PUBLIC_API(2,1) pbes2_encrypt_msec(const secure_vector<uint8_t>& key_bits, - const std::string& passphrase, - std::chrono::milliseconds msec, - size_t* out_iterations_if_nonnull, - const std::string& cipher, - const std::string& digest, - RandomNumberGenerator& rng); +pbes2_encrypt_msec(const secure_vector<uint8_t>& key_bits, + const std::string& passphrase, + std::chrono::milliseconds msec, + size_t* out_iterations_if_nonnull, + const std::string& cipher, + const std::string& digest, + RandomNumberGenerator& rng); /** * Encrypt with PBES2 from PKCS #5 v2.0 @@ -64,12 +62,12 @@ BOTAN_PUBLIC_API(2,1) pbes2_encrypt_msec(const secure_vector<uint8_t>& key_bits, * @param rng a random number generator */ std::pair<AlgorithmIdentifier, std::vector<uint8_t>> -BOTAN_PUBLIC_API(2,1) pbes2_encrypt_iter(const secure_vector<uint8_t>& key_bits, - const std::string& passphrase, - size_t iterations, - const std::string& cipher, - const std::string& digest, - RandomNumberGenerator& rng); +pbes2_encrypt_iter(const secure_vector<uint8_t>& key_bits, + const std::string& passphrase, + size_t iterations, + const std::string& cipher, + const std::string& digest, + RandomNumberGenerator& rng); /** * Decrypt a PKCS #5 v2.0 encrypted stream @@ -78,9 +76,9 @@ BOTAN_PUBLIC_API(2,1) pbes2_encrypt_iter(const secure_vector<uint8_t>& key_bits, * @param params the PBES2 parameters */ secure_vector<uint8_t> -BOTAN_PUBLIC_API(2,0) pbes2_decrypt(const secure_vector<uint8_t>& key_bits, - const std::string& passphrase, - const std::vector<uint8_t>& params); +pbes2_decrypt(const secure_vector<uint8_t>& key_bits, + const std::string& passphrase, + const std::vector<uint8_t>& params); } diff --git a/src/lib/pubkey/pem/info.txt b/src/lib/pubkey/pem/info.txt index 471d9abd6..c4d2fe2a1 100644 --- a/src/lib/pubkey/pem/info.txt +++ b/src/lib/pubkey/pem/info.txt @@ -5,3 +5,7 @@ PEM_CODEC -> 20131128 <requires> base64 </requires> + +<header:public> +pem.h +</header:public> diff --git a/src/lib/pubkey/pk_algs.cpp b/src/lib/pubkey/pk_algs.cpp index fc8697585..74282c108 100644 --- a/src/lib/pubkey/pk_algs.cpp +++ b/src/lib/pubkey/pk_algs.cpp @@ -6,7 +6,7 @@ */ #include <botan/pk_algs.h> -#include <botan/parsing.h> +#include <botan/internal/parsing.h> #if defined(BOTAN_HAS_RSA) #include <botan/rsa.h> diff --git a/src/lib/pubkey/pk_keys.cpp b/src/lib/pubkey/pk_keys.cpp index c5a98d72f..54315a8b5 100644 --- a/src/lib/pubkey/pk_keys.cpp +++ b/src/lib/pubkey/pk_keys.cpp @@ -6,7 +6,7 @@ */ #include <botan/pk_keys.h> -#include <botan/pk_ops.h> +#include <botan/internal/pk_ops.h> #include <botan/der_enc.h> #include <botan/oids.h> #include <botan/hash.h> diff --git a/src/lib/pubkey/pk_ops.h b/src/lib/pubkey/pk_ops.h index 63ef9fa9b..9db1edd11 100644 --- a/src/lib/pubkey/pk_ops.h +++ b/src/lib/pubkey/pk_ops.h @@ -33,7 +33,7 @@ namespace PK_Ops { /** * Public key encryption interface */ -class BOTAN_PUBLIC_API(2,0) Encryption +class Encryption { public: virtual secure_vector<uint8_t> encrypt(const uint8_t msg[], @@ -50,7 +50,7 @@ class BOTAN_PUBLIC_API(2,0) Encryption /** * Public key decryption interface */ -class BOTAN_PUBLIC_API(2,0) Decryption +class Decryption { public: virtual secure_vector<uint8_t> decrypt(uint8_t& valid_mask, @@ -65,7 +65,7 @@ class BOTAN_PUBLIC_API(2,0) Decryption /** * Public key signature verification interface */ -class BOTAN_PUBLIC_API(2,0) Verification +class Verification { public: /* @@ -87,7 +87,7 @@ class BOTAN_PUBLIC_API(2,0) Verification /** * Public key signature creation interface */ -class BOTAN_PUBLIC_API(2,0) Signature +class Signature { public: /* @@ -114,7 +114,7 @@ class BOTAN_PUBLIC_API(2,0) Signature /** * A generic key agreement operation (eg DH or ECDH) */ -class BOTAN_PUBLIC_API(2,0) Key_Agreement +class Key_Agreement { public: virtual secure_vector<uint8_t> agree(size_t key_len, @@ -129,7 +129,7 @@ class BOTAN_PUBLIC_API(2,0) Key_Agreement /** * KEM (key encapsulation) */ -class BOTAN_PUBLIC_API(2,0) KEM_Encryption +class KEM_Encryption { public: virtual void kem_encrypt(secure_vector<uint8_t>& out_encapsulated_key, @@ -142,7 +142,7 @@ class BOTAN_PUBLIC_API(2,0) KEM_Encryption virtual ~KEM_Encryption() = default; }; -class BOTAN_PUBLIC_API(2,0) KEM_Decryption +class KEM_Decryption { public: virtual secure_vector<uint8_t> kem_decrypt(const uint8_t encap_key[], diff --git a/src/lib/pubkey/pk_ops_impl.h b/src/lib/pubkey/pk_ops_impl.h index 6bab2143e..65604e598 100644 --- a/src/lib/pubkey/pk_ops_impl.h +++ b/src/lib/pubkey/pk_ops_impl.h @@ -8,10 +8,10 @@ #ifndef BOTAN_PK_OPERATION_IMPL_H_ #define BOTAN_PK_OPERATION_IMPL_H_ -#include <botan/pk_ops.h> -#include <botan/eme.h> +#include <botan/internal/pk_ops.h> +#include <botan/internal/eme.h> #include <botan/kdf.h> -#include <botan/emsa.h> +#include <botan/internal/emsa.h> namespace Botan { diff --git a/src/lib/pubkey/pkcs8.cpp b/src/lib/pubkey/pkcs8.cpp index 2989e20aa..e279bb60a 100644 --- a/src/lib/pubkey/pkcs8.cpp +++ b/src/lib/pubkey/pkcs8.cpp @@ -16,7 +16,7 @@ #include <botan/pk_algs.h> #if defined(BOTAN_HAS_PKCS5_PBES2) - #include <botan/pbes2.h> + #include <botan/internal/pbes2.h> #endif namespace Botan { diff --git a/src/lib/pubkey/pubkey.cpp b/src/lib/pubkey/pubkey.cpp index 3834489ef..74aebd5d2 100644 --- a/src/lib/pubkey/pubkey.cpp +++ b/src/lib/pubkey/pubkey.cpp @@ -8,7 +8,7 @@ #include <botan/der_enc.h> #include <botan/ber_dec.h> #include <botan/bigint.h> -#include <botan/pk_ops.h> +#include <botan/internal/pk_ops.h> #include <botan/internal/ct_utils.h> #include <botan/rng.h> diff --git a/src/lib/pubkey/rfc6979/info.txt b/src/lib/pubkey/rfc6979/info.txt index 72a61301c..53f0ad72c 100644 --- a/src/lib/pubkey/rfc6979/info.txt +++ b/src/lib/pubkey/rfc6979/info.txt @@ -6,3 +6,7 @@ RFC6979_GENERATOR -> 20140321 bigint hmac_drbg </requires> + +<header:internal> +rfc6979.h +</header:internal> diff --git a/src/lib/pubkey/rfc6979/rfc6979.cpp b/src/lib/pubkey/rfc6979/rfc6979.cpp index 94b313c3a..3a67e6951 100644 --- a/src/lib/pubkey/rfc6979/rfc6979.cpp +++ b/src/lib/pubkey/rfc6979/rfc6979.cpp @@ -5,7 +5,7 @@ * Botan is released under the Simplified BSD License (see license.txt) */ -#include <botan/rfc6979.h> +#include <botan/internal/rfc6979.h> #include <botan/hmac_drbg.h> #include <botan/mac.h> diff --git a/src/lib/pubkey/rfc6979/rfc6979.h b/src/lib/pubkey/rfc6979/rfc6979.h index 54134a682..c1b1d2cc7 100644 --- a/src/lib/pubkey/rfc6979/rfc6979.h +++ b/src/lib/pubkey/rfc6979/rfc6979.h @@ -12,13 +12,11 @@ #include <string> #include <memory> -BOTAN_FUTURE_INTERNAL_HEADER(rfc6979.h) - namespace Botan { class HMAC_DRBG; -class BOTAN_PUBLIC_API(2,0) RFC6979_Nonce_Generator final +class BOTAN_TEST_API RFC6979_Nonce_Generator final { public: /** @@ -45,10 +43,11 @@ class BOTAN_PUBLIC_API(2,0) RFC6979_Nonce_Generator final * @param h the message hash already reduced mod q * @param hash the hash function used to generate h */ -BigInt BOTAN_PUBLIC_API(2,0) generate_rfc6979_nonce(const BigInt& x, - const BigInt& q, - const BigInt& h, - const std::string& hash); +BOTAN_TEST_API +BigInt generate_rfc6979_nonce(const BigInt& x, + const BigInt& q, + const BigInt& h, + const std::string& hash); } diff --git a/src/lib/pubkey/rsa/info.txt b/src/lib/pubkey/rsa/info.txt index 9fc9354b8..ab8311557 100644 --- a/src/lib/pubkey/rsa/info.txt +++ b/src/lib/pubkey/rsa/info.txt @@ -8,3 +8,7 @@ numbertheory emsa_pssr sha2_32 </requires> + +<header:public> +rsa.h +</header:public> diff --git a/src/lib/pubkey/rsa/rsa.cpp b/src/lib/pubkey/rsa/rsa.cpp index 96f405892..a32aa44e4 100644 --- a/src/lib/pubkey/rsa/rsa.cpp +++ b/src/lib/pubkey/rsa/rsa.cpp @@ -7,14 +7,14 @@ #include <botan/rsa.h> #include <botan/internal/pk_ops_impl.h> -#include <botan/keypair.h> -#include <botan/blinding.h> +#include <botan/internal/keypair.h> +#include <botan/internal/blinding.h> #include <botan/reducer.h> -#include <botan/workfactor.h> +#include <botan/internal/workfactor.h> #include <botan/der_enc.h> #include <botan/ber_dec.h> -#include <botan/monty.h> -#include <botan/divide.h> +#include <botan/internal/monty.h> +#include <botan/internal/divide.h> #include <botan/internal/monty_exp.h> #if defined(BOTAN_HAS_OPENSSL) diff --git a/src/lib/pubkey/sm2/info.txt b/src/lib/pubkey/sm2/info.txt index a3f756820..71677d21e 100644 --- a/src/lib/pubkey/sm2/info.txt +++ b/src/lib/pubkey/sm2/info.txt @@ -12,3 +12,7 @@ rng sm3 kdf2 </requires> + +<header:public> +sm2.h +</header:public> diff --git a/src/lib/pubkey/sm2/sm2.cpp b/src/lib/pubkey/sm2/sm2.cpp index a976c097b..a73823448 100644 --- a/src/lib/pubkey/sm2/sm2.cpp +++ b/src/lib/pubkey/sm2/sm2.cpp @@ -9,11 +9,11 @@ #include <botan/sm2.h> #include <botan/internal/pk_ops_impl.h> #include <botan/internal/point_mul.h> -#include <botan/loadstor.h> +#include <botan/internal/loadstor.h> #include <botan/numthry.h> -#include <botan/keypair.h> +#include <botan/internal/keypair.h> #include <botan/hash.h> -#include <botan/parsing.h> +#include <botan/internal/parsing.h> namespace Botan { diff --git a/src/lib/pubkey/sm2/sm2_enc.cpp b/src/lib/pubkey/sm2/sm2_enc.cpp index 55549afe3..3b49f3177 100644 --- a/src/lib/pubkey/sm2/sm2_enc.cpp +++ b/src/lib/pubkey/sm2/sm2_enc.cpp @@ -7,7 +7,7 @@ #include <botan/sm2.h> #include <botan/internal/point_mul.h> -#include <botan/pk_ops.h> +#include <botan/internal/pk_ops.h> #include <botan/der_enc.h> #include <botan/ber_dec.h> #include <botan/kdf.h> diff --git a/src/lib/pubkey/sm2/sm2_enc.h b/src/lib/pubkey/sm2/sm2_enc.h deleted file mode 100644 index ea8c43d9d..000000000 --- a/src/lib/pubkey/sm2/sm2_enc.h +++ /dev/null @@ -1,15 +0,0 @@ -/* -* SM2 Encryption -* (C) 2017 Ribose Inc -* -* Botan is released under the Simplified BSD License (see license.txt) -*/ - -#ifndef BOTAN_SM2_ENC_KEY_H_ -#define BOTAN_SM2_ENC_KEY_H_ - -#include <botan/sm2.h> - -BOTAN_DEPRECATED_HEADER(sm2_enc.h) - -#endif diff --git a/src/lib/pubkey/workfactor.cpp b/src/lib/pubkey/workfactor.cpp index bb4fd56ca..cd0a83e5c 100644 --- a/src/lib/pubkey/workfactor.cpp +++ b/src/lib/pubkey/workfactor.cpp @@ -5,7 +5,7 @@ * Botan is released under the Simplified BSD License (see license.txt) */ -#include <botan/workfactor.h> +#include <botan/internal/workfactor.h> #include <algorithm> #include <cmath> diff --git a/src/lib/pubkey/xmss/atomic.h b/src/lib/pubkey/xmss/atomic.h index a542d4c00..fc6d8ba94 100644 --- a/src/lib/pubkey/xmss/atomic.h +++ b/src/lib/pubkey/xmss/atomic.h @@ -12,8 +12,6 @@ #include <atomic> #include <memory> -//BOTAN_FUTURE_INTERNAL_HEADER(atomic.h) - namespace Botan { template <typename T> diff --git a/src/lib/pubkey/xmss/info.txt b/src/lib/pubkey/xmss/info.txt index ae290f5fc..bc4a1e745 100644 --- a/src/lib/pubkey/xmss/info.txt +++ b/src/lib/pubkey/xmss/info.txt @@ -7,18 +7,13 @@ xmss.h xmss_hash.h xmss_wots.h xmss_parameters.h -xmss_key_pair.h -xmss_privatekey.h -xmss_publickey.h -xmss_wots_parameters.h -xmss_wots_privatekey.h -xmss_wots_publickey.h </header:public> <header:internal> atomic.h xmss_address.h xmss_common_ops.h +xmss_common_ops.h xmss_index_registry.h xmss_signature.h xmss_signature_operation.h diff --git a/src/lib/pubkey/xmss/xmss_common_ops.cpp b/src/lib/pubkey/xmss/xmss_common_ops.cpp index 9a3fe085a..bdc03e40f 100644 --- a/src/lib/pubkey/xmss/xmss_common_ops.cpp +++ b/src/lib/pubkey/xmss/xmss_common_ops.cpp @@ -7,6 +7,7 @@ **/ #include <botan/internal/xmss_common_ops.h> +#include <botan/xmss_hash.h> namespace Botan { diff --git a/src/lib/pubkey/xmss/xmss_common_ops.h b/src/lib/pubkey/xmss/xmss_common_ops.h index 77fdc9dc1..d04e65242 100644 --- a/src/lib/pubkey/xmss/xmss_common_ops.h +++ b/src/lib/pubkey/xmss/xmss_common_ops.h @@ -12,12 +12,11 @@ #include <botan/secmem.h> #include <botan/xmss_parameters.h> #include <botan/internal/xmss_address.h> -#include <botan/xmss_hash.h> - -BOTAN_FUTURE_INTERNAL_HEADER(xmss_common_ops.h) namespace Botan { +class XMSS_Hash; + typedef std::vector<secure_vector<uint8_t>> wots_keysig_t; /** diff --git a/src/lib/pubkey/xmss/xmss_index_registry.h b/src/lib/pubkey/xmss/xmss_index_registry.h index 91166db4b..7b5af100d 100644 --- a/src/lib/pubkey/xmss/xmss_index_registry.h +++ b/src/lib/pubkey/xmss/xmss_index_registry.h @@ -14,8 +14,6 @@ #include <botan/internal/atomic.h> #include <botan/mutex.h> -//BOTAN_FUTURE_INTERNAL_HEADER(xmss_index_registry.h) - namespace Botan { /** diff --git a/src/lib/pubkey/xmss/xmss_key_pair.h b/src/lib/pubkey/xmss/xmss_key_pair.h deleted file mode 100644 index 19e23c777..000000000 --- a/src/lib/pubkey/xmss/xmss_key_pair.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * XMSS Key Pair - * (C) 2016 Matthias Gierlings - * - * Botan is released under the Simplified BSD License (see license.txt) - **/ - -#ifndef BOTAN_XMSS_KEY_PAIR_H_ -#define BOTAN_XMSS_KEY_PAIR_H_ - -#include <botan/xmss.h> - -BOTAN_DEPRECATED_HEADER(xmss_key_pair.h) - -namespace Botan { - -/** - * A pair of XMSS public and private key. - **/ -class BOTAN_PUBLIC_API(2,0) XMSS_Key_Pair - { - public: - XMSS_Key_Pair(XMSS_Parameters::xmss_algorithm_t xmss_oid, - RandomNumberGenerator& rng) - : m_priv_key(xmss_oid, rng), m_pub_key(m_priv_key) {} - - XMSS_Key_Pair(const XMSS_PublicKey& pub_key, - const XMSS_PrivateKey& priv_key) - : m_priv_key(priv_key), m_pub_key(pub_key) - {} - - XMSS_Key_Pair(XMSS_PublicKey&& pub_key, - XMSS_PrivateKey&& priv_key) - : m_priv_key(std::move(priv_key)), m_pub_key(std::move(pub_key)) {} - - const XMSS_PublicKey& public_key() const { return m_pub_key; } - XMSS_PublicKey& public_key() { return m_pub_key; } - - const XMSS_PrivateKey& private_key() const { return m_priv_key; } - XMSS_PrivateKey& private_key() { return m_priv_key; } - - private: - XMSS_PrivateKey m_priv_key; - XMSS_PublicKey m_pub_key; - }; - -} - -#endif diff --git a/src/lib/pubkey/xmss/xmss_privatekey.h b/src/lib/pubkey/xmss/xmss_privatekey.h deleted file mode 100644 index dc040e443..000000000 --- a/src/lib/pubkey/xmss/xmss_privatekey.h +++ /dev/null @@ -1,13 +0,0 @@ -/* - * (C) 2016,2017,2018 Matthias Gierlings - * - * Botan is released under the Simplified BSD License (see license.txt) - **/ - -#ifndef BOTAN_XMSS_PRIVATEKEY_H_ -#define BOTAN_XMSS_PRIVATEKEY_H_ - -#include <botan/xmss.h> -BOTAN_DEPRECATED_HEADER(xmss_privatekey.h) - -#endif diff --git a/src/lib/pubkey/xmss/xmss_publickey.h b/src/lib/pubkey/xmss/xmss_publickey.h deleted file mode 100644 index eba27fc95..000000000 --- a/src/lib/pubkey/xmss/xmss_publickey.h +++ /dev/null @@ -1,14 +0,0 @@ -/* - * (C) 2016,2017,2018 Matthias Gierlings - * - * Botan is released under the Simplified BSD License (see license.txt) - **/ - -#ifndef BOTAN_XMSS_PUBLICKEY_H_ -#define BOTAN_XMSS_PUBLICKEY_H_ - -#include <botan/xmss.h> -BOTAN_DEPRECATED_HEADER(xmss_publickey.h) - -#endif - diff --git a/src/lib/pubkey/xmss/xmss_signature_operation.h b/src/lib/pubkey/xmss/xmss_signature_operation.h index e6fb2c711..5236b5bbe 100644 --- a/src/lib/pubkey/xmss/xmss_signature_operation.h +++ b/src/lib/pubkey/xmss/xmss_signature_operation.h @@ -8,7 +8,7 @@ #ifndef BOTAN_XMSS_SIGNATURE_OPERATION_H_ #define BOTAN_XMSS_SIGNATURE_OPERATION_H_ -#include <botan/pk_ops.h> +#include <botan/internal/pk_ops.h> #include <botan/xmss.h> #include <botan/internal/xmss_address.h> #include <botan/internal/xmss_signature.h> diff --git a/src/lib/pubkey/xmss/xmss_tools.h b/src/lib/pubkey/xmss/xmss_tools.h index 81d17f5bf..bbd31fd9f 100644 --- a/src/lib/pubkey/xmss/xmss_tools.h +++ b/src/lib/pubkey/xmss/xmss_tools.h @@ -13,8 +13,6 @@ #include <iterator> #include <type_traits> -//BOTAN_FUTURE_INTERNAL_HEADER(xmss_tools.h) - namespace Botan { /** diff --git a/src/lib/pubkey/xmss/xmss_verification_operation.h b/src/lib/pubkey/xmss/xmss_verification_operation.h index f96b3803b..7ef6d83b2 100644 --- a/src/lib/pubkey/xmss/xmss_verification_operation.h +++ b/src/lib/pubkey/xmss/xmss_verification_operation.h @@ -8,9 +8,9 @@ #ifndef BOTAN_XMSS_VERIFICATION_OPERATION_H_ #define BOTAN_XMSS_VERIFICATION_OPERATION_H_ -#include <botan/pk_ops.h> -#include <botan/xmss.h> +#include <botan/internal/pk_ops.h> #include <botan/internal/xmss_signature.h> +#include <botan/xmss.h> namespace Botan { diff --git a/src/lib/pubkey/xmss/xmss_wots_parameters.h b/src/lib/pubkey/xmss/xmss_wots_parameters.h deleted file mode 100644 index e8c3e2b4a..000000000 --- a/src/lib/pubkey/xmss/xmss_wots_parameters.h +++ /dev/null @@ -1,14 +0,0 @@ -/* - * XMSS WOTS Parameters - * (C) 2016,2018 Matthias Gierlings - * - * Botan is released under the Simplified BSD License (see license.txt) - **/ - -#ifndef BOTAN_XMSS_WOTS_PARAMETERS_H_ -#define BOTAN_XMSS_WOTS_PARAMETERS_H_ - -#include <botan/xmss_wots.h> -BOTAN_DEPRECATED_HEADER(xmss_wots_parameters.h) - -#endif diff --git a/src/lib/pubkey/xmss/xmss_wots_privatekey.h b/src/lib/pubkey/xmss/xmss_wots_privatekey.h deleted file mode 100644 index 2d631598b..000000000 --- a/src/lib/pubkey/xmss/xmss_wots_privatekey.h +++ /dev/null @@ -1,15 +0,0 @@ -/* - * XMSS WOTS Private Key - * (C) 2016,2017 Matthias Gierlings - * - * Botan is released under the Simplified BSD License (see license.txt) - **/ - -#ifndef BOTAN_XMSS_WOTS_PRIVATEKEY_H_ -#define BOTAN_XMSS_WOTS_PRIVATEKEY_H_ - -#include <botan/xmss.h> -BOTAN_DEPRECATED_HEADER(xmss_wots_privatekey.h) - -#endif - diff --git a/src/lib/pubkey/xmss/xmss_wots_publickey.h b/src/lib/pubkey/xmss/xmss_wots_publickey.h deleted file mode 100644 index 796bf4c30..000000000 --- a/src/lib/pubkey/xmss/xmss_wots_publickey.h +++ /dev/null @@ -1,14 +0,0 @@ -/* - * XMSS WOTS Public Key - * (C) 2016,2017,2018 Matthias Gierlings - * - * Botan is released under the Simplified BSD License (see license.txt) - **/ - -#ifndef BOTAN_XMSS_WOTS_PUBLICKEY_H_ -#define BOTAN_XMSS_WOTS_PUBLICKEY_H_ - -#include <botan/xmss.h> -BOTAN_DEPRECATED_HEADER(xmss_wots_publickey.h) - -#endif |