10Duke Scale C++ Client
Loading...
Searching...
No Matches
LibcryptoPublicKey.h
1#ifndef TENDUKE_CRYPTO_LIBCRYPTO_LIBCRYPTOPUBLICKEY_H
2#define TENDUKE_CRYPTO_LIBCRYPTO_LIBCRYPTOPUBLICKEY_H
3
4#include "./LibcryptoKey.h"
5#include "crypto/MessageDigest.h"
6#include "crypto/PublicKey.h"
7
8#include <string>
9
10#include <openssl/evp.h>
11
12namespace tenduke { namespace crypto { namespace libcrypto {
13
14
19{
20public:
27 EVP_PKEY * key,
28 std::string type
29 );
30
31 // `tenduke::crypto::PublicKey` interface
32public:
33 std::unique_ptr<tenduke::crypto::MessageDigestVerifier> createMessageDigestVerifier(tenduke::crypto::MessageDigest::Algorithm digestAlgorithm) const override;
34 std::string toPEM() const override;
35};
36
37
38}}}
39
40#endif // TENDUKE_CRYPTO_LIBCRYPTO_LIBCRYPTOPUBLICKEY_H
Algorithm
Supported algorithms.
Definition MessageDigest.h:24
Public key.
Definition PublicKey.h:16
Libcrypto-implementation of a public key definition.
Definition LibcryptoKey.h:15
EVP_PKEY * key
libcurl handle for the key.
Definition LibcryptoKey.h:45
const std::string type
Type of the key.
Definition LibcryptoKey.h:43
Libcrypto-implementation of a public key definition.
Definition LibcryptoPublicKey.h:19
std::string toPEM() const override
Generates PEM-representation of this key.
Definition LibcryptoPublicKey.cpp:27
std::unique_ptr< tenduke::crypto::MessageDigestVerifier > createMessageDigestVerifier(tenduke::crypto::MessageDigest::Algorithm digestAlgorithm) const override
Creates a tenduke::crypto::MessageDigestVerifier, which uses this key and given algorithm.
Definition LibcryptoPublicKey.cpp:19
libcrypto based implementations of cryptography services.
Definition AsymmetricMessageDigest.h:15
Cryptography services.
Definition CryptoException.h:7
Root for classes, functions and globals of 10Duke C++ Client.
Definition BackendConfiguration.h:7