AWS SDK for C++
AWS SDK for C++
Loading...
Searching...
No Matches
HMAC.h
Go to the documentation of this file.
1
6 /*
7 * Interface for Sha256 encryptor and hmac
8 */
9#pragma once
10
12
15
16namespace Aws
17{
18 namespace Utils
19 {
20 namespace Crypto
21 {
26 {
27 public:
28 HMAC() {};
29 virtual ~HMAC() {};
30
34 virtual HashResult Calculate(const Aws::Utils::ByteBuffer& toSign, const Aws::Utils::ByteBuffer& secret) = 0;
35
36 };
37
43 {
44 public:
45 virtual ~HMACFactory() {}
46
50 virtual std::shared_ptr<HMAC> CreateImplementation() const = 0;
51
56 virtual void InitStaticState() {}
57
62 virtual void CleanupStaticState() {}
63 };
64
65 } // namespace Crypto
66 } // namespace Utils
67} // namespace Aws
68
#define AWS_CORE_API
Definition: Core_EXPORTS.h:26
virtual std::shared_ptr< HMAC > CreateImplementation() const =0
virtual void CleanupStaticState()
Definition: HMAC.h:62
virtual void InitStaticState()
Definition: HMAC.h:56
virtual HashResult Calculate(const Aws::Utils::ByteBuffer &toSign, const Aws::Utils::ByteBuffer &secret)=0
virtual ~HMAC()
Definition: HMAC.h:29