AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
HKDF.h
1
5#pragma once
6#include <aws/core/utils/Array.h>
7#include <aws/s3-encryption/s3Encryption_EXPORTS.h>
8
9#include <cstddef>
10
11namespace Aws
12{
13 namespace S3Encryption
14 {
15 constexpr size_t MESSAGE_ID_BYTES = 28;
16 constexpr size_t COMMITMENT_KEY_BYTES = 28;
17 constexpr size_t ENCRYPTION_KEY_BYTES = 32;
18
19 extern const char *ENCRYPTION_KEY_INFO;
20 extern const char *COMMITMENT_KEY_INFO;
21 extern const size_t ENCRYPTION_KEY_INFO_LEN;
22 extern const size_t COMMITMENT_KEY_INFO_LEN;
23
31 AWS_S3ENCRYPTION_API bool derive_encryption_key(const Aws::Utils::CryptoBuffer &data_key, const Aws::Utils::CryptoBuffer &message_id,
33
34
42 AWS_S3ENCRYPTION_API bool derive_commitment_key(const Aws::Utils::CryptoBuffer &data_key, const Aws::Utils::CryptoBuffer &message_id,
44
45 // Compare bytes for equality, in time O(len) regardless of the contents of x and y
46 // Returns false if the buffers have different lengths
47 AWS_S3ENCRYPTION_API bool constant_time_equal(const Aws::Utils::CryptoBuffer& x, const Aws::Utils::CryptoBuffer& y);
48 }
49}
AWS_S3ENCRYPTION_API bool derive_encryption_key(const Aws::Utils::CryptoBuffer &data_key, const Aws::Utils::CryptoBuffer &message_id, Aws::Utils::CryptoBuffer &output)
AWS_S3ENCRYPTION_API bool constant_time_equal(const Aws::Utils::CryptoBuffer &x, const Aws::Utils::CryptoBuffer &y)
const char * ENCRYPTION_KEY_INFO
constexpr size_t ENCRYPTION_KEY_BYTES
Definition HKDF.h:17
const char * COMMITMENT_KEY_INFO
const size_t ENCRYPTION_KEY_INFO_LEN
const size_t COMMITMENT_KEY_INFO_LEN
AWS_S3ENCRYPTION_API bool derive_commitment_key(const Aws::Utils::CryptoBuffer &data_key, const Aws::Utils::CryptoBuffer &message_id, Aws::Utils::CryptoBuffer &output)
constexpr size_t COMMITMENT_KEY_BYTES
Definition HKDF.h:16
constexpr size_t MESSAGE_ID_BYTES
Definition HKDF.h:15