[go: up one dir, main page]

Crate aead

Source
Expand description

§RustCrypto: Authenticated Encryption with Additional Data Traits

crate Docs Apache2/MIT licensed Rust Version Project Chat Build Status

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.

§SemVer Policy

  • All on-by-default features of this library are covered by SemVer
  • MSRV is considered exempt from SemVer as noted above

§License

Licensed under either of:

at your option.

§Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Re-exports§

pub use crypto_common::array;
pub use arrayvec;arrayvec
pub use bytes;bytes
pub use crypto_common::rand_core;rand_core
pub use heapless;heapless
pub use inout;

Modules§

consts
devdev
Development-related functionality

Macros§

new_testdev
Define AEAD test

Structs§

Error
Error type.
Payload
AEAD payloads (message + AAD).

Enums§

TagPosition
Enum which specifies tag position used by an AEAD algorithm.

Traits§

Aeadalloc
Authenticated Encryption with Associated Data (AEAD) algorithm.
AeadCore
Authenticated Encryption with Associated Data (AEAD) algorithm.
AeadInOut
In-place and inout AEAD trait which handles the authentication tag as a return value/separate parameter.
Buffer
In-place encryption/decryption byte buffers.
KeyInit
Types which can be initialized from key.
KeySizeUser
Types which use key for initialization.

Type Aliases§

Key
Key used by KeySizeUser implementors.
Nonce
Nonce: single-use value for ensuring ciphertexts are unique
Result
Result type alias with Error.
Tag
Tag: authentication code which ensures ciphertexts are authentic