aes256ctr_poly1305aes

Crates.ioaes256ctr_poly1305aes
lib.rsaes256ctr_poly1305aes
version0.2.1
sourcesrc
created_at2022-03-13 21:44:12.759435
updated_at2024-10-03 13:30:50.780711
descriptionPure Rust implementation of the AES256CTR-Poly1305AES Authenticated Encryption with optional architecture-specific hardware acceleration.
homepage
repositoryhttps://github.com/rustic-rs/aes256ctr_poly1305aes
max_upload_size
id549463
size46,235
(simonsan)

documentation

https://docs.rs/aes256ctr-poly1305aes

README

AES256CTR-Poly1305AES

crate Docs Apache2/MIT licensed Rust Version Crates.io Downloads

Pure Rust implementation of AES256-CTR/Poly1305-AES: an Authenticated Encryption with Associated Data (AEAD) cipher amenable to fast, constant-time implementations in software, based on the AES256-CTR stream cipher and the Poly1305-AES MAC which uses the Poly1305 universal hash function in combination with the AES-128 block cipher.

A lot code is copied from the chacha20poly1305 crate

Documentation

About

AES256-CTR is widely known as stream cipher using the AES256 block cipher. Poly1305-AES as MAC has been proposed by Daniel J. Bernstein in his famous paper The Poly1305-AES message-authentication code.

While both the stream cipher and the MAC are not commonly used, there exists software which uses the combination to encrypt and authenticate the data, e.g. the backup software restic.

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.

Commit count: 70

cargo fmt