10Duke Enterprise C++ SDK
Loading...
Searching...
No Matches
WinCNGPublicKey.h
1#ifndef TENDUKE_CRYPTO_WIN_CNG_WINCNGPUBLICKEY_H
2#define TENDUKE_CRYPTO_WIN_CNG_WINCNGPUBLICKEY_H
3
4#include "crypto/asymmetric/PublicKey.h"
5#include "../WinCNGKey.h"
6
7#include <memory>
8#include <windows.h>
9#include <bcrypt.h>
10
11#include "../bcrypt/BCryptKey.h"
12
13namespace tenduke { namespace crypto { namespace win { namespace cng {
14
18class WinCNGPublicKey : public ::tenduke::crypto::win::cng::WinCNGKey, public virtual ::tenduke::crypto::PublicKey
19{
20public:
21 explicit WinCNGPublicKey(std::unique_ptr<::tenduke::crypto::win::cng::BCryptKey> key);
22
23 // ::tenduke::crypto::PublicKey implementation
24public:
25 std::unique_ptr<::tenduke::crypto::DigitalSignatureVerifier> createSignatureVerifier(::tenduke::crypto::HashAlgorithm algorithm) const override;
26
27 std::string toPEM() const override;
28};
29
30}}}}
31
32#endif //TENDUKE_CRYPTO_WIN_CNG_WINCNGPUBLICKEY_H
Public key.
Definition PublicKey.h:16
Definition WinCNGKey.h:10
std::string toPEM() const override
Generates PEM-representation of this key.
Definition WinCNGPublicKey.cpp:35
std::unique_ptr<::tenduke::crypto::DigitalSignatureVerifier > createSignatureVerifier(::tenduke::crypto::HashAlgorithm algorithm) const override
Creates a tenduke::crypto::MessageDigestVerifier, which uses this key and given algorithm.
Definition WinCNGPublicKey.cpp:24
Cryptography services.
Definition AbstractCiphers.h:18
HashAlgorithm
Currently supported hash algorithms.
Definition HashAlgorithm.h:13
Root for classes, functions and globals of 10Duke C++ Client.
Definition APIRequest.h:4