diff options
Diffstat (limited to 'src/lib/pubkey/pk_keys.h')
-rw-r--r-- | src/lib/pubkey/pk_keys.h | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/src/lib/pubkey/pk_keys.h b/src/lib/pubkey/pk_keys.h index 13d94c085..5521f5b2c 100644 --- a/src/lib/pubkey/pk_keys.h +++ b/src/lib/pubkey/pk_keys.h @@ -35,6 +35,8 @@ class Signature; class BOTAN_DLL Public_Key { public: + virtual ~Public_Key() {} + /** * Get the name of the underlying public key scheme. * @return name of the public key scheme @@ -96,7 +98,12 @@ class BOTAN_DLL Public_Key */ virtual std::vector<byte> x509_subject_public_key() const = 0; + // Internal or non-public declarations follow + /** + * This is an internal library function exposed on key types. + * In almost all cases applications should use wrappers in pubkey.h + * * Return an encryption operation for this key/params or throw * * @param rng a random number generator. The PK_Op may maintain a @@ -109,6 +116,9 @@ class BOTAN_DLL Public_Key const std::string& provider) const; /** + * This is an internal library function exposed on key types. + * In almost all cases applications should use wrappers in pubkey.h + * * Return a KEM encryption operation for this key/params or throw * * @param rng a random number generator. The PK_Op may maintain a @@ -121,13 +131,15 @@ class BOTAN_DLL Public_Key const std::string& provider) const; /** + * This is an internal library function exposed on key types. + * In almost all cases applications should use wrappers in pubkey.h + * * Return a verification operation for this key/params or throw */ virtual std::unique_ptr<PK_Ops::Verification> create_verification_op(const std::string& params, const std::string& provider) const; - virtual ~Public_Key() {} protected: /** * Self-test after loading a key @@ -154,12 +166,17 @@ class BOTAN_DLL Private_Key : public virtual Public_Key virtual AlgorithmIdentifier pkcs8_algorithm_identifier() const { return algorithm_identifier(); } + // Internal or non-public declarations follow + /** * @return Hash of the PKCS #8 encoding for this key object */ std::string fingerprint(const std::string& alg = "SHA") const; /** + * This is an internal library function exposed on key types. + * In almost all cases applications should use wrappers in pubkey.h + * * Return an decryption operation for this key/params or throw * * @param rng a random number generator. The PK_Op may maintain a @@ -172,6 +189,9 @@ class BOTAN_DLL Private_Key : public virtual Public_Key const std::string& provider) const; /** + * This is an internal library function exposed on key types. + * In almost all cases applications should use wrappers in pubkey.h + * * Return a KEM decryption operation for this key/params or throw * * @param rng a random number generator. The PK_Op may maintain a @@ -184,6 +204,9 @@ class BOTAN_DLL Private_Key : public virtual Public_Key const std::string& provider) const; /** + * This is an internal library function exposed on key types. + * In almost all cases applications should use wrappers in pubkey.h + * * Return a signature operation for this key/params or throw * * @param rng a random number generator. The PK_Op may maintain a @@ -196,6 +219,9 @@ class BOTAN_DLL Private_Key : public virtual Public_Key const std::string& provider) const; /** + * This is an internal library function exposed on key types. + * In almost all cases applications should use wrappers in pubkey.h + * * Return a key agreement operation for this key/params or throw * * @param rng a random number generator. The PK_Op may maintain a |