#crypto #hashing #password #phf

no-std argon2

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

11 releases

0.5.0 Mar 5, 2023
0.4.1 Jun 27, 2022
0.4.0 Mar 18, 2022
0.3.2 Dec 7, 2021
0.0.0 Feb 28, 2017

#4 in Authentication

Download history 16101/week @ 2022-12-06 14424/week @ 2022-12-13 10235/week @ 2022-12-20 8334/week @ 2022-12-27 12959/week @ 2023-01-03 15599/week @ 2023-01-10 17279/week @ 2023-01-17 18202/week @ 2023-01-24 19930/week @ 2023-01-31 19612/week @ 2023-02-07 20339/week @ 2023-02-14 23191/week @ 2023-02-21 23685/week @ 2023-02-28 26321/week @ 2023-03-07 27158/week @ 2023-03-14 27037/week @ 2023-03-21

108,677 downloads per month
Used in 93 crates (51 directly)



RustCrypto: Argon2

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

Pure Rust implementation of the Argon2 password hashing function.



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


Licensed under either of:

at your option.


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.


~13K SLoC