Expand description
Pure Rust implementation of the SHA-crypt
password hash based on SHA-512,
a legacy password hashing scheme supported by the POSIX crypt C library.
Password hashes using this algorithm start with $6$
when encoded using the
PHC string format.
Usage
use sha_crypt::{Sha512Params, sha512_simple, sha512_check};
// First setup the Sha512Params arguments with:
// rounds = 10_000
let params = Sha512Params::new(10_000).expect("RandomError!");
// Hash the password for storage
let hashed_password = sha512_simple("Not so secure password", ¶ms)
.expect("Should not fail");
// Verifying a stored password
assert!(sha512_check("Not so secure password", &hashed_password).is_ok());
Structs
- Algorithm parameters.
- Algorithm parameters.
Enums
- Error type.
Constants
- Block size for SHA256
- Block size for SHA512
- Default number of rounds.
- Maximum number of rounds allowed.
- Minimum number of rounds allowed.
Functions
- sha256_check
simple
Checks that given password matches provided hash. - The SHA256 crypt function returned as byte vector
- Same as sha256_crypt except base64 representation will be returned.
- sha256_simple
simple
Simple interface for generating a SHA256 password hash. - sha512_check
simple
Checks that given password matches provided hash. - The SHA512 crypt function returned as byte vector
- Same as sha512_crypt except base64 representation will be returned.
- sha512_simple
simple
Simple interface for generating a SHA512 password hash.