Crate tink_aead[][src]

Expand description

Provides implementations of the AEAD primitive.

AEAD encryption assures the confidentiality and authenticity of the data. This primitive is CPA secure.

Modules

subtle

Provides subtle implementations of the tink_core::Aead primitive.

Structs

KmsEnvelopeAead

KmsEnvelopeAead represents an instance of Envelope AEAD.

Constants

AES_CTR_HMAC_AEAD_KEY_VERSION

Maximal version of AES-CTR-HMAC keys.

AES_CTR_HMAC_AEAD_TYPE_URL

Type URL of AES-CTR-HMAC keys that Tink supports.

AES_GCM_KEY_VERSION

Maximal version of AES-GCM keys.

AES_GCM_SIV_KEY_VERSION

Maximal version of AES-GCM-SIV keys.

AES_GCM_SIV_TYPE_URL

Type URL of AES-GCM-SIV keys that Tink supports.

AES_GCM_TYPE_URL

Type URL of AES-GCM keys that Tink supports.

CHA_CHA20_POLY1305_KEY_VERSION

Maximal version of ChaCha20Poly1305 keys.

CHA_CHA20_POLY1305_TYPE_URL

Type URL of ChaCha20Poly1305 keys that Tink supports.

KMS_ENVELOPE_AEAD_KEY_VERSION

Maximal version of KMS-wrapped keys.

KMS_ENVELOPE_AEAD_TYPE_URL

Type URL of KMS-wrapped keys that Tink supports.

UPSTREAM_VERSION

The upstream Tink version that this Rust port is based on.

X_CHA_CHA20_POLY1305_KEY_VERSION

Maximal version of XChaCha20Poly1305 keys.

X_CHA_CHA20_POLY1305_TYPE_URL

Type URL of XChaCha20Poly1305 keys that Tink supports.

Functions

aes128_ctr_hmac_sha256_key_template

Return a KeyTemplate that generates an AES-CTR-HMAC-AEAD key with the following parameters:

aes128_gcm_key_template

Return a KeyTemplate that generates an AES-GCM key with the following parameters:

aes128_gcm_siv_key_template

Return a KeyTemplate that generates an AES-GCM-SIV key with the following parameters:

aes256_ctr_hmac_sha256_key_template

Return a KeyTemplate that generates an AES-CTR-HMAC-AEAD key with the following parameters:

aes256_ctr_hmac_sha512_key_template

Return a KeyTemplate that generates an AES-CTR-HMAC-AEAD key with the following parameters:

aes256_gcm_key_template

Return a KeyTemplate that generates an AES-GCM key with the following parameters:

aes256_gcm_no_prefix_key_template

Return a KeyTemplate that generates an AES-GCM key with the following parameters:

aes256_gcm_siv_key_template

Return a KeyTemplate that generates an AES-GCM-SIV key with the following parameters:

aes256_gcm_siv_no_prefix_key_template

Return a KeyTemplate that generates an AES-GCM-SIV key with the following parameters:

cha_cha20_poly1305_key_template

Return a KeyTemplate that generates a CHACHA20_POLY1305 key.

init

Initialize the tink-aead crate, registering its primitives so they are available via tink-core.

kms_envelope_aead_key_template

Return a KeyTemplate that generates a KmsEnvelopeAead key for a given KEK in remote KMS. Keys generated by this key template uses RAW output prefix to make them compatible with the remote KMS’ encrypt/decrypt operations. Unlike other templates, when you generate new keys with this template, Tink does not generate new key material, but only creates a reference to the remote KEK.

new

Returns a tink_core::Aead primitive from the given keyset handle.

x_cha_cha20_poly1305_key_template

Return a KeyTemplate that generates a XCHACHA20_POLY1305 key.