#password-hashing #key-derivation #password #phf

no-std argon2

Pure Rust implementation of the Argon2 password hashing function with support for the Argon2d, Argon2i, and Argon2id algorithmic variants

16 releases

0.6.0-pre.1 Jul 27, 2024
0.6.0-pre.0 Feb 8, 2024
0.5.3 Jan 20, 2024
0.5.2 Sep 4, 2023
0.0.0 Feb 28, 2017

#4 in Authentication

Download history 80986/week @ 2024-11-30 78639/week @ 2024-12-07 78189/week @ 2024-12-14 47382/week @ 2024-12-21 50462/week @ 2024-12-28 89597/week @ 2025-01-04 113912/week @ 2025-01-11 92500/week @ 2025-01-18 89479/week @ 2025-01-25 101363/week @ 2025-02-01 99178/week @ 2025-02-08 95227/week @ 2025-02-15 107997/week @ 2025-02-22 104682/week @ 2025-03-01 103899/week @ 2025-03-08 89563/week @ 2025-03-15

424,954 downloads per month
Used in 657 crates (246 directly)

MIT/Apache

62KB
1K SLoC

RustCrypto: Argon2

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

Pure Rust implementation of the Argon2 password hashing function.

Documentation

About

Argon2 is a memory-hard key derivation function chosen as the winner of the Password Hashing Competition in July 2015.

It implements the following three algorithmic variants:

  • Argon2d: maximizes resistance to GPU cracking attacks
  • Argon2i: optimized to resist side-channel attacks
  • Argon2id: (default) hybrid version combining both Argon2i and Argon2d

Support is provided for embedded (i.e. no_std) environments, including ones without alloc support.

Minimum Supported Rust Version

Rust 1.65 or higher.

Minimum supported Rust version can be changed in the future, but it will be done with a minor version bump.

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.

Dependencies

~1MB
~23K SLoC