AWS Encryption SDK for C v2.4
Loading...
Searching...
No Matches
aws_cryptosdk_alg_properties Struct Reference

#include <cipher.h>

Data Fields

const char * md_name
 
const char * cipher_name
 
const char * alg_name
 
const struct aws_cryptosdk_alg_impl * impl
 
size_t data_key_len
 
size_t content_key_len
 
size_t iv_len
 
size_t tag_len
 
size_t signature_len
 
enum aws_cryptosdk_alg_id alg_id
 
enum aws_cryptosdk_hdr_version msg_format_version
 
size_t alg_suite_data_len
 
size_t commitment_len
 
const char * sig_md_name
 

Detailed Description

This structure contains information about a particular algorithm suite used within the encryption SDK. In most cases, end-users don't need to manipulate this structure, but it can occasionally be needed for more advanced use cases, such as writing keyrings.

Definition at line 54 of file cipher.h.

Field Documentation

◆ alg_id

enum aws_cryptosdk_alg_id aws_cryptosdk_alg_properties::alg_id

The algorithm ID for this algorithm suite

Definition at line 93 of file cipher.h.

◆ alg_name

const char* aws_cryptosdk_alg_properties::alg_name

The name of the overall algorithm suite in use (for debugging purposes)

Definition at line 60 of file cipher.h.

◆ alg_suite_data_len

size_t aws_cryptosdk_alg_properties::alg_suite_data_len

Length of the Algorithm Suite Data for this algorithm suite

Definition at line 103 of file cipher.h.

◆ cipher_name

const char* aws_cryptosdk_alg_properties::cipher_name

The name of the symmetric cipher in use.

Definition at line 58 of file cipher.h.

◆ commitment_len

size_t aws_cryptosdk_alg_properties::commitment_len

Length of commitment value for algorithm suite (or 0 if this algorithm suite does not support commitment)

Definition at line 109 of file cipher.h.

◆ content_key_len

size_t aws_cryptosdk_alg_properties::content_key_len

The length of the key used to actually encrypt/decrypt data. This may differ if a KDF is in use.

Definition at line 75 of file cipher.h.

◆ data_key_len

size_t aws_cryptosdk_alg_properties::data_key_len

The length of the data key (that is, the key returned by the keyrings/CMMs)

Definition at line 70 of file cipher.h.

◆ impl

const struct aws_cryptosdk_alg_impl* aws_cryptosdk_alg_properties::impl

Pointer to a structure containing crypto-backend-specific information. This is a forward-declared structure to keep it opaque to backend-independent code

Definition at line 67 of file cipher.h.

◆ iv_len

size_t aws_cryptosdk_alg_properties::iv_len

The IV length for this algorithm suite

Definition at line 77 of file cipher.h.

◆ md_name

const char* aws_cryptosdk_alg_properties::md_name

The name of the digest algorithm used for the KDF, or NULL if no KDF is used.

Definition at line 56 of file cipher.h.

◆ msg_format_version

enum aws_cryptosdk_hdr_version aws_cryptosdk_alg_properties::msg_format_version

The message format version

Definition at line 98 of file cipher.h.

◆ sig_md_name

const char* aws_cryptosdk_alg_properties::sig_md_name

The name of the digest algorithm used for the signature algorithm, or NULL if no signature is used.

Definition at line 112 of file cipher.h.

◆ signature_len

size_t aws_cryptosdk_alg_properties::signature_len

The length of the trailing signature. Zero if there is no trailing signature for this algorithm suite.

Definition at line 88 of file cipher.h.

◆ tag_len

size_t aws_cryptosdk_alg_properties::tag_len

The AEAD tag length for this algorithm suite. Note that, currently, we only support stream-like ciphers that do not require padding, so the ciphertext size is equal to the plaintext size plus tag (and IV, if you pre/append IV).

Definition at line 83 of file cipher.h.


The documentation for this struct was generated from the following file: