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