2 unstable releases
0.2.0 | Oct 25, 2023 |
---|---|
0.1.0 | Jun 12, 2020 |
#1525 in Cryptography
48 downloads per month
Used in 3 crates
(via rust_keylock)
125KB
9K
SLoC
rs-password-utils
This library contains password utilities and is written in Rust.
Currently it offers:
- Checking passwords against pwned passwords list.
The check implementation leverages the k-anonimity API and therefore, the password is not used in the API calls in any form (not even hashed).
- Diceware for generating passphrases
Usage
The utility can be used as a library, or as an executable:
Library
extern crate rs_password_utils;
use std::result::Result;
#[tokio::main]
async fn main() -> Result<(), rs_password_utils::PasswordUtilsError> {
let is_pwned = rs_password_utils::pwned::is_pwned("test").await?;
println!("The password is pwned: {}", is_pwned);
Ok(())
}
Executable
Having rust installed, you may install rs-password-utils using cargo:
-
From crates.io:
cargo install rs-password-utils --features executable
-
From gitlab:
cargo install --git https://gitlab.com/astonbitecode/rs-password-utils.git --features executable
When the installation completes, issuing the following command:
rs-password-utils --help
should give you an output like:
Password utilities, written in Rust.
Usage:
rs-password-utils pwned
rs-password-utils dice [(-w <count>)]
rs-password-utils [-h]
Options:
-w --words The amount of words that should comprise the passphrase
-h --help Show this screen.
License
At your option, under:
- Apache License, Version 2.0, (http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (http://opensource.org/licenses/MIT)
Dependencies
~6–18MB
~233K SLoC