10Duke Enterprise C++ SDK
Loading...
Searching...
No Matches
BCryptAlgorithm.h
1#ifndef TENDUKE_CRYPTO_WIN_CNG_BCRYPTALGORITHM_H
2#define TENDUKE_CRYPTO_WIN_CNG_BCRYPTALGORITHM_H
3
4#include <windows.h>
5#include <bcrypt.h>
6
7namespace tenduke { namespace crypto { namespace win { namespace cng {
8
16public:
23 explicit BCryptAlgorithm(LPCWSTR algorithmName, ULONG flags = 0);
24
27
29 BCryptAlgorithm(BCryptAlgorithm &&other) noexcept;
30
32 BCryptAlgorithm &operator=(BCryptAlgorithm &&other) noexcept;
33
38 BCRYPT_ALG_HANDLE get() const;
39
40private:
41 BCRYPT_ALG_HANDLE handle;
42
43 // Prevent copying
44 BCryptAlgorithm(const BCryptAlgorithm &) = delete;
45
46 BCryptAlgorithm &operator=(const BCryptAlgorithm &) = delete;
47};
48
49}}}}
50
51#endif // TENDUKE_CRYPTO_WIN_CNG_BCRYPTALGORITHM_H
BCryptAlgorithm(LPCWSTR algorithmName, ULONG flags=0)
Opens a BCrypt algorithm provider.
Definition BCryptAlgorithm.cpp:13
BCryptAlgorithm(LPCWSTR algorithmName, ULONG flags=0)
Opens a BCrypt algorithm provider.
Definition BCryptAlgorithm.cpp:13
~BCryptAlgorithm()
Closes the algorithm provider handle.
Definition BCryptAlgorithm.cpp:26
BCryptAlgorithm & operator=(BCryptAlgorithm &&other) noexcept
Move assignment operator.
Definition BCryptAlgorithm.cpp:37
BCRYPT_ALG_HANDLE get() const
Gets the underlying BCRYPT_ALG_HANDLE.
Definition BCryptAlgorithm.cpp:50
Cryptography services.
Definition AbstractCiphers.h:12
Root for classes, functions and globals of 10Duke C++ Client.
Definition APIRequest.h:4