10Duke Enterprise C++ Client
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/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::MessageDigestVerifier>
26 createMessageDigestVerifier(::tenduke::crypto::MessageDigest::Algorithm algorithm) const override;
27
28 std::string toPEM() const override;
29};
30
31}}}}
32
33#endif //TENDUKE_CRYPTO_WIN_CNG_WINCNGPUBLICKEY_H
Algorithm
Supported algorithms.
Definition MessageDigest.h:24
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
Cryptography services.
Definition CryptoException.h:7
Root for classes, functions and globals of 10Duke C++ Client.
Definition APIRequest.h:4