10Duke Enterprise C++ SDK
Toggle main menu visibility
Loading...
Searching...
No Matches
WinCNGMessageDigestSigner.h
1
#ifndef TENDUKE_CRYPTO_WIN_CNG_WINCNGMESSAGEDIGESTSIGNER_H
2
#define TENDUKE_CRYPTO_WIN_CNG_WINCNGMESSAGEDIGESTSIGNER_H
3
4
#include "./WinCNGPrivateKey.h"
5
#include "./crypto/MessageDigest.h"
6
#include "utl/FixedSizeBinaryData.h"
7
#include <memory>
8
#include <windows.h>
9
10
namespace
tenduke
{
namespace
crypto
{
namespace
win {
namespace
cng {
11
16
class
WinCNGMessageDigestSigner
17
{
18
public
:
19
WinCNGMessageDigestSigner(
20
const
std::shared_ptr<tenduke::crypto::win::cng::WinCNGPrivateKey> &signing_key,
21
std::unique_ptr<tenduke::crypto::MessageDigest> message_digest,
22
LPCWSTR padding_algorithm_id
23
)
24
: signingKey(signing_key),
25
messageDigest(std::move(message_digest)),
26
paddingAlgorithmId(padding_algorithm_id) {
27
}
28
29
std::unique_ptr<::tenduke::utl::FixedSizeBinaryData> sign(
30
const
unsigned
char
*message,
31
size_t
messageLength
32
);
33
private
:
34
const
std::shared_ptr<::tenduke::crypto::win::cng::WinCNGPrivateKey> signingKey;
35
std::unique_ptr<::tenduke::crypto::MessageDigest> messageDigest;
36
const ::LPCWSTR paddingAlgorithmId;
37
};
38
39
}}}}
// tenduke
40
41
#endif
//TENDUKE_CRYPTO_WIN_CNG_WINCNGMESSAGEDIGESTSIGNER_H
tenduke::crypto
Cryptography services.
Definition
AbstractCiphers.h:12
tenduke
Root for classes, functions and globals of 10Duke C++ Client.
Definition
APIRequest.h:4
core
services
windows
src
crypto
WinCNGMessageDigestSigner.h
Generated by
1.17.0