Module ring::aead[][src]

Authenticated Encryption with Associated Data (AEAD).

See Authenticated encryption: relations among notions and analysis of the generic composition paradigm for an introduction to the concept of AEADs.

Modules

chacha20_poly1305_openssh

The chacha20-poly1305@openssh.com AEAD-ish construct.

quic

QUIC Header Protection.

Structs

Aad

The additionally authenticated data (AAD) for an opening or sealing operation. This data is authenticated but is not encrypted.

Algorithm

An AEAD Algorithm.

LessSafeKey

Immutable keys for use in situations where OpeningKey/SealingKey and NonceSequence cannot reasonably be used.

Nonce

A nonce for a single AEAD opening or sealing operation.

OpeningKey

An AEAD key for authenticating and decrypting (“opening”), bound to a nonce sequence.

SealingKey

An AEAD key for encrypting and signing (“sealing”), bound to a nonce sequence.

Tag

An authentication tag.

UnboundKey

An AEAD key without a designated role or nonce sequence.

Constants

MAX_TAG_LEN

The maximum length of a tag for the algorithms in this module.

NONCE_LEN

All the AEADs we support use 96-bit nonces.

Statics

AES_128_GCM

AES-128 in GCM mode with 128-bit tags and 96 bit nonces.

AES_256_GCM

AES-256 in GCM mode with 128-bit tags and 96 bit nonces.

CHACHA20_POLY1305

ChaCha20-Poly1305 as described in RFC 7539.

Traits

BoundKey

An AEAD key bound to a nonce sequence.

NonceSequence

A sequences of unique nonces.