Crate aead[][src]

Authenticated Encryption with Associated Data (AEAD) traits

This crate provides an abstract interface for AEAD ciphers, which guarantee both confidentiality and integrity, even from a powerful attacker who is able to execute chosen-ciphertext attacks. The resulting security property, ciphertext indistinguishability, is considered a basic requirement for modern cryptographic implementations.

See RustCrypto/AEADs for cipher implementations which use this trait.

Re-exports

pub use generic_array;
pub use heapless;

Modules

consts

Type aliases for many constants.

devdev

Development-related functionality

streamstream

Streaming AEAD support.

Macros

new_testdev

Define AEAD test

Structs

Error

Error type.

Payloadalloc

AEAD payloads are a combination of a message (plaintext or ciphertext) and “additional associated data” (AAD) to be authenticated (in cleartext) along with the message.

Traits

Aeadalloc

Authenticated Encryption with Associated Data (AEAD) algorithm.

AeadCore

Authenticated Encryption with Associated Data (AEAD) algorithm core trait.

AeadInPlace

In-place stateless AEAD trait.

AeadMutalloc

Stateful Authenticated Encryption with Associated Data algorithm.

AeadMutInPlace

In-place stateful AEAD trait.

Buffer

In-place encryption/decryption byte buffers.

NewAead

Instantiate either a stateless Aead or stateful AeadMut algorithm.

Type Definitions

Key

Key for a NewAead algorithm

Nonce

Nonce: single-use value for ensuring ciphertexts are unique

Tag

Tag: authentication code which ensures ciphertexts are authentic