Skip to main content

AesCipherText

Type Alias AesCipherText 

Source
pub type AesCipherText = CipherText<LocalCipherText, BoxedPassthrough>;
Expand description

The recursive ciphertext container produced by Aes256Cipher — the shared CipherText tree instantiated with LocalCipherText leaves and BoxedPassthrough passthrough values.

The shape mirrors the structure of the plaintext that was encrypted: a single value yields Single, while non-empty Vecs and HashMaps yield Sequence and Map. Empty composites use the authenticated marker variants EmptySequence and EmptyMap. Nested structures are represented recursively.

Aliased Type§

pub enum AesCipherText {
    Single(LocalCipherText),
    Sequence(Vec<CipherText<LocalCipherText, Box<dyn Any + Send>>>),
    EmptySequence(LocalCipherText),
    Map(Vec<(String, CipherText<LocalCipherText, Box<dyn Any + Send>>)>),
    EmptyMap(LocalCipherText),
    None(LocalCipherText),
    Passthrough(Box<dyn Any + Send>),
}

Variants§

§

Single(LocalCipherText)

A single sealed value.

§

Sequence(Vec<CipherText<LocalCipherText, Box<dyn Any + Send>>>)

A sequence of ciphertexts produced from a Vec-shaped plaintext.

§

EmptySequence(LocalCipherText)

An empty sequence, authenticated under domain-separated AAD via the marker leaf produced at SeqCipher::end.

§

Map(Vec<(String, CipherText<LocalCipherText, Box<dyn Any + Send>>)>)

A map of (cleartext key, ciphertext value) pairs produced from a map-shaped plaintext. Keys are stored in the clear but are bound into each value’s AAD via Context::for_map_entry, so they cannot be swapped or renamed undetected (passthrough entries excepted).

§

EmptyMap(LocalCipherText)

An empty map, authenticated under domain-separated AAD via the marker leaf produced at MapCipher::end.

§

None(LocalCipherText)

The authenticated absent marker produced by Cipher::encrypt_none. Stores a sealed empty plaintext whose tag binds the supplied AAD.

§

Passthrough(Box<dyn Any + Send>)

A value passed through the container unencrypted and unauthenticated via Cipher::passthrough. Non-sensitive data only — see the trait docs.