aes

Collection of block cipher algorithms written in pure Rust

Latest version: 0.8.4 registry icon
Maintenance score
83
Safety score
100
Popularity score
47
Check your open source dependency risks. Get immediate insight about security, stability and licensing risks.
Security
  Vulnerabilities
Version Suggest Low Medium High Critical
0.8.4 0 0 0 0 0
0.8.3 0 0 0 0 0
0.8.2 0 0 0 0 0
0.8.1 0 0 0 0 0
0.8.0 0 0 0 0 0
0.7.5 0 0 0 0 0
0.7.4 0 0 0 0 0
0.7.3 0 0 0 0 0
0.7.2 0 0 0 0 0
0.7.1 0 0 0 0 0
0.7.0 0 0 0 0 0
0.6.0 0 0 0 0 0
0.5.0 0 0 0 0 0
0.4.0 0 0 0 0 0
0.3.2 0 0 0 0 0
0.3.1 0 0 0 0 0
0.3.0 0 0 0 0 0
0.2.0 0 0 0 0 0
0.1.0 0 0 0 0 0
0.0.0 0 0 0 0 0

Stability
Latest release:

0.8.4 - This version is safe to use because it has no known security vulnerabilities at this time. Find out if your coding project uses this component and get notified of any reported security vulnerabilities with Meterian-X Open Source Security Platform

Licensing

Maintain your licence declarations and avoid unwanted licences to protect your IP the way you intended.

Apache-2.0   -   Apache License 2.0

Not a wildcard

Not proprietary

OSI Compliant


MIT   -   MIT License

Not a wildcard

Not proprietary

OSI Compliant



RustCrypto: block ciphers

Project Chat dependency status Apache2/MIT licensed HAZMAT

Collection of block ciphers written in pure Rust.

Higher level constructions

Crates in this repository implement ONLY raw block cipher functionality defined by traits in the cipher crate. In practice block ciphers are rarely used in isolation. Instead, they usually play role of a building block for higher level constructions. In RustCrypto such constructions are implemented generically over block ciphers in separate repositories:

Most users should use constructions defined in these repositories without directly relying on raw block cipher functionality.

Warnings

Currently only the aes crate provides constant-time implementation and has received a third-party security audit.

Other crates in this repository are not implemented in a constant-time manner and have not yet received any formal cryptographic and security reviews.

It's generally recommended not to use other cipher implementations in this repository besides the aes crate.

USE AT YOUR OWN RISK.

Supported algorithms

Name Crate name crates.io Docs MSRV
AES (Rijndael) aes crates.io Documentation MSRV 1.65
ARIA aria crates.io Documentation MSRV 1.65
BelT block cipher belt-block crates.io Documentation MSRV 1.65
Blowfish blowfish crates.io Documentation MSRV 1.65
Camellia camellia crates.io Documentation MSRV 1.65
CAST5 (CAST-128) cast5 crates.io Documentation MSRV 1.65
CAST6 (CAST-256) cast6 crates.io Documentation MSRV 1.65
DES + 3DES (DEA, 3DEA) des crates.io Documentation MSRV 1.65
IDEA idea crates.io Documentation MSRV 1.65
Kuznyechik (GOST R 34.12-2015) kuznyechik crates.io Documentation MSRV 1.65
Magma (GOST R 34.12-2015) magma crates.io Documentation MSRV 1.65
RC2 (ARC2) rc2 crates.io Documentation MSRV 1.65
RC5 rc5 crates.io Documentation MSRV 1.65
Serpent serpent crates.io Documentation MSRV 1.65
SM4 sm4 crates.io Documentation MSRV 1.65
Speck speck-cipher crates.io Documentation MSRV 1.65
Threefish threefish crates.io Documentation MSRV 1.65
Twofish twofish crates.io Documentation MSRV 1.65
XTEA xtea crates.io Documentation MSRV 1.65

Minimum Supported Rust Version (MSRV) Policy

MSRV bump is considered a breaking change and will be performed only with a minor version bump.

License

All crates 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.